This university project involves programming an ePuck robot, a compact, two-wheeled robot equipped with various sensors. We aim to creatively utilize the robot's features through different modes like Pong game simulation and Alphabet writing.
videoepuckFinal.mp4
- ePuck robot with motors, microphones, camera, proximity sensors, and LEDs.
- Development environment for ePuck with necessary libraries.
- Pong Game Simulation: The robot plays a pong game within virtual boundaries, reacting to virtual walls and keeping score.
- Alphabet Writing Mode: Moves in patterns to write letters.
- Mapping and Position Tracking: Tracks its position and orientation.
- Sensor Integration: Uses proximity sensors, camera, and microphones.
- LED Management: Uses LEDs for feedback and interaction.
- Serial and USB Communication: For debugging and commands.
- Error Handling and System Management: Ensures smooth operation.
- Compile the Code: Include all libraries and compile for ePuck.
- Upload to ePuck: Use tools to upload the program to ePuck.
- Operate Modes: Use commands or button presses on ePuck to switch modes.
- main.h: Main header with libraries and function prototypes.
- game_management.h: Manages game modes and state transitions.
- audio_processing.h, microphone.h: For audio processing.
- camera_processing.h: Handles camera image processing.
- ir_thread.h, proximity.h: Manages IR sensors for proximity detection.
- motors_processing.h: Controls motor movements.
- leds.h: Manages LED states.
- Testing: Test each feature thoroughly in a controlled environment.
- Modifications: Code structured for easy modifications and future expansions.
- Debugging: Use serial outputs for debugging and monitoring.
This project is open for contributions. Fork, improve, and submit pull requests.
This project is released under the MIT License.
Creators: Vincent Naayem and Marc Favre Supervising Professor: Francesco Mondada
Thanks to the university, professors, and all contributors for their support in this project.
videoepuckFinal.mp4
videoEpuckDev.mp4
Results of live plotter: