1 Einleitung und Problemstellung

Industrieroboter sind ein essentieller Bestandteil in modernen Produktionsstraßen für unterschiedliche Waren und Produkte und zur mechanischen Bearbeitung von Werkstücken. Die Aufgabenfelder umfassen bspw. Schweißen, Kleben, Fräsen, Lackieren, Pick-And-Place oder Palettieren. Infolge der flexiblen Einsatzmöglichkeiten, hohen Zuverlässigkeit bzw. Geschwindigkeit und Erleichterung der Arbeit sind Industrieroboter daher unumgänglich für moderne und vernetzte industrielle Unternehmen. Je nach Aufgabe des Roboters steigen aber infolge von immer komplexeren Waren und Bearbeitungsprozessen von Werkstücken die Anforderungen im Hinblick auf Prozessgenauigkeit und -geschwindigkeit. So müssen für eine ökologisch nachhaltige und effiziente Produktion bereits ab dem ersten Werkstück alle Qualitätsanforderungen erfüllt werden. Die Teilkomponenten eines Industrieroboters (Sensorik, Servomotoren, Getriebe, digitale Regler) müssen also den genannten Anforderungen genügen. Speziell die eingesetzten Regler müssen hochdynamisch auf Laständerungen des Roboters reagieren und entsprechende Stellgrößen berechnen [1]. Adaptive, modellbasierte Regler eröffnen die Möglichkeit – je nach Applikation – situativ auf geänderte Umgebungsbedingungen des Roboters reagieren zu können [2]. Inspiriert durch die aktuellen Forschungsarbeiten im Bereich adaptiver Regler für Industrieroboter, wird in diesem Beitrag eine robuste, datenbasierte, modellbasierte prädiktive Regelung (MPR) entwickelt. Diese soll für unterschiedlichen Lasten am Endeffektor eine gleichbleibend hohe Prozessgenauigkeit gewährleisten können. Alle Schritte in der Entwicklung der Regelung (Training, Validierung und Integration des datengetriebenen Modells, Architekturentwicklung, Auswahl des Optimierungsalgorithmus und Sensitivitätsanalyse) werden diskutiert. Als Schätzalgorithmus für die Systemdynamik werden hierbei so genannte lokale, lineare Modellbäume (Engl.: Local-Linear-Model-Trees (LoLiMot)) eingesetzt. Diese Klasse eines datenbasierten Modells kann robust nichtlineare und parametervariante dynamische Systeme schätzen [3]. Die Architektur der implementierten Regelung lehnt sich an eine MPR [4] an. Kritische Einflussparameter (z. B. Abtastzeit des Reglers, Anzahl der Aufrufe des Optimierers) auf die Güte der Regelung werden ebenfalls diskutiert. Letztendlich wird der Algorithmus an einem einachsigen Robotergelenk experimentell validiert und mit einer konventionellen P/PI Kaskadenregelung verglichen.

2 Stand der Technik und Forschung

Ein sehr weit verbreiteter und etablierter Regelungsalgorithmus für industrielle Roboterarme, ist eine kaskadierte P/PI-Regelung mit Geschwindigkeitsvorsteuerung [5]. Hierbei werden digitale PID-Regler für die einzelnen Regelkreise (Geschwindigkeit und Position der Achse) eingesetzt. Beiden Reglern ist eine Momenten- bzw. Stromregelung der Servomotoren unterlagert, d. h. es handelt sich hierbei um einen Regelkreis mit drei Schleifen pro Gelenkachse des Roboters. Die Auslegung der Regelparameter für die Gelenke erfolgt hierbei anhand der kinematischen Beschreibung des Roboters oder experimentell durch die Identifikation des Roboters [6, 7]. Hierfür muss also zunächst die direkte und inverse Kinematik anhand der geometrischen Parameter und definierten Koordinatensysteme berechnet werden. Ein entscheidender Nachteil dieses Ansatzes ist, dass plötzliche Änderungen in der Kinematik (z. B. die Aufnahme eines Werkstücks) nicht oder nur unzureichend über die Regler kompensiert werden können [8]. Dieses Verhalten der Regler führt daher zwangsläufig zu einer verschlechterten Prozessgenauigkeit. Ein weiterer Nachteil ist die Komplexität in der Auslegung der Regler. So muss erst eine hinreichend genaue kinematische Beschreibung des Roboters erfolgen, um die einzelnen Regler zu parametrisieren. Ist diese nicht vorhanden, so kann der Roboter im Betrieb instabil werden. Um aber für Roboter mit ständig wechselnden mechanischen Lasten ein robustes Systemverhalten zu gewährleisten, werden verstärkt adaptive Regelungsalgorithmen untersucht und experimentell validiert [2, 6]. Dieser Typ Regelung kann situativ und abhängig von der zugewiesenen Aufgabe optimalen Stellgrößen für die Servomotoren berechnen. Hierbei wurden verschiedene Ansätze (z. B. Fuzzy-Regelung, situativ schaltende oder adaptive PID-Regler, modellbasierte Regler) für roboterspezifische Applikationen entwickelt [9,10,11]. Alle bisherigen Ansätze benötigen hierfür numerische Modelle zur Schätzung der Systemdynamik. Die hinterlegten Modelle, sind in der Regel physikalische Modelle des Roboters, welche die Kinematik beschreiben [7]. Weitere eingesetzte Modelltypen sind künstliche neuronale Netze (KNN), zentrale Mustergeneratoren oder Beobachter auf Basis von Kalman-Filtern [11,12,13,14]. Letztere bieten den Vorteil, dass keine analytische Systembeschreibung vorliegen muss, sie schätzen anhand von Datensätzen offline oder online die Systemdynamik. Je nach Modellklasse können so unterschiedliche Klassen von dynamischen Systemen identifiziert und geschätzt werden [15]. Des Weiteren können diese Modelle online lernen und so auf geänderte Randbedingungen, Parameter des Systems oder Umwelteinflüsse reagieren [16].

Der Großteil der bisherigen Beiträge im Bereich der adaptiven Regelung von Industrierobotern fokussiert sich auf modellbasierte Regler mit beschreibender Kinematik des Roboters oder Kalman Filter als Beobachter. In diesem Artikel wird ein datenbasierter, adaptiver Regler auf Basis von LoLiMot Modellen für einen Roboter mit wechselnden Lastmassen untersucht. Die Auslegung der Regelung erfolgt zunächst anhand einer Simulation für einen sechsachsigen Roboter. Hierbei werden Kriterien an die Trainingsdaten (Anregungssignale, Systemparameter, Konsistenz, Einzigartigkeit etc.) für die LoLiMot Modelle diskutiert. Ebenso wird die Auslegung des Reglers (Optimierer, Begrenzungen etc.) näher betrachtet. Schlussendlich wird der Regler an einem einachsigen Gelenkprüfstand experimentell validiert und mit einer P/PI Kaskadenregelung verglichen. Hierbei wird die Masse am Endeffektor asymmetrisch variiert um die Vorteile einer datenbasierten Regelung aufzuzeigen.

3 Methodik und Diskussion

3.1 Simulationsumgebung zur Entwicklung eines datenbasierten, adaptiven Reglers für Industrieroboter

Als Anwendungsszenario wird im Folgenden die Positionsregelung für einen Knickarmroboter vom Typ ABB IRB140 mit sechs Gelenkachsen ausgelegt. Dieser hat laut Spezifikation eine maximale Nutzlast von 6 kg am Endeffektor und soll als exemplarische Aufgabe verschiedene Werkstücke (0,5–5 kg) transportieren. Durch die vergleichsweise hohe Variation der Masse am Endeffektor sollen die Parametervariationen der Kinematik und die nichtlineare Dynamik des Industrieroboters abgebildet werden. Zunächst wird für die Synthese der Regelung eine Co-Simulation mit der in Abb. 1 (links) aufgezeigten Simulationsarchitektur implementiert. Der digitale Regler, die elektrischen Antriebe sowie die datenbasierten Schätzalgorithmen werden in der Systemsimulation abgebildet. Über eine Mehr-Körper-Simulation (MKS) wird die Kinematik des Industrieroboters implementiert. Die Masse am Endeffektor kann hierbei entsprechend variiert werden. Alle hierfür notwendigen CAD-Daten des Roboters werden vom Hersteller online zur Verfügung gestellt. Eingangsvektor für die Systemsimulation sind die Gelenkwinkel qi der sechs Achsen des Roboters. Ausgangsvektor sind die jeweiligen Drehmomente Ti der Servomotoren. Diese werden dann entsprechend in der MKS verarbeitet und führen zu entsprechenden Änderungen der Gelenkwinkel qi und -geschwindigkeiten \(\dot{q}_{\text{i}}\). Für die Servomotoren wird eine vorab parametrisierte Stromregelung angenommen und die Dynamik kann als proportionale Verzögerungsstrecke 1. Ordnung genähert werden. Beide Simulationen werden über einen gemeinsamen Taktgeber synchronisiert, sodass die Berechnungsschritte und der Austausch von Signalen angepasst sind. Dies ist dadurch begründet, dass unterschiedliche Lösungsalgorithmen mit fester und variabler Schrittweiter für die Simulationen verwendet werden.

Abb. 1
figure 1

Simulationsarchitektur und Signalfluss der Co-Simulation zur Synthese der MPR mit linearen, lokalen Modellnetzen für einen Knickarmroboter vom Typ ABB IRB140 (links) und Architektur des MPR Reglers für die Positionsregelung des Roboters (rechts). (Nach [4])

Die Architektur des digitalen Reglers entspricht einer MPR [4] (vgl. Abb. 1 rechts), wobei die Modellintegration, der Optimierer sowie das Referenzmodell für den vorgestellten Anwendungsfall weiterentwickelt bzw. angepasst sind. In der konventionellen MPR werden in der Regel lineare Modelle (z. B. Zustandsraumdarstellung) zur Schätzung der Systemgrößen verwendet. Dieser Beitrag fokussiert explizit datenbasierte Modelle als Schätzer. Alle Teilschritte im Entwurf der Regelung (Training und Validierung der datenbasierten Schätzalgorithmen, Auswahl des Optimierers etc.) werden im Folgenden diskutiert.

3.2 Training von datenbasierten Schätzalgorithmen und Entwurf eines modellprädiktiven Reglers

Im ersten Auslegungsschritt werden die Schätzer trainiert und validiert. Für das Training werden synthetische Trainingsdaten mit der Co-Simulation aus Abb. 1 generiert. Als Schätzalgorithmus für die aktuelle Pose werden LoLiMot Modelle für jede einzelne Gelenkachse verwendet. Die allgemeine Struktur für ein LoLiMot Modell kann Abb. 2 entnommen werden. Jedes einzelne Neuron dieser Netzklasse beinhaltet ein lokales, lineares Modell (LLM) mit Gültigkeitsfunktion Φi. Der Ausgang \(\hat{y}\) eines Netzes berechnet sich über die mit \(\underline{w}\) gewichtete Superposition der Ausgänge der einzelnen Neuronen in Abhängigkeit der jeweiligen Gültigkeitsfunktionen Φi aller Neuronen. Vereinfacht kann Φi somit als Arbeitspunkt des Schätzmodells aufgefasst werden [12]. Die Signalvektoren \(\underline{x}\) und \(\underline{z}\) beschreiben die Eingangs- und Parametersignale des zu identifizierenden dynamischen Systems [12, 17]. Für die geschätzte Systemgröße des LoLiMot mit N Neuronen und Signalvektoren der Länge nx bzw. nz folgt somit:

$$\hat{y}={\sum }_{\mathrm{i}=1}^{N}\left(w_{\text{i},0}+w_{\text{i},1}x_{1}+\ldots +w_{\text{i},\mathrm{nx}}x_{n,x}\right)\Phi _{\text{i}}\left(\underline{z}\right)$$
(1)
Abb. 2
figure 2

Aufbau eines LoLiMot Modells mit N Neuronen, dem Eingangsvektor \(\underline{x}\), dem Parametervektor \(\underline{z}\) und Gültigkeitsfunktionen Φi [12]

Wobei der Gewichtungsvektor \(\underline{w}\) ein linearer Parameter des LoLiMot Netzes ist und vor dem Training gewählt wird. Die Berechnung der Schätzung, der Aufbau eines LoLiMot Modells und die theoretischen Grundlagen und Hintergründe zur nichtlinearen Systemidentifikation wurden von Nelles et al. [12] bereits umfassend beschrieben.

Entscheidend für die Qualität der Prognose des LoLiMot Modells, sind die Trainingsdaten. Im Idealfall wird über die Trainingsdaten der gesamte mögliche Parameter- und Frequenzbereich des Systems abgedeckt. Für das hier diskutierte Anwendungsszenario (Transport von Werkstücken) muss also ein Training für jeweils verschiedene Massen ml am Endeffektor vorgenommen werden, über einen möglichst vollständigen Winkelbereich aller Gelenke des Roboters. Die Variation der Masse und die Gelenkwinkel, welche bei einem Durchlauf nicht trainiert werden stellen zeitvariante Parameter für das Modellnetz dar. Solche zeitvarianten Parameter werden in der Regel über Dreiecks- oder Sinussignale trainiert. Für das Training von Gelenk i wird über den Motor ein Drehmoment gestellt. Hierfür eignet sich eine amplitudenmodulierte Pseudo-Randomisierte-BinärsequenzFootnote 1 (PRBS) besonders gut. Alle übrigen Gelenkachsen des Roboters werden mit einer Sollvorgabe zur Winkelgeschwindigkeit angesteuert. Andere Anregungssignale (z. B. Dreieck oder Sprung) führten zu einer schlechteren Netz- und Prognosequalität und eigenen sich somit nicht für diese Anwendung. Die Trainingsdaten für jede Gelenkachse sind in zwei einzelne Segmente unterteilt. Für Gelenkachse 1 sind die Trainingsdaten bspw. wie folgt aufgegliedert:

Segment 1

Gelenkachse 1 wird mit einem amplitudenmodulierten PRBS Drehmomentsignal angeregt und alle übrigen Gelenkachsen (2–6) werden mit einer Geschwindigkeitsvorgabe angeregt. Diese sind für jede Achse zeitlich versetzte, einzelne Sinuswellen. Hierdurch wird der Einfluss von jeder einzelnen Gelenkachse auf Gelenkachse 1 abgebildet. Die Gelenke 2–6 werden hierbei im maximal möglichen Winkelbereich angesteuert. Die Masse wird am Endeffektor im Bereich 0,5–5 kg über die Zeit variiert.

Segment 2

Gelenkachse 1 wird ebenfalls, wie in Segment 1, mit einem amplitudenmodulierten PRBS Drehmomentsignal angeregt. Die übrigen Gelenkachsen (2–6) werden mit sinusförmigen Profilen gleichzeitig angesteuert, um so die Wechselwirkungen der jeweiligen Gelenkachsen untereinander abzubilden. Hierbei wird die Anregungsfrequenz der Sinuswelle von Achse 2 bis 6 für jede Achse verdoppelt. Die Masse am Endeffektor wird ebenfalls im Bereich 0,5–5 kg über die Zeit variiert.

Die beiden Datensegmente werden dann zu einem Segment für das Training des Netzes aneinandergereiht. Dies ist möglich, da alle Gelenke am Ende von Segment 1 und 2 jeweils wieder in der Ursprungsposition des Roboters sind, mit Ausnahme des Trainingsgelenks. Die Sprünge im Verlauf der Trainingsdaten an der Lage des Trainingsgelenks haben sich beim Training mit unterschiedlichen Gelenken als unproblematisch erwiesen. Um zusätzlich die Effekte von unterschiedlichen Massen am Endeffektor abzubilden, wird die Lastmasse ml im Bereich von 0,5–5 kg treppenförmig über die Zeit variiert (vgl. Abb. 3). Ein Datensatz bildet somit alle Effekte (Massenträgheiten am Endeffektor, Wechselwirkungen der Gelenke) ab. Wie in Abb. 3 zu erkennen ist, wird die Masse am Endeffektor nicht kontinuierlich variiert. Aufgrund der guten Interpolationsfähigkeit des LoLiMot Algorithmus ist die eher grobe Auflösung der Massenvariation aber ausreichend, um robuste Prognosen zu erzielen. Des Weiteren sind die geforderten Winkel für Segment 1 und 2 so gewählt, dass alle möglichen Posen des Roboters abgedeckt sind. Der LoLiMot Algorithmus erhält somit Information über alle mögliche Zustände und Gravitationskräfte des Roboters.

Abb. 3
figure 3

Aufbau und Segmentierung der Daten für das Training des LoLiMot Algorithmus zur Schätzung der Gelenkwinkel des Roboters für eine Gelenkachse

Neben den offline Trainingsdaten, benötigt der LoLiMot Algorithmus für die online Prognose historische Sensordaten der Systemzustände (Gelenkwinkel) und Stellgrößen (Drehmomente). Darüber hinaus muss eine Abschätzung für zukünftige Gelenkwinkel des Roboters θi,p erfolgen, da diese ebenfalls vom Schätzalgorithmus benötigt werden. Für den LoLiMot Algorithmus erfolgt dies über den Gradienten der vergangen zwei Messwerte \(\theta _{-1,\text{m}},\theta _{0,\text{m}}\), den aktuellen Messwert θ1,m und Faktor k, um eine Schätzung der zukünftigen Gelenkwinkel des Roboters zu erzeugen. Der Faktor k beschreibt hierbei den diskreten Abstand zwischen den letzten Messungen bzw. Abtastwerten der Gelenkwinkel des Roboters, somit berechnet sich die Projektion des i‑ten Gelenkwinkels zu:

$$\theta _{\text{i,p}}=\theta _{1,\text{m}}+k\cdot \Updelta \theta =\theta _{1,\text{m}}+k(\theta _{0,\text{m}}-\theta _{-1,\text{m}}).$$
(2)

Bei ausreichend kleiner Abtastzeit des Reglers und nicht zu hoher Systemdynamik, ist der Einfluss des Projektionsfehlers aus Gl. 2 vernachlässigbar klein und kann durch die MPR kompensiert werden. An Knickstellen im Referenzprofil, sowie am Anfang der Regelung kann es zu höheren Abweichungen kommen, welche zuerst kompensiert werden müssen. Für die Auslegung gilt es jedoch abzuwägen und eine sinnvolle Abschätzung zu treffen, da sonst zu hohe Stellgrößen berechnet werden oder Diskontinuitäten in der Schätzung auftreten.

Als zweiter Schritt wird der Regler der MPR parametrisiert. Hierzu zählen die Integration eines Referenzmodells und die Auswahl eines Optimierungsalgorithmus. Das Referenzmodell kann als physikalisches Modell oder Datensatz bzw. Array hinterlegt werden. Wobei die zweite Variante erheblich Berechnungszeit einspart und vergleichsweise einfach zu implementieren ist. Im Folgenden ist das Referenzmodell als Übertragungsfunktion hinterlegt, welches die geforderten Ausgangsgrößen yi,ref für alle Gelenke berechnet. Mit den geschätzten Systemzuständen \(\hat{y}_{i}\) und der gewünschten Dynamik yi,ref werden dann über den Optimierer alle Steuergrößen ui für die Servomotoren berechnet. Hierfür wird zunächst die euklidische Norm zwischen yi,ref und \(\hat{y}_{i}\) innerhalb des Prädiktionshorizonts Np gebildet.

$$\left|\left|y_{i,\text{norm}}\right|\right|=\sqrt{{\sum }_{i=1}^{N_{p}}\left|\left|y_{i,\mathrm{ref}}-\hat{y}_{i}\right|\right|}$$
(3)

Der Prädiktionshorizont beschreibt die Anzahl an Abtastschritten, für welche das LoLiMot-Modell die Ausgangsgröße schätzt. Für den Prädiktionshorizont muss gelten, dass \(N_{p}\geq N_{\mathrm{sys}}\), wobei Nsys die Ordnung des zu regelnden Systems beschreibt. Des Weiteren gilt, dass der Regler nur einen begrenzten Stellhorizont (\(N_{c}\leq N_{p}\)) berechnen kann [17]. Über die Norm für jedes Gelenk i wird die Kostenfunktion somit über den Prädiktionshorizont Np

$$J\left(y_{i}\left(0\right),u_{i}\right)={\sum }_{i=0}^{N_{p}}\left|\left|y_{i,\mathrm{ref}}-\hat{y}_{i}\right|\right|+r\cdot {\sum }_{i=0}^{N_{p}}\left|\left|u_{i}\right|\right|$$
(4)

definiert. Für die Optimierungsvorschrift folgt mit der Kostenfunktion J somit

$$u_{i}=argmin_{u_{i}}J\left(y_{i}\left(0\right),u_{i}\right)$$
(5)

Die Kostenfunktion J muss über den Optimierer also minimiert werden, sodass bei berechneten Stellgrößen ui die Norm zwischen geforderter Systemdynamik yi,ref und geschätzter Systemantwort \(\hat{y}_{i}\) minimal wird. Für den Vorhersagehorizont Np wird dem Roboter so die gewünschte Systemdynamik aufgeprägt. Die Stellgrößen ui werden noch über den Faktor r gewichtet. In Gl. 5 können zusätzlich Begrenzungen oder Strafterme für die Stellgrößen ui ergänzt werden. Für den Roboter können zu große Sprünge der Stellgrößen zu instabilem Verhalten führen, daher werden diese betragsmäßig \(\left| u_{i}\right| \leq u_{i,\max }\) begrenzt. Der verwendete Algorithmus zur Berechnung der optimalen Stellgrößen ui basiert auf dem Verfahren des Goldenen Schnitts und der parabolischen Interpolation [18, 19].

3.3 Simulative Verifikation der Regelung an einem sechsachsigen Industrieroboter

Wie bereits kurz erläutert, ist die Testapplikation für den Roboter der Transport von verschiedenen Werkstücken. Um die entwickelte MPR mit LoLiMot Modellen zu validieren, muss der Roboter in der Simulationsumgebung je ein Gewicht von 0,5 kg und 5 kg transportieren. Das Referenzprofil wurde dabei so implementiert, dass jede Gelenkachse angesprochen wird. Alle möglichen Wechselwirkungen auf die Güte der adaptiven Regelung können so abgebildet bzw. analysiert werden. Abb. 4 zeigt die Ergebnisse der MPR (grün, gestrichelt) im Vergleich zu einer konventionellen Kaskadenregelung (rot, gestrichelt) für die Gelenkachsen 5 und 6 des ABB IRB 140, anhand eines Referenzprofils (schwarz, durchgezogen). Für ein Lastgewicht von 0,5 kg am Endeffektor sind beide Regler ähnlich performant und es treten nur geringe Winkelfehler zwischen Referenzprofil und Gelenkwinkel auf. Wird das Lastgewicht jedoch auf 5 kg geändert, so zeigt sich die MPR als äußert robust. Trotz geänderter Systemdynamik (Kinematik des Roboters) kann eine gleich hohe Güte erzielt werden. Im Vergleich hierzu neigt die Kaskadenregelung besonders bei Gelenkachse 5 zur Instabilität und Schwingungen treten auf. Dieser Effekt ist speziell für Gelenkachse 5 sichtbar, da der Einfluss der Massenträgheit und Erdbeschleunigung auf Achse 5 am höchsten sind.

Abb. 4
figure 4

Vergleich zwischen Referenzprofil, Kaskadenregelung und der entwickelten MPR mit LoLiMot für einen Roboter vom Typ ABB IRB140 für die Gelenkachsen 5 und 6 mit einer mechanischen Last von 0,5 kg (a,c) und mit einer mechanischen Last von 5 kg (b,d) am Endeffektor

Ein essentieller Parameter in der Auslegung für die MPR mit LoLiMot ist die Anzahl der Modelle im Modellnetz. Je nach Anzahl der lokalen Submodelle (LLM) des Modells und Anzahl der historischen Messwerte steigt der Berechnungsaufwand und der Speicherbedarf für die online Prognose erheblich an. Dies limitiert wiederum die maximal mögliche Abtastzeit des Reglers. Darüber hinaus kann bei zu hoher Modellanzahl das Modellnetz zu einer sogenannten Überanpassung (Engl.: Overfitting) neigen und EffekteFootnote 2 abbilden, die nicht dem System zugeordnet werden können. Es empfiehlt sich daher sowohl die Anzahl der Submodelle als auch die Anzahl der historischen Messwerte zu begrenzen. Zur Bestimmung der Modellanzahl (LLMs) und Anzahl der benötigen Messwerte existiert eine Vielzahl an modellbasierten und datengetrieben Verfahren zur Bestimmung der Ordnung [20,21,22]. Für LoLiMot Netze im diskutierten Anwendungsszenario eignen sich die Berechnung der Lipschitz-Nummer und das Verfahren des False-Nearest-Neighbours besonders gut.

Ein weiterer Einflussfaktor auf die Güte der Regelung ist die Anzahl der Funktionsaufrufe des Optimierungsalgorithmus, da für jeden Abtastzeitpunkt die optimalen Stellgrößen für die Gelenkachsen berechnet werden müssen. Je nach Abtastzeit des Reglers muss die Anzahl der Funktionsaufrufe begrenzt werden, um die Echtzeitfähigkeit zu gewährleisten.

3.4 Experimentelle Verifikation der Regelung an einem einachsigen Gelenkprüfstand

Im letzten Schritt soll die MPR mit LoLiMot an einem einachsigen Gelenkprüfstand experimentell validiert werden. Der Prüfstand zur Validierung der MPR mit LoLiMot kann Abb. 5 entnommen werden. Für die Gelenkachse kann die Masse durch Montage von Gewichtsplatten auf beiden Seiten asymmetrisch variiert werden. Die Ansteuerung des Servomotors und das Einlesen der Sensordaten erfolgt über eine digitale/analoge Signalschnittstelle. Der Regler und die LoLiMot Modelle sind auf einer eigenen Recheninstanz implementiert, d. h. die Signalschnittstelle liest und schreibt nur die Sensor- und Steuersignale.

Abb. 5
figure 5

Prüfaufbau des einachsigen Robotergelenks mit unsymmetrischer Massenvariation am Endeffektor zur experimentellen Validierung der entwickelten MPR mit LoLiMot Schätzmodellen

Das Training für die LoLiMot Modelle erfolgt analog zum Schema der Daten aus Abb. 3, d. h. die Gelenkachse wird mit einem Drehmoment angeregt und die Masse für einzelne Sequenzen an den Montagepunkten asymmetrisch variiert. Neben den Gelenkwinkeln erhält das LoLiMot Modell also auch Informationen über die Masse und Verteilung der Masse am Endeffektor als Parameter. Aufgrund der hohen Dynamik im Ansprechverhalten des Servomotors für das Gelenk muss die Pulsdauer zwischen einzelnen Signalwerten des Drehmoments auf 1 s geändert werden. Die maximalen Stellgrößen für den digitalen Regler werden zusätzlich auf 20 % des möglichen Stellbereichs begrenzt und im Optimierungsalgorithmus hinterlegt (siehe Gl. 4).

Zu Validierung des Reglers wird ein Referenzprofil für die Gelenkachse vorgeben. Das Profil soll zunächst ohne Masse und anschließend mit einer unsymmetrisch montierten Lastmasse von ca. 2 kg abgefahren werden. Hierbei soll die Gelenkachse zunächst aus der Nullposition auf einen Winkel von +81° fahren und anschließend rampenförmig mit ±9° um 90° verfahren. Abb. 6 zeigt das Referenzprofil (schwarz), das Sensorsignal der Kaskadenregelung (rot, gestrichelt), das Sensorsignal der MPR mit LoLiMot (grün, gestrichelt) und die berechneten Stellgrößen der Regler für den unbelasteten Fall. Der Vergleich der beiden Regler zeigt, dass die MPR mit LoLiMot dynamischer ist und die geforderten Sollwinkel schneller erreicht als die Kaskadenregelung. Die Stellgrößen der MPR mit LoLiMot sind kleiner oder ähnlich groß wie die Stellgrößen der Kaskadenregelung und die Begrenzung von 20 % des möglichen Stellbereichs wird ebenfalls eingehalten. Neben einer höheren Dynamik der Regelung wird also auch teilweise weniger Leistung für die Ansteuerung benötigt und so die Effizienz gesteigert.

Abb. 6
figure 6

Vergleich der Regelleistung und zugehörigen Stellgrößen zwischen Kaskadenregelung und MPR mit LoLiMot ohne mechanische Last am Endeffektor der Gelenkachse

In Abb. 7 sind das Referenzprofil (schwarz), das Sensorsignal der Kaskadenregelung (rot, gestrichelt), das Sensorsignal der MPR mit LoLiMot (grün, gestrichelt) und die zugehörigen Stellgrößen für eine Belastung von ca. 2 kg am Endeffektor dargestellt. Trotz geänderter Systemdynamik des Roboters erweist sich die MPR mit LoLiMot als äußert robust und erzielt eine gleichbleibend hohe Regelgüte. Die Stellgrößen der MPR sind ebenfalls in einer ähnlichen Größenordnung für den belasteten Fall und die Effizienz bleibt gleich. Auch für den belasteten Fall ist die Kaskadenregelung vergleichsweise träge und kann die geforderten Sollwinkel nicht erreichen.

Abb. 7
figure 7

Vergleich der Regelleistung und zugehörigen Stellgrößen zwischen Kaskadenregelung und MPR mit LoLiMot mit einer zusätzlichen unsymmetrischen mechanischen Last von 1 kg am Endeffektor der Gelenkachse

4 Zusammenfassung

Im Rahmen dieses Artikels wurde ein datenbasiertes, adaptives Regelungskonzept für mehrachsige Industrieroboter untersucht und an einem einachsigen Prüfaufbau experimentell validiert. Für die Entwicklung und Parametrisierung des adaptiven Reglers wurde zunächst eine Simulation bestehend aus der Kinematik des Roboters, den Servomotoren, Reglern und Sensorik vorgestellt. Davon wurden die Anforderungen an die datenbasierten Schätzer (Qualität der Trainingsdaten, Ordnung des Modells, Anregungssignal etc.) abgeleitet. Des Weiteren wurden kritische Einflussparameter auf die Stabilität und Güte der Regelung identifiziert und analysiert. Im direkten Vergleich zu einer Kaskadenregelung zeigte sich die datenbasierte, adaptive Regelung am einachsigen Prüfaufbau dynamischer und robust gegenüber geänderten Randbedingungen oder Systemparametern des Roboters. Selbst bei wechselnder Last wurde eine gleich hohe Regelleistung erzielt. Des Weiteren liegt die benötigte Leistung in einer ähnlichen Größenordnung zur Kaskadenregelung, d. h. bei höherer Regelgüte wird mit dem vorgestellten Regler dieselbe Leistung benötigt. Die Haupterkenntnisse dieses Artikels lassen sich wie folgt zusammenfassen

  • Über die Trainingsdaten muss möglichst der komplette Parameterbereich des Roboters (Last am Endeffektor) abgebildet werden. Je nach Parameterbereich müssen die Trainingsdaten hierfür entsprechend generiert werden.

  • Sprünge der Lastmasse am Endeffektor können durch die sehr gute Interpolationsfähigkeit der lokalen Modellnetze kompensiert werden. Wie in Abb. 3 dargestellt kann der Algorithmus trotz der Sprünge der Lastmasse robust und zuverlässig die Systemgrößen schätzen.

  • Um die Wechselwirkungen der Gelenkachsen untereinander abzubilden empfiehlt es sich die Trainingsdaten in zwei einzelne Segmente zu unterteilen. Hierbei muss der Einfluss jedes einzelnen Gelenks als auch die Einflüsse der Gelenke untereinander abgebildet werden (vgl. Abb. 3).

  • Die Modellanzahl und Anzahl historischer Messwerte muss vorab über eines der etablierten Verfahren [20,21,22] bestimmt werden. Bei einer zu hoher Modellordnung oder zu vielen historischen Messwerten muss die Abtastzeit des Reglers entsprechend angepasst werden.

  • Als Anregungssignal für die Trainingsdaten der linearen, lokalen Modellnetze eignet sich eine amplitudenmodulierte Pseudo-Randomisierte-Binärsequenz am besten. Andere Signale (z. B. Dreieck oder Sprung) führten zu schlechteren Netzqualitäten.

  • Die Abtastzeit und Anzahl der Funktionsaufrufe für den Optimierungsalgorithmus sind kritisch in Bezug auf die Echtzeitfähigkeit des Reglers. Hier muss die Abtastzeit mit den lokalen Modellnetzen synchronisiert werden. Des Weiteren wird die Anzahl der Funktionsaufrufe des Optimierers hierdurch begrenzt.

Die entwickelte Regelung bietet nun Potenzial zur Weiterentwicklung und Optimierung von einzelnen Teilaspekten. Hierunter fallen die folgenden Aspekte des Reglers:

  • Der Optimierer kann speziell für die gegebene Kostenfunktion und den Suchbereich angepasst werden, um so effizienter und schneller optimale Stellgrößen zu berechnen.

  • Für jede Gelenkachse muss sowohl der Schätzer als auch die Optimierung in jedem Zeitschritt berechnet werden. Hierbei können bestimmte Rechenschritte parallelisiert werden, um wieder Rechenressourcen zu sparen und die Abtastzeit einzuhalten.