How to calculate a first order IIR filter in 5 minutes

Recently, for my IMU (Inertial Measurement Unit) project, I had the necessity to add low-pass filter, in order to reduce the noise on the accelerometer sensor signal. For this purpose, I decided to use a 1st order IIR (Infinite Impulse Response) filter, because it is easy to implement and run on a microcontroller. In general, … Continue reading "How to calculate a first order IIR filter in 5 minutes"

Library for Arduino and MPU-6050 communication

As you probably already know from my project "Fuelino", I have been using a cheap and easy-to-use IMU (Inertial Measurement Unit) called MPU-6050. This board mounts a cheap integrated circuit capable of acquiring acceleration and gyroscope (and temperature) signals with 16 bits resolution. Such raw data can be read from the main microcontroller unit (for … Continue reading "Library for Arduino and MPU-6050 communication"

How to install GLFW library on Visual Studio C++ 2015

When you work as an engineer, it always comes the time when you need to perform some signal processing and visualize your data on a 3D, in real-time. This happened to me once I started playing with IMU (Inertial Measurement Unit): I acquired acceleration and gyroscope data from the sensor, and used my PC to … Continue reading "How to install GLFW library on Visual Studio C++ 2015"

How to implement an IMU using MPU-6050 and Fuelino Proto3

This guide shows how I implemented an IMU (Inertial Measurement Unit) using Fuelino Proto3 (equipped with Arduino Nano) and an MPU-6050 accelerometer and gyroscope module. I will use this library to calculate the motorcycle leaning angles (Tait-Bryan angles: roll pitch yaw) based on the raw sensors data logged on the Micro SD card. Fuelino Proto3 … Continue reading "How to implement an IMU using MPU-6050 and Fuelino Proto3"

A hint about gyroscope sensor data range for Arduino 101

I will give you an advice about gyroscope data range when using Arduino 101 board. As you may know, this board integrates a Bosch BMI160 acceleration and gyroscope sensors unit. Datasheet: BST-BMI160-DS000-07. According to the datasheet, it is possible to choose between multiple data ranges. The default data range is 250 deg/s. Considering that the … Continue reading "A hint about gyroscope sensor data range for Arduino 101"