ori-drs / allan_variance_ros

ROS compatible tool to generate Allan Deviation plots

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

results interpret

zoldaten opened this issue · comments

hi!
i got calibration papers:
acceleration
gyro

this is cheap mpu-650 (GY-521).
how to understand is it good or not ?
what "stars", "circles", "triangles" mean ?

Hi @zoldaten
I think something is going wrong in generating the Allan Deviation plot. There should not be such large spike after 100s sampling time. Can you confirm all the parameters in the config file are correct? Also, did you re-organize the bag using
rosrun allan_variance_ros cookbag.py --input original_rosbag --output cooked_rosbag ?

The circles indicate the T=1s intercept for white noise
The triangles are the lowest point which is the bias instability
The starts are the T=3s intercept for random walk

hi @raabuchanan
1.here is my config:

imu_topic: "/imu/data"
imu_rate: 200
measure_rate: 200 # Rate to which imu data is subsampled
sequence_time: 10800 # 3 hours in seconds
  1. i did re-organize using cooked_rosbag.

i will try with another mpu.

Hey!
First of everything thank you very much for your work.
Secondly, Im trying to understand the results and I dont get how the conversion from rad/s to rad/s/sqrt(hz) is done to get white noise of gyro and accel.
Thirdly, are 3h of data REALLY necessary? And also, do they have to be in a really quiet environment?
Also I wonder if this could be run in ros2 appart from the rosbag format.
Thanks!

Hi @silviazpi
The units come from how Allan Deviation is computed. You can read about it in this paper or directly from the IEEE standard

And yes, 3 hours is the minimum for good accuracy. If you look at the x axis of the example plot, we need up to 10^3 seconds sampling time. So 3 hours gives about 10 samples.
edit:
And I'm not sure about ROS2. I developed this specifically for ROS1 and rosbags. I might work on a ROS2 version in the future.

@raabuchanan thank you very much for your quick response. The paper was really useful! Secondly, I found out that the /imu data can be published and recorded with ROS2 as long as you convert it afterwards using this library (really easy to use) https://gitlab.com/ternaris/rosbags. I thought that you might be interested in adding it to your README. Thanks again!