A
DISSERTATION
ON
“SMART DOOR LOCK SYSTEM”
In The Fulfillment of Diploma Engineering Submitted By
Rahul Mahadani (D222302899) Souvik Nandi (D222302894)
Rachit Kumar (D222328961) Subhadeep Panja (D222302895)
Priyanka kumari (D222328971) Suman Bagdi (D222328976)
Partha chand (D222328974) Sumit Kumar (D222328974)
Rakhi Saroj (D222302904) Sujal Paul (D222302911)
Suruti Kumari (D222328970) Shristi Dubey (D222328968)
Papu Gosh (D222328973) Ritika Mukutmoni (D222328962)
Ronojeet Mondal (D222302905) Soumyjit Dey (D222302907)
UNDER THE SUPER-VISION OF
<Ms.Swagata Panchadhayayayee>
(Designation), BCP
BENGAL COLLEGE OF POLYTECHNIC, DURGAPUR
Sahid Sukumar Banerjee Sarani, Bidhannagar,
Durgapur-713212
West Bengal
BENGAL COLLEGE OF POLYTECHNIC
Approved by AICTE, New Delhi and affiliated to WBSCT&VE&SD,Kolkata
CERTIFICATE OF ACCEPTANCE OF EVALUATION
COMMITTEE
The dissertation entitled “ Smar door lock system” has been prepared and submitted
by<Rahul Mahadani,Rachit Kumar,Priyanka Kumari, Partha Chand,Rakhi Saroj,Suruti Kumari
Mistri,PapuGosh,Ronojeet Mondal,Souvik Nandi,Subhadeep Panja,Suman Bagadi,Sumit Kumar,Sujal
Paul,Shristi Dubey,Ritika Mukutmoni,Soumyjit Dey> from department of Computer science and technology
in partial fulfillment of the requirement for the award of degree of diploma in Computer science and technology
at BENGAL COLLEGE OF POLYTECHNIC, Durgapur and is here by accepted for the award of degree.
Name and Designation Evaluation Signature
MR. MANISH KUMAR Satisfactory/Not satisfactory
Principal
BCP, Durgapur _____ _ _ _ _ _ _
MR. KIRAN JASH Satisfactory/Not satisfactory
H.O.D
Dept. of Computer Science and Technology
BCP, Durgapur ____ _ _ _ _ _
MR. SUBHANKAR DUTTA Satisfactory/Not satisfactory
Project Co-ordinator
Lecturer
Dept. of Computer Science and Technology
BCP, Durgapur ____ _ _ _ _ _
(Ms.swagata Panchadhayayee) Satisfactory/Not satisfactory
Lecturer
Dept. of Computer Science and Technology
BCP, Durgapur
The dissertation has been examined by the evaluation committee and found acceptable.
BENGAL COLLEGE OF POLYTECHNIC
Approved by AICTE, New Delhi and affiliated to WBSCT&VE&SD,Kolkata
SELF ATTESTED
This is to certify that we have ourselves worked on the dissertation untitled “Smart door lock
system”. This result mentioned in the reports has been generated during the work and analyses are
genuine. It is the result of extensive work carried out by us. The data and information obtained from
other agencies has been dully acknowledged. The report and result submitted forward of the
Diploma and Computer science and technology is a research is a work carried out by us. The
dissertation has not been submitted for the award of diploma in any other university.
Date:30/05/2024 Participate Candidate
Place- Durgapur (Rachit Kumar)
i
ABSTRACT
This project presents the design and implementation of a Smart Door Lock
System using Arduino and Bluetooth technology.
The primary objective is to enhance home security by providing a reliable
and user-friendly locking mechanism. The system integrates an Arduino
microcontroller with a Bluetooth module to enable wireless control of the
door lock.The Smart Door Lock System operates by receiving signals
from a smartphone application via Bluetooth.
Users can lock or unlock the door remotely by sending commands from
their mobile devices. The system is designed to offer high security, ease
of use, and cost-effectiveness, making it suitable for residential
application.
ii
ACKNOWLEDGEMENT
We deem it a privilege to have been the student of BENGAL COLLEGE OF POLYTECHNIC,
DURGAPUR Department of Computer science and technology. We are grateful to our advisor
Mr./Ms. <Swagata Panchadhayayee>, Lecturer, department of COMPUTER SCIENCE AND
TECHNOLOGY, for introducing us to this topic, his kind support, guidance, and encouragement
throughout the dissertation work.
We would also take this opportunity to express our gratitude and sincere thanks to our
Principal MR. MANISH KUMAR, Bengal College Of Polytechnic and MR. KIRAN JASH, HOD
Of Computer science and technology Department for his invaluable advice, encouragement,
aspiration and blessing.
We would like to take chance to express our appreciation to our family member for constant
prayer support and inspirational encouragements and moral supports which enables us to pursue our
studies. Their continuous love and support gave us strength to pursuing our dream. Special thanks
to our friend and other members of the department for being so supportive and helpful in every
possible way. We are very thankful to our entire faculty and staff members of Computer Science
and Technology, Bengal College of polytechnic, and Durgapur for their direct and indirect help
and co-operation.
Best Regards to All of You!
_Rachit Kumar__ _ _ _ _ _
_ __Student Signature
iii
CONTENTS
TABLE OF CONTENTS
1. Introduction
1.1 Project Detail
1.2 Purpose
1.3 Detail
2. Project Management
2.1 Feasibility Study
2.1.1 Technical Feasibility
2.1.2 Implementation Feasibility
3. General Descriptions
3.1. Software Used
3.2. Hardware Used
3.3. Milestone Achived
3.4. Roles
4. Specific Functional Requirement
1. Design
1.1. Use Case Diagram
1.2. Activity Diagram
1.3. Sequence Diagram
2. Implementation
6.1.Component Diagram
6.2.Circuit Pin diagram
6.3.Hardware Implimentation
6.4.Software Implimentation
7.Testing
7.1. Testing Stretegy
7.2. Testing Method
8.Screenshot
9.Conclusion
10.Limition and Future Extension
11.Bibliography And Reference
iv
1. INTRODUCTION
1.1 Project Details
Figure : Block Diagram
Smart Door Lock System would be working with combination communication between
hardware Lock Mechanism andSoftware Android application on the basis of correctness
of password to open & close the door lock.
1.2 Purpose
The purpose of this document is to specify the detailed description of the Smart Door Lock
System that will be designedand implemented. This document will explain the purpose
and features of the system, the functionality of the system and its constraints.
1.3 Scope
The Goal of this system is to develop a Smart Door Lock SystemHardware and Android
Application. Door Lock System would be working on communicating via Android app.
Application would be giving commands to System and it wouldwork accordingly.
v
2. PROJECT MANAGEMENT
2.1 Feasibility Study
2.1.1 Technical Feasibility
For running of our code and algorithm for checking the correct
password and performing related Door Locking andUnlocking tasks we
here be using Arduino UNO board as microcontroller.
The main reason behind using Arduino is it is open source programmable
microcontroller and has many different attachable i/o ports and pins.
For our task we need some around 16Mhz of CPU which is available in
Uno board.
We also have different alternatives boards like Arduino Micro which has
high number of i/o pins which we do not need a lot in numbers, also it has
32 Kb which is same as Arduino UNO but bootloader uses 4Kb while in
case of Arduino UNO it also has 32Kb but its bootloader uses only 0.5Kb
so we get more space for other purposes.
Also when we go to compare with Arduino Mega withArduino UNO we
can conclude that Arduino Mega has so many i/o pins and 256Kb of Space
which is totally useless forour task.
In comparison to price also Arduino UNO is cheaper than Arduino Micro
and Arduino Mega.
For smartphone app development we choose Android platform as Android
is opensource and is great in todays’ market.
vi
.
2.1.2 Implementation Feasibility
We choose Bluetooth connectivity rather than wifi chipbecause of its cost
efficiency and its less use of range.
On considering the success rate of our Algorithm to fulfill our task we have made a
logical algorithm for checking thecorrect stored password with the input from
Android Phonevia Bluetooth sensor would be implemented using Motor Driver
Lock Mechanism.
Lock Mechanism we would be keeping mainly based on Motor driving. As moving
the locking part to and fro wouldbe easy using motor as displacing mechanism with
gears and racks.
vii
3. GENERAL DESCRIPTION
3.1 Software Used
Arduino IDE: Arduino IDE is open source IDE software usedfor making
Arduino board programs and sending them to Arduino board via USB port.
Android Studio: Android Studio is open source IDE software used for
making Android Smartphone applications and helps indebugging them too.
Notepad++: Notepad++ is a free source code editor which supports
several programming languages running under the MS Windows
environment.
OpenOffice: OpenOffice an open source document editor office suite.
Writer a component of openoffice helps to makedocument file.
3.2 Hardware Used
ArduinoUNO: Arduino UNO is a microcontroller board basedon
ATMega328P. It has 14 digital I/O pins with 6 analogue inputs, 16 Mhz
Quartz Crystal, a USB connection.
It contains everything needed to support the microcontroller. Bluetooth
Module (HC - 05): HC-05 module is an easy to useBluetooth SPP (Serial
Port Protocol) module, designed for transparent wireless serial connection
setup. Serial port Bluetooth module is fully qualified Bluetooth V2.0+EDR
(Enhanced Data Rate) 3Mbps Modulation with complete 2.4GHz radio
transceiver and baseband.
Motor Driver IC L293D: A motor driver IC is an integrated circuit chip
which is usually used to control motors in autonomous robots. Motor driver
ICs act as an interface between microprocessors in robots and the motors in
the robot.
viii
Here we would be using most commonly used IC L239D forDC motor to rotate in
either direction.
Low RPM Motor: Low RPM Motor for getting out displacement of rack a little
slower as lock mechanism wouldbe needing only very few milliseconds of motor
rotations.
Power Supply: 5V DC Power Supply needed for L293D circuit board and Arduino
UNO would be given power supplyvia USB cable or Power pin.
3.3 Milestones & Deliverables
No. Milestone Deliverables
1. Feasibility Study Feasible
2. Requirement gathering Specific Functional
Requirements
3. System Design UML Diagrams
4. Arduino Coding Arduino Module
5. Basic Android Coding Basic App
6. GUI Coding Final App
7. Test Cases Working as expected
3.4 Roles
No. Role Name
1. Programmer Pishang Ujeniya
2. Designer Mohib Sorathia
3. Requirement Analyst Pishang Ujeniya
4. Tester Mohib Sorathia
ix
4.SPECIFIC FUNCTIONAL AND REQUIREMENT
2.0 Arduino Kit
2.1 Connectivity
2.0.1 Bluetooth Module to Arduino
Input: Input to Arduino RX TX pin 0, 1 from HC-
05 Bluetooth & Power supply.
Process: Bluetooth Module connects to Arduino.
Output: Emitting of Bluetooth Signals starts.
2.0.2 IC Driver
State: IC L239D Connected to Arduino and
Power Supply.
Input: Logic State to Pins 2, 9 depending upon
Arduino Code.
Process: IC switches according to input.
Output: IC gives output to motor depending
upon logic.
2.0.3 Motor
Input: Positive & Negative input from IC pins 3,
8.
Output: Depending upon the input Motor
Rotates.
x
3.0 Android App
3.0.1 Request Bluetooth ON
Input: Request Android Device for Bluetooth turning
ON.
Process: Connects to System.
Output: Gets Lock Status.
3.0.2 Lock/Unlock
State: Present State of System.
Input: Enter Password and Toggle Lock/UnlockButton.
Process: Sends command and Password to System.
Output: System Locks/Unlocks if Correct Password.
3.0.3 History
Input: Click on History Button
Output: Android App shows History for LockUnlock
Time.
3.0.4 Clear History
Input: Click on Clear History Button
Process: Clears Table Records from Database.
5.DESIGN
5.1 Use Case Diagram
Figure 1 Use Case Diagram
5.2 Activtiy Diagram
Figure 2 Activity Diagram
5.3 Sequence Diagram
Figure 3 Sequence Diagram
6. IMPLEMENTATION
6.1 Circuit Diagram
1
6.2 Component Pin Diagram
Figure 4 Arduino UNO Pin Diagram
Figure 5 Bluetooth Module HC05
2
6.3 Hardware Implementation
Arduino Uno would communicate with Bluetooth module usingTXD and
RXD pin ports.
VCC and GND would be applied for circuit to get power andenabling the
functionality.
The motor operations of either two or one motor/s can be controlled by
input logic at pins 2 & 7 and 10 & 15. Input logic 00 or 11 will stop the
corresponding motor. Logic 01 and10 will rotate it in clockwise and
anticlockwise directions, respectively. 1 & 9 pin for enabling.
The motor ic input logic and enabling input are controlledfrom
Arduino via program depending upon the pins of Arduino which are
connected to L293D IC.
Pin 2 is connected to Lock Mechanism via soldering and theother pin 13
is connected to rack of Lock Mechanism which would be making
displacement horizontally.
When in Locked state the pins 2 and 13 would be connectedeach other
and circuit would be completed which works feedback for getting the
current status of Door Lock systemwhether it is locked or not from
Arduino Code checking thevalues at 2 and 13.
6.4 Software Implementation
Our main software implementation includes androidapplication
development.
Android app development and coding we would be doing in Android Studio
IDE available on Internet free for developers.
In the project we have created 7 activites, namely MainActivitywhich would
be displaying animation of 3 dots as loading flash screen and then would
initiate second activity.
Connect in this activity a button which on click would ask forBluetooth turn
on permission and would enable bluettoth.
BlueList in this activity a textarea which would be displaying
3
to “Select HC – 05” and would display list view with availablepaired Bluetooth device.
GetStatus in this activity a button would be displayed to fetchthe data from Lock
System whether the system is locked or unlocked.
ToLock in this activity their would be displayed a textbox toenter Password and
click Lock button which would send password and command of Locking in singles
string concatenated to Lock System and the Lock system would befetching
password whether it is correct or not and dependingupon it would decide the
function.
ToUnlock this activity is same as ToLock, but in this thecommand is
Unlocking is sent.
History this activity would be rendering a dynamic table with dynamic colourful rows
displaying date and time and task perfomed for Locking or Unlocking. Along with it
would be displaying Clear History button which on click would clear alldatabase table
records.
4
7. TESTING
7.1 Testing Strategy
The development process repeats this testing sub process anumber of lines for the
following phases.
- Unit Testing
- Integration Testing
Unit Testing tests a unit of code after coding of that unit is completed. Integration
Testing tests whether the previous programs that make up a system, interface with
each other as desired. System testing ensures that the system meets its stateddesign
specifications. Acceptance testing is testing by users to ascertain whether the system
developed is a correct implementation of the software requirements specification.
Testing is carried out in such a hierarchical manner to that each component is correct
and the assembly/combination of component is correct. Merely testing a whole system
at end would most likely throw up errors in component that would bevery costly to
trace and fix.
We have performed both Unit Testing and System Testing todetect and fix errors.
7.2 Testing Method
Black-box testing is a method of software testing that examinesthe functionality of an
application without peering into its internal structures or workings. This method of test
can be applied to virtually every level of software testing: unit, integration, system and
acceptance. It typically comprises mostif not all higher level testing, but can also
dominate unit testingas well.
5
8.SCREENSHOT
6
8 CONCLUSION
After applying out best efforts in this project we conclude that by understanding all
module of this project, and mechanisms we can implement a Smart Door Lock System
which would be better in terms of future security and much more user friendly with the
latest advancing generation. We checked the feasibility and requirement for this
System. Then we defined overall look and flow of control among modules in paper.
Afterthis we started actual design of our modules.
All modules of system are developed separately. Then we integrated all modules
by means of control flow among allmodules.
After Coding and integrating of all modules done, whole system was then tested
once again (i.e. Integration Testing).Thus we were able to Lock, Unlock the
locking mechanismusing Bluetooth connectivity from Android application
wirelessly.
10 LIMITATION & FUTURE ENHANCEMENTS
Limitations: User can’t change password.System works in
limited Bluetooth range.
If no inverter set upped in the house, then due to electricitypower loss, system
won’t work.
Future Enhancements: Password can be made changeable.
Whole system would be synchronised through internet frommain servers.
Users would be having their accounts online and can managetheir locking & unlocking
remotely.
11 BIBLIOGRAPHY AND REFERENCES
1. En.Wikipedia.org
2. Arduino Programming Notebook by Brian W. Evans
3. www.TutorialsPoint.com/android/android_bluetooth.htm
www.youtube.com/user/ProgrammingKnowledge