Arduino Projects
RC522 RFID And GSM Based Attendance System
RFID And GSM Based Attendance System Using Arduino
Introduction
- In this article, we create an attendance system using the RC522 RFID module and GSM technology. This system will allow you to efficiently track attendance in various settings such as schools, and offices.
- Here we used RFID technology with the Arduino platform, we can easily identify and record attendance data, and send SMS to parents using GSM in real-time. Let’s use the components and make the step-by-step to build this attendance system.
Components Required
S.N | Components | Quantity |
1 | Arduino Nano | 1 |
2 | RC-522 RFID Module | 1 |
3 | 16×2 LCD Display with I2C | 1 |
4 | GSM Module (SIM900a) | 1 |
5 | RED LED | 1 |
6 | GREEN LED | 1 |
7 | Zero PCB | 1 |
8 | USB cable (for programming the Arduino) | 1 |
Arduino Nano
- The Arduino Nano is a compact size microcontroller board based on the ATmega328P IC. It is part of the Arduino family of development boards with the popular Arduino environment. However, the Nano is small in size and has a total of 14 digital pins and a total of 8 analog pins available and also supports UART, SPI, and I2C Ā Communication.
ATmega328P microcontroller
- The clock speed of 16 MHz.
- The flash is memory 32KB for storing the program code
- The SRAM for 2KB of data storage
- The EEPROM of 1KB for non-volatile storage.
- The digital and analog input/output pins can be used to interface with sensors, actuators, and other electronic components. It totals 14 digital I/O pins & 8 analog input pins.
RC-522 RFID Module
- RC522 – RFID Reader / Writer 13.56MHz with Cards Kit includes a 13.56MHz RF reader cum writer module that uses an RC522 IC and two S50 RFID cards.
- The MF RC522 is a highly integrated transmission module for contactless communication at 13.56 MHz. RC522 supports ISO 14443A/MIFARE mode.
Key Features
- Operating Frequency: The RC522 module operates at a frequency of 13.56 MHz, which is the standard frequency for many RFID systems.
- SPI Interface: The RC522 module communicates with a microcontroller (such as Arduino) using the Serial Peripheral Interface (SPI) protocol.
RFID TAG
-
- The RC522 RFID tag, also known as an RFID card or transponder, is a small electronic device that contains a unique identification number or data. It is designed to be read by an RFID reader, such as the RC522 module, which uses radio frequency signals to communicate with the tag.
- Unique Identification- Each RC522 RFID tag has a unique identification number, which is typically pre-programmed to the tag during manufacturing.
GSM SIM900A
The SIM900 GSM/GPRS module is a versatile communication module that allows devices to connect to the Global System for Mobile Communications (GSM) network and transmit data over the General Packet Radio Service (GPRS).
Key Features
- The module offers various communication interfaces to interact with external devices. It typically includes UART (Universal Asynchronous Receiver-Transmitter) for serial communication with microcontrollers like Arduino.
16×2 LCD Display
- A 16Ć2 LCDĀ is a liquid crystal display that can display 16 characters in two rows.
- The ā16Ć2ā notation indicates the number of character positions available on the display.
- The I2C (Inter-Integrated Circuit) interface is a communication protocol that allows for easy and efficient communication between microcontrollers and peripheral devices.
When an LCD is connected using the I2C interface, it typically requires fewer pins compared to a direct parallel connection, making it more convenient for projects with limited available pins on the microcontroller.
- I2C Interface: The I2C interface uses a master-slave communication protocol.
Circuit Diagram
Source CodeĀ
- Upload the code to the Arduino Nano using the Arduino IDE.
- Test the system by scanning RFID tags and verifying if the attendance information is displayed on the LCD.
Necessary library
Now upload the code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
//Prateek //www.justdoelectronics.com #include <SPI.h> #include <MFRC522.h> #include <SoftwareSerial.h> #include <Wire.h> #include <DS3231.h> #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27, 16, 2); SoftwareSerial sim(2, 3); DS3231 rtc(SDA, SCL); const int checkInHour = 11; const int checkInMinute = 50; int userCheckInHour; int userCheckInMinute; String number = "+91xxxxxxxxxx"; String number1 = "+91xxxxxxxxxx"; String number2 = "+91xxxxxxxxxx"; String number3 = "+91xxxxxxxxxx"; String number4 = "+91xxxxxxxxxx"; int state1 = 0; int state2 = 0; int state3 = 0; int state4 = 0; int state5 = 0; #define buzzerPin A1 #define yellow 5 #define green 6 #define RST_PIN 4 #define SDA_PIN 10 MFRC522 mfrc522(SDA_PIN, RST_PIN); void setup() { lcd.init(); lcd.backlight(); lcd.setCursor(0, 0); Serial.begin(9600); sim.begin(9600); SPI.begin(); mfrc522.PCD_Init(); rtc.begin(); pinMode(buzzerPin, OUTPUT); pinMode(yellow, OUTPUT); pinMode(green, OUTPUT); lcd.setCursor(0, 0); lcd.print(" WELCOME "); lcd.setCursor(0, 1); lcd.print("TO OUR PROJECT"); delay(4000); lcd.clear(); } void loop() { RTC(); rfid(); } |
Project Demo
Video
More Arduino Tutorial
- Soil Moisture Sensor With Arduino
- DS18B20 Sensor With Arduino
- Water Level Sensor With Arduino
- Rain Sensor With Arduino
- BMP-180 Sensor With ArduinoĀ
Conclusion
- By combining the power of the RC522 RFID module, 16×2 LCD, Arduino Nano, and GSM technology, we have created an efficient attendance system capable of real-time monitoring. This system provides accurate attendance data that can be used for various applications.
How to do this and I don’t know how to code this.please reply to me and also make a video by doing it step by step. Please make a detailed video.