Facebook-oefening: LET OP AANSLUITINGEN, AFBEELDING IS FOUT !

#include <Servo.h>Servo s1;
int sensorPin = 2;
int greenLED = 5;
int redLED = 6;
int doorOpenAngle = 90;
int doorCloseAngle = 0;
void setup() {
Serial.begin(9600);
pinMode(sensorPin, INPUT);
pinMode(greenLED, OUTPUT);
pinMode(redLED, OUTPUT);
s1.attach(3);
s1.write(doorCloseAngle);
// start closed
}
void loop() {
int val = digitalRead(sensorPin);
Serial.println(val); // IR detects object (usually LOW)
if (val == LOW) {
digitalWrite(greenLED, HIGH);
digitalWrite(redLED, LOW); openDoor();
}
else {
digitalWrite(greenLED, LOW);
digitalWrite(redLED, HIGH); closeDoor();
}
}
// Smooth opening
void openDoor() {
for (int pos = 0; pos <= 90; pos++) {
s1.write(pos);
delay(10);
}
delay(2000); // keep door open
}
// Smooth closing
void closeDoor() {
for (int pos = 90; pos >= 0; pos--) {
s1.write(pos);
delay(10);
}
}