Goal: Obtain the 3-axis accelerations from the Bosch BMI160 IMU when measuring the accelerations of the bogie of a commercial train. The accelerometer used is installed in a PCB and used by an mbed microcontroller. The mbed manages to receive and save the data from the accelerometer at 50 Hz. The BMI160 has some options such as measurement range that can be changed: to avoid sensor saturation the limit is set to ±4g.
Issue: The Z-acceleration (gravity-like oriented) shows an important bias due to unknown reasons. Phenomenon in Figure 1 and 2:
The odd phenomenon can be more easily seen in this picture of the zoom Z-acceleration:
time stamps and $ Acc_z $ data can be found here: https://pastebin.com/raw/4PyAtVU8
It can be seen on it, that the average of that signal is not the gravity value. If it where due to the rotation of the object, a similar effect shall be seen in the other axis. Anyway, this does not seem to be the case, as the vehicle is a railway going forward.
If we calculate the low-pass-filtered signal ($ f_cut = 0.1\ Hz $), the signal is clearly non-oscillating. The expected result should be something more similar to what is shown in purple in the next figure:
Moreover, if we zoom in the last part of the signal, we can see that there are not any particular trends:
Question: Why the bias of the acceleration, which should be a slow-changing as a random variable, causes such a distorsion on the signal? It seems to affect only to big accelerations caused by impacts.
In next figure, you can see more information about the device layout:
The accelerometer (green component) is well fixed to the PCB with strong adhesives. The PCB itself is screwed to some wooden pieces which are also strongly sticked to the plastic box.
The whole device is fixed to the train through duck tape using metal plates for the contact. All componentes are strongly fixed one to each other and we have not observed any relative bouncing between components. The next figure shows the set up:
The blue axis are the vehicle reference system and, as it can be stated with the sign of gravity value, it does not coincide with the accelerometer axis.
I think the phenomenon may be due to an aliasing issue or just a problem with this low-cost accelerometer. Any insight from anybody?