2024-01-10 10:50 PM
Hi all,
I am using ST tile box pro and logging IMU orientation data for my test. I did place that module in a robotic arm and then calibrate the accel sensor. I observed 20 degree drift in the heading value after the calibration .
Before calibration almost 0. I did ensure the origin. Kindly explain what's happening after the calibration. Thank you.
Solved! Go to Solution.
2024-01-29 09:46 AM
Hello @DavidThomas,
Recommended sampling rate for MotionFX is 100Hz.
Atime represents weighting on Kalman filter’s measurement noise matrix, increasing this will reduce the trust on the accelerometer sensor measurements.
Atime = 100 was just an example, you can try different values to fine tune the algorithm for your use case.
2024-01-11 06:36 AM
Hi @DavidThomas ,
Welcome to ST Community!
That sounds strange. Which is the firmware installed? Are you using the entry/expert mode?
2024-01-12 01:46 AM
Hi @Federica Bossi I am using algo builder to generate the bin file.
2024-01-12 06:11 AM
Hello @DavidThomas,
Would you please share with me the AlgoBuilder project file and datalog with sensor data (accelerometer, gyroscope and magnetometer) so I can analyze the issue?
2024-01-12 08:00 AM - edited 2024-01-12 09:17 AM
Hi @Miroslav BATEK ,
I have added data log for your reference. That data stored into the SD card with 100 Hz rate. Sample data also not logged in 100Hz. Thank you
2024-01-18 12:40 AM
Hello @DavidThomas,
I have analyzed your data and did a few trials. The drift in yaw (heading) can be solved by increasing the ATime knob. You can increase it significantly up to couple of hundreds. Increasing this will reduce the weight on the accelerometer measurements.
I'm aware about timing inconsistency when logging to SD card, we are working on that but it will take use some time to fix it.
2024-01-18 02:07 AM
Hello, @Miroslav BATEK Thank you so much for your analyze. Kindly let me know, How to change ATime knob in algo builder?
2024-01-18 02:30 AM
You can modify the AlgoBuilder firmware template in your AlgoBuilder installation folder. Usually it is in c:\Program Files (x86)\STMicroelectronics\AlgoBuilder\ProjectTemplate\Project\Src\. There is MotionFX_6X_Init(void) function in ab_sensor_hub.c file. Here you ca modify the knobs i.e. add line ipKnobs->ATime = 100;. You can play with the settings.
After firmware modification you have click on Firmware->Re-Initialize Firmware to apply the changes in your project folder and then build the project.
2024-01-19 05:09 AM - edited 2024-01-21 09:46 PM
Hi @Miroslav BATEK, Thank you so much for your clarification. I have added ipKnobs->ATime = 100 , then collected the data. I have collected the data two times with the same movement. One data doesn't have any drift in the heading, but another log has 18 degree drift. How to get data without drift constantly?
What's happening in sensor input and MotionFx algo , when I am changing the ATime value?
Will it affect the configured 100Hz sensor ODR and MotionFx ODR 100Hz ?
Should I change any other parameter's value ?
2024-01-24 06:45 AM
Hi @Miroslav BATEK , I hope you have seen my query. Could you clarify my doubts?