Project Overview
Collaborators: Nicholas Hardy, Marybel Boujaoude, Hassan Hijazi, Riya Deokar
Date: 2023-05-02
In this project, we embarked on creating a remote-controlled car designed to navigate through a rally race course marked by several checkpoints. The core objective was to log the car's time and distance as it progressed, ensuring it reached the finish line efficiently. Central to this endeavor was the development of a web interface that allowed for precise control over the car's steering, speed, and braking mechanisms. Key to our approach was the integration of range sensors for collision avoidance, a PID controller for consistent speed maintenance, and the innovative use of QR codes for race initiation and checkpoint identification.
Key Features
- Remote-controlled car navigates a rally course, utilizing a web interface for steering, speed, and stop controls (Node.js).
- Checkpoint time and distance logging via a Raspberry Pi-hosted database (TingoDB), with QR codes marking each checkpoint.
- Collision avoidance through range sensors and speed maintenance via PID control for optimal race performance.
- Real-time race monitoring with an alpha display showing recent split times, enhancing user interaction.
- Course initiation and checkpoint identification executed with QR codes, streamlining the race process.
Implementation Details
- Integrated ESP32 and Raspberry Pi for control and logging, with LIDAR and ultrasonic sensors for obstacle detection.
- Developed a client web interface for transit time history queries and real-time car control by W-A-S-D keyboard inputs.
- Utilized IR communication and UDP message passing within a local network for efficient data transfer.
- Implemented encryption and security measures for system integrity, ensuring secure communication channels.
- Employed a Raspberry Pi camera for QR code scanning and data processing, linking physical checkpoints to digital logs.
Supporting Artifacts
Explore further details of our project through the following resources:
Project Architecture VideoProject Demo VideoProject GitHub