Files
AIDASimulation/SimulationModels/SimulationX/AIDAModelica/TrajectoryManagement.mo7

63 lines
2.8 KiB
Plaintext
Raw Normal View History

// CP: 65001
// SimulationX Version: 3.8.2.45319 x64
within AIDAModelica;
model TrajectoryManagement "TrajectoryManagement.ism"
Modelica.Blocks.Interfaces.RealOutput Drone_coordinates[3] "'output Real' as connector" annotation(Placement(
transformation(extent={{55,0},{75,20}}),
iconTransformation(extent={{90,-10},{110,10}})));
Modelica.Blocks.Interfaces.RealInput Position_Command[3] "'input Real' as connector" annotation(Placement(
transformation(extent={{-150,-10},{-110,30}}),
iconTransformation(extent={{-120,30},{-80,70}})));
parameter Real y0[*](
quantity="Basics.Real",
displayUnit="-")=0 "Initial Value (integral1)";
Modelica.Blocks.Continuous.LimIntegrator limIntegrator1(
outMax=1000,
y_start=y_start1) "Integrator with limited value of the output" annotation(Placement(transformation(extent={{-45,0},{-25,20}})));
Modelica.Blocks.Continuous.LimIntegrator limIntegrator2(
outMax=1000,
y_start=y_start2) "Integrator with limited value of the output" annotation(Placement(transformation(extent={{-45,-35},{-25,-15}})));
Modelica.Blocks.Continuous.LimIntegrator limIntegrator3(
outMax=1000,
y_start=y_start3) annotation(Placement(transformation(extent={{-45,-65},{-25,-45}})));
parameter Real y_start1(displayUnit="-")=1 "Initial or guess value of output (must be in the limits outMin .. outMax) (limIntegrator1)";
parameter Real y_start2(displayUnit="-")=58 "Initial or guess value of output (must be in the limits outMin .. outMax) (limIntegrator2)";
parameter Real y_start3(displayUnit="-")=0 "Initial or guess value of output (must be in the limits outMin .. outMax) (limIntegrator3)";
equation
connect(Position_Command[1],limIntegrator1.u) annotation(Line(
points={{-130,10},{-125,10},{-52,10},{-47,10}},
color={0,0,127},
thickness=0.0625));
connect(Position_Command[2],limIntegrator2.u) annotation(Line(
points={{-130,10},{-125,10},{-52,10},{-52,-25},{-47,-25}},
color={0,0,127},
thickness=0.0625));
connect(Position_Command[3],limIntegrator3.u) annotation(Line(
points={{-130,10},{-125,10},{-52,10},{-52,-55},{-47,-55}},
color={0,0,127},
thickness=0.0625));
connect(limIntegrator1.y,Drone_coordinates[1]) annotation(Line(
points={{-24,10},{-19,10},{60,10},{65,10}},
color={0,0,127},
thickness=0.0625));
connect(limIntegrator2.y,Drone_coordinates[2]) annotation(Line(
points={{-24,-25},{-19,-25},{60,-25},{60,10},{65,10}},
color={0,0,127},
thickness=0.0625));
connect(limIntegrator3.y,Drone_coordinates[3]) annotation(Line(
points={{-24,-55},{-19,-55},{60,-55},{60,10},{65,10}},
color={0,0,127},
thickness=0.0625));
annotation(
Icon(graphics={
Rectangle(
fillColor={255,255,255},
fillPattern=FillPattern.Solid,
extent={{-100,100},{100,-103.3}})}),
experiment(
StopTime=1,
StartTime=0,
Interval=0.002,
MaxInterval="0.001"));
end TrajectoryManagement;