Ticket #6348: InductionMotor.mo

File InductionMotor.mo, 6.5 KB (added by Christian Kral, 5 years ago)

Simulation models work in Linux but not Windwos

Line 
1model InductionMotor
2 Modelica.Electrical.QuasiStationary.MultiPhase.Basic.Resistor resistorNum(R_ref = {100E3, 100E3, 100E3}, m = 3) annotation(
3 Placement(visible = true, transformation(origin = {46, 32}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
4Modelica.Electrical.QuasiStationary.MultiPhase.Basic.Star starNum annotation(
5 Placement(visible = true, transformation(origin = {76, 32}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
6Modelica.Electrical.QuasiStationary.SinglePhase.Basic.Ground groundNum annotation(
7 Placement(visible = true, transformation(origin = {86, 14}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
8Modelica.Electrical.QuasiStationary.MultiPhase.Basic.Delta delta annotation(
9 Placement(visible = true, transformation(origin = {54, -2}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
10Modelica.Electrical.QuasiStationary.SinglePhase.Basic.Ground ground1 annotation(
11 Placement(visible = true, transformation(origin = {-10, -68}, extent = {{-10, -10}, {10, 10}}, rotation = 90)));
12Modelica.Electrical.QuasiStationary.MultiPhase.Ideal.IdealClosingSwitch idealCloser(m = 3) annotation(
13 Placement(visible = true, transformation(origin = {-44, 32}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
14Modelica.Electrical.QuasiStationary.MultiPhase.Sensors.PowerSensor powerSensor annotation(
15 Placement(visible = true, transformation(origin = {-14, 32}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
16Modelica.Electrical.QuasiStationary.MultiPhase.Sensors.CurrentQuasiRMSSensor currentRMSSensor annotation(
17 Placement(visible = true, transformation(origin = {16, 32}, extent = {{10, -10}, {-10, 10}}, rotation = 180)));
18Modelica.Electrical.QuasiStationary.MultiPhase.Basic.Star starSensor annotation(
19 Placement(visible = true, transformation(origin = {-14, 2}, extent = {{-10, 10}, {10, -10}}, rotation = -90)));
20Modelica.Electrical.QuasiStationary.MultiPhase.Basic.Star starSource annotation(
21 Placement(visible = true, transformation(origin = {-48, -68}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
22Modelica.Electrical.QuasiStationary.MultiPhase.Sensors.VoltageQuasiRMSSensor voltageRMSSensor annotation(
23 Placement(visible = true, transformation(origin = {56, -24}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
24Modelica.Blocks.Sources.BooleanStep booleanStep(startTime = 0) annotation(
25 Placement(visible = true, transformation(origin = {-90, 50}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
26Modelica.Blocks.Routing.BooleanReplicator booleanReplicator(nout = 3) annotation(
27 Placement(visible = true, transformation(origin = {-60, 50}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
28Modelica.Magnetic.QuasiStatic.FundamentalWave.BasicMachines.InductionMachines.IM_SquirrelCage imc(Jr = 1.6, Lm = 30.06E-3, Lrsigma = 2.213E-3, Lssigma(start = 2.213E-3), Rr = 95.47E-3, Rs(start = 75.07E-3), fsNominal = 50, gamma(displayUnit = "rad"), gammar(displayUnit = "rad"), gammas(displayUnit = "rad"), m = 3, p = 4, wMechanical(displayUnit = "rad/s")) annotation(
29 Placement(visible = true, transformation(origin = {26, -80}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
30Modelica.Electrical.QuasiStationary.MultiPhase.Sources.VoltageSource voltageSource( V = {480, 480, 480}, f = 50,gamma(displayUnit = "rad"), m = 3) annotation(
31 Placement(visible = true, transformation(origin = {-72, -30}, extent = {{-10, 10}, {10, -10}}, rotation = -90)));
32Modelica.Magnetic.QuasiStatic.FundamentalWave.Utilities.TerminalBox terminalBox(m = 3, terminalConnection = "Y") annotation(
33 Placement(visible = true, transformation(origin = {26, -54}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
34equation
35connect(voltageSource.plug_p, idealCloser.plug_p) annotation(
36 Line(points = {{-72, -20}, {-72, 32}, {-54, 32}}, color = {85, 170, 255}));
37connect(voltageSource.plug_n, starSource.plug_p) annotation(
38 Line(points = {{-72, -40}, {-72, -40}, {-72, -68}, {-58, -68}, {-58, -68}}, color = {85, 170, 255}));
39connect(idealCloser.plug_n, powerSensor.currentP) annotation(
40 Line(points = {{-34, 32}, {-24, 32}, {-24, 32}, {-24, 32}}, color = {85, 170, 255}));
41connect(powerSensor.currentN, currentRMSSensor.plug_p) annotation(
42 Line(points = {{-4, 32}, {6, 32}, {6, 32}, {6, 32}}, color = {85, 170, 255}));
43connect(currentRMSSensor.plug_n, resistorNum.plug_p) annotation(
44 Line(points = {{26, 32}, {36, 32}, {36, 32}, {36, 32}}, color = {85, 170, 255}));
45connect(resistorNum.plug_n, starNum.plug_p) annotation(
46 Line(points = {{56, 32}, {66, 32}, {66, 32}, {66, 32}}, color = {85, 170, 255}));
47connect(starNum.pin_n, groundNum.pin) annotation(
48 Line(points = {{86, 32}, {86, 32}, {86, 24}, {86, 24}}, color = {85, 170, 255}));
49connect(powerSensor.voltageN, starSensor.plug_p) annotation(
50 Line(points = {{-14, 22}, {-14, 22}, {-14, 12}, {-14, 12}}, color = {85, 170, 255}));
51connect(starSensor.pin_n, starSource.pin_n) annotation(
52 Line(points = {{-14, -8}, {-14, -8}, {-14, -34}, {-38, -34}, {-38, -68}, {-38, -68}}, color = {85, 170, 255}));
53connect(starSource.pin_n, ground1.pin) annotation(
54 Line(points = {{-38, -68}, {-20, -68}, {-20, -68}, {-20, -68}}, color = {85, 170, 255}));
55connect(terminalBox.starpoint, ground1.pin) annotation(
56 Line(points = {{16, -58}, {-20, -58}, {-20, -68}}, color = {85, 170, 255}));
57connect(imc.plug_sp, terminalBox.plug_sp) annotation(
58 Line(points = {{32, -70}, {32, -60}}, color = {85, 170, 255}));
59connect(imc.plug_sn, terminalBox.plug_sn) annotation(
60 Line(points = {{20, -70}, {20, -60}}, color = {85, 170, 255}));
61connect(currentRMSSensor.plug_n, terminalBox.plugSupply) annotation(
62 Line(points = {{26, 32}, {26, -58}}, color = {85, 170, 255}));
63connect(currentRMSSensor.plug_n, delta.plug_p) annotation(
64 Line(points = {{26, 32}, {26, 32}, {26, -2}, {44, -2}, {44, -2}}, color = {85, 170, 255}));
65connect(voltageRMSSensor.plug_p, delta.plug_p) annotation(
66 Line(points = {{46, -24}, {40, -24}, {40, -2}, {44, -2}, {44, -2}}, color = {85, 170, 255}));
67connect(voltageRMSSensor.plug_n, delta.plug_n) annotation(
68 Line(points = {{66, -24}, {74, -24}, {74, -2}, {64, -2}, {64, -2}}, color = {85, 170, 255}));
69connect(booleanStep.y, booleanReplicator.u) annotation(
70 Line(points = {{-78, 50}, {-72, 50}, {-72, 50}, {-72, 50}}, color = {255, 0, 255}));
71connect(booleanReplicator.y, idealCloser.control) annotation(
72 Line(points = {{-48, 50}, {-44, 50}, {-44, 44}, {-44, 44}}, color = {255, 0, 255}, thickness = 0.5));
73connect(powerSensor.voltageP, powerSensor.currentP) annotation(
74 Line(points = {{-14, 42}, {-24, 42}, {-24, 32}, {-24, 32}}, color = {85, 170, 255}));
75end InductionMotor;