Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Optmimize Prime

Smart Self Transforming Robot

Optimus

📑 Table of Contents

  1. About the Project
  2. Badges
  3. Features
  4. Components
  5. What is in the Repo
  6. Currently Working on
  7. The Team Behind this Project
  8. Acknowledgements
  9. Youtube Playlist
  10. License

💡 About the Project

This project features a unique robot capable of seamlessly transitioning between a humanoid form and a vehicle form. Standing 70 cm tall and weighing 3.25 kg, the robot combines entertainment and interactivity with practicality.

The robot is designed to provide a fun and engaging user experience, recognizing faces, waving hello, and responding to voice commands like “Transform” using TinyML technology. Entirely wireless, it can be controlled through a web interface hosted on a Pico W, making it adaptable to various environments and perfect for delivering entertainment with a practical twist.

Badges

C C++ Raspberry Pi Arduino HTML5 CSS3 JavaScript Python Edge Impulse TensorFlow

🚀 Features

  • Transformation Functionality from Humanoid to Car and Vice Versa
  • IoT integration and I2C communication between boards are successfully implemented.
  • TinyML has been successfully implemented on the microphone to recgonize The word "Transform"
  • Pico W Web server that controls the robot wirelessly and shows if there is a human in from of him real-time

🗂️ What is in the Repo

  • Bottom: Arduino Nano RP 2040; contains logic for the bottom half of the robot
    • Servo Cluster: code to control multiple servos simultaneously
    • Servo.h, Servo.cpp: main code to initialize the servos
  • Microphone: Mic Driver for Arduino Nano RP 2040 in a separate project
    • Microphone.h, Microphone.c: Arduino Nano RP 2040 Mic Module Driver
  • IOT: RP Pico W Project Directory; contains logic for the top half of the robot and IOT integration
    • Camera.h, Camera.cpp: Face Detection Module Driver
    • WIFI: driver to enable the WIFI connection to control all operations for transformations and camera detection
  • Top (included in IOT Folder): Raspberry Pi Pico Project Directory; contains logic for the top half of the robot
    • Servo Cluster: code to control multiple servos simultaneously
    • Servo.h Servo.cpp: the main code to initialize the servos
    • DC Motor Control (included in IOT Folder): Rasperry Pi Pico; contains the logic for the vehicle form movement
    • DcMotor.h DcMotor.cpp: DC Motor Driver
  • Communication and I2C
    • Communication: sends the WIFI transformation signal to the Arduino Nano RP2040
    • I2C: get a message from the Master (Arduino Nano RP2040) to perform some operation
  • Face Recognition Module: RP 3 Model B
    • The code in the Raspberry PI 3 that uses OpenCV for facial recognition

🚧 Currently Working On

  • Enable I2C on a read req from the master.
  • Solving the RUN TIME ERROR after waving.
  • Migrating to FreeRTOS.
  • Conduct more trials and adjust mechanisms or control algorithms for better fluidity in transformations.
  • Neural Network Classifier
    • Expand the dataset to improve the NN classifier’s reliability.
    • Optimize and tweak it in a real-world environment for robustness.
  • Facial Recognition System
    • Further fine-tune to ensure consistent performance under varying conditions. Next Steps
    • Schedule systematic testing of each functionality under real-world conditions.
    • Monitor performance to identify weak spots and refine both hardware and software aspects

🤝 The team

Marawan Abdelrahman

Mohamed Rageh

Omar Riad

Mohamed Gamal

Omar Farouk

Mahmoud Hegazy

🎥 Youtube Playlist

Click Here

⚖️ License

The Project is following MIT License

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors