-
Die
Erfindung betrifft ein Verfahren und eine Vorrichtung zum Optimieren
von Reglerparametern. Solche Reglerparameter spielen in elektrischen
Antrieben, die in großen
Stückzahlen
z.B. in der Automatisierungstechnik eingesetzt werden, eine wichtige
Rolle.
-
Elektrische
Antriebe kommen in vielen Gebieten der Technik zum Einsatz. Als
Beispiel seien hier lediglich Werkzeugmaschinen oder Bestückungsautomaten
genannt. Dabei spielt vor allem bei Positionieraufgaben die Ansteuerung
der Antriebe eine wichtige Rolle, da diese ganz entscheidend für die Präzision der durchgeführten Antriebsbewegungen
ist. In diesen Ansteuerungen finden meist komplizierte Reglerstrukturen Anwendung,
die über
eine Vielzahl von Reglerparameter verfügen, deren Optimierung eine
wichtige Aufgabe darstellt.
-
Um
nicht für
jede Optimierung von Reglerparametern auf das Können von speziell ausgebildetem
Personal angewiesen zu sein und auch einem weniger erfahrenen Anwender
die Inbetriebnahme und Optimierung eines elektrischen Antriebes
zu ermöglichen,
sind im Stand der Technik zahlreiche Verfahren bekannt, die eine automatische
Optimierung der Reglerparameter ermöglichen.
-
So
wird in der
EP 1 180
733 A1 beschrieben, wie eine Reglerstruktur mit Testsignalen
unterschiedlicher Frequenz angeregt wird, und aus der Antwort des
Reglers auf einen Satz von Reglerparametern geschlossen wird, die
eine stabile Regelung ohne Resonanzschwingungen erlauben.
-
In
der
EP 0 896 263 B1 ,
von der die vorliegende Erfindung ausgeht, wird die Reglerstruktur
mit Testsignalen in Form von kurzen Pulsen oder Stufenfunktionen
angeregt. Die Reaktion des Antriebssystems wird anhand einer Fehlerfunktion
berechnet, die aus der Abweichung von Soll-Drehzahl und Ist-Drehzahl abgeleitet wird.
Eine Optimierung der Reglerparameter wird anhand einer Minimierung
der Fehlerfunktion möglich.
-
Nachteilig
in beiden erwähnten
Verfahren ist, daß gewisse
Annahmen über
die Linearität
des Systems aus Reglerstruktur und Antrieb gemacht werden, die in
der Realität
nicht zutreffen. Die auf der Reaktion auf gewisse Testsignale beruhende
Berechnung von Eigenschaften des Systems lassen sich daher nicht
ohne weiteres auf alle Systemzustände übertragen. Die gefunden Reglerparameter
werden also für
reale Anwendungen nicht wirklich optimal sein.
-
Aufgabe
der Erfindung ist es, ein Verfahren und eine zur Durchführung des
Verfahrens geeignete Vorrichtung zum Optimieren von Reglerparametern
anzugeben, welche keinerlei Annahmen über das zugrundeliegende System
benötigen.
Es sollen vielmehr optimierte Reglerparameter für reale Anwendungen aufgefunden
werden.
-
Diese
Aufgabe wird einerseits gelöst
durch ein Verfahren mit den Merkmalen des Anspruches 1. Vorteilhafte
Details des Verfahrens ergeben sich aus den Merkmalen, die in den
von Anspruch 1 abhängigen
Ansprüchen
aufgeführt
sind.
-
Die
Lösung
der Aufgabe wird außerdem
durch eine Vorrichtung mit den Merkmalen des Anspruches 11 ermöglicht.
Vorteilhafte Details der Vorrich tung ergeben sich aus den Merkmalen
der von Anspruch 11 abhängigen
Ansprüche.
-
Es
wird ein Verfahren zum Optimieren von Reglerparametern eines Systems,
beispielsweise eines elektrischen Antriebs bzw. Antriebssystems,
vorgeschlagen, bei dem anhand einer Fehlerfunktion optimierte Reglerparameter
aufgefunden werden. Nach diesem Verfahren wird in einem ersten Schritt
ein Sollwertverlauf für
eine Regelgröße des Systems
festgelegt, der einem realen Verlauf möglichst nahe kommt. Dies kann
beispielsweise ein Positionswert sein, dessen zeitlicher Verlauf
festgelegt wird. Damit wird ein Bewegungsprofil festgelegt. Das
Verfahren läßt sich
aber auch mit anderen Regelgrößen eines
Antriebssystems wie Geschwindigkeit, Beschleunigung oder Antriebsstrom
durchführen.
Vorteilhaft ist, daß der
Sollwertverlauf einem tatsächlich
auftretenden Verlauf angepaßt
sein kann, so daß etwa
für einen
Bestückungsautomaten
Reglerparameter gefunden werden können, die auf die sehr spezifischen
Anforderungen für
eine solche Anwendung optimiert sind.
-
In
einem zweiten Schritt werden Fenster bzw. Grenzen festgelegt, die
den Sollwertverlauf zeitlich und betragsmäßig eingrenzen. Dabei kann
durch die sehr flexiblen Möglichkeiten
des Verfahrens eine genaue Spezifikation erstellt werden, mit der
die erlaubten Abweichungen vom Sollwertverlauf vorgegeben werden
können.
Durch das Festlegen von Gewichtungsfaktoren kann den einzelnen Fenstern
dabei eine unterschiedliche Bedeutung oder Wichtigkeit bei der Bewertung
der Abweichungen gegeben werden.
-
In
einem dritten Schritt wird der vom System anhand des Sollwertverlaufs
realisierte Istwertverlauf aufgenommen. Dabei findet der aktuell
gültige
Satz von Reglerparametern Anwendung. Sodann wird in einem vierten
Schritt eine Fehlerfunktion bestimmt, die aus dem Istwertverlauf
und den gesetzten Fenstern berechnet wird.
-
Diese
Fehlerfunktion wird in einem fünften
Schritt optimiert, indem nach an sich bekannten Verfahren eine Variation
der Reglerparameter vorgenommen wird und nach jeder Änderung
der Reglerparameter der Istwertverlauf erneut aufgenommen und die
Fehlerfunktion bestimmt wird.
-
Erreicht
die Fehlerfunktion den Wert Null oder eine vorgegebene Grenze, so
wird das Verfahren abgebrochen. Der dann vorliegende Satz von Reglerparametern
kann als optimal für
den vorgegebenen Sollwertverlauf gelten. Dabei ist die Struktur
des zugrundeliegenden Reglers beliebig. Einfachste PI-Regler, können genauso
optimiert werden wie z.B. PID-, PD- oder PIDD-Regler, die auch als Kaskadenregelung
hintereinander angeordnet sein können,
mit oder ohne Störgrößenaufschaltung.
-
Eine
entsprechende Vorrichtung zur Ausführung des beschriebenen Verfahrens
muß also
in der Lage sein, nach der Definition eines Sollwertverlaufs für eine Regelgröße des betrachteten
Systems und entsprechender Fenster bzw. Grenzen für den Istwertverlauf
eine Optimierung der Reglerparameter anhand einer Fehlerfunktion
durchzuführen.
Es bietet sich an, eine solche Vorrichtung in Form einer Optimierungseinrichtung
zu realisieren, die im wesentlichen aus einem geeignet programmierten
Rechner mit Schnittstellen zum zu optimierenden System besteht.
Auf einem Bildschirm kann dabei graphische Unterstützung beim
Definieren des Sollwertverlaufs und der Fenster gegeben werden.
-
Weitere
Vorteile sowie Einzelheiten der vorliegenden Erfindung ergeben sich
aus der nachfolgenden Beschreibung eines Verfahrens und einer Vorrichtung
zur Optimierung der Reglerparameter eines Antriebsystems als bevorzugte
Ausführungsform
anhand der Figuren. Dabei zeigt
-
1 ein
Antriebssystem aus Regler, Drehgeber und Motor,
-
2 ein
Ablaufdiagramm für
das beschriebene Verfahren,
-
3 einen
Sollwertverlauf mit vorgegebenen Fenstern.
-
1 zeigt
ein stark vereinfachtes elektrisches Antriebssystem 1 bestehend
aus einem Regler 2, einem Drehgeber 3 und einem
Motor 4. Ein dem Regler 2 vorgegebener Sollwert
Rsoll für
eine Regelgröße R des
Antriebs systems 1 wird im Regler 2 letztlich in
Ansteuersignale für
den Motor 4 umgesetzt, der sich entsprechend bewegt. Der
Drehgeber 3 erfaßt
die Position des Motors 4 und liefert diese als Istwert
Rist an den Regler 2 zurück. Die Differenz aus Sollwert
Rsoll und Istwert Rist wird im Regler 2 in einem ersten
Zweig mittels proportionaler Verstärkung und in einem zweiten
Zweig unter gleichzeitiger Integration und Verstärkung zu einem Sollwertsignal
für die
Motorgeschwindigkeit umgerechnet. Eine solche einfache Reglerstruktur
ist auch als PI-Regler bekannt. In einem Regler 2 mit Kaskadenstruktur
finden sich mehrere solcher Regelkreise z.B. für Lage, Geschwindigkeit und
Drehmoment (bzw. Motorstrom) hintereinander geschaltet. Ein Istwert
für die Geschwindigkeit
kann etwa aus der zeitlichen Ableitung des Positionssignals Rist
des Drehgebers 3 gewonnen werden, ein Istwert für den Strom
von Stromsensoren in den Zuleitungen zum Motor 4. Im Regler 2 gibt
es also Reglerparameter Kp, Ki wie etwa die beschriebenen Verstärkungsfaktoren
für den
proportionalen und integralen Zweig des Reglers 2. Die
Optimierung dieser Reglerparameter Kp, Ki ist eine wichtige Aufgabe.
Das Verfahren zur Lösung
dieser Aufgabe wird in einer Optimierungseinrichtung 5 ausgeführt, die
einerseits Sollwerte Rsoll vorgeben kann und andererseits Istwerte
Rist entgegennehmen kann. Über
eine Schnittstelle zwischen Optimierungseinrichtung 5 und
Regler 2 können
die Reglerparameter Kp, Ki im Regler 2 modifiziert werden.
-
Wegen
im Antriebssystem 1 existierenden Nichtlinearitäten kann
es einen optimalen Satz Reglerparameter Kp, Ki für alle Anwendungen nicht geben.
Das hier beschriebene Verfahren, das schematisch in 2 mit
den Schritten I – VI
dargestellt ist, geht daher von einem konkreten Anwendungsfall aus.
Dies kann etwa ein Sollwertverlauf Rsoll(t) sein, wie er in 3 dargestellt
ist. Diese sogenannte S-Kurve ist ein typischer Anwendungsfall:
Der Motor 4 soll ab dem Zeitpunkt Ts aus einer Anfangsposition
Rs in eine Endposition Re fahren und dort stehen bleiben. Die Endposition
Re soll dabei möglichst
zum Zeitpunkt T1 erreicht und ab dem Zeitpunkt T2 auch sehr genau
eingehalten werden. Die Zeitspanne zwischen T1 und T2 wird auch
als Einschwingzeit bezeichnet. Die Betrachtung endet zum Zeitpunkt
Te.
-
In
einem Schritt 1 wird der zeitliche Verlauf der Sollwertposition
Rsoll, also der Sollwertverlauf Rsoll(t) vorgegeben. In einem zweiten
Schritt II werden sodann Fenster 10, 11, 12 definiert,
die diesen Sollwertverlauf Rsoll(t), der real nie erreicht werden
kann, eingrenzen. Die Grenzen der Fenster 10, 11, 12 sollten
dabei mindestens so nahe am Sollwertverlauf Rsoll(t) liegen, daß die vorgesehene
Anwendung mit jedem vollständig innerhalb
der Fenster 10, 11, 12 liegenden Istwertverlauf
Rist(t) sicher funktioniert. Es können dabei unterschiedlichste
Fenster 10, 11, 12 eingesetzt werden,
um den geforderten Sollwertverlauf Rsoll(t) möglichst sinnvoll einzugrenzen.
-
So
wird ein erstes Fenster 10 in 3 so gesetzt,
daß es
eine maximale Abweichung relativ zum Sollwertverlauf Rsoll(t) während des
gesamten betrachteten Zeitraumes Ts – Te vorgibt ("tracking"). Zu keinem Zeitpunkt
soll also der Istwert Rist um mehr als einen bestimmten Betrag nach
oben oder nach unten abweichen. Die Abweichung nach oben und unten
muß dabei
nicht notwendigerweise symmetrisch sein.
-
Ein
zweites Fenster 11 begrenzt im vorliegenden Fall einen Überschwinger,
der üblicherweise
etwa zum Zeitpunkt T1 auftritt, nach oben ("overshoot"). Die Obergrenze des zweiten Fensters 11 ist
daher absolut gesetzt und nicht relativ zum Sollwertverlauf Rsoll(t),
die Untergrenze dieses Fensters 11 ist so gesetzt, daß sie keine
Rolle spielt.
-
Ein
drittes Fenster 12 legt fest, mit welcher Genauigkeit die
Endposition Re eingehalten werden soll ("accuracy"). Die Ober- und Untergrenzen sind daher
wieder relativ zum Sollwert Rsoll(t) gesetzt. Da dieses Fenster 12 erst
bei T2 beginnt, begrenzt es indirekt auch die Einschwingzeit des
Bewegungsvorganges ("settling
time").
-
Da
die verschiedenen Fenster 10, 11, 12 je
nach Anwendung unterschiedliche Bedeutung haben werden, kann jedem
Fenster 10, 11, 12 auch ein Gewichtungsfaktor
G zugeordnet werden. So wird im Beispiel der 3 wohl das
dritte Fenster 12 die größte Bedeutung und damit den
höchsten
Gewichtungsfaktor G erhalten, da es letztlich über die genaue Positionierung
am Ende des betrachteten Zeitraumes Ts bis Te entscheidet.
-
Jedes
Fenster 10, 11, 12 kann also z.B. durch
sechs Parameter festgelegt werden: Beginn und Ende des betrachteten
Zeitintervalls, je eine obere und untere Regelgrößengrenze für die Regelgrößenachse,
eine Angabe, ob die Regelgrößengrenzen
absolut oder relativ zum Sollwertverlauf Rsoll(t) zu verstehen sind,
und einen Gewichtungsfaktor G, mit dem dieses Fenster 10, 11, 12 im
Vergleich zu den anderen Fenstern 10, 11, 12 bewertet
werden soll.
-
In
einem Schritt III wird dann der Istwertverlauf Rist(t) des Antriebssystems 1 aufgenommen,
der vom Regler 2 unter Vorgabe des Sollwertverlaufs Rsoll(t)
erzielt wird. Es wird dabei zunächst
von einem nicht optimierten Satz von Reglerparametern Kp, Ki ausgegangen.
Der Istwertverlauf Rist(t) wird daher unter Umständen deutlich vom Sollwertverlauf
Rsoll(t) abweichen und dabei teilweise außerhalb der Fenster 10, 11, 12 liegen.
-
In
einem Schritt IV wird dann eine Fehlerfunktion F berechnet. Dabei
wird nacheinander jedes Fenster 10, 11, 12 betrachtet.
Alle Istwerte Rist außerhalb
des jeweiligen Fensters 10, 11, 12 werden
mit dem Quadrat ihres Abstandes zur nächstliegenden Fenstergrenze
zeitlich aufintegriert. Die so erhaltenen Integralwerte der einzelnen
Fenster 10, 11, 12 werden dann mit dem
Gewichtungsfaktor G des jeweiligen Fensters 10, 11, 12 multipliziert
und zuletzt zu einem Endergebnis aufsummiert.
-
Somit
ist eine Fehlerfunktion F definiert, die sich auch folgendermaßen darstellen
läßt:
-
Die
max() und min() Funktion stellt dabei jeweils sicher, daß nur Istwerte
Rist oberhalb der Obergrenzen bzw. Istwerte Rist unterhalb der Untergrenzen
der Fenster 10, 11, 12 berücksichtigt
werden. Dabei ist zu beachten, daß für Fenster 10, 12,
die relativ zum Sollwertverlauf Rsoll(t) gesetzt sind, die Obergrenzen
und Unergrenzen selbst zeitabhängig
sind, da sie mit festem Abstand zum Sollwertverlauf Rsoll(t) definiert
sind. Für
Fenster 10 mit abso lut gesetzten Grenzen entfällt diese
Zeitabhängigkeit,
die Grenzen sind Konstante.
-
Die
Fehlerfunktion F ergibt also den Wert Null, wenn der Istwertverlauf
Rist(t) vollständig
innerhalb aller definierter Fenster 10, 11, 12 bleibt.
Eine weitere Optimierung der Reglerparameter Kp, Ki durch Minimierung
der Fehlerfunktion F ist dann nicht mehr möglich. Um dennoch eine weitere
Optimierung mit Werten größer Null
für die
Fehlerfunktion F zu ermöglichen,
kann ein Fenster 10, 11, 12 mit dem relativen
Abstand Null zum Sollwertverlauf Rsoll(t) gesetzt werden, so daß jede Abweichung
vom Sollwert Rsoll quadratisch in die Fehlerfunktion F eingeht.
Eine andere Möglichkeit,
Funktionswerte F größer Null
zu erhalten wäre,
die Fenster 10, 11, 12 näher an den
Sollwertverlauf Rsoll(t) zu setzten als es die tatsächliche
Anwendung erfordert.
-
In
einem Schritt V wird nun versucht, durch eine schrittweise Variation
im Satz der Reglerparameter Kp, Ki eine Verbesserung des Regelkreises 2 zu
erzielen. Gängige
Algorithmen benötigen
dazu ein Kriterium, mit dessen Hilfe über den Erfolg oder Mißerfolg
einer Variation entschieden werden kann. Hierzu dient hier die Fehlerfunktion
F. Es ist daher notwendig, die Schritte III und IV nach jeder Variation
im Satz der Reglerparameter Kp, Ki zu wiederholen und so den neuen
Istwertverlauf Rist(t) (im Schritt III) und die Fehlerfunktion (im Schritt
IV) zu bestimmen. Als Beispiel für
solch eine schrittweise Annäherung
an ein Optimum sei etwa der Algorithmus nach Hooke-Jeeves (R. Hooke
und T. A. Jeeves, "Direct
search solution of numerical and statistical problems", J. Assoc. Comput.
Math. 8 (1961), 212 – 229)
erwähnt.
Allen geeigneten Algorithmen ist gemeinsam, daß sie einen Satz von Parametern
P (hier der Reglerparameter Kp, Ki) variieren, um eine Zielfunktion f(P)
(hier die Fehlerfunktion F) zu optimieren.
-
Es
sollte für
die Optimierung verschiedene Abbruchbedingungen geben, die in einem
Schritt VI abgeprüft
werden: Der Algorithmus sollte abbrechen, wenn ein vorgegebenes
Ziel erreicht wurde, etwa wenn die Fehlerfunktion F den Wert Null
annimmt und damit der Istwertverlauf Rist(t) innerhalb aller Fenster 10, 11, 12 liegt.
Der Algorithmus sollte auch dann abbrechen, wenn zu viele Iterationsschritte
durchgeführt
wurden, ohne daß das
vorgegebene Ziel erreicht wurde, bzw. wenn zu viele Iterationsschritte
zu keiner Verbesserung in der Fehlerfunktion F geführt haben.
In den beiden letzten Fällen
ist ein Erreichen des gesteckten Zieles unwahrscheinlich, es sollte
mit einem modifizierten Satz an Fenstern 10, 11, 12 gearbeitet
werden.
-
Es
kann nützlich
sein, zur Lösung
der Optimierungsaufgabe zwei Sätze
von Fenstern 10, 11, 12 zu definieren,
die unterschiedlich nahe an den Sollwertverlauf Rsoll(t) gesetzt
sind. Ein erster Satz von Fenstern 10, 11, 12 kann
dabei das eigentliche Ziel der Optimierung definieren und wie oben
beschrieben ein Abbruchkriterium liefern. Ein zweiter, enger gesetzter
Satz von Fenstern 10, 11, 12 kann die
Zielfunktion f(P) (bzw. Fehlerfunktion F) für die eigentliche Optimierung
liefern. Kleine Änderungen
von Reglerparametern Kp, Ki wirken sich dann stärker aus, wenn der Satz von
Reglerparametern Kp, Ki bereits nahe am Abbruchkriterium liegt.
Für einfachere
Optimierungsprobleme kann es aber aus Zeitgründen angebracht sein, die beiden
Sätze von
Fenstern 10, 11, 12 identisch zu definieren.
-
Ein
Antrieb 1 mit einer aufwendigen Struktur des Reglers 2 enthält sehr
viele Reglerparameter Kp, Ki. Eine geeignete Strategie zur Optimierung
dieser Reglerparameter Kp, Ki besteht dann darin, den Regler 2 in mehreren
Schritten zu optimieren. Dabei wird das oben beschriebene Verfahren
jeweils nur für
wenige der Reglerparameter Kp, Ki angewandt. In einem Regler 2 mit
Kaskadenstruktur empfiehlt es sich, zunächst den innersten Regler (etwa
den Stromregler) und dann schrittweise die weiter außen liegenden
Regler (z. B. Geschwindigkeitsregler, Lageregler) zu optimieren.
Auch die Reglerparameter Kp, Ki sogenannter "feed-forward" Strecken können mit dem beschriebenen
Verfahren optimiert werden.
-
Als
Regelgröße R für den Sollwertverlauf
Rsoll(t) kann jede einer Erfassung zugängliche Größe des Antriebes 1 dienen.
Das vorgeschlagene Verfahren zum Optimieren der Reglerparameter
Kp, Ki ist also nicht von der Art der Reglerstruktur abhängig und
ist somit universell einsetzbar. Die Anwendung des Verfahrens ist daher
auch nicht beschränkt
auf Regler 2 für
Antriebe 1, sondern eignet sich für Systeme mit Reglern 2 aller Art.
-
Eine
Optimierungseinrichtung 5 zur Durchführung des beschriebenen Verfahrens
kann als Software oder Hardware direkt in der Elektronik eines Antriebssystems 1 untergebracht
werden, oder in einem über
eine Schnittstelle mit dem Antriebsystem 1 verbundenen
Rechner. Zur Erleichterung der Eingabe vom Sollwertverlauf Rsoll(t)
und der Fenster 10, 11, 12 sollte auf
einem Bildschirm 6 der Optimierungseinrichtung 5 eine
entsprechende graphische Anzeige möglich sein. Auch der Istwertverlauf
Rist(t) sollte darstellbar sein. Aufschlußreich ist eine Darstellung
der Abweichung zwischen Sollwertverlauf Rsoll(t) und Istwertverlauf
Rist(t) mit einem entsprechend angepaßten Maßstab. Abweichungen, die in
einer Darstellung zusammen mit Sollwertverlauf Rsoll(t) und Istwertverlauf
Rist(t) kaum zu erkennen wären,
sind so gut erkennbar. Interessante Bereiche der Darstellung auf
dem Bildschirm 6 sollten vergrößerbar sein, um den jeweiligen
Verlauf genauer erkennen zu können.
-
In
einer Numerischen Steuerung einer Werkzeugmaschine ist bereits ein
Bildschirm 6 vorhanden, so daß die Optimierungseinrichtung 5 vollständig in
Software für
die Numerischen Steuerung realisiert werden kann.