Ticket #2178: Transrech.mo

File Transrech.mo, 37.4 KB (added by Christian Schubert, 12 years ago)

Library

Line 
1within ;
2package Transrech
3 model Modell
4 parameter Modelica.SIunits.Voltage U_dc_soll = 750;
5 parameter Modelica.SIunits.Inductance L_load = 20e-3;
6 parameter Modelica.SIunits.Capacitance C_load = 5e-3;
7 parameter Boolean enableBremsChopper = true;
8
9 Modelica.Electrical.Analog.Basic.Ground ground annotation(Placement(transformation(extent={{-100,
10 -20},{-80,0}})));
11 Modelica.Electrical.Analog.Sources.SignalCurrent I_Q annotation(Placement(transformation(
12 origin={-90,30},
13 extent={{-10,-10},{10,10}},
14 rotation=90)));
15 Modelica.Electrical.Analog.Basic.Capacitor C1( C=10e-3, v(fixed=
16 true, start=750))
17 annotation(Placement(transformation(
18 origin={-54,26},
19 extent={{10,-10},{-10,10}},
20 rotation=90)));
21 Modelica.Electrical.Analog.Basic.Inductor L1(
22 i(fixed=true, start=0), L=L_load)
23 annotation(Placement(transformation(extent={{-20,60},{0,80}})));
24 Modelica.Electrical.Analog.Basic.Capacitor C2( v(fixed=true, start=750), C=
25 C_load)
26 annotation(Placement(transformation(
27 origin={10,28},
28 extent={{10,-10},{-10,10}},
29 rotation=90)));
30 Modelica.Electrical.Analog.Sensors.VoltageSensor voltageSensor annotation(Placement(transformation(
31 origin={-30,30},
32 extent={{10,-10},{-10,10}},
33 rotation=90)));
34 Modelica.Blocks.Continuous.PI U_Reg(
35 initType=Modelica.Blocks.Types.Init.InitialState,
36 x_start=0,
37 k=9.816719,
38 T=5.067408e-002)
39 annotation(Placement(transformation(extent={{-40,-80},{-20,-60}})));
40 Modelica.Blocks.Math.Feedback feedback annotation(Placement(transformation(extent={{-70,-80},
41 {-50,-60}})));
42 Modelica.Electrical.Analog.Sources.SignalCurrent I_L annotation(Placement(transformation(
43 origin={80,30},
44 extent={{10,10},{-10,-10}},
45 rotation=90)));
46 Modelica.Blocks.Nonlinear.Limiter limiter(uMax=2000)
47 annotation (Placement(transformation(extent={{50,-80},{70,-60}})));
48 Modelica.Electrical.Analog.Basic.Resistor R1(v(start=0), R=20e-3) annotation (
49 Placement(transformation(
50 extent={{-10,-10},{10,10}},
51 rotation=270,
52 origin={-54,52})));
53 Modelica.Electrical.Analog.Basic.Resistor R2(R=20e-3) annotation (Placement(
54 transformation(
55 extent={{-10,-10},{10,10}},
56 rotation=270,
57 origin={10,54})));
58 Modelica.Electrical.Analog.Ideal.IdealClosingSwitch idealClosingSwitch(Ron=1)
59 annotation (Placement(transformation(
60 extent={{-10,-10},{10,10}},
61 rotation=270,
62 origin={52,46})));
63 Modelica.Blocks.Logical.Hysteresis hysteresis(
64 pre_y_start=false,
65 uLow=850,
66 uHigh=900)
67 annotation (Placement(transformation(extent={{82,76},{102,96}})));
68 Modelica.Electrical.Analog.Sensors.VoltageSensor voltageSensor1
69 annotation(Placement(transformation(
70 origin={30,40},
71 extent={{10,-10},{-10,10}},
72 rotation=90)));
73 Modelica.Blocks.Continuous.FirstOrder stromVerzoegerung(
74 k=1,
75 initType=Modelica.Blocks.Types.Init.InitialState,
76 y_start=0,
77 T=5e-3) annotation (Placement(transformation(extent={{10,-30},{-10,-10}})));
78 Modelica.Blocks.Nonlinear.FixedDelay fixedDelay(delayTime=0.5e-3)
79 annotation (Placement(transformation(extent={{50,-30},{30,-10}})));
80 Modelica.Blocks.Math.Feedback feedback1 annotation(Placement(transformation(extent={{-10,-80},
81 {10,-60}})));
82 Modelica.Blocks.Continuous.PI I_Reg(
83 initType=Modelica.Blocks.Types.Init.InitialState,
84 x_start=0,
85 k=8.705430,
86 T=2.559267e-003)
87 annotation(Placement(transformation(extent={{20,-80},{40,-60}})));
88 Modelica.Electrical.Analog.Sensors.CurrentSensor currentSensor annotation(Placement(transformation(extent={{-82,60},
89 {-62,80}})));
90 Modelica.Blocks.Interfaces.RealInput u
91 annotation (Placement(transformation(extent={{140,10},{100,50}})));
92 Modelica.Blocks.Sources.RealExpression realExpression(y=U_dc_soll)
93 annotation (Placement(transformation(extent={{-100,-80},{-80,-60}})));
94 Modelica.Blocks.Logical.And and1
95 annotation (Placement(transformation(extent={{104,50},{84,70}})));
96 Modelica.Blocks.Sources.BooleanExpression booleanExpression(y=
97 enableBremsChopper)
98 annotation (Placement(transformation(extent={{140,42},{120,62}})));
99 equation
100 connect(ground.p, I_Q.p) annotation(Line(points={{-90,0},{-90,20}}));
101 connect(feedback.y,U_Reg.u) annotation(Line(
102 points={{-51,-70},{-42,-70}},
103 color={0,0,127}));
104 connect(voltageSensor.v,feedback.u2) annotation(Line(
105 points={{-20,30},{-10,30},{-10,4},{100,4},{100,-100},{-60,-100},{-60,-78}},
106 color={0,0,127}));
107 connect(voltageSensor.p,L1.p) annotation(Line(points={{-30,40},{-30,70},{
108 -20,70}}));
109 connect(I_L.p, L1.n) annotation(Line(points={{80,40},{80,70},{0,
110 70}}));
111 connect(I_L.n, C2.n) annotation(Line(points={{80,20},{80,10},{10,
112 10},{10,18}}));
113 connect(C2.n,voltageSensor.n) annotation(Line(points={{10,18},{10,10},{-30,
114 10},{-30,20}}));
115 connect(I_Q.p, C1.n) annotation(Line(points={{-90,20},{-90,10},{
116 -54,10},{-54,16}}));
117 connect(C1.n,voltageSensor.n) annotation(Line(points={{-54,16},{-54,10},{
118 -30,10},{-30,20}}));
119 connect(C1.p, R1.n) annotation (Line(
120 points={{-54,36},{-54,42}},
121 color={0,0,255},
122 smooth=Smooth.None));
123 connect(R2.n, C2.p) annotation (Line(
124 points={{10,44},{10,38}},
125 color={0,0,255},
126 smooth=Smooth.None));
127 connect(R2.p, L1.n) annotation (Line(
128 points={{10,64},{10,70},{0,70}},
129 color={0,0,255},
130 smooth=Smooth.None));
131 connect(idealClosingSwitch.p, R2.p) annotation (Line(
132 points={{52,56},{52,70},{10,70},{10,64}},
133 color={0,0,255},
134 smooth=Smooth.None));
135 connect(idealClosingSwitch.n, C2.n) annotation (Line(
136 points={{52,36},{52,10},{10,10},{10,18}},
137 color={0,0,255},
138 smooth=Smooth.None));
139 connect(voltageSensor1.p, R2.p) annotation (Line(
140 points={{30,50},{30,70},{10,70},{10,64}},
141 color={0,0,255},
142 smooth=Smooth.None));
143 connect(voltageSensor1.n, C2.n) annotation (Line(
144 points={{30,30},{30,10},{10,10},{10,18}},
145 color={0,0,255},
146 smooth=Smooth.None));
147 connect(voltageSensor1.v, hysteresis.u) annotation (Line(
148 points={{40,40},{40,86},{80,86}},
149 color={0,0,127},
150 smooth=Smooth.None));
151 connect(stromVerzoegerung.y, I_Q.i) annotation (Line(
152 points={{-11,-20},{-100,-20},{-100,30},{-97,30}},
153 color={0,0,127},
154 smooth=Smooth.None));
155 connect(fixedDelay.y, stromVerzoegerung.u) annotation (Line(
156 points={{29,-20},{12,-20}},
157 color={0,0,127},
158 smooth=Smooth.None));
159 connect(limiter.y, fixedDelay.u) annotation (Line(
160 points={{71,-70},{80,-70},{80,-20},{52,-20}},
161 color={0,0,127},
162 smooth=Smooth.None));
163 connect(U_Reg.y, feedback1.u1) annotation (Line(
164 points={{-19,-70},{-8,-70}},
165 color={0,0,127},
166 smooth=Smooth.None));
167 connect(feedback1.y, I_Reg.u) annotation (Line(
168 points={{9,-70},{18,-70}},
169 color={0,0,127},
170 smooth=Smooth.None));
171 connect(I_Reg.y, limiter.u) annotation (Line(
172 points={{41,-70},{48,-70}},
173 color={0,0,127},
174 smooth=Smooth.None));
175 connect(currentSensor.n, L1.p) annotation (Line(
176 points={{-62,70},{-20,70}},
177 color={0,0,255},
178 smooth=Smooth.None));
179 connect(R1.p, currentSensor.n) annotation (Line(
180 points={{-54,62},{-54,70},{-62,70}},
181 color={0,0,255},
182 smooth=Smooth.None));
183 connect(I_Q.n, currentSensor.p) annotation (Line(
184 points={{-90,40},{-90,70},{-82,70}},
185 color={0,0,255},
186 smooth=Smooth.None));
187 connect(currentSensor.i, feedback1.u2) annotation (Line(
188 points={{-72,60},{-72,-2},{92,-2},{92,-94},{0,-94},{0,-78}},
189 color={0,0,127},
190 smooth=Smooth.None));
191 connect(u, I_L.i) annotation (Line(
192 points={{120,30},{87,30}},
193 color={0,0,127},
194 smooth=Smooth.None));
195 connect(realExpression.y, feedback.u1) annotation (Line(
196 points={{-79,-70},{-68,-70}},
197 color={0,0,127},
198 smooth=Smooth.None));
199 connect(hysteresis.y, and1.u1) annotation (Line(
200 points={{103,86},{120,86},{120,60},{106,60}},
201 color={255,0,255},
202 smooth=Smooth.None));
203 connect(and1.y, idealClosingSwitch.control) annotation (Line(
204 points={{83,60},{72,60},{72,46},{59,46}},
205 color={255,0,255},
206 smooth=Smooth.None));
207 connect(booleanExpression.y, and1.u2) annotation (Line(
208 points={{119,52},{106,52}},
209 color={255,0,255},
210 smooth=Smooth.None));
211 annotation (
212 voltageSensor(v(flags=2)),
213 currentSensor(i(flags=2)),
214 Diagram(coordinateSystem(
215 extent={{-120,-120},{160,120}},
216 preserveAspectRatio=false), graphics),
217 experiment(
218 StopTime=2,
219 StartTime=0),
220 Commands(
221 editCall=Design.Optimization.optimize(
222 Design.Internal.Records.RecordsWithUnits.OptimizationSetup(
223 Model="Vater",
224 tunerParameters={Design.Internal.Records.RecordsWithUnits.TunerParameter(name="U_Reg.k", Value=10, min=0.01, max=10, unit="1"),
225 Design.Internal.Records.RecordsWithUnits.TunerParameter(name="U_Reg.T", Value=0.1, min=1e-2, max=10, unit="s"),
226 Design.Internal.Records.RecordsWithUnits.TunerParameter(name="I_Reg.k", Value=1, min=0.01, max=100, unit="1"),
227 Design.Internal.Records.RecordsWithUnits.TunerParameter(name="I_Reg.T", Value=0.01, min=1e-3, max=10, unit="s")},
228 caseParameters={Design.Internal.Records.RecordsWithUnits.CaseParameter(name="Uset", unit="V")},
229 caseCriteria={Design.Internal.Records.RecordsWithUnits.Criterion(name="integratedSquaredDeviation.y", unit="")},
230 caseNames={Design.Internal.Records.CaseName()},
231 cases=[750],
232 demands=[0.01],
233 integrator=Design.Internal.Records.Integrator(stopTime=2)))
234 "Finde optimale Reglerparameter"),
235 Icon(coordinateSystem(extent={{-120,-120},{160,120}})));
236 end Modell;
237
238 package Versuche
239 package RampeHoch
240 model mitBremsChopper
241
242 Modell DC1_1(
243 U_dc_soll=750,
244 L_load=20e-3,
245 C_load=5e-3)
246 annotation (Placement(transformation(extent={{-50,56},{-30,76}})));
247 Modelica.Blocks.Sources.Ramp ramp(
248 duration=0.5,
249 startTime=1,
250 offset=0,
251 height=1600)
252 annotation (Placement(transformation(extent={{30,56},{10,76}})));
253 Modell DC1_2(
254 U_dc_soll=750,
255 L_load=5e-3,
256 C_load=15e-3)
257 annotation (Placement(transformation(extent={{-50,10},{-30,30}})));
258 Modell DC1_3(
259 U_dc_soll=750,
260 L_load=2e-3,
261 C_load=50e-3)
262 annotation (Placement(transformation(extent={{-50,-28},{-30,-8}})));
263 equation
264 connect(ramp.y, DC1_1.u) annotation (Line(
265 points={{9,66},{-8,66},{-8,71},{-26,71}},
266 color={0,0,127},
267 smooth=Smooth.None));
268 connect(ramp.y, DC1_2.u) annotation (Line(
269 points={{9,66},{-8,66},{-8,25},{-26,25}},
270 color={0,0,127},
271 smooth=Smooth.None));
272 connect(ramp.y, DC1_3.u) annotation (Line(
273 points={{9,66},{-8,66},{-8,-13},{-26,-13}},
274 color={0,0,127},
275 smooth=Smooth.None));
276 annotation (Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-100,
277 -100},{100,100}}), graphics),
278 experiment(StopTime=5, Interval=0.001),
279 __Dymola_experimentSetupOutput);
280 end mitBremsChopper;
281
282 model ohneBremsChopper
283
284 Modell DC1_1(
285 U_dc_soll=750,
286 L_load=20e-3,
287 C_load=5e-3,
288 enableBremsChopper=false)
289 annotation (Placement(transformation(extent={{-50,56},{-30,76}})));
290 Modelica.Blocks.Sources.Ramp ramp(
291 duration=0.5,
292 startTime=1,
293 offset=0,
294 height=1600)
295 annotation (Placement(transformation(extent={{30,56},{10,76}})));
296 Modell DC1_2(
297 U_dc_soll=750,
298 L_load=5e-3,
299 C_load=15e-3,
300 enableBremsChopper=false)
301 annotation (Placement(transformation(extent={{-50,10},{-30,30}})));
302 Modell DC1_3(
303 U_dc_soll=750,
304 L_load=2e-3,
305 C_load=50e-3,
306 enableBremsChopper=false)
307 annotation (Placement(transformation(extent={{-50,-28},{-30,-8}})));
308 equation
309 connect(ramp.y, DC1_1.u) annotation (Line(
310 points={{9,66},{-8,66},{-8,71},{-26,71}},
311 color={0,0,127},
312 smooth=Smooth.None));
313 connect(ramp.y, DC1_2.u) annotation (Line(
314 points={{9,66},{-8,66},{-8,25},{-26,25}},
315 color={0,0,127},
316 smooth=Smooth.None));
317 connect(ramp.y, DC1_3.u) annotation (Line(
318 points={{9,66},{-8,66},{-8,-13},{-26,-13}},
319 color={0,0,127},
320 smooth=Smooth.None));
321 annotation (Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-100,
322 -100},{100,100}}), graphics),
323 experiment(StopTime=5, Interval=0.001),
324 __Dymola_experimentSetupOutput);
325 end ohneBremsChopper;
326 end RampeHoch;
327
328 package RampeRunter
329 model mitBremsChopper
330 Modell DC1_1(
331 U_dc_soll=750,
332 L_load=20e-3,
333 C_load=5e-3,
334 L1(i(start=1600)),
335 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
336 y_start=1600),
337 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
338 DC1_1.U_Reg.k),
339 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
340 DC1_1.I_Reg.k))
341 annotation (Placement(transformation(extent={{-50,56},{-30,76}})));
342 Modelica.Blocks.Sources.Ramp ramp(
343 duration=0.5,
344 height=-1600,
345 offset=1600,
346 startTime=1)
347 annotation (Placement(transformation(extent={{30,56},{10,76}})));
348 Modell DC1_2(
349 U_dc_soll=750,
350 L1(i(start=1600)),
351 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
352 y_start=1600),
353 L_load=5e-3,
354 C_load=15e-3,
355 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
356 DC1_2.U_Reg.k),
357 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
358 DC1_2.I_Reg.k))
359 annotation (Placement(transformation(extent={{-50,10},{-30,30}})));
360 Modell DC1_3(
361 U_dc_soll=750,
362 L1(i(start=1600)),
363 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
364 y_start=1600),
365 L_load=2e-3,
366 C_load=50e-3,
367 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
368 DC1_3.U_Reg.k),
369 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
370 DC1_3.I_Reg.k))
371 annotation (Placement(transformation(extent={{-50,-28},{-30,-8}})));
372 equation
373 connect(ramp.y, DC1_1.u) annotation (Line(
374 points={{9,66},{-8,66},{-8,71},{-26,71}},
375 color={0,0,127},
376 smooth=Smooth.None));
377 connect(ramp.y, DC1_2.u) annotation (Line(
378 points={{9,66},{-8,66},{-8,25},{-26,25}},
379 color={0,0,127},
380 smooth=Smooth.None));
381 connect(ramp.y, DC1_3.u) annotation (Line(
382 points={{9,66},{-8,66},{-8,-13},{-26,-13}},
383 color={0,0,127},
384 smooth=Smooth.None));
385 annotation (Diagram(coordinateSystem(preserveAspectRatio=false, extent=
386 {{-100,-100},{100,100}}), graphics));
387 end mitBremsChopper;
388
389 model ohneBremsChopper
390 Modell DC1_1(
391 U_dc_soll=750,
392 L_load=20e-3,
393 C_load=5e-3,
394 L1(i(start=1600)),
395 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
396 y_start=1600),
397 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
398 DC1_1.U_Reg.k),
399 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
400 DC1_1.I_Reg.k),
401 enableBremsChopper=false)
402 annotation (Placement(transformation(extent={{-50,56},{-30,76}})));
403 Modelica.Blocks.Sources.Ramp ramp(
404 duration=0.5,
405 height=-1600,
406 offset=1600,
407 startTime=1)
408 annotation (Placement(transformation(extent={{30,56},{10,76}})));
409 Modell DC1_2(
410 U_dc_soll=750,
411 L1(i(start=1600)),
412 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
413 y_start=1600),
414 L_load=5e-3,
415 C_load=15e-3,
416 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
417 DC1_2.U_Reg.k),
418 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
419 DC1_2.I_Reg.k),
420 enableBremsChopper=false)
421 annotation (Placement(transformation(extent={{-50,10},{-30,30}})));
422 Modell DC1_3(
423 U_dc_soll=750,
424 L1(i(start=1600)),
425 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
426 y_start=1600),
427 L_load=2e-3,
428 C_load=50e-3,
429 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
430 DC1_3.U_Reg.k),
431 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
432 DC1_3.I_Reg.k),
433 enableBremsChopper=false)
434 annotation (Placement(transformation(extent={{-50,-28},{-30,-8}})));
435 equation
436 connect(ramp.y, DC1_1.u) annotation (Line(
437 points={{9,66},{-8,66},{-8,71},{-26,71}},
438 color={0,0,127},
439 smooth=Smooth.None));
440 connect(ramp.y, DC1_2.u) annotation (Line(
441 points={{9,66},{-8,66},{-8,25},{-26,25}},
442 color={0,0,127},
443 smooth=Smooth.None));
444 connect(ramp.y, DC1_3.u) annotation (Line(
445 points={{9,66},{-8,66},{-8,-13},{-26,-13}},
446 color={0,0,127},
447 smooth=Smooth.None));
448 annotation (Diagram(coordinateSystem(preserveAspectRatio=false, extent=
449 {{-100,-100},{100,100}}), graphics));
450 end ohneBremsChopper;
451 end RampeRunter;
452
453 package RampeRunterNegativ
454 model mitBremsChopper
455
456 Modell DC1_1(
457 U_dc_soll=750,
458 L_load=20e-3,
459 C_load=5e-3)
460 annotation (Placement(transformation(extent={{-50,56},{-30,76}})));
461 Modelica.Blocks.Sources.Ramp ramp(
462 duration=0.5,
463 height=-1600,
464 startTime=1,
465 offset=0) annotation (Placement(transformation(extent={{30,56},{10,76}})));
466 Modell DC1_2(
467 U_dc_soll=750,
468 L_load=5e-3,
469 C_load=15e-3)
470 annotation (Placement(transformation(extent={{-50,10},{-30,30}})));
471 Modell DC1_3(
472 U_dc_soll=750,
473 L_load=2e-3,
474 C_load=50e-3)
475 annotation (Placement(transformation(extent={{-50,-28},{-30,-8}})));
476 equation
477 connect(ramp.y, DC1_1.u) annotation (Line(
478 points={{9,66},{-8,66},{-8,71},{-26,71}},
479 color={0,0,127},
480 smooth=Smooth.None));
481 connect(ramp.y, DC1_2.u) annotation (Line(
482 points={{9,66},{-8,66},{-8,25},{-26,25}},
483 color={0,0,127},
484 smooth=Smooth.None));
485 connect(ramp.y, DC1_3.u) annotation (Line(
486 points={{9,66},{-8,66},{-8,-13},{-26,-13}},
487 color={0,0,127},
488 smooth=Smooth.None));
489 annotation (Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-100,
490 -100},{100,100}}), graphics));
491 end mitBremsChopper;
492
493 model ohneBremsChopper
494
495 Modell DC1_1(
496 U_dc_soll=750,
497 L_load=20e-3,
498 C_load=5e-3,
499 enableBremsChopper=false)
500 annotation (Placement(transformation(extent={{-50,56},{-30,76}})));
501 Modelica.Blocks.Sources.Ramp ramp(
502 duration=0.5,
503 height=-1600,
504 startTime=1,
505 offset=0) annotation (Placement(transformation(extent={{30,56},{10,76}})));
506 Modell DC1_2(
507 U_dc_soll=750,
508 L_load=5e-3,
509 C_load=15e-3,
510 enableBremsChopper=false)
511 annotation (Placement(transformation(extent={{-50,10},{-30,30}})));
512 Modell DC1_3(
513 U_dc_soll=750,
514 L_load=2e-3,
515 C_load=50e-3,
516 enableBremsChopper=false)
517 annotation (Placement(transformation(extent={{-50,-28},{-30,-8}})));
518 equation
519 connect(ramp.y, DC1_1.u) annotation (Line(
520 points={{9,66},{-8,66},{-8,71},{-26,71}},
521 color={0,0,127},
522 smooth=Smooth.None));
523 connect(ramp.y, DC1_2.u) annotation (Line(
524 points={{9,66},{-8,66},{-8,25},{-26,25}},
525 color={0,0,127},
526 smooth=Smooth.None));
527 connect(ramp.y, DC1_3.u) annotation (Line(
528 points={{9,66},{-8,66},{-8,-13},{-26,-13}},
529 color={0,0,127},
530 smooth=Smooth.None));
531 annotation (Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-100,
532 -100},{100,100}}), graphics));
533 end ohneBremsChopper;
534 end RampeRunterNegativ;
535
536 package RampeHochNegativ
537 model mitBremsChopper
538
539 Modell DC1_1(
540 U_dc_soll=750,
541 L_load=20e-3,
542 C_load=5e-3,
543 L1(i(start=-1600)),
544 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
545 y_start=-1600),
546 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_1.U_Reg.k),
547 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_1.I_Reg.k))
548 annotation (Placement(transformation(extent={{-50,56},{-30,76}})));
549
550 Modelica.Blocks.Sources.Ramp ramp(
551 duration=0.5,
552 startTime=1,
553 height=1600,
554 offset=-1600)
555 annotation (Placement(transformation(extent={{30,56},{10,76}})));
556 Modell DC1_2(
557 U_dc_soll=750,
558 L1(i(start=-1600)),
559 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
560 y_start=-1600),
561 L_load=5e-3,
562 C_load=15e-3,
563 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_2.U_Reg.k),
564 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_2.I_Reg.k))
565 annotation (Placement(transformation(extent={{-50,10},{-30,30}})));
566
567 Modell DC1_3(
568 U_dc_soll=750,
569 L1(i(start=-1600)),
570 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
571 y_start=-1600),
572 L_load=2e-3,
573 C_load=50e-3,
574 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_3.U_Reg.k),
575 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_3.I_Reg.k))
576 annotation (Placement(transformation(extent={{-50,-28},{-30,-8}})));
577
578 equation
579 connect(ramp.y, DC1_1.u) annotation (Line(
580 points={{9,66},{-8,66},{-8,71},{-26,71}},
581 color={0,0,127},
582 smooth=Smooth.None));
583 connect(ramp.y, DC1_2.u) annotation (Line(
584 points={{9,66},{-8,66},{-8,25},{-26,25}},
585 color={0,0,127},
586 smooth=Smooth.None));
587 connect(ramp.y, DC1_3.u) annotation (Line(
588 points={{9,66},{-8,66},{-8,-13},{-26,-13}},
589 color={0,0,127},
590 smooth=Smooth.None));
591 annotation (Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-100,
592 -100},{100,100}}), graphics));
593 end mitBremsChopper;
594
595 model ohneBremsChopper
596
597 Modell DC1_1(
598 U_dc_soll=750,
599 L_load=20e-3,
600 C_load=5e-3,
601 L1(i(start=-1600)),
602 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
603 y_start=-1600),
604 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_1.U_Reg.k),
605 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_1.I_Reg.k),
606 enableBremsChopper=false)
607 annotation (Placement(transformation(extent={{-50,56},{-30,76}})));
608
609 Modelica.Blocks.Sources.Ramp ramp(
610 duration=0.5,
611 startTime=1,
612 height=1600,
613 offset=-1600)
614 annotation (Placement(transformation(extent={{30,56},{10,76}})));
615 Modell DC1_2(
616 U_dc_soll=750,
617 L1(i(start=-1600)),
618 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
619 y_start=-1600),
620 L_load=5e-3,
621 C_load=15e-3,
622 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_2.U_Reg.k),
623 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_2.I_Reg.k),
624 enableBremsChopper=false)
625 annotation (Placement(transformation(extent={{-50,10},{-30,30}})));
626
627 Modell DC1_3(
628 U_dc_soll=750,
629 L1(i(start=-1600)),
630 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
631 y_start=-1600),
632 L_load=2e-3,
633 C_load=50e-3,
634 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_3.U_Reg.k),
635 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_3.I_Reg.k),
636 enableBremsChopper=false)
637 annotation (Placement(transformation(extent={{-50,-28},{-30,-8}})));
638
639 equation
640 connect(ramp.y, DC1_1.u) annotation (Line(
641 points={{9,66},{-8,66},{-8,71},{-26,71}},
642 color={0,0,127},
643 smooth=Smooth.None));
644 connect(ramp.y, DC1_2.u) annotation (Line(
645 points={{9,66},{-8,66},{-8,25},{-26,25}},
646 color={0,0,127},
647 smooth=Smooth.None));
648 connect(ramp.y, DC1_3.u) annotation (Line(
649 points={{9,66},{-8,66},{-8,-13},{-26,-13}},
650 color={0,0,127},
651 smooth=Smooth.None));
652 annotation (Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-100,
653 -100},{100,100}}), graphics));
654 end ohneBremsChopper;
655 end RampeHochNegativ;
656
657 package SprungRunter
658 model mitBremsChopper
659 Modell DC1_1(
660 U_dc_soll=750,
661 L_load=20e-3,
662 C_load=5e-3,
663 L1(i(start=1600)),
664 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
665 y_start=1600),
666 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
667 DC1_1.U_Reg.k),
668 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
669 DC1_1.I_Reg.k))
670 annotation (Placement(transformation(extent={{-50,56},{-30,76}})));
671 Modelica.Blocks.Sources.Step ramp(
672 height=-1600,
673 offset=1600,
674 startTime=1)
675 annotation (Placement(transformation(extent={{30,56},{10,76}})));
676 Modell DC1_2(
677 U_dc_soll=750,
678 L1(i(start=1600)),
679 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
680 y_start=1600),
681 L_load=5e-3,
682 C_load=15e-3,
683 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
684 DC1_2.U_Reg.k),
685 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
686 DC1_2.I_Reg.k))
687 annotation (Placement(transformation(extent={{-50,10},{-30,30}})));
688 Modell DC1_3(
689 U_dc_soll=750,
690 L1(i(start=1600)),
691 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
692 y_start=1600),
693 L_load=2e-3,
694 C_load=50e-3,
695 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
696 DC1_3.U_Reg.k),
697 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
698 DC1_3.I_Reg.k))
699 annotation (Placement(transformation(extent={{-50,-28},{-30,-8}})));
700 equation
701 connect(ramp.y, DC1_1.u) annotation (Line(
702 points={{9,66},{-8,66},{-8,71},{-26,71}},
703 color={0,0,127},
704 smooth=Smooth.None));
705 connect(ramp.y, DC1_2.u) annotation (Line(
706 points={{9,66},{-8,66},{-8,25},{-26,25}},
707 color={0,0,127},
708 smooth=Smooth.None));
709 connect(ramp.y, DC1_3.u) annotation (Line(
710 points={{9,66},{-8,66},{-8,-13},{-26,-13}},
711 color={0,0,127},
712 smooth=Smooth.None));
713 annotation (Diagram(coordinateSystem(preserveAspectRatio=false, extent=
714 {{-100,-100},{100,100}}), graphics));
715 end mitBremsChopper;
716
717 model ohneBremsChopper
718 Modell DC1_1(
719 U_dc_soll=750,
720 L_load=20e-3,
721 C_load=5e-3,
722 L1(i(start=1600)),
723 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
724 y_start=1600),
725 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
726 DC1_1.U_Reg.k),
727 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
728 DC1_1.I_Reg.k),
729 enableBremsChopper=false)
730 annotation (Placement(transformation(extent={{-50,56},{-30,76}})));
731 Modelica.Blocks.Sources.Step ramp(
732 height=-1600,
733 offset=1600,
734 startTime=1)
735 annotation (Placement(transformation(extent={{30,56},{10,76}})));
736 Modell DC1_2(
737 U_dc_soll=750,
738 L1(i(start=1600)),
739 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
740 y_start=1600),
741 L_load=5e-3,
742 C_load=15e-3,
743 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
744 DC1_2.U_Reg.k),
745 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
746 DC1_2.I_Reg.k),
747 enableBremsChopper=false)
748 annotation (Placement(transformation(extent={{-50,10},{-30,30}})));
749 Modell DC1_3(
750 U_dc_soll=750,
751 L1(i(start=1600)),
752 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
753 y_start=1600),
754 L_load=2e-3,
755 C_load=50e-3,
756 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
757 DC1_3.U_Reg.k),
758 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=1600/
759 DC1_3.I_Reg.k),
760 enableBremsChopper=false)
761 annotation (Placement(transformation(extent={{-50,-28},{-30,-8}})));
762 equation
763 connect(ramp.y, DC1_1.u) annotation (Line(
764 points={{9,66},{-8,66},{-8,71},{-26,71}},
765 color={0,0,127},
766 smooth=Smooth.None));
767 connect(ramp.y, DC1_2.u) annotation (Line(
768 points={{9,66},{-8,66},{-8,25},{-26,25}},
769 color={0,0,127},
770 smooth=Smooth.None));
771 connect(ramp.y, DC1_3.u) annotation (Line(
772 points={{9,66},{-8,66},{-8,-13},{-26,-13}},
773 color={0,0,127},
774 smooth=Smooth.None));
775 annotation (Diagram(coordinateSystem(preserveAspectRatio=false, extent=
776 {{-100,-100},{100,100}}), graphics));
777 end ohneBremsChopper;
778 end SprungRunter;
779
780 package SprungHochNegativ
781 model mitBremsChopper
782
783 Modell DC1_1(
784 U_dc_soll=750,
785 L_load=20e-3,
786 C_load=5e-3,
787 L1(i(start=-1600)),
788 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
789 y_start=-1600),
790 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_1.U_Reg.k),
791 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_1.I_Reg.k))
792 annotation (Placement(transformation(extent={{-50,56},{-30,76}})));
793
794 Modelica.Blocks.Sources.Step ramp(
795 startTime=1,
796 height=1600,
797 offset=-1600)
798 annotation (Placement(transformation(extent={{30,56},{10,76}})));
799 Modell DC1_2(
800 U_dc_soll=750,
801 L1(i(start=-1600)),
802 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
803 y_start=-1600),
804 L_load=5e-3,
805 C_load=15e-3,
806 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_2.U_Reg.k),
807 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_2.I_Reg.k))
808 annotation (Placement(transformation(extent={{-50,10},{-30,30}})));
809
810 Modell DC1_3(
811 U_dc_soll=750,
812 L1(i(start=-1600)),
813 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
814 y_start=-1600),
815 L_load=2e-3,
816 C_load=50e-3,
817 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_3.U_Reg.k),
818 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_3.I_Reg.k))
819 annotation (Placement(transformation(extent={{-50,-28},{-30,-8}})));
820
821 equation
822 connect(ramp.y, DC1_1.u) annotation (Line(
823 points={{9,66},{-8,66},{-8,71},{-26,71}},
824 color={0,0,127},
825 smooth=Smooth.None));
826 connect(ramp.y, DC1_2.u) annotation (Line(
827 points={{9,66},{-8,66},{-8,25},{-26,25}},
828 color={0,0,127},
829 smooth=Smooth.None));
830 connect(ramp.y, DC1_3.u) annotation (Line(
831 points={{9,66},{-8,66},{-8,-13},{-26,-13}},
832 color={0,0,127},
833 smooth=Smooth.None));
834 annotation (Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-100,
835 -100},{100,100}}), graphics));
836 end mitBremsChopper;
837
838 model ohneBremsChopper
839
840 Modell DC1_1(
841 U_dc_soll=750,
842 L_load=20e-3,
843 C_load=5e-3,
844 L1(i(start=-1600)),
845 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
846 y_start=-1600),
847 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_1.U_Reg.k),
848 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_1.I_Reg.k),
849 enableBremsChopper=false)
850 annotation (Placement(transformation(extent={{-50,56},{-30,76}})));
851
852 Modelica.Blocks.Sources.Step ramp(
853 startTime=1,
854 height=1600,
855 offset=-1600)
856 annotation (Placement(transformation(extent={{30,56},{10,76}})));
857 Modell DC1_2(
858 U_dc_soll=750,
859 L1(i(start=-1600)),
860 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
861 y_start=-1600),
862 L_load=5e-3,
863 C_load=15e-3,
864 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_2.U_Reg.k),
865 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_2.I_Reg.k),
866 enableBremsChopper=false)
867 annotation (Placement(transformation(extent={{-50,10},{-30,30}})));
868
869 Modell DC1_3(
870 U_dc_soll=750,
871 L1(i(start=-1600)),
872 stromVerzoegerung(initType=Modelica.Blocks.Types.Init.InitialOutput,
873 y_start=-1600),
874 L_load=2e-3,
875 C_load=50e-3,
876 U_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_3.U_Reg.k),
877 I_Reg(initType=Modelica.Blocks.Types.Init.InitialState, x_start=-1600/DC1_3.I_Reg.k),
878 enableBremsChopper=false)
879 annotation (Placement(transformation(extent={{-50,-28},{-30,-8}})));
880
881 equation
882 connect(ramp.y, DC1_1.u) annotation (Line(
883 points={{9,66},{-8,66},{-8,71},{-26,71}},
884 color={0,0,127},
885 smooth=Smooth.None));
886 connect(ramp.y, DC1_2.u) annotation (Line(
887 points={{9,66},{-8,66},{-8,25},{-26,25}},
888 color={0,0,127},
889 smooth=Smooth.None));
890 connect(ramp.y, DC1_3.u) annotation (Line(
891 points={{9,66},{-8,66},{-8,-13},{-26,-13}},
892 color={0,0,127},
893 smooth=Smooth.None));
894 annotation (Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-100,
895 -100},{100,100}}), graphics));
896 end ohneBremsChopper;
897 end SprungHochNegativ;
898 end Versuche;
899 annotation (uses(Modelica(version="3.2"), Design(version="1.0.2")));
900end Transrech;