RFID-lugeja vooluring Arduino abil

Proovige Meie Instrumenti Probleemide Kõrvaldamiseks





Selles artiklis tutvume RFID-ahelate tehnoloogiaga. Uurime, kuidas RFID-sildid ja lugejad töötavad, kuidas RFID-moodulit (RC522) Arduinoga liidestada ja RFID-siltidest kasulikku teavet välja võtta.

RFID-siltide kasutamine

Olen kindel, et igaüks teist on kasutanud raadiosagedustuvastust, et saada vähemalt kord turvalisusele juurdepääs kontoris, koolis, kolledžis, raamatukogus jne.



Sildil / kaardil, mida te kaasas kannate, on sisseehitatud elektrooniline kiip, kiip salvestab teie identiteedi elektrooniliselt. Erinevalt vöötkoodidest, kus kaart peaks olema lugeja vaateväljas, saab RFID-sid teabe lugemiseks asetada lugeja lähedale.

Enamik meie kiipkaartidest kasutab passiivset RFID-tehnoloogiat, mis tähendab, et kaardilt saadud teabe lugemiseks pole vaja energiat. Lugeja annab RFID-kiibile toite ja võtab samal ajal teavet välja.



Seda tüüpi sildid võivad teavet lugeda millimeetritest mõne jalani, olenevalt sildist ja rakendusest.

Aktiivsete RFID-märgendite toiteallikaks on välised seadmed. Sellised sildid edastavad teavet kuni 100 jalga. Aku energiatarve on optimeeritud nii, et see kestaks paar aastat.

Selles projektis vaatleme passiivset RFID-tehnoloogiat. Teabe väljavõtmiseks ja kuvamiseks kasutame RC522 lugejamoodulit koos arduinoga. RC522 moodul on tavaliselt saadaval e-kaubanduse veebisaitidel ja kohalikes elektroonikakomplektide poodides.

RC522 lugeja / kirjutaja mooduli illustratsioon:

RC522 lugeja / kirjutaja moodul

Kaardi ja võtmehoidja tüübi sildid:

Kaardi ja võtmehoidja tüüpi sildid

Nagu näeme, ümbritseb osa PCB-d lugeril ruudukujulise juhtimisega, see tekitab sildi jaoks elektromagnetvälja sagedusel 13,56 MHz.

Loodud EMF valitakse sildi järgi ja muundatakse märgendi toimimiseks piisavaks pingeks, silt saadab impulsi kujul vajaliku teabe lugejale tagasi. Pardal olev mikrokontroller dekodeerib teabe.

Kuidas see töötab

Arduino abil RFID-ahel

Skeem on väga lihtne ja iseenesestmõistetav, selle projekti elluviimiseks piisab vähestest hüppajajuhtmetest. Arduino ja RFID toide toimub arvuti USB-pordi kaudu. RC522 tööpinge on 3,3 V, ärge ühendage mooduliga 5 V toiteallikat ja see kahjustab rongisiseseid komponente.

Arduino RFID-ahela prototüüp:

See on kõik riistvaraühendused, jätkame nüüd kodeerimisega.

Enne programmi üleslaadimist laadige raamatukogu fail alla järgmiselt lingilt ja liikuge arduino IDE teegi kausta.

github.com/miguelbalboa/rfid.git

Programmi kood:

//-------------------------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------------------//

Okei! Mida on ülaltoodud programm mõeldud toimima?

Lugejale skannides kuvab ülaltoodud programm märgendi UID-d IDE seeriamonitoris. UID on märgendi kordumatu identifitseerimisnumber, seda ei saa muuta ja selle määrab tootja.

VÄLJUND:

Teie kaardi UID: FA: 4E: B2 // see on näide.

Märkus 1: Mõlemad väärtused on eraldatud kooloniga, mille teeb programm, reaalseid väärtusi ei tohi eraldada koolon, vaid pigem tühik.

Märkus 2: Pakutava seadistusega on loetavad / kirjutatavad ainult NXP-s toodetud RFID-sildid, neid kasutatakse tavaliselt ja kaubanduslikult.

UID-d kasutatakse sildi tuvastamiseks, mille komplektiga kaasas olev silt võib salvestada kuni 1KB teavet. On ka teisi kaarte, kuhu saab salvestada kuni 4KB teavet või isegi rohkem.

Teabe salvestamise ja sildist väljavõtmise protsess on teise artikli teema.
Kui teil on selle projektiga seoses küsimusi, küsige julgelt kommentaaride jaotises.




Eelmine: Baromeetrilise rõhu anduri ahel - töö- ja liidestamisandmed Järgmine: Triaci faasikontroll PWM-aja proportsionaalse abil