Password BasedSmartDoorLockingSystem
Password BasedSmartDoorLockingSystem
net/publication/361265944
CITATION READS
1 10,607
4 authors, including:
Wahid Sabbir
Daffodil International University
1 PUBLICATION 1 CITATION
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Md Al Imran on 13 June 2022.
By
Group – Hidden Tesla
Authors-
Abstract — Physical keys are the most-used and well-known technology to lock or unlock a
door. People are familiar with it. Despite the physical key locking system being well-proven,
it is not without liabilities. Roaming outside of the home with physical keys is inconvenient
and there is a risk of losing physical keys. Smart-locking system is a keyless technology that
lets a person unlock without having to use a physical key. A smart lock is an
electromechanical lock that is designed to perform locking and unlocking operations on a
door when it receives such instructions from an authorized device and executes the
authorization process using a cryptographic key.
1
I. INTRODUCTION
A. Background of Study and Motivation password-based bolt structure will provide
We cannot think of a day without clients with more security and less effort in
security. It is a major concern of a part of locking-unlocking mechanisms. [1]
our daily lives. Everybody should have a
B. Project Objectives
sense of safety. The security pattern of this
The goal of the project is to find and
project is an access control system to lock or
assess a suitable set of components for
unlock a door. Conventional locks are not as
creating a password-based smart door
safe as they used to be, anyone can access
locking system with Arduino UNO that
them by breaking these locks. We need to
provides high security and quick access. The
build a system that will provide 24/7
following are the specific goals:
benefits and help to make security. The
password-based door locking system allows ▪ Familiarity with a smart door locking
only approved persons to access restricted system based on a microcontroller
areas. The system is fully controlled by (Arduino).
Arduino UNO. Passwords can be entered ▪ Using the components to build a
through a keypad. The door gets unlocked simple and smart door locking
when the password is matched that is stored system.
in the Arduino chip. The sketched
2
be extended out to commercial sectors such secret pattern be changed. Because there is
as ATMs, vending machines, and so on. [2] no key to copy, this method completely
removes the possibility of duplication. [4]
● Fingerprint Locking System
Only individuals whose fingerprints ● Keyless Entry System Based on Arduino
are pre-stored in the memory can use Board with Wi-Fi Technology
fingerprint recognition technology. Even in An Arduino circuit board, a Wi-Fi
case of a complete power outage or battery module, and the PHP programming
loss, stored fingerprints are kept. This language are used to allow access to a closed
eliminates the need to keep track of keys or door in this keyless entry system. The
memorize a password or PIN combination. proposed method is explained, which
Because there are no keys or combinations involves using an Arduino Uno board and a
that can be copied or stolen, or locks that Wi-Fi shield to unlock the door without a
can be picked, it can only be accessed when key. Unlike earlier systems, which have a
an authorized person is present. As a result, restricted range, the internet connection
the fingerprint-based lock is an excellent allows the device to unlock the door from
solution to commonly encountered anywhere. [5]
problems. [3]
● RFID Based Access Control System
● Knock-Pattern Using Arduino and GSM In the recommended system, a
Communication magnetic door lock is controlled by an RFID
This technique uses a 'Secret reader, which starts the authentication and
Knocking Pattern,' which is only known by validation of the user or, in other words,
the owner of the safe, luggage, or other regulates access. Furthermore, the systems
object or item on which the device is keep track of each user's access and exit
installed. The knocking pattern must be records via a log report for each access. To
applied only at a certain spot known only to avoid unforeseen occurrences, the
the owner for the lock to open. Only when administrator of the central subsystem can
the secret knock has been unlocked can the revoke any user's validity at any time. [6]
3
is to implement a door-locking mechanism ATmega328P. It has 14 digital input/output
that opens or closes the lock on the door pins (of which 6 can be used as PWM
automatically with password. outputs), 6 analog inputs, a 16 MHz ceramic
resonator, a USB connection, a power jack,
Case 1: The lock will open and close
an ICSP header and a reset button. It
When a password is entered via contains everything needed to support the
keypad, the system checks the password and microcontroller; simply connect it to a
finds out if it is right or wrong. If the computer with a USB cable or power it with
password matches with the stored password an AC-to-DC adapter or battery to get
in the microcontroller chip, the started. You can tinker with your UNO
microcontroller sends the signal to the LCD without worrying too much about doing
display for showing “The door is open” as something wrong, worst case scenario you
well as the microcontroller sends the signal can replace the chip for a few dollars and
to Servo Motor. Then the motor is rotated by start over again.
0° to 180° and opens the lock, allowing the
door to be unlocked. Later, by pressing ‘#’
button, the Servo motor is rotated again by
180° to 0° closing the door.
Case 2: The lock will not open
If the wrong password is entered, the
system shows “Password doesn’t match –
Please try again” and Servo Motor is not
rotated. A bit of time the system
automatically starts again from the
beginning.
4
micro-controller into a more accessible values arrays store that information. The
package. [7][8] rows array will be used to tell the keypad
library that the top row is connected to P7,
4×4 Matrix Keypad:
the second row to P6 and so on. Likewise,
This 4x4 matrix keypad has 16
the cols array lists the leftmost column as
built-in push button contacts connected to
connected to P3, the next over connected to
row and column lines. A microcontroller
P2 and so on.
can scan these lines for a button-pressed
state. In the keypad library, the Propeller The values array stores the value we want
sets all the column lines to input, and all the the program to give us for each button press.
row lines to input. Then, it picks a row and For example, if the top-left button is
sets it high. After that, it checks the column pressed, we want the number 1, and if the
lines one at a time. If the column next one is pressed, we want the number
connection stays low, the button on the row two. If the top right button is pressed, we
has not been pressed. If it goes high, the want the ASCII code for the 'A' character,
microcontroller knows which row (the one it which is 65. [9]
set high), and which column, (the one that
SG90 Micro Servo Motor:
was detected high when checked). See the
Micro Servo Motor SG90 is a tiny
schematic in the "Circuit" section, above, for
and lightweight servo motor with high
a visual reference of the keypad layout.
output power. Servo can rotate
approximately 180 degrees, and works just
5
places. It comes with 3 horns (arms) and The measuring instrument called a
hardware. [10] potentiometer is essentially a voltage divider
used for measuring electric potential
(voltage); the component is an
implementation of the same principle, hence
16×2 LCD Display:
its name. Potentiometers are commonly
The term LCD stands for liquid
used to control electrical devices such as
crystal display. It is one kind of electronic
volume controls on audio equipment.
display module used in an extensive range
of applications like various circuits & Potentiometers operated by a mechanism
devices like mobile phones, calculators, can be used as position transducers, for
computers, TV sets, etc. These displays are example, in a joystick. Potentiometers are
mainly preferred for multi-segment rarely used to directly control significant
light-emitting diodes and seven segments. power (more than a watt), since the power
The main benefits of using this module are dissipated in the potentiometer would be
inexpensive; simply programmable, comparable to the power in the controlled
animations, and there are no limitations for load. [11]
displaying custom characters, special and
even animations, etc. [11]
D. Implementation
Figure 4: 16x2 LCD Display At first, the keypad was connected
with the Arduino UNO. We connected all
10K Ohm Potentiometer: the necessary pins of the Keypad to the
A potentiometer is a three-terminal Arduino board. All 7 pins were connected
resistor with a sliding or rotating contact that using connecting wires.
forms an adjustable voltage divider. If only
two terminals are used, one end and the Then we connected a 16×2 LCD Display to
wiper, it acts as a variable resistor or Arduino UNO. And also a 10K Ohm
rheostat. Potentiometer connected to the display for
managing the voltage of the display. This
6
allowed us to view the inserted values and #include <Servo.h>
Later we connected Servo Motor to the LiquidCrystal lcd(A0, A1, A2, A3, A4, A5);
Arduino, the rotation of Servo Motor allows
#define Password_Lenght 5
us to open or close the door. All the pins int pos = 0;
were connected wires.
char Data[Password_Lenght];
char Master[Password_Lenght] = "3975";
byte data_count = 0, master_count = 0;
bool Pass_is_good;
char customKey;
const byte ROWS = 4;
const byte COLS = 3;
char keys[ROWS][COLS] = {
{'1', '2', '3'},
{'4', '5', '6'},
{'7', '8', '9'},
{'*', '0', '#'}
};
Figure 6: Connected Figure 7: Potentiometer,
Keypad with Arduino UNO LCD display, Servo Motor, bool door = true;
and Arduino UNO
connection byte rowPins[ROWS] = {1, 2, 3, 4};
byte colPins[COLS] = {5, 6, 7};
E. Test Experimental Setup
We implemented our Test Keypad customKeypad( makeKeymap(keys),
rowPins, colPins, ROWS, COLS);
Experimental Setup on WOKWI web
application; A virtual electronic design //////////////////////////////////////////
//////////////////////////////////////////
void loop() {
if (door == 0) {
customKey = customKeypad.getKey();
if (customKey == '#') {
Figure 8: Full Circuit Diagram on WOKWI Simulation lcd.clear();
ServoClose();
lcd.print(" DOOR IS CLOSED");
Source Code: delay(3000);
door = 1;
#include <Keypad.h>
}
#include <LiquidCrystal.h>
}
7
else Open(); if (data_count == Password_Lenght - 1)
} {
if (!strcmp(Data, Master)) {
lcd.clear();
////////////////////////////////////////// ServoOpen();
lcd.print(" DOOR IS OPEN");
delay(2000);
void clearData() { lcd.clear();
while (data_count != 0) { lcd.print("PRESS # TO CLOSE");
Data[data_count--] = 0; lcd.setCursor(0, 1);
} lcd.print("THE DOOR");
return; door = 0;
} }
else {
////////////////////////////////////////// lcd.clear();
lcd.print(" WRONG PASSWORD!");
delay(2000);
void ServoOpen() { lcd.clear();
for (pos = 180; pos >= 0; pos -= 5) { lcd.print(" PLEASE");
myservo.write(pos); lcd.setCursor(0, 1);
delay(15); lcd.print(" TRY AGAIN");
} delay(2000);
} lcd.clear();
door = 1;
}
////////////////////////////////////////// clearData();
}
}
void ServoClose() {
for (pos = 0; pos <= 180; pos += 5) {
myservo.write(pos); F. Cost Analysis
delay(15);
} The estimated cost of our project is given
}
below (Approximately).
8
IV. RESULT
Figure 9: Welcoming Figure 10: Instructed to enter Figure 11: When the Figure 12: Instructed to press
Message when the systems the password password matches, shows ‘#’ to close the door
is started the message “DOOR IS
OPEN” and Servo motor is
rotated by 180°
Figure 13: After pressing #, Figure 14: Shows the Figure 15: Instructed to try Figure 16: Applied all things
shows the message “DOOR message “WRONG again by creating the home in real
IS CLOSED” and Servo Motor PASSWORD!” when wrong life
is 180° reversely rotated password is entered
V. CONCLUSION
As a result, the "Smart Door Locking that it can be implemented. Because the
System utilizing Arduino" is a modern take Arduino UNO microcontroller is used in this
on the traditional door lock. The innovation project, the design is simple, and the project
generated by the lock system with no more may be completed in less time than with
direct touch between the user and the lock is other techniques. A safe locking/unlocking
the end of the topic of smart Lock utilizing system based on a keypad and Arduino is
Arduino. This method is both inexpensive proposed in this paper. Adding a password
and simple to set up. Finally, it was revealed on the Arduino side improves the security of
that the project performed as expected and the system.
VI. REFERENCES
[1] “A PROJECT REPORT ON “Smart _Door_Locking_System_Using_Ard
Door Locking System Using uino_?fbclid=IwAR1dEjuoBFgxhrkJ
Arduino” | Fahim Faisal – ByyGUk-6oonfPK_seTUhO-IdEfH3
Academia.edu” [Online] uziKc3OV4zP3USc (Accessed: Jun
https://www.academia.edu/63402211 5, 2022)
/A_PROJECT_REPORT_ON_Smart
9
View publication stats
[2] M. Shanthini, G. Vidya, and R. Arun, Lazima & Karim, Md & Hossain,
“IoT Enhanced Smart Door Locking Md. (2015). Development of an
System,” 2020 RFID Based Access Control System
Third International Conference on in the Context of Bangladesh.
Smart System and Inventive 10.1109/ICIIECS.2015.7193024.
Technology (ICCSIT), 2020, pp.
92-96, doi: [7] “Arduino Uno – Wikipedia”
10.1109/ICSSIT48917.2020.921428 [Online],
8. https://en.wikipedia.org/wiki/Arduin
o_Uno (Accessed: Jun 8, 2022)
[3] [PDF] Ajinkya Kawale (2015)
“Fingerprint based locking system,” [8] “UNO R3 | Arduino Documentation”
https://www.ijser.org/researchpaper/f [Online],
ingerprint-based-locking-system.pdf https://docs.arduino.cc/hardware/uno
(Accessed: Jun 7, 2022) -rev3 (Accessed: Jun 8, 2022)
[4] Alon, Alvin & Casuat, Cherry & [9] “Read 4×4 keyboard” [Online],
Malbog, Mon Arjay & https://learn.parallax.com/tutorials/la
Nicolas-Mindoro, Jennalyn. (2020). nguage/propeller-c/propeller-c-simpl
SmaCk: Smart Knock Security e-devices/read-4x4-matrix-keypad
Drawer Based on Knock-Pattern (Accessed: Jun 8, 2022)
using Piezo-electric Effect.
10.30534/ijeter/2020/16822020.
[10] “Micro Servo Motor SG90”
[5] Aree, Marwa. (2019). A Keyless [Online],
Entry System Based on Arduino https://www.tertiaryrobotics.com/mic
Board with Wi-Fi Technology. ro-servo-motor-sg90.html (Accessed:
Measurement. 139. Jun 9, 2022)
10.1016/j.measurement.2019.02.028.
[11] “Potentiometer – Wikipedia”
[6] Shafin, Kishwar & Kabir, Kazi [Online],
Lutful & Hasan, Nazmul & Mouri, https://en.wikipedia.org/wiki/Potenti
Israt & Islam, Samina & Ansari, ometer (Accessed: Jun 8, 2022)
10