V tomto projektu docházkového systému založeného na RFID vám vysvětlíme, jak můžeme automaticky počítat docházku pomocí RFID karet. Technologie RFID (Radio Frequency Identification and Detection) se běžně používá ve školách, vysokých školách, kancelářích a stanicích pro různé účely k automatickému sledování lidí. Zde budeme počítat účast oprávněné osoby pomocí RFID.
Můžeme rozdělit kompletní docházkový systém do různých sekcí: sekce čtenářů, sekce ovládání, sekce řidičů a sekce displeje. Úloha každé sekce je uvedena v následujícím blokovém schématu:
Sekce čtenářů
Tato část obsahuje RFID, což je elektronické zařízení, které má dvě části - jednu čtečku RFID a druhou značku RFID nebo kartu. Když umístíme RFID tag do blízkosti čtečky RFID, načte data tagu sériově. Značka RFID má v cívce 12místný znakový kód. Tato RFID pracuje s přenosovou rychlostí 9600 b / s. RFID používá elektromagnet k přenosu dat ze čtečky na štítek nebo štítek na čtečku.
Kontrolní sekce:
Mikrokontrolér 8051 se používá pro řízení celého procesu tohoto projektu. Zde pomocí 8051 přijímáme data RFID a odesíláme stav nebo zprávy na LCD.
Sekce displeje:
V tomto projektu se pro zobrazení zpráv používá 16x2 LCD.
Sekce řidiče:
Tato část obsahuje budič motoru L293D pro otevírání brány a bzučák s tranzistorem NPN BC547 pro indikace.
Pracovní
Když osoba vloží svůj RFID tag do RFID čtečky, pak RFID načte data tagu a odešle jej do mikrokontroléru 8051 a poté mikrokontrolér porovná tato data s definovanými daty nebo informacemi. Pokud jsou data spárována s definovanými daty, mikrokontrolér zvýší docházku jednou z osob značky a pokud k spárování nedojde, mikrokontrolér zobrazí na LCD neplatnou kartu a bzučák po určitou dobu nepřetržitě pípá.
Schéma zapojení pro projekt docházkového systému RFID s basy je uvedeno výše. V obvodu je LCD připojen ve čtyřbitovém režimu s mikrokontrolérem 8051. Piny RS, RW a EN LCD jsou přímo připojeny na PORT 1 pin číslo P1.0, P1.1 a P1.2. D4, D5, D6 a D7 piny LCD jsou přímo připojeny na piny P1.4, P1.5, P1.6 a P1.7 na portu 1. Ovladač motoru je připojen na PORT piny číslo P2.4 a P2.5. a bzučák je připojen na P2.6 na PORT2.
Vysvětlení programu
Abychom mohli naprogramovat systém předností založený na RFID, musíme nejprve zahrnout hlavičkové soubory a definovat vstupní a výstupní pin a proměnné.
#zahrnout
Poté musíme vytvořit funkci pro zpoždění.
void delay (int itime) {int i, j; pro (i = 0; i
Poté vytvoříme nějakou funkci pro LCD a inicializujeme funkci LCD,
void lcd_init (void) {lcdcmd (0x02); lcdcmd (0x28); lcdcmd (0x0e); lcdcmd (0x01); }
Zde máme nějaké funkce, které jsme použili v našem programu. V tomto jsme nakonfigurovali přenosovou rychlost 9600 bps na krystalovou frekvenci 11,0592 MHz. Monitorujeme registr SBUF pro příjem dat.
void uart_init () {TMOD = 0x20; SCON = 0x50; TH1 = 0xfd; TR1 = 1; } char rxdata () {while (! RI); ch = SBUF; RI = 0; návrat ch; }
Poté jsme v hlavním programu inicializovali lcd a UART a poté jsme přečetli výstup RFID, když na něm byla nějaká značka. Uložíme tento řetězec do pole a poté porovnáme s předdefinovanými daty pole.
lcdcmd (1); lcdstring ("Umístit kartu:"); lcdcmd (0xc0); i = 0; pro (i = 0; i <12; i ++) rfid = rxdata (); rfid = '\ 0'; lcdcmd (1);
Pokud dojde k shodě, pak ovladač zvýší návštěvnost o jednu. Jinak bzučák pípá nepřetržitě a LCD zobrazuje neplatnou kartu.
if (strncmp (rfid, "160066A5EC39", 12) == 0) {count1 ++; lcdcmd (1); lcdstring ("Docházka"); lcdcmd (0xc0); lcdstring („registrovaný“); zpoždění (200); lcdcmd (1); lcdstring ("Student1"); lcdcmd (0xc0); lcdstring ("Attnd. No.:"); sprintf (výsledek, "% d", count1); lcdstring (výsledek);
Rozložení PCB
Zde je rozložení PCB pro docházkový systém založený na RFID: