Accelerometer vs Gyroscope sensor, and IMU, how to pick one?
With the increasing popularity of MEMS accelerometer and gyroscope sensors for Arduino motion sensing, many are considering picking one up to kickstart their next project. However, with a plethora of options available, selecting one that’s suitable may be a tough task to handle.
Before scrambling and worrying about how do I pick an accelerometer and gyroscope, you’ll first need to know the differences between both.
In this guide, I’ll be walking you through the following:
- What is an accelerometer?
- What is a gyroscope?
- What’s the difference between accelerometer and gyroscope?
- How to choose an accelerometer?
- How to choose a gyroscope?
- Honourable mentions with IMU
What is an Accelerometer?
Accelerometers are electromechanical devices that measure acceleration, the rate of change in velocity of an object. In other words, it’s devices used to respond to any vibrations associated with movement.
How does an accelerometer work?
There are two ways where accelerometers work; Piezoelectric effect, and Change in Capacitance. Sounds confusing? It’s relatively simple, here’s how:
Piezoelectric effect:
- Accelerometers contain microscopic crystal structures, generating voltages when vibrations occur
- Voltage generated will create a reading of how much acceleration are there
Change in Capacitance:
This method plays with the formula in finding acceleration. Since we know that Force = Mass x Acceleration, to find acceleration, it’ll take the Force present / Mass of an object.
This is how the capacitance effect in a MEMS accelerometer works:
- 2 capacitive plates are present
- The mass of an object presses on one of the capacitor plates, changing the capacitance and allowing for the force to be measured
- With force and mass of object known, acceleration is then measured
MEMS Accelerometers
Accelerometers can be based on other operating principles, such as the microchip-packaged mems accelerometers. Mems accelerometers are designed for easy integration with Arduino or other microcontrollers these days, with common ones being the ADXL sensor series (popular ones being ADXL345, ADXL335).
With its miniaturized sensors, Mems accelerometers are applicable for IoT usages, low-power, industrial and automotive applications, healthcare, etc.
Applications of Accelerometers
Now that we’ve understood how accelerometer work, we’ll take a look at what it’s commonly used for. Here is the key list of applications:
- Compass/Map applications on your smartphone devices (iPhones, Andriod, etc.) through axis based sensing
- Tilt sensing; iPhone uses an accelerometer to sense whether the phone is being held in portrait or landscape mode
- Earthquake detection
- Fall sensing
- Medical devices such as artificial body parts
- Fitness trackers/wearables
- Games/applications that require motion sensing (Wii, Kinect, etc.)
Note: Accelerometers are most commonly used to detect position, velocity, vibration, and to determine orientation.
What is a Gyroscope?
Before we touch on the differences, we’ll have to first understand what is a gyroscope. Gyroscope is a device used for measuring rotational changes or maintaining orientation. It’s based on the principle of preserving angular momentum.
How does Gyroscope work?
A typical gyroscope contains a rotor that’s suspended inside three rings called the gimbals.
It works through the precession effect, allowing gyroscopes to defy gravity when the spin-axis is rotated. This means that instead of falling over from the force of gravity, it automatically adjusts itself sideways.
For more on how Gyroscopes work, you can check this article out!
Applications of Gyroscope
Understanding how it works is one thing, but what it is used for? Although dating back to the 18th century, Gyroscopes are still used now, with it becoming an integral part of navigational systems we commonly see nowadays:
- Aircrafts
- Space stations
- Stability in vehicles; motorcycles, ships
- Inertial guidance systems
- Consumer electronics through MEMS gyroscopes (Most mid-range to higher-end Andriod phones)
MEMS Gyroscope
You may be wondering, what is MEMS Gyroscopes? Aren’t Gyroscopes just Gyroscopes?
MEMS Gyroscopes are small miniaturized sensors designed possible through integrating MEMS (Micro-Electro-Mechanical-System) technology into it. This allows for the functionality of gyroscopes to be utilized in a smaller package!
Similarly to MEMS accelerometers, with such technology, it allows for a lower cost, lower power, and applicability with your Arduino, Raspberry Pi, and more!
Accelerometer vs Gyroscope
Accelerometer and gyroscope difference:
For ease of understanding the difference between Accelerometer and Gyroscopes, I’ve provided a comparative table for illustration:
Accelerometers | Gyroscopes | |
---|---|---|
What it is | Electromechanical devices that measure acceleration Cannot distinguish rotation from acceleration |
A device used for measuring rotational changes or maintaining orientation Unaffected by acceleration |
Usage purpose | Measure linear acceleration based on vibration | Measure rate of rotation and angular position around a particular axis |
Applications | Commonly found and more applicable in consumer electronics | Commonly found and more applicable in aircrafts, aerial vehicles |
All in all, although both devices have their notable differences, many appliances out there still benefit from the presence of both sensors. It ultimately comes down to what applications you’re looking for.
How to choose an Accelerometer and Gyroscope?
How to choose an Accelerometer?
To help you pick a suitable MEMS accelerometer for your Arduino, here are the important criteria you should consider!
Criteria | Recommendations/Considerations |
---|---|
Range | For precise readings: Pick a smaller full-scale range as it’ll give you a more precise reading due to a more sensitive output Consider acceleration ranges that fit your projects. |
Interface | Easiest interface to work with: Analog interface, as analog-to-digital converters (ADCs) are implemented in most microcontrollers For producing fixed frequency: PWM interface, produces a square wave with fixed frequency but duty cycle of the pulse varies with sensed acceleration Most features and lesser noise: Digital interface, features either SPI or I²C serial interface but may be difficult to integrate with microcontroller |
Axes | Three-axis accelerometers, most common and not significantly more costly as compared to one or two axis accelerometers |
Power Usage | Required current consumption of an accelerometer is usually in the 100s of µA range Take into consideration required power. |
Bonus Features | Picking newer models of accelerometers may be a better choice as they include more bonus features such as: Selectable measurement ranges Sleep Control 0-g detection Tap sensing |
Which Accelerometer to buy?
Based on the criteria above, these are my recommended accelerometers available at Seeed!
Grove – 3-Axis Digital Accelerometer ±16g Ultra-low Power (BMA400)
Based on the BMA400 sensor, this 3-Axis Digital Accelerometer is a 12-bit triaxial acceleration sensor with smart-chip motion and position-triggered interrupt features. Detecting movement posture such as Walking, Running, Standing still all with ease!
Criteria Evaluation:
Criteria | Evaluation |
Range | ±2g, ±4g, ±8g, ±16g |
Interface | I2C |
No. of Axes | 3-Axis |
Power Usage | 18uA @5V, 14uA @3.3V |
Bonus Features | Auto-low power/wakeup Activity/In-activity Step Counter Activity Recognition (Walking, Running, Standing still) Orientation detection Tap/Double Tap |
Interested to know more? More information alongside this accelerometer Arduino guide is available on our wiki page here!
ADXL 3-Axis Accelerometers series
Apart from the above BMA400 based Accelerometer, the popular ADXL series is available for purchase here at Seeed as well! We offer the following 3-axis ADXL Accelerometers for your consideration:
Product | Measurement Range | Interface | Power Consumption | Bonus Features |
Grove – 3-Axis Analog Accelerometer ±20g (ADXL356B) | ±10 ±20g | Analog | measurement mode:150 μA standby mode:21 μA | Low, drift, low noise; ideal for wireless condition monitoring A hermetic package that offers excellent long-term stability 0g offset vs. temperature (all axes): 0.75 mg/°C maximum |
Grove – 3-Axis Analog Accelerometer ±40g (ADXL356C) | ±10g ±40g | Analog | measurement mode:150 μA standby mode:21 μA | Low, drift, low noise; ideal for wireless condition monitoring A hermetic package that offers excellent long-term stability 0g offset vs. temperature (all axes): 0.75 mg/°C maximum |
Grove – 3-Axis Digital Accelerometer ±40g (ADXL357) | ±10g@51200 LSB/g ±20g@25600 LSB/g ±40g@12800 LSB/g | Digital I2C | measurement mode:200μA | Low drift, low noise, low power A hermetic package that offers excellent long-term stability 0g offset vs. temperature (all axes): 0.75 mg/°C maximum Support FIFO(96*21-bit) |
Grove – 3-Axis Digital Accelerometer ±200g (ADXL372) | ±200g | Digital I2C | measurement mode:22μA | Deep embedded FIFO tominimize host processor load Selectable oversampling ratio and bandwidth |
The Grove – 3-Axis Analog Accelerometer ±20g (ADXL356B) and Grove – 3-Axis Digital Accelerometer ±200g (ADXL372) are currently out of stock but do keep a lookout when it’s restocking by subscribing or consider the ADXL356C and ADXL357!
How to choose a Gyroscope?
Now that you’ve understood how to select a suitable accelerometer, here are the criteria for you to help you choose a Gyroscope with ease!
Criteria | Considerations/Recommendations |
---|---|
Range | When picking a Gyroscope, ensure the maximum range of the gyro doesn’t exceed the maximum angular velocity you’re looking to measure |
Interface | Similarly to accelerometer interfaces, picking gyroscopes with analog output will result in the easiest integration with your microcontroller However, picking a Gyro with a digital interface is an appealing option since it tends to come with more features You wouldn’t have to worry much about this criterion as most gyroscopes on the market feature analog |
Number of Axes | Gyros are available in 1, 2, or 3-axis, where you’ll have to consider which of these three will the Gyro measure since rotation will be affected Some 2-axis gyro measures Y and Z axes while others measure Y and X axes |
Power Usage | To avoid over/under powering, check how much power the gyroscope will consume if your project runs by battery |
Bonus Features | Gyroscopes tend not to offer much bonus features apart from temperature output If there are bonus features, it would be a plus point! |
Which Gyroscopes to buy?
Based on the criteria above, these are my recommended gyroscopes to buy!
Note: The following recommendations are Gyroscopes integrated alongside an accelerometer, allowing for functionalities of both in just one module!
Grove – 6-Axis Accelerometer&Gyroscope
Based on the LSM6DS3 chip, this 6-Axis Accelerometer&Gyroscope is a cost-effective option with detailed SDK for easier programming with your Arduino!
Criteria Evaluation:
Criteria | Evaluation |
Range | Gyro: ±125, ±245, ±500, ±1000, ±2000 degree per seconds(dps) Accelerometer: ±2/±4/±8/±16 g full scale leaner acceleration |
Interface | I2C |
No. of Axes | 3-Axis gyroscope 3-Axis Accelerometer |
Power Usage | Combo normal mode: 0.9 mA Combo high-performance mode: 1.25 mA |
Bonus Features | – |
Interested to find out more? More information alongside this gyroscope Arduino guide is available on our wiki page here!
Grove – 6-Axis Accelerometer&Gyroscope (BMI088)
Based on the BOSCH BMI088 Gyroscope,
this 6-Axis Accelerometer&Gyroscope option is designed for drones, robotics, and industrial applications with the capability of handling challenging performance requirements!
Criteria Evaluation:
Criteria | Evaluation |
Range | Gyroscope: ±125°/s @262.1 LSB/°/s ±250°/s @131.1 LSB/°/s ±500°/s @65.5 LSB/°/s ±1000°/s @32.8 LSB/°/s ±2000°/s @16.4 LSB/°/s Accelerometer: ±3g @10920 LSB/g ±6g @5460 LSB/g ±12g @2730 LSB/g ±24g @1365 LSB/g |
Interface | I2C |
No. of Axes | 16bit triaxial gyroscope 16bit triaxial accelerometer |
Power Usage | Operating voltage: 3.3V / 5V Low power consumption based on gyroscope used |
Bonus Features | Low spectral noise |
Interested to find out more? More information alongside this gyroscope Arduino guide is available on our wiki page here!
Honourable mentions
Gyroscope accelerometer magnetometer sensor (IMU)
Accelerometers and Gyroscopes are great options to get you started with motion sensing, but if you were to dive deeper and explore other options, you’ll find yourself with Inertial Measurement Units (IMUs).
IMUs are essentially Accelerometers + Gyroscopes + Magnetometer sensors, making it a complete package capable of easily calculating orientation, position, and velocity!
Here at Seeed, we carry IMUs for your selection as well, here are some to consider!
Grove – IMU 9DOF v2.0
Want to get started with an IMU? The Grove – IMU 9DOF is a great place to start!
Packed with a 3-axis gyroscope, a 3-axis accelerometer, and a 3-axis magnetometer, it’s a 9-axis motion tracking module based on MPU-9250.
Its features include:
- Ultra-low power, low voltage
- Wide Detecting Range
- Internal Digital Motion Processing™ (DMP™) engine supports advanced MotionProcessing and low power functions such as gesture recognition using programmable interrupts
- Self-test function
- Digital-output 3-Axis angular rate sensors (gyroscopes) with a user-programmable full-scale range of ±250, ±500, ±1000, and ±2000°/sec
- Digital-output 3-Axis accelerometer with a programmable full-scale range of ±2g, ±4g, ±8g, and ±16g
- Digital-output 3-Axis accelerometer with a full-scale measurement range is ±4800μT
Interested to find out more? You can head to the product page for more!
Grove – IMU 10DOF v2.0
Need a substantial upgrade from the previous recommendation? The Grove – IMU 10DOF v2.0 provides a total of 10 axes of data for you, way more applications and better performance!
Based on the new and improved Bosch BMP280 and MPU-250, alongside a Digital Motion Processor (DMP) in a 3*3*1mm package, this IMU is not only small but consumes way less power!
Its features include:
- Digital-output X-, Y-, and Z-Axis angular rate sensors (gyroscopes) with a user-programmable full-scale range of ±250, ±500, ±1000, and ±2000°/sec
- Digital-output 3-Axis accelerometer with a programmable full-scale range of ±2g, ±4g, ±8g, and ±16g
- Digital-output magnetometer with a full-scale range of ±4800uT
- Temperature measurement with ±1.0°C accuracy
- Barometric pressure measurement range 300 – 1100 hPa with ±1.0 hPa accuracy
Interested to find out more? You can head to the product page for more!
Summary
That’s all for today’s guide on accelerometers, gyroscopes, and picking a suitable one. With the increasing popularity of both, it’s indeed time to pick one up for yourself! The suitable one!