Acheter aux États-Unis | Acheter au Royaume-Uni | Acheter en Allemagne | Acheter en Italie | Acheter en France | Acheter en Espagne | ここでご購入を! |
Un lecteur RFID est un dispositif très populaire dans les systèmes de sécurité. Il peut lire l’identifiant d’une carte RFID et l’envoyer à un système informatique.
Dans cette leçon, nous utiliserons le lecteur RFID OSOYOO pour créer un système de vérification de sécurité simple. Ce lecteur RFID utilisera un nouveau protocole de communication appelé SPI pour envoyer des données au Pico. Après avoir terminé cette leçon, vous aurez appris sur trois types de protocoles de communication: SPI, I2C et Série (RS232). La comparaison de vitesse entre ces trois méthodes est la suivante: SPI > I2C > Série.
Comme nous utiliserons de nombreux broches dans ce projet, nous avons inclus la carte des broches du Pico ici pour aider les utilisateurs à localiser les broches appropriées.
Dans le graphique ci-dessus, vous pouvez voir que :
Pico Pins | Épingles RFID |
GP5 | SDA |
GP6 | SCK |
GP7 | MOSI |
GP4 | MISO |
IRQ | |
GND | GND |
GP18 | RST |
3.3V | 3.3V |
Pico Pins | Dispositifs |
GP14 | LED rouge à travers une résistance de 220 ohms |
GP15 | LED verte à travers une résistance de 220 ohms |
GP16 | Buzzer I/O pin |
Vous pouvez télécharger le code Python de la leçon 7 à partir de https://osoyoo.com/driver/pico/lesson7/pico-lesson7.zip.
Plus tard, vous pouvez utiliser Thonny pour ouvrir pico-lesson7.py et le charger sur le Pico.
Voici le code complet avec des commentaires.
import time from machine import I2C, Pin, SPI #import I2C,Pin,SPI library from mfrc522 import MFRC522 #import RFID reader library buzzer= Pin(16, Pin.OUT) #set buzzer to GP16 buzzer.value(1) true = Pin(15, Pin.OUT) #set Green LED to GP15 false = Pin(14, Pin.OUT) #set Red LED to GP14 sck = Pin(6, Pin.OUT) #set RFID sck to GP6 mosi = Pin(7, Pin.OUT) #set RFID mosi to GP7 miso = Pin(4, Pin.OUT) #set RFID miso to GP4 sda = Pin(5, Pin.OUT) #set RFID sda to GP5 rst = Pin(18, Pin.OUT) #set RFID rst to GP18 spi = SPI(0, baudrate=100000, polarity=0, phase=0, sck=sck, mosi=mosi, miso=miso) #initial SPI card1 = "0xe58a6223" #change this value to match your testing RFID card 1 card2 = "0xf765bd60" #change this value to match your testing RFID card 2 while True: rdr = MFRC522(spi, sda, rst) #initialize reader (stat, tag_type) = rdr.request(rdr.REQIDL) #read card ud if stat == rdr.OK: (stat, raw_uid) = rdr.anticoll() if stat == rdr.OK: uid = ("0x%02x%02x%02x%02x" % (raw_uid[0], raw_uid[1], raw_uid[2], raw_uid[3])) print(uid) if uid == card1: #if ID matches card 1, buzzer beep once, turn on Green LED print("card 1 detected!") buzzer.value(0) time.sleep(0.3) buzzer.value(1) true.value(1) time.sleep(1) true.value(0) time.sleep(1) elif uid == card2: print("card 2 detected!") #if ID matches card 2, buzzer beep twice, turn on Green LED buzzer.value(0) time.sleep(0.3) buzzer.value(1) time.sleep(0.3) buzzer.value(0) time.sleep(0.3) buzzer.value(1) true.value(1) time.sleep(1) true.value(0) time.sleep(1) else: #if ID doesn't match any card, long beep, turn on Red LED print("invalid card!") buzzer.value(0) time.sleep(2) buzzer.value(1) false.value(1) time.sleep(0.1) false.value(0) time.sleep(0.1) false.value(1) time.sleep(0.1) false.value(0) time.sleep(0.1) false.value(1) time.sleep(0.1) false.value(0) time.sleep(1)
Étape 1: Connectez la carte Pico à l’un des ports USB de votre PC.
Étape 2: Si vous n’avez pas installé le logiciel Thonny ou si vous ne savez pas comment utiliser l’IDE Thonny, veuillez lire la leçon 1.
Étape 3: Ouvrez maintenant l’IDE Python Thonny et cliquez sur “Exécuter” pour sélectionner MicroPython pour Raspberry Pi Pico comme interpréteur.
Veuillez également sélectionner le port COM auquel votre carte Pico est connectée.
Ensuite, cliquez sur “OK” pour enregistrer les paramètres.
Étape 4: Téléchargez maintenant le code depuis https://osoyoo.com/driver/pico/lesson7/pico-lesson7.zip, enregistrez-le sur votre PC local, puis décompressez le fichier. Vous trouverez deux fichiers : mfrc522.py et pico-lesson7.py. Utilisez Thonny pour ouvrir le fichier de bibliothèque mfrc522.py.
Étape 5: Cliquez ensuite sur “Fichier” -> “Enregistrer sous”.
Étape 6: Sélectionnez ensuite “Raspberry Pi Pico” comme destination.
Étape 7: Écrivez le nom de fichier comme “mfrc522.py”.
Ensuite, cliquez sur “OK” pour enregistrer les paramètres. Ensuite, utilisez Thonny pour ouvrir un autre fichier, pico-lesson7.py, cliquez sur le petit bouton ► pour exécuter le code Python.
Vous devez préparer trois cartes RFID différentes. Touchez chaque carte sur le lecteur, et vous verrez son ID, comme “0xd71d9a52” et “carte invalide”, dans la fenêtre de commande. De plus, la LED rouge s’allumera et le buzzer émettra un long bip. Cela est dû au fait que les ID de carte actuelles ne correspondent à aucun ID des lignes 14 et 15. Veuillez modifier les lignes 14 et 15 avec les ID de votre carte 1 et de votre carte 2, puis cliquez sur le bouton ► pour exécuter à nouveau.
Maintenant, vous verrez que lorsque vous mettez la carte 1 sur le lecteur, elle déclenchera le message “carte 1 détectée”, un court bip et une lumière verte. Lorsque vous mettez la carte 2 sur le lecteur, la fenêtre de commande affichera “carte 2 détectée”, deux bips courts et une lumière verte.
Une fois l’opération terminée, appuyez sur Ctrl+C pour mettre fin à la commande.
DownLoad Url osoyoo.com