RFID skaitytuvo grandinė naudojant „Arduino“

Išbandykite Mūsų Instrumentą, Kaip Pašalinti Problemas





Šiame straipsnyje apžvelgsime RDA grandinių technologijas. Mes ištirsime, kaip veikia RFID žymos ir skaitytuvai, kaip susieti RFID modulį (RC522) su „Arduino“ ir išgauti naudingos informacijos iš RFID žymų.

RDA žymenų naudojimas

Esu įsitikinęs, kad kiekvienas iš jūsų naudojote RFID, kad bent kartą gautumėte prieigą prie saugumo biure, mokykloje, kolegijoje, bibliotekoje ir kt.



Žyma / kortelė, kurią nešiojatės, turi elektroninę mikroschemą, lustas elektroniniu būdu išsaugo jūsų tapatybę. Skirtingai nuo brūkšninių kodų, kai kortelė turi būti skaitytojo matomumo linija, RDA gali būti dedama šalia skaitytuvo, kad galėtų perskaityti informaciją.

Daugumoje mūsų išmaniųjų kortelių naudojama pasyvioji RDA technologija, o tai reiškia, kad nereikia skaityti kortelės informacijos. Skaitytojas tuo pačiu metu maitina RFID lustą ir išskiria informaciją.



Tokio tipo žymos gali nuskaityti informaciją nuo milimetrų iki kelių pėdų, priklausomai nuo žymos ir programos.

Aktyvios RDA žymos yra maitinamos išoriškai, šios žymos perduoda informaciją iki 100 pėdų. Akumuliatoriaus energijos suvartojimas optimizuotas taip, kad truks keletą metų.

Šiame projekte mes nagrinėsime pasyvią RDA technologiją. Informacijai išgauti ir atvaizduoti naudojame RC522 skaitytuvo modulį kartu su „arduino“. RC522 modulį paprastai galima įsigyti elektroninės prekybos svetainėse ir vietinėse elektronikos rinkinių parduotuvėse.

RC522 skaitytuvo / rašytojo modulio iliustracija:

RC522 skaitytuvo / rašytojo modulis

Kortelės ir raktų pakabuko tipo žymos:

Kortelių ir raktų pakabukų tipo žymos

Kaip matome, dalis PCB yra apsupta skaitytuvo kvadrato formos kelio, todėl generuos žymos elektromagnetinį lauką 13,56 MHz dažniu.

Sugeneruotas EMF yra išrenkamas pagal žymą ir konvertuojamas į pakankamą įtampą, kad žyma veiktų, žyma impulso forma išsiųs reikiamą informaciją skaitytojui. Borto mikrovaldiklis dekoduoja informaciją.

Kaip tai veikia

RDA grandinė naudojant „Arduino“

Schema yra labai lengva ir savaime suprantama, šiam projektui įgyvendinti pakanka kelių trumpiklių laidų. Mes ketiname maitinti „arduino“ ir RFID per kompiuterio USB prievadą. RC522 darbinė įtampa yra 3,3 V, prie modulio nejunkite 5 V maitinimo šaltinio ir sugadinsite borto komponentus.

„Arduino“ RFID grandinės prototipas:

Tai visi aparatūros ryšiai, dabar pereikime prie kodavimo.

Prieš įkeldami programą, atsisiųskite bibliotekos failą iš šios nuorodos ir pereikite prie „Arduino IDE“ bibliotekos aplanko.

github.com/miguelbalboa/rfid.git

Programos kodas:

//-------------------------Program developed by R.Girish------------------//
#include
#include
#define SS_PIN 10
#define RST_PIN 9
MFRC522 rfid(SS_PIN, RST_PIN)
MFRC522::MIFARE_Key key
void setup()
{
Serial.begin(9600)
SPI.begin()
rfid.PCD_Init()
}
void loop() {
if ( ! rfid.PICC_IsNewCardPresent())
return
if ( ! rfid.PICC_ReadCardSerial())
return
MFRC522::PICC_Type piccType = rfid.PICC_GetType(rfid.uid.sak)
if(piccType != MFRC522::PICC_TYPE_MIFARE_MINI &&
piccType != MFRC522::PICC_TYPE_MIFARE_1K &&
piccType != MFRC522::PICC_TYPE_MIFARE_4K)
{
Serial.println(F('Your tag is not of type MIFARE Classic, your card/tag can't be read :('))
return
}
String StrID = ''
for (byte i = 0 i <4 i ++)
{
StrID +=
(rfid.uid.uidByte[i]<0x10? '0' : '')+
String(rfid.uid.uidByte[i],HEX)+
(i!=3?':' : '' )
}
StrID.toUpperCase()
Serial.print('Your card's UID:')
Serial.println(StrID)
rfid.PICC_HaltA ()
rfid.PCD_StopCrypto1 ()
}
//-------------------------Program developed by R.Girish------------------//

Gerai! Ką veikia pirmiau minėta programa?

Pirmiau nurodyta programa parodys žymos UID serijos IDE monitoriuje, kai nuskaitysite skaitytuvą. UID yra unikalus žymos identifikavimo numeris, jo pakeisti negalima ir jį nustato gamintojas.

IŠĖJIMAS:

Jūsų kortelės UID: FA: 4E: B2 // tai pavyzdys.

1 pastaba: abi šias reikšmes skiria dvitaškis, kurį atlieka programa, tikrosios reikšmės gali būti atskirtos ne dvitaškiu, o tarpu.

2 pastaba: Tik NXP gaminamos RDA žymos yra skaitomos / rašomos su siūloma sąranka, jos dažniausiai ir komerciškai naudojamos.

UID yra naudojamas atpažinti žymą, kurioje kartu su rinkiniu pateikta žyma gali saugoti iki 1 KB informacijos. Yra ir kitų kortelių, kuriose galima išsaugoti iki 4KB ar net daugiau informacijos.

Informacijos saugojimo ir išskyrimo iš žymos procesas yra kito straipsnio tema.
Jei turite klausimų dėl šio projekto, drąsiai klauskite komentarų skiltyje.




Pora: Barometrinio slėgio jutiklio grandinė - išsami darbo ir sąsajos informacija Kitas: Triac fazių valdymas naudojant proporcingą PWM laiką