CONTENUTO ►
Presentiamo un altro progetto sul Arduino: “Lampada intelligente con controllo Bluethooh”. Per realizzare il progetto sono necessari una scheda Arduino, un modulo Bluethooh, un sensore di movimento, un relè, una striscia LED a 12 V o una lampada a 220 V, nonché uno smartphone o un tablet Android per il quale scriveremo un’applicazione. Nell’articolo troverete un elenco di tutti i componenti necessari e una descrizione dettagliata del progetto.
Per questa attività sono necessari:
- Arduino Uno / Arduino Nano / Arduino Mega
- modulo Bluetooth HC-05 / HC-06
- PIR sensore di movimento
- modulo relè SRD-05VDC-SL-C
- cavi di collegamento
- application lampe_bluetooth.apk
- libreria SoftwareSerial.h
L’obiettivo del progetto è quello di ridurre i costi energetici spegnendo automaticamente l’illuminazione quando non c’è nessuno nella stanza per molto tempo. Il dispositivo sviluppato può essere utilizzato non solo negli ingressi e nei corridoi, ma anche nei soggiorni, in quanto spegne l’illuminazione non immediatamente, ma quando non c’è movimento per molto tempo. La commutazione della modalità di funzionamento avviene a distanza.
Controllare una lampada con Bluetooth e Android
Al circuito è collegato un sensore di movimento PIR, che consente al dispositivo di funzionare in modalità automatica – accendendo e spegnendo la luce in base alla presenza di movimenti nella stanza. Quando la lampada viene accesa o il sensore di movimento viene attivato, viene applicata una tensione al pin12 del microcontrollore e il relè chiude il circuito. Per accendere e spegnere la luce intelligente, è necessario installare un’app sullo smartphone.
Programma Arduino per controllare lampada con Android
#include "SoftwareSerial.h" SoftwareSerial mySerial(2, 3); // RX, TX unsigned long count = 180000; // 180 sec #define LED 12 // pin della lampada #define PIR 8 // pin del sensore int val; byte n = 0; unsigned long counttime; void setup() { mySerial.begin(9600); pinMode(LED, OUTPUT); pinMode(PIR, INPUT); } void loop() { // modo manuale if (mySerial.available()) { val = mySerial.read(); if (val == 'H') { digitalWrite(LED, HIGH); } if (val == 'L') { digitalWrite(LED, LOW); } if (val == 'A') { n = 1; } } // modo automatico while (n == 1) { if (mySerial.available()) { val = mySerial.read(); if (val == 'M') { n = 0; break; } } if (digitalRead(PIR) == HIGH) { digitalWrite(LED, HIGH); n = 1; } if (digitalRead(PIR) == LOW) { counttime = millis(); n = 2; } // funzione di spegnimento della luce while (n == 2) { if (mySerial.available()) { val = mySerial.read(); if (val == 'M') { n = 0; break; } } if (millis() - counttime > count) { digitalWrite(LED, LOW); n = 1; } if (digitalRead(PIR) == HIGH) { digitalWrite(LED, HIGH); n = 1; } } } }
Spiegazione del codice per controllare lampada con Bluetooth e Android:
- nel ciclo while (n==1) la lampada si accende/spegne automaticamente, con la possibilità di passare alla modalità manuale tramite l’applicazione;
- nel ciclo while (n==2) la lampada si spegne se non c’è movimento nella stanza per 180 secondi (l’intervallo può essere modificato nel programma).
Conclusione. A differenza delle normali luci con sensore di movimento installate oggi in molte case. Il nostro apparecchio con controllo Bluethooh spegne l’illuminazione non immediatamente. Quando il sensore smette di rilevare il movimento, il software avvia un contatore per 1 minuto (l’intervallo può essere modificato), durante il quale la luce rimane accesa; se viene rilevato un movimento, il contatore viene azzerato.
Lascia un commento