What is the IMU Sensor measuring in the Sensor Fusion and Tracking Toolbox?

조회 수: 17(최근 30일)
In the IMU Sensor of the Sensor Fusion and Tracking Toolbox where the world frame is NED and the sensor frame is Front-Right-Down it seems the IMU measurements are the opposite of the specific force, which according to [1] (eq. 3.97) is where P is a platform frame or body frame. The same definition is given by multiple other well known authors such as [2] where i is a space-fixed axis and is a the position vector with respect to the origin. Same for [3] in which the specific force is defined as where is the gravitation force. Following the previous definition, an IMU at rest on a table in a NED world with an FRD coordinate frame should measure the force of the table pushing up on it. Thus the measurement should be and I can confirm this with an SBG Ellipse IMU I have at hand. Now suppose the IMU slides forward at on the table then the specific force measurement should be .
It seems mathworks has decided to instead define the specific force as and my question here is: Why was this convention chosen and is there some documentation explaning this choice?
As an example, here I generate an IMU trajectory with +1.0 acceleration on the x-axis using code modified from the examples page.
fs = 100;
nsamples = fs * 1;
traj = kinematicTrajectory('SampleRate',fs);
accBody = zeros(nsamples,3);
accBody(:,1) = 1;
angVelBody = zeros(nsamples,3);
[~,orientationNED,~,accNED,angVelNED] = traj(accBody,angVelBody);
IMU = imuSensor('accel-mag','SampleRate',fs);
[accelReadings,magReadings] = IMU(accNED,angVelNED,orientationNED);
figure(1)
t = (0:(nsamples-1))/fs;
plot(t,accelReadings)
legend('X-axis','Y-axis','Z-axis')
ylabel('Acceleration (m/s^2)')
title('Accelerometer Readings')
Which results in
We can observe that even though I accelerate +1 in x I measure -1 in x.
[1] Jay Farrell. 2008. Aided Navigation: GPS with High Rate Sensors (1 ed.). McGraw-Hill, Inc., New York, NY, USA. page 100
[2] Titterton, David; Weston, John: 'Strapdown Inertial Navigation Technology' (Radar, Sonar & Navigation, 2004). page 24
[3] Groves, Paul D. Principles of GNSS, Inertial, and Multisensor Integrated Navigation Systems, 2nd edition. page 67-68

채택된 답변

Ryan Salvo
Ryan Salvo 2019년 10월 18일
Hi Guillaume,
Thank you for the detailed explanation and apologies for the confusion.
You are correct that we have defined the specific force as gravity minus acceleration. This was done since the IMU sensor model and the correpsonding orientation filters are based off the Open Source Sensor Fusion package.
In this package, the accelerometer reading is defined as "Gravity-Acceleration" for the "Aerospace (NED)" reference frame. More information on this can be found in the "Coordinate Systems" document in the package link above.
Thanks,
Ryan
  댓글 수: 2
GUNHEE MOON
GUNHEE MOON 2021년 5월 14일
Thanks for answer. I was wondering about this also. Somehow it seemed unrealistic to me, as the platform acceleration and IMU output is indifferent in physics. But now i can understand it.

댓글을 달려면 로그인하십시오.

추가 답변(1개)

fengfeng xing
fengfeng xing 2020년 1월 15일
Recently I also found this problem, what u siad is right.
微信截图_20200115101856.png

제품


릴리스

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by