This project of an embedded door lock system is described with a digital lock interfaced with a microcontroller. The principle aim of this door lock system is to enable a door with a graphical password or a fingerprint. The user will be able to enter a graphical password on touchscreen, or use finger on a fingerprint sensor, to unlock the door. The user will also be able to add or delete a stored password/fingerprint entry with the help of touch screen UI. For security purpose, the system will display information of the key used for last unlock action. The user will know if someone else has entered the room when the user was absent.
The system diagram is shown above. The central finite state machine is responsible for state transitions and touchscreen display update. Graphical passwords are saved in EEPROM of Arduino module. The ROM is used to store passwords for user identity verification. The state machine also communicates with other devices for inputs and outputs. The touchscreen is the interface for the user to interact with the system. Fingerprints are saved in the built-in flash memory component of the fingerprint sensor module. The system uses a servo motor to simulate lock and unlock action on a door.
Hardware list:
Wiring schematic:
Libraries:
Central FSM States:
Touchscreen project:Adafruit 2.8" TFT Touchscreen
Fingerprint sensor project:Arduino Fingerprint Sensor
Servo motor project:Arduino Fingerprint Sensor
Future improvements:
Yuhao Feng:
Ruixiao Bai:
Project repository: repository
Final presentation video: final presentation
Project demo: project demo
EEPROM.h: https://www.arduino.cc/en/Reference/EEPROM
Adafruit_TFTLCD.h: https://github.com/adafruit/TFTLCD-Library
Adafruit_TouchScreen.h: https://github.com/adafruit/Adafruit_TouchScreen
Adafruit_Fingerprint.h: https://github.com/adafruit/Adafruit-Fingerprint-Sensor-Library
Servo.h: https://www.arduino.cc/reference/en/libraries/servo/