Ciao a tutti, volevo condividere con voi questo mio primo progetto, un po più complesso del solito per quanto mi riguarda, ma è sicuramente un buon inizio. Si tratta di una centrale di allarme antifurto che simpaticamente ho chiamato "AllarmDuino". E' una semplice centrale a una zona nel mio caso perché ho un solo PIR a disposizione, ma ovviamente espandibile, che si attiva o disattiva tramite un tag RFID, essa può memorizzare fino a tre tag più una chiave master.
***
AGGIORNAMENTO 1.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. Kit lettore RFID-RC522
1. Sensore PIR
1. Display LCD 16x2 con adattatore Serial I2C
1. Modulo relè
2. Led colorati
1. Pulsante
2. Resistenze da 220 ohm
1. Resistenza da 10 kohm
Software:
Video dimostrativo:
salve vorrei provare il progetto ma c'è il codice?
RispondiEliminaCerto, lo trovi cliccando su "Source Code AllarmDuino 1.1". Ciao
EliminaQuesto commento è stato eliminato dall'autore.
Eliminaciao io riesco a far leggere i miei tag come mai?
RispondiEliminali ho letti sia in hex sia in dec.
Ciao, dato che mi hai fornito poche informazioni, ti dico che la configurazione iniziale consiste solo nell'inserire il codice della propria card master nel sorgente prima di caricarlo. Fatto questo, una volta messo il tutto in funzione, potrai (avvicinando la card master) avere accesso alla funzione che memorizza i tuoi tag.
EliminaCiao e grazie della tua risposta, ho scaricato uno sketch per leggere le card sia in HEX che in DEC, ma non le riconosce nel tuo programma.
EliminaCome hai rilevalo le chiavi dei tuoi tag?
Una volta risolto i problemi con i tag volevo modificare questo programma aggiungendo un modulo gsm, cosi oltre che suonare mi chiami e mandi sms.
Pensi sia fatibile?oppure meglio farlo uno da capo?
Ciao Gionata, procedi in questo modo: carica lo sketch di esempio "cardRead" (lo trovi nella cartella examples della libreria RFIDRC522) e apri il monitor seriale per ricevere l'output. Avvicina al lettore la chiave che vorrai usare come master. A questo punto, come output, avrai il codice della chiave sia in decimale che esadecimale. Appuntati i cinque gruppi di cifre DEC. Ora apri il mio sketch e inseriscile nello stesso ordine nella parte iniziale dedicata alla chiave master. Fatto questo il tutto dovrebbe funzionare. Riguardo la modifica che vorresti apportare, ti dico che è senza dubbio fattibile, e senza stravolgere tanto il codice originale. Se possiedi una shield gsm con il SIM900 a bordo, prova a scaricare l'apposita libreria da questo sito http://www.gsmlib.org/index.html, è molto intuitiva e ha le funzioni di cui hai bisogno.
EliminaCiao grazie ora sono riuscito ad inserire la chiave master..... Era un mio errore.
EliminaHo modificato alcune cose ed aggiunto la funzione che se suona chiama 2 numeri da me impostati.
Invece non è possibile inserire anche l'invio degli SMS,perché la memoria di arduino diventa piena e di conseguenza il progetto è instabile.
Ora vorrei inserire la possibilità di disattivarlo tramite codice at ma ho qualche difficoltà...
Questo commento è stato eliminato dall'autore.
EliminaCiao, voglio realizzare questo progetto su Arduino MEGA 2560 compatibile ma non so come configurarlo, all'avviarsi del sistema mi attiva il led ed il relè della sirena, premendo sul pulsante mi da il messaggio NESSUNA MEMORIA oppure esegue il reset e passando il tag o la card sul sensore non accade nulla. Come si configura? Grazie
RispondiEliminaCiao, ho risolto, non avevo inserito correttamente il master key
EliminaOk Ismaele, se hai dubbi in futuro chiedi pure. Ciao
EliminaCiao volevo un aiuto.. avrei bisogno di aggiungere una linea h24 nel codice ma non sono riuscito.
RispondiEliminaUso arduino mega e non uno.
La ringrazio
Ciao Gionata, prendendo lo sketch originale, se volessi far diventare il radar una linea h24, farei in questo modo:
RispondiEliminaif (digitalRead(sensorePir1) == HIGH && statoAllarme == 0){
zona=24;
allarme();
}
Quindi un allarme istantaneo, indipendentemente dallo stato dell'antifurto, e senza tempo di ingresso. Non ho possibilità di testarlo ma in teoria dovrebbe essere così.
Ciao posso dire che l'ho provato e funziona perfettamente ti ringrazio.
RispondiEliminaHo aggiunto anche la funzione che chiama se la centrale e in allarme, ma l'inghippo più grande e che non ho trovato un modo per disattivarlo o attivarlo tramite SMS.
Ma questo non è un problema del tuo progetto....
Grazie ancora dell'aiuto che mi hai fornito.
Questo commento è stato eliminato dall'autore.
RispondiEliminaSalve volevo porre una domanda, ho provato in diversi metodi ma non riesco ad attivare e disattivare l'allarme con un messaggio.
RispondiEliminaNon e possibile perché e presente RFID?
Ho provato a dichiarare la funzione anche prima dell'RFID.
ma lo schema per l'1.0?
RispondiEliminaE sotto la scritta software
RispondiEliminaQuesto commento è stato eliminato dall'autore.
RispondiEliminaciao premetto che uso un mac e arduino uno,non riesco ad inserire la libreria del lettore schede, cioè ho messo la cartella all'interno di libraries,ma quando scrivo: include RFID rimane comunque in nero e non me lo prende come fa invece per la libreria del display ! non so se mi sono spiegato bene
RispondiElimina"RFID.cpp" contiene caratteri non riconosciuti. Se il codice è stato creato con una versione
Eliminaprecedente di Processing, potrebbe essere necessario usare Strumenti -> Correggi codifica e
ricarica per aggiornare lo sketch alla codifica UTF-8. In alternativa è
necessario cancellare i caratteri errati per eliminare questo avviso Mi scrive così
Se volessi usare l' LCD senza adattatore ma diretteamente collegamdl cavo per cavo alle porte analogiche? Posso farlo senza dover modificare lo sketch?
RispondiEliminaCiao Emanuele, il collegamento è possibile, ma dovresti comunque apportare alcune modifiche allo sketch. Ad esempio a differenza del adattatore I2C, dovrai importare la libreria standard "LiquidCrystal" che va inizializzata in maniera differente.
EliminaCiao, ho fatto tutto, un solo problema, ho bruciato l'adattore lcd ed ho preso il tuo sketch dove colleghi direttamente il display ai 5 pin analogici, ho seguito alla lettera il circuito su fritzing, adesso per lo sketch? Mi puoi dire come modificarlo o da dove prenderlo?
EliminaE che libreria includere?
Grazie mille, spero di risolvere al più presto ne ho davvero bisogno.
Grazie.
Vincenzo.
Ciao, ho fatto tutto, un solo problema, ho bruciato l'adattore lcd ed ho preso il tuo sketch dove colleghi direttamente il display ai 5 pin analogici, ho seguito alla lettera il circuito su fritzing, adesso per lo sketch? Mi puoi dire come modificarlo o da dove prenderlo?
EliminaE che libreria includere?
Grazie mille, spero di risolvere al più presto ne ho davvero bisogno.
Grazie.
Vincenzo.
ciao, dove posso trovare la libreria con relay, rfid reader ecc x arduino x fritzing? grazie in anticipo
RispondiEliminaCiao Alessandro, questo è il link del relay https://github.com/rwaldron/fritzing-components
Eliminaquesto per il lettore RFID https://github.com/miguelbalboa/rfid/tree/master/doc/fritzing
ciao potresti dirmi come risolvere il mio problema ? l'errore è questo:"RFID.cpp" contiene caratteri non riconosciuti. Se il codice è stato creato con una versione
RispondiEliminaprecedente di Processing, potrebbe essere necessario usare Strumenti -> Correggi codifica e
ricarica per aggiornare lo sketch alla codifica UTF-8. In alternativa è
necessario cancellare i caratteri errati per eliminare questo avviso Mi scrive così
Ciao Luca, non avendo idea del problema, ho dato un occhiata in rete e ho trovato questo topic che potrebbe fare al caso tuo: https://github.com/MagoKimbra/MarlinKimbra/issues/24
Eliminagrazie mille ho risolto e un'altra cosa io se metto il codice in DEC nella prima parte del programma, non riesco a usare la card bianca cosa sbaglio?
EliminaCiao Luca, in cima alla pagina ho aggiunto la procedura per inserire nel sorgente il codice della propria card master.
Eliminasalve go provato il progetto ,complimenti veramente,mi potrebbe dire che tipo di buzzer lei ha usato ?se si sente abbastanza e se ha usato un amplificatore o un transistor per aumentare il suone del buzzer?
RispondiEliminaCiao Fabrizio, se ti riferisci al video dimostrativo, ho utilizzato un normale buzzer a 5v acquistato su ebay, l'ho collegato semplicemente al GND e al pin dedicato di Arduino. Nel mio caso il suono è udibile in tutto l'appartamento, poi dipende da quale distanza vorresti sentirlo.
EliminaHo provato col il suo stesso buzzer ma suona continuamente
EliminaSalve! avrei bisogno di un aiuto per andare avanti, allora il lettore mi legge la chiave e compare questo codice: F2217D6FC1
RispondiEliminavorrei capire dove e come inserire questa lettura nel codice sorgente, sono poco esperto di questo quindi se mi viene spiegato meglio forse ci capisco un po di più.
Mi scuso e vorrei una risposta a breve possibilmente, grazie mille
oltretutto mi compare anche questo codice con la stessa chiava: 220403A
Eliminaaspetto risposta
Devi convertire il codice esadecimale in decimale.
Eliminaquindi Il tuo F2217D6FC1 = 242 33 125 111 193
Lo vai ad inserire nel programma dove trovi:
// ***IMPORTANTE*** Inserire il codice della propria chiave master.
#define masnum0 242
#define masnum1 33
#define masnum2 125
#define masnum3 111
#define masnum4 193
ciaoo vorrei sapere il perchè nel verificare la programmazione mi dice che c'è un errore durante la compilazione, ho preso la programmazione che c'è in alto nel sito
RispondiEliminaPosso avere lo scketch, mi serve urgente, puoi mandarmelo, ti ringrazio tanto.
RispondiEliminaMark per favore rispondimi, ho risolto il problema trovando il tuo sketch senza adattatore, ho un problema con la card, passo la card legge la card master poi mi da gestione chiavi chiavi master:0
RispondiEliminaE poi me la da annullata, come devo fare?
Mark per favore rispondimi, ho risolto il problema trovando il tuo sketch senza adattatore, ho un problema con la card, passo la card legge la card master poi mi da gestione chiavi chiavi master:0
RispondiEliminaE poi me la da annullata, come devo fare?
Ci sono riusito per la CARTA, non avendo l' adatattore per il display vorrei utilizzare la programmazione di quella con l'adattatore perché è migliore e mi offre il tempo di entrata ed uscita per il garage, come devo modificare???
RispondiEliminaCiao Vincenzo, in questo link troverai l'archivio con lo sketch e lo schema di collegamento senza il convertitore I2C.
EliminaScusami se non ho potuto aiutarti subito ultimamente sono molto impegnato.
https://drive.google.com/open?id=0Bz55lHJwklQSaDNUSFU0TjlPQkk
Come è possibile parlare un attimo con te in modo che ti mando le foto e mi aiuti un attimo ti prego, mi serve entro stasera devo istallarlo dove posso contattati faceBook? Email? Whatsapp? In modo che ti mandò un video e vedi se puoi aiutarmi.grazie!
RispondiEliminaCome è possibile parlare un attimo con te in modo che ti mando le foto e mi aiuti un attimo ti prego, mi serve entro stasera devo istallarlo dove posso contattati faceBook? Email? Whatsapp? In modo che ti mandò un video e vedi se puoi aiutarmi.grazie!
RispondiEliminaMi puoi rispondere per favore è urgente.
RispondiEliminaQuesto commento è stato eliminato dall'autore.
RispondiEliminaCiao,bel progetto,complimenti!Una domanda:a cosa serve il relay?Grazie
RispondiEliminaQuesto commento è stato eliminato dall'autore.
RispondiEliminaCiao, mi esce questo errore cosa devo fare??
RispondiEliminano matching function for call to 'LiquidCrystal_I2C::begin()
Nella versione V. 1.1
RispondiEliminaMa cosa va collegato all'uscita del relè
RispondiEliminaQuesto commento è stato eliminato dall'autore.
EliminaVa collegata la sirena Matteo
EliminaCiao a tutti e complimenti per questo bel progetto. Posso farvi una domanda: assemblo tutto e fino a ieri tutto funziona alla perfezione, stamattina il rfid reader non legge più niente, cosa può essere successo ? La scheda è alimentata con un alimentatore 12v e tutto il resto (pir e display) funzionano correttamente. Grazie
RispondiEliminaciao sto usando un integrato mcp23017 per risparmiare pin su arduino uno come lo integro nello sketch
RispondiEliminaBuongiorno Mark,
RispondiEliminaComplimenti per il progetto, molto bello e funzionale.
Lo sto usando per il mio garage dove purtroppo non ho possibilità di connessione internet e quindi ho pensato di integrare un modulo gsm sim800l che faccia partire in caso di allarme semplici chiamate a 3 diversi numeri di cellulare, anche perché il garage è distante da casa.
Potresti indicarmi gentilmente come dovrei procedere x integrare i comandi nello sketch?
Saresti davvero di grande aiuto!!
Grazie.
Alessandro.
Ciao, se volessi usare lo sketch e i collegamenti con arduino MEGA devo cambiare qualcosa? le librerie sono compatibili con il MEGA ATMEGA 2560?
RispondiEliminaGrazie!
CIAO! ma come è possibile contattare MARK87 per avere un aiuto per una modifica?
RispondiEliminaCiao, non riesco a visualizzare tutto il messaggio sul display,ho caricato il tuo programma ma vedo solo la prima lettere di ogni comando
RispondiEliminaCiao Mark,vorrei sapere se è possibile implementare anche un Keypad 4x4.
RispondiEliminaIo uno Arduino Mega
Ti lascio il link del progetto qui sotto e se riesci ti chiedo la cortesia se riesci già tu a implementare il codice con il keypad oppure me lo dici che lo faccio io.
Grazie mille
https://drive.google.com/open?id=1IaC1vDWhH8hVp-1qMEDzwEy0DKB0Wn8N
salve a tutti, il mio funziona non capisco perchè suona solo una volta anche se rileva il pir si accende il led giallo però non suona più è normale ciao nicola
RispondiElimina