-
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.
-
Im Aufsatz „Flight Control Law Synthesis using Neural Network Theory” des Naval Air Development Center, Warminster/PA, 22.04.1991, wird der Einsatz eines neuronalen Netzwerkes zur Optimierung der Reglerparameter eines Flugreglers diskutiert.
-
In der
DE 10213533 A1 wird beschrieben, wie ein Reglerparameter im laufenden Betrieb einer technischen Anlage so eingestellt werden kann, dass am Istwert einer Regelgröße innerhalb eines Toleranzbandes bleibt,
-
In der
EP 1 180 733 A1 wird 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 zuletzt 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 Vorrichtung 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 Antriebssystems 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 I 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() Funktionstellt 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 absolut 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.