Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 83 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
83
Dung lượng
2,3 MB
Nội dung
NATIONAL UNIVERSITY OF HO CHI MINH CITY HO CHI MINH UNIVERSITY OF TECHNOLOGY FACULTY OF COMPUTER SCIENCE AND ENGINEERING THESIS A Smart Management System for the Computer Engineering Lab Instructor: Reviewer: Students: Assoc Prof Dr Phạm Quốc Cường Dr Lê Trọng Nhân Vũ Thành Đạt - 1752169 Trịnh Mai Duy - 1752139 HO CHI MINH CITY, 7/2021 TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA KH & KT MÁY TÍNH CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc -Ngày 07 tháng năm 2021 PHIẾU CHẤM BẢO VỆ LVTN (Dành cho người hướng dẫn) Trịnh Mai Duy – 1752139 – Ngành Kỹ thuật Máy tính Vũ Thành Đạt – 1752169 – Ngành Kỹ thuật Máy tính Đề tài: A Smart Management System for the Computer Engineering Lab Họ tên người hướng dẫn: Phạm Quốc Cường Tổng quát thuyết minh: Số trang: Số chương: Số bảng số liệu Số hình vẽ: Số tài liệu tham khảo: Phần mềm tính tốn: Hiện vật (sản phẩm) Tổng qt vẽ: - Số vẽ: Bản A1: Bản A2: Khổ khác: - Số vẽ vẽ tay Số vẽ máy tính: Những ưu điểm LVTN: - Students proposed a suitable smart system to manage the Computer Engineering - Students implemented the proposal well and tested the proposed systems with different scenarios although they cannot come to the lab for a while due to the pandemic - The report is adequately written, although some sections need more details explained Họ tên SV: Những thiếu sót LVTN: - Students need to improve system by different accessing methods - Students should analyze and compare their system with others Đề nghị: Được bảo vệ o Bổ sung thêm để bảo vệ o Không bảo vệ o câu hỏi SV phải trả lời trước Hội đồng: a Can the system prevent wrong objects collected from cabinets after authentication? 10 Đánh giá chung (bằng chữ: giỏi, khá, TB): Điểm: 9.0/10 Ký tên (ghi rõ họ tên) Phạm Quốc Cường TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA KH & KT MÁY TÍNH CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc -Ngày 12 tháng 08 năm 2021 PHIẾU CHẤM BẢO VỆ LVTN (Dành cho người phản biện) Họ tên SV: VŨ THÀNH ĐẠT MSSV: 1752169 Ngành (chuyên ngành): Kỹ thuật máy tính Họ tên SV: TRỊNH MAI DUY MSSV: 1752139 Ngành (chuyên ngành): Kỹ thuật máy tính Đề tài: A Smart Management System for the Computer Engineering Lab Họ tên người phản biện: T.S Lê Trọng Nhân Tổng quát thuyết minh: Số trang: 79 Số chương: 06 Số bảng số liệu: Số hình vẽ: 46 Số tài liệu tham khảo: 10 Phần mềm tính tốn: 01 Hiện vật (sản phẩm): Tổng quát vẽ: - Số vẽ: Bản A1: - Số vẽ vẽ tay Bản A2: Khổ khác: Số vẽ máy tính: Những ưu điểm LVTN: In this thesis, a full stack project is designed, proposing for asset management in a lab The system is based on three different methods for the authentication process, including an RFID Card, a figure print sensor and a keypad for secrete number input Students show their great collaboration to integrate the system Students also prove their capabilities to work with the device drivers, programming in embedded system and also for the web server In most interest in the hardware part of this project is the figure print sensor due to its complexity in communication Moreover, the network protocol in this thesis is also a challenge in a microcontroller system, which is normally fully supported Finally, is the software implementation of AES encryption, which is the most powerful encrypted algorithm for hardware platform The demonstration shows that these modules work well and can be inherited for future project Những thiếu sót LVTN: The database should be improved However, it is a minor part in a CE thesis project Đề nghị: Được bảo vệ Bổ sung thêm để bảo vệ Không bảo vệ câu hỏi SV phải trả lời trước Hội đồng: It is assumed that there is an exception that an RFID card of a student is lost How does your system handle this use case? In the case a camera is used in your system to increase the security process How does it integrate in the system? 10 Đánh giá chung (bằng chữ: giỏi, khá, TB): Giỏi Điểm : 9/10 Ký tên (ghi rõ họ tên) TS Lê Trọng Nhân Declaration We hereby declare that except where specific reference is made to the work of others, the content of this dissertation is original and has not been submitted in whole or in part for consideration for any other degree or qualification anywhere This dissertation is our own work and contains nothing which is the outcome of work done in collaboration with others, except as specified in the text and Acknowledgements This dissertation contains fewer than 13000 words including appendices, bibliography and has fewer than 50 figures Due to the COVID-19 pandemic, we weren’t able to include images of our final product in this dissertation No live demonstration was carried out to showcase our work and research Acknowledgements We would like to acknowledge the involvement and guidance of our instructor, Dr Phạm Quốc Cường, our reviewer, Dr Lê Trọng Nhân as well as the help from our friends and classmates in the faculty of Computer Science & Engineering Their tremendous support provided us with extra knowledge and helped us complete this dissertation to the best of our ability We would also like to thank all the research papers and technologies for inspiring us on many portions of the our design A special thank to Trí, An and Dũng Table of content I INTRODUCTION II THEORETICAL FRAMEWORK RFID Technology 2 Fingerprint Identification Technology 3 Literature Review and Commercial Products 4 Components and Hardware Preparation III SYSTEM DESIGN Logical Diagram Overview 17 Server Level 18 Application Level: Creating a User Interface 21 Hardware Level 27 4.1 Authentication Module 27 4.2 Storage Module 30 4.3 Microcontroller Configuration 31 4.4 Complete Datasheet 38 Determining fingerprint ownership 39 Data Transmission 40 Data Encryption over TCP 40 IV SYSTEM IMPLEMENTATION V 17 42 Registration 42 Authentication 43 User Removal 44 Hardware Management 44 Administrative Tools 50 TESTING & EVALUATION VI CONCLUSION 53 72 List of figures and images A complete RFID scanning system 2 Minutiae features on a fingerprint 3 A supply chain model X-NUCLEO-H743ZI2 3x4 keypad and its circuit 3x4 keypad’s matrix circuit 10 PN532 NFC HAT RFID module 10 Common RFID tag form factors 11 10 Adhesive RFID tag 12 11 R503 Fingerprint Scanner 12 12 SSD-1106 OLED Display 13 13 LY-03 12VDC Solenoid Door Lock 14 14 MA1208 Electric Cabinet Security Lock 14 15 4-relay Opto-isolator Module 15 16 DC-DC Buck Boost Converter with LCD Display 15 17 DSL-2730u Wireless Router 16 18 Full Layout of the Smartlab System 17 19 System login page 23 20 System UI structure 23 21 The welcome tab with Bootstrap’s Jumbotron 24 22 A notification example 24 23 A modal example 25 24 The tab Users with DataTables formatting 25 26 The Users tab on a 580 pixel-wide smartphone screen 26 27 Authentication Module Layout 27 28 R503 processing procedure 29 29 Storage Module Layout 30 30 The cabinet interior with the MCU 31 31 Three possible I2C wiring options 33 32 Event Signals usage example 37 33 Message queue model example 37 34 Hardware level datasheet 38 35 Fingerprint data mapping across the system 39 36 System TCP message format 40 37 An encryption and decryption process, simplified 41 38 AES-ECB encryption block scheme 41 39 Entrance Authentication Use-case Diagram 43 40 Request modal form 45 41 The Hardware tab on the web UI 46 42 The Management tab for hardware 47 43 Hardware Request activity flow 48 44 Hardware Return activity flow 49 45 The Command tab 50 46 The Event log tab 52 Test cases for entrance door authentication Test case ID DOOR_0 Description Open Lab’s door using Action Status Ring light on the sensor flashes blue Touch the fingerprint sensor surface registered Expected Results fingerprint Door’s OLED display user’s name and ID Door’s OLED turns off Door opens DOOR_1 Open Lab’s door using unregistered Ring light on the sensor flashes red Touch the fingerprint sensor surface fingerprint Door’s OLED displays "Unregistered" message Door’s OLED turns off Door stays closed DOOR_2 Open Lab’s door using keypad with Door’s OLED displays "*" for each input number Enter correct passode using the keypad Door’s OLED turns off Door’s OLED displays "Welcome!" correct passcode message Door’s OLED turns off Door opens DOOR_3 Open Lab’s door using keypad with incorrect Door’s OLED displays "*" for each Enter incorrect passode using the keypad input number Door’s OLED turns off Door’s passcode OLED displays "Wrong passcode" message Door’s OLED turns off Door stays closed DOOR_4 Open Lab’s door using registered RFID card Put a user-registered RFID card near the RFID reader surface Door’s OLED display user’s name and ID Door’s OLED turns off Door opens 59/72 DOOR_5 Open Lab’s door using unregistered Put an non user-registered RFID card near RFID reader surface DOOR_6 message Door’s OLED turns off RFID card Open Door’s OLED display "Unregistered" Door stays closed Lab’s door using web On the web interface, navigate to "Command" tab Door’s OLED displays confirmation interface Click the "OPEN DOOR" button message Door’s OLED turns off Door opens 60/72 Test cases for hardware registration Test case ID Description Action Expected Results Status On the web interface, navigate to "Inventory" tab Click the "New hardware" button new hardware" modal appears Add new FUNC_0 "Register hardware to Fill in the "Hardware name" field inventory Click "+" icon on the RFID tag field The "+" icon turns into a "loading circle" Put hardware’s RFID tag near RFID The "loading circle" turns into a green reader surface "Added" message Choose a cabinet to store the hardware The modal closes and the hardware is Click the "CONFIRM" button added to the database The corresponding cabinet door opens Action is recorded in event log Add new FUNC_1 hardware with existing RFID tag* On the web interface, navigate to "Inventory" tab Click the "New hardware" button "Register new hardware" modal appears Click "+" icon on the RFID tag field The "+" icons turn into a "loading circle" Put an existing RFID tag near The "loading circle" turns back to "+" RFID reader surface icon A red warning message appears on the modal 61/72 On the web interface, navigate to "Inventory" tab Add new FUNC_2 Click the "New hardware" button hardware with "Register new hardware" modal appears missing Leave out the "Hardware name" field hardware name Click "+" icon on the RFID tag field The "+" icons turn into a "loading circle" Put hardware’s RFID tag near RFID The "loading circle" turns into a green reader surface "Added" message Choose a cabinet to store the hardware Click the "CONFIRM" button The "Hardware name" field is highlighted in red No form is submitted On the web interface, navigate to Add new FUNC_3 hardware with missing RFID tag "Inventory" tab Click the "New hardware" button "Register new hardware" modal appears Fill in the "Hardware name" field Leave out the "RFID tag" field Choose a cabinet to store the hardware Click the "CONFIRM" button A warning message appears at the "RFID tag" field No form is submitted 62/72 On the web interface, navigate to "Inventory" tab Add new FUNC_4 hardware with missing cabinet Click the "New hardware" button "Register new hardware" modal appears Fill in the "Hardware name" field Click "+" icon on the RFID tag field The "+" icon turns into a "loading circle" Put hardware’s RFID tag near RFID The "loading circle" turns into a tick reader surface with "Added" message Leave out the "Cabinet" field Click the "CONFIRM" button The "Cabinet" field is highlighted in red No form is submitted On the web interface, navigate to FUNC_5 Add new "Inventory" tab hardware Click the "New hardware" button new hardware" modal appears without filling in any field "Register Leave out all the field Missing fields are highlighted in red Click the "CONFIRM" button A warning message appear at the "RFID tag" field No form is submitted FUNC_6 Add new On the web interface, navigate to hardware "Inventory" tab without doing Click the "New hardware" button new hardware" modal appears anything after pressing "+" "Register Fill in the "Hardware name" field Click "+" icon on the RFID tag field The "+" icon turn into a "loading circle" Do nothing The "loading circle" turn back to "+" icon after a short period of time *A tag that is already registered in the system, user or hardware 63/72 Test cases for user registration Test case ID Description Action Expected Results On the web interface, navigate to "Users" tab FUNC_7 Add new user Click the "New user" button "Register new user" modal appears Fill in all the fields Click the "CONFIRM" button "Register new user" modal closes User information is added to the database On the web interface, navigate to "Users" tab FUNC_8 Add new user Click the "New user" button without filling Leave out the "First name" field in the "First Fill in the "Last name" field name" field Fill in the "ID" field "Register new user" modal appears Choose a role in the "Role" field Click the "CONFIRM" button The "First name" field is highlighted in red No form is submitted On the web interface, navigate to "Users" tab FUNC_9 Add new user Click the "New user" button without filling Fill in the "First name" field in the "Last Leave out the "Last name" field name" field Fill in the "ID" field "Register new user" modal appears Choose a role in the "Role" field Click the "CONFIRM" button The "Last name" field is highlighted in red No form is submitted 64/72 Status On the web interface, navigate to "Users" tab Click the "New user" button FUNC_10 Add new user Fill in the "First name" field with existing ID Fill in the "Last name" field "Register new user" modal appears Fill in the "ID" field with a registered ID Choose a role in the "Role" field Click the "CONFIRM" button A warning message appears on the modal No form is submitted On the web interface, navigate to "Users" tab Add new user FUNC_11 without filling in the "ID" field Click the "New user" button "Register new user" modal appears Fill in the "First name" field Fill in the "Last name" field Leave out the "ID" field Choose a role in the "Role" field Click the "CONFIRM" button The "ID" field is highlighted in red No form is submitted On the web interface, navigate to "Users" tab FUNC_12 Add new user Click the "New user" button without Fill in the "First name" field choosing the Fill in the "Last name" field Role Fill in the "ID" field "Register new user" modal appears Leave out the "Role" field Click the "CONFIRM" button The "Role" field is highlighted in red No form is submitted 65/72 On the web interface, navigate to "Users" tab Add new user FUNC_13 without fill in any field Click the "New user" button "Register new user" modal appears Leave out the "First name" field Leave out the "Last name" field Leave out the "ID" field Leave out the "Role" field Click the "CONFIRM" button The missing fields are highlighted in red No form is submitted 66/72 Test cases for registering user’s authentication keys Test case ID Description Action Expected Results On the web interface, navigate to "Users" tab Click "Details" button of the chosen User’s Authentication modal appears user Press "+" icon on the RFID field circle" Add user’s FUNC_14 The "+" icon turns into a "loading authentication Put user’s RFID tag near RFID The RFID tag is added to the database information reader surface The "loading circle" turns into a tick with "Added" message Click "+" icon on the "Fingerprint" field The "+" icon turns into a "loading circle" Door’s OLED displays "Please insert finger" message Press an unregistered finger onto Ring light on the sensor flashes blue the fingerprint sensor surface Door’s OLED displays "Please confirm finger" message Press the same finger onto the fingerprint sensor surface Door’s OLED displays confirmation message The fingerprint is added to the database The "loading circle" turns into a tick with "Added" message Click the "CLOSE" button Add user’s FUNC_15 authentication information (Time out) User’s Authentication modal closes On the web interface, navigate to "Users" tab Click "Details" button of the chosen User’s Authentication modal appears user Press "+" icon on a field The "+" icon turns into a "loading circle" Do nothing The "loading circle" turns back to "+" icon after a short period of time Click the "CLOSE" button User’s Authentication modal closes 67/72 Status On the web interface, navigate to "Users" tab Add user’s authentication FUNC_16 information using existing information Click "Details" button of the chosen User’s Authentication modal appears user Press "+" icon on the RFID field The "+" icon turns into a "loading circle" Put existing RFID tag near A red warning message appear on the RFID reader surface modal The "loading circle" turns back to "+" icon Click "+" icon on the "Fingerprint" field The "+" icon turns into a "loading circle" Door’s OLED displays "Please insert finger" message Press a registered finger onto the fingerprint sensor surface A red warning message appear on the modal Door’s OLED displays warning message The "loading circle" turns back to "+" icon 68/72 Test cases for changing password and passcode Test case ID Description Action Expected Results On the web interface, navigate to FUNC_23 Change Door’s passcode "Command" tab Click the "CHANGE DOOR Passcode form appears PASSCODE" title Fill in the "Current passcode" field with the current door’s passcode Fill in the "New passcode" field correctly Click "CONFIRM" button Change Door FUNC_24 passcode using wrong current passcode Success notification appears On the web interface, navigate to "Command" tab Click the "CHANGE DOOR Passcode form appears PASSCODE" title Fill in the "Current passcode" field with incorrect passcode Fill in the "New passcode" field correctly Click "CONFIRM" button Change Door FUNC_25 passcode using wrong passcode format Failure notification appears On the web interface, navigate to "Command" tab Click the "CHANGE DOOR Passcode form appears PASSCODE" title Fill in the "Current passcode" field with the current door’s passcode Fill in the "New passcode" field with the incorrect format Click "CONFIRM" button Failure notification appears 69/72 Status FUNC_26 Change Door On the web interface, navigate to passcode using "Command" tab current Click passcode as new PASSCODE" title passcode Fill in the "Current passcode" field the "CHANGE DOOR Passcode form appears with the current door’s passcode Fill in the "New passcode" field with the current door’s passcode Click "CONFIRM" button Success notification appears On the web interface, navigate to Change Web FUNC_27 interface password "Command" tab Click the "CHANGE PASSWORD" Password form appears title Fill in the "Current password" field with the current password Fill in the "New password" field with the new password Fill in the "New password, again" field with the same password in the "New password" field Click "CONFIRM" button Change Web interface FUNC_28 password using wrong "Current password" Success notification appears On the web interface, navigate to "Command" tab Click the "CHANGE PASSWORD" Password form appears title Fill in the "Current password" field with the incorrect current password Fill in the "New password" field with the new password Fill in the "New password, again" field with the same password in the "New password" field Click "CONFIRM" button Failure notification appears 70/72 Change Web interface FUNC_29 password with different new passwords On the web interface, navigate to "Command" tab Click the "CHANGE PASSWORD" Password form appears title Fill in the "Current password" field with the current password Fill in the "New password" field with the new password Fill in the "New password, again" field a different password Click "CONFIRM" button FUNC_30 Failure notification appears Change Door’s On the web interface, navigate to passcode "Command" tab without filling Click in any field PASSCODE" title the "CHANGE DOOR Click "CONFIRM" button without Passcode form appears Empty fields are highlighted in red filling all fields FUNC_31 Change Web On the web interface, navigate to interface "Command" tab password Click the "CHANGE PASSWORD" without filling title in any field Click "CONFIRM" button without Password form appears Empty fields are highlighted in red filling all fields 71/72 HO CHI MINH UNIVERSITY OF TECHNOLOGY FACULTY OF COMPUTER SCIENCE AND ENGINEERING VI CONCLUSION The system solves many problems present in many hardware lab rooms by providing automated assistance Through the use of RFID and fingerprint technologies, many steps in managing a lab is greatly reduced in terms of effort, including authentication and hardware management RFID as a technology is very promising and will transform many industries The use of RFID in our system has improved hardware visibility to the management staff, help them keeping track of hardware status better, reduce the risk of theft and allow regular update and addition to the inventory Using a fingerprint scanner provides an extra authentication method, diversifying our access control feature and giving lab users another choice of gaining access General UI for a system manager is provided using a web page, which conveniently enables them to access the system data on any device with a web browser Although they’re are minor imperfections here and there, our system works as intended and we plan to improve it further in the future ⋆ ⋆ ⋆ Computer Engineering Graduation Thesis - Semester 202 72/72 References [1] Sree Lakshmi Addepalli, Sree Gowri Addepalli Library Management System Using RFID Technology International Journal of Computer Science and Information Technologies, Vol (6) , 2014 [2] Jean-Paul Rodrigue The distribution network of Amazon and the footprint of freight digitalization J Transp Geogr 2020 Oct;88:102825 doi: 10.1016/j.jtrangeo.2020.102825 Epub 2020 Aug 12 PMID: 32834678; PMCID: PMC7419283 [3] María del Carmen Ln-Araujo, Elisa Gómez-Inhiesto, María Teresa Acaiturri-Ayesta Implementation and Evaluation of a RFID Smart Cabinet to Improve Traceability and the Efficient Consumption of High Cost Medical Supplies in a Large Hospital Journal of Medical Systems (2019) 43: 178 [4] Gabriels Rejoyce, Oluyinka Oni, Oluwadamilola Oshin and Francis Idachaba, Nsikan Nkordeh Members, IAENG Development and Implementation of a Smart Medical Cabinet using RFID Technology in Developing Countries Proceedings of the World Congress on Engineering 2016 Vol I [5] Xiaoqiang ZHANG, Qin DONG, Fangjie HU Applications of RFID in Logistics and Supply Chains: An Overview School of Transportation and Logistics, Southwest Jiaotong University, Chengdu, China 610031 [6] Kamaladevi Baskaran RFID – The Best Technology in Supply Chain Management International Journal of Innovation, Management and Technology, Vol 1, No 2, June 2010 [7] Evelin Vatovec Krmac, M.Sc RFID Application In The Supply Chain Technology and Management of Traffic Review, November 2006 [8] A Aditya Shanka1, P.R.K.Sastry, A L.Vishnu Ram, A.Vamsidhar Finger Print Based Door Locking System International Journal Of Engineering And Computer Science ISSN:2319-7242, Volume Issue March 2015, Page No 10810-10814 [9] Dobre Blazhevski, Adrijan Bozhinovski, Biljana Stojchevska, Veno Pachovski, MODES OF OPERATION OF THE AES ALGORITHM, The 10th Conference for Informatics and Information Technology (CIIT 2013) [10] Kai Lei, Yining Ma, Zhi Tan Performance Comparison and Evaluation of Web Development Technologiesin PHP, Python and Node.js, 2014 IEEE 17th International Conference on Computational Science and Engineering ... RTOS thread is assigned with the task of sending data frames the R503 scanner for as long as the OS runs This ensures that the device is always available and that it is always ready for an input... using AJAX calls exclusively This way, the webpage doesn’t have to reload or redirect away at all as AJAX takes place in the background and callbacks occur once a call is completed Alternatively,... to a frame of fingerprint data This data format on the chip is constant and by design of its manufacturer Because of that, we must create a table schema on the database similar to this format