SIMULINK Regelkreise
Transcription
SIMULINK Regelkreise
Simulink Regelkreise SIMULINK Regelkreise Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth Simulink Regelkreise Inhalt • Modellierung einer Regelstrecke in Simulink • Analyse der Streckeneigenschaften in Matlab • Berechnung von Reglerkoeffizienten in Matlab • Auslegung eines Beobachters mit Zustandsregler in Matlab • Simulation des Gesamtsystems in Simulink und Auswertung der Ergebnisse Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth Simulink Regelkreise Ziel der Vorlesung Wichtig in dieser Vorlesung • ist nicht ein möglichst optimaler Reglerentwurf • sondern die Entwurfsmethodik in Matlab an sich • und das wechselseitige Zusammenspiel zwischen Matlab und Simulink – Entwurf in Matlab – Simulation/Validierung in Simulink Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 1 Simulink Regelkreise Regelstrecke: Gleichstromnebenschlußmaschine Systemgleichungen: Ankerspannung: UA Gegenspannung: EA Drehzahl: dN dt Inneres Drehmoment: Maschinenkonstanten: Ankerzeitkonstante: Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth d IA = E A + RA I A + L A · dt = CE · N · Ψ 1 = · (MM i − MW ) 2πJ M M i = CM · I A · Ψ CE = 2π · CM TA LA = RA 2 Simulink Regelkreise Regelstrecke: Gleichstromnebenschlußmaschine Maschinendaten Ankerwiderstand: RA = 250 mΩ Ankerinduktivität: LA = 4 mH Nennfluß: ΨN = 0, 04 Trägheitsmoment: J = 0, 012 kg m2 Motorkonstanten: CE = 236, 8 CM = 38, 2 TA = 16 Ankerzeitkonstante Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth Vs ms 3 Simulink Regelkreise Regelstrecke: Gleichstromnebenschlußmaschine Signalflußplan der GNM MW UA -e 6− EA - 1 RA 1 1 + sTA IA MM i ?− -e - - CM ΨN N r - 1 2π Js CE ΨN Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 4 Simulink Regelkreise Analyse der Regelstrecke (GNM) Vorbereitende Schritte • Erstellen einer Initialisierungsdatei mit allen relevanten Maschinen– und Simulationsdaten • Erstellen eines Simulink–Blockdiagramms der GNM • Hinzufügen von Eingangs– und Ausgangssignalen • Einstellen der Simulationsparameter Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 5 Simulink Regelkreise Analyse der Regelstrecke (GNM) Analyse • in Simulink (Sprungantworten) • in Matlab mittels der Befehle [A,B,C,D] = linmod(’sys’[,x,u]) [A,B,C,D] = linmod2(’sys’[,x,u]) [A,B,C,D] = dlinmod(’sys’,TS ,[,x,u]) • mit dem interaktiven Simulink LTI–Viewer Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 6 Simulink Regelkreise Analyse in Simulink • Einfügen entsprechender Quellen (Sprung, Rechteck, Sinus, ...) • Einfügen entsprechender Senken (OutP ort, T oW orkspace) • Simulation Starten • Plotten der interessierenden Zeitverläufe Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 7 Simulink Regelkreise Analyse in Matlab • Erzeugen eines LTI–Objekts im Matlab–Workspace: [A,B,C,D] = linmod(’sys’[,x,u]) • Durchführen der relevanten Analysen mit Hilfe von Befehlen der Control System Toolbox, z.B. impulse, step, bode, pzmap, nyquist, ... • Anzeigen charakteristischer Daten, z.B. Einschwingzeit, Anstiegszeit, Durchtrittsfrequenz, ... Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 8 Simulink Regelkreise Analyse mit Simulink Control Design Blockset • Einfügen von Eingängen und Ausgängen im Simulink Modell • Starten des LTI–Viewers aus dem Control Design Blockset • Anzeigen charakteristischer Daten, z.B. Einschwingzeit, Anstiegszeit, Durchtrittsfrequenz, ... • Wechsel zwischen verschiedenen Plotvarianten, z.B. Sprungantwort, PZ–Verteilung, Bodediagramm, ... Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 9 Simulink Regelkreise Regelungsentwurf–Kaskadenregelung Kaskadierte Strom– und Drehzahlregelung • Unterlagerte Stromregelung als PI–Regler ausgelegt • Überlagerte Drehzahlregelung als PI–Regler ausgelegt • Messung von Strom und Drehzahl • Vernachlässigung von EA beim Regelungsentwurf (Störgröße) Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 10 Simulink Regelkreise Regelungsentwurf–Stromregelung Stromregelung ∗ IA ∗ U UA A - e - -e 6− 6− 1 StromIA EA 1 Regler 1 + sTt RA - 1 1 + sTA IA MM i r- MW ?− -e - CM Ψ N N r - 1 2π Js CE Ψ N Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 11 Simulink Regelkreise Regelungsentwurf–Stromregelung Auslegung nach Betragsoptimum Streckenübertragungsfunktion: IA(s) 1 1 1 GI (s) = ∗ = · · UA(s) 1 + sTt RA 1 + sTA LA Streckenzeitkonstante: T1 = TA = R A Stromrichterzeitkonstante: Tσ = Tt Streckenverstärkung: V = R1 A ³ ´ ∗ (s) UA 1 Reglerübertragungsfunktion: GRI (s) = I ∗ (s)−I (s) = VRI sT + 1 RI A A Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 12 Simulink Regelkreise Regelungsentwurf–Kaskadenregelung Auslegung nach Betragsoptimum • Einstellregeln: TRI = T1 = TA T1 LA VRI = = 2Tσ V 2Tt • Reglerübertragungsfunktion: GRI (s) = Ã LA 1 · +1 2Tt sTA ! • Berechnung der Reglerkoeffizienten in separater Initialisierungsdatei Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 13 Simulink Regelkreise Regelungsentwurf–Kaskadenregelung Reglerrealisierung in Simulink 1 Sollwert 2 Istwert V_R 1 Reglerausgang P−Anteil V_R/T_n I−Anteil 1 s int_R • Implementierung als maskiertes Subsystem Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 14 Simulink Regelkreise Regelungsentwurf–Drehzahlregelung Drehzahlregelung N∗ IA∗ N Drehzahl- I A Regler - e - 6− - e - 6− StromRegler UA∗ - UA 1 1 + sTt -e 6− EA - 1 RA 1 1 + sTA IA MM i r- MW ?− -e - CM Ψ N N r - 1 2π Js r CE Ψ N Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 15 Simulink Regelkreise Regelungsentwurf–Kaskadenregelung Auslegung nach Symmetrischem Optimum • Stromregelkreis wird als unterlagertes Teilsystem betrachtet: GIers(s) = IA(s) 1 1 = ≈ ∗ (s) IA 1 + 2 Tt · s 1 + 2 Tt · s + 2 Tt2 · s2 • Übertragungsfunktion der zu regelnden Gesamtstrecke: N (s) C M ΨN 1 1 1 GN (s) = ∗ = · = · IA(s) 2 πJ · s 1 + 2 Tt · s TS · s 1 + T σ · s Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 16 Simulink Regelkreise Regelungsentwurf–Kaskadenregelung Auslegung nach Symmetrischem Optimum • Festlegung der Reglerparameter: TRN = 4 Tσ = 8 Tt VRN = 1 2 πJ TS = · 2 Tσ 4 T t C M ΨN • Übertragungsfunktion der drehzahlgeregelten GNM: GN ers(s) = N (s) 1 + 8 Tt · s = N ∗(s) 1 + 8 Tt · s + 16 Tt2 · s2 + 16 Tt3 · s3 • Berechnung der Reglerkoeffizienten in separater Initialisierungsdatei Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 17 Simulink Regelkreise Beobachterentwurf Aufgabenstellung • Die GNM soll drehzahlgeregelt werden • Es soll kein Drehzahlsensor verwendet werden • Die Drehzahl wird durch einen Zustandsbeobachter geschätzt • Als Messung liegt der Ankerstrom IA vor Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 18 Simulink Regelkreise Beobachterentwurf Entwurfsschritte • Beobachter State–Space Modell mittels linmod extrahieren • Beobachterpole festlegen (hier D0–Polynom) • Beobachterrückführmatrix L mittels place bestimmen • Beobachter State–Space Object mittels estim bestimmen Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 19 Simulink Regelkreise Beobachterentwurf Beobachtergleichungen u x̂˙ = (A − LC) x̂ + [B − LD L] · y • Realisierung des Beobachters in einem State − Space Block in Simulink • Der Beobachter erhält zwei Eingangsgrößen: u und y Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 20 Simulink Regelkreise Beobachterentwurf Störgrößenbeobachter • Im konventionellen Luenbergerbeobachter verbleibt bei Störgrößen ein Schätzfehler • Erweiterung des Luenbergerbeobachters zur Störgrößenschätzung Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 21 Simulink Regelkreise Beobachterentwurf z ? F u r- B ẋ xr - -? e6 C y -e - A ẑ˙ ẑ ? K F e ? L r e 6− ? e - B x̂˙ x̂r - -? e6 C ŷ -e - A Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 22 Simulink Regelkreise Beobachterentwurf Gleichungen des Störgrößenbeobachters x̂˙ = Ax̂ + Bu + Le + Fẑ = (A − L C)x̂ + B u + Ly + Fẑ ẑ˙ = = Ke −K Cx̂ + K y ŷ = Cx̂ Vektorschreibweise u x̂ B L A − LC F x̂˙ · · + = y 0 K ẑ −KC 0 ẑ˙ ŷ = h Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth C 0 i · x̂ ẑ 23 Simulink Regelkreise Beobachterentwurf Realisierung des Störgrößenbeobachters • Erstellen der erweiterten Zustandsdarstellung inkl. Störgrößenschätzung • Implementierung im State − Space Block in Simulink Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 24 Simulink Regelkreise Zustandsregelung Entwurf einer Zustandsregelung • Die Meßgröße IA wird direkt verwendet • Die restlichen zwei Zustandsgrößen UA und N werden dem Beobachter entnommen • Die Zustandsdarstellung der Strecke wird mittels linmod generiert • Der Zustandsreglervektor R wird mittels place bestimmt Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 25 Simulink Regelkreise Zustandsregelung Implementierung der Zustandsregelung • Die beobachteten und der gemessene Zustand werden zu einem vollständigen Zustandsvektor zusammengefaßt (M ux) • Das Regelgesetz u = KV w − Rx̂ wird aus entsprechenden Simulink–Blöcken erzeugt • Untersuchung des geregelten Gesamtsystems durch Simulation Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth 26