Assignment 2: Actuation and Using RGB-D in ROS
due Oct. 22 (Thursday) @ 11:59pmGazebo is a high-quality robot simulator that is well integrated into ROS will use for your project as well as for this assignment. As described in class and on Piazza, a significant amount of the development you will be doing in this class will happen first under simulation, and then will be tested on the robot. The goal of this assignment is to get familiar with Gazebo simulator, simulating both a physical robot and input from its sensors.
Steps
Step 1: Simulate a Husky Model in an empty world in a Gazebo environment
Your first goal is to get the Gazebo simulator running with ROS. You will:
| |
→ Gazebo home page → ROS Gazebo Page → Simulating the Husky in Gazebo → Driving a Husky |
Step 2: Add an obstacle to the Husky's world
You initially loaded an empty world for the Husky to drive around in; now add one or more objects to that world, which the husky must avoid.
You will:
| |
→ Reference picture of Husky with obstacles |
Step 3: Add a Kinect to your Husky
ROS OpenNI is an open source project focused on the integration of the Kinect with ROS.
Using OPenNI to add a simulated Kinect RGB-D sensor to your Husky will let you see what the Husky sees.
You will:
| |
→ A tutorial on using Gazebo plugins for a sensor. → A page of OpenNI tutorials, including a quick start. |
Step 4: Navigate Around the Simulation
Similar to step 1.3. Navigate around the new enriched world with your enriched husky.
You will:
| |
→ Tutorial on cruising around in the Gazebo world, with sensors. → Tutorial: Recording and playing back Kinect data. |
Turn in:
The following things will be your deliverables: A writeup PDF; 8 screenshots as PNG, JPG, or GIFs; python or C++ code files; one text file.- A writeup of the process. This should be a PDF file, 300-500 words, containing:
- The names of anyone with whom you discussed the homework (in general terms), and a little about how/with what.
- Approximately how much time you spent on each step of the process.
- The thing(s) you found hardest and any errors/problems you ran into.
- Screenshots (PNG, GIF, or JPG)
- Step 1a-1b: Two visualization(s) of the Husky navigating in an empty world
- Step 2: The Husky in a world with the obstacle
- Step 3a: Husky + obstacle in the world, with the Kinect attached
- Step 3b: A view of the world as seen through the Kinect
- Step 4a-4c: Three views of the Husky navigating around the obstacle world, with the Kinect view showing
- Your scripts and code files.
- The output of your rosbag info command, as a text file.
Submit through this class' Blackboard page, which can be accessed from myUMBC or directly.
Remember, file types are part of your grade! Here's the UMBC help article about turning in files on Blackboard.