Introduction: Password Protected Door Lock Using Arduino

Picture of Password Protected Door Lock Using Arduino

The project comprises of Arduino mega,a motor, a keypad, a buzzer,lcd, potential meter, red led and green led.After uploading the hex file ,the lcd starts.

Step 1: Welcome Note Prompts You to Enter Password

Picture of Welcome Note Prompts You to Enter Password

The welcome note prompts the user to enter password to unlock door.

Step 2: Validation of Password

Picture of Validation of Password

The user enters the password.When the correct password is entered, the green led lights and the motor rotates thus opening the door.

Step 3: Invalid Password

Picture of Invalid Password

In case the user enters the wrong password, the red led lights and the buzzer sounds. In this case the door does not open.

Step 4: Code

#include <Keypad.h>
#include <LiquidCrystal.h> #include<Wire>

int greenLed=22; int redLed=23; int motorPin=24; int piezoPin=25; char* ourCode="1234"; int currentPosition=0;

const byte rows=4; const byte cols=3;

char keys[rows][cols]={ {'1','2','3'}, {'4','5','6'}, {'7','8','9'}, {'*','0','#'} }; byte rowPins[rows]={13,10,9,8}; byte colPins[cols]={7,6,1}; Keypad keypad=Keypad(makeKeymap(keys),rowPins,colPins,rows,cols); LiquidCrystal Lcd (12,11,5,4,3,2);

void setup() { Lcd.begin(16,2); //lcd.init(); displayCodeEntryScreen(); pinMode(piezoPin,OUTPUT); pinMode(motorPin,OUTPUT); pinMode(redLed,OUTPUT); pinMode(greenLed,OUTPUT); digitalWrite(redLed,LOW); digitalWrite(greenLed,LOW); // put your setup code here, to run once:


void loop() { int l; char key=keypad.getKey(); if(int(key)!=0){ Lcd.setCursor(10,0); Lcd.print(" "); Lcd.setCursor(10,0); for(l=0;l<=currentPosition;++l) {Lcd.print("*");} if(key==ourCode[currentPosition]) { ++ currentPosition; if(currentPosition==4) {unlockDoor(); currentPosition=0; } } else{invalidCode(); currentPosition=0; } } } void invalidCode() { digitalWrite(redLed,HIGH); digitalWrite(motorPin,LOW); digitalWrite(piezoPin,HIGH); clearScreen(); Lcd.setCursor(0,0); Lcd.print("ACCESS DENIED!"); Lcd.setCursor(0,1); Lcd.print("INVALID CODE ");

delay(5000); digitalWrite(redLed,LOW); digitalWrite(piezoPin,LOW);

displayCodeEntryScreen(); } void unlockDoor() { digitalWrite(greenLed,HIGH); clearScreen(); Lcd.setCursor(0,0); Lcd.print(" ACCESS GRANTED "); Lcd.setCursor(0,1); Lcd.print(" WELCOME!! "); digitalWrite(motorPin,HIGH);

delay(5000); digitalWrite(greenLed,LOW); digitalWrite(motorPin,LOW); displayCodeEntryScreen(); } void displayCodeEntryScreen() { clearScreen(); Lcd.setCursor(0,0); Lcd.print("Hallow,welcome"); Lcd.setCursor(0,1); Lcd.print("Enter code"); } void clearScreen() { Lcd.setCursor(0,0); Lcd.print(" "); Lcd.setCursor(0,1); Lcd.print(" "); }

  // put your main code here, to run repeatedly:


BELAID SMAKHOU (author)2016-01-29

i need the programme pleazzzzzzzzzzzzzz

Proteus 8 Professional, I worked that out just looking at the images.

tomatoskins (author)2015-11-16

So cool! I've always wanted to do something like this!

About This Instructable




Add instructable to: