Sisällysluettelo:

RFID-RC522-moduulin käyttäminen Arduinon kanssa: 5 vaihetta
RFID-RC522-moduulin käyttäminen Arduinon kanssa: 5 vaihetta

Video: RFID-RC522-moduulin käyttäminen Arduinon kanssa: 5 vaihetta

Video: RFID-RC522-moduulin käyttäminen Arduinon kanssa: 5 vaihetta
Video: LCD1602 I2C Address for Arduino explained 2024, Marraskuu
Anonim
RFID-RC522-moduulin käyttäminen Arduinon kanssa
RFID-RC522-moduulin käyttäminen Arduinon kanssa

Tässä Instructable -ohjelmassa esitän RFID -moduulin perusperiaatteen yhdessä sen tunnisteiden ja sirujen kanssa. Annan myös lyhyen esimerkin projektista, jonka tein käyttämällä tätä RFID -moduulia, jossa on RGB -LED. Kuten tavallisesti Instructables -ohjelmassani, annan lyhyen katsauksen ensimmäisten vaiheiden aikana ja jätän kattavan ja yksityiskohtaisen selityksen viimeiseen vaiheeseen kiinnostuneille.

Tarvikkeet:

RC522 RFID-moduuli + tunnistetunniste ja kortti-https://www.amazon.com/SunFounder-Mifare-Reader-Ar…

RGB LED + kolme 220 ohmin vastusta

Vaihe 1: Laitteistoyhteydet

Laitteiston liitännät
Laitteiston liitännät

Tässä projektissa käytin Arduino Megaa, mutta voit käyttää mitä tahansa haluttua mikro-ohjainta, koska tämä on suhteellisen vähäresurssinen projekti, ainoa asia, joka olisi erilainen, ovat SCK-, SDA-, MOSI-, MISO- ja RST, koska ne ovat erilaisia kaikilla aluksilla. Jos et käytä Megaa, katso tämän skriptin alkuun, jota aiomme käyttää pian:

RFID:

SDA (valkoinen) - 53

SCK (oranssi) - 52

MOSI (keltainen) - 51

MISO (vihreä) - 50

RST (sininen) - 5

3.3v - 3.3v

GND - GND

(Huomaa: Vaikka lukija vaatii ehdottomasti 3,3 V: n, nastat kestävät 5 V: n, minkä ansiosta voimme käyttää tätä moduulia Arduinojen ja muiden 5 V DIO -mikro -ohjaimien kanssa)

RGB -LED:

Punainen katodi (violetti) - 8

GND - GND

Vihreä katodi (vihreä) - 9

Sininen katodi (sininen) - 10

Vaihe 2: Ohjelmisto

Ohjelmisto
Ohjelmisto

Nyt ohjelmistoon.

Ensinnäkin meidän on asennettava MFRC522 -kirjasto voidaksemme vastaanottaa, kirjoittaa ja käsitellä RFID -tietoja. Github -linkki on: https://github.com/miguelbalboa/rfid, mutta voit asentaa sen myös kirjastonhallinnan kautta Arduino IDE: ssä tai PlatformIO: ssa. Ennen kuin voimme luoda oman, mukautetun ohjelman RFID -tietojen käsittelemiseksi ja käsittelemiseksi, meidän on ensin hankittava todelliset UID -tunnukset kortillemme ja tunnisteellemme. Tätä varten meidän on ladattava tämä luonnos:

(Arduino IDE: esimerkit> MFRC522> DumpInfo)

(PlatformIO: PIO Home> kirjastot> asennettu> MFRC522> esimerkit> DumpInfo)

Tämä luonnos poimii olennaisesti kaikki kortissa olevat tiedot, mukaan lukien UID heksadesimaalimuodossa. Esimerkiksi korttini UID on 0x72 0x7D 0xF5 0x1D (katso kuva). Loput tulostetusta tietorakenteesta ovat kortissa olevia tietoja, joita voimme lukea tai kirjoittaa. Menen tarkemmin viimeiseen osaan.

Vaihe 3: Ohjelmisto (2)

Ohjelmistot (2)
Ohjelmistot (2)

Kuten Instructables-ohjelmassani tavallista, selitän ohjelmiston rivikohtaisissa kommenteissa, jotta jokainen koodin osa voidaan selittää suhteessa sen toimintoon muussa komentosarjassa, mutta se olennaisesti tunnistaa kortin lukea ja joko myöntää tai kieltää pääsyn. Se paljastaa myös salaisen viestin, jos oikea kortti skannataan kahdesti.

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

Vaihe 4: RFID; Selitetty

RFID; Selitetty
RFID; Selitetty

Lukijassa on radiotaajuusmoduuli ja antenni, joka muodostaa sähkömagneettisen kentän. Kortti puolestaan sisältää sirun, joka voi tallentaa tietoja ja joiden avulla voimme muuttaa niitä kirjoittamalla johonkin sen monista lohkoista, joita käsittelen tarkemmin seuraavassa osassa, koska se kuuluu RFID: n tietorakenteeseen.

RFID -viestinnän toimintaperiaate on melko yksinkertainen. Lukijan antenni (meidän tapauksessamme RC522: n antenni on upotettu kelan kaltainen rakenne edessä), joka lähettää radioaaltoja, jotka puolestaan aktivoivat kelan kortissa/tunnisteessa (läheisyydessä) ja muunnettua sähköä käyttää kortin transponderi (laite, joka vastaanottaa ja lähettää radiotaajuisia signaaleja) lähettääkseen siihen tallennetut tiedot takaisin useampien radioaaltojen muodossa. Tämä tunnetaan nimellä backscatter. Seuraavassa osassa keskustelen erityisestä tietorakenteesta, jota kortti/tagi käyttää tietojen tallentamiseen, joihin voimme joko lukea tai kirjoittaa.

Vaihe 5: RFID; Selitetty (2)

RFID; Selitetty (2)
RFID; Selitetty (2)

Jos tarkastelet aiemmin ladatun skriptimme tuloksen yläosaa, huomaat, että kortin tyyppi on PICC 1 kt, eli sillä on 1 kt muistia. Tämä muisti on jaettu tietorakenteeseen, joka koostuu 16 sektorista, joissa on 4 lohkoa, joista jokaisessa on 16 tavua dataa (16 x 4 x 16 = 1024 = 1 kt). Kunkin sektorin viimeinen lohko (AKA Sector Trailer) on varattu luku- / kirjoitusoikeuden myöntämiseksi muulle sektorille, mikä tarkoittaa, että meillä on vain kolme ensimmäistä lohkoa, joiden kanssa voimme käsitellä tietojen tallentamista ja lukemista.

(Huomaa: sektorin 0 ensimmäinen lohko tunnetaan valmistajalohkona ja sisältää tärkeitä tietoja, kuten valmistajan tietoja; tämän lohkon muuttaminen voi lukita korttisi kokonaan, joten ole varovainen, kun yrität kirjoittaa sille tietoja)

Hyvää höpöttelyä.

Suositeltava: