Question regarding `rf.LinAccelSign`

1 回表示 (過去 30 日間)
Morten Nissov
Morten Nissov 2021 年 3 月 20 日
回答済み: Ryan Salvo 2021 年 7 月 30 日
I am looking into the available error state filters for aided inertial navigation, particularly insfilterErrorState.
There is one part of the code that I am having a hard time understanding, which is the usage of rf.LinAccelSign on line 98 of ErrorStateIMUGPSFuserBase.m. This is used to invert the sign of the acceleration measurements from the accelerometer before they are used in the prediction routine, the comment above reads
rf = rfconfig(obj.ReferenceFrame);
% Invert the accelerometer signal if linear acceleration is
% negative in the reference frame.
accelMeas = rf.LinAccelSign.*accelMeas;
Looking at ReferenceFrame.m I can see that the LinAccelSign parameter is given as negative for both ENU and NED frames, can this really be the case? I would have guessed that they would have been the opposite of one another.
Edit: Just noticed, in NED.m
% LinAccelSign - is the linear acceleration a positive or negative
% quantity.
% In ENU, it is a negative quantity.
LinAccelSign = -1;
the exact same is written in the ENU.m file, perhaps this is an error?

回答 (1 件)

Ryan Salvo
Ryan Salvo 2021 年 7 月 30 日
Hi Morten,
This is actually correct for both NED and ENU, as we have defined them in the insfilterErrorState. However, here is a small typo in the comment in the NED.m file. The final line should read:
% In NED, it is a negative quantity.
This typo has been fixed in future releases, apologies for any confusion it may have caused.
Thanks,
Ryan

カテゴリ

Help Center および File ExchangeSimulation, Tuning, and Visualization についてさらに検索

タグ

製品


リリース

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by