Robotics: Science and Systems

I took this course in Spring 2023, and it was a great experience for learning ROS for use on real hardware. I worked on a team with 3 other MIT students. We used a mini racecar, equipped with a ZED camera and LiDAR.

Check out demos of our racecar in action!

Wall Following

We use the LiDAR to scan the surroundings and determine how far away obstacles are. We divide the scan into three sections: left, right, and center. Based on these sections, we use a linear regression to estimate where the wall to the side is, and where any obstacle in front might be.

Parking

We use color segmentation to locate the orange pixels in the image to detect the cone. Once the cone is located, our controller determines the motor commands so that we can successfully park at the desired distance from the cone.

Path Planning and Pure Pursuit

Given a prior map, we plan the best path to get from the start point to the end point using A*. We then using the pure pursuit control algorithm to enable our racecar to follow this path.

Final Challenge

Racing around an indoor track at 2m/s!

We detect the white track lanes using color segmentation. We then find the midpoint between the lanes, and project that point closer to the car for a faster reaction time.

Driving through a mini city

We similarly detect the orange tape aka road via color segmentation. We also have a corner detector to ensure we can safely make tight turns within the city.

Slides