Getting started with ROS2
James Gloudemans Code and Eng DK30 Fall 2020 1 1
Description
I previously worked on a project using Robot Operating System (ROS) to autonomously navigate, identify objects, and interact with objects depending on what they are. I would like to learn how to do all the same things with ROS2. I will work on this for 1 hour on Tuesdays and Thursday nights and 2 hours each weekend.
Recent Updates
Ended up changing strategy. I decided that it is important to get a more interesting robot working in the simulation, so I tried to use the Clearpath Robotics Husky (husky in simulation. Getting this up and running proved to be quite a bit of work, but I mostly got there. The robot uses slip steering, which is somewhat difficult, and requires tuning the friction parameters on the wheels to make it work well. I don’t think that I entirely succeeded with this tuning, but I can drive it around and the autonomous navigation works OK. I plan to start another 30 day project to improve the physics of the slip steering and finish the rest of the objectives in this project, but this project is done for now.
10/29/2020: Finished all week 2 goals. Gazebo world (top down view, robot in starting position, objects) consists of soccer field with barriers and two types of objects: boxes and cylinders with small boxes resting on top of them. Final scenario will involve pushing the regular boxes around and picking the small boxes off the cylinders. Not following the schedule at all, just working in random 3-4 hour blocks whenever I have the time. I’m keeping up with the goals, though, so I’m not worried about that at all.
10/22/2020: I finished the ROS2 tuturials, skipped the Gazebo tutorials, but got the navigation stack working with a turtlebot in Gazebo. Will work on Gazebo tutorials and building a scenario world for week 2. screenshot
Estimated Timeframe
Oct 15th - Nov 15th
Week 1 Goal
- Install ROS2
- Work through beginner and intermediate ROS2 tutorials on https://index.ros.org/doc/ros2/Tutorials/#tutorials
- Install Gazebo simulator
- Work through beginner and intermediate Gazebo tutorials on http://gazebosim.org/tutorials
Week 2 Goal
- Get autonomous navigation stack working
- Build initial scenario world in Gazebo
Week 3 Goal
- Add arm and gripper to robot
- Get manual control working with arm, gripper, and navigation
- Add depth camera to robot and implement minimal object recognition (maybe just color coding) and localization.
Week 4 Goal
- Begin developing state machine or equivalent for the robot to navigate and manipulate several objects autonomously.
![Day[9]TV](/images/header-logo.png)