The Segbot is a mobile robot designed to operate as a three-wheeled differential-steering robot car or a two-wheeled self-balancing robot. The robot uses a Texas Instruments real-time microcontroller to interface with sensors and run the control algorithms that balance and steer the robot. Sensor fusion using Kalman filters is leveraged to improve measurements for balance control and navigation. I worked on this project with another graduate student for a course at the University of Illinois.

A demonstration of the robot balancing on two wheels.

Further autonomy is added to the robot car by a base station that provides improved pose measurements to the robot. The robot navigates to ping-pong balls located by the base station’s vision system and hits them out of the boundary defined by the four tags located on the floor.

A demonstration of the robot car navigating to detected ping-pong balls and hitting them outside of the boundary area.
A visualization of the base-station. Markers are labeled in white with their coordinates (X ,Y, theta) given in feet and radians. Circles are drawn around the tracked balls and are labeled with their coordinates [X, Y]. The green label indicates the target ball, while cyan and red represent balls inside and outside the boundary marked by the red polygon respectively.