#define TRIG_PIN 5 // Pin TRIG del HC-SR04
#define ECHO_PIN 18 // Pin ECHO del HC-SR04
#define RELAY_PIN 4 // Pin de control del relé
void setup() {
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(RELAY_PIN, OUTPUT);
digitalWrite(RELAY_PIN, LOW); // Apagar motor al inicio
Serial.begin(115200);
}
float medirDistancia() {
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
long duracion = pulseIn(ECHO_PIN, HIGH);
float distancia = duracion * 0.0343 / 2; // Conversión a cm
return distancia;
}
void loop() {
float distancia = medirDistancia();
Serial.print("Distancia: ");
Serial.print(distancia);
Serial.println(" cm");
if (distancia >= 10) {
digitalWrite(RELAY_PIN, HIGH); // Activa el relé (enciende el motor)
} else if (distancia <= 3) {
digitalWrite(RELAY_PIN, LOW); // Desactiva el relé (apaga el motor)
}
delay(200); // Pequeña pausa para estabilidad
}