Accelerometer, Gyroscope and IMU Sensors – Tutorials

This ad is exclusive. Only one sponsor per week. Buy it here.

Do you want to detect the collision of a robot or to build a self-balancing robot? Or you have plans to build a drone? All these robots need sensors such as accelerometers, gyroscopes, and IMUs. These small components are embedded into the robot to generate information about the different mechanical phenomenon such as acceleration, vibration, tilt, orientation in space, angular velocity, pitch or rotation.

In this article, I explore 19 sensors and a series of tutorials in order to give you a complete overview of the sensors and how to use these.

These types of sensors with capabilities to measure the acceleration, tilt, angular velocity, and other mechanical phenomena are used in different devices including smartphones, gaming consoles or toys.

If an accelerometer sensor is designed to measure the acceleration and tilt, the gyroscopic sensor measures the angular velocity and orientation. The IMU sensor is a special one designed to combine the features of an accelerometer and gyroscope in order to display complete information about the acceleration, position, orientation, speed, etc. for a robot.

The accelerometer sensor measure acceleration in two different units including meters per second squared, or when the acceleration felt like a weight, in G-forces. Inside this tiny sensor is a small system that bends when a momentum or gravity force is applied. The amount of bend has a proportional value of the output signal.
The advantages of the accelerometer sensor include a high accuracy in applications with noises, as well the acceleration measurement down to zero Hertz. The biggest disadvantage of this sensor is the limited high frequency where the sensor works.

The gyroscope sensor is inexpensive and measures in degrees per second or revolutions per second the angular velocity. It’s frequently used in robotic applications to measure the balancing and send corrections to motors or drones to stabilize the flight. This tiny sensor uses a disc with a large heavy rim designed to resist movement when is spinning on its axis.

The IMU or Inertial Measurement Unit is a sensor that hosts two types of sensors. An IMU sensor can be used to replace an accelerometer or gyro sensor, but first you should set the tolerance for errors. The biggest disadvantage of this sensor is the error in measurement.

All these sensors are tiny and very cheap as components for a wide range of measurements.

Accelerometer Sensors

Starting with a list of sensors and finishing with a collection of tutorials, in this section is available a series of accelerometer sensors and tutorials to start learning how to interface an accelerometer sensor and how to add code in order to read information from these tiny components.

OSEPP Accelerometer Sensor Module

OSEPP Accelerometer Sensor Module


OSEPP Accelerometer Sensor Module – sensor with 3-axis and high-resolution measurement of up to +/- 16 g. The sensor provides measurements in less than 1.0 degrees of inclination.

MMA7260Q – triple-axis accelerometer sensor with three analog output channels and selectable range.

ADXL330 – triple-axis accelerometer sensor and range between -3g to + 3g. The features include a very low noise and a low power consumption.

ADXL335 – one of the most powerful tripled-axis accelerometer sensor from ADXL series capable to measurement in a range between -3g to + 3g. It has triple-axis MEMS accelerometer with extremely low noise and power consumption. The sensor has a full sensing range of +/-3g.

Memsic 2125 – dual-axis accelerometer sensor with a range of -3g to + 3g. The sensor is designed to measure the acceleration, rotation, tilt, and vibration of a robot.

In the following are available a series of tutorials to interface and program the accelerometer sensors.

Gyroscope sensors

Starting with a list of sensors and finishing with a series of tutorials, in this section is available a series of gyroscope sensors as well as tutorials and guides to start learning how to interface and how to programming electronic boards to display the information from gyro sensors.

OSEPP Gyroscope Sensor

OSEPP Gyroscope Sensor


OSEPP Gyroscope Sensor – three-axis gyroscope sensor Arduino compatible with a high robustness.

Grove – 3-Axis Gyro – high shock tolerance 3-axis gyroscope sensor for a wide range of applications.

InvenSense ITG-3200 – triple-axis gyroscope sensor with serial interface and digitally-programmable low-pass filter.

LPY530AL – dual-axis gyro sensor with two different analog outputs. High accuracy in measurement of angular velocity or pitch and yaw axes.

L3GD20 – easily configurable with an Arduino board, L3GD20 is a three-axis gyroscope sensor with voltage regulator included.

ITG-3200 – optimized sensor for a wide range of applications including motion-based remote control with measurement on three axes.

IDG300 – dual-axis gyroscope sensor optimized for high performance in industrial applications.

Lego Mindstorms NXT Gyro Sensor – sensor designed to be integrated in Lego NXT applications.

ADXRS613 – very small board with MEMS gyroscope.

Above are available a series of gyroscopic sensors with a wide range of features and designed for integration in many applications especially in robotics. Below is available a collection with tutorials and guides to understand how to interface and programming different gyro sensors with electronic boards.

IMU sensors

In this section of the article are available a series of IMU sensors, tutorials and guides to start learning how to interface and programs to display the information from IMU sensors.

AltIMU-10 Gyro, Accelerometer, Compass, and Altimeter

AltIMU-10 Gyro, Accelerometer, Compass, and Altimeter

AltIMU-10 Gyro, Accelerometer, Compass, and Altimeter – inertial measurement unit sensor with up to ten independent measurements for pressure, magnetic, rotation, and acceleration in order to calculate the altitude and orientation of the robot;

IDG500/ADXL335 – IMU board with IDG500 dual-axis gyroscope and ADXL335 accelerometer sensors that provide tilt and pitch measurement on five axes.

Ultra-Thin IMU – board with LPR530AL, LY530ALH and ADXL335 sensors included and six-axes measurement for pitch, roll, or yaw.

ITG3200/ADXL345 – IMU board with ADXL345 accelerometer and ITG-3200 MEMS gyro sensors that provide measurements on six axes.

Ding and Dent – a wide range of measurements for this IMU sensor that include ADXL345 accelerometer, HMC5843 magnetometer, and ITG-3200 gyro sensors while providing measurements for orientation and location for a total of nine degrees of freedom.

From simple to advanced sensors, above is available a list with IMU sensors used in robotics for orientation or location measurements. Below a series of tutorials and guides are written to understand how to setup, interface, and write programming lines to display the measurements of IMU sensors.

This article was last modified on 05 March 2015.

Share on FacebookShare on Google+Tweet about this on TwitterShare on RedditShare on StumbleUponDigg thisShare on LinkedInEmail this to someone

6 comments » Write a comment

  1. hello..
    can you help me brother to know about accelerometer+arduino?
    do you have a tutorial about it?
    if you have it, share it for me, please..

    thx

  2. Hi Sir,

    Can you mention something about the differences between accelero and gyro sensors and also their interdependence in some cases. How to come up to a decision as to use which one for which application ?

    Thanks in advance.

    • Hi,

      “If an accelerometer sensor is designed to measure the acceleration and tilt, or the gyroscopic sensor to measure angular velocity and orientation, IMU sensor is a special one designed to combine the features of an accelerometer and gyroscope in order to display complete information about the acceleration, position, orientation, speed, etc. for a robot.”

  3. can you pls help me out to learn basics of accelerometer and to interface it with atmega 8 microcontroller.

Leave a Reply

Required fields are marked *.