CS225b: Robot Programming Lab

CS225B is a project-based robot programming course. Over the course of 4 projects, we learned to implement a significant part of the ROS navigation stack on the Turtlebot. This included:
Project 1:- ROS basics (nodes, transforms, visualization)
- Gradient-based planner with A*
- Local obstacle grid
- Local controller using trajectory rollout
- A rewrite of the ROS amcl node
- Odometry error modeling
- Global localization
- Adaptive particle filter
- 'Kidnapped robot' (robot recognizes when it's been moved)
- GraphSLAM using karto scan matching and g2o optimization