Migration to OpenModelica 1.25 and FMUs Generation
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
// CP: 65001
|
||||
// SimulationX Version: 3.8.2.45319 x64
|
||||
within AIDAModelica;
|
||||
model ControlPosition "ControlPosition_Modelica.ism"
|
||||
Modelica.Blocks.Interfaces.RealOutput Position_command[3] "'output Real' as connector" annotation(Placement(
|
||||
transformation(extent={{40,50},{60,70}}),
|
||||
iconTransformation(extent={{90,-10},{110,10}})));
|
||||
Modelica.Blocks.Interfaces.RealInput Drone_position_consign[3] "'input Real' as connector" annotation(Placement(
|
||||
transformation(extent={{-140,40},{-100,80}}),
|
||||
iconTransformation(extent={{-120,-70},{-80,-30}})));
|
||||
Modelica.Blocks.Interfaces.RealInput Drone_position[3] "'input Real' as connector" annotation(Placement(
|
||||
transformation(extent={{-85,-15},{-45,25}}),
|
||||
iconTransformation(extent={{-120,30},{-80,70}})));
|
||||
Modelica.Blocks.Continuous.LimPID PID[3](
|
||||
controllerType=Modelica.Blocks.Types.SimpleController.P,
|
||||
k={10,10,10},
|
||||
Ti={0.5,0.5,0.5},
|
||||
Td={0.1,0.1,0.1},
|
||||
yMax={100,100,100},
|
||||
initType=Modelica.Blocks.Types.InitPID.SteadyState,
|
||||
limitsAtInit={false, false, false},
|
||||
y_start={1,58,0}) "P, PI, PD, and PID controller with limited output, anti-windup compensation and setpoint weighting" annotation(Placement(transformation(extent={{-30,50},{-10,70}})));
|
||||
equation
|
||||
connect(PID.y,Position_command[:]) annotation(Line(
|
||||
points={{-9,60},{-4,60},{45,60},{50,60}},
|
||||
color={0,0,127},
|
||||
thickness=0.0625));
|
||||
connect(Drone_position_consign[:],PID.u_s) annotation(Line(
|
||||
points={{-120,60},{-115,60},{-37,60},{-32,60}},
|
||||
color={0,0,127},
|
||||
thickness=0.0625));
|
||||
connect(Drone_position[:],PID.u_m) annotation(Line(
|
||||
points={{-65,5},{-60,5},{-20,5},{-20,43},{-20,48}},
|
||||
color={0,0,127},
|
||||
thickness=0.0625));
|
||||
annotation(
|
||||
Icon(graphics={
|
||||
Rectangle(
|
||||
fillColor={255,255,255},
|
||||
fillPattern=FillPattern.Solid,
|
||||
extent={{-100,100},{100,-100}})}),
|
||||
experiment(
|
||||
StopTime=1,
|
||||
StartTime=0,
|
||||
Interval=0.002,
|
||||
MaxInterval="0.001"));
|
||||
end ControlPosition;
|
||||
Reference in New Issue
Block a user