Arduino UNO R4 - RFID/NFC

Dans ce guide, nous allons apprendre à utiliser la technologie RFID/NFC avec un Arduino UNO R4. Le système comporte deux parties : un lecteur et une étiquette. Nous discuterons de deux types de lecteurs : le RC522 et le PN532. Ce guide se concentrera sur le lecteur RC551, et nous aborderons le PN532 dans un autre guide prochainement.

Le lecteur RC522 RFID/NFC, également connu sous le nom de module RFID-RC522, peut :

Ce tutoriel vous montre comment lire l'UID d'une étiquette RFID/NFC en utilisant l'Arduino UNO R4. C'est une utilisation courante de cet appareil. D'autres tutoriels sur d'autres fonctionnalités viendront plus tard.

Arduino UNO R4 et RFID RC522

À propos du module RFID-RC522

Schéma des broches du module RFID-RC522

Le module RFID-RC522 comporte 8 broches. Certaines broches sont communes, tandis que d'autres sont utilisées pour trois méthodes de communication différentes : SPI, I2C et UART. Vous ne pouvez utiliser qu'une seule méthode de communication à la fois. Les broches sont :

  • Broche GND : Reliez-la à la masse (0 volts).
  • Broche VCC : Reliez-la au VCC (3,3 volts).
  • Broche RST : Il s'agit d'une broche de réinitialisation et d'arrêt d'alimentation. Si cette broche reçoit un signal bas, cela provoque un arrêt d'alimentation forcé. Un signal haut réinitialise le module.
  • Broche IRQ : Il s'agit d'une broche d'interruption qui avertit le microcontrôleur lorsqu'une étiquette RFID se trouve à proximité.
  • Broche MISO/SCL/TX : Sert de MISO avec SPI, de SCL avec I2C et de TX avec UART.
  • Broche MOSI : Fonctionne comme MOSI avec le SPI activé.
  • Broche SCK : Fonctionne comme SCK lorsque le SPI est activé.
  • Broche SS/SDA/RX : Fonctionne comme SS avec SPI, SDA avec I2C et RX avec UART.
Schéma de brochage RFID-RC522

※ Note:

  • L'agencement des broches peut différer selon le fabricant. Suivez toujours les étiquettes sur le module lui-même. L'image fournie est spécifique au fabricant DIYables.
  • Ne connectez pas la broche VCC à la broche 5V, car cela pourrait endommager le module.
  • La bibliothèque MFRC522 fonctionne uniquement en mode SPI. Ainsi, ce guide utilise exclusivement la communication SPI.

Comment fonctionnent les technologies RFID et NFC

RFID/NFC se compose de deux parties : un lecteur et une étiquette.

  • Le lecteur comprend un module de radiofréquence et une antenne qui crée un champ électromagnétique de haute fréquence.
  • L'étiquette est un dispositif passif qui n'a pas besoin de sa propre source d'alimentation. Elle possède une puce pour stocker et traiter les informations, et une antenne pour envoyer et recevoir des signaux. L'étiquette contient des informations telles que l'UID (Identifiant Unique) et d'autres données.
Système Arduino RFID et NFC

Pour lire les informations sur une étiquette, l'étiquette doit être proche du lecteur (elle n'a pas besoin d'être directement vue). Les processus de lecture :

  • Le lecteur crée un champ magnétique qui fait circuler les électrons dans l'antenne du tag, ce qui active ensuite la puce.
  • Ensuite, la puce du tag renvoie les informations nécessaires au lecteur sous forme d'un nouveau signal radio.
  • Le lecteur capte ce signal et le convertit en données.
  • L'Arduino UNO R4 traite les données reçues du lecteur.

Schéma de câblage entre le module RFID-RC522 et l'Arduino UNO R4

Le module RFID-RC522 fonctionne avec une alimentation de 3,3 V, mais les broches de sortie d'un Arduino UNO R4 fournissent du 5 V.

  • Assurez votre sécurité en abaissant la tension des broches 5 V de l'Arduino UNO R4 à 3,3 V avant de les connecter au module RC522. Pour plus de simplicité et de tests, vous pouvez connecter directement les broches de l'Arduino UNO R4 au module RC522, mais cela peut parfois empêcher le bon fonctionnement de l'Arduino UNO R4.

Ce guide offre deux schémas de câblage différents pour chaque cas :

  • Comment connecter RC522 et Arduino UNO R4 sans régulateur de tension
Schéma de câblage Arduino UNO R4 RFID RC522

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

  • Schéma de câblage pour connecter le module RC522 à l'Arduino UNO R4 avec un régulateur de tension
Arduino UNO R4 RFID RC522 avec schéma de câblage à alimentation régulée

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Voir Comment alimenter l'Arduino UNO R4..

Le schéma de câblage montre qu'une paire de résistances, 1 kΩ et 2 kΩ, est utilisée pour réguler la tension de 5 V à 3,3 V. Il n'est pas nécessaire d'ajuster la tension entre la broche de l'Arduino UNO R4 et la broche MISO du module RC522. Cependant, vous devez réguler la tension entre les broches de l'Arduino UNO R4 et les broches SS, SCK, MOSI et RST du module RC522.

Tableau de câblage du module RFID/NFC RC522 et Arduino UNO R4

RFID/NFC RC522 Arduino UNO R4
SS → 10
SCK → 13
MOSI → 11
MISO → 12
IRQ(not connected)
GNDGND
RST → 5
VCC → 3.3V

Code RFID/NFC Arduino UNO R4

/* * Ce code Arduino UNO R4 a été développé par newbiely.fr * Ce code Arduino UNO R4 est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/arduino-uno-r4/arduino-uno-r4-rfid */ #include <SPI.h> #include <MFRC522.h> #define SS_PIN 10 // The Arduino UNO R4 pin connected to the SS pin of RC522 module #define RST_PIN 5 // The Arduino UNO R4 pin connected to the RST pin of RC522 module MFRC522 rfid(SS_PIN, RST_PIN); void setup() { Serial.begin(9600); SPI.begin(); // init SPI bus rfid.PCD_Init(); // init MFRC522 Serial.println("Tap RFID/NFC Tag on reader"); } void loop() { if (rfid.PICC_IsNewCardPresent()) { // new tag is available if (rfid.PICC_ReadCardSerial()) { // NUID has been readed MFRC522::PICC_Type piccType = rfid.PICC_GetType(rfid.uid.sak); //Serial.print("RFID/NFC Tag Type: "); //Serial.println(rfid.PICC_GetTypeName(piccType)); // print NUID in Serial Monitor in the hex format Serial.print("UID:"); for (int 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 PICC rfid.PCD_StopCrypto1(); // stop encryption on PCD } } }

Étapes rapides

Suivez ces instructions étape par étape:

  • Si c'est la première fois que vous utilisez l'Arduino Uno R4 WiFi/Minima, reportez-vous au tutoriel sur Arduino UNO R4 - Installation du logiciel..
  • Raccordez les composants selon le schéma fourni.
  • Connectez la carte Arduino Uno R4 à votre ordinateur à l'aide d'un câble USB.
  • Lancez l'IDE Arduino sur votre ordinateur.
  • Sélectionnez la carte Arduino Uno R4 appropriée (par exemple Arduino Uno R4 WiFi) et le port COM.
  • Allez sur l'icône Libraries sur le côté gauche de l'IDE Arduino.
  • Recherchez “MFRC522” et localisez la bibliothèque par GithubCommunity.
  • Cliquez sur le bouton Install pour ajouter la bibliothèque MFRC522.
Bibliothèque MFRC522 pour Arduino UNO R4
  • Copiez le code et ouvrez-le dans l'IDE Arduino
  • Cliquez sur le bouton Upload dans l'IDE Arduino pour téléverser le code sur Arduino UNN R4
  • Ouvrez le moniteur série
  • Approchez quelques étiquettes RFID/NFC sur le module RFID-RC522
  • Vérifiez l'UID affiché dans le moniteur série
COM6
Send
Tap RFID/NFC tag on reader RFID/NFC tag Type: MIFARE 1KB UID: 3A C9 6A CB RFID/NFC tag Type: MIFARE Ultralight or Ultralight C UID: 04 64 34 5A 1E 4E 80
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Vidéo

Tutoriels connexes

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !