import numpy as np
import control as ct
import matplotlib.pyplot as plt
from matplotlib import patches
'ggplot') plt.style.use(
Das Frequenzkennlinienverfahren (FKL) ist ein bewährtes und einfaches Entwurfsverfahren und gehört zu den klassischen Verfahren der Regelungstechnik. Dieses Verfahren erlaubt einen Entwurf eines Reglers, welcher gut an die konkrete Strecke angepasst ist.
Vereinfachtes Schnittpunktkriterium
Das vereinfachte Schnittpunktkriterium erlaubt einen Reglerentwurf, wo nur die Phasenreserve berücksichtigt werden muss, aber die Stabilität garantiert wird. Dadurch ist der Entwurf besonders leicht durchzuführen.
Der einfache Typ
Eine realisierbare Übertragungsfunktion
mit teilerfremden Polynomen
- (1a) Die Betragskennlinie von
weist genau einen Schnittpunkt mit der -dB Linie auf, und verläuft für unter dieser. - (1b) Die Ortskurve von
schneidet für den Einheitskreis in der -Ebene genau einmal, und verbleibt für im Inneren des Einheitskreises. - Der Verstärkungsfaktor
ist positiv, d.h. es gilt .
- Der Verstärkungsfaktor
Durchtrittsfrequenz
Die Durchtrittsfrequenz
Phasen- und Amplitudenreserve
Die Phasenreserve
Bezeichnet man mit
Das control
Modul liefert einige Methoden um die Phasenreserve und den Amplitudenreserve zu berechnen.
= ct.tf('s')
s = 0.5/(s*(1+s)*(1+2*s))
G #G = (s-1)/(s**2+s+4)
= ct.margin(G)
gm, pm, wg, wp print(f"{gm = :.2f} {pm = :.2f} {wg = :.2f} {wp = :.2f}")
= ct.stability_margins(G)
gm, pm, sm, wg, wp, ws print(f"{gm = :.2f} {pm = :.2f} {wg = :.2f} {wp = :.2f}")
gm = 3.00 pm = 32.61 wg = 0.71 wp = 0.37
gm = 3.00 pm = 32.61 wg = 0.71 wp = 0.37
Die Methode control.bode
erlaubt das automatisierte Einzeichnen der Phasen - und Amplitudenreserve.
=(16,8))
plt.figure(figsize= ct.bode(G, margins=True) _
Die Methode control.nyquist
zeichnet das Nyquist-Diagramm. Das Einzeichnen der Phasen- und Amplitudenreserve muss hier jedoch “per Hand” erfolgen.
# create pointer
= np.exp(1j*(np.pi+pm*np.pi/180))
pointer_pm
# nyquist plot
=(16,8))
plt.figure(figsize= ct.nyquist(G)
_ = plt.Circle((0, 0), 1, color='black', fill=False)
circle_uc
plt.gca().add_patch(circle_uc)'equal', 'box')
plt.gca().set_aspect(# gain margin
0,-1/gm ],[0.2,0.2],color='blue')
plt.plot([r'$-1/G_M$',
plt.annotate(=(-1/gm-0.2, 0.4), xycoords='data',
xy=(1, 1), textcoords='offset points', size=10)
xytext# phase margin
= patches.Arc((0, 0), 2, 2, linewidth=2, color='blue', angle=180.0, theta1=0.0, theta2=pm)
arc_phi
plt.gca().add_patch(arc_phi)0,np.real(pointer_pm)],[0,np.imag(pointer_pm)],color='black')
plt.plot([r'$\phi$',
plt.annotate(=(-1.3, -0.4), xycoords='data',
xy=(1, 1), textcoords='offset points', size=10)
xytext'Nyquist-Diagramm')
plt.title( plt.show()
Formulierung des vereinfachten Schnittpunktkriteriums
Durch die oben eingeführten Konzepte, kann das vereinfachte Schnittpunktkriterium folgendermaßen formuliert werden:
Ist der offene Kreis
Typisches Entwurfsverfahren
Faustformeln für den Reglerentwurf
Für die Phasenreserve und das Überschwingen gilt der Zusammenhang
Es kann durch die Vorgabe des Überschwingens kann auf die Phasenreserve
Es gilt der Zusammenhang
zwischen der kritischen Kreisfrequenz
Die bleibende Regelabweichung
zu entnehmen.
Durchführung des Reglerentwurfs
I Umrechnung der gegebenen Regelkreisspezifikation auf den offenenKreis
Im ersten Schritt werden die zeitlichen Vorgaben des geschlossenen Regelkreises, in Frequenz-Vorgaben des offenen Regelkreises umgerechnet. Durch die Anforderung an die Regelabweichung ergeben sich die Vorgaben für
II Entsprechende Modifikation der Frequenzkennlinien des offenen Kreises
Als erstens werden alle bekannte Teile des offenen Kreises zusammengefügt. Dann können wir diesen offenen Kreis im Bodediagramm analysieren und die Phasenreserve berechnen. Nun müssen Korrekturglieder geschickt eingefügt werden, um die Vorgaben zu erfüllen.
III Simulation des Regelkreises
Eine Simulation des geschlossenen Kreises muss durchgeführt werden, um die Erfüllung der Spezifikation zu überprüfen. Auch das Überprüfen der Stellgröße kann nötig sein.
Fazit
Das hier vorgestellte Verfahren kann auf allgemeinere Strecken wie
angewendet werden, wobei dann im Allgemeinen die Stabilitätsprüfung mit dem Nyquistkriterium durchgeführt werden muss. Für Spezialfälle können modifizierte Nyquistkriterien formuliert werden, was die Stabilitätsprüfung wieder vereinfacht. Die Überprüfung der Einhaltung der Spezifikation erfolgt immer mittels einer Simulation, hier mittels der Sprung- oder Rampenantwort.
Referenzen
- Feedback Systems: An Introduction for Scientists and Engineers, Second Edition, 2020/2022 (Karl J. Aström, Richard M. Murray)
- Automatisierungstechnik 2, WS 2019/2020 (Kurt Schlacher)
- Automatisierung, 2021/2022 ACIN (Andreas Kugi)