#include <Servo.h>
const int PIR = 3;
Servo SERVO1;
const int TRIG = 13;
const int ECO = 11;
int DISTANCIA;
int DURACION;
int presente = 1;
void setup() {
SERVO1.attach(PIR);
pinMode(TRIG, OUTPUT);
pinMode(ECO, INPUT);
}
void loop() {
digitalWrite(TRIG, HIGH);
delay(1);
digitalWrite(TRIG, LOW);
DURACION = pulseIn(ECO, HIGH);
DISTANCIA = DURACION / 58.2;
delay(200);
if (DISTANCIA <= 200 && DISTANCIA >= 0)
{
if (presente == 1) {
for (int x = 90; x >= 0; --x) {
SERVO1.write(x);
delay(20);
presente = 0;
}
SERVO1.write(0);
}
}
else
{
if (presente == 0) {
for (int y = 0; y <= 90; ++y) {
SERVO1.write(y);
delay(20);
presente = 1;
}
SERVO1.write(90);
}
}
}