Dalam projek ini, kami akan mengembangkan sistem Keamanan berasaskan RFID dan papan kekunci. Projek ini dilaksanakan dengan menggunakan mikrokontroler 8051. RFID Tecnology (Pengenalan dan Pengesanan Frekuensi Radio) biasanya digunakan di sekolah, kolej, pejabat dan stesen untuk pelbagai tujuan untuk mengesahkan orang secara automatik dengan tag RFID yang sah. Di sini kita akan memeriksa tag RFID, bersama dengan kata laluan yang berkaitan dengan tag, untuk mengamankan sistem.
Bekerja
Kita boleh membahagikan sistem keselamatan yang lengkap kepada pelbagai bahagian - bahagian Pembaca, Pad Kekunci, bahagian Kawalan, bahagian Pemandu dan bahagian Paparan. Pengerjaan keseluruhan sistem dan peranan setiap bahagian dapat difahami melalui gambarajah blok di bawah ini.
Bahagian Pembaca: Bahagian ini mengandungi RFID, yang merupakan peranti elektronik yang mempunyai dua bahagian - satu adalah Pembaca RFID dan yang lain adalah tag atau Kad RFID. Apabila kita meletakkan tag RFID berhampiran pembaca RFID, ia membaca data tag secara bersiri. Tag RFID yang kami gunakan di sini mempunyai 12 digit kod aksara atau nombor siri. RFID ini berfungsi pada kadar baud 9600 bps.
Pad kekunci: Di sini kami telah menggunakan papan kekunci matriks 4x4 untuk memasukkan kata laluan ke sistem.
Bahagian Kawalan: 8051 mikrokontroler digunakan untuk mengawal proses lengkap sistem keselamatan berasaskan RFID ini. Di sini dengan menggunakan 8051 kami menerima data RFID dan mengirim status atau mesej ke LCD.
Bahagian Paparan: LCD 6x2 digunakan dalam projek ini untuk memaparkan mesej di atasnya. Di sini anda dapat melihat tutorialnya: LCD berinteraksi dengan mikrokontroler 8051
Bahagian Pemandu: Bahagian ini mempunyai pemandu motor L293D untuk membuka pintu dan buzzer dengan transistor BC547 NPN untuk petunjuk.
Apabila seseorang meletakkan tag RFIDnya ke pembaca RFID maka RFID membaca data tag dan menghantarnya ke 8051 mikrokontroler dan kemudian mikrokontroler membandingkan data ini dengan data yang telah ditentukan. Sekiranya data dipadankan dengan data yang telah ditentukan maka mikrokontroler meminta kata laluan dan setelah memasukkan kata laluan mikrokontroler bandingkan kata sandi dengan kata laluan yang telah ditentukan. Sekiranya gerbang padanan kata laluan akan terbuka, maka pertunjukan LCD Akses ditolak dan buzzer mula berbunyi sebentar.
Rajah dan Penjelasan Litar
Seperti yang ditunjukkan dalam gambarajah litar sistem keselamatan RFID di atas, LCD 16x2 disambungkan dalam mod empat bit dengan mikrokontroler. Pin RS, RW dan EN LCD disambungkan secara langsung di PORT 1 pin nombor P1.0, P1.1 dan P1.2. D4, D5, D6 dan D7 pin LCD disambungkan secara langsung pada pin P1.4, P1.5, P1.6 dan P1.7 dari port 1. Pemacu motor disambungkan pada PORT pin nombor P2.4 dan P2.5. Dan bel disambungkan pada P2.6 di PORT2. Pad kekunci disambungkan di PORT0. Baris papan kekunci disambungkan pada P0.4 - P0.7 dan Lajur disambungkan pada P0.0 - P0.3.
Penjelasan Program
Semasa memprogram mikrokontroler 8051 untuk sistem keselamatan berasaskan RFID, pertama sekali kami menyertakan fail tajuk dan menentukan pin dan pemboleh ubah input dan output.
#sertakan
Kemudian tentukan pin untuk modul papan kekunci.
sbit col1 = P0 ^ 0; sbit col2 = P0 ^ 1; sbit col3 = P0 ^ 2; sbit col4 = P0 ^ 3; sbit row1 = P0 ^ 4; sbit baris2 = P0 ^ 5; sbit row3 = P0 ^ 6; sbit row4 = P0 ^ 7;
Selepas ini kami telah membuat fungsi untuk kelewatan.
kelewatan tidak sah (int itime) {int i, j; untuk (i = 0; i
Kemudian kami membuat beberapa fungsi untuk LCD dan memulakan fungsi lcd, batal lcd_init (batal) {lcdcmd (0x02); lcdcmd (0x28); lcdcmd (0x0e); lcdcmd (0x01); }
Di sini kita mempunyai beberapa fungsi yang telah kita gunakan dalam program kita. Dalam hal ini kita telah mengkonfigurasi 9600bps baud rate pada 11.0592MHz Crystal Frequency, dan fuction untuk penerimaan kita memantau SBUF register untuk menerima data.
batal uart_init () {TMOD = 0x20; SCON = 0x50; TH1 = 0xfd; TR1 = 1; } char rxdata () {sementara (! RI); ch = SBUF; RI = 0; kembali ch; }
Selepas ini dalam program utama kami telah menginisialisasi lcd dan Uart dan kemudian kami membaca output RFID apabila ada tag yang dibawa. Kami menyimpan rentetan ini dalam array dan kemudian dipadankan dengan data array predefind. Dan kemudian sepadan dengan kata laluan.
jika (strncmp (rfid, "160066A5EC39", 12) == 0) {pad kekunci (); if (strncmp (lulus, "4201", 4) == 0) {terima (); lcdcmd (1); lcdstring ("Akses Diberikan"); lcdcmd (0xc0);
Sekiranya perlawanan berlaku maka pengawal membuka pintu, jika tidak, buzzer dimulakan dan LCD menunjukkan kad yang tidak sah.