block
Vehicles.Rdd2.ReducedRateController
RDD2 flight controller with a reduced-authority body-rate loop
Second concrete implementation of
Vehicles.Rdd2.PartialController. It is identical to the
default AvionicsSystem stack in structure and signal routing
and differs only in the body-rate loop gain, which is softened from the
nominal {20, 20, 10} to {12, 12, 6}. The lower
gain reduces rate-loop bandwidth and control authority, producing a more
sluggish closed-loop response.
Its only purpose is to prove that the controller boundary is a real swap
point symmetric to the estimator boundary: a single
redeclare block ControllerModel = Vehicles.Rdd2.ReducedRateController
line in a mission selects it in place of the default stack, changing the
controller and touching nothing else in the closed loop. It is not claimed
to fly better; it exists to exercise the interface.
Base classes
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.
block ReducedRateController
"RDD2 flight controller with a reduced-authority body-rate loop"
extends Vehicles.Rdd2.AvionicsSystem(
rateTask(rateGain = {12.0, 12.0, 6.0}));
annotation(Documentation(info = "<html>
<p>Second concrete implementation of
<code>Vehicles.Rdd2.PartialController</code>. It is identical to the
default <code>AvionicsSystem</code> stack in structure and signal routing
and differs only in the body-rate loop gain, which is softened from the
nominal <code>{20, 20, 10}</code> to <code>{12, 12, 6}</code>. The lower
gain reduces rate-loop bandwidth and control authority, producing a more
sluggish closed-loop response.</p>
<p>Its only purpose is to prove that the controller boundary is a real swap
point symmetric to the estimator boundary: a single
<code>redeclare block ControllerModel = Vehicles.Rdd2.ReducedRateController</code>
line in a mission selects it in place of the default stack, changing the
controller and touching nothing else in the closed loop. It is not claimed
to fly better; it exists to exercise the interface.</p>
</html>"));
end ReducedRateController;