CogniPilot

MODELICA LIBRARY · ENGINEERING REFERENCE

model

Tests.AidingHorizonRefusals.ShortHorizon

A horizon that does not cover the slowest declared source plus margin

Must NOT run. A 50 ms horizon in front of a source declared to deliver 110 ms late reaches that source's timestamps only long after they have passed, so every one of its packets is refused as late. Aiding from the slowest source is then simply off, and the fault reported is per-measurement rather than the configuration error it is.

PX4 states the same relation for the same reason: EKF2_DELAY_MAX, the delay between now and its delayed-time horizon, is documented as needing to be at least as large as the largest EKF2_XXX_DELAY. This is that rule with jitter headroom, and it refuses rather than advises.

Base classes

Tests.AidingHorizonRefusals.Arm

Follow base classes for inherited declarations; this page lists explicit declarations only.

Modelica declarations and implementation

Show parameters, interfaces and source

Parameters, inputs, outputs, defaults and equations from the source file.

model ShortHorizon
    "A horizon that does not cover the slowest declared source plus margin"
    extends Tests.AidingHorizonRefusals.Arm(
      fusionHorizon_s = 0.05,
      maximumSourceDelay_s = 0.11,
      horizonJitterMargin_s = 0.05);
    annotation(experiment(StartTime=0.0, StopTime=0.05,
      Tolerance=1.0e-8, Interval=0.00125),
      Documentation(info="<html>
      <p>Must NOT run. A 50 ms horizon in front of a source declared to deliver
      110 ms late reaches that source's timestamps only long after they have
      passed, so every one of its packets is refused as late. Aiding from the
      slowest source is then simply off, and the fault reported is
      per-measurement rather than the configuration error it is.</p>
      <p>PX4 states the same relation for the same reason:
      <code>EKF2_DELAY_MAX</code>, the delay between now and its delayed-time
      horizon, is documented as needing to be at least as large as the largest
      <code>EKF2_XXX_DELAY</code>. This is that rule with jitter headroom, and
      it refuses rather than advises.</p>
      </html>"));
  end ShortHorizon;