Simulink IMU's accelerometer is different with MPU6050 acclerometer
7 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I am using Simulink IMU box to simulate my dynamic model, but its accelerometer values seem to have opposite sign. If we lay MPU6050 on flat desk and sensor's Z axis upward, MPU6050 senses [0, 0, 9.81] because of inertial force. but Simulink IMU (ENU frame) outputs [0, 0, -9.81]. Do I just multiply by -1?
0 commentaires
Réponses (2)
Sanskar
le 26 Juin 2023
Hi!
What I understand from your question is that you are expecting positive value for Z-axis upward, but simulink IMU output returns it in negative.
In Simulink, the IMU block follows the right-hand rule convention for the coordinate frames. According to the convention, the Z-axis points upward, which is opposite to the gravity vector direction.
So, if you are expecting a positive value for the accelerometer readings along the Z-axis when the sensor is placed on a flat desk , and Simulink IMU is giving you a negative value, you can indeed multiply the output by -1 to obtain the expected positive value.
Hope it helps!
Sanskar
0 commentaires
Brian Fanous
le 26 Juin 2023
I'm not sure which IMU block you mean, but the ones in the Navigation Toolbox and Sensor Fusion and Tracking Toolbox, when in the ENU convention, have the Z-axis pointing up. So gravity will exert a negative acceleration.
You likely cannot only negate the z-axis because then you won't end up with a right-handed coordinate system. You might also need to swap the X and Y axes.
shows how to swap and negate the MPU-9250s axes to match the NED convention. The process is similar for the ENU convention.
0 commentaires
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!