V tomto projekte dochádzkového systému založeného na RFID vám vysvetlíme, ako môžeme automaticky počítať dochádzku pomocou RFID kariet. Technológia RFID (rádiofrekvenčná identifikácia a detekcia) sa bežne používa na školách, vysokých školách, v kanceláriách a na staniciach na rôzne účely na automatické sledovanie osôb. Tu budeme počítať dochádzku oprávnenej osoby pomocou RFID.
Kompletný dochádzkový systém môžeme rozdeliť do rôznych sekcií: sekcia čitateľov, kontrolná sekcia, sekcia vodičov a display. Úloha každej sekcie je uvedená v nasledujúcom blokovom diagrame:
Sekcia čitateľov
Táto časť obsahuje RFID, čo je elektronické zariadenie, ktoré má dve časti - jednu čítačku RFID a druhú štítok alebo kartu RFID. Keď umiestnime štítok RFID do blízkosti čítačky RFID, číta údaje štítku sériovo. Značka RFID má v cievke 12-miestny znakový kód. Táto RFID pracuje s prenosovou rýchlosťou 9600 bps. RFID používa elektromagnet na prenos údajov z čítačky na štítok alebo štítok na čítačku.
Kontrolná sekcia:
Na riadenie kompletného procesu tohto projektu sa používa mikrokontrolér 8051. Tu pomocou 8051 prijímame údaje RFID a odosielame stav alebo správy na LCD.
Sekcia Zobraziť:
V tomto projekte sa na zobrazenie správ používa displej 16 x 2.
Sekcia ovládača:
Táto časť obsahuje budič motora L293D na otváranie brány a bzučiak s tranzistorom NPN BC547 na indikáciu.
Pracovne
Keď osoba vloží svoj RFID štítok do čítačky RFID, potom RFID načíta údaje štítka a odošle ich do mikrokontroléra 8051 a potom mikrokontrolér porovná tieto údaje s definovanými údajmi alebo informáciami. Ak sa údaje zhodujú s definovanými údajmi, mikrokontrolér zvýši dochádzku jednou z osôb značky a ak k spárovaniu nedôjde, mikrokontrolér zobrazí neplatnú kartu na LCD displeji a bzučiak po istý čas nepretržite pípne.
Schéma zapojenia pre projekt dochádzkového systému podporovaného RFID je zobrazená vyššie. V obvode je LCD pripojený v štvorbitovom režime s mikrokontrolérom 8051. Piny RS, RW a EN LCD sú priamo pripojené na PORT 1 pin číslo P1.0, P1.1 a P1.2. Kolíky D4, D5, D6 a D7 LCD sú priamo pripojené na kolíky P1.4, P1.5, P1.6 a P1.7 portu 1. Budič motora je pripojený na kolíky PORT číslo P2.4 a P2.5. a bzučiak je pripojený na P2.6 na PORT2.
Vysvetlenie programu
Aby sme mohli naprogramovať systém predností založený na RFID, musíme najskôr zahrnúť hlavičkové súbory a definovať vstupný a výstupný pin a premenné.
#include
Potom musíme vytvoriť funkciu oneskorenia.
void delay (int itime) {int i, j; pre (i = 0; i
Potom urobíme nejakú funkciu pre LCD a inicializujeme lcd funkciu,
void lcd_init (void) {lcdcmd (0x02); lcdcmd (0x28); lcdcmd (0x0e); lcdcmd (0x01); }
Tu máme niektoré funkcie, ktoré sme použili v našom programe. V tejto konfigurácii sme nakonfigurovali prenosovú rýchlosť 9600 bps na kryštalickej frekvencii 11,0592 MHz. Monitorujeme register SBUF na príjem údajov.
void uart_init () {TMOD = 0x20; SCON = 0x50; TH1 = 0xfd; TR1 = 1; } char rxdata () {while (! RI); ch = SBUF; RI = 0; vrátiť ch; }
Potom sme v hlavnom programe inicializovali lcd a UART a potom načítame výstup RFID, keď je na ňom ľubovoľná značka. Tento reťazec uložíme do poľa a potom spárujeme s preddefinovanými údajmi poľa.
lcdcmd (1); lcdstring ("Vložte svoju kartu:"); lcdcmd (0xc0); i = 0; pre (i = 0; i <12; i ++) rfid = rxdata (); rfid = '\ 0'; lcdcmd (1);
Ak dôjde k zhode, radič zvýši účasť o jednu. Bzučiak iného druhu beží nepretržite a na displeji LCD sa zobrazuje neplatná karta.
if (strncmp (rfid, "160066A5EC39", 12) == 0) {count1 ++; lcdcmd (1); lcdstring ("Účasť"); lcdcmd (0xc0); lcdstring ("Registrovaný"); oneskorenie (200); lcdcmd (1); lcdstring ("Študent1"); lcdcmd (0xc0); lcdstring ("Attnd. No.:"); sprintf (výsledok, "% d", počet1); lcdstring (vysledok);
Rozloženie DPS
Tu je rozloženie PCB pre dochádzkový systém založený na RFID: