Ljus reaktiva gardin (3 / 4 steg)
Steg 3: krets
#include < Servo.h >
Servo myservo; skapa objekt för att styra en servo servo
int lightPin = 0; analoga pin används för att ansluta fotomotstånd
int ledPin = 11; analoga pin att ansluta till LED
void setup()
{
myservo.attach(9); tillmäter objektet servo servo på pin 9
pinMode (ledPin, produktionen); Anger det led stiftet till utgång
Serial.BEGIN(9600);
}
void loop()
{
int tröskel = 400. 400 för klassrummet, 100 för sovrum/sovsal
int lightLevel = analogRead(lightPin);
Serial.println(lightLevel);
om (lightLevel > tröskel) {//if det ser ljus (ljus = hög motståndskraft, mörk = lågt motstånd)
myservo.write (180); //forward
digitalWrite (ledPin, hög);
fördröjning (5000); snurra servo för 5 sek
medan (analogRead(lightPin) > tröskel) {//while lyser fortfarande över tröskeln
digitalWrite (ledPin, låg);
myservo.write(87); gör ingenting (ingen rörelse)
Delay(10);
}
} annat {//if det ser inget ljus
myservo.write(0); omvänd
digitalWrite (ledPin, hög);
fördröjning (5000); //spin servo för 5 sek
medan (analogRead(lightPin) < tröskel) {//while ljus är fortfarande under tröskel
digitalWrite (ledPin, låg);
myservo.write(87); gör ingenting (ingen rörelse)
Delay(10);
}
}
}