05-03-2021, 22:17
Saludos...
Os voy a mostrar como encender una luz, o conjunto de ellas, cuando se detecta que hay movimiento. Por supuesto también se puede hacer que se active cualquier dispositivo que esté conectado a la red eléctrica.
Materiales utilizados:
Conexiones:
El sistema lo que hace es que cuando el sensor detecta movimiento activa el relé y deja pasar la corriente del dispositivo que tengamos conectado. Transcurridos 15 segundos el relé se desactivará y cortará el paso de corriente.
Código para la placa Arduino:
El código no tiene mucho que explicar, se indican los pines necesarios, se inicializan y activan. Si queremos cambiar los 15 segundos que el el relé está activado iremos a la línea delay(15000); y lo sustituimos por el valor que queramos.
Si el sensor sigue detectando movimiento el relé no se desactivará, los 15 segundos de espera es a partir de que el sensor deje de detectar movimiento.
Bueno, es un código sencillo pero efectivo... espero que le sirva a alguien.
Os voy a mostrar como encender una luz, o conjunto de ellas, cuando se detecta que hay movimiento. Por supuesto también se puede hacer que se active cualquier dispositivo que esté conectado a la red eléctrica.
Materiales utilizados:
- Una Placa Arduino (yo he utilizado la nano)
- 6 cables dupont
- Un sensor de movimiento PIR
- Un relé
Conexiones:
- Pin VCC rele --> Pin 5v de Arduino
- Pin GND rele --> Pin GND de Arduino
- Pin IN rele --> Pin 8 de Arduino
- Pin VCC sensor --> Pin 5v de Arduino
- Pin GND sensor --> Pin GND de Arduino
- Pin OUT sensor --> Pin 4 de Arduino
El sistema lo que hace es que cuando el sensor detecta movimiento activa el relé y deja pasar la corriente del dispositivo que tengamos conectado. Transcurridos 15 segundos el relé se desactivará y cortará el paso de corriente.
Código para la placa Arduino:
Código:
const int buttonPin = 4;
int rele=8;
int buttonState = 0;
void setup() {
pinMode(buttonPin, INPUT);
pinMode(rele, OUTPUT);
digitalWrite(rele, LOW);
}
void loop(){
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH) {
digitalWrite(rele, LOW);
delay(15000);
}
else {
digitalWrite(rele, HIGH);
}
}
El código no tiene mucho que explicar, se indican los pines necesarios, se inicializan y activan. Si queremos cambiar los 15 segundos que el el relé está activado iremos a la línea delay(15000); y lo sustituimos por el valor que queramos.
Si el sensor sigue detectando movimiento el relé no se desactivará, los 15 segundos de espera es a partir de que el sensor deje de detectar movimiento.
Bueno, es un código sencillo pero efectivo... espero que le sirva a alguien.