Skip to main content

IMU calibration

Prerequisites

📄Connect to Leo Rover AP
Learn how to connect to your Leo Rover via WiFi.
📄Connect via SSH
Learn how to establish an SSH connection with your Leo Rover and access its terminal using Putty or OpenSSH.

No matter what board do you have on your rover, there may occure some problems with Internal Measure Unit - both integrated and external. The IMU readings may show the rover spinning in Z axis - which would seem as rover is rotating in place, even if the robot is not moving at all.

Running Calibration

To resolve this problem, we have prepared a script for calibrating the IMU sensor, which will measure the offset causing the robot's drift and take it into account in provided data from the sensor.

To calibrate your IMU all you have to do is to connect to the rover via SSH, and execute the command:

rosrun leo_fw calibrate_imu
warning

Perform the calibration while the rover is not moving, and is placed on a flat ground in normal orientation (no tilt) to ensure the proper measurements.
Otherwise the imu won't be calibrated correctly.

The script has one optional argument which specifies how long the offset will be measured. It default to 10 seconds, so if you would like to measure it only 5 seconds, you can execute:

rosrun leo_fw calibrate_imu 5

When the script finishes, the offset is automatically saved on the rover and used to provide accurate measurements.