IMU
One of the most recent innovations necessary to the success of stabilized multirotors and autopilots is the tiny, inexpensive microelectromechanical system (MEMS) Inertial Measurement Unit. IMUs are derived from Inertial Navigation Units consisting of very large mechanical components, which guide ships, aircraft and missiles. MEMS IMUs consist of encapsulated accelerometers, gyroscopes, and magnetometers arranged at 90 degrees from each other to measure different axes. Usually, the sensors are sold in that order - a 3 degree of freedom (DoF) IMU has 3 accelerometers, a 6 DoF IMU adds 3 gyros, and a 9 DoF IMU adds 3 magnetometers. Accelerometers measure acceleration (including a gravity vector), Gyros measure change in direction, and magnetometers measure direction relative to magnetic fields (notably, the Earth's). Drift is a significant factor for accelerometers and gyros, and since they measure changes instead of absolutes they accumulate progressively more drift rapidly. For more than a few seconds of use, accelerometers and gyros need to be integrated into a suite of sensors, including those that don't suffer from accumulated drift like magnetometers, thermopiles, altimeters, and GPS. The best approach to 'sensor fusion' is an active academic subject, and the most prominent method is a probability model called a Kalman Filter which averages recent measurements over time based on error characteristics and magnitude.
The level of complexity of the sensors varies. In some situations, one digital chip handles all the on-board noise filtering and cross-checking required to fuse 6DoF or 9DoF of sensors; In other circumstances, 'dumb' analog sensors are used, and the ADC sampling and filtering must occur on the control board rather than inside the chip. The smart one-chip integrated 9DoF IMU is a relatively recent innovation that emerged with the dominance of smartphones.
[edit] Sensors
- Invensense's MPU line
- Honeywell HMC5883L magnetometer
[edit] Comparison of IMU Boards
Note: This is a preliminary chart, if other data is needed, change the headers in the Rich Editor.
|
Price |
DOF |
Board Name |
Chips |
Weight (g) |
Form Factor |
Output Interface |
CPU |
Update Rate |
Accel Max Rate (±G) |
Accel Res (bits) |
Accel Drift
|
Gyro Max Rate (deg/s) |
Gyro Res (bits) |
Gyro Drift (deg RMS) |
Mag Max Rate |
Mag Res |
Mag Drift |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| $79 |
|
ArduIMU v3 |
MPU-6000 HMC-5883L |
|
|
|
Atmega328 |
|
|
|
|
|
|
|
|
|
|
| $160 |
|
Ardupilot Mega Oilpan rev-H |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| $200 |
|
Ardupilot Mega 2.0 |
MPU-6000 ?HMC5883L mag? |
|
|
USB |
MPU-6000 ATMega 2560 |
|
|
|
|
|
|
|
|
|
|
| $100 |
9 |
Sparkfun Sensor Stick |
ADXL345 accel ITG-3200 gyro HMC5883L mag |
? |
11mm 3mm board |
I2C |
none |
|
|
|
|
|
|
|
|
|
|
| $125 |
9 |
Sparkfun Razor |
ADXL345 accel ITG-3200 gyro HMC5883L mag |
? |
28mm 41mm _mm board |
FTDI |
ATMega328 |
|
|
|
|
|
|
|
|
|
|
| $118 |
9 |
CK Mongoose |
ADXL345 accel ITG-3200 gyro HMC5883L mag |
6 |
28mm 41mm
Board |
I2C |
ATMega328pP |
|
|
|
|
|
|
|
|
|
|
| $200 |
9 |
Pololu CHR-UM6 |
integrated unit |
7 |
27.8 mm enclosure |
TTL UART / SPI bus |
ARM Cortex |
20-300hz |
|
|
|
|
|
|
|
|
|