Dopo il progetto base di una centrale antifurto pubblicato in precedenza, oggi condivido una nuova versione di "AllarmDuino" la 2.0 con ulteriori aggiornamenti e correzioni. Come sempre tutto già pronto e funzionante. Innanzitutto ho reso la centrale gestibile anche da remoto attraverso un applicazione android creata ad hoc con AppInventor 2 ( mi dispiace per gli "iphonisti" purtroppo ). Allora il funzionamento è semplice, oltre al solito lettore RFID che ti permetteva di attivare o meno la centrale in locale, ora attraverso l'applicazione puoi farlo anche da remoto o controllare semplicemente lo stato dei sensori. Inoltre c'è anche la funzione che simula un combinatore telefonico, cioè al momento che la centrale va in allarme vi arriverà un avviso sonoro con vibrazione che vi informerà anche della zona in allarme. Ho aggiunto per finire la possibilità di comandare, sempre da remoto, dispositivi a 220v tramite relè e di conoscerne quindi lo stato attuale sincronizzando il tutto in tempo reale. Ovviamente tutto ciò è possibile collegando alla rete arduino tramite la ethernet shield utilizzando un indirizzo ip statico, nel mio caso avendo un ip dinamico ho usato il servizio di DNS gratuito che offre dyndns.it. A differenza della vecchia versione ho sostituito il buzzer ed il led lampeggiante con un uscita a cui andrò a collegare un relè che comanda una sirena esterna autoalimentata che si attiva, ad esempio, con positivo a mancare. Inoltre per risparmiare pin ho collegato il solito display con l'adattatore serial I2C. Più in basso troverete l'archivio contenente il codice per arduino, le librerie, schema dei collegamenti, il file apk pronto da installare sullo smartphone ed anche il sorgente dell'applicazione, per chi volesse magari aggiungere altri sensori o dispositivi o semplicemente per personalizzarla. Ricordatevi, al primo avvio dell'applicazione, di impostare tramite l'apposito pulsante l'indirizzo ip locale o remoto di arduino. Spero che anche questo mio progetto sia di vostro gradimento, mi dispiace solo per quelli a cui piace ma possiedono un iphone, purtroppo avendo uno smartphone android ho imparato ad usare appinventor.
Per chi possiede la Ethernet Shield con il chip ENC28J60, deve scaricare il codice sorgente adattato per questa versione.
Per chi possiede la Ethernet Shield con il chip ENC28J60, deve scaricare il codice sorgente adattato per questa versione.
*** AGGIORNAMENTO 2.1 ***
Oggi finalmente ho avuto un po di tempo libero a disposizione e ho approfittato per dedicarmi al progetto. In sostanza ho apportato delle modifiche al codice, suggerite anche da alcuni utenti, per renderlo ancora più funzionale ed affidabile. Ad esempio, a differenza della versione precedente, ho migliorato la gestione dei tempi di ingresso/uscita, sostituendo il “delay()” con la funzione “millis()”, e ho aggiunto la possibilità di scandire i secondi con un bip, usufruendo di un buzzer (funzione facoltativa). Inoltre grazie ad un relè è possibile comandare una normale sirena esterna autoalimentata al momento dell’allarme, e tramite codice si può anche impostare per quanto tempo deve suonare se l’allarme persiste.
Per questo aggiornamento consiglio l'utilizzo del display con l’ adattatore Serial I2C, che oltre a costare poco, serve a risparmiare alcuni pin che si possono sfruttare in seguito per aggiungere altri sensori.
Nota importante:
Prima di caricare il sorgente, bisogna inserire manualmente il codice DECIMALE della chiave che si vuole utilizzare come master.
Per leggere il codice procedi in questo modo:
1. Collega solo il lettore RFID come da schema.
2. Carica su Arduino lo sketch di esempio "cardRead" (si trova nella cartella examples della libreria RFIDRC522).
3. Apri il monitor seriale per ricevere l'output.
4. Avvicina al lettore la chiave interessata.
5. Copia i cinque gruppi di cifre DEC che compongono il codice della chiave.
6. Apri il sorgente e inseriscili nella parte iniziale dedicata alla chiave master.
7. Carica il sorgente e completa i collegamenti.
Materiale:
1. Arduino uno
1. Ethernet Shield (con il chip w5100 oppure ENC28J60)
1. Ethernet Shield (con il chip w5100 oppure ENC28J60)
1. Kit lettore RFID-RC522
1. Sensore PIR
1. Display LCD 16x2 con adattatore Serial I2C
2. Modulo relè
2. Led colorati
1. Pulsante
2. Resistenze da 220 ohm
1. Resistenza da 10 kohm
Video dimostrativo: