Stap 7: De Code
#include
De bibliotheek van de tijd #include omvatten de tijd alarmen bibliotheek #include bevatten de variabele snelheid Servo Library
VarSpeedServo myservo; Maak en de naam van de servo const int servoPin = 9; De digitale pen gebruikt voor de servo int potpin = 0; Analoge pin gebruikt voor het aansluiten van de potentiometer int val; Variabele te lezen van de waarde van de analoge pin
void setup {Serial.begin(9600); Hiermee stelt u de gegevens-tarief setTime(8,29,50,1,1,11); Handmatig instellen van de tijd Alarm.alarmRepeat (8,30,0, MorningAlarm); Alarm voor elke dag om 8.30u genaamd wekker instellen
myservo.attach(servoPin); De servo op pin 9 hecht aan de servo-object myservo.write(0,255,true); } Instellen van de aanvankelijke positie van de servo, zo snel mogelijk, wacht tot het gedaan
void loop {int sensorValue = analogRead(A0); Lees de waarde van analoge pin 0 Serial.println(sensorValue); Print waarde op seriële monitor nietig MorningAlarm() {wanneer "morningAlarm" tijd bereikt dit doen... als (sensorValue < 341) {als potentiometer waarde minder dan 341 hiervoor... voor (int ik = 1; ik < = 100; ik = i + 1) met de volgende code 100 keer herhalen. Serial.println ("Activeer Servo"); Afdrukken "Activeren Servo" op seriële monitor. myservo.write(110,240,True); Servo arm verplaatsen naar 110degrees, met een snelheid van 240 en wacht totdat de volledige delay(500); myservo.write(0,240,True); Servo arm terug te gaan naar 0degrees, met een snelheid van 240 en wachten tot de volledige delay(500) ;}}
{Als (sensorValue > 341 & & sensorValue < 682) als potentiometer waarde tussen 341 en 682 dit doen... {voor (int i = 1; ik < = 80; ik = i + 1) herhaal dit met de volgende code 80 keer. Serial.println ("Activeer Servo"); Afdrukken "Activeren Servo" op seriële monitor. myservo.write(110,240,True); Servo arm verplaatsen naar 110degrees, met een snelheid van 240 en wacht totdat de volledige delay(500); myservo.write(0,240,True); Servo arm terug te gaan naar 0degrees, met een snelheid van 240 en wachten tot de volledige delay(500) ;}}
{Als (sensorValue > 682 & & sensorValue < 1200) als potentiometer waarde tussen 682 en 1200 hiervoor... {voor (int i = 1; ik < = 60; ik = i + 1) met de volgende code 60 keer herhalen. Serial.println ("Activeer Servo"); Afdrukken "Activeren Servo" op seriële monitor. myservo.write(110,240,True); Servo arm verplaatsen naar 110degrees, met een snelheid van 240 en wacht totdat de volledige delay(500); myservo.write(0,240,True); Servo arm terug te gaan naar 0degrees, met een snelheid van 240 en wachten tot de volledige delay(500) ;}}