Question regarding `rf.LinAccelSign`

1 visualizzazione (ultimi 30 giorni)
Morten Nissov
Morten Nissov il 20 Mar 2021
Risposto: Ryan Salvo il 30 Lug 2021
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?

Risposte (1)

Ryan Salvo
Ryan Salvo il 30 Lug 2021
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

Categorie

Scopri di più su Simulation, Tuning, and Visualization in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by