Sisukord:

RFID-RC522 mooduli kasutamine Arduinoga: 5 sammu
RFID-RC522 mooduli kasutamine Arduinoga: 5 sammu

Video: RFID-RC522 mooduli kasutamine Arduinoga: 5 sammu

Video: RFID-RC522 mooduli kasutamine Arduinoga: 5 sammu
Video: Электронный замок с RFID на Arduino 2024, November
Anonim
Kuidas kasutada RFID-RC522 moodulit koos Arduinoga
Kuidas kasutada RFID-RC522 moodulit koos Arduinoga

Selles juhendis tutvustan RFID -mooduli põhitööpõhimõtet koos selle siltide ja kiipidega. Toon ka lühikese näite projektist, mille tegin, kasutades seda RFID -moodulit koos RGB LED -iga. Nagu minu Instructables'i puhul tavaliselt, annan esimese paari sammu jooksul lühikese ülevaate ja jätan huvilistele viimases etapis põhjaliku ja üksikasjaliku selgituse.

Tarvikud:

RC522 RFID-moodul + identifitseerimismärgis ja kaart-https://www.amazon.com/SunFounder-Mifare-Reader-Ar…

RGB LED + kolm 220 oomi takistit

Samm: riistvaraühendused

Riistvaraühendused
Riistvaraühendused

Selles projektis kasutasin Arduino Megat, kuid võite kasutada mis tahes soovitud mikrokontrollerit, kuna see on suhteliselt vähese ressursiga projekt, ainus asi, mis oleks erinev, on SCK, SDA, MOSI, MISO ja RST, kuna need on igal laual erinevad. Kui te Megat ei kasuta, vaadake selle skripti ülaosa, mida me lähiajal kasutama hakkame:

RFID:

SDA (valge) - 53

SCK (oranž) - 52

MOSI (kollane) - 51

MISO (roheline) - 50

RST (sinine) - 5

3.3v - 3.3v

GND - GND

(Märkus: kuigi lugeja nõuab rangelt 3,3 V pingeid, on tihvtid 5 V tolerantsed, mis võimaldab meil seda moodulit kasutada koos Arduinode ja muude 5 V DIO mikrokontrolleritega)

RGB LED:

Punane katood (lilla) - 8

GND - GND

Roheline katood (roheline) - 9

Sinine katood (sinine) - 10

Samm 2: Tarkvara

Tarkvara
Tarkvara

Nüüd tarkvara juurde.

Esiteks peame RFID -andmete hankimiseks, kirjutamiseks ja töötlemiseks installima kogu MFRC522. Githubi link on: https://github.com/miguelbalboa/rfid, kuid saate selle installida ka raamatukoguhalduri kaudu Arduino IDE -s või PlatformIO -s. Enne kui saame luua oma kohandatud programmi RFID -andmetega tegelemiseks ja töötlemiseks, peame kõigepealt hankima oma kaardi ja sildi tegelikud UID -d. Selleks peame selle visandi üles laadima:

(Arduino IDE: näited> MFRC522> DumpInfo)

(PlatformIO: PIO avaleht> teegid> installitud> MFRC522> näited> DumpInfo)

Selle eskiisi eesmärk on sisuliselt kogu kaardil oleva teabe, sealhulgas kuueteistkümnendsüsteemis oleva UID, väljavõtmine. Näiteks minu kaardi UID on 0x72 0x7D 0xF5 0x1D (vt pilti). Ülejäänud prinditud andmestruktuur on kaardil olev teave, mida saame lugeda või millele kirjutada. Ma lähen viimases osas põhjalikumalt.

3. samm: tarkvara (2)

Tarkvara (2)
Tarkvara (2)

Nagu minu Instructables'i puhul tavaliselt, selgitan tarkvara rida-realt kommentaarides, nii et iga koodi osa saab selgitada selle funktsiooni osas ülejäänud skriptis, kuid see sisuliselt teeb kindlaks kaardi, loeb ja kas lubab või keelab juurdepääsu. Samuti paljastab see salajase sõnumi, kui õiget kaarti kaks korda skaneeritakse.

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

4. samm: RFID; Selgitatud

RFID; Selgitatud
RFID; Selgitatud

Lugejas on raadiosagedusmoodul ja antenn, mis tekitab elektromagnetvälja. Teisest küljest sisaldab kaart kiipi, mis suudab teavet salvestada ja võimaldab meil seda muuta, kirjutades ühte selle paljudest plokkidest, mida ma käsitlen järgmises osas üksikasjalikumalt, kuna see kuulub RFID andmestruktuuri alla.

RFID -side põhimõte on üsna lihtne. Lugejaantenn (meie puhul on RC522 antenn näole sisseehitatud mähisega sarnane struktuur), mis saadab välja raadiolaineid, mis omakorda käivitavad mähise kaardil/sildil (vahetus läheduses) ja see muundatud elektrit kasutab kaardis olev transponder (seade, mis võtab vastu ja väljastab raadiosageduslikke signaale), et saata sellesse salvestatud teave tagasi rohkemate raadiolainete kujul. Seda nimetatakse tagasilöögiks. Järgmises osas käsitlen konkreetset andmestruktuuri, mida kaart/silt kasutab teabe salvestamiseks, mida saame lugeda või kirjutada.

5. samm: RFID; Seletatud (2)

RFID; Seletatud (2)
RFID; Seletatud (2)

Kui vaatate meie varem üles laaditud skripti väljundi ülaosa, märkate, et kaardi tüüp on PICC 1 KB, mis tähendab, et sellel on 1 KB mälu. See mälu jaotatakse andmestruktuuri, mis koosneb 16 sektorist, mis kannavad 4 plokki, millest igaüks sisaldab 16 baiti andmeid (16 x 4 x 16 = 1024 = 1 KB). Iga sektori viimane plokk (AKA Sector Trailer) reserveeritakse ülejäänud sektori lugemis- / kirjutamisõiguse andmiseks, mis tähendab, et andmete salvestamiseks ja lugemiseks on meil alles kolm esimest plokki.

(Märkus: sektori 0 esimest plokki nimetatakse tootjaplokiks ja see sisaldab olulist teavet, näiteks tootja andmeid; selle ploki muutmine võib teie kaardi täielikult lukustada, nii et ole ettevaatlik, kui proovid sellele andmeid kirjutada)

Head nokitsemist.

Soovitan: