within AIDAModelica; model YawConsignProducing "Yaw consign producing" Modelica.Blocks.Interfaces.RealInput Yaw( quantity="Mechanics.Rotation.Angle", displayUnit="rad") "Yaw feenback for logical algo" annotation(Placement( transformation(extent={{-20,-20},{20,20}}), iconTransformation(extent={{-120,-70},{-80,-30}}))); Modelica.Blocks.Interfaces.RealOutput DesiredYaw( quantity="Mechanics.Rotation.Angle", displayUnit="rad") "Desired yaw produced point" annotation(Placement( transformation(extent={{-10,-10},{10,10}}), iconTransformation(extent={{90,-10},{110,10}}))); Modelica.Blocks.Interfaces.BooleanInput YRC "Yaw RC command from remote control indication" annotation(Placement( transformation(extent={{-20,-20},{20,20}}), iconTransformation( origin={-100,50}, extent={{-20,-20},{20,20}}))); initial equation DesiredYaw=0; equation // when a yaw order is commanded from the remote control, the current yaw position is recorded into DesiredYaw, which is added to the remote control order //this is to prevent a return to 0 heading at manual mode transition when YRC == false then DesiredYaw = Yaw; end when; annotation(Icon(graphics = {Rectangle(fillColor = {255, 255, 255}, fillPattern = FillPattern.Solid, extent = {{-100, 100}, {100, -100}}), Text(origin = {-8, 0}, extent = {{-40, 10}, {40, -10}}, textString = "%name")}, coordinateSystem(initialScale = 0.1))); end YawConsignProducing;