Inhoudsopgave:
- Stap 1: Hardwareverbindingen
- Stap 2: Software
- Stap 3: Software (2)
- Stap 4: RFID; uitgelegd
- Stap 5: RFID; Uitgelegd (2)
Video: Hoe de RFID-RC522-module met Arduino te gebruiken - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
In deze Instructable geef ik een overzicht van het fundamentele werkingsprincipe van de RFID-module in combinatie met de tags en chips. Ik zal ook een kort voorbeeld geven van een project dat ik heb gemaakt met behulp van deze RFID-module met een RGB-led. Zoals gewoonlijk met mijn Instructables, zal ik een kort overzicht geven in de eerste paar stappen en een uitgebreide, gedetailleerde uitleg achterlaten in de laatste stap voor geïnteresseerden.
Benodigdheden:
RC522 RFID-module + identificatielabel en kaart -
RGB LED + drie 220 ohm weerstanden
Stap 1: Hardwareverbindingen
In dit project heb ik de Arduino Mega gebruikt, maar je zou elke microcontroller kunnen gebruiken die je wilt, aangezien dit een project met relatief weinig middelen is, het enige dat anders zou zijn, zijn de pinverbindingen voor SCK, SDA, MOSI, MISO en RST omdat ze op elk bord anders zijn. Als je de Mega niet gebruikt, raadpleeg dan de bovenkant van dit script dat we binnenkort zullen gebruiken:
RFID:
SDA (wit) - 53
SCK (oranje) - 52
MOSI (geel) - 51
MISO (groen) - 50
RST (blauw) - 5
3.3v - 3.3v
GND - GND
(Opmerking: hoewel de lezer strikt 3,3V nodig heeft, zijn de pinnen 5V-tolerant, waardoor we deze module kunnen gebruiken met Arduino's en andere 5V DIO-microcontrollers)
RGB-LED:
Rode kathode (paars) - 8
GND - GND
Groene kathode (groen) - 9
Blauwe kathode (blauw) - 10
Stap 2: Software
Nu op naar de software.
Eerst moeten we de MFRC522-bibliotheek installeren om RFID-gegevens te kunnen ophalen, schrijven en verwerken. De github-link is: https://github.com/miguelbalboa/rfid, maar je zou het ook kunnen installeren via de bibliotheekmanager in de Arduino IDE of op PlatformIO. Voordat we ons eigen, aangepaste programma kunnen maken om RFID-gegevens te verwerken en te verwerken, moeten we eerst de daadwerkelijke UID's voor onze kaart en tag hebben. Daarvoor moeten we deze schets uploaden:
(Arduino IDE: voorbeelden > MFRC522 > DumpInfo)
(PlatformIO: PIO Home > bibliotheken > geïnstalleerd > MFRC522 > voorbeelden > DumpInfo)
Wat deze schets doet, is in wezen alle informatie op een kaart extraheren, inclusief de UID in hexadecimale vorm. De UID van mijn kaart is bijvoorbeeld 0x72 0x7D 0xF5 0x1D (zie afbeelding). De rest van de uitgeprinte gegevensstructuur is de informatie die op de kaart aanwezig is en waarnaar we kunnen lezen of schrijven. In het laatste deel ga ik dieper in.
Stap 3: Software (2)
Zoals gebruikelijk bij mijn Instructables, zal ik de software regel voor regel uitleggen, zodat elk deel van de code kan worden uitgelegd in relatie tot zijn functie in de rest van het script, maar wat het in wezen doet, is de kaart identificeren die wordt gebruikt lezen en verleent of weigert toegang. Het onthult ook een geheime boodschap als de juiste kaart twee keer wordt gescand.
github.com/belsh/RFID_MEGA/blob/master/mfr….
Stap 4: RFID; uitgelegd
In de reader bevindt zich een radiofrequentiemodule en een antenne die een elektromagnetisch veld opwekt. De kaart daarentegen bevat een chip die informatie kan opslaan en ons in staat stelt deze te wijzigen door naar een van de vele blokken te schrijven, waarop ik in de volgende sectie meer in detail zal treden, aangezien deze onder de gegevensstructuur van RFID valt.
Het werkingsprincipe van RFID-communicatie is vrij eenvoudig. De antenne van de lezer (in ons geval is de antenne op de RC522 de ingebedde spoelachtige structuur op de voorkant) die radiogolven uitzendt, die op hun beurt een spoel in de kaart/tag van energie zullen voorzien (in de onmiddellijke nabijheid) en die geconverteerde elektriciteit zal worden gebruikt door de transponder (apparaat dat radiofrequentiesignalen ontvangt en uitzendt) in de kaart om de informatie die erin is opgeslagen terug te sturen in de vorm van meer radiogolven. Dit staat bekend als backscatter. In de volgende sectie zal ik de specifieke gegevensstructuur bespreken die door de kaart/tag wordt gebruikt om informatie op te slaan die we kunnen lezen of schrijven.
Stap 5: RFID; Uitgelegd (2)
Als je bovenaan de uitvoer van ons eerder geüploade script kijkt, zul je zien dat het type kaart PICC 1 KB is, wat betekent dat het 1 KB geheugen heeft. Dit geheugen is toegewezen aan een gegevensstructuur die bestaat uit 16 sectoren met 4 blokken, die elk 16 bytes aan gegevens bevatten (16 x 4 x 16 = 1024 = 1 KB). Het laatste blok in elke sector (AKA Sector Trailer) wordt gereserveerd voor het verlenen van lees-//schrijftoegang tot de rest van de sector, wat betekent dat we alleen de eerste 3 blokken hebben om mee te werken in termen van het opslaan en lezen van gegevens.
(Opmerking: het eerste blok van sector 0 staat bekend als het fabrikantblok en bevat essentiële informatie zoals fabrikantgegevens; als u dit blok wijzigt, kan uw kaart volledig worden vergrendeld, dus wees voorzichtig wanneer u probeert er gegevens naar te schrijven)
Gelukkig knutselen.
Aanbevolen:
Hoe de GPIO-pinnen en Avrdude van een Raspberry Pi te gebruiken om DIMP 2 of DA PIMP te Bit-bang-programma te gebruiken 2: 9 stappen
Hoe de GPIO-pinnen van een Raspberry Pi en Avrdude te gebruiken voor Bit-bang-programma DIMP 2 of DA PIMP 2: Dit zijn stapsgewijze instructies voor het gebruik van een Raspberry Pi en het gratis open-source commando avrdude to bit-bang -programmeer een DIMP 2 of DA PIMP 2. Ik neem aan dat je bekend bent met je Raspberry Pi en de LINUX-opdrachtregel. Je hoeft niet
Infraroodsensor gebruiken met Arduino 8 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Infraroodsensor gebruiken met Arduino: wat is een infraroodsensor (ook bekend als IR-sensor? Een IR-sensor is een elektronisch instrument dat IR-signalen scant in specifieke frequentiebereiken die zijn gedefinieerd door normen en deze omzet in elektrische signalen op de uitgangspin (meestal signaalpin genoemd) . Het IR-signaal
Hoe DS1307 te gebruiken met Arduino: 7 stappen
Hoe DS1307 te gebruiken met behulp van Arduino: DS1307 is een Real Time Clock IC (RTC). Dit IC wordt gebruikt om tijdgegevens te verstrekken. De toegewezen tijd begint met seconden, minuten, uren, dagen, datum, maand en jaar. Dit IC vereist extra externe componenten zoals kristal en 3,6 V-batterijen. Kristal
Mac Terminal gebruiken en toetsfuncties gebruiken: 4 stappen
Mac Terminal gebruiken en toetsfuncties gebruiken: We laten u zien hoe u de MAC Terminal opent. We zullen u ook enkele functies binnen de Terminal laten zien, zoals ifconfig, mappen wijzigen, toegang tot bestanden en arp. Met Ifconfig kunt u uw IP-adres en uw MAC-advertentie controleren
Hoe de Instructables IRC-chatroom te gebruiken! 6 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Hoe de Instructables IRC-chatroom te gebruiken!: Vóór de implementatie van de Meebo-chatroom, waar de meesten van jullie in zijn geweest of van hebben gehoord, had Instructables een IRC-chatroom. De meebo-kamer heeft ons goed gediend, maar is beperkt, heeft veel gebreken, en verzandt de meeste gemiddelde computersystemen. IRC-ka