- Reikalingos medžiagos
- EM-18 RFID skaitytuvas
- MSP430 RFID skaitytuvo grandinės schema ir darbas
- Kodas ir paaiškinimas
Šioje pamokoje mes suprojektuojame sistemą, skirtą skaityti RFID korteles naudojant MSP430 ir RFID Reader. RFID reiškia radijo dažnio identifikavimą. Kiekviena kortelė turi unikalų asmens tapatybės dokumentą, todėl tai yra puikus pasirinkimas daugeliui autentifikavimo programų, pavyzdžiui, biuruose, prekybos centruose ir daugelyje kitų vietų, kur įeiti leidžiama tik asmeniui, turinčiam leidimo kortelę. RDA yra naudojama prekybos centruose, kad būtų išvengta vagystės, kur gaminys bus pažymėtas RFID lustu, o jei kas nors išeis iš pastato su RFID lustu, automatiškai įsijungs pavojaus signalas ir vagystė bus sustabdyta. RFID žyma sukurta tokia maža kaip smėlio grūdeliai. RFID autentifikavimo sistemas lengva projektuoti ir jos yra pigios. Kai kurios mokyklos ir kolegijos šiuo metu naudoja RDA kaip lankomumo registrą.
Reikalingos medžiagos
1. „MSP430 Launchpad“
2. EM-18 (RFID skaitytuvo modulis)
3. 16 * 2 skystųjų kristalų ekranas
4. Potenciometras
5. Duonos lenta
6. Jumperio laidai
Programinė įranga: „ Energia IDE“
EM-18 RFID skaitytuvas
Kiekvienoje RFID kortelėje yra įdėtas unikalus ID, o RFID skaitytuvas naudojamas RFID kortelei Nr. EM-18 RFID skaitytuvas veikia 125 KHz dažniu, jame yra ant lusto esanti antena ir jis gali būti maitinamas naudojant 5 V maitinimo šaltinį. Ji teikia serijinę išvestį kartu su weigand išvestimi. Diapazonas yra apie 8-12 cm. nuoseklaus ryšio parametrai yra 9600 bps, 8 duomenų bitai, 1 stop bitas. Šis belaidis radijo dažnio identifikavimas naudojamas daugelyje sistemų, pvz
RFID pagrįstą lankomumo sistemą,
Apsaugos sistemos,
Balsavimo mašinos, E-rinkliavos kelių kainodara
Čia patikrinkite visus RDA projektus.
EM-18 RFID skaitytuvo išvestis yra 12 skaitmenų ASCII formato. Iš 12 skaitmenų pirmieji 10 skaitmenų yra kortelės numeris, o paskutiniai du skaitmenys yra kortelės numerio XOR rezultatas. Paskutiniai du skaitmenys naudojami tikrinant klaidas.
Pavyzdžiui, kortelės numeris yra 0200107D0D62, nuskaitytas iš skaitytuvo, tada kortelėje esantis kortelės numeris bus toks, koks yra žemiau.
02 - preambulė
00107D0D = 1080589 po kablelio
62 yra XOR reikšmė (02 XOR 00 XOR 10 XOR 7D XOR 0D).
Taigi kortelės numeris yra 0001080589.
MSP430 RFID skaitytuvo grandinės schema ir darbas
Mes naudosime „Hardware UART“ iš MSP430, todėl įsitikinkite, kad lentoje esantys „RXD“ ir „TXD“ džemperiai yra „HW UART“ režime. Tada prijunkite EM-18 Tx prie MSP430 RXD (P1.1).
Prieš eidami toliau turime suprasti apie nuoseklųjį ryšį. RFID modulis čia nuosekliai siunčia duomenis valdikliui. Jis turi kitą ryšio būdą, tačiau, kad būtų lengviau bendrauti, mes renkamės RS232. Modulio RS232 kaištis yra prijungtas prie MSP430 RXD kaiščio.
RDA modulio siunčiami duomenys yra tokie:
Dabar, norėdami užmegzti ryšį tarp RDA skaitytuvo ir MSP430, turime įjungti nuoseklųjį ryšį MSP430. Serijinį ryšį, įgalinantį MSP430, galima atlikti naudojant vieną komandą.
Serijos pradžia (9600); duomenys = Serial.read ();
Kaip parodyta aukščiau esančiame paveikslėlyje, RDA ryšys vykdomas 9600 bitų per sekundę BAUD greičiu. Taigi, norėdami nustatyti tokį duomenų perdavimo greitį ir pradėti nuoseklųjį ryšį, MSP430 naudojame komandą "Serial.begin (9600);". Čia 9600 yra duomenų perdavimo sparta ir yra keičiama.
Nustačius duomenų perdavimo spartą, MSP yra pasirengęs priimti nuoseklius duomenis. Šiuos duomenis surenka komanda „data = Serial.read ();“. Pagal šią komandą nuoseklūs duomenys paimami iš „ duomenų “, pavadinto sveikuoju skaičiumi.
Kai kortelė bus priartinta prie skaitytuvo, skaitytuvas perskaitys serijos duomenis ir išsiųs juos į MSP, MSP bus užprogramuotas rodyti tą vertę LCD ekrane, taigi mes turėsime kortelės ID LCD ekrane.
Kodas ir paaiškinimas
Parašysime savo kodą „Energia IDE“. Tai tas pats, kas „Arduino IDE“, ir paprasta naudoti. Pilnas kodas pateikiamas šio projekto pabaigoje, čia mes paaiškiname keletą jo dalių.
Pirmiausia įtraukite biblioteką, skirtą skystųjų kristalų ekranui, ir deklaruokite simbolių masyvą, kad galėtumėte saugoti RDA numerį.
# įtraukti
Naudodamiesi sąrankos funkcija, įjunkite LCD ir nuoseklųjį ryšį, apibrėždami 9600 perdavimo spartą.
negaliojanti sąranka () { lcd.begin (16, 2); Serijos pradžia (9600); ... ..
Pagal ciklo funkciją patikrinsime, ar nuoseklūs duomenys yra, ar ne. Jei įmanoma, saugokite duomenis įvesties masyve iš Serial.read () ir rodykite juos LCD ekrane po vieną naudodami while loop.
while (Serial.available () && count <12) // Perskaitykite 12 simbolių ir išsaugokite juos įvesties masyve { input = Serial.read (); // saugoma 12 simbolių po vieną Serial.print (input); lcd.print (įvestis); vėlavimas (300); skaičius ++; if (skaičius == 12) { lcd .print (""); skaičius = 0; // kai 12 simbolių skaityti GET pradėti ir laukti antrojo ID ... ...
Taip mes galime skaityti ir rodyti RFID numerį LCD, naudodami „MSP430 Launchpad“. Dabar galite dar pratęsti šį projektą ir sukurti dalyvavimo sistemą, balsavimo sistemą, apsaugos sistemą ir kt.