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 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
| 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)
- blue : Vi-Sensor, ADIS16448,
200Hz - red : 3dm-Gx4,
500Hz - green : DJI-A3,
400Hz - black : DJI-N3,
400Hz - circle : xsens-MTI-100,
100Hz
sudo apt-get install libdw-dev
-
download required
code_utils; -
put the ROS package
imu_utilsandcode_utilsinto your workspace, usually namedcatkin_ws; -
cd to your workspace, build with
catkin_make;
-
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:
<launch>
<node pkg="imu_utils" type="imu_an" name="imu_an" output="screen">
<param name="imu_topic" type="string" value= "/djiros/imu"/>
<param name="imu_name" type="string" value= "A3"/>
<param name="data_save_path" type="string" value= "$(find imu_utils)/data/"/>
<param name="max_time_min" type="int" value= "120"/>
<param name="max_cluster" type="int" value= "100"/>
</node>
</launch>
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
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:百度网盘

