Ticket #4645: FB.mo

File FB.mo, 2.6 KB (added by ceraolo, 4 years ago)
Line 
1model FB "Versione dell'antiwindup con PID (back-calculation)"
2  Modelica.Blocks.Continuous.FirstOrder plant(T = 10) annotation(
3    Placement(visible = true, transformation(origin = {50, 30}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
4  Modelica.Blocks.Math.Feedback feedback annotation(
5    Placement(visible = true, transformation(origin = {-32, 30}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
6Modelica.Blocks.Continuous.PI PI annotation(
7    Placement(visible = true, transformation(origin = {4, 30}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
8Modelica.Blocks.Sources.Step step annotation(
9    Placement(visible = true, transformation(origin = {-78, 0}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
10Modelica.Blocks.Continuous.PI PI1 annotation(
11    Placement(visible = true, transformation(origin = {4, -30}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
12Modelica.Blocks.Math.Feedback feedback1 annotation(
13    Placement(visible = true, transformation(origin = {-32, -30}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
14Modelica.Blocks.Continuous.FirstOrder plant1(T = 10) annotation(
15    Placement(visible = true, transformation(origin = {50, -30}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
16equation
17connect(PI1.u, feedback1.u1) annotation(
18    Line(points = {{-8, -30}, {-42, -30}, {-42, -30}, {-40, -30}}, color = {0, 0, 127}));
19connect(feedback1.u1, step.y) annotation(
20    Line(points = {{-40, -30}, {-50, -30}, {-50, 0}, {-66, 0}, {-66, 0}}, color = {0, 0, 127}));
21connect(feedback1.u2, plant1.y) annotation(
22    Line(points = {{-32, -38}, {-32, -38}, {-32, -50}, {70, -50}, {70, -30}, {62, -30}, {62, -30}}, color = {0, 0, 127}));
23  connect(feedback.u2, plant.y) annotation(
24    Line(points = {{-32, 22}, {-32, 22}, {-32, 4}, {72, 4}, {72, 30}, {62, 30}, {62, 30}}, color = {0, 0, 127}));
25  connect(feedback.u1, step.y) annotation(
26    Line(points = {{-40, 30}, {-50, 30}, {-50, 0}, {-68, 0}, {-68, 0}, {-66, 0}}, color = {0, 0, 127}));
27connect(PI1.y, plant1.u) annotation(
28    Line(points = {{15, -30}, {37, -30}, {37, -30}, {37, -30}}, color = {0, 0, 127}));
29  connect(feedback.y, PI.u) annotation(
30    Line(points = {{-23, 30}, {-11, 30}, {-11, 30}, {-9, 30}}, color = {0, 0, 127}));
31  connect(PI.y, plant.u) annotation(
32    Line(points = {{15, 30}, {25, 30}, {25, 30}, {35, 30}, {35, 30}, {36, 30}, {36, 30}, {37, 30}}, color = {0, 0, 127}));
33  annotation(
34    Diagram(coordinateSystem(extent = {{-100, -60}, {80, 60}})),
35    uses(Modelica(version = "3.2.3")),
36    experiment(StartTime = 0, StopTime = 200, Tolerance = 1e-06, Interval = 0.4));
37end FB;