turtlebot/turtlebot_create — pull request #14 by kbogert (2014-04-22 19:17:28+00:00)
Title: Automatically load calibration parameters from a .yaml file

This patchset aims to take some of the frustration out of working with multiple turtlebots where each one has it's own calibration settings.

Ideally we would read a unique serial number from the Create (or gyro board) and use this number to find the appropriate set of parameters from a file or database. The calibration parameters could then be loaded on all available laptops and upon starting the turtlebot the correct calibration parameters would be loaded for whichever turtlebot it is connected to.

Since the iRobot Create itself does not seem to have any uniquely identifying information this patchset uses the serial number of the Kinect instead. This requires waiting until the kinect has been powered up and extracting the serial number from the usb system. We are assuming that kinects don't get swapped around between turtlebots much, hopefully this is the case for most people.

In the event that no kinect is attached (ie. the turtlebot has a Xtion or other ranger) the script will loop until the first velocity command has been sent. At this point it will attempt to load a calibration file that matches the usb <-> serial adapter's ID if it can find it. If not it will exit with no calibration performed, making this identical to current behavior.

I will be submitting pull requests shortly to the turtlebot bringup script to make use of this script, as well as turtlebot_calibration to generate the calibration .yaml files.