Interfaçage RCTOP 102 Capteur RFID avec Arduino Nano

Interfaçage RCTOP 102 Capteur RFID avec Arduino Nano
Arduino Nano est une carte de microcontrôleur compacte à conserve de puissance qui contient plusieurs broches GPIO pour les capteurs d'interfaçage. Dans ce tutoriel, Arduino Nano sera interfacé avec le capteur RFID en utilisant le code Arduino. RC522 est un capteur intelligent basé sur SPI qui peut lire les cartes RFID, les balises et les bandes intelligentes.

Contenu couvert dans cet article:

  • 1: Introduction au capteur RC522
  • 2: Pinout de capteur RC522
  • 3: Interfaçage du capteur RFID RC522 avec Arduino Nano
    • 3.1: schéma
    • 3.2: Installation des bibliothèques requises
    • 3.3: Obtenir l'UID pour la carte / tag RFID
  • 4: Lire une étiquette RFID en utilisant Arduino Nano
    • 4.1: code
    • 4.2: sortie

1: Introduction au capteur RC522

Le MFRC522 est un IC sans contact RFID qui peut lire et écrire des données à une fréquence de 13.56 MHz. Il est conçu pour une intégration facile dans un large éventail d'applications, y compris les systèmes de contrôle d'accès, les terminaux de paiement et d'autres systèmes qui nécessitent une communication sans fil sécurisée.

Le capteur dispose d'une conception de consommation d'énergie faible et est conforme à la norme ISO / IEC 14443 A / Mifare, qui lui permet de communiquer avec une large gamme de cartes et étiquettes sans contact.

De plus, le MFRC522 dispose d'une antenne intégrée, ce qui en fait une solution pratique et compacte pour ajouter des capacités de communication sans contact à un projet.

2: Pinout de capteur RC522

Le capteur a un total de 8 broches qui l'interfacent avec un microcontrôleur ou un autre dispositif de contrôle. L'épinglage du capteur MFRC522 est le suivant:

Le SDA, SCK, MOSI, et MISO Les broches sont utilisées pour interfacer le capteur MFRC522 avec un microcontrôleur via un protocole de communication interface périphérique série (SPI) à 4 fils (SPI).

Le IRQ La broche peut être utilisée pour générer une interruption lorsque certains événements se produisent, comme une carte ou une étiquette réussie, mais elle n'est pas couramment utilisée dans de nombreux projets.

Le GND La broche se connecte au sol du circuit, et la première broche est utilisée pour réinitialiser le capteur.

Finalement, le 3.3V La broche est utilisée pour alimenter le capteur.

Il est important de noter que ces noms de broches peuvent varier légèrement en fonction du module spécifique, il est donc toujours préférable de consulter la fiche technique du fabricant pour les informations correctes.

3: Interfaçage du capteur RFID RC522 avec Arduino Nano

L'interfaçage du capteur MFRC522 avec un microcontrôleur Arduino est un processus simple qui peut être accompli en utilisant la bibliothèque MFRC522, qui est disponible gratuitement en téléchargement. Cette bibliothèque fournit un ensemble de fonctions faciles à utiliser pour accéder à la fonctionnalité du capteur, y compris les fonctions de lecture et d'écriture de données aux cartes et balises sans contact.

Une fois la bibliothèque installée, un exemple de croquis peut être trouvé dans le menu Exemples qui montre comment initialiser le capteur et communiquer avec une carte ou une balise. Dans l'esquisse, il est important de définir les connexions de broches correctes entre l'Arduino et le capteur MFRC522, telles que les broches SPI, la broche de réinitialisation et d'autres, selon le modèle de la carte Arduino utilisée.

Avec le câblage correct et la bibliothèque correctement installée, l'Arduino pourra communiquer avec le capteur MFRC522 et effectuer les actions souhaitées telles que la lecture et l'écriture sur les cartes et les balises.

1: schéma

L'image schématique RC522 avec Arduino Nano est illustrée ci-dessous:

2: Installation des bibliothèques requises

La bibliothèque MFRC522 est nécessaire pour lire la carte RFID et les balises Uid. Ouvrez IDE, allez au gestionnaire de bibliothèque et recherchez la bibliothèque MFRC522. Installez la bibliothèque dans Arduino IDE:

Après avoir installé la bibliothèque MFRC522, nous lirons l'UID pour les balises et cartes RFID.

3: Obtenir l'UID pour la carte / tag RFID

Ouvrir le Décharge Exemple pour le capteur MFRC522. Aller à: Fichier> Exemples> MFRC522> Dumpinfo

Le code suivant s'ouvrira dans une nouvelle fenêtre IDE. Téléchargez le code sur Arduino Nano. N'oubliez pas de définir la réinitialisation et l'esclave Sélectionner la broche selon votre carte Arduino. Toutes les épingles numériques Arduino peuvent être définies comme Premier et SS.

Après avoir téléchargé le code sur Arduino Nano. Touchez et maintenez la carte / balise RFID avec le capteur MFRC522.

Le capteur lira les données enregistrées dans la balise RFID et les affichera sur le moniteur en série. Ici, nous pouvons voir le Uid pour la balise RFID indiquant 02 DC B4 C3.

Total de 16 (0-15) secteurs dans lesquels RFID carte / tag 1K de la mémoire est organisée. Quatre (0-3) blocs sont inclus dans chacun de ces 16 secteurs. Chaque bloc a la capacité de stocker 16 (0-15) octets de données.

Ces données représentent cela:

16 secteurs x 4 blocs x 16 octets de données = 1024 octets = 1k mémoire

Le moniteur série Arduino IDE montre la distribution américaine de la mémoire 1k de la balise RFID. Cette distribution contient également les secteurs, les blocs et les informations de données dans les lignes et les colonnes des données de sortie:

Vous pouvez également lire l'ID unique (Uid) pour la carte à la fin de la sortie:

4: Lire une étiquette RFID en utilisant Arduino Nano

Maintenant, nous avons lu l'ID unique (UID) pour la balise RFID. Nous rédigerons un code Arduino qui enregistre les informations de cette carte et accorderons l'accès à l'utilisateur si la balise RFID avec le même UID est exploitée avec le capteur MFRC522.

1: code

Ouvrez IDE, sélectionnez Nano Board et téléchargez le code donné:

/ *
****************
Linuxhint.com
****************
Linuxhint.com
****************
* /
#inclure
#inclure
#define ss_pin 10 / * broche de sélection d'esclaves * /
#define rst_pin 9 / * Réinitialiser la broche pour rc522 * /
#define led_g 8 / * broche 8 pour led * /
MFRC522 MFRC522 (SS_PIN, RST_PIN); / * Créer MFRC522 Initialisé * /
void setup()

En série.commencer (9600); / * Communication série commence * /
Spice.commencer(); / * Communication SPI initialisée * /
MFRC522.Pcd_init (); / * Capteur RFID initialisé * /
pinMode (LED_G, sortie); / * LED PIN SET comme sortie * /
En série.println ("Mettez votre carte au lecteur…");
En série.println ();

VOID LOOP ()

/ * Recherchez la carte RFID * /
si ( ! MFRC522.Picc_isnewcardpresent ())

retour;

/ * Sélectionner la carte * /
si ( ! MFRC522.Picc_readcardSerial ())

retour;

/ * Afficher UID pour la carte / tag sur moniteur série * /
En série.print ("UID TAG:");
String contenu = "";
lettre d'octet;
pour (octet i = 0; i < mfrc522.uid.size; i++)

En série.Imprimer (MFRC522.uid.uidbyte [i] < 0x10 ? " 0" : " ");
En série.Imprimer (MFRC522.uid.uidbyte [i], hex);
contenu.Concat (String (MFRC522.uid.uidbyte [i] < 0x10 ? " 0" : " "));
contenu.Concat (String (MFRC522.uid.uidbyte [i], hex));

En série.println ();
En série.print ("Message:");
contenu.touppercase ();
si (contenu.substring (1) == "02 DC B4 C3") / * uid pour la carte / tag que nous voulons accès à Remplacer par votre carte uid * /

En série.println ("Accès autorisé"); / * Imprimez le message si UID correspond à la base de données * /
En série.println ();
retard (500);
DigitalWrite (LED_G, HIGH); / * LED allume * /
retard (2500);
DigitalWrite (LED_G, Low);

autre
En série.println ("Accès refusé"); / * Si uid ne correspond pas au message d'impression * /

Code commencé par inclure la bibliothèque SPI et MFRC522. Ensuite, nous avons défini la réinitialisation et l'esclave Sélectionner la broche pour le capteur. Une LED à la broche D8 est initialisée en sortie.

La carte RFID que nous voulons lire est initialisée en définissant l'UID. C'est le même UID que nous avons utilisé Décharge Exemple de code:

Un SI La condition vérifiera la carte UID qui est exploitée avec le capteur. Si l'UID correspond à celui à l'intérieur de la LED de code s'allumer et que le message d'accès autorisé sera imprimé, la LED restera éteinte et l'accès refusé apparaîtra si une autre carte est sur.

2: sortie

En sortie, nous pouvons voir que la balise RFID n'est pas tapotée avec le capteur MFRC522, donc aucune LED n'est activée:

Toucher ou apporter la carte / balise RFID près du capteur suivant la sortie apparaîtra sur le moniteur en série affichant la carte UID:

LED est activée si l'accès est accordé et que l'UID correspond à celui que nous avons défini dans le code:

Nous avons terminé l'interfaçage de la balise RFID avec le capteur RC522 en utilisant la carte Arduino Nano et IDE.

Conclusion

Arduino Nano est une carte de conservation de puissance qui a plusieurs broches GPIO pour prendre les commentaires de différents capteurs. Arduino Nano est livré avec un support intégré pour le protocole UART, SPI et I2C qui permet d'utiliser des capteurs à l'aide de ces protocoles de communication Arduino. Cet article couvre l'interfaçage Arduino Nano avec le capteur RC522 et le code requis pour lire toute carte / balise RFID.