cancel
Showing results for 
Search instead for 
Did you mean: 

How to set ATime, MTime and FrTime parameters to calculate position with low error

Marco Perciavalle
Associate II

Hi,

I modified the example program "Data Log Fusion" to calculate the position by integrating twice the linear acceleration. However, there is an error on linear acceleration that is very consistent both when the board is moving and the board is stationary. I read that ATime, MTime and FrTime are the parameters which most influence the behaviour of the MotionFX algorithm. Is there a method to set those parameters properly?

I use Nucleo-L476RG with X-NUCLEO-IKS01A2.

Waiting for a reply.

Thanks,

Marco Perciavalle

2 REPLIES 2
Eleon BORLINI
ST Employee

Hi @Marco Perciavalle​ , which kind of error are you experiencing on the linear acceleration? A static error (resulting in an offset) or a dynamic sensitivity error on vibration? The accelerometer used for the Sensor fusion on X-NUCLEO-IKS01A2 is the one in the LSM6DSL module, so in case of DC / constant acceleration offset (that may result on the positioning of the device on on the calibration) you could "calibrate" it acting on X_OFS_USR, Y_OFS_USR, Z_OFS_USR registers (from 73h to 75h) as described in the datasheet. Btw, it is always suggested to run the MotionAC accelerometer library because the MotionFX itself is focused automatically only on gyroscope bias calibration and magnetometer hard iron calibration. Regards

Marco Perciavalle
Associate II

Hi @Eleon BORLINI​,

excuse me for not getting back to you sooner, but I want to calibrate the sensors before, as you suggested. However, I can't create a new working project with motion_AC and motion_FX together. I explain: I followed the instructions written in "Getting started with the STMicroelectronics X-CUBE-MEMS1 software package for STM32CubeMX", which is a document that I found in x-cube-mems1 expansion software; I created a new project with cube-mx, I selected Motion_AC and Motion_FX, IKS01A2 board support package and DataLogFusion application base as additional software; then I configured all the peripheral properly. When I compiled the generated software (which is not modified, so it is equal to DataLogFusion example, which use only motion FX library), some errors occured. In particolar, the functions of the motion fx library are not found. I tried to configure the project's properties as similar as the application example but the result was still negative.

I use STM32cubeIDE as IDE. I attached the file .ioc for cubeMX. In the following picture, the errorsare shown; in this case, the project has just been generated by cube mx:0693W000001sA7YQAU.png

Could you help me, please?

Thanks a lot for the reply.

Marco Perciavalle