Come utilizzare il modulo RC522 RFID con Arduino

How to Use the RC522 RFID Module with Arduino

RC522 è un popolare modulo RFID utilizzato per la comunicazione e l'identificazione wireless. È ampiamente utilizzato nei sistemi di controllo degli accessi, nei sistemi di pagamento senza contatto e nel monitoraggio dell'inventario. Questo tutorial ti guiderà attraverso l'interfaccia del modulo RC522 RFID con Arduino per leggere tag e schede RFID.


Cosa avrai bisogno

  1. Modulo RCID RC522
  2. Arduino Board (ad es. Uno, Mega, Nano)
  3. Tag o schede RFID (13,56 MHz)
  4. Breadboard e fili jumper
  5. Un computer con l'IDE Arduino installato

Passaggio 1: Comprensione del modulo RC522 RFID

Il modulo RFID RC522 funziona a 13,56 MHz e comunica con un microcontrollore utilizzando il protocollo SPI. Viene fornito con un'antenna RFID e supporta le operazioni di lettura e scrittura.

Pinout RC522

Spillo Funzione
SDA Spi SS (Slave Select)
SCK COLLO SPI
MOSI Input di dati SPI
Miso Output dei dati SPI
Irq Richiesta di interrupt (opzionale)
GND Terra
Primo Reset
3.3v Alimentazione elettrica

Nota: L'RC522 opera sulla logica 3.3V; Assicurati che le connessioni corrispondano ai requisiti di tensione della scheda.


Passaggio 2: Cablaggio dell'RC522 ad Arduino

Ecco come collegare il modulo RCID RC522 a un Arduino Uno:

PIN RC522 Arduino Pin
SDA Pin 10
SCK Pin 13
MOSI Pin 11
Miso Pin 12
Irq Non connesso
GND GND
Primo Pin 9
3.3v 3.3v

Nota: Per altre schede Arduino, assicurati di mappare correttamente i pin SPI.


Passaggio 3: installare la libreria richiesta

Per lavorare con il modulo RC522, installare la libreria "MFRC522".

Passi da installare:

  1. Apri l'IDE Arduino.
  2. Vai a Schizzo > Includi la libreria > Gestisci le biblioteche.
  3. Cerca "MFRC522" e fai clic su Installare.

Passaggio 4: caricare il codice

Ecco uno schizzo di esempio per leggere i dati dei tag RFID:

#include <SPI.h>
#include <MFRC522.h>

#define RST_PIN 9  // Reset pin
#define SS_PIN 10  // Slave select pin

MFRC522 rfid(SS_PIN, RST_PIN); // Create an instance of the MFRC522 library

void setup() {
  Serial.begin(9600);
  while (!Serial);

  SPI.begin();      // Initialize SPI bus
  rfid.PCD_Init();  // Initialize RFID reader

  Serial.println("RC522 RFID Reader Initialized");
}

void loop() {
  // Check for a new card
  if (!rfid.PICC_IsNewCardPresent() || !rfid.PICC_ReadCardSerial()) {
    return;
  }

  Serial.println("Card detected:");

  // Print the UID of the card
  Serial.print("UID: ");
  for (byte i = 0; i < rfid.uid.size; i++) {
    Serial.print(rfid.uid.uidByte[i] < 0x10 ? " 0" : " ");
    Serial.print(rfid.uid.uidByte[i], HEX);
  }
  Serial.println();

  rfid.PICC_HaltA(); // Halt the card
}

Passaggio 5: testare l'installazione

  1. Collega l'Arduino al tuo computer tramite USB.
  2. Apri l'IDE Arduino e seleziona il corretto Asse E Porta sotto il Utensili menu.
  3. Carica il codice su Arduino facendo clic Caricamento.
  4. Apri il monitor seriale (Utensili > Monitor seriale) e impostare il tasso di baud su 9600.
  5. Posizionare un tag o una scheda RFID vicino al modulo. L'UID della scheda verrà visualizzato nel monitor seriale.

Opzionale: scrivere dati a un tag RFID

Per scrivere i dati a un tag RFID, è possibile utilizzare il PICC_Write funzione nella libreria MFRC522. Fare riferimento agli esempi di biblioteca per operazioni di scrittura dettagliate.


Applicazioni dell'RC522

  1. Sistemi di controllo degli accessi
  2. Sistemi di pagamento senza contatto
  3. Monitoraggio e gestione dell'inventario
  4. Sistemi di partecipazione intelligenti

Risoluzione dei problemi

  • Nessuna risposta dal modulo: Controllare il cablaggio e assicurarsi che le connessioni SPI siano corrette.
  • Uid non rilevato: Assicurarsi che il tag rientri nell'intervallo dell'antenna RFID.
  • Errori della libreria: Verificare che la libreria MFRC522 sia installata correttamente.

Conclusione

Hai interfacciato correttamente il modulo RCID RC522 con Arduino, consentendo di leggere i dati dei tag RFID. Questo modulo versatile è perfetto per i progetti che richiedono comunicazioni e identificazione wireless. Sperimenta funzionalità aggiuntive come la scrittura di dati da tag o l'integrazione in sistemi più grandi per applicazioni avanzate!

Lascia un commento

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.