Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522

Gli RFID (Radio-Frequency IDentification) vengono ormai utilizzati per diversi scopi, dalla gestione dei magazzini al controllo accessi, e molti altri progetti. Esistono diversi moduli utilizzabili anche con Arduino per poter create i più disparati progetti. In questo post vedremo Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522.


Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522

Materiale utilizzato in questa guida

  • Arduino Nano ATmega328P CH340G: lo abbiamo già utilizzato per altri progetti (acquistabile su AmazoneBay)
  • Modulo MRFC522: per la lettura dei tag RFID (acquistabile su AmazoneBay)
  • Tag RFID: compatibili con il modulo MFRC522 (acquistabili su AmazoneBay)
  • Breadboard: basetta forata sperimentale (acquistabile su AmazoneBay)
  • Jumper Wire: cavetti (acquistabili su AmazoneBay)
  • Arduino IDE: ambiente di sviluppo per programmare il micro controllore Arduino (per l’installazione e la configurazione vi rimando a questi post)

Dettagli modulo MFRC522

Il modulo RFID MRFC522, della NXP Semiconductors, è un modulo dal costo contenuto. Funziona con un’alimentazione di 3.3 volt e lavora ad una frequenza di 13.56MHz.

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522 piedini

Il modulo MFRC522 è in grado di leggere le seguenti tipologie di Tag RFID:

  • MIFARE Mini
  • MIFARE 1K
  • MIFARE 4K
  • MIFARE Ultralight
  • MIFARE DESFire EV1
  • MIFARE Plus

Per maggiori informazioni potete consultare il datasheet a questo link.

Montaggio e configurazione

Prima di tutto effettuiamo i collegamenti, tra Arduino e il modulo MFRC522, utilizzando questo schema in base al microcontrollore

COLLEGAMENTO PIEDINI
MFRC522 Arduino Uno

Arduino Nano Arduino ATmega328P
SDA D10 D10 D10
SCK D13 D13 D13
MOSI D11 D11 D11
MISO D12 D12 D12
IRQ N/A N/A N/A
GND GND GND GND
RST D9 D9 D9
3.3V 3.3V 3.3V 3.3V

Qui un esempio di collegamento, tra Arduino Nano ATmega328P e il modulo MFRC522, realizzato con Fritzing

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522 circuito fritzing

Una volta terminato il circuito colleghiamo Arduino, tramite la porta USB, al nostro PC e avviamo l’ambiente di sviluppo Arduino IDE.
Per poter permettere ad Arduino di riconoscere il modulo dobbiamo installare le librerie. Per farlo utilizzeremo il gestore delle librerie messo a disposizione da Arduino IDE.
Da Arduino IDE avviamo il gestore della librerie cliccando su Sketch -> #Include Libreria -> Gestione Librerie

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522 gestore libreria

Con Gestore Librerie aperto utilizziamo la casella di ricerca (in alto a destra) per cercare la libreria relativa al modulo MFRC522.
Trovata la libreria selezioniamo la versione da installare e clicchiamo sul pulsante Installa.

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522 ricerca libreria

Al termine dell’installazione ci verrà mostrato l’esito e la versione installata.

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522 conferma installazione

Chiudiamo il gestore delle librerie e configuriamo l’IDE in modo da poter programmare il nostro Arduino. Potete cambiare le seguenti configurazioni in base al micro controllore a vostra disposizione.
Selezioniamo la scheda da Strumenti -> Scheda -> Arduino Nano

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522 selezione scheda

Ora selezioniamo il processore da Strumenti -> Processore -> ATmega328P

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522 selezione processore

Infine selezioniamo la porta usb su cui è collegato Arduino da Strumenti -> Porta -> COM04 (N.B.: il nome della porta può essere differente)

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522 selezione porta com


Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522

Sketch Arduino e test

La maggior parte delle librerie che installiamo sull’IDE di Arduino, compreso quella relativa al modulo MFRC522 che abbiamo appena installato, contengono degli sketch di esempio già pronti da utilizzare.
Quello che vi propongo qui è una rivisitazione semplificata di uno degli esempi. Ci limiteremo a leggere il codice UID (codice che identifica il Tag) e la tecnologia del Tag e visualizzarli sul Serial Monitor.
Copiate su Arduino IDE questo codice

Il codice è abbastanza commentato. Le righe più significative sono quelle relative alla lettura del codice UID al passaggio del CHIP vicino al modulo MFRC522

e quella relativa alla lettura della tipologia del CHIP

Ora non ci resta che verificare se la compilazione va a buon fine cliccando sul pulsante Verifica (contrassegnato da una V)

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522 verifica sketch

Se la verifica non ha segnalato errori possiamo caricare lo sketch su Arduino cliccando su Carica (pulsante contrassegnato da una freccia rivolta verso destra)

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522 carica sketch

Al termine della carica dello sketch nella board Arduino, avviamo il Monitor Seriale da Strumenti -> Monitor Seriale

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522 avvio monitor seriale

Se proviamo a passare un TAG RFID sul modulo MFRC522 vedremo comparire il codice UID, e la tipologia del CHIP, sul monitor seriale

Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522 lettura UID TAG RFID

Bene, abbiamo visto Come leggere chip RFID con Arduino ATmega328P e modulo MFRC522.
Per maggiori informazioni sulla tecnologia RFID vi rimando a questo link.

Se avete dubbi, domande o consigli da dare, non esitare ad utilizzare il modulo dei commenti.

A presto 😉

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *