Technische Artikel

Fortgeschrittene Robotermanipulation mit Impedanzregelung

Von Tadele Shiferaw, MathWorks


Robotermanipulatoren werden fortwährend in verschiedenen Anwendungen eingesetzt und verbessern die Effizienz und Präzision in Bereichen wie Fertigung, Gesundheitswesen, Landwirtschaft und Logistik. Für Anwendungen, die eine sichere und effektive Interaktion mit einer dynamischen Umgebung erfordern, ist die Nachgiebigkeit der Manipulatoren unerlässlich, da sie eine verbesserte Anpassungsfähigkeit, Präzision und Sicherheit während des Betriebs ermöglicht. Die Impedanzregelung ist eine fortschrittliche Methode, die es Robotern ermöglicht, das für menschliche Manipulation charakteristische nachgiebige und anpassungsfähige Verhalten nachzuahmen. Dieser Artikel erklärt das Design und die Implementierung der Impedanzregelungsstrategie unter Verwendung von Modellierung und Simulation.

Impedanzregelung verstehen

Im Kern ist die Impedanzregelung eine Strategie in der Robotik, um die Interaktionskraft zwischen einem Roboter und seiner Umgebung durch dynamische Anpassung der Impedanz des Roboters zu regulieren, die ein Maß dafür ist, wie er auf Kräfte und Verschiebungen reagiert[1].

Stellen Sie sich einen vereinfachten Roboter mit einem Freiheitsgrad (1-DOF) vor. Der Roboter ist als Masse an der Position \( X_m \) definiert und soll an eine gewünschte Position \( X_d \) bewegt werden, was leicht durch die Verwendung eines klassischen PD-Reglers mit der folgenden mathematischen Gleichung erreicht werden kann:

\( F_{controller} = k(X_d - X_m) - d {\dot{X_m}} \)

Bei genauer Betrachtung der Gleichung lässt sich die Regelwirkung des PD-Reglers physikalisch als Feder-Dämpfer-Kombination interpretieren, wobei der Proportionalterm die Feder und der Derivativterm den Dämpfer darstellt. Dabei handelt es sich um einen einfachen Impedanzregler, der nicht nur die Masse in die gewünschte Position bewegt, sondern auch eine gewünschte Impedanz in das System einspeist, die bei jeder externen Interaktion mit dem System spürbar ist (Abbildung 1).

Ein Modell eines einfachen impedanzgesteuerten Systems mit einem Freiheitsgrad (1-DOF).

Abbildung 1. Ein einfaches impedanzgesteuertes System mit einem Freiheitsgrad (1-DOF).

Modellierung eines einfachen impedanzgeregelten Systems

Dieses vereinfachte 1-DOF-System kann leicht mithilfe von Simscape™, einer physikalischen Modellierungssprache, modelliert werden, die es den Nutzern ermöglicht, die Blockbibliothek über einen bidirektionalen Energiefluss zu verbinden (Abbildung 2).

Abbildung 2. Ein Simscape-Modell des einfachen impedanzgesteuerten Systems mit einem Freiheitsgrad (1-DOF).

Jetzt können die durch die Steifigkeitskonstante und den Dämpfungskoeffizienten beschriebenen Reglerparameter angepasst werden, um das gewünschte Nachgiebigkeitsverhalten des gesamten Systems beim Verfolgen der gewünschten Position zu definieren. Der Unterschied im Bewegungsverhalten zwischen einem mäßig nachgiebigen und einem hoch nachgiebigen impedanzgesteuerten System ist in Abbildung 3 dargestellt.

Abbildung 3. Die bewegte Masse weist je nach eingestellter Controller-Nachgiebigkeit ein unterschiedliches Bewegungsverhalten auf.

Impedanzregelung für Multi-DOF-Manipulatoren

Das oben diskutierte Impedanzregler-Konzept kann auch auf einen Roboter-Manipulator mit N-DOF erweitert werden, wobei eine mehrdimensionale geometrische Feder verwendet wird, um die Pose des Roboter-Endeffektors \( {H^0}_t \) an eine gewünschte Pose \( {H^0}_d \) anzugleichen und Dämpfung über eine räumliche Gelenkfeder an jedem Freiheitsgrad in das System eingebracht wird (Abbildung 4).

Ein Diagramm eines Robotermanipulators mit N-DOF, bei dem eine mehrdimensionale geometrische Feder verwendet wird, um die Endeffektorpose des Roboters auszurichten, und die Dämpfung über eine räumliche Gelenkfeder in jeden DOF eingebracht wird.

Abbildung 4. Impedanzregelung eines N-DOF-Robotermanipulators. Die Nachgiebigkeit ist auf die räumliche Feder \( K \) zurückzuführen und die Dämpfung wird in den Gelenken mit \( b_n \) hinzugefügt.

Bei symmetrischen Translations-, Rotations- und Kopplungssteifigkeitsmatrizen \( K_t \), \( K_c \) und \( K_o \) übt eine räumliche geometrische Feder, die mit einer Matrix \( K∈R^{6×6} \) definiert ist, eine Kraft auf einen Manipulator aus, die eine Funktion der relativen Pose \( {H^d}_t \) ist:

\( K = \begin{pmatrix} K_o & K_c \\ {K^T}_c & K_t \end{pmatrix} \)

Die Kraft wird in den Koordinaten des Endeffektorrahmens als Sechs-Vektor-Kraftmoment \( W^t=[m^t f^t] \) wie folgt berechnet[2]:

\( \widetilde{m^t} = -2as({G_o}{{R^d}_t}) - as ({G_o}{{R^t}_d}{\widetilde{{p^d}_t}}{\widetilde{{p^d}_t}}{{R^d}_t}) - 2as({G_c}{\widetilde{{p^d}_t}}{{R^d}_t}) \)

\( \widetilde{f^t} = -{{R^t}_d}as({G_o}{\widetilde{{p^d}_t}}){{R^d}_t} - as ({G_o}{{R^t}_d}{\widetilde{{p^d}_t}}{{R^d}_t}) - 2as({G_c}{{R^d}_t}) \)

wobei gilt:

  • \( as(⋅) \) ist ein Operator, der den schiefsymmetrischen Teil einer quadratischen Matrix angibt
  • \( G_t \), \( G_c \) und \( G_o \) sind Ko-Steifigkeitsmatrizen der räumlichen Feder, berechnet als \( G_x = \frac{1}{2}tr(K_x)I−K_x \)
  • \( tr (.) \) ist der Tensor-Spuroperator
  • ~ ist ein Tilde-Operator, der die Kreuzproduktmatrixform eines Vektors erfasst

Nach der Koordinatentransformation des Kraftmomentvektors \( W^t \) in ein Inertialsystem \( Ψ_0 \) werden die Gelenkdrehmomente \( τ \), die den gewünschten Kraftmomentvektor des Endeffektors am Manipulator emulieren können, mit diesen Gleichungen berechnet:

\( (W^o)^T = A{d^T}_{{H^t}_o} (W^t)^T \)

\( τ = {J^T}(q){W^o} \)

wobei gilt:

  • \( Ad (⋅) \) ist die Adjungierte der homogenen Matrix
  • \( J(q) \) ist die Jacobi-Matrix des Robotermanipulators

Modellierung eines Roboter-Manipulators mit Impedanzregelung

Um den Regelungsalgorithmus an einem Robotermanipulator zu evaluieren, wurde ein dynamisches Modell des Kinova® Gen3 Manipulators mit sieben Freiheitsgraden mithilfe von Simscape Multibody™ entwickelt. Mit dem im URDF-Format verfügbaren CAD-Modell des Manipulators kann mit dem folgenden Befehl automatisch ein detailliertes Mehrkörpermodell generiert werden, das für die dynamische Simulation verwendet werden kann:

 smimport(kinovaGen3.urdf') 

Das in der folgenden Abbildung dargestellte vollständige Systemmodell umfasst den Generator für die Ziel-Pose, Umgebungshindernisse und externe Interaktionen für eine umfassende Evaluierung des Reglers mit Simulation (Abbildung 5).

Abbildung 5. Vollständiges Systemmodell eines impedanzgesteuerten Robotermanipulators mit sieben Freiheitsgraden, der mit verschiedenen Umgebungen interagiert.

Die Robotics System Toolbox™ erweitert den Impedanzregler für den Manipulator um einen Schwerkraftkompensationsalgorithmus, der die Betriebsleistung steigert. Somit ist die endgültige Reglerausgabe, die in Abbildung 6 dargestellt ist, ein Gelenkdrehmoment im Gelenkraum, das sich aus den Drehmomenten der räumlichen Feder, der Schwerkraftkompensation und der Dämpfung zusammensetzt.

Ein Modell des Impedanzreglers für einen Robotermanipulator mit sieben Freiheitsgraden.

Abbildung 6. Details des Impedanzreglers eines Sieben-DOF-Robotermanipulators.

Simulationsergebnisse

Eine Simulation testete die Wirkung einer externen Kraft, die zum Zeitpunkt \( t = 16 \) \(sec \) in X-Richtung ausgeübt wurde, sowie eines Hindernisses, das sich entlang der x-Achse bewegte und bei etwa \( t = 30 \) \(sec \) mit dem Manipulator interagierte (Abbildung 7). Wie erwartet führte eine externe Kraft von \( F_{ext} = 40N \), die auf den impedanzgesteuerten Manipulator mit einer kartesischen Translationssteifigkeit von \(K_t =400 \) \(N/m \) ausgeübt wurde, zu einer Verschiebung von \( x_{def} = 0,1m \). Das System zeigte auch während der Interaktion mit dem sich bewegenden Hindernis ein stabiles und realistisches Verhalten, wie in der vom Mechanics Explorer generierten Videoanimation zu sehen ist (Abbildung 8).

Vier Diagramme zeigen die Simulationsergebnisse für die gewünschten und tatsächlichen Endeffektorpositionen entlang der x-, y- und z-Achse.

Abbildung 7. Simulationsergebnisse, die die gewünschten und tatsächlichen Endeffektorpositionen entlang der x-, y- und z-Achse zeigen.

Dauer des Videos 0:50

Abbildung 8. Eine Animation, die die 3D-Bewegung des Roboters und die Interaktion mit einem Hindernis zeigt.

Wie durch Simulationsergebnisse bestätigt, führt der kartesische Impedanzregler nicht nur eine gewünschte Nachgiebigkeit ein, um eine flexible Interaktionsfähigkeit zu ermöglichen. Er umgeht außerdem die Notwendigkeit rechenintensiver Berechnungen der inversen Kinematik zur Manipulatorsteuerung. Es handelt sich außerdem um einen physikalisch erklärbaren und intuitiven Ansatz zur Steuerung und erfordert zur Implementierung einen Drehmomentregler auf Gelenkebene.

Referenzen

[1] Hogan, Neville. “Impedance Control: An Approach to Manipulation: Part I—Theory; Part II—Implementation; Part III—Applications.” Journal of Dynamic Systems, Measurement, and Control, vol. 107, no. 1, March 1985, pp. 1–24.

[2] Stramigioli, Stefano. Modeling and IPC control of Interactive Mechanical Systems — A Coordinate-Free Approach, Lecture Notes in Control and Information Sciences (Springer London, 2001).

Veröffentlicht 2025

Weitere Informationen

Artikel für ähnliche Einsatzgebiete anzeigen

Artikel für verwandte Branchen anzeigen