[StabiloRose] Assembly and IMU

A bit of mechanics today. We continued the assembly of the ball. The printed part and the case are fitting together. The next step is about placing the LEDs, which is not going to be easy. We haven’t decided the pattern we will use yet. It will strongly influence the future development of our project.

I also worked on the IMU and on the visualization of the data. I noticed a strange behavior related to the axes. The datasheet of the BNO055 gives the default axes for the measurements (see figure below). However, the default axes for the fusion algorithm are never mentioned. As the heading angle can be retrieved from the register EUL_DATA_X, we can logically think that the heading angular defines a rotation around the X axis. But no ! The heading angle defines a rotation around the Z axis, which is by the way the most used convention. This was not a big deal. A few rotation and parameters to modify and it is now all right. These hours of openGL were usefull.

bno055

[StabiloRose] IMU data visualization

Today, I’m working on a simple openGL-based program to visualize the data provided by the IMU. Just to remind you, our IMU is a BNO055 from Bosch. This little chip integrates a 9-axis IMU, a microcontroller running AHRS algorithms. The program displays a simple shape, which should rotating according to our board position. It retrieves Euler angles from the IMU. The communication will be allowed by the USB-CDC and a shell command.

Ideally, this program is going to provide a model of our system (sphere and LEDs). It will help us to determine the format of our images and frames sent to the ball.

visu