RFID-Controlled Corporate Elevator System
A corporate elevator system that uses RFID cards for floor access control, built with Raspberry Pi Pico 2 and stepper motor technology.
Author: Vicentiu Duta
GitHub Project Link: https://github.com/UPB-PMRust-Students/proiect-VicentiuDuta
Description
This project implements a miniature elevator system featuring access control through RFID technology. The system operates on a Raspberry Pi Pico 2 microcontroller and utilizes stepper motor control for precise vertical movement. The core functionality allows users to present specific RFID cards, which automatically direct the elevator to the associated floor. The system employs a 28BYJ-48 stepper motor for smooth and controlled movement between floors, with precise positioning achieved through programmatic control of step sequences. The RFID reader, based on the MFRC522 module, communicates via SPI protocol to identify and authenticate access cards. The system features a 13mm SA52-11EWA 7-segment display that provides real-time feedback about the elevator's current floor position. This visual indicator ensures users can monitor the elevator's location and verify their access status. This design showcases practical integration of embedded systems programming in Rust with mechanical control systems to create an automated, access-controlled transportation system.
Motivation
This project was chosen to explore the practical implementation of access control systems in automated environments. Building an RFID-controlled elevator system provides an opportunity to work with multiple interconnected technologies: digital identification systems, motor control, and embedded programming. The motivation behind this project stems from:
-
Real-world Application: Access control is fundamental in modern buildings, and implementing a miniature version offers insights into security systems used in corporate environments.
-
Learning Rust in Embedded Systems: This project provides hands-on experience with Rust programming in embedded contexts, allowing exploration of low-level hardware control while maintaining code safety.
-
System Integration: The project demands understanding of multiple protocols (SPI for RFID communication) and hardware components working in harmony, developing valuable skills in embedded systems design.
-
User Experience Enhancement: The implementation of a 7-segment display adds a crucial user interface element that provides immediate visual feedback. This feature improves the user experience by showing current floor position and operation status, making the system more professional and user-friendly.
The miniature nature of the project makes it manageable for implementation while still showcasing the essential concepts of automated access control systems.
Architecture
System Architecture Diagram
Main Components:
- Authentication Module - Validates RFID cards and maps them to floors
- Motor Controller - Manages stepper motor sequences and timing
- Display Controller - Updates 7-segment display with current floor
- Microcontroller - Coordinates system flow and error handling
Component Connections:
The Authentication Module receives RFID data via SPI and outputs authorized floor commands to the Motor Controller. The Motor Controller generates step patterns through GPIO to drive the stepper motor. Both Authentication and Motor Controller send status updates to the Display Controller for visual feedback. The Microcontroller orchestrates all modules, ensuring sequential operation and proper state transitions.
Log
Week 5 - 11 May
TODO
Week 12 - 18 May
TODO
Week 19 - 25 May
TODO
Hardware
The system consists of a Raspberry Pi Pico 2 microcontroller interfacing with three main components: an MFRC522 RFID reader for contactless card authentication via SPI protocol, a 28BYJ-48 stepper motor with ULN2003 driver for precise elevator movement control, and a 13mm SA52-11EWA 7-segment display for real-time floor indication. All modules connect directly through GPIO pins, creating a compact, integrated access control system.
Schematics
Bill of Materials
Device | Usage | Price |
---|---|---|
2x Raspberry Pi Pico 2W | The microcontroller | 39,66 RON x 2 |
MFRC522 RFID Module | RFID authentication | 9,99 RON |
28BYJ-48 Stepper Motor | Elevator vertical movement control | 16,97 RON |
SA52-11EWA Display | Current floor indicator | 8,99 RON |
7x 220Ω Resistors | Current limiting for 7-segment display segments | 0,10 RON x 7 |
Consumables | Jumper wires, breadboard, pins, 3d printing, etc. | TBD |
Software
Library | Description | Usage |
---|---|---|
embassy-rs | Async embedded framework | Task scheduling and hardware abstraction |
mfrc522 | RFID module driver | RFID card detection and authentication |
embedded-hal | Hardware abstraction layer | GPIO and SPI interface |
defmt | Debug formatting | System logging and debugging |