BỘ THÔNG TIN VÀ TRUYỀN THÔNG HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG BÁO CÁO Hệ thống bảo mật RFID điều khiển bằng website Môn Đồ án thiết kế hệ thống nhúng Giảng viên Nguyễn Ngọc Minh MỤC LỤC LỜI NÓI.
BỘ THÔNG TIN VÀ TRUYỀN THÔNG HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THƠNG BÁO CÁO Hệ thống bảo mật RFID điều khiển website Môn: Đồ án thiết kế hệ thống nhúng Giảng viên: Nguyễn Ngọc Minh MỤC LỤC Đồ án thiết kế hệ thống số LỜI NÓI ĐẦU Ngày với phát triển xã hội đại số cần thiết bị bảo vệ tài sản nhà khoá cửa, thiết bị cảnh báo chống trộm hay camera có lẽ thiết bị sử dụng nhiều khố cửa Hiện thị trường có nhiều loại khoá cửa hầu hết khoá khí, khố khí gặp vấn đề lớn tính bảo mật loại khố không cao, nên dễ dàng bị phá chìa khố đa Đa số khố kỹ thuật số có bán thị trường có giá bán cao chủ yếu loại khoá tay nắm ta thường thấy khách sạn hộ chung cư Khoá sử dụng phương pháp cài đặt mã số để khố mở người sử dụng cài đặt số Hệ thống số khố thiết kế phím bấm số nên tiện lợi sử dụng Bên cạnh loại có chức khố mã số, cịn có loại kèm theo chức khoá thẻ Nếu bạn trót qn mã số dùng thẻ để mở khố Vì để nâng cao u cầu tính bảo mật để bảo vệ tài sản giao diện trực quan dễ sử dụng Nhóm chúng em định thực đề tài hệ thống bảo mật dùng bàn phím 4x4 thẻ chip RFID (Radio Frequency Identification) hiển thị điều khiển web Trong trình thực đồ án bọn em nhận nhiều chia sẻ, góp ý chức năng, ứng dụng để hoàn thiện đồ án, đặc biệt thầy Nguyễn Ngọc Minh Em xin chân thành cảm ơn thầy giúp chúng em làm đồ án mong người xem xét góp ý lỗi mắc phải đồ án, hy vọng bạn thầy góp ý cho chúng em để chúng em chỉnh sửa đồ án hồn thiện hơn! Em xin chân thành cảm ơn ! Đồ án thiết kế hệ thống số CHƯƠNG I: HỆ THỐNG BẢO MẬT RFID ĐIỀU KHIỂN BẰNG WEBSITE I Tổng quan đề tài 1.1 Mục tiêu: Dùng để chống xâm nhập vào nơi/hệ thống cần bảo vệ 1.2 Nội dung: + Dùng thẻ quẹt RFID / mật bàn phím để xác định danh tính + Có hình LCD1602 hiển thị nội dung cần thiết cho người sử dụng +Dùng vi điều khiển stm32f103c8t6 xử lý liệu người dùng +MCU ESP32 GET/POST liệu lên database 1.3 Linh kiện mạch 1.3.1 Module RFID RC522 Hình 24.Module RFID RC522 Module đọc thẻ RC522 đọc loại thẻ có kết nối không dây NFC, thẻ từ (loại dùng làm thẻ giảm giá, thẻ xe bus, tàu điện ngầm ) Module có thơng số như: Điện áp ni: 3.3V; Dịng điện ni :13-26mA Đồ án thiết kế hệ thống số Tần số hoạt động: 13.56MHz Khoảng cách hoạt động: ~ 60 мм Cổng giao tiếp: SPI, tốc độ tối đa 10Мbps Kích thước: 40мм х 60мм Có khả đọc ghi 1.3.2 Module cảm biến siêu âm SRF05 Hình 25 Module SRF05 Ứng dụng Dùng đo khoảng cách, đo mực chất lỏng, robot dò đường,phát vết đứt gãy dây cáp Thông số kỹ thuật - Điện áp vào: 5V - Dòng tiêu thụ : nhấn 1.3.4 ESP 32 DEVKIT V1 Hình 27 Sơ đồ chân ESP32 ✔ DOIT DevKit V1 board KIT phát triển DOIT, có module điều khiển trung tâm ESP-WROOM-32 Board dựa tảng ESP32, hỗ trợ kết nối Wi-Fi, Bluetooth chế độ hoạt động sử dụng lượng thấp ✔ Vì vậy, xu hướng sử dụng chíp WiFi gần gần hướng tới, chip có nhiều yếu tố có lợi việc kết nối liệu sở, tham gia vào hệ thống kiểu truyền thông không dây Đồ án thiết kế hệ thống số 1.3.5 STM32F103C8T6 Hình 29 STM32F103C8T6 Sơ lược Board trên: cổng Mini USB dùng để cấp nguồn, nạp debug MCU bao gồm MCU nạp MCU dùng để lập trình Có chân Output riêng cho chân mạch nạp MCU1 Có chân Output đầy đủ cho chân MCU2 Chân cấp nguồn riêng cho MCU2 không sử dụng nguồn từ USB Thạch anh 32,768khz dùng cho RTC Backup Chân nạp dùng cho chế độ nạp boot loader Nút Reset led hiển thị chân PB9, led báo nguồn cho MCU2 Cấu hình chi tiết STM32F103C8T6: ARM 32-bit Cortex M3 với clock max 72Mhz Bộ nhớ: 64 kbytes nhớ Flash(bộ nhớ lập trình) 20kbytes SRAM Clock, reset quản lý nguồn Điện áp hoạt động 2.0V -> 3.6V Power on reset(POR), Power down reset(PDR) programmable voltage detector (PVD) Sử dụng thạch anh từ 4Mhz -> 20Mhz Thạch anh nội dùng dao động RC mode 8Mhz 40khz Sử dụng thạch anh 32.768khz sử dụng cho RTC Trong trường hợp điện áp thấp: Có mode :ngủ, ngừng hoạt động hoạt động chế độ chờ Đồ án thiết kế hệ thống số Cấp nguồn chân Vbat pin để hoạt động RTC sử dụng lưu trữ data nguồn cấp Thơng số kỹ thuật: Vi điều khiển: STM32F103C8T6 Điện áp cấp 5VDC qua cổng Micro USB chuyển đổi thành 3.3VDC qua IC nguồn cấp cho Vi điều khiển Tích hợp sẵn thạch anh 8Mhz Tích hợp sẵn thạnh anh 32Khz cho ứng dụng RTC Ra chân đầy đủ tất GPIO giao tiếp: CAN, I2C, SPI, UART, USB,… Tích hợp Led trạng thái nguồn, Led PC13, Nút Reset Kích thước: 53.34 x 15.24mm Sử dụng với mạch nạp: ST-Link Mini J-link USB TO COM Kết nối chân nạp ST-Link Mini Nạp theo chuẩn SWD TCK — SWCLK TMS — SWDIO GND — GND 3.3V — 3.3V 1.3.6 LCD 1602 LCD 1602 loại mô-đun LCD phổ biến sử dụng dự án nhúng dựa 8051 Nó bao gồm 16 hàng cột × × ma trận điểm LCD Các mơđun nói loại JHD162A, loại phổ biến Nó có sẵn gói 16 chân với ánh sáng , chức điều chỉnh độ tương phản ma trận điểm có độ phân giải × chấm Sơ đồ chân LCD1602: Hình 30 Sơ đồ chân LCD1602 Đồ án thiết kế hệ thống số II HỆ THỐNG BẢO MẬT VỚI RFID RC522 ĐIỀU KHIỂN BẰNG WEBSITE 2.1 Sơ đồ nguyên lý HC-SR05 SERVER I/O Gửi yêu cầu xác thực ESP32 STM32 SPI MQTT RFID USART Gửi tín hiệu phản hồi HTML, CSS, JAVASCRIPT, MYSQL I/O Website điều khiển, hiển thị lịch sử vào người dùng hệ thống I2C KEYPAD LCD1602 Hình 31: Sơ đồ nguyên lý mạch 2.2 Nguyên lý hoạt động mạch Mạch có chế độ: Nhập thẻ từ RFID Các bước: • B1: Chọn chế độ • B2: Quẹt thẻ vào vị trí module RFID • B3: Chờ u cầu xác thực Chế độ test khoảng cách: Các bước: • B1: Chọn chế độ • B2: Di chuyển qua lại cảm biến để đo khoảng cách Đồ án thiết kế hệ thống số Hình 32: Sơ đồ trạng thái Giải thích: Q trình quẹt thẻ cần trải qua giai đoạn: Một chờ có tín hiệu quẹt thẻ Giai đoạn STM32 chuyển mã thẻ vừa nhận sang kit ESP32 để gửi lên Broker MQTT- nơi thông tin phân tán đến thiết bị có kết nối chung Topic Server nhận thông tin liệu thẻ cần kiểm tra có phải thẻ chứa mã người đăng ký lưu sở liệu hay không gửi tín hiệu phản hồi sau check qua Broker MQTT Giai đoạn cuối STM32 chờ phản hồi từ ESP32-thiết bị trung gian nhận liệu kiểm tra mã thẻ vừa có hệ thống hay không qua kết nối MQTT với Server để xử lý Trong trường hợp kết trả thẻ STM32 đưa lệnh kiểm tra người quẹt thẻ hay vào chưa thông qua cảm biến khoảng cách Nếu phát có qua cảm biến liệu cập nhật thời gian vào update 2.3 Hình ảnh minh họa 10 Đồ án thiết kế hệ thống số Hình 32: Mạch thực tế Hình 33: Chế độ đo khoảng cách 11 Đồ án thiết kế hệ thống số Hình 34: Chế độ quẹt thẻ RFID chế độ chờ Hình 35: Khi có thẻ quẹt 12 Đồ án thiết kế hệ thống số Hình 36: Kêt trả thẻ vừa quẹt khơng có hệ thống Hình 37 Websize hiển thị lịch sử quẹt thẻ/ ra/vào theo thời gian thực 2.4 Code chương trình ❖ Vịng lặp vơ hạn để kiểm tra chế độ người dùng while(1){ if(mode == 0){ key = check(); 13 Đồ án thiết kế hệ thống số LCD_String(0,0, (char*)"1: Nhap password"); LCD_String(1,0, (char*)"2: Nhap RFID"); //Mode nhap password if(key == '1'){ LCD_Clear(); LCD_String(0,0, (char*)"Password enter"); mode = 1; } //Mode nhap rfid if(key == '2'){ LCD_Clear(); LCD_String(0,0, (char*)"RFID Enter!"); mode = 2; } } //Mode nhap password if(mode == 1){ check_password(); } //Mode nhap rfid if(mode == 2){ check_rfid(); } } ❖ Hàm thực thi chế độ nhập password bàn phím void check_password(){ if(nhan_du_data == 1){ key = check(); if( key == '0' || key == '1' || key == '2' || key == '3' || key == '4' || key == '5' || key == '6' || key == '7' || key == '8' || key == '9'){ if(so_key_da_nhap == 6){ LCD_Clear(); LCD_String(0,0, (char*)"Password not"); LCD_String(1,0, (char*)" cu phap"); delay(2200); so_key_da_nhap = ; for(i = 0; i < ; i++){ temp_password[i] = '\0'; } LCD_Clear(); LCD_String(0,0, (char*)"Password enter"); } else{ temp_password[so_key_da_nhap]= key; 14 Đồ án thiết kế hệ thống số //temp_sao[so_key_da_nhap] = '%'; so_key_da_nhap++; LCD_Clear(); LCD_String(0,0, (char*)"Password enter"); //LCD_String(1,3, temp_sao); LCD_String(1,3, temp_password); //LCD_String(1,3, (char*)"hihi"); } } //Xoa nut vua nhap if(key == 'D'){ // temp_sao[so_key_da_nhap] = '\0'; if(so_key_da_nhap == 0){ so_key_da_nhap = 0; } else{ so_key_da_nhap ; } temp_password[so_key_da_nhap] = '\0'; LCD_Clear(); LCD_String(0,0, (char*)"Password enter"); LCD_String(1,3, temp_password); } //Gui esp32 xac nhan mk if(key == '='){ for(i = 0; i < 200 ; i++){ mang_esp32[i] = '\0'; } strcat(mang_esp32, "{\"nhap_password\":\""); strcat(mang_esp32, temp_password); strcat(mang_esp32,"\"}\n"); send_usart(USART1, (uint8_t*)mang_esp32); nhan_du_data = 3; } //Huy nhap mk if(key == 'Q'){ for(i = 0; i < ; i++){ temp_password[i] = '\0'; // temp_sao[i] = '\0'; } so_key_da_nhap=0; mode = 0; } 15 Đồ án thiết kế hệ thống số } } ❖ Hàm thực thi chế độ quẹt thẻ void check_rfid(){ if(nhan_du_data == 1){ key = check(); //Huy nhap mk if(key == 'Q'){ mode = 0; } status = MFRC522_Request(PICC_REQIDL, CardID); if (status == MI_OK) { status = MFRC522_Anticoll(CardID); sprintf(szBuff, "%02X%02X%02X%02X%02X", CardID[0], CardID[1], CardID[2], CardID[3], CardID[4]); for(i = 0; i < 200 ; i++){ mang_esp32[i] = 0; } LCD_Clear(); LCD_String(0,0, (char*)"RFID Enter!"); LCD_String(1,0, (char*)szBuff); strcat(mang_esp32, "{\"nhap_rfid\":\""); strcat(mang_esp32, szBuff); strcat(mang_esp32,"\"}\n"); // for(i = 0; i < 16 ; i++){ // szBuff[i] = 0; // } delay(1000); send_usart(USART1, (uint8_t*)mang_esp32); // // // // // nhan_du_data = 3; for(i = 0; i valuestring != NULL){ if(strcmp(cJSON_GetObjectItem(quan_ly_data,"yesno")->valuestring, "YES") == 0){ if(cJSON_GetObjectItem(quan_ly_data,"type")->valuestring != NULL){ if(strcmp(cJSON_GetObjectItem(quan_ly_data,"type")->valuestring, "RFID") == 0){ if(cJSON_GetObjectItem(quan_ly_data,"user")->valuestring != NULL){ strcat(user, cJSON_GetObjectItem(quan_ly_data,"user")>valuestring); } if(cJSON_GetObjectItem(quan_ly_data,"count")->valuestring != NULL){ strcat(count, cJSON_GetObjectItem(quan_ly_data,"count")>valuestring); } if(strcmp(count,"0") == 0){ LCD_Clear(); LCD_String(0,0, (char*)"RFID Corect"); delay(1000); LCD_Clear(); LCD_String(0,3, (char*)user); LCD_String(1,3, (char*)" di vao"); } else if(strcmp(count,"1") == 0){ // send_usart(USART1, (uint8_t*)"\nOK"); LCD_Clear(); LCD_String(0,0, (char*)"RFID Corect"); delay(1000); LCD_Clear(); LCD_String(0,3, (char*)user); LCD_String(1,3, (char*)" di ra"); } delay(3000); LCD_Clear(); LCD_String(0,0, (char*)"RFID Enter!"); } if(strcmp(cJSON_GetObjectItem(quan_ly_data,"type")->valuestring, "PASSWD") == 0){ LCD_Clear(); LCD_String(0,0, (char*)"Password Corect"); LCD_String(1,0, (char*)" WELLCOME"); delay(3000); LCD_Clear(); LCD_String(0,0, (char*)"Password enter"); } 17 Đồ án thiết kế hệ thống số } } if(strcmp(cJSON_GetObjectItem(quan_ly_data,"yesno")->valuestring, "NO") == 0){ if(cJSON_GetObjectItem(quan_ly_data,"type")->valuestring != NULL){ if(strcmp(cJSON_GetObjectItem(quan_ly_data,"type")->valuestring, "RFID") == 0){ LCD_Clear(); LCD_String(0,0, (char*)"RFID ERROR!"); delay(3000); LCD_Clear(); LCD_String(0,0, (char*)"RFID Enter!"); } if(strcmp(cJSON_GetObjectItem(quan_ly_data,"type")->valuestring, "PASSWD") == 0){ LCD_Clear(); LCD_String(0,0, (char*)"Password ERROR!"); delay(3000); LCD_Clear(); LCD_String(0,0, (char*)"Password enter"); }}} 18 Đồ án thiết kế hệ thống số III TỔNG KẾT VÀ PHƯƠNG HƯỚNG PHÁT TRIỂN ❖ ❖ ❖ Ưu điểm hệ thống Do mục tiêu đề tài áp dụng vào nơi không cần khắt khe nên xem xét mức độ hữu ích có tính ứng dựng cao Ví dụ: siêu thị, khu dân phố… Nhược điểm hệ thống Chưa thực bảo mật hệ thống có góp mặt chip cơng nghệ cao tích hợp camera để xử lý định danh, hay cảm biến vân tay Với ưu điểm vượt trội khoá cửa bảo mật thẻ chip RFID độ an toàn bảo mật cao, dễ dàng làm quen sử dụng, chi phí đầu tư sử dụng thấp,… Đồng thời khắc phục loại khóa cửa truyền thống ngày mà ngày lộ rõ nhược điểm vấn đề an ninh, bất tiện bị kẹt khóa, làm chìa… Hiện công nghệ RFID ứng dụng phổ biến tồn cầu, giúp cho việc quản lý, kiểm soát vào cửa cách dễ dàng hơn, RFID thay cách thông minh cho hệ thống khóa cửa thơng thường dùng chìa khóa, với tiện dụng, nhanh chóng, tính thẩm mỹ cao, đặc biệt an tồn tuyệt đối Tại Việt Nam hiên có nhiều ứng dụng công nghệ RFID triển khai: Trạm thu phí tự động: Trên cao tốc Hệ thống đỗ xe tự động: Hầm đậu xe tòa nhà chung cư Bãi giữ xe thông minh: trung tâm thương mại, bệnh viện, siêu thị, … Sổ khám bệnh điên tử: ứng dụng công nghệ RFID IV: ĐÁNH GIÁ KẾT QUẢ CỦA NHĨM NGHIÊN CỨU Cơng việc BTL Ghi Người phụ trách - Xây dựng mục tiêu đề tài: Hệ thống bảo mật RFID điều khiển qua website Hoàn thành - Thảo luận linh kiện cần thiết/giá hoàn thành sản phẩm đề tài Hoàn thành - Xử lý cảm biến siêu âm, bàn phím 4x4, hiển thị LCD(i2c) Hoàn thành Trần Văn Quyến - Xử lý RFID(giao tiếp spi) Hoàn thành Vũ Văn Minh, Hoàng Minh Tân - Giao thức mqtt, chuẩn liệu json Hoàn thành Nguyễn Ngọc Quang - Giao tiếp esp32, stm32(giao tiếp uart) Hoàn thành Vũ Văn Minh(trưởng nhóm) - Front end(html, css, js) Hoàn thành Hoàng Minh Tân - Back end(database, nodejs) Hoàn thành Vũ Văn Minh(trưởng nhóm) ALL 19 Đồ án thiết kế hệ thống số - Tổng hợp code Hoàn thành Vũ Văn Minh(trưởng nhóm) - Lắp ráp mơ hình/test mạch thực tế Hoàn thành ALL 20 THÀNH VIÊN Vũ Văn Minh-B18DCDT159 ĐIỂM ĐÁNH GIÁ BTL 10 Nguyễn Ngọc Quang-B18DCDT191 Hoàng Minh Tân-B18DCDT209 Trần Văn Quyến-B18DCDT199 9 ... kế hệ thống số CHƯƠNG I: HỆ THỐNG BẢO MẬT RFID ĐIỀU KHIỂN BẰNG WEBSITE I Tổng quan đề tài 1.1 Mục tiêu: Dùng để chống xâm nhập vào nơi /hệ thống cần bảo vệ 1.2 Nội dung: + Dùng thẻ quẹt RFID / mật. .. chức điều chỉnh độ tương phản ma trận điểm có độ phân giải × chấm Sơ đồ chân LCD1602: Hình 30 Sơ đồ chân LCD1602 Đồ án thiết kế hệ thống số II HỆ THỐNG BẢO MẬT VỚI RFID RC522 ĐIỀU KHIỂN BẰNG WEBSITE. .. điểm hệ thống Chưa thực bảo mật hệ thống có góp mặt chip cơng nghệ cao tích hợp camera để xử lý định danh, hay cảm biến vân tay Với ưu điểm vượt trội khoá cửa bảo mật thẻ chip RFID độ an toàn bảo