I work with BNO055 in IMU fashion. When I put the BNO055 on a table and move it little, the orientations are very good. None drifts. Even over several hours. But as soon as I go from a point A to a point B (200 meters e.g.) with the BNO055, he loses his bearings. What do I have to do for the BNO055 to work safely in the movement as well.
Hi Herbert, when you place the device on the table, the algorihtm automatically detects it a stops integration the data coming from the gyroscope to prevent drift.
In IMU mode, when the device is in motion, the pitch & roll drift are compensated dynamically by the accelerometer, but the heading drifts over time. The amount of drift varies on a lot of factors, but certainly before you go on a walk, make sure that the gyroscope is calibrated 3/3.
Can you please define "loses his bearings" and potentially provide a datalog? We can tell you if t he output is expected.
I took pictures of you. The BNO055 is always placed in the same place for verification. I walk around the house once and when I come back I put the BNO055 back in the same place. I keep the board horizontal during the movement. As you see, the angle changes. After each course about 2 degrees. What data should I record for you.
This 2 degres is the combined integration error of the gyroscope data. This is a combination of timing inaccuracies and gyroscope sensitivity. This will vary from device to device.
But actually, the gyroscope in BNO055 is very good, and 2 degrees of error like this at the system level is very good and expected performance.
You can reduce this error by alternating the rotation (1x clockwise, 1x counter-clockwise). This way the error is greatly minimized. In some applications, this is possible.
The only way to cancel it is to recalibrate the heading using an external source, such as magnetic field (built-in NDOF mode) or heading coming from a GPS signal.
Thank you for your response.
However, I am surprised at the statement that the gyroscope is very good. With each of those short paths, it was 2 degrees. After the third way, the error was then 6 degrees. The error has added up. I had also already tried earlier over longer distances. Then i got errors over 10 to 20 degress As a result, that means IMU fashion is not to be used.
Are there sensors (gyroscopes) at Bosch that do not have this inaccuracy?