1 | within ;
|
---|
2 | package IMC_DCBraking
|
---|
3 | extends Modelica.Icons.ExamplesPackage;
|
---|
4 |
|
---|
5 | partial model DCBraking_Template
|
---|
6 | "Induction machine with DC current braking"
|
---|
7 | extends Modelica.Icons.Example;
|
---|
8 | import Modelica.Constants.pi;
|
---|
9 | constant Integer m=3 "Number of phases";
|
---|
10 | parameter Modelica.SIunits.Current INominal=100 "Nominal RMS current per phase";
|
---|
11 | parameter Modelica.SIunits.Current Idc "DC braking current";
|
---|
12 | parameter Modelica.SIunits.Current is[3] "Phase currents";
|
---|
13 | parameter Modelica.SIunits.AngularVelocity w0(displayUnit="rev/min")=
|
---|
14 | 2*pi*imcData.fsNominal/imcData.p "Initial mehcanical speed";
|
---|
15 | parameter Modelica.SIunits.Inertia JLoad=4*imcData.Jr
|
---|
16 | "Load's moment of inertia";
|
---|
17 | Modelica.SIunits.Torque tauElectrical=imc.tauElectrical "Electrical torque";
|
---|
18 | Modelica.SIunits.Torque tauShaft=imc.tauShaft "Shaft torque";
|
---|
19 | Modelica.SIunits.AngularVelocity wMechanical(displayUnit="rev/min") = imc.wMechanical
|
---|
20 | "Shaft speed";
|
---|
21 | parameter
|
---|
22 | Modelica.Electrical.Machines.Utilities.ParameterRecords.AIM_SquirrelCageData
|
---|
23 | imcData annotation (Placement(transformation(extent={{20,-40},{40,-20}})));
|
---|
24 | Modelica.Electrical.Machines.BasicMachines.AsynchronousInductionMachines.AIM_SquirrelCage
|
---|
25 | imc(
|
---|
26 | p=imcData.p,
|
---|
27 | fsNominal=imcData.fsNominal,
|
---|
28 | Rs=imcData.Rs,
|
---|
29 | TsRef=imcData.TsRef,
|
---|
30 | alpha20s(displayUnit="1/K") = imcData.alpha20s,
|
---|
31 | Lssigma=imcData.Lssigma,
|
---|
32 | Jr=imcData.Jr,
|
---|
33 | Js=imcData.Js,
|
---|
34 | Lszero=imcData.Lszero,
|
---|
35 | frictionParameters=imcData.frictionParameters,
|
---|
36 | phiMechanical(fixed=true, start=0),
|
---|
37 | wMechanical(fixed=true, start=w0),
|
---|
38 | statorCoreParameters=imcData.statorCoreParameters,
|
---|
39 | strayLoadParameters=imcData.strayLoadParameters,
|
---|
40 | Lm=imcData.Lm,
|
---|
41 | Lrsigma=imcData.Lrsigma,
|
---|
42 | Rr=imcData.Rr,
|
---|
43 | TrRef=imcData.TrRef,
|
---|
44 | TsOperational=293.15,
|
---|
45 | alpha20r=imcData.alpha20r,
|
---|
46 | TrOperational=293.15)
|
---|
47 | annotation (Placement(transformation(extent={{20,-10},{40,10}})));
|
---|
48 | Modelica.Mechanics.Rotational.Components.Inertia loadInertia(J=JLoad)
|
---|
49 | annotation (Placement(transformation(extent={{50,-10},{70,10}})));
|
---|
50 | Modelica.Electrical.Machines.Utilities.TerminalBox
|
---|
51 | terminalBox(m=m)
|
---|
52 | annotation (Placement(transformation(extent={{20,6},{40,26}})));
|
---|
53 | Modelica.Electrical.MultiPhase.Basic.PlugToPin_p plugToPin1(m=m, k=1)
|
---|
54 | annotation (Placement(transformation(extent={{-20,70},{-40,90}})));
|
---|
55 | Modelica.Electrical.MultiPhase.Basic.PlugToPin_p plugToPin2(m=m, k=2)
|
---|
56 | annotation (Placement(transformation(extent={{-20,30},{-40,50}})));
|
---|
57 | Modelica.Electrical.Analog.Sources.ConstantCurrent
|
---|
58 | constantCurrent(I=Idc)
|
---|
59 | annotation (Placement(transformation(
|
---|
60 | extent={{-10,-10},{10,10}},
|
---|
61 | rotation=90,
|
---|
62 | origin={-50,62})));
|
---|
63 | Modelica.Electrical.Analog.Basic.Ground ground
|
---|
64 | annotation (Placement(transformation(extent={{-70,20},{-50,40}})));
|
---|
65 | initial equation
|
---|
66 | der(imc.idq_rs[1])=0;
|
---|
67 | der(imc.idq_rs[2])=0;
|
---|
68 | equation
|
---|
69 | connect(imc.flange, loadInertia.flange_a)
|
---|
70 | annotation (Line(points={{40,0},{50,0}}, color={0,0,0}));
|
---|
71 | connect(plugToPin1.pin_p, constantCurrent.n)
|
---|
72 | annotation (Line(points={{-32,80},{-50,80},{-50,72}}, color={0,0,255}));
|
---|
73 | connect(plugToPin2.pin_p, constantCurrent.p)
|
---|
74 | annotation (Line(points={{-32,40},{-50,40},{-50,52}}, color={0,0,255}));
|
---|
75 | connect(plugToPin2.plug_p, plugToPin1.plug_p) annotation (Line(points={{-28,40},
|
---|
76 | {-20,40},{-20,80},{-28,80}}, color={0,0,255}));
|
---|
77 | connect(terminalBox.plug_sn, imc.plug_sn)
|
---|
78 | annotation (Line(points={{24,10},{24,10}}, color={0,0,255}));
|
---|
79 | connect(terminalBox.plug_sp, imc.plug_sp)
|
---|
80 | annotation (Line(points={{36,10},{36,10}}, color={0,0,255}));
|
---|
81 | connect(plugToPin2.plug_p, terminalBox.plugSupply)
|
---|
82 | annotation (Line(points={{-28,40},{30,40},{30,12}}, color={0,0,255}));
|
---|
83 | connect(plugToPin2.pin_p, ground.p)
|
---|
84 | annotation (Line(points={{-32,40},{-60,40}}, color={0,0,255}));
|
---|
85 | annotation (experiment(
|
---|
86 | StopTime=25,
|
---|
87 | Interval=0.001,
|
---|
88 | Tolerance=1e-06,
|
---|
89 | __Dymola_Algorithm="Dassl"), Documentation(info="<html>
|
---|
90 | <p>
|
---|
91 | The stator windings of an induction machine are fed by a DC current, causing a stationary current space phasor.
|
---|
92 | Since the rotor is turning, voltage is induced in the rotor cage which in turn drives rotor currents.
|
---|
93 | This creates a braking torque.
|
---|
94 | </p>
|
---|
95 | <p>
|
---|
96 | Choose a layout and plot tauElectrical and tauShaft versus wMechanical.
|
---|
97 | </p>
|
---|
98 | <p>Default machine parameters are used.</p>
|
---|
99 | <h4>References</h4>
|
---|
100 | <table border=\"0\" cellspacing=\"0\" cellpadding=\"2\">
|
---|
101 | <tr>
|
---|
102 | <td>[Fischer2017]</td>
|
---|
103 | <td>R. Fischer,
|
---|
104 | Elektrische Maschinen, 17<sup>th</sup> ed., chapter 5.3.3.,
|
---|
105 | <em>Hanser</em>,
|
---|
106 | ISBN 978-3-446-45218-3, 2017.</td>
|
---|
107 | </tr>
|
---|
108 | </html>"));
|
---|
109 | end DCBraking_Template;
|
---|
110 |
|
---|
111 | model DCBraking_Y3 "Induction machine with DC current braking"
|
---|
112 | extends DCBraking_Template(
|
---|
113 | terminalBox(terminalConnection="Y"),
|
---|
114 | Idc=INominal*sqrt(2),
|
---|
115 | is=Idc*{1,-1/2,-1/2});
|
---|
116 | Modelica.Electrical.MultiPhase.Basic.PlugToPin_p plugToPin3(m=m, k=3)
|
---|
117 | annotation (Placement(transformation(extent={{-20,-10},{-40,10}})));
|
---|
118 | initial equation
|
---|
119 | imc.is[2]=is[2];
|
---|
120 | equation
|
---|
121 | connect(plugToPin2.plug_p, plugToPin3.plug_p) annotation (Line(points={{-28,40},
|
---|
122 | {-20,40},{-20,0},{-28,0}}, color={0,0,255}));
|
---|
123 | connect(constantCurrent.p, plugToPin3.pin_p)
|
---|
124 | annotation (Line(points={{-50,52},{-50,0},{-32,0}}, color={0,0,255}));
|
---|
125 | annotation (experiment(
|
---|
126 | StopTime=25,
|
---|
127 | Interval=0.001,
|
---|
128 | Tolerance=1e-06,
|
---|
129 | __Dymola_Algorithm="Dassl"), Documentation(info="<html>
|
---|
130 | <p>
|
---|
131 | The stator windings of an induction machine are fed by a DC current, causing a stationary current space phasor.
|
---|
132 | Since the rotor is turning, voltage is induced in the rotor cage which in turn drives rotor currents.
|
---|
133 | This creates a braking torque.
|
---|
134 | </p>
|
---|
135 | <p>
|
---|
136 | Choose a layout and plot tauElectrical and tauShaft versus wMechanical.
|
---|
137 | </p>
|
---|
138 | <p>Default machine parameters are used.</p>
|
---|
139 | <h4>References</h4>
|
---|
140 | <table border=\"0\" cellspacing=\"0\" cellpadding=\"2\">
|
---|
141 | <tr>
|
---|
142 | <td>[Fischer2017]</td>
|
---|
143 | <td>R. Fischer,
|
---|
144 | Elektrische Maschinen, 17<sup>th</sup> ed., chapter 5.3.3.,
|
---|
145 | <em>Hanser</em>,
|
---|
146 | ISBN 978-3-446-45218-3, 2017.</td>
|
---|
147 | </tr>
|
---|
148 | </html>"));
|
---|
149 | end DCBraking_Y3;
|
---|
150 |
|
---|
151 | model DCBraking_Y2 "Induction machine with DC current braking"
|
---|
152 | extends DCBraking_Template(
|
---|
153 | terminalBox(terminalConnection="Y"),
|
---|
154 | Idc=INominal*sqrt(3/2),
|
---|
155 | is=Idc*{1,-1,0});
|
---|
156 | initial equation
|
---|
157 | annotation (experiment(
|
---|
158 | StopTime=25,
|
---|
159 | Interval=0.001,
|
---|
160 | Tolerance=1e-06,
|
---|
161 | __Dymola_Algorithm="Dassl"), Documentation(info="<html>
|
---|
162 | <p>
|
---|
163 | The stator windings of an induction machine are fed by a DC current, causing a stationary current space phasor.
|
---|
164 | Since the rotor is turning, voltage is induced in the rotor cage which in turn drives rotor currents.
|
---|
165 | This creates a braking torque.
|
---|
166 | </p>
|
---|
167 | <p>
|
---|
168 | Choose a layout and plot tauElectrical and tauShaft versus wMechanical.
|
---|
169 | </p>
|
---|
170 | <p>Default machine parameters are used.</p>
|
---|
171 | <h4>References</h4>
|
---|
172 | <table border=\"0\" cellspacing=\"0\" cellpadding=\"2\">
|
---|
173 | <tr>
|
---|
174 | <td>[Fischer2017]</td>
|
---|
175 | <td>R. Fischer,
|
---|
176 | Elektrische Maschinen, 17<sup>th</sup> ed., chapter 5.3.3.,
|
---|
177 | <em>Hanser</em>,
|
---|
178 | ISBN 978-3-446-45218-3, 2017.</td>
|
---|
179 | </tr>
|
---|
180 | </html>"));
|
---|
181 | end DCBraking_Y2;
|
---|
182 |
|
---|
183 | model DCBraking_D2 "Induction machine with DC current braking"
|
---|
184 | extends DCBraking_Template(
|
---|
185 | terminalBox(terminalConnection="D"),
|
---|
186 | Idc=INominal*3/sqrt(2),
|
---|
187 | is=Idc*{2/3,-1/3,-1/3});
|
---|
188 | initial equation
|
---|
189 | imc.is[2]=is[2];
|
---|
190 | annotation (experiment(
|
---|
191 | StopTime=25,
|
---|
192 | Interval=0.001,
|
---|
193 | Tolerance=1e-06,
|
---|
194 | __Dymola_Algorithm="Dassl"), Documentation(info="<html>
|
---|
195 | <p>
|
---|
196 | The stator windings of an induction machine are fed by a DC current, causing a stationary current space phasor.
|
---|
197 | Since the rotor is turning, voltage is induced in the rotor cage which in turn drives rotor currents.
|
---|
198 | This creates a braking torque.
|
---|
199 | </p>
|
---|
200 | <p>
|
---|
201 | Choose a layout and plot tauElectrical and tauShaft versus wMechanical.
|
---|
202 | </p>
|
---|
203 | <p>Default machine parameters are used.</p>
|
---|
204 | <h4>References</h4>
|
---|
205 | <table border=\"0\" cellspacing=\"0\" cellpadding=\"2\">
|
---|
206 | <tr>
|
---|
207 | <td>[Fischer2017]</td>
|
---|
208 | <td>R. Fischer,
|
---|
209 | Elektrische Maschinen, 17<sup>th</sup> ed., chapter 5.3.3.,
|
---|
210 | <em>Hanser</em>,
|
---|
211 | ISBN 978-3-446-45218-3, 2017.</td>
|
---|
212 | </tr>
|
---|
213 | </html>"));
|
---|
214 | end DCBraking_D2;
|
---|
215 |
|
---|
216 | model DCBraking_D3 "Induction machine with DC current braking"
|
---|
217 | extends DCBraking_Template(
|
---|
218 | terminalBox(terminalConnection="D"),
|
---|
219 | Idc=INominal*sqrt(6),
|
---|
220 | is=Idc*{1/2,-1/2,0});
|
---|
221 | Modelica.Electrical.MultiPhase.Basic.PlugToPin_p plugToPin3(m=m, k=3)
|
---|
222 | annotation (Placement(transformation(extent={{-20,-10},{-40,10}})));
|
---|
223 | initial equation
|
---|
224 | der(imc.idq_ss[1])=0;
|
---|
225 | der(imc.idq_ss[2])=0;
|
---|
226 | equation
|
---|
227 | connect(plugToPin2.plug_p, plugToPin3.plug_p) annotation (Line(points={{-28,40},
|
---|
228 | {-20,40},{-20,0},{-28,0}}, color={0,0,255}));
|
---|
229 | connect(constantCurrent.p, plugToPin3.pin_p)
|
---|
230 | annotation (Line(points={{-50,52},{-50,0},{-32,0}}, color={0,0,255}));
|
---|
231 | annotation (experiment(
|
---|
232 | StopTime=25,
|
---|
233 | Interval=0.001,
|
---|
234 | Tolerance=1e-06,
|
---|
235 | __Dymola_Algorithm="Dassl"), Documentation(info="<html>
|
---|
236 | <p>
|
---|
237 | The stator windings of an induction machine are fed by a DC current, causing a stationary current space phasor.
|
---|
238 | Since the rotor is turning, voltage is induced in the rotor cage which in turn drives rotor currents.
|
---|
239 | This creates a braking torque.
|
---|
240 | </p>
|
---|
241 | <p>
|
---|
242 | Choose a layout and plot tauElectrical and tauShaft versus wMechanical.
|
---|
243 | </p>
|
---|
244 | <p>Default machine parameters are used.</p>
|
---|
245 | <h4>References</h4>
|
---|
246 | <table border=\"0\" cellspacing=\"0\" cellpadding=\"2\">
|
---|
247 | <tr>
|
---|
248 | <td>[Fischer2017]</td>
|
---|
249 | <td>R. Fischer,
|
---|
250 | Elektrische Maschinen, 17<sup>th</sup> ed., chapter 5.3.3.,
|
---|
251 | <em>Hanser</em>,
|
---|
252 | ISBN 978-3-446-45218-3, 2017.</td>
|
---|
253 | </tr>
|
---|
254 | </html>"));
|
---|
255 | end DCBraking_D3;
|
---|
256 | annotation (uses(Modelica(version="3.2.3")));
|
---|
257 | end IMC_DCBraking;
|
---|