Šajā projektā mēs izstrādāsim RFID un uz tastatūras balstītu drošības sistēmu. Šis projekts tiek īstenots, izmantojot 8051 mikrokontrolleru. RFID tehnoloģija (radiofrekvenču identifikācija un noteikšana) parasti tiek izmantota skolās, koledžās, birojos un stacijās dažādiem mērķiem, lai automātiski autentificētu cilvēkus ar derīgām RFID atzīmēm. Šeit mēs pārbaudīsim RFID tagu kopā ar paroli, kas saistīta ar tagu, lai aizsargātu sistēmu.
Strādā
Mēs varam sadalīt visu drošības sistēmu dažādās sadaļās - Reader sadaļā, Tastatūrā, Control sadaļā, Driver sadaļā un Display sadaļā. Visas sistēmas darbību un katras sadaļas lomu var saprast zemāk redzamajā blokshēmā.
Lasītāju sadaļa: Šajā sadaļā ir RFID, kas ir elektronikas ierīce, kurai ir divas daļas - viena ir RFID lasītājs, bet otra - RFID iezīme vai karte. Kad mēs RFID tagu ieliekam netālu no RFID lasītāja, tas tagu datus nolasa sērijveidā. Šeit izmantotajam RFID tagam ir 12 ciparu rakstzīmju kods vai sērijas numurs. Šis RFID darbojas ar ātrumu 9600 bps.
Tastatūra: Šeit mēs esam izmantojuši 4x4 matricas tastatūru, lai ievadītu paroli sistēmā.
Vadības sadaļa: Mikrokontrolleru 8051 izmanto, lai kontrolētu visu šajā RFID balstītās drošības sistēmas procesu. Izmantojot 8051, mēs saņemam RFID datus un nosūtām statusu vai ziņojumus uz LCD.
Displeja sadaļa: 6x2 LCD tiek izmantots šajā projektā, lai tajā parādītu ziņojumus. Šeit jūs varat redzēt apmācību: LCD saskarne ar 8051 mikrokontrolleru
Vadītāja sadaļa: Šajā sadaļā ir motora vadītājs L293D vārtu atvēršanai un skaņas signāls ar BC547 NPN tranzistoru indikācijām.
Kad persona ievieto savu RFID tagu RFID lasītājā, tad RFID nolasa tagu datus un nosūta tos 8051 mikrokontrollerim, un pēc tam mikrokontrolleris salīdzina šos datus ar iepriekš definētiem datiem. Ja dati tiek saskaņoti ar iepriekš definētiem datiem, mikrokontrolleris pieprasa paroli un pēc paroles ievadīšanas mikrokontrolleris salīdzina paroli ar iepriekš noteiktu paroli. Ja tiks atvērti paroles atbilstības vārti, citādi LCD rāda piekļuvi liegtu un signāls kādu laiku sāk pīkstēt.
Shēmas shēma un paskaidrojums
Kā parādīts iepriekš RFID drošības sistēmas shēmā, 16x2 LCD ir savienots četru bitu režīmā ar mikrokontrolleru. LCD RS, RW un EN tapas ir tieši savienotas ar PORT 1 tapu numuriem P1.0, P1.1 un P1.2. LCD D4, D5, D6 un D7 tapas ir tieši savienotas ar 1. porta tapām P1.4, P1.5, P1.6 un P1.7. Motora draiveris ir savienots ar PORT kontaktu tapām P2.4 un P2.5. Bummeris ir savienots ar P2.6 pie PORT2. Tastatūra ir pievienota PORT0. Tastatūras rinda ir savienota ar P0.4 - P0.7 un kolonnas ir savienotas ar P0.0 - P0.3.
Programmas skaidrojums
Programmējot 8051 mikrokontrolleru RFID balstītai drošības sistēmai, vispirms mēs iekļaujam galvenes failus un definējam ievades un izvades tapu un mainīgos.
# iekļaut
Pēc tam definējiet tastatūras moduļa tapas.
sbit col1 = P0 ^ 0; sbit col2 = P0 ^ 1; sbit col3 = P0 ^ 2; sbit col4 = P0 ^ 3; sbit rinda1 = P0 ^ 4; sbit2. rinda = P0 ^ 5; sbit3. rinda = P0 ^ 6; sbit4 rinda = P0 ^ 7;
Pēc tam mēs esam izveidojuši aizkavēšanās funkciju.
void delay (int itime) {int i, j; par (i = 0; i
Tad mēs izveidojam kādu funkciju LCD un inicializējam LCD funkciju, void lcd_init (void) {lcdcmd (0x02); lcdcmd (0x28); lcdcmd (0x0e); lcdcmd (0x01); }
Šeit mums ir kāda funkcija, kuru esam izmantojuši mūsu programmā. Tajā mēs esam konfigurējuši 9600bps pārraides ātrumu pie 11.0592MHz kristāla frekvences, un fuction saņemšanai mēs uzraugām SBUF reģistru datu saņemšanai.
void uart_init () {TMOD = 0x20; SCON = 0x50; TH1 = 0xfd; TR1 = 1; } char rxdata () {while (! RI); ch = SBUF; RI = 0; atgriezties ch; }
Pēc tam galvenajā programmā mēs esam inicializējuši lcd un Uart, un pēc tam mēs nolasām RFID izvadi, kad uz tā tiek ievietots jebkurš tags. Mēs glabājam šo virkni masīvā un pēc tam sakrītam ar iepriekš noteiktu masīva datiem. Un pēc tam saskaņojiet paroli.
if (strncmp (rfid, "160066A5EC39", 12) == 0) {tastatūra (); ja (strncmp (piespēle, "4201", 4) == 0) {pieņemt (); lcdcmd (1); lcdstring ("Piekļuve piešķirta"); lcdcmd (0xc0);
Ja notiek sakritība, kontrolieris atver vārtus, pretējā gadījumā sākas skaņas signāls un LCD parāda nederīgu karti.