Automating the iRobot Create3 using ROS2
Class: ME35 - Robotics
Skills: ROS2, Machine Learning
​
Project Description:
In this project, we further developed our skills in ROS2 with the iRobot Create3 while incorporating Machine Learning to enable autonomous navigation through an obstacle course. The robot was programmed to move forward, detect an object, classify it, and determine whether to turn left or right based on the identified object before continuing through the course. To achieve object recognition, we utilized Google’s Teachable Machine, training the model with multiple images of the objects present in the obstacle course. This allowed the robot to make informed navigation decisions without manual intervention.


Programming
The robot was designed to move autonomously, so we programmed it by converting ROS2 commands into Python commands. The core functionality of the program was to enable the robot to move forward, detect an object using a camera attached to a Raspberry Pi, stop, identify the object, and determine whether to turn right or left based on the classification. To achieve accurate object recognition, we integrated code from Google's Teachable Machine and established thresholds for each object, ensuring the robot could reliably distinguish between them and navigate the obstacle course accordingly.
Video of the Robot in Action!
Here's a video of our iRobot Create3 moving through the obstacle course!
