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 Aus-
wertung der Ergebnisse
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth
Simulink Regelkreise
Ziel der Vorlesung
Wichtig in dieser Vorlesung
• ist nicht ein moglichst optimaler Reglerentwurf
• sondern die Entwurfsmethodik in Matlab an sich
• und das wechselseitige Zusammenspiel zwischen Mat-
lab 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 = EA+RAIA+ LA ·
d IA
dt
Gegenspannung: EA = CE ·N ·Ψ
Drehzahl:dN
dt=
1
2πJ· (MMi −MW)
Inneres Drehmoment: MMi = CM · IA ·Ψ
Maschinenkonstanten: CE = 2π · CM
Ankerzeitkonstante: TA =LA
RA
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 2
Simulink Regelkreise
Regelstrecke: Gleichstromnebenschlußmaschine
Maschinendaten
Ankerwiderstand: RA = 250 mΩ
Ankerinduktivitat: LA = 4 mH
Nennfluß: ΨN = 0,04 Vs
Tragheitsmoment: J = 0,012 kgm2
Motorkonstanten: CE = 236,8
CM = 38,2
Ankerzeitkonstante TA = 16 ms
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 3
Simulink Regelkreise
Regelstrecke: Gleichstromnebenschlußmaschine
Signalflußplan der GNM
- e
−
-
1
RA
-
1
1 + sTA
-
CMΨN
- ?e−
-
1
2π Js
-r
CEΨN
6
UA
EA
IA MMi
MW
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
• Hinzufugen 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
• Einfugen entsprechender Quellen (Sprung, Rechteck,
Sinus, ...)
• Einfugen entsprechender Senken (OutPort, ToWorkspace)
• Simulation Starten
• Plotten der interessierenden Zeitverlaufe
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])
• Durchfuhren der relevanten Analysen mit Hilfe von Be-
fehlen der Control System Toolbox, z.B. impulse, step,
bode, pzmap, nyquist, ...
• Anzeigen charakteristischer Daten, z.B. Einschwing-
zeit, Anstiegszeit, Durchtrittsfrequenz, ...
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 8
Simulink Regelkreise
Analyse mit Simulink Control Design Blockset
• Einfugen von Eingangen und Ausgangen im Simulink
Modell
• Starten des LTI–Viewers aus dem Control Design Block-
set
• Anzeigen charakteristischer Daten, z.B. Einschwing-
zeit, 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
• Uberlagerte Drehzahlregelung als PI–Regler ausgelegt
• Messung von Strom und Drehzahl
• Vernachlassigung von EA beim Regelungsentwurf
(Storgroße)
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 10
Simulink Regelkreise
Regelungsentwurf–Stromregelung
Stromregelung
-I∗
Ae
−
IA
-
Strom-
Regler
-U
∗
A
1
1 + sTt
r
6- e
−
-
1
RA
-
1
1 + sTA
-
CMΨN
- ?e−
-
1
2π Js
-r
CEΨN
6
UA
EA
IA MMi
MW
N
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 11
Simulink Regelkreise
Regelungsentwurf–Stromregelung
Auslegung nach Betragsoptimum
Streckenubertragungsfunktion:
GI(s) =IA(s)
U∗
A(s)=
1
1+ sTt·
1
RA
·
1
1+ sTA
Streckenzeitkonstante: T1 = TA =LARA
Stromrichterzeitkonstante: Tσ = Tt
Streckenverstarkung: V = 1RA
Reglerubertragungsfunktion: GRI(s) =U∗
A(s)
I∗A(s)−IA(s)
= VRI
(
1sTRI
+1)
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 12
Simulink Regelkreise
Regelungsentwurf–Kaskadenregelung
Auslegung nach Betragsoptimum
• Einstellregeln:
TRI = T1 = TA VRI =T1
2TσV=
LA
2Tt
• Reglerubertragungsfunktion:
GRI(s) =LA
2Tt·
(
1
sTA+1
)
• Berechnung der Reglerkoeffizienten in separater
Initialisierungsdatei
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 13
Simulink Regelkreise
Regelungsentwurf–Kaskadenregelung
Reglerrealisierung in Simulink
1
Reglerausgang
s
1
int_R
V_R
P−Anteil
V_R/T_n
I−Anteil
2
Istwert
1
Sollwert
• Implementierung als maskiertes Subsystem
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 14
Simulink Regelkreise
Regelungsentwurf–Drehzahlregelung
Drehzahlregelung
-N∗
e
−
N
-
Drehzahl-
Regler
r
6-
I∗
Ae
−
IA
-
Strom-
Regler
-U∗
A
1
1 + sTt
r
6- e
−
-
1
RA
-
1
1 + sTA
-
CMΨN
- ?e−
-
1
2π Js
-r
CEΨN
6
UA
EA
IA MMi
MW
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)
I∗A(s)=
1
1+ 2Tt · s+2T2t · s
2≈
1
1+ 2Tt · s
• Ubertragungsfunktion der zu regelnden Gesamtstrecke:
GN(s) =N(s)
I∗A(s)=
CM ΨN
2πJ · s·
1
1+ 2Tt · s=
1
TS · s·
1
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 =TS
2Tσ=
1
4Tt·
2πJ
CM ΨN
• Ubertragungsfunktion der drehzahlgeregelten GNM:
GNers(s) =N(s)
N∗(s)=
1+ 8Tt · s
1+ 8Tt · s+16T2t · s
2 +16T3t · s
3
• 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
geschatzt
• 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 extra-
hieren
• Beobachterpole festlegen (hier D0–Polynom)
• Beobachterruckfuhrmatrix L mittels place bestimmen
• Beobachter State–Space Object mittels estim bestim-
men
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 19
Simulink Regelkreise
Beobachterentwurf
Beobachtergleichungen
˙x = (A − LC) x+ [B − LD L] ·
u
y
• Realisierung des Beobachters in einem State − Space
Block in Simulink
• Der Beobachter erhalt zwei Eingangsgroßen: u und y
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 20
Simulink Regelkreise
Beobachterentwurf
Storgroßenbeobachter
• Im konventionellen Luenbergerbeobachter verbleibt bei
Storgroßen ein Schatzfehler
• Erweiterung des Luenbergerbeobachters zur Storgroßen-
schatzung
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 21
Simulink Regelkreise
Beobachterentwurf
e er r- - - - - -
?
?
6B
A
C
F
u
z
x x y
r
K˙z
?
F
z
?e
?
Le ?e
−6
e er- - - - - -
6B
A
C˙x x y
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 22
Simulink Regelkreise
Beobachterentwurf
Gleichungen des Storgroßenbeobachters
˙x = Ax+Bu+ Le+ Fz = (A− LC)x+B u+ Ly+ Fz
˙z = Ke = −KCx+Ky
y = Cx
Vektorschreibweise
˙x
˙z
=
A− LC F
−KC 0
·
x
z
+
B L
0 K
·
u
y
y =[
C 0]
·
x
z
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 23
Simulink Regelkreise
Beobachterentwurf
Realisierung des Storgroßenbeobachters
• Erstellen der erweiterten Zustandsdarstellung
inkl. Storgroßenschatzung
• Implementierung im State− Space Block in Simulink
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 24
Simulink Regelkreise
Zustandsregelung
Entwurf einer Zustandsregelung
• Die Meßgroße IA wird direkt verwendet
• Die restlichen zwei Zustandsgroß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 vollstandigen Zustandsvektor zusammenge-
faßt (Mux)
• Das Regelgesetz u = KVw−Rx wird aus entsprechen-
den Simulink–Blocken erzeugt
• Untersuchung des geregelten Gesamtsystems durch Si-
mulation
Vorlesung Matlab/Simulink
Dipl.-Ing. U. Wohlfarth 26