1 | within ;
|
---|
2 | model TestIndexReduction3
|
---|
3 | extends Modelica.Icons.Example;
|
---|
4 | import Modelica.Constants.pi;
|
---|
5 | import Modelica.Electrical.MultiPhase.Functions.factorY2DC;
|
---|
6 | constant Integer m=3 "Number of phases";
|
---|
7 | parameter Modelica.SIunits.Voltage VNominal=400
|
---|
8 | "Nominal RMS voltage per phase";
|
---|
9 | parameter Modelica.SIunits.Frequency fNominal=50 "Nominal frequency";
|
---|
10 | parameter Modelica.SIunits.Resistance RGrid=10e-3 "Grid choke resistance";
|
---|
11 | parameter Modelica.SIunits.Resistance RLoad = 1;
|
---|
12 | parameter Modelica.SIunits.Inductance LGrid=500e-6 "Grid choke inductance";
|
---|
13 | parameter Modelica.SIunits.Voltage VDC=factorY2DC(m)*VNominal/sqrt(3) "Theoretical DC voltage";
|
---|
14 | parameter Modelica.SIunits.Capacitance CDC=5e-3 "DC capacitor";
|
---|
15 | parameter Modelica.SIunits.Torque TLoad=161.4 "Nominal load torque";
|
---|
16 | parameter Modelica.SIunits.AngularVelocity wLoad=1440.45*2*pi/60 "Nominal load speed";
|
---|
17 | parameter Modelica.SIunits.Inertia JLoad=0.29 "Load's moment of inertia";
|
---|
18 | Modelica.Electrical.MultiPhase.Sources.SineVoltage sineVoltage(
|
---|
19 | final m=m,
|
---|
20 | final phase=-Modelica.Electrical.MultiPhase.Functions.symmetricOrientation(
|
---|
21 | m),
|
---|
22 | final freqHz=fill(fNominal, m),
|
---|
23 | final offset=zeros(m),
|
---|
24 | final startTime=zeros(m),
|
---|
25 | final V=fill(VNominal*sqrt(2/3), m)) annotation (Placement(transformation(
|
---|
26 | extent={{-10,-10},{10,10}},
|
---|
27 | rotation=270,
|
---|
28 | origin={-80,-30})));
|
---|
29 | Modelica.Electrical.MultiPhase.Basic.Star star(m=m) annotation (Placement(
|
---|
30 | transformation(
|
---|
31 | extent={{-10,-10},{10,10}},
|
---|
32 | rotation=270,
|
---|
33 | origin={-80,-60})));
|
---|
34 | Modelica.Electrical.Analog.Basic.Ground ground annotation (Placement(
|
---|
35 | transformation(origin={-80,-90}, extent={{-10,-10},{10,10}})));
|
---|
36 | Modelica.Electrical.Machines.Sensors.CurrentQuasiRMSSensor gridCurrent
|
---|
37 | annotation (Placement(transformation(
|
---|
38 | extent={{-10,10},{10,-10}},
|
---|
39 | rotation=270,
|
---|
40 | origin={-80,0})));
|
---|
41 | Modelica.Electrical.MultiPhase.Basic.Resistor resistor(
|
---|
42 | final m=m,
|
---|
43 | final R=fill(RGrid, m),
|
---|
44 | final T_ref=fill(20, m),
|
---|
45 | final alpha=zeros(m),
|
---|
46 | final T=fill(20, m)) annotation (Placement(transformation(
|
---|
47 | extent={{-10,-10},{10,10}},
|
---|
48 | rotation=90,
|
---|
49 | origin={-80,30})));
|
---|
50 | Modelica.Electrical.MultiPhase.Basic.Inductor inductor(m=m, final L=fill(
|
---|
51 | LGrid, m)) annotation (Placement(transformation(
|
---|
52 | extent={{-10,-10},{10,10}},
|
---|
53 | rotation=90,
|
---|
54 | origin={-80,60})));
|
---|
55 |
|
---|
56 | Modelica.Electrical.MultiPhase.Basic.Delta delta
|
---|
57 | annotation (Placement(transformation(extent={{-48,60},{-28,80}})));
|
---|
58 | Modelica.Electrical.MultiPhase.Basic.Resistor resistor1(
|
---|
59 | final m=m,
|
---|
60 | final R=fill(RLoad, m),
|
---|
61 | final T_ref=fill(20, m),
|
---|
62 | final alpha=zeros(m),
|
---|
63 | final T=fill(20, m)) annotation (Placement(transformation(
|
---|
64 | extent={{-10,-10},{10,10}},
|
---|
65 | rotation=180,
|
---|
66 | origin={-36,44})));
|
---|
67 | equation
|
---|
68 | connect(sineVoltage.plug_n, star.plug_p)
|
---|
69 | annotation (Line(points={{-80,-40},{-80,-50}}, color={0,0,255}));
|
---|
70 | connect(star.pin_n, ground.p)
|
---|
71 | annotation (Line(points={{-80,-70},{-80,-80}}, color={0,0,255}));
|
---|
72 | connect(resistor.plug_n, inductor.plug_p)
|
---|
73 | annotation (Line(points={{-80,40},{-80,50}}, color={0,0,255}));
|
---|
74 | connect(resistor.plug_p, gridCurrent.plug_p)
|
---|
75 | annotation (Line(points={{-80,20},{-80,10}}, color={0,0,255}));
|
---|
76 | connect(gridCurrent.plug_n, sineVoltage.plug_p)
|
---|
77 | annotation (Line(points={{-80,-10},{-80,-20}}, color={0,0,255}));
|
---|
78 | connect(inductor.plug_n, delta.plug_p)
|
---|
79 | annotation (Line(points={{-80,70},{-48,70}}, color={0,0,255}));
|
---|
80 | connect(delta.plug_p, resistor1.plug_n)
|
---|
81 | annotation (Line(points={{-48,70},{-48,44},{-46,44}}, color={0,0,255}));
|
---|
82 | connect(delta.plug_n, resistor1.plug_p)
|
---|
83 | annotation (Line(points={{-28,70},{-28,44},{-26,44}}, color={0,0,255}));
|
---|
84 | annotation (experiment(
|
---|
85 | StopTime=1.5,
|
---|
86 | Interval=5e-05,
|
---|
87 | Tolerance=1e-06), Documentation(
|
---|
88 | info="<html>
|
---|
89 | <p>
|
---|
90 | This is a model of a complete inverter drive comprising:
|
---|
91 | </p>
|
---|
92 | <ul>
|
---|
93 | <li>a grid model and a line choke</li>
|
---|
94 | <li><a href=\"modelica://Modelica.Electrical.PowerConverters.ACDC.DiodeBridge2mPulse\">a diode rectifier</a></li>
|
---|
95 | <li>a buffer capacitor</li>
|
---|
96 | <li><a href=\"modelica://Modelica.Electrical.PowerConverters.DCAC.MultiPhase2Level\">a switching inverter</a></li>
|
---|
97 | <li><a href=\"modelica://Modelica.Electrical.PowerConverters.DCAC.Control.PWM\">a pulse width modulation</a></li>
|
---|
98 | <li><a href=\"modelica://Modelica.Electrical.Machines.Utilities.VfController\">a voltage/frequency characteristic</a></li>
|
---|
99 | <li>the reference frequency ramped up</li>
|
---|
100 | <li>an induction machine with squirrel cage</li>
|
---|
101 | <li>a load inertia and quadratic speed dependent load torque (like a fan or pump)</li>
|
---|
102 | </ul>
|
---|
103 | <p>Please note: Be patient, two switching devices cause many event iteratons which cost performance.</p>
|
---|
104 | <p>Note that due to the voltage drop the voltage at the machine can't reach the full voltage which means torque reduction.</p>
|
---|
105 | <p>Default machine parameters are adapted to nominal phase voltage 400 V and nominal phase current 25 A.</p>
|
---|
106 | </html>"),
|
---|
107 | uses(Modelica(version="3.2.3")));
|
---|
108 | end TestIndexReduction3;
|
---|