This project implements an RFID-based tallgate control system using the AT89C52 microcontroller. It integrates I2C and UART communication protocols to read RFID tags and control a tallgate system. The system verifies the authenticity of a tag, logs entry/exit times, calculates toll charges, and controls the gate.
- RFID Authentication: Reads and verifies RFID tags.
- Time Logging: Uses an RTC (Real-Time Clock) for entry and exit time tracking.
- Automated Toll Calculation: Calculates the amount to be paid based on time spent.
- LCD Display: Provides user feedback for authentication and payments.
- Motor Control: Opens and closes the gate automatically.
- AT89C52 Microcontroller
- RFID Reader & RFID Tags
- 16x2 LCD Display
- Motor Driver Circuit (for gate control)
- External EEPROM (if needed for additional storage)
- RTC Module (e.g., DS1307)
- Push Buttons and Power Supply
- Keil µVision IDE (for compiling the C program)
- Flash Magic (for burning the program to AT89C52)
- Proteus (for simulation, if needed)
- RFID Module → Connected via UART (TX, RX)
- LCD Display → Connected to P0
- Motor Driver → Connected to P2
- RTC (Real-Time Clock) → Communicates using I2C (SCL, SDA)
main.c
- The main logic of the system.i2c_header.h
- Handles I2C communication.uart.h
- Handles UART communication.mtr_driver.h
- Controls gate motor functions.LCD.h
- Manages LCD operations.delay.h
- Provides delay functions.
- System Initialization: Initializes the LCD, UART, and I2C.
- Waiting for RFID Tag: The system waits for an RFID card scan.
- Tag Verification: If the tag is valid, entry time is logged; otherwise, access is denied.
- Toll Calculation: When exiting, the system calculates the amount to be paid based on the duration.
- Gate Operation: The gate opens when access is granted and closes after a delay.
- Power on the system.
- Scan an RFID tag.
- If valid, the system logs the time and opens the gate.
- On exit, scan the RFID tag again.
- The system calculates the fee and displays it.
- The gate opens after payment and then closes.
- Implement online payment integration.
- Store user data in EEPROM or database.
- Add multiple RFID tag support for different user categories.
This project is open-source and free to use for educational purposes.
Akash Sureshbhai Khanpara