| 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;
|
|---|