RFID Attendance System Project Report PDF
Document Details
Invertis University, Bareilly
Suhani Mishra
Tags
Related
- Comunicaciones Inalámbricas PDF
- The Future of Contactless Commerce PDF
- Reference Material-Introduction to Operations and Supply Chain Management PDF
- IoT Integrated Student Attendance Monitoring System PDF
- ALP 1 Term 1 2024 Week 8 Direct Data Entry
- An Intelligent Car Park Slot Counter Project Proposal PDF
Summary
This project report details a RFID attendance system, covering project design, components (RFID reader, microcontroller, database), system architecture, and future scope. It aims to provide a summary of the implemented RFID system with details on attendance management and potential integration with cloud services and user feedback.
Full Transcript
PROJECT REPORT CSED INVERTIS UNIVERSITY 2 C E N T E R F O R S K I L L A N D E N T R E P R E N E U R S H I P D E V E L P M E N T ( C S E D ) I N D U S T R I A L I N T E R N E T O F...
PROJECT REPORT CSED INVERTIS UNIVERSITY 2 C E N T E R F O R S K I L L A N D E N T R E P R E N E U R S H I P D E V E L P M E N T ( C S E D ) I N D U S T R I A L I N T E R N E T O F T H I N G S PROGRAM CODE: IIOT-1 PROGRAM NAME: FUNDAMENTALS OF IOT PROJECT NAME: RFID ATTENDANCE SYSTEM SUBMITTED B Y: SUHANI MISHRA (BEE2024003) BTECH SECTION H INDEX Introduction Need of Project Problem Statement Objective of Project Method Challenges and limitation Block Diagram Flowchart Circuit Diagram Program Result & Discussions Photographs of Project Future Scope Conclusion. Reference RADIO FREQUENCY IDENTIFICATION(RFID) ATTENDANCE Introduction : 4 Radio Frequency Identification (RFID) is the wireless non-contact use of radiofrequency waves to transfer data. Readers, also called interrogators, are devices that transmit and receive radio waves in order to communicate with RFID tags. RFID is the use of radio waves to read and capture information stored on a tag attached to an object, providing a unique identifier for an object. RFID Technology is used in many industries and in a wide variety of applications as it can deliver a number of benefits for organisations Automated Attendance Enhanc Tracking e Real time NEED securit data OF y REDUC E Ability to PROJECT analyze MANU attendanc e patterns AL and Data trends. Automati EFFOR c analytics T update PROBLEM STATEMENT Securit y Inefficiency Data in Manual attendance analytics Authenticati Verificatio on n METHOD 1. System Design - Objective: The primary objective is to design a system that records attendance automatically by reading RFID cards/tags. - Components Involved: - RFID Tags/Cards: Each person (student, employee, etc.) is assigned a unique RFID tag/card containing an ID number. - RFID Reader: The device used to scan the RFID cards. It can be a fixed reader at the entrance or a portable installed one. - Microcontroller/Processing Unit: A controller (ESP8266) that processes the data from the RFID reader. - Database: A centralized system for storing attendance data. It could be a local (SQL, database MySQL) or cloud-based storage. - Software Interface: An application or web-based interface for administrators to manage view and attendance data. - Optional: A real-time clock (RTC) module to track timestamps of the attendance. 2. RFID Tag and Reader Setup - Tag Assignment: Assign each individual (e.g., student, employee) an RFID tag with identifier a unique (UID). - Reader Installation: Set up RFID readers at the designated entry points, such as ordoorways gates, where individuals will scan their - tags. Tag Registration: Pre-load the unique RFID IDs into the system’s database along with associated information (e.g., name, department, - Ensure etc.). the reader is capable of reading the tags within a short range (typically 2–10and cm)is connected to the microcontroller or system. 3. System Architecture - *Microcontroller/Processor Integration:* Use a microcontroller (ESP8266) to manage RFID the data collection. The microcontroller reader’s will: - Collect the RFID tag data (UID) from the RFID reader. - Timestamp the entry or exit event. - Send this data to a central system for processing and storage. - Database Management: Store the captured attendance data, - User ID - Date and Time of including: attendance - Entry/Exit status - Real-time Feedback: Optionally, provide immediate feedback via a display or sound a when person’s tag is detected (e.g., “Access Granted” or “Attendance 4. Software Development - Data Capture: Write code to read the RFID tag's UID from the reader, convert it into readable format, and send it to the database for storage. Common languages used include, C or Javascript. - Database Interaction: Implement a system that interfaces with the database to retrieve, store, and process the attendance records. - Store the timestamp and user ID along with other relevant details (e.g., of department, time - Ensure the system can handle simultaneous data submissions if multiple RFID entry/exit). arereaders used. - User Interface: Develop a user interface for the administrators - View and manage to: attendance records. - Generate reports (e.g., daily attendance, absenteeism). - Perform system maintenance (e.g., add/remove users). 5. Operation Flow - Step 1: Tag - The individual presents their RFID tag to the Scanning reader. - The reader captures the UID from the - tag. Step 2: Data Processing - The captured UID is sent to the microcontroller, which processes the data and thetimestamps - Step 3: Database event. - The microcontroller sends the data (UID and timestamp) to the database for Logging - storage. *Step 4: User Confirmation* - The system can send real-time feedback (such as a light, sound, or message screen) to confirm attendance was recorded on the - Step 5: Report successfully. Generation - Administrators can generate attendance reports, track attendance history, and forexport data analysis. 6. Testing and Calibration - *System Testing:* Test the system with real users, checking that the RFID reader accurately reads tags and that attendance is correctly recorded in the - *Performance Optimization:* Ensure that the system can handle multiple scans at once if database. necessary and that the data is reliably transmitted to the database without delay. 7. Security Considerations - Data Encryption: Encrypt sensitive data, such as personal user information, to prevent unauthorized - Access Control: Limit access to the system’s database and software to authorized users access. only. - Fail-safe Mechanisms: Design the system to handle errors such as duplicate entries, network failures, or reader 8. Maintenance malfunctions. and Updates - System Monitoring: Continuously monitor the system to ensure it is working smoothly. - Software Updates: Periodically update the software and hardware as needed to ensure the system remains secure and efficient. Challenges Cos t and Privac y Limitations Sign al DCS CSED FLOW CHART: Circuit DCS CSED diagram The system uses an RFID reader connected to a microcontroller (e.g., Arduino or Raspberry Pi) to read RFID tags. The tag ID is matched with stored records in a database. The system automatically logs the time of attendance and can store this data for future reference. Component RFID Reader s Microcontroller Interprets the RFID Reads the tag and communicates with the database. RFID tag data. Database Web Stores user interface/display information and attendance logs display attendance information and alert Flow of the Program 14 The RFID scans that tag when presented by a user The microcontroller sends the tag ID to the database The database checks if the ID matches an existing user. If yes, the time is recorded and stored as present in attendance table - An alert or message is displayed on the web interface to confirm the attendance registration Project Code: 1. Code to write the data on RFID Tags: #include #include //------------------------------------- ---- constexpr uint8_t RST_PIN = D3; constexpr uint8_t SS_PIN = D4; //-------------------------------------- --- MFRC522 mfrc522(SS_PIN, RST_PIN); MFRC522::MIFARE_Key key; //-------------------------------------- --- int blockNum = 2; byte blockData = {"SUHANI_MISHRA"}; //-------------------------------------- --- byte bufferLen = 18; byte readBlockData; DCS CSED //--------------------------------------- -- MFRC522::StatusCode status; //------------------------------- ---------- void setup() { //----------------------------------------- //Initialize serial communications with PC Serial.begin(9600); //----------------------------------------- //Initialize SPI bus SPI.begin(); //----------------------------------------- //Initialize MFRC522 Module mfrc522.PCD_Init(); Serial.println("Scan a MIFARE 1K Tag to write data..."); } //----------------------------------------- void loop() { //-------------- ----------- ----------- ------ ---------------- ----------- --------- for (byte i = 0; i < 6; i++){ key.keyByte[i] = 0xFF; } //------------ ----------- ----------- ----------- ------ ---------------- ----------- ( ! mfrc522.PICC_IsNewCardPresent()){return;} //------------ ----------- ----------- ------ ---------------- ----------- ----------- if ( ! mfrc522.PICC_ReadCardSerial()) {return;} //------------ ----------- ----------- ------ ---------------- ----------- ----------- 16 Serial.print("\n"); Serial.println("**Card Detected**"); Serial.print(F("Card UID:")); for (byte i = 0; i < mfrc522.uid.size; i++){ Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "); Serial.print(mfrc522.uid.uidByte[i], HEX); } Serial.print("\n"); Serial.print(F("PICC type: ")); MFRC522::PICC_Type piccType = mfrc522.PICC_GetType(mfrc522.uid.sak); Serial.println(mfrc522.PICC_GetTypeName(piccType)); //----------- - ----------- ----------- ------ ---------------- ----------- ----------- Serial.print("\n"); Serial.println("Writing to Data Block..."); WriteDataToBlock(blockNum, blockData); //----------- ----------- ----------- ------ ---------------- ----------- ------------ Serial.print("\n"); Serial.println("Reading from Data Block..."); ReadDataFromBlock(blockNum, readBlockData); //mfrc522.PICC_DumpToSerial(&(mfrc522.uid)); //----------- ----------- ----------- ------ ---------------- ------------ ----------- Serial.print("\n"); Serial.print("Data in Block:"); Serial.print(blockNum); Serial.print(" --> "); for (int j=0 ; jsetInsecure(); validation // Ignore SSL certificate ; card_holder_name = sheet_url + String((char*)readBlockData); card_holder_name.trim(); Serial.println(card_holder_name); HTTPClient https; Serial.print(F("[HTTPS] begin...\ n")); if (https.begin(*client, Serial.print(F("[HTTPS] GET...\ n")); (String)card_holder_name)) { int httpCode = https.GET(); if (httpCode > 0) Serial.printf("[HTTPS] httpCode); GET... code: %d\n", { } else { Serial.printf("[HTTPS GET... failed, error: %s\n", https.errorToString(httpCode).c_str() ); } ] https.end(); delay(1000); } PROJECT 22 NAME else { Serial.printf("[HTTPS] Unable to connect\ } n"); } } void ReadDataFromBlock(int blockNum, byte readBlockData[]) { for (byte i = 0; i < 6; i++) { key.keyByte[i] = } 0xFF; status = mfrc522.PCD_Authenticate(MFRC522::PICC_CMD_MF_AUTH_KEY blockNum, _A, &key, &(mfrc522.uid)); if (status != Serial.print("Authentication failed for Read: "); MFRC522::STATUS_OK){ Serial.println(mfrc522.GetStatusCodeName(status) } ); else { return; Serial.println("Authentication } success"); status = mfrc522.MIFARE_Read(blockNum, readBlockData, &bufferLen); if (status != MFRC522::STATUS_OK) { Serial.print("Reading failed: "); Serial.println(mfrc522.GetStatusCodeName(status)); } return; else { Serial.println("Block was read successfully"); } } 3-Code for Google Sheet Apps Script DCS CSED var ss = SpreadsheetApp.o penById('1X IZUKb0sZDCP HcTGIT FzGxLDxF2ge0U7mm Is9oKAxa8' ) ; var sheet = ss.getSheetByName('Sheet1'); var timezone = "Asia/Kolkata"; function doGet(e) { Logger.log( JSON.stringify(e) ); //-------------- ----------- ----------- ------ ---------------- ----------- ------------- //write_google_sheet() function in esp32 sketch, is send data to this code block //-------------- ----------- ----------- ------ ---------------- ----------- ------------- //get gps data from ESP32 if (e.parameter == 'undefined') { return ContentService.createTextOutput("Received data is undefined"); } //-------------- ----------- ----------- ------ ---------------- ----------- ------------- var Curr_Date = new Date(); var Curr_Time = Utilities.formatDate(Curr_Date, timezone, 'HH:mm:ss'); var name = stripQuotes(e.parameters.name); //Logger.log('name=' + name); 16 DYSMECH COMPETENCY SERVICES PVT. LTD. var nextRow = sheet.getLastRow() + 1; sheet.getRange("A" + nextRow).setValue(Curr_Date); sheet.getRange("B" + nextRow).setValue(Curr_Time); sheet.getRange("C" + nextRow).setValue(name); //returns response back to ESP32 return ContentService.createTextOutput("Card holder name is stored in column C"); } function stripQuotes( value ) { return value.toString().replace(/^["']|['"]$/g, ""); } //Extra Function. Not used in this project. //planning to use in future projects. //this function is used to handle POST request function doPost(e) { var val = e.parameter.value; if var range = sheet.getRange('A2'); range.setValue(val) (e.parameter.value !== undefined){ }} RESULT: 24 1. *Student/Employee Identification*: The unique identifier associated with each person, often linked to an RFID card or tag. 2. *Timestamp*: The exact time and date when the individual scanned their RFID card. 3. *Attendance Status*: Whether the individual was present, absent, or late based on the scan. 4. *Location (Optional)*: Some systems also log the location where the scan occurred, which can be useful for multi-location systems. 5. *Absentee Reports*: If someone failed to scan or wasn’t detected, this will be flagged as absent. 6. *Summary Report*: A summary that might show total number of people marked present, absent, or late, often used by administrators to assess attendance patterns. Project Project Future scope The future scope of RFID attendance systems holds significant promise, with advancements in technology and increasing adoption in various sectors. Some key areas where RFID attendance systems can evolve and expand include: 1. *Integration with AI and Machine Learning* PROJECT 26 NAME - *Automated Insights*: Future systems could integrate AI to analyze attendance patterns, predict trends, and identify issues like chronic absenteeism or unusual attendance behavior. - *Face Recognition + RFID*: Combining RFID with facial recognition technology could enhance security and eliminate the possibility of someone else scanning on behalf of another person (buddy punching). 2. *Cloud-Based - *Centralized Data Access*: Cloud-based RFID attendance systems can allow real-time data Solutions* access from any location. This is particularly useful for organizations with multiple campuses or immediate reports, insights, and proactive actions for HR or educational remote locations. - *Real-Time Analytics*: Data from RFID systems can be analyzed in real-time in the cloud, administrators. enabling 3. *Integration with Other - *HR and Payroll Systems*: RFID attendance systems can seamlessly integrate with payroll and HR Systems* management systems, automating salary calculation, time tracking, and other - *Learning Management Systems (LMS)*: For educational institutions, RFID can be integrated with administrative tasks. LMS to track student attendance and progress, triggering alerts for missed classes or assignments. 4. *Enhanced Security - *Multi-Factor Authentication*: RFID systems could combine multiple factors for verification, like Features* fingerprint or facial recognition, enhancing both attendance tracking and - *Access Control Integration*: In office or campus environments, RFID systems can be integrated with security. physical access control systems to track not just attendance, but also secure entry to restricted areas. 5. *Mobile and Wearable Technology - *Smartphones & Wearables*: With the rise of smartphones and wearables like smartwatches, Integration* RFID systems could be adapted to allow users to check in through their devices instead of - *Geofencing*: physical cards, Geofencing can enable location-based attendance marking, where the system automatically reducing detects the need when a separate for carrying user enters a designated area, improving accuracy for larger cards. events or complex environments. 6. *Sustainability and Environmental - *RFID Tags as Eco-Friendly*: Future RFID tags may become more environmentally friendly, reducing Impact* electronic waste by transitioning to biodegradable or recyclable - *Reduced Paper Usage*: By replacing manual attendance logs, RFID systems can contribute to materials. sustainability goals by reducing the need for paper-based attendance records. 7. *Mobile-Based Attendance and Remote Monitoring* DCS CSED - *Remote/Hybrid Attendance*: In the future, remote workers or students could check in via RFID linked to their devices (e.g., phones or tablets), allowing hybrid work or study models to be seamlessly integrated. - *Geo-Location Based Tracking*: RFID systems could incorporate GPS data to ensure that physically users arepresent in the right locations, allowing for even more secure and accurate tracking. 8. *Personalized Attendance - *Customized Alerts*: The system could be customized to send alerts or notifications for individuals Monitoring* with specific attendance requirements (e.g., managers receiving notifications if certain - *Gamification employees have & Rewards*: In educational or corporate settings, attendance systems can gamification, rewarding employees or students with points or incentives for good not checked in). attendance. incorporate 9. *Privacy and Data Security - *End-to-End Encryption*: As privacy concerns grow, future RFID systems will likely incorporate Enhancements* stronger encryption and data protection measures to ensure compliance with data privacy - *Anonymization and Data Minimization*: To address privacy concerns, RFID systems might regulations designed to store less personal data, minimizing risks associated with data (e.g., GDPR). breaches. be 10. *Integration with - *IoT Smart Devices*: RFID systems could integrate with Internet of Things (IoT) devices to create IoT* smart attendance ecosystems. For example, smart classrooms or smart offices can use RFID to adjust room settings based on who is present (e.g., lighting, temperature control). 11. *Adoption in New - *Healthcare*: RFID attendance can be used in hospitals or healthcare settings to track staff Industries* attendance, patient visits, or even equipment - *Transportation*: Public transport and logistics companies could use RFID to track passengers or usage. workers for better coordination and - *Event Management*: Large-scale events (like conferences, concerts, and festivals) could benefit efficiency. from RFID to manage attendee flow, track participation, and enhance security. 12. *Advanced Reporting and - *Predictive Analytics*: By leveraging historical attendance data, future systems could predict Analytics* attendance trends, helping institutions and organizations to plan better (e.g., identifying peak times for - *Customizable employee Dashboards*: absenteeism Admins or student could drop-off use customizable dashboards for a more rates). of attendance data, with drill-down capabilities for specific periods or individuals. detailed analysis PROJECT 28 NAME Conclusion: The future of RFID attendance systems is filled with potential, driven by technological advancements such as AI, cloud computing, IoT, and enhanced security. As these systems evolve, they will provide even more efficient, secure, and insightful ways to manage attendance, ultimately contributing to better decision-making and improved user experiences across various industries.