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
© Copyright 2024