Lab Tutorials and Guides

Lab Guide Videos

Battery Safety and Alarms

Dynamixel Hookup


ROS Utilities

Note: These may need to be installed. Usually "sudo apt-get install ros-kinetic-<app_name>"

rqt_graph - Display a live, visual mind map of your actual ROS nodes and messages

rqt_plot - Quickly graph numerical message fields over time. "rqt_plot /cmdvel/desiredWV_R /cmdvel/desiredWV_L" will show a graph of the desired left and right wheel velocities over time

rosbag - Utility for recording and replaying ROS bags (logs of messages). Useful for testing kinect code without access to a kinect!  "rosbag record <topic>", do something with your kinect while its recording, then <ctl>-c to stop recording.  "rosbag play <msg_file>" to playback the recording.

rqt_bag - this has some issues with recording, use rosbag from the command line instead


ROS Tutorials

Introduction to ROS

Creating a new ROS package - We use the Catkin management system

Brief Description of catkin_make

Creating Messages and Services

Publishers and Subscribers in Python

Recording and Playing Back Data with ROS Bags

Tools for ROS TopicsList of all ROS Tutorials

Visualization Markers : visualization is important for debugging the robot by helping you understand what robot is thinking visually. Unfortunately this tutorial is in C++, but you can refer to a Python example helper API and usage that was used in Lab 5. The key concept is simple: you create a marker msg and publish it, the rviz will subscribe to it and visualize it. Staff will give you credits if you use visualization well in developing your program. Good examples are the ones in Lab 2 to 5.

Interactive Markers : interactive markers are tools to specify pose related input to the program. For example, in Lab 5 we use the interactive marker to specify the TCP position for the IK solver. A more important thing is that specifying a desired orientaion in 3D using quaternion or RPY is hard. We suggest you to use markers for this.

Making a URDF for your manipulator : Also look at the xacro file in Lab 5 for an example.

Getting pointcloud from Kinect : This links to the code in Lab 4. Look at function rosRGBDCallBack() for an example.

Rviz tutorials


GIT Tutorial

Did you GIT it?


Environment setup

How to set the bash environment for the project?

Practical robot programming setup


Arduino Wiring and Servos


Install Color Printer