![]() |
ISSDK
1.8
IoT Sensing Software Development Kit
|
ApplyPerturbation function used to analyze dynamic performance. More...
Go to the source code of this file.
Functions | |
void | ApplyPerturbation (SensorFusionGlobals *sfg) |
ApplyPerturbation function used to analyze dynamic performance.
The ApplyPerturbation function applies a user-specified step function to prior fusion results which is then "released" in the next fusion cycle. When used in conjustion with the NXP Sensor Fusion Toolbox, this provides a visual indication of the dynamic behavior of the library.
Also included is some code for white-box testing within the IAR debug environment. It can be used to evaluate propagation delays for tilt and eCompass algorithms. It makes no sense with regard to "Rotation", because that algorithm is simple gyro integration, and will never return to the starting point. It will also overestimate delays for the kalman filters, as there is no actual gyro data corresponding to the simulated step function. So those filters are not operating as they would in the normal world.
Definition in file debug.c.
void ApplyPerturbation | ( | SensorFusionGlobals * | sfg | ) |
The ApplyPerturbation function applies a user-specified step function to prior fusion results which is then "released" in the next fusion cycle. When used in conjustion with the NXP Sensor Fusion Toolbox, this provides a visual indication of the dynamic behavior of the library. This function is normally involved via the "sfg." global pointer.
Definition at line 36 of file debug.c.
References F180OVERPI, SensorFusionGlobals::iPerturbation, ONEOVERSQRT2, SensorFusionGlobals::pControlSubsystem, Quaternion::q0, Quaternion::q1, Quaternion::q2, Quaternion::q3, Q3, Q3G, Q3M, Q6AG, Q6MA, Q9, qAeqAxB(), and ControlSubsystem::QuaternionPacketType.