Linear Acceleration input to the IMU Block in Simulink
Show older comments
Referenced documents: https://uk.mathworks.com/help/nav/ref/imu.html
Hi, I have a UAV model in Simulink and would like to add some noise to the model outputs. I'm trying to simulate IMU sensors using the 'IMU' block. I configured it in NED orientation. My model also assumes NED orientation.
The issue is that I don't understand the block's help:
- "Do not include the gravitational acceleration in this input since the sensor models gravitational acceleration by default."
After reading this, I was planning to get the Body-Frame accel from the EOM, substract the Body-Frame gravity and connect that to the block. But then I read this in the block's help:
- "To obtain the total acceleration (totalAcc), the acceleration is preprocessed by negating and adding the gravity constant vector (g= [0; 0; 9.8] m/s2 assuming an NED frame) as: totalAcc=−acceleration+g. The acceleration term is negated to obtain zero total acceleration readings when the accelerometer is in a free fall. The acceleration term is also known as the specific force".
So if I substract the gravity from the body frame total accel, I think what happens internally is:
(EOM_accel - g) --> processed as totalAcc=−acceleration+g --> output = -(EOM_accel - g)+g = 2g - EOM_accel, which is not correct.
Then I thought about passing (-EOM_accel + 2g) so that, after processing, the block delivers (EOM_accel-g), which is the the specific force that an accelerometer delivers, isn't it? i.e. -g when the UAV hovers, 0 in free fall.
But this doesn't feel right. What am I getting wrong?
Thanks!
Accepted Answer
More Answers (0)
Categories
Find more on Aerospace Applications in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!