ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

What should I expect from Turtlebot calibration? / How do I know if my Turtlebot is broken?

asked 2014-09-14 12:45:28 -0600

Neil Traft gravatar image

updated 2014-09-18 21:37:05 -0600

I'm having a hard time debugging my Turtlebot because I don't know what a functioning Turtlebot should look like. Now that I've read the source code for turtlebot_calibration I have some better understanding of what to expect, but I'm still not sure if my bot is mechanically broken.

  • Is it normal for Tbot to stop for long periods of time during the calibration routine?
  • Is it normal for calibration to take 7-10 minutes, or more?
  • What are some examples of reasonable values for gyro_scale_correction and odom_angular_scale_correction (for a gyro_measurement_range of 150)? Is a gyro value of 0.3 completely unreasonable? What about 3.4? Should it be much closer to the default?
  • What is a normal error range for odom and IMU? Even on a good run I might see an odom error of >10% and IMU error >40%.
  • Is it normal for the bot to drift out of place during calibration? (i.e. it doesn't turn in place perfectly, but drifts a few centimeters over the course of the routine; one wheel must be spinning faster than the other, I guess)
  • Also, what kind of error is acceptable overall (from the EKF's odom_combined) to be able to run gmapping? If I rotate 360° while watching the output of rosrun tf_echo odom base_footprint, should the yaw delta be within 1-2°? Or can I accept errors of more like 10-20° and still be able to run SLAM?

Here's a video showing my bot doing calibration (I know it over-turns right now so the numbers aren't correct, I just want to show you how it stops for long periods of time making weird noises, e.g. t=0:50):

I appreciate any clues you can give, even if you can't answer all of the questions above. We can collaboratively put together an answer here.

Edit: Seriously? No one is going to even give me a hint of whether they think my video looks normal or not??

edit retag flag offensive close merge delete


If you are following this question then you might also want to upvote it.

Neil Traft gravatar image Neil Traft  ( 2014-09-14 14:17:33 -0600 )edit

Not the answer you're looking for but you can always calibrate the Turtlebot manually. Oh and it took me around 5 minutes to auto calibrate mine and the results are bad.

charkoteow gravatar image charkoteow  ( 2014-09-18 23:01:46 -0600 )edit

3 Answers

Sort by » oldest newest most voted

answered 2015-10-14 02:13:21 -0600

Loneflyer gravatar image

The CREATE base on the earlier versions of turtlebot has some drawbacks when it comes to hardware (IMU and Battery). If the Ni-Mh battery is old and used over many charging cycles, it will tend to create power fluctuations in your power distribution board. You will need to do a power reset (switch off, unplug cables from turtlebot, remove battery, press and hold power button for a few seconds, connect battery, plug in cables and then turn on).

Moreover, the IMU used is a cheap odometry estimation gyro, which is not reliable for mapping complicated environments (few features, many turns). The calibration process done on a clean power supply can still give you values close to each other, if done multiple times, however, it does not converge to a precise particular value for which the delta yaw (heading error) is close to zero.

In the calibration process, the turtlebot is supposed to rotate 720 degrees first, followed by three 360 degree rotations at varying speeds. It is supposed to point at the wall, or the configuration at which you started the calibration. If this doesn't happen, try changing your odom parameters using rqt_reconfigure.

There is no documented calibration routine, hence it is hard to guess how the gyro_correction factor and the odom_angular_correction factor change the calibration routine.

If you are facing trouble over a long time, you can do the following: 1. Check pin out at the power distribution. Between pins 8 and 14, a steady 5V DC should be present when powered on. 2. Change battery, or get an alternative LiPo power supply (4 cell battery with higher mAh would do) 3. Use a custom IMU 4. Get a kobuki base. It is fairly accurate and factory calibrated.

edit flag offensive delete link more

answered 2015-10-26 20:58:31 -0600

张京林 gravatar image

Maybe you could restart the robot. Sometimes I have this problem, but when I restart my turtlebot, it's gone. It's nomal If your turtlebot turn 720° continuously in a routine, where each routine begins with "Aligning base with wall" and ends with IMU and odom error output.

edit flag offensive delete link more

answered 2015-02-23 21:35:45 -0600

Neil Traft gravatar image

Quoting REP 119 — Specification for TurtleBot Compatible Platforms:

Odometry is expected to be accurate within 1% after calibration in both linear and angular movement.

So dead reckoning should be very good indeed. This doesn't answer all the questions posed, but it does give a target to shoot for. I never tried manually calibrating the gyro so I can't be sure that my Turtlebot actually had a hardware issue, but I do imagine it should have been much better than that, even with a suboptimal calibration.

edit flag offensive delete link more

Question Tools



Asked: 2014-09-14 12:45:28 -0600

Seen: 776 times

Last updated: Oct 26 '15