# IMU

### **MPU-9250**

* cheap, readily available low-end IMU, at the cost about a few dollars.
* Accelerometer noise density: 300 µg/√Hz
* Gyroscope noise density: 0.01 º/sec/√Hz

### **Microstrain 3DM-GX5**

* Industrial grade IMU made by microstrain; also available from Clearpath at about $2000.
* 3DM-GX5-25 is adopted by LIO-SAM project. Note that its accelerometer and gyroscope have different coordinate setup in orientation. (But still, they can be regarded to have the same origin.) For more information, see <https://github.com/TixiaoShan/LIO-SAM#prepare-imu-data>.
* We use 3DM-GX5-AHRS, and in this version the coordinate frames of accelerometer and gyroscope are treated identical. It comes equipped with built-in complementary filter and EKF algorithms, running at 1000Hz and 500Hz respectively.&#x20;
  * Accelerometer noise density: 20 µg/√Hz (2 g)&#x20;
  * Gyroscope noise density: 0.005°/sec/√Hz (300°/sec)

### VN-100

* High-end calibrated IMU with an onboard processor, provided by vectornav at about $1000.
* Adopted by the CoSTAR team in the SubT challenge.
* <https://www.vectornav.com/products/detail/vn-100>
* <https://github.com/NeBula-Autonomy/nebula-odometry-dataset/blob/main/pages/overview.md>

### **IMU Calibration Tool**

* Kalibr requires the noise parameters of IMU as input, and this can be calibrated using the Allan variance method. Open source repo: <https://github.com/ori-drs/allan_variance_ros>

```
# This is the result calibrated for the Microstrain 3DM-GX5-AHRS IMU that we have
# Accelerometer
accelerometer_noise_density: 0.0002276846771973415 
accelerometer_random_walk: 6.706087584689249e-06 

# Gyroscope
gyroscope_noise_density: 0.00010426654551109309 
gyroscope_random_walk: 3.5636559575381104e-06 

rostopic: '/sensors/imu' #Make sure this is correct
update_rate: 200.0 #Make sure this is correct
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.hanzheteng.com/equipment-and-devices/sensors/imu.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
