Need help with imu_utils?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

gaowenliang
566 Stars 244 Forks MIT License 33 Commits 19 Opened issues

Description

A ROS package tool to analyze the IMU performance.

Services available

!
?

Need anything else?

Contributors list

No Data

imu_utils

A ROS package tool to analyze the IMU performance. C++ version of Allan Variance Tool. The figures are drawn by Matlab, in

scripts
.

Actually, just analyze the Allan Variance for the IMU data. Collect the data while the IMU is Stationary, with a two hours duration.

refrence

Refrence technical report:

Allan Variance: Noise Analysis for Gyroscopes
,
vectornav gyroscope
and
An introduction to inertial navigation
.

Woodman, O.J., 2007. An introduction to inertial navigation (No. UCAM-CL-TR-696). University of Cambridge, Computer Laboratory.

Refrence Matlab code:

GyroAllan

IMU Noise Values

Parameter

YAML element Symbol Units
Gyroscope "white noise"

gyr_n
Accelerometer "white noise"
acc_n
Gyroscope "bias Instability"
gyr_w
Accelerometer "bias Instability"
acc_w
  • White noise is at tau=1;

  • Bias Instability is around the minimum;

(according to technical report:

Allan Variance: Noise Analysis for Gyroscopes
)

sample test

  • blue : Vi-Sensor, ADIS16448,
    200Hz
  • red : 3dm-Gx4,
    500Hz
  • green : DJI-A3,
    400Hz
  • black : DJI-N3,
    400Hz
  • circle : xsens-MTI-100,
    100Hz

How to build and run?

to build

sudo apt-get install libdw-dev
  • download required

    code_utils
    ;

  • put the ROS package

    imu_utils
    and
    code_utils
    into your workspace, usually named
    catkin_ws
    ;
  • cd to your workspace, build with

    catkin_make
    ;

to run

  • collect the data while the IMU is Stationary, with a two hours duration;

  • (or) play rosbag dataset;

 rosbag play -r 200 imu_A3.bag
  • roslaunch the rosnode;
roslaunch imu_utils A3.launch

Be careful of your roslaunch file:

    
        
        
        
        
        
    

sample output:

type: IMU
name: A3
Gyr:
   unit: " rad/s"
   avg-axis:
      gyr_n: 1.0351286977809465e-04
      gyr_w: 2.9438676109223402e-05
   x-axis:
      gyr_n: 1.0312669892959053e-04
      gyr_w: 3.3765827874234673e-05
   y-axis:
      gyr_n: 1.0787155789128671e-04
      gyr_w: 3.1970693666470835e-05
   z-axis:
      gyr_n: 9.9540352513406743e-05
      gyr_w: 2.2579506786964707e-05
Acc:
   unit: " m/s^2"
   avg-axis:
      acc_n: 1.3985049290745563e-03
      acc_w: 6.3249251509920116e-04
   x-axis:
      acc_n: 1.1687799474421937e-03
      acc_w: 5.3044554054317266e-04
   y-axis:
      acc_n: 1.2050535351630543e-03
      acc_w: 6.0281218607825414e-04
   z-axis:
      acc_n: 1.8216813046184213e-03
      acc_w: 7.6421981867617645e-04

dataset

DJI A3:

400Hz

Download link:

百度网盘

DJI A3:

400Hz

Download link:

百度网盘

ADIS16448:

200Hz

Download link:

百度网盘

3dM-GX4:

500Hz

Download link:

百度网盘

xsens-MTI-100:

100Hz

Download link:

百度网盘

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.