RF-ID DOOR LOCKING SYSTEM
HEY GUYS I CAME UP WITH A NEW REAL TIME PROJECT RF-ID DOOR LOCKING SYSTEM WITH ARDUINO.
THIS PROJECT CAN BE USED IN COLLEGES,SCHOOLS,OFFICE,HOMES,SHOPS ,ETC.
COMPONENTS REQUIRED:-
1. ARDUINO NANO.
2. RFID-RC522 MODULE.
3. RFID TAGS.
4. ZERO PCB.
5. BUZZER.
6. LED'S (GREEN, RED).
7. PUSH BUTTON.
8. FEMALE BERG STRIPE PINS.
9. JUMPER WIRES.
10. 16 X 2 LCD DISPLAY.
CIRCUIT :-
LIBRARY:-
1. RF-ID-MASTER:-
2. DOWNLOAD LIQUID CRYSTAL LIBRARY :-
SOURCE CODE:-
1. DUMPINFO CODE
UPLOAD THIS CODE FOR SCANNING YOU ID CARDS AND TAGS.
#include <SPI.h>
#include <MFRC522.h>
#define RST_PIN 9
#define SS_PIN 10
MFRC522 mfrc522(SS_PIN, RST_PIN);
void setup() {
Serial.begin(9600);
while (!Serial);
SPI.begin();
mfrc522.PCD_Init();
delay(4);
mfrc522.PCD_DumpVersionToSerial();
Serial.println(F("Scan PICC to see UID, SAK, type, and data blocks..."));
}
void loop() {
if ( ! mfrc522.PICC_IsNewCardPresent()) {
return;
}
// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial()) {
return;
}
mfrc522.PICC_DumpToSerial(&(mfrc522.uid));
}
2. 16 X 2 LCD DISPLAY CODE:
THIS CODE IS FOR CHECKING YOUR LCD DISPLAY
//DOWNLOAD LIQUID CRYSTAL LIBRARY https://github.com/arduino-libraries/LiquidCrystal
#include<LiquidCrystal.h>
LiquidCrystal lcd(A0, A1, A2, A3, A4, A5);//(RS, Enable, A2, A3, A4, A5)
void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
}
void loop() {
lcd.setCursor(2,0);
lcd.print("MKINVENTIONS");
lcd.setCursor(0,1);
lcd.print("MADHAN CHIRUGURI");
}
3. RF-ID WITH 16 X 2 LCD DISPLAY CODE:-
UPLOAD THIS CODE FOR COMPLETE RF-ID DOOR LOCKING SYSTEM PROJECT
#include <SPI.h>
#include <MFRC522.h>
#include <Servo.h>
#define SS_PIN 10
#define RST_PIN 9
#define GREEN_LED 3 //define green LED pin
#define RED_LED 4 //define red LED
#define BUZZER 2 //buzzer pin
MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance.
Servo myServo; //define servo name
#include<LiquidCrystal.h>
LiquidCrystal lcd(A0, A1, A2, A3, A4, A5);//(RS, Enable, A2, A3, A4, A5)
void setup()
{
// Specify the LCD's number of columns and rows:
lcd.begin(16, 2);
SPI.begin(); // Initiate SPI bus
mfrc522.PCD_Init(); // Initiate MFRC522
myServo.attach(6); //servo pin
myServo.write(0); //servo start position
pinMode(GREEN_LED, OUTPUT);
pinMode(RED_LED, OUTPUT);
pinMode(BUZZER, OUTPUT);
noTone(BUZZER);
}
void loop() {
lcd.setCursor(0, 0);
lcd.print("PLACE YOUR CARD");
lcd.setCursor(0, 1);
lcd.print("ON THE SCANNER");
// Look for new cards
if ( ! mfrc522.PICC_IsNewCardPresent())
{
return;
}
// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial())
{
return;
}
//Show UID on serial monitor
lcd.print("UID tag :");
String content= "";
byte letter;
for (byte i = 0; i < mfrc522.uid.size; i++)
{
lcd.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
lcd.print(mfrc522.uid.uidByte[i], HEX);
content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "));
content.concat(String(mfrc522.uid.uidByte[i], HEX));
}
lcd.println();
lcd.print("Message : ");
content.toUpperCase();
if (content.substring(1) == "E9 76 8D C2") //RFID TAG
{
lcd.setCursor(0, 0);
lcd.println("Authorised access");
lcd.setCursor(0, 1);
lcd.print("NAME : ");
lcd.println("ALPHA LEO");
delay(500);
digitalWrite(GREEN_LED, HIGH);
tone(BUZZER, 500);
delay(300);
noTone(BUZZER);
myServo.write(30);
delay(5000);
myServo.write(0);
digitalWrite(GREEN_LED, LOW);
lcd.clear();
}
// else if (content.substring(1) == "73 6D 07 03") //RFID CARD
// {
// lcd.setCursor(0, 0);
// lcd.println("Authorised access");
// lcd.setCursor(0, 1);
// lcd.print("NAME : ");
// lcd.println("BETA MAXX");
// delay(500);
// digitalWrite(GREEN_LED, HIGH);
// tone(BUZZER, 500);
// delay(300);
// noTone(BUZZER);
// myServo.write(180);
// delay(5000);
// myServo.write(0);
// digitalWrite(GREEN_LED, LOW);
// lcd.clear();
// }
else {
lcd.setCursor(0, 0);
lcd.println(".ACCESS DENIED.");
lcd.setCursor(0, 1);
lcd.println("...NOO ACCESS...");
digitalWrite(RED_LED, HIGH);
tone(BUZZER, 300);
delay(1000);
digitalWrite(RED_LED, LOW);
noTone(BUZZER);
}
}
Nice project
ReplyDelete