Indholdsfortegnelse:

Sådan bruges RFID-RC522-modulet med Arduino: 5 trin
Sådan bruges RFID-RC522-modulet med Arduino: 5 trin

Video: Sådan bruges RFID-RC522-modulet med Arduino: 5 trin

Video: Sådan bruges RFID-RC522-modulet med Arduino: 5 trin
Video: Lesson 6: Buzzer, Driver Wheel and mini Water Pump using Arduino SunFounder Kit | Robojax 2024, November
Anonim
Sådan bruges RFID-RC522-modulet med Arduino
Sådan bruges RFID-RC522-modulet med Arduino

I denne Instructable giver jeg en gennemgang af det grundlæggende arbejdsprincip for RFID -modulet kombineret med dets tags og chips. Jeg giver også et kort eksempel på et projekt, jeg lavede ved hjælp af dette RFID -modul med en RGB LED. Som sædvanlig med mine instruktioner, giver jeg et kort overblik inden for de første par trin og efterlader en omfattende, detaljeret forklaring i det sidste trin for dem, der er interesseret.

Tilbehør:

RC522 RFID-modul + identifikationsmærke og kort-https://www.amazon.com/SunFounder-Mifare-Reader-Ar…

RGB LED + tre 220 ohm modstande

Trin 1: Hardwareforbindelser

Hardwareforbindelser
Hardwareforbindelser

I dette projekt brugte jeg Arduino Mega, men du kunne bruge enhver mikrokontroller, du gerne vil have, da dette er et relativt ressourcefrit projekt, det eneste, der ville være anderledes, er pin-forbindelserne til SCK, SDA, MOSI, MISO og RST, da de er forskellige på hvert bord. Hvis du ikke bruger Mega, henvises til toppen af dette script, som vi snart vil bruge:

RFID:

SDA (hvid) - 53

SCK (orange) - 52

MOSI (gul) - 51

MISO (grøn) - 50

RST (blå) - 5

3.3v - 3.3v

GND - GND

(Bemærk: Selvom læseren strengt kræver 3,3V, er stifterne 5V tolerante, hvilket giver os mulighed for at kunne bruge dette modul med Arduinos og andre 5V DIO mikrokontroller)

RGB LED:

Rød katode (lilla) - 8

GND - GND

Grøn katode (grøn) - 9

Blå katode (blå) - 10

Trin 2: Software

Software
Software

Nu til softwaren.

Først skal vi installere MFRC522 -biblioteket for at kunne hente, skrive og behandle RFID -data. Github -linket er: https://github.com/miguelbalboa/rfid, men du kan også installere det via bibliotekschefen i Arduino IDE eller på PlatformIO. Inden vi kan oprette vores eget, tilpassede program til håndtering og behandling af RFID -data, skal vi først få de faktiske UID'er til vores kort og tag. Til det skal vi uploade denne skitse:

(Arduino IDE: eksempler> MFRC522> DumpInfo)

(PlatformIO: PIO Home> biblioteker> installeret> MFRC522> eksempler> DumpInfo)

Hvad denne skitse gør, er i det væsentlige at udtrække alle oplysninger, der findes på et kort, herunder UID i hexadecimal form. For eksempel er UID'et på mit kort 0x72 0x7D 0xF5 0x1D (se billede). Resten af den udskrevne datastruktur er de oplysninger, der findes på kortet, som vi kan læse eller skrive til. Jeg vil gå mere i dybden i det sidste afsnit.

Trin 3: Software (2)

Software (2)
Software (2)

Som sædvanlig med mine instruktioner, vil jeg forklare softwaren i line-by-line kommentarer, så hver del af koden kan forklares i forhold til dens funktion i resten af scriptet, men hvad det i det væsentlige gør, er at identificere kortet, der er læse og enten give eller nægte adgang. Det afslører også en hemmelig besked, hvis det korrekte kort scannes to gange.

github.com/belsh/RFID_MEGA/blob/master/mfr….

Trin 4: RFID; Forklaret

RFID; Forklaret
RFID; Forklaret

I læseren er der et radiofrekvensmodul og en antenne, der genererer et elektromagnetisk felt. Kortet indeholder derimod en chip, der kan gemme oplysninger og give os mulighed for at ændre dem ved at skrive til en af dens mange blokke, som jeg vil gå mere i detaljer i det næste afsnit, da det falder ind under RFID's datastruktur.

Arbejdsprincippet for RFID -kommunikation er ret ligetil. Læserens antenne (i vores tilfælde er antennen på RC522 den indlejrede spolelignende struktur på ansigtet), som sender radiobølger ud, hvilket igen vil aktivere en spole i kortet/mærket (i umiddelbar nærhed) og det konverteret elektricitet vil blive brugt af transponderen (enhed, der modtager og udsender radiofrekvenssignaler) inden for kortet til at sende de lagrede oplysninger tilbage i form af flere radiobølger. Dette er kendt som backscatter. I det næste afsnit vil jeg diskutere den specifikke datastruktur, der bruges af kortet/mærket til at gemme oplysninger, som vi enten kan læse eller skrive til.

Trin 5: RFID; Forklaret (2)

RFID; Forklaret (2)
RFID; Forklaret (2)

Hvis du ser på toppen af outputtet af vores script uploadet tidligere, vil du bemærke, at kortets type er PICC 1 KB, hvilket betyder, at det har 1 KB hukommelse. Denne hukommelse er allokeret til en datastruktur, der består af 16 sektorer, der bærer 4 blokke, som hver bærer 16 byte data (16 x 4 x 16 = 1024 = 1 KB). Den sidste blok i hver sektor (AKA Sector Trailer) vil blive reserveret til at give læse / / skrive adgang til resten af sektoren, hvilket betyder, at vi kun har de første 3 blokke at arbejde med med hensyn til lagring og læsning af data.

(Bemærk: den første blok i sektor 0 er kendt som producentblokken og indeholder vitale oplysninger såsom producentdata; ændring af denne blok kan helt låse dit kort, så vær forsigtig, når du forsøger at skrive data til den)

Glad pjat.

Anbefalede: