Automatic Door Lock System

Team members:
 * 1) Anand K. Parmar
 * 2) Mani K. Srivastava
 * 3) M.R.Srinath
 * 4) Shiva Verma

Executive Summary

 * The goal of this project is to build a Door Lock System such that the knock pattern acts as a key to it.
 * The system will get activated and door will be opened only until a specific pattern is detected by the system.
 * The knock pattern is alterable, means user can set it according to their wish.
 * Video: Click here
 * Code: Click here

Electrical Components
They are many components used in our project but the key role was of servo motor (HK15178).
 * Servo Motor HK15178

The other main component was the piezo sensor which is used as the knock detector in our project.
 * Peizo Sensor

Rest of the components which we have also used


 * PCB Board
 * Wires
 * Arduino
 * 2 Led's (green & Red)
 * Momentary Push Button
 * Permanent Push Button
 * 4 resistors

Hardware Components
we have used only some of the hardware components like
 * Cardboard's
 * Polystyrene
 * Double sided tape

Electrical Hardware
A BeagleBone is the bread and butter of the project, driving the entire effort but suddenly due to some issues and overload on beagle we have shifted to Arduino.

To drive all the components correctly we have started with Arduino and some PCB boards.

Here are some of the Pictures where we can show the boards and wiring of the components which we have mentioned above about the components.

Installation Instructions



 * Make the circuit as shown in figure.

User Instructions

 * 1) Press the Permanent Push Button and give knock sequence to piezo-electric sensor for setting a new secret knock pattern.
 * 2) Now, provide the knock sequence with permanent push button's state turned off. If pattern matches, the door will be unlocked, otherwise it wont.
 * 3) For locking the door while being inside, press the momentary push-button.

Note: The system can detect 21 knocks at max with maximum time difference between two consecutive knocks to be 1.2 seconds.

Highlights

 * 1) Initially, the work was done on both Arduino and Beaglebone, but due to some technical issues, the final system uses Arduino only.
 * 2) The system can also be integrated with an Android Application, which will command the system for either locking or unlocking.

Theory of Operation
The operation is done in both ways
 * Initially we have set up the pattern of the lock upto 4 knocks
 * Next when ever any person is inside the room or entered the door then he is given access to change the pattern.
 * So for changing the pattern he is provided with a switch by pressing the switch a LED glows and now we can change the pattern
 * but while recording the new pattern the algorithm which we have written can store upto 21 knocks max.
 * The power for this entire system is generated by a power bank provided.
 * So whenever the person moves out of the room then he can also lock the door with the pattern which he is newly recorded.

Work Breakdown

 * Gathering the Components and configuring it accordingly by Mani Kumar and M.R.Srinath
 * The circuit part was handled by Anand K. Parmar and Shiva Verma.
 * The algorithm was designed by Mani Kumar and Anand K. Parmar.
 * Merging together and designing work was handled by M.R. Srinath and Shiva Verma.

Future Work

 * Integrating the system with an Android Application.
 * Making the system more secure by incorporating eye scanner, thumb print or knuckle print scanner for reliable functioning.
 * Taking the picture of the person whosoever is setting the new secret knock pattern and sending it to the administrator.

Conclusions

 * We'd like to thank Professor Dr Mark A. Yoder for providing us with this course were we have put in our efforts in making this project with all the   required assignments and also the assessments of Dr Anil Kumar in bringing this course.
 * We have learned the limits of the onboard I2C interface, making control of all 32 channels impractical. In addition to this we have also learned the specification of some sensors and some hands on work in JavaScript and also how proper collaboration of components is done.
 * Overall the course content was good and also helped us in learning some good stuff and had nice time with an experienced person.