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