Skip to content

SensingSensors

Accelerometers and Gyros

At rest, an accelerometer's tilt is atan(ax / az); a gyro gives turn rate, which adds up to angle and drifts.

Not started Jump to practice

An inertial measurement unit (IMU) is a tiny chip that feels motion. It usually holds an accelerometer and a gyro.

Key idea

At rest, the accelerometer feels only gravity, so its tilt is $\theta = \arctan(a_x / a_z)$. The gyro measures turn rate $\omega$; adding it up, $\theta \leftarrow \theta + \omega\,\Delta t$, gives angle, but small errors pile up, so the angle drifts.
A noisy tilt reading. The accelerometer is right on average but jumpy.

Why it works

The accelerometer cannot tell gravity from speeding up, so it is fooled during motion. The gyro is smooth over short times, but a tiny bias, added up for minutes, becomes a big error. Each is good where the other is weak.

Worked example: Tilt

At rest: $a_x = 3.4$, $a_z = 9.2$ (m/sΒ²).
  1. $\arctan(3.4/9.2) \approx \arctan(0.37) \approx 20.3^\circ$.

Answer: About 20Β°.

Worked example: Drift

A gyro bias of 0.05 Β°/s, added up for 10 minutes.
  1. $0.05 \times 600 = 30^\circ$.

Answer: 30Β° of false turn.

Common mistake

Trusting the accelerometer while the robot speeds up, or the gyro's angle after a long time.

Practice

Pass with 3 right answers, the last 2 in a row. Each right answer earns 3 XP.

Loading practice…

Builds on

Leads to

Sources and further reading

  • Sebastian Thrun, Wolfram Burgard and Dieter Fox, Probabilistic Robotics (MIT Press, 2005)
  • Roland Siegwart, Illah R. Nourbakhsh and Davide Scaramuzza, Introduction to Autonomous Mobile Robots, 2nd ed. (MIT Press, 2011)