Question regarding `rf.LinAccelSign`

2 visualizaciones (últimos 30 días)
Morten Nissov
Morten Nissov el 20 de Mzo. de 2021
Respondida: Ryan Salvo el 30 de Jul. de 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?

Respuestas (1)

Ryan Salvo
Ryan Salvo el 30 de Jul. de 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

Etiquetas

Productos


Versión

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by