V tomto projekte budeme vyvíjať bezpečnostný systém založený na RFID a klávesnici. Tento projekt sa realizuje pomocou mikrokontroléra 8051. 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ú autentifikáciu ľudí pomocou platných štítkov RFID. Tu skontrolujeme RFID štítok spolu s heslom priradeným k štítku, aby sme zabezpečili systém.
Pracovne
Celý bezpečnostný systém môžeme rozdeliť na rôzne sekcie - sekcia Čítačka, Klávesnica, Ovládanie, Sekcia ovládačov a Displej. Fungovanie celého systému a úlohu každej časti je možné pochopiť z nižšie uvedeného blokového diagramu.
Sekcia čítačky: 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ď dáme RFID štítok blízko čítačky RFID, bude načítať dáta štítku sériovo. Značka RFID, ktorú sme tu použili, má 12-miestny znakový kód alebo sériové číslo. Táto RFID pracuje s prenosovou rýchlosťou 9600 bps.
Klávesnica: Tu sme na zadanie hesla do systému použili maticovú klávesnicu 4x4.
Kontrolná sekcia: Mikrokontrolér 8051 sa používa na riadenie celého procesu tohto bezpečnostného systému založeného na RFID. Tu pomocou 8051 prijímame údaje RFID a odosielame stav alebo správy na LCD.
Sekcia displeja: V tomto projekte sa používa displej 6x2 na zobrazovanie správ. Tu môžete vidieť návod: Prepojenie LCD s mikrokontrolérom 8051
Sekcia budiča : Táto sekcia má budič motora L293D na otváranie brány a bzučiak s tranzistorom NPN BC547 na indikáciu.
Keď osoba vloží svoj RFID štítok do čítačky RFID, potom RFID načíta údaje štítka a odošle ho do mikrokontroléra 8051 a potom mikrokontrolér porovná tieto údaje s vopred definovanými údajmi. Pokiaľ sú dáta spárované s preddefinovanými údajmi, mikrokontrolér si vyžiada heslo a po zadaní hesla mikrokontrolér porovná heslo s preddefinovaným heslom. Ak sa otvorí brána na zisťovanie hesla, na LCD displeji sa zobrazí hlásenie Prístup odmietnutý a bzučiak začne niekedy pípať.
Schéma zapojenia a vysvetlenie
Ako je uvedené vyššie v schéme zapojenia bezpečnostného systému RFID, 16x2 LCD je pripojený v štvorbitovom režime k mikrokontroléru. 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. A klávesnica je pripojená na PORT0. Riadok klávesnice je spojený na P0,4 - P0,7 a stĺpce sú spojené na P0,0 - P0,3.
Vysvetlenie programu
Pri programovaní mikrokontroléra 8051 pre bezpečnostný systém založený na RFID najskôr zahrnieme hlavičkové súbory a definujeme vstupný a výstupný pin a premenné.
#include
Potom definujte piny pre modul klávesnice.
sbit col1 = P0 ^ 0; sbit col2 = P0 ^ 1; sbit col3 = P0 ^ 2; sbit col4 = P0 ^ 3; sbit riadok1 = P0 ^ 4; sbit riadok2 = P0 ^ 5; sbit riadok3 = P0 ^ 6; sbit riadok4 = P0 ^ 7;
Potom sme vytvorili funkciu oneskorenia.
void delay (int itime) {int i, j; pre (i = 0; i
Potom urobíme nejakú funkciu pre LCD a inicializujeme funkciu lcd, 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 tomto sme nakonfigurovali prenosovú rýchlosť 9600 bps na 11,0592 MHz kryštalickej frekvencie a fuction pre príjem monitorujeme register SBUF pre príjem dát.
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 uvedená nejaká značka. Tento reťazec uložíme do poľa a potom spárujeme s preddefinovanými údajmi poľa. A potom spárujte heslo.
if (strncmp (rfid, "160066A5EC39", 12) == 0) {keypad (); if (strncmp (pass, "4201", 4) == 0) {accept (); lcdcmd (1); lcdstring („Prístup bol udelený“); lcdcmd (0xc0);
Ak dôjde k zhode, ovládač otvorí bránu, inak sa spustí bzučiak a na displeji LCD sa zobrazí neplatná karta.