Prozessautomatisierung 1 Praktikum - Institute of Automatic Control

Transcription

Prozessautomatisierung 1 Praktikum - Institute of Automatic Control
Johannes Kepler Universit¨at Linz
Institut fu
¨r Regelungstechnik
und Prozessautomatisierung
Prozessautomatisierung 1
Praktikum
d
u
P
y
M
c
e
Identifikation
Stand: WS 2014/15
Sven-Olaf Lindert
Organisation
Ansprechpersonen
Bei Fragen zu den Aufgaben stehen Ihnen am Institut
• Sven-Olaf Lindert
zur Verf¨
ugung.
Praktikumsdurchfu
¨ hrung
Das Praktikum wird grunds¨atzlich in Zweiergruppen absolviert. Die Gruppeneinteilung
erfolgt in der Vorbesprechung. Die Aufgabenstellungen werden zeitgerecht auf der Institutshomepage im Downloadbereich zur Verf¨
ugung gestellt. Alle PraktikumsteilnehmerInnen m¨
ussen mit der L¨osung der Aufgabenstellungen vertraut sein. Um dies zu u
ufen
¨berpr¨
werden in unregelm¨aßigen Abst¨anden Einzelaufgaben gestellt.
Rechnerraum
Der Rechnerraum (MT 0404 - Science Park 4. Stock) steht allen PraktikumsteilnehmerInnen zur Verf¨
ugung. Sie k¨onnen Ihre Keplerkarten f¨
ur die Dauer des Praktikums freischalten
lassen. Folgende Punkte sind zu beachten:
• Der Rechnerraum muss nach dem Ben¨
utzen wieder ordnungsgem¨aß verlassen und
versperrt werden.
• Zu zwischenspeichern Ihrer Daten nutzen Sie bitte das Laufwerk E:\>. Bitte legen
Sie keine Dateien dauerhaft auf den Rechnern ab. Die Laufwerke werden gelegentlich
von den Studentendaten ges¨aubert, d.h. bringen Sie ins Praktikum ihre Daten auf
einem Datentr¨ager (USB-Stick, externe Festplatte, CD,...) mit.
• Stecken Sie keine dSpace-Verbindungskabel bei laufenden Rechnern um! Bei unsachgem¨aßer Behandlung kann es zur Besch¨adigung der dSpace-Karten kommen.
Sollten die Arbeitspl¨atze nicht f¨
ur den Betrieb der Streckensimulatoren vorbereitet
sein, so wenden Sie sich bitte an einen Institutsangestellten.
1
• Sollten bei den Rechnern technische Gebrechen auftreten, so ist dies ebenfalls am
Institut zu melden!
• Es ist nicht m¨oglich mit den Laborrechnern ins Internet zu gelangen.
• Nutzen Sie die Software Maple 17, Matlab R2013b und dSPACE Control
Desk 5.1. Es sind auch andere installiert. Kontrollieren Sie, ob ihre Dateien kompatibel sind. Im Praktikum kann keine R¨
ucksicht auf nicht funktionierende Ausarbeitungen genommen werden, und es ist nicht m¨oglich das Praktikum mit einem
privaten Rechner zu absolvieren!
2
Praktikum 1
Identifikation mit nicht
parametrischen Modellen,
Handentwurf nach Schneider
¨
Die erste Ubung
des PAT1 Praktikums steht im Zeichen der Identifikation dynamischer
Systeme und dem Handentwurf nach Schneider.
1.1
Identifikation mit nicht parametrischen Modellen
Im Gegensatz zu den parametrischen Verfahren, welche in PAT2 behandelt werden, werden hier so genannte nicht-parametrische Methoden vorgestellt. Bei diesen Methoden geht
¨
es also nicht darum Parameter einer Ubertragungsfunktion,
sondern den Frequenzgang der
¨
Ubertragungsfunktion zu sch¨atzen. Dabei ist das Ergebnis der Sch¨atzung, wenn die Messsignale verrauscht sind und diese Identifikation als Basis f¨
ur einen sp¨ateren Reglerentwurf
dienen soll, nicht immer zufriedenstellend. In diesem Praktikum sollen aber M¨oglichkeiten, wie die Identifikation mit diesen sehr verbreiteten Methoden dennoch gelingen kann,
aufgezeigt werden.
Die Identifikation soll hier in 3 Schritten erfolgen:
1. in der Simulation
2. am Streckensimulator
3. am realen Modell.
Zuerst werden die zu identifizierenden Modelle vorgestellt, nicht zuletzt deshalb, da diese
w¨ahrend des gesamten Praktikums eingesetzt werden.
Hinweis. Verwenden Sie f¨
ur die mathematische Modellbildung das Computeralgebraprogramm Maple. Substituieren Sie die Parameter gegen ihre numerischen Werte erst am
Ende Ihrer Berechnungen.
3
Praktikum 1. Identifikation
1.1.1. Prozessidentifikation im Frequenzbereich
Hinweis. Implementieren Sie die mathematischen Modelle in Matlab/Simulink so,
dass Sie die Modellparameter schnell ¨andern k¨onnen. Dabei ist es g¨
unstig, in so genannten m-Files zuerst die Parameter zu spezifizieren und dann die (mit Maple) symbolisch
berechneten Ausdr¨
ucke anzuf¨
uhren. Dies erm¨oglicht vor allem eine einfache Dokumentation der eigenen Vorgangsweise bei der Bearbeitung der Aufgaben.
Hinweis. Matlab/Simulink bietet in der aktuellen Version Objekte zur Handhabung
¨
von s-, z- (und q-) Ubertragungsfunktionen
und Zustandsdarstellungen an (Befehle tf,
ss, . . . ). Diese Objekte k¨onnen Sie dann unmittelbar in Ihre Simulink-Simulation inkludieren (Simulink / Control System Toolbox / LTI System).
1.1.1
Prozessidentifikation im Frequenzbereich
¨
Neben der Identifikation im Zustandsraum kann das Ubertragungsverhalten
eines LTI¨
Systems besonders einfach durch seine Ubertragungsfunktion dargestellt werden. Bei der
¨
Identifikation im Frequenzbereich soll nun der Frequenzgang eines Ubertragungssystems
bestimmt werden.
1.1.1.1
Identifikation mittels FFT
Fouriertransformation zeitkontinuierlicher Signale
Die Fouriertransformation eines kontinuierlichen Zeitsignals f (t) berechnet sich zu
Z+∞
f (t) e−jωt dt .
fˆ(jω) =
−∞
Die hinreichende Bedingungen f¨
ur die Existenz der Fouriertransformierten ist
Z+∞
|f (t)| dt < ∞
kf (t)k1 =
−∞
oder
v
u Z+∞
u
u
kf (t)k2 = t f (t)2 dt < ∞ .
−∞
Die inverse Fouriertransformation ergibt sich zu
1
f (t) =
2π
Z+∞
fˆ(jω) ejωt dω .
−∞
4
Praktikum 1. Identifikation
1.1.1. Prozessidentifikation im Frequenzbereich
(fk)
0
T
a
1
2
N -2 N -1
3
k
T
Bild 1.1: Abgetastetes Zeitsignal.
Die Diskrete Fouriertransformation (DFT)
Grundlagen Tastet man ein Signal f (t) zu ¨aquidistanten Zeitpunkten kTa mit der Abtastzeit Ta ab, so steht man vor der Aufgabe, zu einer endlichen Folge von gemessenen
Abtastwerten (fk ) (genauer zu deren periodischer Fortsetzung) die zugeh¨orige Fouriertransformierte zu bestimmen (siehe Bild 1.1). Dies geschieht mit Hilfe der diskreten Fouriertransformation
fˆn =
N
−1
X
2π
fm e−j N mn
mit n = 0, 1, ..., N − 1,
(1.1)
m=0
welche eine umkehrbar eindeutige Zuordnung zweier Zahlen-N-Tupel darstellt. Die inverse
diskrete Fouriertransformation lautet
N −1
1 X ˆ j 2π nm
fn e N
fm =
N n=0
mit m = 0, 1, ..., N − 1 .
Gleichung (1.1) kann man auch in Form eines linearen Gleichungssystems
 


1 1
··· 1
fˆ0
f0
−j 2π
(N −1)
  1 e−j 2π
 fˆ


N
N
··· e
 
 1
  f1
 =  .. ..
 ..
  ..
.
.
. . ..
  . .
 .
 .
2π
2π
(N
−1)
−j
(N
−1)(N
−1)
−j
fN −1
··· e N
1 e N
fˆN −1
{z
}
|
(1.2)





(1.3)
A
anschreiben. Da die Matrix A unit¨ar1 ist, l¨asst sich zwischen der µ-ten und der (N − µ)1
Eine unit¨
are Matrix ist eine komplexe quadratische Matrix deren Spalten orthonormal sind. Somit
ist U−1 = U∗ , mit U∗ als transponierte konjugiert komplexe der Matrix U.
5
Praktikum 1. Identifikation
1.1.1. Prozessidentifikation im Frequenzbereich
ten Zeile nachfolgender Zusammenhang
fˆN −µ =
N
−1
X
k(N −µ)
−j 2π
N
fk e
=
N
−1
X
2π
fk e−j2πk ej N kµ = fˆµ∗
k=0
k=0
angeben. Dies bedeutet aber, dass in (1.3) N2 Zeilen weggelassen werden k¨onnen, da sich
die µ-te Zeile als konjugiert Komplexe der (N − µ)-ten Zeile ergibt. Es folgt schließlich
 ˆ
f0
 fˆ1

 ..
 .
fˆN
2

−1

 
 
=
 
1
1
..
.
1
2π
e−j N
..
.
···
···
..
.

1
2π
e−j N (N −1)
..
.
1 e−j N ( 2 −1) · · · e−j N (N −1)( 2 −1)
2π
N
2π
N




f0
f1
..
.
fN −1



 .

(1.4)
Parameterwahl
• Besteht die Anzahl der Abtastwerte aus einer Potenz von 2 d.h.,
N = 2γ
mit γ ∈ N,
(1.5)
so ergeben sich weitere Vereinfachungen in (1.4), die man in weiterer Folge auch algorithmisch in Form des so genannten FFT-Algorithmus (Fast Fourier Transform)
implementiert. Es handelt sich dabei um einen Divide and Conquer“-Algorithmus.
”
Wenn die Anzahl der Abtastwerte keine Potenz von 2 ist, so kann der Messdatenvektor immer mit Nullen auf eine solche Anzahl erweitert werden. In der angels¨achsischen Literatur spricht man dabei von zero-padding“. Dies ist nicht zwingend
”
notwendig f¨
ur die Berechnung der FFT mit Matlab, da Matlab intern ohnehin
zero-padding“ verwendet.
”
• Vor der Berechnung der FFT m¨
ussen 2 Parameter festgelegt werden, n¨amlich die Beobachtungsdauer (genauer implizit angenommene Periodendauer) T und die Anzahl
der Abtastwerte N. Dabei gilt f¨
ur die Beobachtungsdauer T die Beziehung T = NTa
mit der Abtastzeit Ta . Die Beobachtungsdauer legt die kleinste aufl¨osbare Frequenz
ω0 = 2π
fest. Die Anzahl der Messwerte N, welche bei gegebener BeobachtungsT
dauer durch die Abtastzeit Ta festgelegt wird, bestimmt die Frequenzdiskretisierung
bzw. die maximal aufl¨osbare Frequenz ωg = N2ω0 = Tπa . Matlab stellt eine fertige FFT-Routine (Befehl fft) zur Verf¨
ugung, wobei f¨
ur die R¨
uckgabeparameter die
Korrespondenzen nach Bild 1.2 gelten.
Aufgabe 1.1 Schreiben Sie unter Verwendung der FFT–Routine von Matlab ein Programm mit dem Aufruf
[ω, Betrag, Phase] = fkl (uk, yk, Ta, N)
zur Berechnung des Frequenzganges eines LTI–Systems, wobei als Eingabe die Abtastfolgen
der Eingangs- und Ausgangsgr¨oße (uk ) bzw. (yk ), die Abtastzeit Ta und die Anzahl der
Messpunkte N dienen und als Ergebnis ω, |Gz (ejω )|dB und arg(Gz (ejω )) geliefert wird.
6
Praktikum 1. Identifikation
1.1.1. Prozessidentifikation im Frequenzbereich
Z e it fo lg e
M A T L A B
In d e x
F o u r ie r tr a n s fo r m ie r te
M A T L A B
In d e x
u
1
R e ( u^ 0 ) + j I m ( u^ 0 )
1
u
u
0
N /2
N -1
N
R e ( u^
N /2
) + j I m ( u^
N /2
N
)
= 0
R e ( u^
N
N -1
) + j I m ( u^
N -1
N
)
0
- w
g
w
+ 1
2
0
w
w
F F T
+ 1
2
F r e q u e n z
2 w
g
F K L
0
g
- w
0
Bild 1.2: Matlab-Indizierung bei der FFT.
Hinweis. Abbildung 1.3 zeigt das zugeh¨orige Simulink-Bild. Die FFT der Ausgangsfolge
dividiert durch die FFT der Eingangsfolge gibt Gz (ejω ).
¨
Testen Sie Ihr Programm in Simulink anhand verschiedener Ubertragungsfunktionen.
Bereiten Sie den Vergleich so auf, dass in einem Diagramm das Bodediagramm der no¨
minellen und der indentifizierten Ubertragungsfunktion
dargestellt werden k¨onnen!
k o n t in u ie r lic h e s
E in g a n g s s ig n a l
u (t)
T
L Z I
S y s te m
y (t)
T
S c o p e
a
a
A
A
(u k)
(y k)
T o
W o r k s p a c e
T o
W o r k s p a c e
Bild 1.3: Frequenzkennlinien mittels FFT.
7
ˇ
1.1.2. Der Cuk-Konverter
Praktikum 1. Identifikation
1.1.2
ˇ
Der Cuk-Konverter
ˇ
Der Cuk-Konverter
ist ein getaktetes Schaltnetzteil, dessen Aufgabe es ist, eine ungeregelte konstante Gleichspannung in eine in einem bestimmten Bereich beliebig vorgebbare
Gleichspannung umzuwandeln. Die Vorteile von getakteten Schaltnetzteilen gegen¨
uber
linearen Spannungsreglern sind vor allem der weitaus h¨ohere Wirkungsgrad und die M¨oglichkeit, die Ausgangsspannung u
¨ber dem Niveau der Eingangsspannung zu regeln. Bild
ˇ
1.4 zeigt das Schaltbild des Cuk-Konverters.
i
u
C 1
i
1
L 1,R
U
e
+ D U
e
1
1
C
1
S
0
L 2,R
2
2
C
2
u
C 2
G + D G
ˇ
Bild 1.4: Schaltbild des Cuk-Konverters.
Ist die Stellung des Schalters S gleich 0, dann wird der Kondensator C1 u
¨ber die Spule
L1 geladen und die Spule L2 gibt einen Teil der gespeicherten Energie an den Ausgang
ab. Wechselt der Schalter seine Stellung nach 1, dann wird die Energie der Spule L1 u
¨ber
den Eingang nachgeladen, und der Kondensator C1 transferiert einen Teil seiner Energie
zur Spule L2 . Die Aufgabe des Kondensators C1 besteht also prim¨ar darin, Energie zu
speichern und vom Eingang zum Ausgang zu transferieren. Der Kondensator C2 dient
lediglich zur Gl¨attung der Ausgangsspannung.
1.1.2.1
Mathematische Beschreibung
Zufolge des Existenzsatzes von Differentialgleichungen gilt, dass f¨
ur st¨
uckweise stetige
Eingangsgr¨oßen u die Zustandsgr¨oßen des Systems
x˙ = f(x, u)
stetig sind. Bei einem RLC-Netzwerk mit konstanten Induktivit¨aten und Kapazit¨aten
werden als Zustandsgr¨oßen die Str¨ome durch die Induktivit¨aten und die Spannungen an
ˇ
den Kapazit¨aten herangezogen. Ein schaltendes Netzwerk wie der Cuk–Konverter
wird
durch zwei Differentialgleichungssysteme der Form
x˙ 1 = f1 (x1 )
t ∈ (iT, (i + u) T ]
Schalter in 1
x˙ 2 = f2 (x2 )
t ∈ ((i + u) T, (i + 1) T ]
Schalter in 0
8
,
i = 0, 1, . . .
(1.6)
ˇ
1.1.2. Der Cuk-Konverter
Praktikum 1. Identifikation
mit glattem2 f1 , f2 und dem Tastverh¨altnis u, 0 ≤ u ≤ 1, beschrieben. Das Tastverh¨altnis
u gibt dabei das Verh¨altnis der Einschaltzeit des Schalters (Schalter in Stellung 1) zur
Periodendauer T an. Nun werden diese beiden Systeme durch die Bedingungen
x1 (iT ) = x2 (iT )
x1 ((i + u) T ) = x2 ((i + u))T )
gekoppelt. Bild 1.5 veranschaulicht diesen Sachverhalt.
x
x
1
2
t
iT
( i+ u ) T
( i+ 1 ) T
Bild 1.5: Zu schaltenden Netzwerken.
Ohne Beweis gilt nun unter gewissen Annahmen f¨
ur T → 0, dass das mathematische
Modell eines schaltenden Netzwerkes Gl. (1.6) sich in der Form
x˙ = f2 (x) + (f1 (x) − f2 (x)) u
(1.7)
beschreiben l¨asst.
1.1.2.2
Das Labormodell
ˇ
Bild 1.6 zeigt den schematischen Aufbau f¨
ur das Labormodell des Cuk-Konverters.
Dabei werden nachfolgende Bauteilwerte verwendet.
L1 = 50 mH
C2 = 100 µF
S1 = S2 = 0.1 Ω
L2 = 10 mH
R1 = 0.76 Ω
G = 1/33.7 S
C1 = 680 µF
R2 = 1.08 Ω
Ue = 12 V
Zur Messung der Zustandsgr¨oßen werden Elektrometerverst¨arker und als Stellglied ein
Pulsweitenmodulator (PWM) verwendet. Die Periodendauer des PWM-Signals kann als
sehr klein im Vergleich zu den Zeitkonstanten des Modells betrachtet werden.
1.1.2.3
Aufgaben
ˇ
Aufgabe 1.2 Modellbildung des Cuk-Konverters
(mit Maple).
ˇ
1. Bestimmen Sie das mathematische Modell des Cuk–Konverters
nach Gl. (1.7).
2
Unter glatt versteht man, dass jede Komponente stetige Ableitungen beliebiger Ordnung nach jedem
Argument besitzt.
9
ˇ
1.1.2. Der Cuk-Konverter
Praktikum 1. Identifikation
In s tru m e n te n v e rs tä rk e r
+ F ilte r fü r u C 1
L
1
C 1
1
e
C
P W M
S
L
R
2
1
C
- S ig n a l
S
1
In s tru m e n te n v e rs tä rk e r
+ F ilte r fü r iL 1
2
2
u
C 2
2
G
In s tru m e n te n v e rs tä rk e r
+ F ilte r fü r u C 2
U
R
u
In s tru m e n te n v e rs tä rk e r
+ F ilte r fü r iL 2
Bild 1.6: Schematischer Aufbau des Labormodells.
2. Berechnen Sie den station¨aren Zustand xs als Funktion des station¨aren Tastverh¨
altnisses us .
3. Welche station¨aren Werte ergeben sich, wenn die Innenwiderst¨ande R1 und R2 der
Induktivit¨aten und die Widerst¨ande der Strommessung S1 und S2 Null sind?
4. Bestimmen Sie die maximal m¨ogliche Ausgangsspannung und das zugeh¨orige Tastverh¨altnis.
5. Ermitteln Sie das linearisierte Modell um einen allgemeinen station¨aren Arbeitspunkt.
¨
6. Berechnen und zeichnen Sie den Verlauf der Null- und Polstellen der Ubertragungs∆ˆ
uC2
funktion Gus (s) =
des linearisierten Systems als Funktion des station¨
aren
∆ˆ
u
Tastverh¨altnisses us .
¨
7. Zeichnen Sie das Bodediagramm der Ubertragungsfunktion
G0.5 (s) f¨
ur us = 0.5 (in
Matlab).
Aufgabe 1.3 Implementieren des Simulationsmodells.
1. Implementieren Sie das mathematische Modell aus Aufgabe (1.2) als M-Code-SFunction (siehe Automatisierungstechnik Praktikum) in Simulink.
2. Um eine S-Function auf die dSpace Hardware laden zu k¨onnen, ist es notwendig,
diese in der Sprache C zu schreiben, als so genannte C-Code-S-Function. (Beispiele
dazu befinden sich im Matlab Unterverzeichnis: %Matlab\Simulink\src, speziell
das Template sfuntmpl_basic.c bzw. direkt in Simulink unter S-function demos). Zum Kompilieren des Codes dient der Befehl mex (mex name.c) im Matlab
10
ˇ
1.1.2. Der Cuk-Konverter
Praktikum 1. Identifikation
Workspace.
Implementieren Sie die S-Function aus Punkt 1 als C-Code-S-Function.
3. Testen Sie beide S-Functions ausf¨
uhrlich. Vergleichen Sie die Simulationsergebnisse
und pr¨
ufen Sie diese auf Plausibilit¨at. (W¨ahrend des Praktikums ist keine Zeit CProgramme zu debuggen!)
Aufgabe 1.4 Aufschalten einfacher Testsignale.
ˇ
1. Ermitteln Sie an verschiedenen Arbeitspunkte f¨
ur das nichtlineare Modell des CukKonverters die Sprungantwort und die Antwort auf das Signal σ(t) − σ(t − T ) mit
geeigentem T in Simulink. Vergelichen Sie das Ergebnis mit dem des um den jeweiligen Arbeitspunkt linearisierten Modells.
Hinweis. Arbeitspunktaufschaltung
2. Bestimmen Sie in Simulink f¨
ur den Arbeitspunkt us = 0.5 einige Punkte des Frequenzganges durch Aufschalten harmonischer Zeitfunktionen aus der Amplituden–
und Phasenverschiebung im eingeschwungenen Zustand. Vergelichen Sie wiederum
das Ergebnis mit dem des linearisierten Modells.
Aufgabe 1.5 FFT-Analyse.
¨
Zur rechnergest¨
utzten Ermittlung des Ubertragungsverhaltens
eines Abtastsystems betrachte man Bild 1.7.
(u k)
T
H
a
u (t)
G (s)
y (t)
T
A
a
(y k)
G (z )
Bild 1.7: Abtastsystem.
¨
1. Berechnen Sie die z- und die q-Ubertragungsfunktion
f¨
ur das linearisierte Modell
ˇ
des Cuk-Konverters G0.5 (s) (Arbeitspunkt us = 0.5) bei einer Abtastzeit Ta = 2 ms
in Matlab.
ˇ
2. Schalten Sie in Simulink auf das nichtlineare Modell des Cuk-Konverters
am Arbeitspunkt us = 0.5 einen Impuls der Form nach Bild 1.8 auf und ermitteln Sie
somit den Frequenzgang mit Ihrer Identifikationsroutine. Bestimmen Sie geeignete
Werte f¨
ur du, dt und tend mit
0.1 ≤ du + us ≤ 0.75
so, dass das System einerseits gut angeregt, aber andererseits noch in guter N¨aherung
im linearen Bereich betrieben wird. Vergleichen Sie die Ergebnisse, in dem Sie das
errechnete und das identifizierte Bodediagramm u
¨bereinander legen.
11
Praktikum 1. Identifikation
1.1.3. Der Torsionsschwinger
D u
d u
t [s]
0 .1
0 .1 + d t
tend
Bild 1.8: Impulsfunktion.
1.1.3
Der Torsionsschwinger
Bild 1.9 zeigt den schematischen Aufbau des Labormodells Torsionsschwinger. Dabei wird
an eine permanenterregte Gleichstrommaschine ein mechanisches System, bestehend aus
drei Schwungmassen, die u
¨ber zwei Torsionsfedern verbunden sind, angekoppelt.
i
u
A
A
R
L
u
A
F
A
u
M
A
, w 1, j
i
q
G le ic h s tro m a n trie b
M
1
c
1
1
L
, w 2, j
q
w 3, j
2
c
2
2
q
3
3
D re h fe d e r-M a s s e -S c h w in g e r
M e ssu n g
Bild 1.9: Schematischer Aufbau des Torsionsschwingers.
Unter der Voraussetzung, dass keine S¨attigungseffekte auftreten, lautet das mathematische
Modell der Gleichstrommaschine
1
d
iA =
(uA − RA iA − km ω1 )
dt
LA
d
1
(km iA − MLast )
ω1 =
dt
Θ1
mit der Ankerspannung uA , dem Ankerstrom iA , der Drehwinkelgeschwindigkeit ω1 , der
Ankerinduktivit¨at LA , dem Ankerwiderstand RA , der Motorkonstanten km , dem Tr¨agheitsmoment Θ1 und dem Lastmoment MLast . Das vom Motor erzeugte Moment betr¨agt
demnach MA = km iA .
Mit Θ1 , Θ2 und Θ3 werden die Tr¨agheitsmomente der drei Str¨ange und mit c1 und c2
die Torsionssteifigkeiten der beiden Kopplungsfedern bezeichnet. Weiters wirken in den
Lagern geschwindigkeitsproportionale Reibmomente mit den Reibkoeffizienten d1 , d2 und
d3 sowie auf die Schwungmasse 2 ein Lastmoment ML .
1.1.3.1
Das Labormodell
Beim Labormodell wurden nachfolgende Daten experimentell festgestellt.
12
Praktikum 1. Identifikation
1.1.3.2
1.1.3. Der Torsionsschwinger
LA = 895.7 µH
Θ1 = 25.652 · 10−6 kgm2
RA = 6.382 Ω
Θ2 = 6.442 · 10−6 kgm2
km = 41 · 10−3 Nm/A
Θ3 = 5.097 · 10−6 kgm2
uA ≤ 24 V
d1 = 3.984 · 10−6 Nms
c1 = 1.719 · 10−3 Nm/rad
d2 = 0.918 · 10−6 Nms
c2 = 1.719 · 10−3 Nm/rad
d3 = 2.397 · 10−6 Nms
Aufgaben
Aufgabe 1.6 Modellbildung des Torsionsschwingers.
Die Motorspannung uA dient als Stellgr¨oße, als Ausgangsgr¨oße wird die Winkelgeschwindigkeit ω3 herangezogen. F¨
ur die Untersuchungen der ersten beiden Punkte gilt ML = 0.
1. Ist das System mit den Zustandsgr¨oßen
(a) xT = [iA , ϕ1 , ϕ2 , ϕ3 , ω1 , ω2 , ω3 ]
(b) xT = [iA , ϕ2 − ϕ1 , ϕ3 − ϕ2 , ω1 , ω2 , ω3 ]
vollst¨andig erreichbar / vollst¨andig beobachtbar? F¨
uhren Sie diese Untersuchungen
mit symbolischen Parametern in Maple durch.
2. Den Ausgangspunkt f¨
ur die folgenden Betrachtungen bildet das Zustandsmodell (des
vollst¨andig erreichbaren und beobachtbaren Systems)
uA
x˙ = Ax + B
ML
y = cT x .
Implementieren Sie dieses Modell in Simulink unter Verwendung obiger Daten.
¨
3. Berechnen Sie die Ubertragungsfunktion
G(s) f¨
ur das Modell mit dem Zustandsvektor aus Punkt 2 mit uˆA als Eingangsgr¨oße und ω
ˆ 3 als Ausgangsgr¨oße.
Aufgabe 1.7 Aufschalten einfacher Testsignale und FFT-Analyse.
1. Ermitteln Sie f¨
ur das Modell des Torsionsschwingers die Sprungantwort in Simulink.
¨
2. Berechnen Sie die z- und die q-Ubertragungsfunktion
f¨
ur den Torsionsschwinger f¨
ur
eine Abtastzeit Ta = 10 ms in Matlab.
3. Bestimmen Sie mittels Ihrer Identifikationsroutine den Frequenzgang des Torsionsschwingers und vergleichen Sie das Ergebnis mit dem berechneten durch u
¨bereinanderlegen der Bodediagramme.
13
Praktikum 1. Identifikation
1.2
1.2. Handentwurf nach Schneider
Handentwurf nach Schneider
Dieser Teil der Labor¨
ubung ist dem Studium des Schneider-Entwurfs gewidmet, der
zur Klasse der so genannten Loopshaping“ -Verfahren z¨ahlt und bereits im Entwurf eine
”
Ber¨
ucksichtigung von Beschr¨ankungen (Stellgr¨oßenbeschr¨ankung, ...) erm¨oglicht. F¨
ur den
Torsionsschwinger sollen im Sinne des Schneider-Entwurfs verschiedene Problemstellungen gel¨ost und die resultierenden Regler anschließend im Praktikum am Streckensimulator und am Labormodell implementiert werden. Gegenstand der Betrachtungen ist der
Regelkreis nach Bild 1.10, wobei das (fiktive) Filter F verwendet wird, um Eigenschaften
des F¨
uhrungssignales r, wie zum Beispiel eine Steigungsbeschr¨ankung, zu modellieren.
~
(r k)
F #(q )
F ilt e r
(r k)
-
(e k)
R
#
(q )
R e g le r
(u k)
G
#
(q )
(y k)
S tr e c k e
Bild 1.10: Eingr¨oßenregelkreis f¨
ur den Schneider-Entwurf.
Besonders hervorzuheben ist, dass dieser Entwurf maßgeblich von der Beziehung kyk2 ≤
kHk∞ kuk2 f¨
ur ein System yˆ = H uˆ gebrauch macht, und daher die Entwurfsspezifikationen
mit der 2-Norm formuliert werden m¨
ussen. Mitunter ist es nun schwierig, diese Spezifikationen (z.B. kuk2 ≤ umax ) im Sinne der 2-Norm anzugeben. Wesentlich umg¨anglicher
w¨are eine Spezifikation mit Hilfe der ∞-Norm (wie z.B. kuk∞ ≤ umax ), da somit direkt
die Aktor- oder etwaige andere Systembegrenzungen herangezogen werden k¨onnten.
Obwohl eine entsprechende Problemformulierung basierend auf der ∞-Norm allerdings nur
f¨
ur harmonische Eingangsgr¨oßen (nach dem Abklingen der Einschwingvorg¨ange) zu einer
theoretisch fundierten Darstellung f¨
uhrt, wird diese Variante in der Praxis h¨aufig bem¨
uht.
Dabei darf allerdings keinesfalls aus den Augen verloren werden, dass dieser Zugang keine
M¨oglichkeit bietet, das Einhalten von harten“ Begrenzungen (z.B. kuk∞ ≤ umax ) f¨
ur
”
die gesamte Klasse der zul¨assigen F¨
uhrungsfolgen (z.B. k˜
r k∞ ≤ 1) zu erfassen, vielmehr
ist im Anschluss an den Entwurf dieser Sachverhalt durch Rechnung und Simulation zu
u
ufen. Dieser Problematik sollte beim Studium der Aufgaben besonderes Augenmerk
¨berpr¨
geschenkt werden.
Um die Charakteristik beider Zug¨ange zu illustrieren, beinhalten die folgenden Aufgabenstellungen sowohl Entwurfsspezifikationen im Sinne der 2-Norm als auch den approximativen Zugang mit Hilfe der ∞-Norm.
1.2.1
Der Torsionsschwinger
Verwenden Sie f¨
ur s¨amtliche Reglerentw¨
urfe sowie Simulationen f¨
ur den Torsionsschwinger das um das elektrische Teilsystem reduzierte Modell (mit den Zustandsgr¨oßen x =
[ϕ2 − ϕ1 , ϕ3 − ϕ2 , ω1 , ω2 , ω3 ]T , vgl. erste Labor¨
ubung).
Aufgabe 1.8 Schneider-Entwurf f¨
ur die Winkelregelung des Torsionsschwingers; Spezifikationen mit Hilfe der 2-Norm.
14
Praktikum 1. Identifikation
1.2.1. Der Torsionsschwinger
Im Rahmen dieser Aufgabe soll die Regelung des Winkels ϕ3 vorgenommen werden. Die
entsprechende Strecken¨
ubertragungsfunktion sei mit Gϕ (s) = ϕˆ3 /ˆ
uA = G(s) /s bezeichnet
(G(s) = ω
ˆ 3 /ˆ
uA ). Da die Parameter des Torsionsschwingers (vgl. erste Labor¨
ubung), insbesondere die D¨ampfungsparameter, f¨
ur einen h¨oheren Geschwindigkeitsbereich identifiziert
wurden, nun aber bei der Winkelregelung wesentlich niedrigere Winkelgeschwindigkeiten
auftreten, muss vor allem der erh¨ohten Reibung beim Winkelsensor Rechnung getragen
werden. Deshalb wird f¨
ur die Aufgaben zur Winkelregelung die Wahl d3 = 21.573 · 10−6
getroffen.
Die Klasse der zul¨assigen F¨
uhrungsgr¨oßen r sei durch das Filter
F (z) =
Ta z
r(z)
=β
,
rˆ(z)
z−1
β = 80π
(1.8)
modelliert, wobei die fiktive F¨
uhrungsgr¨oße r˜ der Beziehung
k˜
r k2 ≤ 1
(1.9)
gen¨
uge. F¨
ur die Stellgr¨oßen- bzw. Regelfehlerbeschr¨ankung gelte:
kuk2 ≤ 14 ,
kek2 ≤ 250 .
(1.10)
Entwerfen Sie mit dem Verfahren von Schneider einen Regler R# (q) (ohne I-Anteil)
so, dass der geschlossene Regelkreis obige Spezifikationen erf¨
ullt (Abtastzeit Ta = 10 ms).
Hinweis. Verwenden Sie eine n¨aherungsweise Kompensation der ersten und/oder zweiten
Eigenfrequenz des Torsionsschwingers.
Ist der Regelkreis intern stabil?
Hinweis. Trotz der (n¨aherungsweisen) Kompensation der Eigenfrequenzen der Strecke
¨
ist es ung¨
unstig, im Rahmen des Loopshapings“ die Ubertragungsfunktion
L des offenen
”
Kreises so zu entwerfen, dass im Bereich dieser Eigenfrequenzen L# (jΩ) ≥ 1 gilt.
Hinweis. Bei der Herleitung der approximierten Syntheseungleichungen des SchneiderEntwurfs erh¨alt man zwei Beziehungen, die Auskunft dar¨
uber geben, ob die geforderten
Spezifikationen prinzipiell erf¨
ullbar sind.
Aufgabe 1.9 Approximativer“ Schneider-Entwurf f¨
ur die Winkelregelung des Torsi”
onsschwingers; Spezifikationen mit Hilfe der ∞-Norm.
Die Klasse der zul¨assigen F¨
uhrungsfolgen sei wiederum mit dem Filter nach Gl. (1.8)
modelliert, wobei nun die Bedingung
k˜
r k∞ ≤ 1
gelte. Damit folgt aus der Filter-Differenzengleichung
rk − rk−1
= β˜
rk
Ta
die Absch¨atzung
rk − rk−1 ≤β ,
Ta
15
(1.11)
Praktikum 1. Identifikation
1.2.1. Der Torsionsschwinger
das Filter F erzeugt demnach aus der Klasse der betragsm¨aßig beschr¨ankten Signale r˜ die
Klasse der steigungsbeschr¨ankten“ Signale r.
”
Entwerfen Sie mit dem (approximativen) Schneider-Entwurf einen Regler R# (q) (ohne
I-Anteil) so, dass der geschlossene Regelkreis die Stellgr¨oßenbegrenzung
kuk∞ ≤ 13 V
(1.12)
einh¨alt.
Beachten Sie jedoch, dass dies, wie bereits eingangs erw¨ahnt, keinen exakten Zugang darstellt! Berechnen Sie daher die maximal auftretende Stellgr¨oße kuk∞ f¨
ur die gesamte Klasse der F¨
uhrungssignale mit der Eigenschaft k˜
r k∞ ≤ 1 und vergleichen Sie das Ergebnis
mit der dem Entwurf zugrundegelegten Stellgr¨oßenschranke.
Simulieren Sie zus¨atzlich die Antwort des Regelkreises auf die F¨
uhrungsgr¨oße r nach Bild
1.11 und berechnen Sie die maximale Stellgr¨oße f¨
ur dieses Szenario.
r
4 0 p
0 .5 s
t
Bild 1.11: Gew¨ahlte F¨
uhrungsgr¨oße (f¨
ur den Laborversuch).
Hinweis. Wenn Sie zur Erzeugung der zul¨assigen F¨
uhrungsfolgen die Steigungsbeschr¨ankung in Simulink mit dem Block Rate-Limiter“ implementieren ist zu beachten, dass
”
dieser Block bei einem Sprung zum Zeitpunkt t = 0 s auf die Beschr¨ankung der Steigung
verzichtet.
Aufgabe 1.10 Winkelgeschwindigkeitsregelung des Torsionsschwingers mit der Spezifikation des maximal zul¨assigen Fehlers kek∞ f¨
ur eine Klasse harmonischer F¨
uhrungsgr¨
oßen.
Die Verwendung eines Filters F ist hier nicht notwendig.
Da nun der Torsionsschwinger im Gegensatz zur Winkelregelung in jenem Geschwindigkeitsbereich bewegt werden soll, f¨
ur den die D¨ampfungsparameter urspr¨
unglich identifiziert
wurden, werden nun wieder die D¨ampfungen aus der ersten Labor¨
ubung herangezogen.
Entwerfen Sie einen Regler R# (q) mit I-Anteil derart, dass f¨
ur harmonische F¨
uhrungssignale
(rk ) = 300 rad/s sin(ωkTa ) ,
ω < 0.3 rad/s
im eingeschwungenen Zustand der Regelfehler, bezogen auf die Amplitude der F¨
uhrungs¨
gr¨oße, kleiner als 10% bleibt. Ubertragen Sie diese Anforderung in das Bode-Diagramm.
Zus¨atzlich soll f¨
ur einen F¨
uhrungssprung
(rk ) = (300) rad/s
16
Praktikum 1. Identifikation
1.3. Realisierung am DSP
¨
bei m¨oglichst kurzer Anstiegszeit und m¨oglichst geringem Uberschwingen
die (harte) Stellgr¨oßenbegrenzung |uk | ≤ 15 V eingehalten werden. Die Einhaltung dieser (harten) Stellgr¨oßenbegrenzung soll jedoch nur anhand einer Simulation u
uft werden. Eine Be¨berpr¨
handlung im Sinne des Schneider-Entwurfs ist dabei nicht notwendig.
F¨
uhren Sie diesen Entwurf sowohl f¨
ur einen PI-Regler als auch f¨
ur einen Kompensationsregler mit I-Anteil durch.
1.3
Realisierung am DSP
Sowohl bei der Identifikation als auch bei der Implementierung von Regelaufgaben hat man
das Problem, Echtzeitanforderungen erf¨
ullen zu m¨
ussen. Im Praktikum wird ein inzwischen sehr weit verbreitetes Signalprozessorsystem der Firma dSpace verwenden, welches
es erlaubt, die Algorithmen f¨
ur den digitalen Signalprozessor (DSP), graphisch unter Matlab/Simulink zu entwickeln. Durch den in der Umgebung integrierten C-Codegenerator,
C-Compiler und Linker kann aus dem Simulink-Blockschaltbild der Echtzeit-Assemblercode f¨
ur den digitalen Signalprozessor erstellt werden.
Um unter Matlab/Simulink auch die am Signalprozessorboard vorhandenen Analog/Digital Converter (ADC) und Digital/Analog Converter (DAC) ansprechen zu k¨onnen, stellt
dSpace eine zus¨atzliche Bibliothek f¨
ur Simulink zur Verf¨
ugung, welche ADC- und DACBl¨ocke enth¨alt, die somit einfach in das Blockschaltbild integriert werden k¨onnen.
Auf der Institutshomepage im Downloadbereich finden Sie ein Datenblatt dieses Signalprozessorsystems (dSpace DS1104), welches Ihnen einen Einblick in dessen Leistungsf¨ahigkeit und Architektur geben soll.
1.3.1
Streckensimulator
Der Streckensimulator wird dazu verwendet, die mathematischen Modelle der Strecke
getrennt von der Stellgr¨oßenaufschaltung (bzw. sp¨ater vom Regler) ablaufen zu lassen.
Hierzu sollen jeweils 2 Signalprozessorsysteme zusammengeschaltet werden, wobei einer
das Eingangssignal bzw. das digitale Regelgesetz realisiert und der zweite DSP die Strecke
darstellt. Der Vorteil gegen¨
uber der reinen Simulation liegt darin, dass dabei die Strecke
asynchron zum Regler ablaufen kann und alle realen St¨orungen wie Mess- und Quantisierungsrauschen, sowie die Wandlungszeit der A/D- und D/A-Wandler bereits auf das
uhrung
Gesamtsystem wirken. In Tutorial dSpace Matlab2013b.pdf finden Sie eine Einf¨
und ein erstes Beispiel.
1.3.2
Aufgaben
ˇ
Aufgabe 1.11 Realisieren Sie den Cuk-Konverter
und den Torsionsschwinger am Streckensimulator. Im Praktikum ist keine Zeit zur Fehlersuche bei der Realisierung. Stellen
Sie daher sicher, dass Sie das Praktikum nur mit kompilierbaren Files besuchen!
17