DE69207627T2 - Hybrides Lage- und Kraftregelsystem - Google Patents

Hybrides Lage- und Kraftregelsystem

Info

Publication number
DE69207627T2
DE69207627T2 DE1992607627 DE69207627T DE69207627T2 DE 69207627 T2 DE69207627 T2 DE 69207627T2 DE 1992607627 DE1992607627 DE 1992607627 DE 69207627 T DE69207627 T DE 69207627T DE 69207627 T2 DE69207627 T2 DE 69207627T2
Authority
DE
Germany
Prior art keywords
matrix
force
displacement
joint
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE1992607627
Other languages
English (en)
Other versions
DE69207627D1 (de
Inventor
William D Fisher
M Shahid Mujtaba
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agilent Technologies Inc
Original Assignee
Hewlett Packard Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Co filed Critical Hewlett Packard Co
Application granted granted Critical
Publication of DE69207627D1 publication Critical patent/DE69207627D1/de
Publication of DE69207627T2 publication Critical patent/DE69207627T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Control Of Position Or Direction (AREA)
  • Numerical Control (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf ein hybrides Steuersystem für und ein Verfahren zum Steuern der Verschiebung und der Kraft eines Manipulators gemäß den Ansprüchen 1 und 5.
  • Stand der Technik
  • Manipulatoren mit Endbetätigungsgliedern, wie z.B. Roboter-"Händen", finden viele Anwendungen. Beispielsweise könnte ein solcher Manipulator eine elektronische Komponente, die viele Anschlußleitungen aufweist, auf einer gedruckten Schaltungsplatine installieren, wobei sich jede Anschlußleitung in dem richtigen Loch zum Löten befindet. Ein weiterer könnte eine Bearbeitungsoperation durchführen, beispielsweise das Schneiden oder Schleifen eines Werkstückes. Manipulatoren sind besonders gut geeignet, um manuelle Operationen in agressiven Umgebungen, wie z.B. dem Weltraum oder einem radioaktiven Bereich eines Nuklearreaktors, durchzuführen, in die sich Menschen nicht ohne weiteres begeben können. Häufig schließen die Operationen, die von einem Manipulator durchgeführt werden, eine Wechselwirkung mit der Umgebung unter den Umständen ein, die eine große Präzision sowohl des Positionierens des Endbetätigungsglieds als auch des Kraftbetrags, den dasselbe ausübt, erfordern. Folglich bestand ein Bedarf nach einer eff izienten und effektiven Einrichtung zum Steuern des Betriebs dieser Manipulatoren.
  • Fig. 1 liefert ein Beispiel eines typischen Manipulators, der allgemein mit 100 bezeichnet ist. Ein Endbetätigungs glied, wie z.B. eine Roboterhand 101, ist mittels eines Gelenks 105 drehbar mit einem Verbindungsglied 103 gekoppelt. Das Verbindungsglied 103 ist mittels eines Gelenks 107 drehbar mit einem weiteren Verbindungsglied 109 gekoppelt, wobei das Verbindungsglied 109 wiederum mittels eines Gelenks 111 drehbar mit einem weiteren Verbindungsglied 113 gekoppelt ist. Das verbindungsglied 113 ist durch ein Gelenk 115 mit einem oberen vertikalen verbindungsglied 117 gekoppelt. Das Verbindungsglied 117 ist mittels eines Gelenks 119 drehbar und ausziehbar mit einem unteren vertikalen Verbindungsglied 121 gekoppelt, das durch eine Basis 123 getragen wird. Der Manipulator wird durch eine Steuerung 125 gesteuert, die typischerweise ein Kommunikationsterminal 127 und Berechnungs- und Speicher-Schaltungen (nicht gezeigt) aufweist.
  • Wie in der aufgeschnittenen Ansicht gezeigt ist, dreht eine Antriebseinrichtung, wie z.B. ein Elektromotor 129, das obere vertikale Verbindungsglied 117 relativ zu dem unteren vertikalen Verbindungsglied 121, wie durch einen Pfeil 131 angezeigt ist. In gleicher Weise bewegen weitere Antriebseinrichtungen (nicht gezeigt), wie z.B. Motoren oder pneumatische Betätigungsglieder, die verschiedenen anderen Verbindungsglieder auf unterschiedliche Arten gemäß der physikalischen Struktur der Gelenke. Ein Sensor, beispielsweise ein optischer Codierer 133, liefert eine Rückkopplung bezüglich der Winkelausrichtung des Verbindungsglieds 117 relativ zu dem Verbindungsglied 121. Weitere Sensoren (nicht gezeigt) liefern eine Rückkopplung bezüglich der Positionen der verschiedenen anderen Gelenke relativ zu den dazugehörigen Verbindungsgliedern derselben oder anderen Teilen. Ein Sensor, beispielsweise ein Dehnungsmeßgerät 135, liefert eine Rückkopplung bezüglich des Drehmoments, das durch das obere Verbindungsglied 117 ausgeübt wird. Weitere Sensoren (nicht gezeigt) liefern etne ähnliche Rückkopplung bezüglich der Kräfte und Drehmomente, die durch andere Teile des Manipulators ausgeübt werden.
  • Die Position und die Ausrichtung der Hand 101 sind typischerweise bezüglich eines einigermaßen geeigneten interessierenden Koordinatensystems beschrieben. Für den Manipulator 100 könnte es beispielsweise geeignet sein, ein festes karthesisches Koordinatensystem zu verwenden, das einen Ursprung 137 an einen gewünschten Ort, eine x-Achse 139 und eine y-Achse 141, die eine horizontale Ebene parallel zu der Basis 123 definieren, sowie eine vertikale z-Achse 143, die parallel zu dem vertikalen Verbindungsglied 117 ist, aufweist. Bei anderen Anwendungen könnte es bevorzugt sein, ein anderes Koordinatensystem zu verwenden, beispielsweise ein sphärisches oder ein zylindrisches oder ein System, bei dem der Ursprung nicht festgelegt ist.
  • Die erforderliche Bewegung des Endbetätigungsglieds eines Roboter-Manipulators ist häufig sehr komplex. Verschiedene Systeme wurden vorgeschlagen, um diese Bewegung exakt und automatisch zu steuern. Fin derartiges System, das als "hybrides" Steuersystem bekannt ist, liefert eine vereinheitlichte Steuerung sowohl der Verschiebung eines Endbetätigungsglieds als auch der Kräfte, die durch dasselbe ausgeübt werden (der Bequemlichkeit halber wird der Ausdruck "Verschiebung" hierin verwendet, um sowohl die Position als auch die Ausrichtung eines Endbetätigungsglieds zu bezeichnen).
  • Im allgemeinen steuert ein hybrides Steuersystem entweder die Verschiebung oder die Kraft in einer beliebigen Bewegungsrichtung. Das Hauptkonzept besteht darin, die Kraft in Richtungen zu steuern, in denen es schwierig ist, eine Verschiebung zu steuern, da beispielsweise die Geometrie nicht gut definiert oder unbekannt ist, oder da eine bestimmte Kontaktkraft erforderlich ist. Hybride Steuersysteme funktionierten in speziellen Anwendungen zufriedenstellend, wobei jedoch derartige Systeme im allgemeinen keine stabile Steuerung lieferten. Dieses Fehlen einer garantierten Stabilität begrenzte die Anwendbarkeit und Annehmbarkeit hybrider Steuersysteme.
  • Fig. 2 liefert ein funktionelles Blockdiagramm eines bekannten hybriden Steuersystems, wie es von Craig, J.J., und M.H. Raibert in "A Systematic Method of Hybrid Position/Force Control of a Manipulator", Computer Software and Applications Conference, IEEE Computer Society, November 1979, Chicago, Illinois, Seiten 446-451, vorgeschlagen wurde. Der Zweck dieses Steuersystems besteht darin, sowohl die Verschiebung eines Endbetätigungsglieds eines Manipulators 11 als auch die Kraft, die durch dasselbe ausgeübt wird, zu steuern. Es ist offensichtlich, daß der Manipulator 11 einen beliebigen einer Anzahl verschiedener Arten von Manipulatoren darstellen kann, wobei der Manipulator 100, der in Fig. 1 dargestellt ist, ausschließlich exemplarisch ist. Genauso kann der Manipulator 11 ein beliebiges verschiedener Arten von Endbetätigungsgliedern aufweisen. Die nahezu symmetrischen oberen und unteren Hälften von Fig. 2 zeigen Verschiebungs- bzw. Kraft-Steuerabschnitte des hybriden Steuersystems.
  • In der oberen Hälfte von Fig. 2 empfängt ein Summationsknoten 13 einen gewünschten Verschiebungsvektor xd, der eine gewünschte Verschiebung des Endbetätigungsglieds des Manipulators 11 darstellt, und einen tatsächlichen Verschiebungsvektor xa, der die tatsächliche Verschiebung desselben darstellt. Wie oben gezeigt ist, stellt jeder dieser Verschiebungsvektoren sowohl die Position als auch die Ausrichtung des Endbetätigungsglieds dar, und ist deshalb typischerweise ein Vektor mit sechs Elementen. Bei einigen Anwendungen können weniger als sechs Elemente erforderlich sein; beispielsweise wäre im Falle eines Endbetätigungsglieds, das sich gesamt in einer Ebene bewegt, ein Vektor mit drei Elementen, der x- und y-Koordinaten und einen einzelnen Ausrichtungwert ergibt, ausreichend.
  • In einigen Situationen kann es erwünscht sein, das Systemverhalten zu verbessern, indem die Bewegung des Endbetätigungsglieds ferner beispielsweise mittels einem oder mehrerer weiterer Vektoren, wie Z.B. der Geschwindigkeit und der Beschleunigung, zusätzlich zu dem Verschiebungsvektor beschrieben wird.
  • In jeder gegebenen Situation werden spezielle Werte der Elemente des gewünschten Verschiebungsvektors xd durch einen Benutzer geliefert oder können durch einen Computer oder dergleichen berechnet werden. Die Werte der Elemente des tatsächlichen Verschiebungsvektors xa werden aus Signalen hergeleitet, die durch Sensoren geliefert werden, wie z.B. denen, die bezugnehmend auf den Manipulator 100 erörtert werden, die die tatsächlichen Positionen und Ausrichtungen der verschiedenen Gelenke des Manipulators oder des Endbetätigungsglieds selbst erfassen.
  • Der Summationsknoten 13 kombiniert den tatsächlichen und den gewünschten Verschiebungsvektor xa und xd algebraisch und erzeugt einen Endbetätigungsglied-Verschiebungsfehlervektor Xe, der jeden Unterschied anzeigt; das heißt
  • xe = xd - xa.
  • Steuersignale werden aus xe hergeleitet und werden verwendet, um das Endbetätigungsglied in seine gewünschte Position und Ausrichtung zu bewegen, wie nachfolgend kurz detaillierter erklärt wird.
  • In gleicher Weise empfängt in der unteren Hälfte von Fig. 2 ein Summationsknoten 15 einen gewünschten Kraftvektor der eine gewünschte Kraft darstellt, die durch das Endbetätigungsglied des Manipulators 11 ausgeübt werden soll, und einen tatsächlichen Kraftvektor fa, der die tatsächliche Kraft darstellt, die von dem Endbetätigungsglied ausgeübt wird. Diese Kraftvektoren stellen tatsächlich sowohl Kraftals auch Momenten-Informationen dar und weisen daher, wie die Verschiebungsvektoren, typischerweise sechs Elemente auf
  • Spezielle Werte der Elemente der Vektoren fd und fa werden auf eine Art und Weise bestimmt, die der ähnlich ist, die verwendet wird, um Werte der Elemente der Vektoren xd bzw. xa zu bestimmen.
  • Der Summationsknoten 15 kombiniert den tatsächlichen und den gewünschten Kraftvektor fa und fd und erzeugt einen Endbetätigungsglied-Kraftfehlervektor fe, der jeden Unterschied anzeigt, auf eine Art und Weise, die analog zu der Bestimmung des Endbetätigungsglied-Verschiebungsfehlervektors xe ist, die oben beschrieben wurde. Steuersignale werden aus fe hergeleitet und verwendet, um zu bewirken, daß das Endbetätigungsglied eine gewünschte Kraft ausübt.
  • Das Verfahren, durch das die Endbetätigungsglied-Verschiebungs- und -Kraft-Fehlervektoren xe und fe verwendet werden, um die Steuersignale zu erzeugen, wird nun detaillierter beschrieben.
  • Es wird notwendig sein, diejenigen Terme von xe auszuwählen, die Achsen entsprechen, entlang denen die Verschiebung des Endbetätigungsglieds, und nicht die Kraft, die durch dasselbe ausgeübt wird, gesteuert werden soll. Wie durch einen Funktionsblock 17 angezeigt ist, wird diese Auswahl mittels einer diagonalen Auswahlmatrix (die mit 5 bezeichnet ist) erreicht.
  • Jedes diagonale Element der Auswahlmatrix S besitzt einen Wert von entweder Eins oder Null. Ein Wert von Eins zeigt eine Achse an, entlang der eine Verschiebung gesteuert werden soll, wohingegen ein Wert von Null eine Achse anzeigt, entlang der eine Verschiebung nicht gesteuert werden soll. Die Matrix S ist typischerweise eine diagonale 6x6-Matrix.
  • Der Vektor xe wird mit der Matrix S multipliziert, um wie folgt einen ausgewählten Endbetätigungsglied-Verschiebungsfehlervektor xes zu erhalten:
  • xes = Sxe (1)
  • Der Vektor xes muß in Werte umgewandelt werden, die Verschiebungen der verschiedenen Gelenke des Manipulators darstellen. Wie durch einen Funktionsblock 19 angezeigt ist, wird diese Umwandlung mittels einer Inversen einer bestimmten Matrix erreicht, die als die Jacobimatrix bekannt ist.
  • Die Jacobimatrix (mit J bezeichnet) ist eine Näherung erster Ordnung einer Funktion, die differentielle Bewegungen der Gelenke eines Manipulators, die durch einen Gelenkverschiebungs-Fehlervektor Θe dargestellt sind, in differentielle Bewegungen des Endbetätigungsglieds bezüglich des interessierenden Koordinatensystems umwandelt. Die differentiellen Bewegungen des Endbetätigungsglieds sind selbstverständlich durch den Endbetätigungsglied-Verschiebungsfehlervektor xe dargestellt. Diese Abbildung ist in der folgenden lineansierten Beziehung ausgedrückt:
  • xe = JΘe (2)
  • In dem Vektor Θe ist ein Element jedem Gelenk zugeordnet; wenn der Roboter n Gelenke aufweist, ist der Vektor Θe ein Vektor mit n Elementen. Die Herleitung der Jacobimatrix J ist beispielsweise bei Paul, R.P., Robot Manipulators: Mathematics, Programming and Control, MIT Press, 1981, dargelegt.
  • Wenn der Vektor Θe bereits bekannt ist, kann der Vektor xe gemäß Gleichung (2) berechnet werden. In der vorliegenden Situation ist jedoch der Vektor xe bekannt, und es ist erwünscht, den Vektor Θe zu berechnen; deshalb ist eine Umkehrung der Abbildung, die durch die Matrix J geliefert wird, erforderlich. Eine eindeutige inverse Abbildung existiert, wenn J eine quadratische Matrix eines maximalen Rangs ist, wobei in diesem Fall ein Gelenkverschiebungs-Fehlervektor Θe wie folgt aus dem Betätigungsglied-Verschiebungsfehlervektor xe berechnet werden kann:
  • Θe = J&supmin;¹ xe (3)
  • Gleichung (3) wurde bei einem Versuch verwendet, einen gewünschten ausgewählten Gelenkverschiebungs-Fehlervektor Θes aus dem ausgewählten Endbetätigungsglied-Verschiebungsfehlervektor xes, wie in Gleichung (1) bestimmt ist, wie folgt zu berechnen:
  • Θes = J&supmin;¹xes (4)
  • Jedoch kann die Berechnung des ausgewählten Gelenkverschiebungs-Fehlervektors Θes auf diese Art und Weise eine Instabilität zur Folge haben und begrenzt daher die Brauchbarkeit des hybriden Steuersystems.
  • Es ist für Fachleute offensichtlich, daß, wenn J nicht quadratisch ist, die Pseudo-Inverse J&spplus; in den Gleichungen (3) und (4) anstelle der Inversen J&supmin;¹ verwendet werden würde. Der Einfachheit halber wird der Ausdruck J&supmin;¹ hierin verwendet, um die Inverse von J zu bezeichnen, wenn J quadratisch ist, und die Pseudo-Inverse von J, wenn J nicht quadratisch ist.
  • Wenn der ausgewählte Gelenkverschiebungs-Fehlervektor Θes berechnet wurde, wird derselbe verwendet, um Elemente eines Positionskorrektur-Drehmomentvektors τp zu berechnen, wie durch einen "Positionssteuergesetz"-Funktionsblock 21 angezeigt ist. Der Vektor τp stellt Steuersignale dar, die den Antriebseinrichtungen de] Gelenke zugeführt werden sollen, um zu bewirken, daß sich das Endbetätigungsglied in die gewünschte Position und Ausrichtung bewegt.
  • Das Positionssteuergesetz ist typischerweise eine lineare Differentialgleichung, könnte jedoch eine beliebige Funktion sein, die mit einem Eingabevektor arbeitet, um eine eindeutige Ausgabe zu erzeugen. In der Praxis ist das Steuergesetz häufig ein P-I-D-Steuergesetz (P-I-D = proportional, integral, differentiell) obwohl stattdessen ein adaptives oder ein Steuergesetz eines anderen Typs verwendet werden könnte.
  • Analog zu der Auswahl der Terme von xe, die den Achsen entsprechen, entlang denen die Position des Endbetätigungsglieds gesteuert werden soll, müssen ferner Terme des Endbetätigungsglied-Kraftfehlervektors fe ausgewählt werden, die Achsen entsprechen, entlang denen die Kraft, die durch das Endbetätigungsglied ausgeübt wird, gesteuert werden soll. Diese Auswahl wird mittels der Matrix I-S (wobei I die Identitätsmatrix ist) erreicht, wie durch einen Funktionsblock 23 angezeigt ist. Die Matrix I-S ist das orthogonale Komplement der Auswahlmatrix S.
  • Jedes diagonale Element der Matrix I-S besitzt einen Wert von entweder Eins oder Null. Ein Wert von Eins zeigt eine Achse an, entlang der die Kraft gesteuert werden soll, wohingegen ein Wert von Null eine Achse anzeigt, entlang der die Kraft nicht gesteuert werden soll. Bei dem beschriebenen Ausführungsbeispiel ist diese Matrix typischerweise eine diagonale 6x6-Matrix. Die Kraftsteuerung ist orthogonal zur Positionssteuerung, weshalb die mathematische Definition lautet:
  • S = I - S.
  • Es sollte offensichtlich sein, daß die Nullen in der Diagonale von S den Einsen in der Diagonale von S entsprechen und umgekehrt.
  • Der Vektor Fe wird mit der Matrix S multipliziert, um einen ausgewählten Endbetätigungsglied-Kraftfehlervektor fes wie folgt zu erhalten:
  • fes = S fe
  • Die Werte des ausgewählten Endbetätigungsglied-Kraftfehlervektors fes müssen in Drehmomente umgewandelt werden, die durch die verschiedenen Gelenke ausgeübt werden sollen. Dies geschieht mittels JT, der Transponierten der Jacobimatrix J, gemäß der folgenden Beziehung:
  • τe = JTfe
  • Die vorhergehende Gleichung ist anders als Gleichung (3) keine Näherung und ist daher für Beliebige J und f richtig. Daraus folgt, daß ein gewünschter Gelenkkraft-Fehlervektor τes gemäß folgender Beziehung berechnet werden kann:
  • τes = JTfes
  • wie durch einen Funktionsblock 25 angezeigt ist, ohne irgendeine Instabilität in das System einzuführen.
  • Nachdem der Gelenkkraft-Fehlervektor τes berechnet wurde, wird er verwendet, um Elemente eines Kraftkorrektur-Drehmomentvektors τf zu berechnen, wie durch einen "Kraftsteuergesetz"-Funktionsblock 27 angezeigt ist. Der Vektor τf stellt Steuersignale dar, die den Antriebseinrichtungen der Gelenke zugeführt werden müssen, um zu bewirken, daß das Endbetätigungsglied die gewünschte Kraft ausübt.
  • Schließlich werden der Positionskorrektur-Drehmomentvektor τp und der Kraftkorrektur-Drehmomentvektor τf algebraisch kombiniert, wie durch einen Summationsknoten 29 angezeigt ist, um einen endgültigen Satz von Steuersignalen zu erzeugen, die den Antriebseinrichtungen zugeführt werden, die den verschiedenen Gelenken des Manipulators zugeordnet sind, um zu bewirken, daß sich das Endbetätigungsglied in die gewünschte Position und Ausrichtung bewegt und die gewünschte Kraft und das gewünschte Moment ausübt.
  • Fig. 2 zeigt eine typische Einrichtung, um die tatsächlichen Verschiebungs- und Kraft-Vektoren xa und xa zu berechnen. Verschiebungen der verschiedenen Gelenke, wie sie durch Sensoren gemessen werden, sind durch einen Gelenkvektor Θa dargestellt. Der tatsächliche Verschiebungsvektor xa wird gemäß einer Vorwärtskinematikgleichung, wie durch einen Funktionsblock 31 angezeigt ist, aus dem Gelenkvektor Θa berechnet. Genauso wird, wie durch einen Funktionsblock 33 angezeigt ist, der tatsächliche Kraftvektor fa mittels einer Krafttransformationsgleichung aus den gemessenen Kräften fh, wie dieselben durch die Sensoren an den verschiedenen Gelenken gemessen werden, berechnet.
  • Das hybride Steuersystem gemäß der obigen Beschreibung ist ein typisches verschiedener Arten von hybriden Steuersystemen, die vorgeschlagen wurden. Obwohl diese Systeme bei einigen speziellen Anwendungen zufriedenstellend funktionierten, können sie für bestimmte Kombinationen von S und J&supmin;¹ allgemein instabil werden. Das heißt, daß ein unendlicher (oder nahezu unendlicher) oder unbegrenzter, schwingender Positionskorrektur-Drehmomentvektor τp als Reaktion auf endliche Werte von xes erzeugt werden kann. Diese Möglichkeit eines instabilen Betriebs begrenzte die Anwendbarkeit und Annehmbarkeit hybrider Positions- und Kraft-Steuersysteme. Demgemäß existiert ein Bedarf nach einer Möglichkeit, ein stabiles hybrides Steuersystem für einen Robotermanipulator zu realisieren.
  • Zusammenfassung der Erfindung
  • Die vorliegende Erfindung liefert ein stabiles hybrides Steuersystem zum Steuern der Verschiebung und der Kraft eines Endbetätigungsglieds eines Robotermanipulators. Außerdem liefert die Erfindung eine einfache und effektive Einrichtung zum Abstimmen des Steuersystems. Die Erfindung kann ohne weiteres mit existierenden Robotersystemen verwendet werden.
  • Bei einem bevorzugten Ausführungsbeispiel eines hybriden Steuersystems gemäß der Erfindung wird ein Endbetätigungsglied-Verschiebungsfehlersignal mit einer Pseudo-Inversen eines Matrixprodukts einer Auswahlmatrix und einer Jacobimatrix multipliziert, um ein Verschiebungsfehlersignal für ausgewählte Gelenke zu erzeugen. Dieses Gelenkverschiebungs-Fehlersignal und ein Gelenkkraft-Fehlersignal werden kombiniert, um ein Steuersignal zu erzeugen, das bewirkt, daß sich das Endbetätigungsglied in Übereinstimmung mit der gewünschten Verschiebung bewegt und die gewünschte Kraft ausübt.
  • Das Endbetätigungsglied-Verschiebungsfehlersignal wird typischerweise durch Berechnen eines beliebigen Unterschieds zwischen einem Signal, das die tatsächliche Verschiebung des Endbetätigungsglieds anzeigt, und einem Signal, das die gewünschte Verschiebung anzeigt, erhalten. In gleicher Weise wird ein Endbetätigungsglied-Kraftfehlersignal erhalten, indem der Unterschied zwischen einer tatsächlichen Kraft, die von dem Endbetätigungsglied ausgeübt wird, und einer gewünschten Kraft erhalten, wobei das Gelenkkraft-Fehlersignal wiederum aus dem Endbetätigungsglied-Kraftfehlersignal berechnet wird.
  • Ein weiteres bevorzugtes Ausführungsbeispiel der Erfindung weist eine Einrichtung zum Liefern eines Gelenk-Abstimmsignals auf, indem beispielsweise ein Eingabe-Abstimmsignal mit einer Matrixdifferenz zwischen einer Identitätsmatrix und einem Matrixprodukt einer Pseudo-Inversen der Jacobimatrix und der Jacobimatrix multipliziert wird. Das Gelenk-Abstimmsignal wird verwendet, um das System abzustimmen, um beispielsweise zu verhindern, daß ein beliebiger Teil des Manipulators ein nahes Hindernis trifft. Vorzugsweise werden getrennte Verschiebungs- und Kraft-Komponenten des Abstimmsignals geliefert, um sowohl das Gelenkverschiebungs-Fehlersignal als auch das Gelenkkraft-Fehlersignal abzustimmen.
  • Weitere Aspekte und Vorteile der vorliegenden Erfindung werden aus der folgenden detaillierten Beschreibung, die in Verbindung mit den beiliegenden Zeichnungen, die beispielhaft die Grundsätze der Erfindung zeigen, durchgeführt wird, offensichtlich.
  • Kurze Beschreibung der Zeichnungen
  • Fig. 1 ist eine perspektivische Ansicht eines bekannten Robotermanipulators;
  • Fig. 2 ist ein funktionelles Blockdiagramm eines bekannten hybriden Steuersystems zum Steuern eines Manipulators, beispielsweise dem, der in Fig. 1 dargestellt ist;
  • Fig. 3 ist ein funktionelles Blockdiagramm eines hybriden Steuersystems gemäß der vorliegenden Erfindung;
  • Fig. 4 ist ein funktionelles Blockdiagramm eines abstimmbaren hybriden Steuersystems gemäß der vorliegenden Erfindung;
  • Fig. 5 ist ein Graph, der den hinreichenden Stabilitätstest bei der Anwendung auf ein bekanntes hybrides Steuersystem, wie es in Fig. 2 gezeigt ist, und auf ein System gemäß der Erfindung, wie es in Fig. 3 gezeigt ist, zeigt;
  • Fig. 6 ist ein Graph, der eine instabile Wurzelortdarstellung eines Systems der Art, die in Fig. 2 gezeigt ist, zeigt; und
  • Fig. 7 ist ein Graph, der eine stabile Wurzelortdarstellung eines Systems gemäß der Erfindung, wie es in Fig. 3 gezeigt, zeigt.
  • Beschreibung des bevorzugten Ausführungsbeispiels
  • Wie in den Zeichnungen zu Zwecken der Darstellung gezeigt ist, ist die Erfindung in einem neuartigen hybriden Steuersystem für einen Robotermanipulator verkörpert. Ein System gemäß der Erfindung liefert eine stabile, abstimmbare Steuerung des Manipulators. Bestehende hybride Steuersysteme waren nicht in der Lage, außer unter begrenzten Umständen eine stabile Steuerung zu liefern.
  • Bei einem bevorzugten Ausführungsbeispiel eines stabilen hybriden Steuersystems gemäß der Erfindung wird ein Endbetätigungsglied-Verschiebungsfehlersignal mit einer Pseudo-Inversen eines Matrixprodukts einer Auswahlmatrix und einer Jacobimatrix multipliziert, um ein Verschiebungsfehlersignal für ausgewählte Gelenke zu liefern. Der Ausdruck "Auswahlmatrix", wie er hierin verwendet wird, ist dazu bestimmt, eine beliebige Projektionsmatrix einzuschließen, für die die diagonale Auswahlmatrix, wie sie vorher definiert wurde, ein Beispiel ist. Dieses Gelenkverschiebungs-Fehlersignal und ein Gelenkkraft-Fehlersignal werden kombiniert, um ein Steuersignal zu liefern, das bewirkt, daß sich das Endbetätigungsglied in Übereinstimmung mit der gewünschten Verschiebung bewegt und die gewünschte Kraft ausübt.
  • Bei einem weiteren bevorzugten Ausführungsbeispiel der Erfindung wird ein Eingabe-Abstimmsignal mit einer Matrixdifferenz zwischen einer Identitätsmatrix und einem Matrixprodukt einer Pseudo-Inversen der Jacobimatrix und der Jacobimatrix multipliziert, um ein Gelenk-Abstimmungssignal zu liefern.
  • Ein bevorzugtes Ausführungsbeispiel eines hybriden Steuersystems gemäß der Erfindung ist in Fig. 3 gezeigt. Einige der Elemente dieses Systems sind gleich den Elementen des bekannten Systems, das in Fig. 2 gezeigt ist, wobei derartige Elemente zweckmäßigerweise mit den gleichen Bezugszeichen bezeichnet sind.
  • Das System gemäß Fig. 3 weist folgende Merkmale auf: eine Einrichtung, beispielsweise den Summationsknoten 13, zum Liefern eines Endbetätigungsglied-Verschiebungsfehlersignals Xe, das eine beliebige [)ifferenz zwischen einer tatsächlichen Verschiebung xa eines Endbetätigungsglieds des Robotermanipulators 11 und einer gewünschten Verschiebung xd desselben anzeigt; eine Einrichtung 35 zum Berechnen eines Gelenkverschiebungs-Fehlersignals Θes durch Multiplizieren des Endbetätigungsglied-Verschiebungsfehlersignals mit einer Pseudo-Inversen eines Matrixprodukts einer Auswahlmatrix S und einer Jacobimatrix J; eine Einrichtung, beispielsweise den Summationsknoten 15, zum Liefern eines Endbetätigungsglied-Kraftfehlersignals fe, das eine beliebige Differenz zwischen einer tatsächlichen Kraft fa, die durch das Endbetätigungsglied ausgeübt wird, und einer gewünschten Kraft fd, die durch dasselbe ausgeübt werden soll, anzeigt; eine Einrichtung 37 zum Berechnen eines Gelenkkraft-Fehlersignals τes aus dem Endbetätigungsglied-Kraftfehlersignal; und eine Signalsteuereinrichtung, beispielsweise den Summationsknoten 29, die auf das Gelenkverschiebungs-Fehlersignal und das Gelenkkraft-Fehlersignal anspricht, um ein Steuersignal zu liefern, um zu bewirken, daß sich das Endbetätigungsglied in Übereinstimmung mit der gewünschten Verschiebung bewegt und die gewünschte Kraft ausübt.
  • Das System weist vorzugsweise eine Einrichtung zum Berechnen eines Positionskorrektur-Drehmomentsignals τp aus dem Gelenkverschiebungs-Fehlersignal gemäß einem Positionssteuergesetz, wie durch den Funktionsblock 21 angezeigt ist, und eine Einrichtung zum Berechnen eines Kraftkorrektur-Drehmomentsignals τf gemäß einem Kraftsteuergesetz aus dem Gelenkkraft-Fehlersignal, wie durch den Funktionsblock 27 angezeigt ist, auf. Der Summationsknoten 29 kombiniert diese zwei Drehmomentsignale algebraisch, um das Steuersignal zu liefern.
  • Vorzugsweise umfaßt das System eine erste Rückkopplungseinrichtung, wie durch den Funktionsblock 31 angezeigt ist, die auf ein Signal Θa, das die tatsächlichen Verschiebungen der Manipulatorgelenke anzeigt, anspricht, um das Signal der tatsächlichen Endbetätigungsglied-Verschiebung zu liefern, und eine zweite Rückkopplungseinrichtung, die durch den Funktionsblock 33 angezeigt ist, die auf ein Signal fh, das die Kräfte, beispielsweise die an den Manipulatorgelenken, anzeigt, anspricht, um das Signal der tatsächlichen Endbetätigungsglied-Kraft zu liefern.
  • Ein bevorzugtes Ausführungsbeispiel eines abstimmbaren hybriden Steuersystems gemäß der Erfindung ist in Fig. 4 gezeigt. Dieses System ist in einigen Aspekten ähnlich dem System, das in Fig. 3 gezeigt ist, wobei gleichen Elementen zweckmäßigerweise gleiche Bezugszeichen zugewiesen sind, wobei dieselben nicht weiter erläutert werden.
  • Das abstimmbare hybride Steuersystem, wie es in Fig. 4 gezeigt ist, umfaßt eine Einrichtung, beispielsweise ein Paar von Funktionsblöcken 41 und 43, um ein Gelenk-Abstimmsignal zu liefern. Spezieller weist der Funktionsblock 41 eine Einrichtung zum Berechnen einer Verschiebungskomponente des Gelenk-Abstimmsignals durch Multiplizieren eines Eingabeverschiebungs-Abstimmsignals zΘ mit einer Matrixdifferenz zwischen der Identitätsmatrix I und einem Matrixprodukt der Pseudo-Inversen J&spplus; der Jacobimatrix und der Jacobimatrix J auf. Das Eingabesignal zΘ kann durch einen Benutzer geliefert werden, von einem Computer berechnet werden, oder dergleichen.
  • Genauso weist der Funktionsblock 43 eine Einrichtung zum Berechnen einer Kraftkomponente des Gelenk-Abstimmsignals durch Multiplizieren eines Eingabekraft-Abstimmsignals zτ mit der Matrixdifferenz zwischen der Identitätsmatrix und dem Matrixprodukt der Pseudo-Inversen der Jacobimatrix und der Jacobimatrix auf.
  • Ein Summationsknoten 45 kombiniert die Verschiebungskomponente des Gelenk-Abstimmsignals mit dem Gelenkverschiebungs-Fehlersignal, um die Verschiebung des Manipulators abzustimmen. Genauso kombiniert ein Summationsknoten 47 die Kraftkomponente des Gelenk-Abstimmsignals mit dem Gelenkkraft-Fehlersignal, um die Kraft, die durch den Manipulator ausgeübt wird, abzustimmen.
  • Es ist möglich, daß es bei einigen speziellen Systemen nicht erforderlich ist, sowohl die Verschiebung als auch die Kraft abzustimmen. Wenn es beispielsweise erwünscht wäre, nur die Verschiebung des Manipulators abzustimmen, wären der Funktionsblock 43 und der Summationsknoten 47 weggelassen, derart, daß die Kraft, die von dem Manipulator ausgeübt wird, nicht abgestimmt werden würde.
  • Die mathematische Basis für die Erfindung wird nun detaillierter beschrieben.
  • Die Instabilität eines hybriden Steuersystems gemäß dem Stand der Technik basiert auf dem Verschiebungsteil des Systems, wie vorher bezugnehmend auf die Gleichungen (1) bis (4), deren Berechnungen durch die Funktionsblöcke 17 und 19 von Fig. 2 dargestellt sind, erläutert wurde. Diese Gleichungen werden nun zweckmäßigerweise wiederholt:
  • xes = Sxe (1)
  • xe = JΘe (2)
  • Θe = J&supmin;¹xe (3)
  • Θes = J&supmin;¹xes (4)
  • Speziell die Herleitung der Gleichung (4) ist eine nicht korrekte Lösung und führt zu einer Instabilität. Eine fundamentale Voraussetzung, daß die Jacobimatrix J einen maximalen Rang aufweist, wird implizit getroffen, wenn die Inverse J&supmin;¹ derselben in Gleichung (3) verwendet wird, um den Endbetätigungsglied-Verschiebungsfehlervektor xe auf den Gelenkverschiebungs-Fehlervektor Θe abzubilden.
  • Der Verschiebungsfehlervektor, der in dem hybriden Steuersystem interessiert, ist xes, wobei Gleichung (4), die Θes aus xes erhält, annimmt, daß die Gleichungen (1) und (2) zwei unabhängige Abbildungen sind. Tatsächlich ist das Ergebnis, wenn die Gleichungen (1) und (2) kombiniert werden:
  • Sxe = (SJ) Θe. (5)
  • Die Bedeutung dieses Ergebnisses liegt darin, daß S eine Projektionsmatrix ist, die den Raum auf der linken Seite von Gleichung (5) reduziert, wohingegen SJ eine redundante Anzahl von Manipulatorgelenken auf den reduzierten Raum auf der rechten Seite abbildet. Im allgemeinen Fall bedeutet dies, daß es mehr Gelenke gibt, als notwendig sind, um die Verschiebungsbeschränkungen des Endbetätigungsglieds zu erfüllen. Folglich ist die implizite Vorraussetzung (daß J von maximalem Rang ist), die die Verwendung von J&supmin;¹ in Gleichung (3) beinhaltet, im allgemeinen Fall nicht gültig.
  • Das Einsetzen von Gleichung (1) in Gleichung (5) ergibt die korrekte Beziehung zwischen dem Verschiebungsfehler des ausgewählten Endbetätigungsglieds und dem Gelenkverschiebungsfehler wie folgt:
  • xes = (SJ) Θe (6)
  • Es sollte bemerkt werden, daß SJ eine singuläre Matrix ist und keine Inverse besitzt.
  • Die allgemeine Lösung von Gleichung (6) für den ausgewählten Gelenkverschiebungs-Fehlervektor lautet:
  • Θes = (SJ)&spplus;xes + [I - (SJ)&spplus;(SJ)] z (7)
  • wobei
  • (SJ)&spplus; die Pseudo-Inverse von (SJ) ist, und z ein willkürlicher Vektor in dem Manipulatorgelenkraum ist.
  • Die Pseudo-Inverse wird bei Strang, G., Linear Algebra and Its Applications (2. Ausg.), Academic Press, 1980, erläutert. Es sollte offensichtlich sein, daß die ursprüngliche Positionslösung für Θes, wie in Gleichung (4) berechnet, nicht stets das gleiche Ergebnis wie die Lösung der Gleichung (7) erzeugen wird. Die Gleichung (7) wird hierin als die allgemeine Positionslösung für Θes bezeichnet.
  • Um die Beziehung zwischen der allgemeinen Positionslösung für Θes gemäß Gleichung (7) und der Lösung gemäß Gleichung (4) vollständig darzulegen, werden die Eigenschaften von Projektionsmatritzen linearer Systeme verwendet. Diese Eigenschaften sind detaillierter bei Halmos, P.R., Finite-Dimensional Vector Spaces, Springer-Verlag, 1974, erläutert.
  • Der Gelenkverschiebungs-Fehlervektor Θes kann unter Verwendung der (SJ)-Transformationsmatrix aus Gleichung (6) wie folgt in die Summe zweier orthogonaler Vektoren projiziert werden:
  • Θes= (SJ)&spplus;(SJ)Θes + [I - (SJ)&spplus;(SJ)] Θes. (8)
  • wobei (SJ)&spplus;(SJ) und [I - (SJ)&spplus;(SJ)] die Gelenkraum-Projektionsmatritzen für das System sind.
  • Das Einsetzen der Lösung von Θes von Gleichung (4) in Gleichung (8) ergibt:
  • J&supmin;¹xes = (SJ)&spplus;(SJ) J&supmin;¹xes + [I - (SJ)&spplus;(SJ)]J&supmin;¹xes (9)
  • der projizierte Vektor (SJ)&spplus;(SJ)J&supmin;¹xes kann unter Verwendung der Beziehungen
  • J J&supmin;¹ = I
  • und
  • Sxes = xes
  • vereinfacht werden, um
  • J&supmin;¹xes = (SJ)&spplus;xes + [I - (SJ)&spplus;(SJ)] J&supmin;¹ xes (10)
  • zu erhalten.
  • Es ist wichtig, zu bemerken, daß der erste Projektionsterm in Gleichung (10) der minimale Normlösungsteil der allgemeinen Form von Θes gemäß Gleichung (7) ist. Die Gleichung (10) zeigt explizit, daß der herkömmliche Lösungsansatz des Verwendens der Inversen der Jacobimatrix, um mittels Gleichung (4) nach Θes aufzulösen, nachteilig einen orthogonalen Vektor [I - (SJ)&spplus;(SJ)] J&supmin;¹xes zu der minimalen Normlösung hinzufügen wird. Damit sich die allgemeine Positionslösung gemäß Gleichung (7) wie die Lösung, die durch Gleichung (4) gegeben ist, verhält, seien die orthogonalen Projektionsglieder in den Gleichungen (10) und (7) verglichen, um unmittelbar zu sehen, daß eine offensichtliche Wahl für den willkürlichen Vektor z lauten würde:
  • z = J&supmin;¹xes (11)
  • Die kinematische Instabilität eines bekannten hybriden Steuersystems wird durch die Projektion von z gemäß Gleichung (11) auf den Nullraum von (SJ) bewirkt.
  • Es könnte argumentiert werden, daß der orthogonale Vektor [I -(SJ)&spplus;(SJ)]z in Gleichung (7) der Lösung von Θes eine Flexibilität hinzufügt, und verwendet werden könnte, um Θes basierend auf bestimmten gewünschten Kriterien zu optimieren (z.B. um die Gelenkenergie zu minimieren, oder die Gelenke in der Mitte ihres Betriebsbereichs zu halten). Es ist wichtig, daran zu denken, daß die allgemeine Positionslösung von Gleichung (7) hergeleitet wurde, ohne den Rest des hybriden Steuerschemas zu berücksichtigen. Der Beitrag des orthogonalen Vektors stammt von dem Gelenkraum, der für die minimale Normlösung nicht verfügbar ist, welche der Raum ist, der möglicherweise von dem Kraftsteuerteil des Ansatzes verwendet wird. Um beliebige Konflikte mit dem Kraftteil des hybriden Steuerschemas zu vermeiden, wird vorausgesetzt, daß der willkürliche Vektor z Null ist, derart, daß sich Gleichung (7) auf die folgende minimale Normlösung reduziert:
  • Θes = (SJ)&spplus;xes (12)
  • Diese minimale Normlösung garantiert, daß die lineare Transformation von dem Verschiebungsvektor xes des ausgewählten Endbetätigungsglied zu dem Gelenkverschiebungs-Fehlervektor Θes niemals einen Vektor erzeugt, der in die entgegengesetzte Richtung zu dem Gelenkfehlervektor Θe betrachtet würde, wenn S = I, und der niemals eine Erhöhung der Gelenkfehler- Vektornorm bewirken würde. Folglich wird das System stets kinematisch stabil sein, wie später gezeigt wird.
  • Diese minimale Normlösung für Θes gemäß Gleichung (12) ist bei dem ersten Ausführungsbeispiel der Erfindung implementiert, das oben beschrieben und in Fig. 3 dargestellt ist. Es sei bemerkt, daß die Transformation von xe zu xes gemäß Gleichung (1) in Fig. 3 nicht gezeigt ist. Wie bei Noble, B., "Methods for Computing the Moore-Penrose Generalized Inverse, and Related Matters," Generalized Inverses and Applications (M. Z. Nashed, ed.), Academic Press, 1976, Seiten 245 - 302, beschrieben ist, kann gezeigt werden, daß sowohl (SJ)&spplus;S als auch (SJ)&spplus; den vier Moore-Penrose-Eigenschaften einer Pseudo-Inversen genügen. Da die Pseudo-Inverse einer Matrix eindeutig ist, folgt:
  • (SJ)&spplus;S = (SJ)&spplus;
  • Folglich folgt aus Gleichung (12):
  • Θes = (SJ)&spplus;xes = (SJ)&spplus;Sxe = (SJ)&spplus;xe
  • Es sei ferner bemerkt, daß die Funktionsblöcke 23 und 25 von Fig. 2 durch den Funktionsblock 37 in Fig. 3 ersetzt wurden. Der Block 37 ist äquivalent zu den Blöcken 23 und 25, wobei die Änderung nur durchgeführt wurde, um eine Symmetrie in der Zeichnung beizubehalten. Die zwei Blöcke 23 und 25, die die Matrixtransformationen zur Abbildung der Endbetätigungsgliedkräfte auf Gelenkdrehmomente darstellen, wurden mittels Standardmatrixalgebra-Operationen in den einen äquivalenten Block 37 kombiniert, wie in Fig. 3 gezeigt ist.
  • Eine hinreichende Bedingung für eine Systemstabilität unter Verwendung ausschließlich der kinematischen Informationen wird nun erörtert. Die Stabilität eines Systems ist durch die Wechselwirkung unter der Kinematik, der Dynamik und des Steuergesetzes bestimmt. Das kritische Ergebnis ist, wie die Auswahlmatrix die Systemstabilität beeinflußt. Es wird angenommen, daß das System stabil ist, wenn eine reine Positionssteuerung (d.h., daß S = I) stattfindet, derart, daß die Θe's, die unter diesen normalen Bedingungen den xe's entsprechen, keine Systeminstabilitäten erzeugen. Der Zweck der Auswahlmatrix besteht nicht darin, ein von Natur aus instabiles System zu stabilisieren oder zu bewirken, daß ein von Natur aus stabiles System instabil wird. Das Ergebnis ist dann eines des Vergleichs zwischen dem Gelenkverschiebungs-Fehlervektor Θes, wie er für eine beliebige willkürliche Auswahlmatrix S berechnet wurde, und einem stabilen Gelenkverschiebungs-Fehlervektor Θe, der unter Bedingungen einer reinen Positionssteuerung, bei der S = I, berechnet worden wäre. Dies geschieht durch das Definieren der folgenden hinreichenden Bedingung für eine Systemstabilität unter der Verwendung innerer Produkte der Gelenkfehlervektoren als
  • 0 ≤ ΘeTΘes ≤ ΘeTΘe, Θe (13)
  • wobei "für alle" bedeutet.
  • Es ist wichtig, zu bemerken, daß sowohl Θe als auch Θes unter Verwendung des gleichen Endbetätigungsglied-Verschiebungsfehlervektors xe berechnet werden, wodurch eine beliebige Lösung für Θes stets auf Θe bezogen ist. Die untere Grenze in der Ungleichung (13) bedeutet, daß die Projektion von Θes auf Θe nicht in die entgegengesetzte Richtung von Θe stattfinden kann, wodurch alle möglicherweise instabilen Bedingungen der Einführung einer positiven Rückkopplung in das System beseitigt werden. Die obere Grenze in der Ungleichung (13) bedeutet, daß die Projektion von Θes auf Θe nicht größer als Θe sein kann, derart, daß das Endbetätigungsglied nicht über seine Bestimmungen hinausschießt und nicht steuerbare Systemschwingungen bewirkt. Das System kann noch stabil sein, wenn der Wert von ΘeTΘes außerhalb der Grenzen der Ungleichung (13) liegt; eine Bestimmung, wie weit außerhalb der Grenzen dieser Wert liegen kann, bevor das System instabil wird, ist nicht einfach, wobei ins Gedächtnis gerufen werden muß, daß die Ungleichung (13) nur eine hinreichende, keine notwendige, Bedingung für eine Systemstabilität ist.
  • Um die Beziehung zwischen Θe und Θes für das Ausführungsbeispiel, das in Fig. 3 gezeigt ist, zu bestimmen, werden die Gleichungen (12) und (6) kombiniert, um zu erhalten:
  • Θes = (SJ)&spplus;(SJ)Θe (14)
  • (SJ)&spplus;(SJ) ist eine Projektionsmatrix (siehe Halmos) und genügt daher der Definition einer positiven semidefiniten Matrix (siehe Strang), weshalb der folgende quadratische Ausdruck
  • ΘeT(SJ)&spplus;(SJ) Θe ≥ 0 (15)
  • für alle Vektoren Θe wahr ist. Wenn Θes in Gleichung (14) in die Ungleichung (13) eingesetzt wird, ist das innere Produkt exakt die Ungleichung (15), weshalb die Minimalnormlösung für Θes stets der unteren Grenze der Ungleichung (13) genügen wird.
  • Eine weitere Eigenschaft einer Projektionsmatrix besteht darin, daß die Norm eines projizierten Vektors durch die Norm des ursprünglichen Vektors begrenzt ist. Dies bedeutet, daß die Norm von Θes, die durch Gleichung (14) gegeben ist, begrenzt ist durch
  • (SJ)&spplus;(SJ) Θe ≤ Θe , (16)
  • weshalb die obere Grenze in der Ungleichung (13) für alle Θe erfüllt ist, wenn die Minimalnormlösung für Θes verwendet wird. Dies beweist, daß die Minimalnormlösung für Θes in Gleichung (12) stets der hinreichenden Bedingung für eine Systemstabilität, die in der Ungleichung (13) definiert ist, genügt.
  • Bei dem bekannten hybriden Steuersystem, das in Fig. 2 gezeigt ist, wird die Beziehung zwischen Θe und Θes einfach durch Kombinieren der Gleichungen (1), (2) und (4) bestimmt, um zu erhalten:
  • Θes = (J&supmin;¹ SJ) Θe (17)
  • An, C. J. and J.M. Hollerbach, "Kinematic Stability Issues in Force Control of Manipulators," International Conference on Robotics and Automation, IEEE Robotics and Automation Society, Raleigh, N.C., Seiten 897-903, April 1987, zeigen mittels eines Beispiels, daß der Positionsteil des Systems instabil werden könnte, und daß die Ursache dafür sich irgendwie auf die Wechselwirkung zwischen der kinematischen Transformationsmatrix J&supmin;¹SJ und der Systemträgheitsmatrix bezieht. An u.a. verwendeten ein lineares Zustandsraummodell des Positionsteils des Systems, um auf die Instabilität zu testen, indem eine Wurzelortdarstellung sich ändernder Manipulatorkonfigurationen durchgeführt wurde. Tatsächlich ist es der Term J&supmin;¹SJ, der bewirkt, daß die Systempole für verschiedene Endbetätigungsglied-Bewegungen in die instabile rechte Halbebene wandern.
  • Unter Verwendung des gleichen Beispiels wird gezeigt, daß der Term J&supmin;¹SJ für das Bewirken eines instabilen Systems verantwortlich ist, wenn der Test für eine hinreichende Bedingung in der Ungleichung (13) angewendet wird. Im "Fall 2" von An u.a., ist S = diag[0, 1] und die Jacobimatrix für die zwei Drehgelenkmanipulatoren war gegeben als
  • wobei
  • si = sin(Θi),
  • ci = cos(Θi),
  • s&sub1;&sub2; = sin(Θ&sub1;+Θ&sub2;) und
  • c&sub1;&sub2; = cos(Θ&sub1;+Θ&sub2;).
  • Die Längen der Verbindungsglieder waren:
  • l&sub1; = 0,462 m und
  • l&sub2; = 0,4445 m.
  • Das innere Produkt von Θe mit Θes unter Verwendung der Gleichung (17) ist ΘeT (J&supmin;¹SJ) Θe. Um dieses innere Produkt gegen die Grenzen, die durch die hinreichende Bedingung der Ungleichung (13) festgelegt sind, zu testen, betrachten wir die Situation, in der Θ&sub1; = 0º und Θ&sub2; sich von -180º bis 180º verändert, wobei
  • Θe = [0, ±1]T
  • Eine Darstellung des Ergebnisses ist durch eine durchgezogene Linie 51 in Fig. 5 gezeigt.
  • Zum Vergleich ist eine Darstellung des inneren Produkts unter Verwendung der Minimalnormlösung für Θes gemäß der Erfindung durch eine gestrichelte Linie 53 in Fig. 5 gezeigt. Wie Fig. 5 zeigt, verletzt die bekannte Lösung für Θes die hinreichende Bedingung für eine Systemstabilität, wenn
  • Θ&sub2; ≤ 90º
  • wohingegen die Lösung für Θes gemäß der Erfindung stets stabil ist.
  • Ein Punkt 55, der mit einem "x" in Fig. 5 markiert ist, wurde von An u.a. als anzeigend für einen Wert von Θ&sub2; gekennzeichnet, bei dem das System tatsächlich von der stabilen Region in die instabile Region übergeht, wobei das System tatsächlich nur für Werte von Θ&sub2; instabil ist, die kleiner als der Wert x sind. Obwohl das innere Produkt für Werte von Θ&sub2; von x bis 90º negativ ist, ist das System für solche Werte von Θ&sub2; noch stabil. Es sei in Erinnerung gerufen, daß die hinreichende Bedingung in der Ungleichung (13) nicht impliziert, daß das System für Werte außerhalb der genannten Grenzen instabil sein wird; sie zeigt nur an, daß eine instabile Situation auftreten könnte.
  • Gemäß An u.a. muß ein System mit geschlossener Schleife, das als
  • beschrieben ist, negative Realteile für die Eigenwerte der Matrix aufweisen, um eine lokale Stabilität an den Gleichgewichtspunkten zu garantieren. Die Trägheitsmatrix lautete:
  • wobei
  • Die Trägheitswerte waren:
  • I&sub1; = 8.095 kg m² und
  • I&sub2; = 0.253 kg m².
  • Die Massenwerte waren:
  • m&sub1; = 120.1 kg und
  • m&sub2; = 2.104 kg.
  • Um ein stabiles System unter normalen Bedingungen beizubehalten, wurden die Verstärkungsmatritzen wie folgt gewählt:
  • Kp = diag [2500, 400] und
  • Kv = diag [300, 30].
  • Eine Wurzelortdarstellung von Gleichung (19) mit Θ&sub1; = 0º und einem veränderlichen Θ&sub2; von -180º bis 180º ist in Fig. 6 gezeigt. Die Singularitätspunkte wurden entfernt. Der Übergang der Systempole in die instabile rechte Halbebene tritt bei näherungsweise Θ&sub2; = 79º auf. Diese Wurzelortdarstellung bekräftigt die Behauptung, daß die Berechnung von Θes gemäß dem Stand der Technik bewirken kann, daß das System instabil wird, wenn die hinreichende Bedingung der Ungleichung (13) negativ ist.
  • Zum Vergleich ist eine ähnliche Wurzelortdarstellung von Gleichung (19) in Fig. 7 gezeigt, wobei der Ausdruck J&supmin;¹ SJ durch (SJ)&spplus;(SJ) aus Gleichung (14) ersetzt ist. Es gibt für keinen Wert von Θ&sub2; Wurzeln in der instabilen rechten Halbebene.
  • Die mathematische Basis für das abgestimmte hybride Steuersystem gemäß Fig. 4 wird nun erörtert. Bei dem Ausführungsbeispiel von Fig. 4 sind Maßnahmen zum Abstimmen sowohl des Verschiebungs- als auch des Kraft-Steuerabschnitts des Systems getroffen. Jedoch kann es, wie vorher erläutert wurde, bei einigen Ausführungsbeispielen erwünscht sein, nur einen Abschnitt des Systems abzustimmen. Folglich sollte es offensichtlich sein, daß einige Systeme Maßnahmen zum Abstimmen entweder nur des Verschiebungs- oder nur des Kraft-Abschnitts aufweisen können, und nicht beide.
  • Bei dem System, das in Fig. 4 gezeigt ist, wird die Lösung für Θes, die in dem Block 35 verkörpert und mathematisch als Θes = (SJ)&spplus;xe (20)
  • ausgedrückt ist, in dem Summationsknoten 45 mit einem zusätzlichen Term von dem Nullraum von J kombiniert, woraus folgt:
  • Θes = (SJ)&spplus;xe + [I - J&spplus;J] zΘ (21)
  • wobei zΘ, der Gelenkverschiebungs-Abstimmvektor, ein Vektor in dem Manipulator-Gelenkraum ist. Diese verallgemeinerte Form des Gelenkverschiebungs-Fehlervektors Θes ermöglicht eine wunschgemäße Abstimmung der Verschiebungen der verschiedenen Gelenke, um beispielsweise Hindernissen auszuweichen.
  • Genauso wird die Lösung für τes, die im Block 37 verkörpert und mathematisch als
  • τes = (S J)Tfe (22)
  • ausgedrückt ist, mit einem zusätzlichen Term aus dem Nullraum von J kombiniert, woraus folgt:
  • τes = (S J)Tfe + [I - J&spplus;J] zτ (23)
  • wobei zτ der Gelenkkraft-Abstimmvektor, ein Vektor in dem Manipulator-Gelenkraum ist. Diese verallgemeinerte Form des Gelenkkraft-Fehlervektors τes ermöglicht eine Umverteilung der Gelenkdrehmomente basierend auf Gelenkfähigkeiten.
  • Das System, das in Fig. 4 gezeigt ist, berücksichtigt direkt die zusätzliche Flexibilität redundanter Gelenke in dem Steuerschema und beseitigt den Bedarf danach, jemals die Inverse der Jacobimatrix zu verwenden. Die Transformationen (SJ)&spplus; und (S J)T existieren stets und sind für jeden Manipulator numerisch stabil. Selbstverständlich ist es offensichtlich, daß ein spezialisiertes hybrides Steuersystem, das diese Transformationen nicht verwendet, von dem aber herausgefunden wurde, daß es stabil ist, ebenfalls gemäß den Grundsätzen der Erfindung abgestimmt werden könnte, um ein verbessertes, abstimmbares Steuersystem zu liefern.
  • Aus dem Vorhergehenden wird offensichtlich, daß das hybride Steuersystem, das durch die vorliegende Erfindung geschaffen wird, in der Technik einen wesentlichen Fortschritt darstellt. Die vorliegende Erfindung liefert eine Möglichkeit, einen Robotermanipulator mit einer sichergestellten Stabihtät zu steuern. Außerdem kann das System wie gewünscht abgestimmt werden, beispielsweise um einem Hindernis auszuweichen.

Claims (8)

1. Ein hybrides Steuersystem zum Steuern der Verschiebung und der Kraft eines Manipulators mit folgenden Merkmalen:
einer Einrichtung (13) zum Liefern eines Endbetätigungsglied-Verschiebungsfehlersignals, das jeglichen Unterschied zwischen einer tatsächlichen Verschiebung eines Endbetätigungsglieds eines Robotermanipulators (11) und einer gewünschten Verschiebung desselben anzeigt;
einer Einrichtung (35) zum Berechnen eines Verschiebungsfehlersignals für ein ausgewähltes Gelenk, wobei die Einrichtung (35) zum Berechnen eine Einrichtung zum Multiplizieren des Endbetätigungsglied-Verschiebungsfehlersignals mit einer Pseudo-Inversen eines Matrixprodukts einer Auswahlmatrix und einer Jacobimatrix aufweist;
einer Einrichtung (15) zum Liefern eines Endbetätigungsglied-Kraftfehlersignals, das einen beliebigen Unterschied zwischen einer tatsächlichen Kraft, die von dem Endbetätigungsglied ausgeübt wird, und einer gewünschten Kraft, die von demselben ausgeübt werden soll, anzeigt;
einer Einrichtung (37) zum Berechnen eines Kraftfehlersignals für ein ausgewähltes Gelenk aus dem Endbetätigungsglied-Kraftfehlersignal; und
einee Steuersignaleinrichtung (29), die auf das Gelenkverschiebungs-Fehlersignal und das Gelenkkraft-Fehlersignal anspricht, um ein Steuersignal zu liefern, um zu bewirken, daß sich das Endbetätigungsglied in Übereinstimmung mit der gewünschten Verschiebung bewegt und die gewünschte Kraft ausübt.
2. Ein Steuersystem gemäß Anspruch 1, das ferner eine Einrichtung (41, 43) zum Liefern eines Gelenk-Abstimmsignals zu der Steuersignaleinrichtung (29) aufweist, wobei die Steuersignaleinrichtung auf das Gelenk-Abstimmsignal anspricht, um das Steuersignal zu liefern.
3. Ein Steuersystem gemäß Anspruch 2, bei dem die Einrichtung zum Liefern des Gelenk-Abstimmsignals eine Einrichtung (41) zum Berechnen einer Verschiebungskomponente des Abstimmsignals durch Multiplizieren eines Eingabeverschiebungs-Abstimmsignals mit einer Matrixdifferenz zwischen einer Identitätsmatrix und einem Matrixprodukt einer Pseudo-Inversen einer Jacobimatrix und der Jacobimatrix aufweist.
4. Ein Steuersystem gemäß Anspruch 2 oder 3, bei dem die Einrichtung zum Liefern des Gelenk-Abstimmsignals eine Einrichtung (43) zum Berechnen einer Kraftkomponente des Abstimmsignals durch Multiplizieren eines Eingabekraft-Abstimmsignals mit einer Matrixdifferenz zwischen einer Identitätsmatrix und einem Matrixprodukt einer Pseudo-Inversen der Jacobimatrix und der Jacobimatrix aufweist.
5. Ein Verfahren zum Steuern der Verschiebung und der Kraft eines Manipulators mit folgenden Schritten:
Liefern eines Endbetätigungsglied-Verschiebungsfehlersignals, das jegliche Differenz zwischen einer tatsächlichen Verschiebung eines Endbetätigungsglieds eines Robotermanipulators (11) und einer gewünschten Verschiebung desselben anzeigt;
Berechnen eines Verschiebungsfehlersignals für ein ausgewähltes Gelenk aus dem Endbetätigungsglied-Verschiebungsfehlersignal, wobei der Schritt des Berechnens des Verschiebungsfehlersignals für das ausgewählte Gelenk den Schritt des Multiplizierens des Endbetätigungsglied-Verschiebungsfehlersignals mit einer Pseudo-Inversen eines Matrixprodukts einer ersten Auswahlmatrix und einer Jacobimatrix aufweist;
Liefern eines Endbetätigungsglied-Kraftfehlersignals, das eine beliebige Differenz zwischen einer tatsächlichen Kraft, die durch das Endbetätigungsglied ausgeübt wird, und einer gewünschten Kraft, die durch dasselbe ausgeübt werden soll, anzeigt;
Berechnen eines Kraftfehlersignals für ein ausgewähltes Gelenk aus dem Endbetätigungsglied-Kraftfehlersignal; und
Liefern eines Steuersignals, um zu bewirken, daß sich das Endbetätigungsglied als Reaktion auf das Gelenkverschiebungs-Fehlersignal und das Gelenkkraft-Fehlersignal in Übereinstimmung mit der gewünschten Verschiebung bewegt und die gewünschte Kraft ausübt.
6. Ein Verfahren gemäß Anspruch 5, das ferner vor dem Schritt des Lieferns eines Steuersignals den Schritt des Lieferns eines Gelenk-Abstimmsignals aufweist, das in dem Schritt des Lieferns des Steuersignals verwendet werden soll.
7. Ein Verfahren gemäß Anspruch 6, bei dem Schritt des Lieferns des Gelenk-Abstimmsignals das Berechnen einer Verschiebungskomponente des Abstimmsignals durch Multiplizieren eines Eingabeverschiebungs-Abstimmsignals mit einem Matrixdifferenz zwischen einer Identitätsmatrix und einem Matrixprodukt einer Pseudo-Inversen einer Jacobimatrix und der Jacobimatrix aufweist.
8. Ein Verfahren gemäß Anspruch 6 oder 7, bei dem der Schritt des Lieferns des Gelenk-Abstimmsignals das Berechnen einer Kraftkomponente des Abstimmsignals durch Multiplizieren eines Eingabekraft-Abstimmsignals mit einer Matrixdifferenz zwischen einer Identitätsmatrix und einem Matrixprodukt einer Pseudo-Inversen der Jacobimatrix und der Jacobimatrix aufweist.
DE1992607627 1991-04-09 1992-03-23 Hybrides Lage- und Kraftregelsystem Expired - Fee Related DE69207627T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US68227891A 1991-04-09 1991-04-09
US77158391A 1991-10-04 1991-10-04

Publications (2)

Publication Number Publication Date
DE69207627D1 DE69207627D1 (de) 1996-02-29
DE69207627T2 true DE69207627T2 (de) 1996-05-30

Family

ID=27102858

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1992607627 Expired - Fee Related DE69207627T2 (de) 1991-04-09 1992-03-23 Hybrides Lage- und Kraftregelsystem

Country Status (3)

Country Link
EP (1) EP0508205B1 (de)
JP (1) JP3296585B2 (de)
DE (1) DE69207627T2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018210864B3 (de) 2018-07-02 2019-07-18 Kuka Deutschland Gmbh Verfahren und System zum Regeln eines Roboters

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995007793A2 (en) * 1993-09-13 1995-03-23 United Technologies Corporation Force and position controlled manipulator
JPH07197485A (ja) * 1993-12-28 1995-08-01 Komatsu Ltd 建設機械の作業機制御装置
SE9400579L (sv) * 1994-02-21 1995-08-22 Asea Brown Boveri Förfarande för att styra en industrirobots rörelse i och i närheten av singulariteter
JP2009066685A (ja) 2007-09-11 2009-04-02 Sony Corp ロボット装置及びロボット装置の制御方法
CN107635472A (zh) 2015-06-19 2018-01-26 神经系统分析公司 经颅多普勒探测器
US11090026B2 (en) 2016-01-05 2021-08-17 Novasignal Corp. Systems and methods for determining clinical indications
JP2019503220A (ja) * 2016-01-05 2019-02-07 ニューラル アナリティクス、インコーポレイテッド 超音波プローブ制御のためのロボットシステム
US11589836B2 (en) 2016-01-05 2023-02-28 Novasignal Corp. Systems and methods for detecting neurological conditions
CN108778141A (zh) 2016-01-05 2018-11-09 神经系统分析公司 集成化探针结构
CN114131617B (zh) * 2021-12-30 2024-03-19 华中科技大学 一种工业机器人的智能柔顺控制方法和装置
CN114888793B (zh) * 2022-04-21 2023-08-04 同济大学 一种多臂双光束激光焊接机器人双层协同控制方法
CN114888813B (zh) * 2022-06-21 2023-08-04 广州大学 机械臂位置力混合控制方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5988279A (ja) * 1982-10-15 1984-05-22 新明和工業株式会社 多関節ロボットの座標変換方法およびそのための装置
US4621332A (en) * 1983-06-20 1986-11-04 Hitachi, Ltd. Method and apparatus for controlling a robot utilizing force, position, velocity, spring constant, mass coefficient, and viscosity coefficient
US4826392A (en) * 1986-03-31 1989-05-02 California Institute Of Technology Method and apparatus for hybrid position/force control of multi-arm cooperating robots
US4860215A (en) * 1987-04-06 1989-08-22 California Institute Of Technology Method and apparatus for adaptive force and position control of manipulators
US4782258A (en) * 1987-10-28 1988-11-01 Westinghouse Electric Corp. Hybrid electro-pneumatic robot joint actuator

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018210864B3 (de) 2018-07-02 2019-07-18 Kuka Deutschland Gmbh Verfahren und System zum Regeln eines Roboters

Also Published As

Publication number Publication date
EP0508205B1 (de) 1996-01-17
JP3296585B2 (ja) 2002-07-02
JPH05143161A (ja) 1993-06-11
DE69207627D1 (de) 1996-02-29
EP0508205A3 (en) 1993-06-23
EP0508205A2 (de) 1992-10-14

Similar Documents

Publication Publication Date Title
DE69207627T2 (de) Hybrides Lage- und Kraftregelsystem
DE3881903T2 (de) Nichtlineare Steureungseinheit für einen Manipulator mit mehreren Freiheitsgraden.
DE60129009T2 (de) Bewegungskorrektur eines industrieroboters
DE3344633C2 (de)
US5276390A (en) System for hybrid position and force control
DE102009058004B4 (de) Impedanzsteuerung im Betriebsraum mit mehreren Prioritäten
DE3887062T2 (de) Servosteuerung.
DE69024854T2 (de) Verfahren zur Steuerung von Roboterbewegungen
DE112016004725T5 (de) Verfahren zum Teach-ln eines Roboters und Roboterarmsteuervorrichtung
DE3786860T2 (de) Regelvorrichtung für einen roboter.
EP2954986A1 (de) Vorrichtung und Verfahren zum Steuern und Regeln eines Mehrkörpersystems
EP0167080B1 (de) Rechnersteuerung für einen Mehrachsen-Industrieroboter
DE68922684T2 (de) Profilsteuersystem für eine gegebene gekrümmte Fläche.
DE102011011681A1 (de) Roboter mit einer Lernsteuerfunktion
DE112017003961B4 (de) Steuerung für Parallelverbindungsmechanismus
DE112017008009B4 (de) Servosteuerungsvorrichtung
DE102020120116B4 (de) Verfahren zur impedanzbasierten Multi-Tasking Tracking-Regelung, impedanzbasierter Multi-Tasking Tracking-Regler und kraft- und/oder drehmomentgeregelter Roboter
DE102018133349A1 (de) Verfahren und Vorrichtung zur Momentschätzung
DE102018214257B3 (de) Roboterregelung
EP1920892A2 (de) Robotersteuerung, Roboter und Verfahren zum Steuern eines Roboters
DE10143753A1 (de) Kalibrierverfahren für einen Roboterarm
EP0184075B1 (de) Einrichtung und Verfahren zum Regeln eines Industrieroboters
DE10297057T5 (de) Verfahren zur thermischen Optimierung
DE112004002552T5 (de) Steuereinrichtung für einen Roboter
DE102016226174B4 (de) Nichtlinearer Schwingungsmechanismus

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: AGILENT TECHNOLOGIES, INC. (N.D.GES.D.STAATES DELA

8339 Ceased/non-payment of the annual fee