RFID Reader Circuit gamit ang Arduino

Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema





Sa artikulong ito kami ay maglalakbay sa RFID circuit technology. Susisiyasatin namin kung paano gumagana ang mga tag ng RFID at mambabasa, kung paano i-interface ang RFID module (RC522) kasama ang Arduino at i-extract ang ilang kapaki-pakinabang na impormasyon mula sa mga RFID tag.

Paggamit ng Mga RFID Tag

Sigurado ako na ang bawat isa sa inyo ay gumamit ng RFID upang makakuha ng access sa seguridad kahit isang beses sa opisina, paaralan, kolehiyo, silid aklatan atbp.



Ang tag / card na bitbit mo sa paligid ay may elektronikong maliit na tilad na nakapaloob dito, iniimbak ng maliit na tilad ang iyong pagkakakilanlan nang elektronik. Hindi tulad ng mga barcode, kung saan ang card ay dapat na linya ng paningin ng mambabasa, ang mga RFID ay maaaring mailagay malapit lamang sa mambabasa upang mabasa ang impormasyon.

Karamihan sa aming mga smart card ay gumagamit ng passive RFID na teknolohiya, na nangangahulugang walang lakas na kinakailangan upang mabasa ang impormasyon mula sa card. Ang mambabasa ay nagpapagana ng RFID chip at kumukuha ng impormasyon sa parehong oras.



Ang mga uri ng mga tag na ito ay maaaring basahin ang impormasyon mula sa millimeter hanggang sa ilang mga paa, depende sa tag at application.

Ang isang aktibong mga tag ng RFID ay pinalakas ng panlabas, ang mga ganitong uri ng mga tag ay nagpapadala ng impormasyon hanggang sa 100 talampakan. Ang pagkonsumo ng kuryente ng baterya ay na-optimize sa huling ilang taon.

Sa proyektong ito titingnan namin ang teknolohiyang passive RFID. Gumagamit kami ng module ng mambabasa ng RC522 kasama ang arduino para sa pagkuha at pagpapakita ng impormasyon. Ang module na RC522 ay karaniwang magagamit sa mga website ng e-commerce at tindahan ng mga lokal na electronics kit.

Paglalarawan ng module ng mambabasa / manunulat ng RC522:

Module ng mambabasa / manunulat ng RC522

Mga tag ng uri ng card at keychain:

Mga tag ng uri ng card at keychain

Tulad ng nakikita natin iyan, ang isang bahagi ng PCB ay napapaligiran ng pagsasagawa ng daanan sa parisukat na hugis sa mambabasa na makakabuo ng electromagnetic field para sa tag sa dalas ng 13.56MHz.

Ang nabuong EMF ay pinili ng tag at nagko-convert sa sapat na boltahe para gumana ang tag, magpapadala ang tag ng kinakailangang impormasyon sa form na pulso pabalik sa mambabasa. Ang on-board microcontroller ay nag-decode ng impormasyon.

Paano ito gumagana

RFID Circuit gamit ang Arduino

Ang eskematiko ay napakadali at nagpapaliwanag sa sarili, ilang mga wire ng lumulukso ay sapat upang magawa ang proyektong ito. Papalakasin namin ang arduino at RFID sa pamamagitan ng USB port ng computer. Ang operating boltahe ng RC522 ay 3.3V, huwag ikonekta ang 5V supply sa module at makakasira sa mga sangkap ng on-board.

Prototype ng Arduino RFID circuit:

Iyon lang ang mga koneksyon sa hardware, ngayon tumalon tayo sa pag-coding.

Bago i-upload ang programa, i-download ang file ng library mula sa sumusunod na link at lumipat sa folder ng library ng arduino IDE.

github.com/miguelbalboa/rfid.git

Code ng Programa:

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

Ok! Ano ang idinisenyo upang gumana ang program sa itaas?

Ipapakita ng program sa itaas ang UID ng tag sa serial monitor ng IDE, kapag nag-scan ka sa mambabasa. Ang UID ay natatanging numero ng pagkakakilanlan ng tag, hindi ito mababago at itinakda ito ng gumawa.

OUTPUT:

UID ng iyong card: FA: 4E: B2 // ito ay isang halimbawa.

Tandaan 1: Ang bawat dalawang halaga ay pinaghihiwalay ng colon, na ginagawa ng programa ang mga totoong halaga ay hindi maaaring paghiwalayin ng colon ngunit, sa halip ng espasyo.

Tandaan 2: Ang mga tagagawa na RFID na tagagawa ng NXP lamang ang nababasa / nasusulat sa ipinanukalang pag-setup, ang mga ito ay karaniwang at komersyal na ginamit.

Ginagamit ang UID upang makilala ang tag na tag na kasama ng kit ay maaaring mag-imbak ng hanggang sa 1KB ng impormasyon. Mayroong iba pang mga kard na maaaring mag-imbak ng hanggang sa 4KB ng impormasyon o higit pa.

Ang proseso ng pag-iimbak at pagkuha ng impormasyon mula sa tag ay paksa ng isa pang artikulo.
Kung mayroon kang tanong, patungkol sa proyektong ito, huwag mag-atubiling magtanong sa seksyon ng komento.




Nakaraan: Barometric Pressure Sensor Circuit - Mga Detalye ng Paggawa at Pag-interfacing Susunod: Pagkontrol sa Triac Phase gamit ang PWM Time Proportional