oldies [AVR] – Serratura elettronica con chiave RFID e lettore generico RFID 125KHz

Nota: gli articoli della serie “oldies” sono ripresi da miei vecchi siti web non più on-line.

Il circuito, basato su micro ATtiny2313, legge tag RFID a 125 KHz. Il codice del primo tag letto dopo la programmazione del micro, viene memorizzato nella earom interna e successivamente produce un impulso di circa un secondo sui contatti del relè ogni volta che il tag viene posizionato vicino al lettore. Questo permette di realizzare una semplice serratura elettronica contactless.

Il tag memorizzato (e ogni altro tag che viene posizionato vicino al lettore) causa anche l’uscita seriale del codice interno, in formato ASCII, il che permette di implementare un lettore generico per il controllo degli accessi.

Questo circuito è stato da me pubblicato sulla rivista CQ Elettronica nel numero di maggio 2009 e intitolato: “Lettore RFID 125KHz”. Nell’articolo si possono trovare maggiori dettagli sul circuito e sull’implementazione. Di sotto, lo schema elettrico:

clicca per ingrandire

Per la programmazione del micro, è stato utilizzato il freeware SP12, nelle versioni per WinXP o Win2K. I file batch inclusi nello ZIP scaricabile richiedono l’utilizzo di questo software per la programmazione del micro (lo si può trovare facilmente con una ricerca su Google). Se avete un altro strumento per la programmazione del micro, la configurazione per i fusibili nell’applicazione descritta è la seguente:


Il file scaricabile EF150.zip  (password: “eficara”) contiene:


– MAIN.C – programma sorgente in C
– schematic.PDF – schema elettrico in formato PDF
– Top.PDF – layout del circuito stampato (singola faccia) in scala PDF 1:1 (vedi sotto)
– TopPrint.PDF – layout dei componenti del circuito
– rfid.a90 – file HEX compilato pronto per programmare il micro
– wrFuses.bat – file batch per programmare i microfusibili
– wrProg.bat – file batch per avviare la programmazione del firmware
– wrEarom.bat – file batch per sovrascrivere la earom (cancella il tag memorizzato)
– EF150pic.jpg – foto del circuito montato
– interfaces.png – un paio di circuiti per interfacciare la scheda ad un PC o ad un micro (vedi sotto)
– EAROM.TXT – file di testo contenente i 5 byte per cancellare il tag della chiave in earom

Aggiunto il 30 agosto 2009
La bobina ha 105 spire di filo da 0,2 mm avvolte su un supporto di 30 mm di diametro; nel prototipo ho usato il collo di una bottiglia di plastica, visibile nella figura.
Aggiunto il 28 febbraio 2010
Nota: Il driver SN75176 è usato SOLO come driver di potenza, ma il circuito funziona anche se si rimuove il chip e si mette semplicemente un ponticello tra i pin 4 e 6 dello zoccolo a 8 pin. Ovviamente, il driver rende più “rilassato” il pin di uscita PB2 del microcontrollore.
Aggiunto il 1 marzo 2010
Nota: è possibile sfogliare il progetto del programmatore dell’AVR SP12 in questo sito/url: http://www.xs4all.nl/~sbolt/e-spider_prog.html
Aggiunto il 2 marzo 2010
Oops, qualcuno ha notato che la foto del circuito mostra una cpu ATTiny2313V-10PU; beh, il chip giusto è quello che si trova nello schema schema del circuito: l’ATTiny2313-20PU. L’ultimo, infatti, può funzionare con il cristallo a 16 MHz necessario all’applicazione, mentre il primo è garantito solo fino a 10 MHz. La ragione per la versione a 10 MHz montata a bordo è (semplicemente) che non avendo la versione veloce, ho provato (con successo) quella lenta. Ok, non guardate la foto, guardate lo schema!
Aggiunto il 14 aprile 2010
Nota: ho ricevuto molte richieste del sorgente C o Assembler per questo programma e ho deciso di renderlo disponibile! Esso si trova nel file zippato; il compilatore utilizzato è lo IAR Embedded Workbench KickStart Edition
Aggiunto il 10 settembre 2010
Il campo d’azione è di circa 3 cm con la bobina mostrata in figura. Si possono ottenere risultati migliori modificando il diametro della bobina (e il numero di spire, ovviamente).

Per chi vuole solo dare un’occhiata al sorgente C, senza scaricare il file zip, eccolo di seguito come serie di immagini: