ARDUINO KEYPAD LOCK SECURITY SYSTEM WITH SERVO MOTOR
ARDUINO:
Arduino is Basic system which is used for the controlling various system that does lots of work.The arduino develope in 2003,the arduino is basically a microcontroling unit the code return in the form 8 bit ,32 bit which is return in the language of C and C++`The RAM in arduino is SRAM.
KEYPAD LOCK:
A Keypad Lock is the microcontrolled Security System in which it can be controlled which is contolled by the keypad which is 4*4 matrix and we could be secured with that.Here is the simple project with that we can do the keypad security system.
WIRING DIAGRAM:
PROCEDURE:
Connect the keypad 4*4 matrix to the arduino as shown in the wiring diagram.Then as the same connect the buzzer,leds,servo as shown in the wiring diagram.Then upload the code from below,copy the code and paste in the arduino and just compile it and upload it.The circuit works.
SOURCE CODE:
//NBSL Commercial
#include <Password.h> //http://playground.arduino.cc/uploads/Code/Password.zip
#include <Keypad.h> //http://www.arduino.cc/playground/uploads/Code/Keypad.zip
#include <Servo.h> //tells to use servo library
#include <Password.h> //http://playground.arduino.cc/uploads/Code/Password.zip
#include <Keypad.h> //http://www.arduino.cc/playground/uploads/Code/Keypad.zip
#include <Servo.h> //tells to use servo library
Servo myservo; //declares servo
Password password = Password( "1234" ); //password to unlock, can be changed
const byte ROWS = 4; // Four rows
const byte COLS = 4; // columns
// Define the Keymap
char keys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'*','0','#'}
};
// Connect keypad ROW0, ROW1, ROW2 and ROW3 to these Arduino pins.
byte rowPins[ROWS] = { 9, 8, 7, 6 };// Connect keypad COL0, COL1 and COL2 to these Arduino pins.
byte colPins[COLS] = { 5, 4, 3 };
const byte COLS = 4; // columns
// Define the Keymap
char keys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'*','0','#'}
};
// Connect keypad ROW0, ROW1, ROW2 and ROW3 to these Arduino pins.
byte rowPins[ROWS] = { 9, 8, 7, 6 };// Connect keypad COL0, COL1 and COL2 to these Arduino pins.
byte colPins[COLS] = { 5, 4, 3 };
// Create the Keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
void setup(){
Serial.begin(9600);
Serial.write(254);
Serial.write(0x01);
delay(200);
pinMode(11, OUTPUT); //green light
pinMode(12, OUTPUT); //red light
pinMode(1, OUTPUT); //buzzer
myservo.attach(13); //servo on digital pin 9 //servo
keypad.addEventListener(keypadEvent); //add an event listener for this keypad
}
Serial.begin(9600);
Serial.write(254);
Serial.write(0x01);
delay(200);
pinMode(11, OUTPUT); //green light
pinMode(12, OUTPUT); //red light
pinMode(1, OUTPUT); //buzzer
myservo.attach(13); //servo on digital pin 9 //servo
keypad.addEventListener(keypadEvent); //add an event listener for this keypad
}
void loop(){
keypad.getKey();
myservo.write(0);
}
void keypadEvent(KeypadEvent eKey){
switch (keypad.getState()){
case PRESSED:
Serial.print("Enter:");
Serial.println(eKey);
delay(10);
Serial.write(254);
switch (eKey){
case '*': checkPassword(); delay(1); break;
case '#': password.reset(); delay(1); break;
default: password.append(eKey); delay(1);
}
}
}
void checkPassword(){
if (password.evaluate()){
Serial.println("Accepted");
Serial.write(254);delay(10);
myservo.write(150); //deg
digitalWrite(11, HIGH);
delay(5000);
digitalWrite(11, LOW);
}else{
Serial.println("Denied");
Serial.write(254);delay(10);
myservo.write(0);
digitalWrite(12, HIGH);
delay(500);
digitalWrite(12, LOW);
digitalWrite (1, HIGH);
delay (500);
digitalWrite (1, LOW);
delay (500);
digitalWrite (1, HIGH);
delay (500);
digitalWrite (1, LOW);
delay (500);
digitalWrite (1, HIGH);
delay (500);
digitalWrite (1, LOW);
}
}
keypad.getKey();
myservo.write(0);
}
void keypadEvent(KeypadEvent eKey){
switch (keypad.getState()){
case PRESSED:
Serial.print("Enter:");
Serial.println(eKey);
delay(10);
Serial.write(254);
switch (eKey){
case '*': checkPassword(); delay(1); break;
case '#': password.reset(); delay(1); break;
default: password.append(eKey); delay(1);
}
}
}
void checkPassword(){
if (password.evaluate()){
Serial.println("Accepted");
Serial.write(254);delay(10);
myservo.write(150); //deg
digitalWrite(11, HIGH);
delay(5000);
digitalWrite(11, LOW);
}else{
Serial.println("Denied");
Serial.write(254);delay(10);
myservo.write(0);
digitalWrite(12, HIGH);
delay(500);
digitalWrite(12, LOW);
digitalWrite (1, HIGH);
delay (500);
digitalWrite (1, LOW);
delay (500);
digitalWrite (1, HIGH);
delay (500);
digitalWrite (1, LOW);
delay (500);
digitalWrite (1, HIGH);
delay (500);
digitalWrite (1, LOW);
}
}
This comment has been removed by a blog administrator.
ReplyDelete