DE102015109646B4 - Planen des Greifens eines Roboters in Echtzeit - Google Patents

Planen des Greifens eines Roboters in Echtzeit Download PDF

Info

Publication number
DE102015109646B4
DE102015109646B4 DE102015109646.3A DE102015109646A DE102015109646B4 DE 102015109646 B4 DE102015109646 B4 DE 102015109646B4 DE 102015109646 A DE102015109646 A DE 102015109646A DE 102015109646 B4 DE102015109646 B4 DE 102015109646B4
Authority
DE
Germany
Prior art keywords
gripping
task
pose
controller
twist
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
DE102015109646.3A
Other languages
English (en)
Other versions
DE102015109646A1 (de
Inventor
Jianying Shi
Gurdayal Singh Koonjul
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.)
GM Global Technology Operations LLC
Original Assignee
GM Global Technology Operations LLC
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 GM Global Technology Operations LLC filed Critical GM Global Technology Operations LLC
Publication of DE102015109646A1 publication Critical patent/DE102015109646A1/de
Application granted granted Critical
Publication of DE102015109646B4 publication Critical patent/DE102015109646B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1669Programme controls characterised by programming, planning systems for manipulators characterised by special application, e.g. multi-arm co-operation, assembly, grasping
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39536Planning of hand motion, grasping

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)

Abstract

Ein Verfahren zum Bestimmen einer optimalen Greifpose eines Objekts durch ein Greiforgan eines Roboters beim Ausführen einer Aufgabe umfasst, dass ein Satz von Eingaben mit Hilfe eines Controllers empfangen wird, der einen deskriptiven Parameter des Objekts, eine Aufgabenverwindung mit einem Referenzrahmen und eine befohlene Greiforgan-Greifkraft umfasst. Das Verfahren umfasst, dass eine Greifverwindung in dem Referenzrahmen der Aufgabenverwindung berechnet wird, dass die Greifpose gedreht und verschoben wird, und dass dann eine resultierende neue Greifverwindung mit Hilfe des Controllers berechnet wird, bis die Aufgabenverwindung und die Greifverwindung optimal ausgeglichen sind. Zusätzlich umfasst das Verfahren, dass die optimale Greifpose als diejenige Greifpose aufgezeichnet wird, bei welcher die Greifverwindung und die Aufgabenverwindung optimal ausgeglichen sind, und dass dann mit Hilfe des Controllers unter Verwendung der aufgezeichneten optimalen Greifpose eine Steuerungsaktion ausgeführt wird. Ein Robotersystem enthält den Roboter und einen Controller, der programmiert ist, um das Verfahren auszuführen.

Description

  • TECHNICHES GEBIET
  • Die vorliegende Offenbarung betrifft das Planen des Greifens eines Roboters in Echtzeit.
  • HINTERGRUND
  • Robotergreiforgane wirken beim Ausführen einer Arbeitsaufgabe direkt auf ein Objekt ein. Beispielhafte Greiforgane umfassen Robotergreifer oder Hände. Ein derartiges Greiforgan kann beispielsweise verwendet werden, um ein Objekt in einem gegebenen Aufgabenraum zu ergreifen und zu manipulieren. Die Entwurfskomplexität eines typischen Greiforgans kann relativ einfach sein, etwa in dem Fall eines zweifingrigen parallelen Greifers, oder hochgradig fortgeschritten, etwa bei einer fünffingrigen fingerfertigen anthropomorphen Roboterhand. Zwischen diesen Komplexitätsextremen liegen andere Greiferkonstruktionen, etwa dreifingrige oder vierfingrige Hände sowie eine große Anzahl anderer Greiforgankonstruktionen.
  • Mit Robotergreifern verbundene Aufgaben variieren mit der Greiferkonstruktion, der geometrischen Komplexität des Objekts, das ergriffen wird, und mit dem Vorhandensein von Hindernissen oder anderen Beschränkungen durch die Umgebung. Das Planen des Greifens für eine gegebene Greifpose umfasst herkömmlich ein umfangreiches Programmieren eines Controllers mit vordefinierten Greiforgan-Pfadtrajektorien. Innerhalb dieser vordefinierten Trajektorien können die Position und die Geschwindigkeit des Greiforgans in einem Regelkreis kontinuierlich gemessen und gesteuert werden, während sich das Greiforgan zu einer spezifizierten Zielposition hin bewegt. Alternativ kann in einem Prozess, der als Teachen durch Demonstration bezeichnet wird, ein menschlicher Bediener eine demonstrierte Bewegung und Greifpose für den Roboter manuell rückwärts verfahren und/oder automatisch befehlen, indem er das Greiforgan physikalisch durch eine vorbestimmte Bewegung bewegt.
  • Die Druckschrift EP 0 671 246 A2 offenbart ein Robotersystem mit einem ortsfesten Werkzeug und einem geführten Werkstück, das ein greiferbezogenes Handverfahren verwendet, bei dem der Drehpunkt bei Orientierungsänderungen des Werkstücks immer im Ursprung eines Basiskoordinatensystems liegt.
  • In der Druckschrift DE 198 16 953 A1 ist eine Anordnung zum Erzeugen von Schwenkbewegungen an Abtriebselementen offenbart, die ein flexibles, folienartiges Element aufweist, an dem mindestens ein Abtriebselement angeordnet ist. Durch Aufbringen einer Kraft auf das folienartige Element wird dieses verformt und dadurch das mindestens eine Abtriebselement verschwenkt.
  • Die Druckschrift DE 10 2009 017 104 A1 offenbart ein Verfahren und ein System zur Kraftrückkopplung zum Interagieren eines Benutzers mit einer virtualisierten Umgebung, bei denen ein Gegenstand mit einer verformbaren Gestalt verwendet wird, dessen Kraftrückkopplung mittels eines Computermodells des Gegenstandes ermittelt wird.
  • In der Druckschrift DE 10 2010 018 440 A1 ist ein hierarchisches Robotersystem zum Steuern ausgewählter Freiheitsgrade eines Objekts unter Verwendung mehrerer Manipulatoren offenbart, bei dem bei jedem Grifftyp automatisch die internen Kräfte parametrisiert werden.
  • Die Druckschrift DE 10 2006 036 490 A1 offenbart ein Verfahren und eine Vorrichtung zum Steuern eines Handhabungsgeräts, bei denen virtuelle Abbilder des Handhabungsgeräts und eines Werkstücks entsprechend einer vorgegebenen Sollposition so bewegt werden, dass die Bewegung eine Kinematikbeschreibung einhält. Das reale Handhabungsgerät und das Werkstück werden entsprechend der Bewegung des Abbilds bewegt.
  • In der Druckschrift DE 10 2006 005 344 A1 ist ein Verfahren zur Simulation eines Montagevorgangs zur Montage eines Anbauteils an ein Fertigungsobjekt mit Hilfe eines Handhabungsautomaten offenbart, bei dem Konstruktionsmodelle des Anbauteils und des Fertigungsobjekts und ein Kinematikmodell des Handhabungsautomaten vorgegeben werden. Das Simulationsverfahren werden Relativpositionen von Anbauteil und Fertigungsobjekt zueinander und Positionskorrekturen berechnet, aus denen eine Bewegung des Anbauteil-Konstruktionsmodells und des Kinematikmodells berechnet wird.
  • Die Aufgabe der Erfindung besteht darin, eine optimale Greifpose, mit der ein Greiforgan eines Roboters ein Objekt ergreift, so zu bestimmen, dass beim Ergreifen des Objekts auftretende Verwindungen optimal ausgeglichen werden.
  • Diese Aufgabe wird durch das Verfahren gemäß Anspruch 1 sowie das Robotersystem nach Anspruch 7 gelöst.
  • ZUSAMMENFASSUNG
  • Es werden hier ein System und ein Verfahren offenbart, die gemeinsam eine alternative Herangehensweise für die vorstehend erwähnten Typen der Planung des Greifens eines Roboters bereitstellen. Das System umfasst einen Roboter mit einem Greiforgan, das ausgestaltet ist, um ein dreidimensionales Objekt zu ergreifen. Das System umfasst außerdem einen Controller, der eine optimale Greifpose des Greiforgans zum Ergreifen des Objekts für eine gegebene Aufgabe automatisch plant und wählt. Der Controller verwendet bekannte Dimensionen und eine bekannte Gestalt des Objekts als Teil eines Satzes von Steuerungseingaben. Die Steuerungseingaben werden mit Hilfe des Controllers verarbeitet, um die optimale Greifpose des Roboters sowohl hinsichtlich der Greifposition als auch der Greiforientierung zu bestimmen.
  • Insbesondere, und zentral für die vorliegende Herangehensweise, ist die optimale Greifpose, die hier bestimmt wird, diejenige spezielle Greifpose, welche die Verwindung der Aufgabe in einem statischen Gleichgewicht am besten ausgleicht. Der Begriff ”Verwindung”, bezeichnet, so wie er in dem vorliegenden Steuerungskontext verwendet wird, die Verkettung der Kraft und des Drehmoments, ein Konzept, das in der Statik gut bekannt ist. Wie außerdem in der Technik gut bekannt ist, können Systeme mit mehreren Kräften und Drehmomenten mathematisch auf ein äquivalentes System mit einer einzigen Kraft und einem einzigen Drehmoment reduziert werden, so dass das resultierende Drehmoment gemäß dem Theorem von Poinsot parallel zu der resultierenden Kraft ist. Das Ausführen des vorliegenden Verfahrens hat das beabsichtigte Ergebnis des automatischen Platzierens und Ausrichtens des Greiforgans, um die Greifverwindung und die Aufgabenverwindung optimal auszugleichen, d. h. die Verwindung, die auf das Objekt aufgrund der Ausführung des Greifens selbst (Greifverwindung) einwirkt, und die Verwindung, die auf das Objekt aufgrund der auszuführenden Aufgabe (Aufgabenverwindung) einwirkt. Ein hier verwendetes Beispiel ist das Ergreifen eines Türgriffs mit einem beispielhaften dreifingrigen Greifen, gefolgt von einem Bewegen des ergriffenen Türgriffs zu einem Türblech zur Installation.
  • In einer speziellen Ausführungsform bestimmt ein Verfahren eine optimale Greifpose eines Objekts durch ein Greiforgan eines Roboters bei der Ausführung einer Aufgabe. Das Verfahren umfasst, dass mit Hilfe eines Controllers ein Satz von Eingaben empfangen wird, der einen deskriptiven Parameter des Objekts, eine Aufgabenverwindung mit einem Referenzrahmen und eine befohlene Greifkraft des Greiforgans umfasst. Das Verfahren umfasst außerdem, dass eine Greifverwindung in dem Referenzrahmen der Aufgabenverwindung berechnet wird und dass dann die Greifpose mit Hilfe des Controllers gedreht und verschoben wird, bis die Aufgabenverwindung und die Greifverwindung optimal ausgeglichen sind, d. h., wenn die Summe aus der Aufgabenverwindung und der Greifverwindung minimiert ist, wie hier erläutert wird. Zudem zeichnet der Controller die optimale Greifpose im Speicher als diejenige Greifpose auf, bei welcher die Greifverwindung und die Aufgabenverwindung ausgeglichen sind, und er führt dann eine Steuerungsaktion mit Hilfe des Controllers unter Verwendung der optimalen Greifpose aus.
  • Das Verfahren kann umfassen, dass eine anfängliche Greifpose für das Greiforgan an dem Objekt als willkürliche Annäherungs-Greifpose gewählt wird, die das Objekt mit einem Satz von Greifkontakten ergreift, und dass die resultierende Greifverwindung der anfänglichen Greifpose berechnet wird.
  • Das Greiforgan kann eine Handfläche und mehrere Finger umfassen und die Greifpose des Greiforgans besteht aus zwei Teilen: die Position und Orientierung der Handfläche und die Positionen aller Fingergelenke. Das Berechnen der Greifpose kann umfassen, dass eine Position und Orientierung der Handfläche und/oder der Positionen der Fingergelenke mit sicheren Greifkontakten jedes der Finger berechnet werden, beispielsweise unter Verwendung bekannter Kinematiken des Greiforgans und der bekannten Dimensionen und der bekannten Position des Objekts. Das Berechnen der Greifpose kann umfassen, dass ein Annäherungsvektor, eine Richtung oder eine Trajektorie von dem Greiforgan zu dem Objekt berechnet wird bzw. werden und dass dieser Annäherungsvektor, diese Richtung oder diese Trajektorie verwendet wird bzw. werden, um eine Position und Orientierung der Handfläche und/oder der Positionen der Fingergelenke mit sicheren Greifkontakten an dem Objekt zu berechnen. Das Berechnen der Greifpose kann beliebige relevante Beschränkungen der Umgebung umfassen, etwa planare Restriktionen, die bestimmte Positionen oder Orientierungen der Handfläche oder der Fingergelenkpositionen einschränken.
  • Das Drehen und Verschieben der Greifpose des Greiforgans kann umfassen, dass nur die Position und Orientierung der Handfläche des Greiforgans gedreht und verschoben werden und dass dann alle Fingergelenkpositionen für die Greifkontakte berechnet werden. Das Drehen und Verschieben der Greifpose kann auf orthogonal zerlegten Drehmomentkomponenten beruhen, die rechtwinklig und parallel zu der Kraft sind.
  • Ein Robotersystem enthält einen Roboter mit einem Greiforgan und einen Controller mit einem Prozessor und einem konkreten nicht vorübergehenden Speicher, in dem Anweisungen aufgezeichnet sind, um eine optimale Greifpose eines Objekts für das Greiforgan beim Ausführen einer Aufgabe zu bestimmen. Das Ausführen der Anweisungen durch den Prozessor veranlasst den Controller, mit Hilfe eines Controllers einen Satz von Eingaben zu empfangen, der einen deskriptiven Parameter des Objekts, eine Aufgabenverwindung mit einem Referenzrahmen und eine befohlene Greifkraft des Greiforgans umfasst. Außerdem berechnet der Controller eine Greifverwindung in dem Referenzrahmen der Aufgabenverwindung und er dreht und verschiebt die Greifpose, bis die Aufgabenverwindung und die Greifverwindung optimal ausgeglichen sind. Der Controller zeichnet die optimale Greifpose in dem Speicher als diejenige Greifpose auf, bei welcher die Greifverwindung und die Aufgabenverwindung optimal ausgeglichen sind, und er führt mit Hilfe des Controllers unter Verwendung der aufgezeichneten optimalen Greifpose eine Steuerungsaktion aus.
  • Die vorstehenden Merkmale und Vorteile und andere Merkmale und Vorteile ergeben sich leicht aus der folgenden genauen Beschreibung und den beiliegenden Zeichnungen.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist eine schematische Darstellung eines beispielhaften Systems, das einen Roboter mit einem Greiforgan und einen Controller aufweist, der betrieben werden kann, um ein optimales Ergreifen eines Objekts durch das Greiforgan zu planen.
  • 2 ist ein Flussdiagramm, das eine beispielhafte Ausführungsform eines Verfahrens zum Planen eines optimalen Ergreifens eines Objekts unter Verwendung des in 1 gezeigten Systems beschreibt.
  • 3A zeigt schematisch die Greifkräfte und Greifdrehmomente, die auf ein beispielhaftes Objekt in der Form eines Türgriffs aufgebracht werden.
  • 3B zeigt schematisch die Nettogreifkraft und das Nettogreifdrehmoment, die auf das in 3A gezeigte Objekt wirken.
  • 4 zeigt eine orthogonale Zerlegung der Nettogreifkraft und des Nettogreifdrehmoments von 3B.
  • 5 zeigt eine orthogonale Zerlegung der Aufgabenkraft und der Drehmomentverwindungen.
  • 6A und 6B zeigen die gedrehte und verschobene Nettogreifkraft und das gedrehte und verschobene Nettogreifdrehmoment, die auf die Aufgabenkraft und das Aufgabendrehmoment als Teil des vorliegenden Verfahrens ausgerichtet sind.
  • GENAUE BESCHREIBUNG
  • Mit Bezug auf die Zeichnungen, bei denen gleiche Bezugszeichen gleiche oder ähnliche Komponenten in den mehreren Ansichten bezeichnen, ist in 1 ein Robotersystem 10 schematisch gezeigt. Das Robotersystem 10 enthält einen Roboter 20 und einen Controller (C) 40. Der Roboter 20 ist als beispielhafter mehrachsiger Fertigungs- oder Montageroboter mit einem Greiforgan 14 gezeigt, das an einem distalen Ende eines Roboterarms 16 angeordnet ist. Das Greiforgan 16 kann eine Roboterhand oder ein Greifer sein, die bzw. der mehrere Finger 15 aufweist, die gemeinsam betrieben werden können, um eine große Menge von Greifposen auszuführen, etwa einen Zangengriff, einen Kraftgriff der gesamten Hand unter Verwendung einer Handfläche 17 und dergleichen. Die Planung des Greifens für das Greiforgan 14 und den Roboterarm 16 wird mit Hilfe des Controllers 40 über das Ausführen von Anweisungen, die ein Verfahren 100 verkörpern, automatisch ausgeführt, wobei ein Beispiel dafür nachstehend mit Bezug auf 2 beschrieben wird. 3A6B, welche die verschiedenen Schritte des Verfahrens 100 weiter erläutern, werden in Verbindung mit 2 beschrieben.
  • Der vorliegenden Herangehensweise bei der Steuerung liegt die Erkenntnis zugrunde, dass es für ein spezielles Objekt 12, etwa wie gezeigt für einen beispielhaften Türgriff, mehrere gültige Greifposen für das Greiforgan 14 geben kann. Eine beliebige der gültigen Greifposen kann verwendet werden, um das Objekt 12 sicher zu halten. Jedoch kann die beabsichtigte auszuführende Aufgabe variieren. Eine beispielhafte Aufgabe könnte das Ergreifen und Aufheben des Objekts 12 unter Verwendung des Greiforgans 14, gefolgt von dem Bewegen des Objekts 12 an eine andere Stelle sein. Eine andere Aufgabe könnte ein Ende 19 des Objekts 12 verwenden, um gegen eine Oberfläche eines Türblechs 13 einer Fahrzeugkarosserie 11 zu drücken und/oder Nasen 23 des Objekts 12 in passende Nuten 22 einzuführen, die von dem Blech 13 definiert werden, wenn man bei dem nicht einschränkenden beispielhaften Türgriff von 1 bleibt.
  • Ohne dass der Controller 40 über eine vorherige Kenntnis der auszuführenden speziellen Aufgabe verfügt, könnte jedoch eine beliebige der vielen gültigen Greifposen gewählt werden, um das Objekt 12 einfach zu ergreifen und zu halten. Beispielsweise kann das Objekt 12 bei dem beispielhaften Türgriff, der in den verschiedenen Figuren gezeigt ist, in seiner Mitte oder an seinem Ende 19 oder an einer anderen Stelle mit einer beliebigen Anzahl möglicher Greiforientierungen ergriffen werden. Der Controller 40 und das Verfahren 100 sind daher so programmiert oder auf andere Weise zum Lösen dieser speziellen Steuerungsherausforderung ausgestaltet, um in Echtzeit automatisch zu berechnen und zu entscheiden, welche der vielen möglichen Greifposen im Vergleich mit den anderen optimal ist, d. h. für die anstehende spezielle Aufgabe. Der Controller 40 trifft diese Entscheidung unter Verwendung der vorstehend allgemein erwähnten Herangehensweise zum Verwindungsausgleich, welche nachstehend mit Bezug auf 3A6B in größerem Detail offengelegt wird.
  • Zum Ausführen des Verfahrens 100 empfängt der Controller 40 von 1 einen Satz von Steuerungseingaben (CCI) und er berechnet ausgestattet mit dem Vorwissen über die Konstruktion und die Kinematiken des Roboters 20 die Greifpose und damit die Greifverwindung. In einer möglichen Ausführungsform können die Steuerungseingaben (CCI) einen deskriptiven Parameter des Objekts 12, etwa die Gestalt (S) und den Aufenthaltsort (L), sowie eine bekannte oder gegebene Aufgabenverwindung (wT) und eine befohlene Greifkraft (F14) des Greiforgans umfassen. Der Controller 40 berechnet die optimale Greifpose als diejenige spezielle Pose, welche die bekannte oder gegebene Aufgabenverwindung mit der Greifverwindung am genauesten ausgleicht.
  • Sobald diese Entscheidung getroffen wurde, stellt der Controller 40 als nächstes einen Satz von Steuerungsaufgaben (CCO) für den Roboter 20 bereit, wobei die Steuerungsausgaben (CCO) das Ausführen der optimalen Greifpose befehlen. Außerdem kann in Abhängigkeit von der gewünschten Ausführungsform eine präzise Bewegungssteuerung des Roboters 20, die eine Steuerung über die feinen und groben Bewegungen umfasst, die zum Ergreifen und Manipulieren des Objekts 12 mit Hilfe des Greiforgans 14 benötigt werden, mit Hilfe des Controllers 40 oder durch ein anderes Steuerungssystem ausgeführt werden. Unabhängig von der Konstruktion des Controllers 40 kann in der Steuerungsgesamtarchitektur jedes Gelenk des Roboters 20 und andere integrierte Systemkomponenten nach Bedarf gesteuert werden, um die Bewegungen des Greiforgans 14 beim Ausführen einer Arbeitsaufgabe vollständig zu koordinieren.
  • Der Controller 40 von 1 kann mehrere digitale Computer oder Datenverarbeitungsvorrichtungen umfassen, die jeweils einen oder mehrere Prozessoren (P) und Speicher (M) einschließlich ausreichender Mengen an konkretem, nicht vorübergehendem Speicher, etwa optischen oder magnetischen Festwertspeicher (ROM) sowie Speicher mit wahlfreiem Zugriff (RAM), löschbaren, elektrisch programmierbaren Festwertspeicher (EEPROM) und dergleichen aufweisen. Der Controller 40 kann außerdem einen Hochgeschwindigkeits-Taktgeber, Analog/Digital-Schaltungen (ND-Schaltungen), Digital/Analog-Schaltungen (D/A-Schaltungen) und beliebige benötigte Eingabe/Ausgabe-Schaltungen und -Vorrichtungen (I/O-Schaltungen und -Vorrichtungen) sowie Signalaufbereitungs- und Pufferelektronik enthalten. Einzelne Steuerungsalgorithmen, die im Controller 40 vorhanden sind oder für diesen leicht zugänglich sind, können im Speicher (M) gespeichert sein und mit Hilfe des Prozessors (P) auf einer oder mehreren verschiedenen Steuerungsebenen automatisch ausgeführt werden, um die jeweilige Steuerungsfunktionalität bereitzustellen.
  • Zur Einfachheit und Konsistenz der Veranschaulichung wird das Objekt 12 hier anschließend wie eine starre dreidimensionale Komponente behandelt, etwa der nicht einschränkende beispielhafte Türgriff von 1, der in der folgenden Beschreibung verwendet wird. Außerdem können nicht starre oder flexible Objekte verwendet werden. Jedoch würde die Komplexität der Programmierung für flexible Teile zunehmen, möglicherweise erheblich, da sich die Gestalt des Objekts 12 in einem derartigen Fall in Abhängigkeit von der Orientierung der ausgeführten Greifpose wahrscheinlich verändern würde. Beispielsweise würde ein flexibler Zylinder, wenn er an seinem axialen Mittelpunkt ergriffen und aufgehoben würde, wie ein umgedrehtes U erscheinen. Wenn er an seinem Ende gehalten wird, würde die Gestalt ein Zylinder bleiben. Daher könnte sich die Gestalt eines flexiblen Teils mit dem Ort und der Orientierung der Greifpose verändern. Bei einem starren Teil würde eine derartige Gestaltvariation offensichtlich nicht auftreten. Daher kann die Anwendung des vorliegenden Verfahrens 100 auf nicht starre Teile, obwohl es möglich ist, ein umfassendes Modellieren der vielen möglichen Weisen erfordern, in welchen sich die Gestalt des Objekts und die zugehörigen Greifkräfte und Drehmomente verändern können.
  • Immer noch mit Bezug auf 1 besteht ein Ziel des vorliegenden Verfahrens 100 darin, festzustellen, wo das Greiforgan 14 das Objekt 12 halten soll, um der bekannten oder gegebenen Aufgabenverwindung mit einer Nettogreifverwindung bestmöglich entgegenzuwirken, d. h. mit der linearen Nettokraft und mit der rotatorischen Koppelkraft oder dem Drehmoment, die bzw. das durch die Greifpose ausgeübt werden. Der Controller 40 plant die Richtung der Annäherung des Greifens (Pfeil A) derart, dass die Nettogreifverwindung im Idealfall die Aufgabenverwindung ausgleicht, d. h.: wT = wG wobei WG und wT die Nettogreifverwindung bzw. die Nettoaufgabenverwindung sind. Die bekannte oder gegebene Aufgabenverwindung wT kann in einem typischen kartesischen Bezugsrahmen des Objekts 12 als sechsdimensionaler Vektor ausgedrückt werden, wobei:
    Figure DE102015109646B4_0002
    wobei f →t und τt jeweils die lineare Kraft und das Drehmoment sind, die während der Ausführung der Aufgabe auf das Objekt 12 ausgeübt werden, und p →t der Positionsvektor ist, wo Kraft auf das Objekt 12 aufgebracht wird.
  • Mit Bezug auf 2 führt der Controller 40 von 1 das Verfahren 100 aus, um eine iterative Herangehensweise zur Bestimmung der optimalen Greifpose bereitzustellen, wobei dies erledigt wird, indem eine zuvor berechnete Greifpose nach Bedarf verschoben und/oder gedreht wird, um die Aufgabenverwindung und die Greifverwindung am besten/optimal auszugleichen. Bei Schritt 102 beginnend empfängt der Controller 40 den Satz von Eingaben (CCI), welcher wie vorstehend mit Bezug auf 1 erwähnt wurde, die Gestalt und den Aufenthaltsort des Objekts 12, die Aufgabenverwindung (wT) und die befohlene Greifkraft, die von dem Greiforgan 14 auf das Objekt 12 aufgebracht wird, d. h. die Greiforgan-Greifkraft umfassen kann. Dann geht der Controller 40 zu Schritt 104 weiter.
  • Bei Schritt 104 wählt der Controller 40 als nächstes einen anfänglichen Annäherungsvektor, der als Pfeil A dargestellt ist, für das Greiforgan 14 an das Objekt 12, so, als wäre keine Aufgabenanforderung vorhanden. Das heißt, dass der Controller 40 einen willkürlichen Annäherungsvektor an das Objekt 12 auswählt und danach zu Schritt 106 weitergeht.
  • Schritt 106 umfasst, dass eine Greifpose unter Verwendung des Annäherungsvektors berechnet wird, der in Schritt 104 gewählt wurde, welche sichere Greifkontakte (CG) des Greiforgans 14 an dem Objekt 12 erzeugt. Schritt 106 kann umfassen, dass die Position und die Orientierung der Handfläche 17 und Gelenkpositionen eines jeden Fingers 15 des beispielhaften Greiforgans 14, das die Greifkontakte erzeugt, berechnet werden, z. B. unter Verwendung der bekannten Kinematiken und des Annäherungsvektors.
  • Schritt 106 umfasst außerdem, dass beliebige relevante Beschränkungen durch die Umgebung bestimmt werden, etwa beliebige planare Restriktionen an dem Greiforgan 14, und dass die Greifpose beruhend auf diesen Beschränkungen durch die Umgebung justiert wird. Beispielsweise kann das Objekt 12 gerade auf einem Tisch stehen, wobei sich das Greiforgan 14 in diesem Fall dem Objekt 12 von bestimmten Richtungen aus nicht nähern kann, und/oder nicht in der Lage sein kann, seine Finger 15 vollständig um das Objekt 12 herum zu schließen, wenn bestimmte Greifposen verwendet werden, etwa ein Kraftgriff/vollständiger Griff, der alle Finger 15 und die Handfläche 17 umfasst. Mit anderen Worten umfassen die in Schritt 106 berücksichtigten Beschränkungen durch die Umgebung beliebige physikalische oder künstliche Grenzen, die den Bewegungsbereich des Greiforgans 14 einschränken.
  • Bei Schritt 108 verwendet der Controller 40 die aktuelle Greifpose, um als nächstes die resultierende Nettogreifverwindung wG in dem gleichen Referenzrahmen wie die Aufgabenverwindung wT zu berechnen, beispielsweise in dem gleichen kartesischen Rahmen des Objekts. Zur Veranschaulichung der Prinzipien von Schritt 108 zeigt 3A das Objekt 12 mit beispielhaften Greifkräften F →i und F →i+1 und beispielhaften Greifdrehmomenten τ →i und τ →i+1 bei Greifkontakten i und i + 1. Alle Greifkräfte und Greifdrehmomente an allen Greifkontakten werden dann mit Hilfe des Controllers 40 addiert, um die Nettogreifverwindung wG wie folgt zu erzeugen:
    Figure DE102015109646B4_0003
  • Die summierten Kräfte und Drehmomente sind in 3B schematisch gezeigt.
  • Der Controller 40 kann die Prinzipien der orthogonalen Zerlegung verwenden, um Schritt 110 auszuführen. Wie in der Technik bekannt ist, kann ein Drehmoment wie folgt in rechtwinklige und parallele Komponenten zerlegt werden:
    Figure DE102015109646B4_0004
  • Eine derartige Zerlegung ist in 4 dargestellt. Analog kann das bekannte oder gegebene Aufgabendrehmoment ebenfalls orthogonal in τ →⊥T und τ →∥T zerlegt werden, wie in 5 gezeigt ist.
  • Wieder mit Bezug auf 2 geht das Verfahren 100, sobald der Controller 40 von 1 die resultierende Nettogreifverwindung berechnet hat, zu Schritt 110 weiter, wobei der Controller 40 die bei Schritt 108 berechnete Greifpose als nächstes dreht (ROT) und verschiebt (SH), um die Aufgabenverwindung wT besser mit der Greifverwindung wG auszugleichen. Dieser Schritt wird nun mit Bezug auf 6A und 6B beschrieben.
  • Der Controller 40 von 1 dreht die Greifkraft automatisch, sodass die Greifkraft mit der Aufgabenkraft ausgerichtet ist, und so, dass der Wert (F →NG + F →T) minimiert ist, wenn F →NG ≠ 0 und F →T ≠ 0 . In diesem Ausdruck ist R eine Rotationsmatrix mit drei Winkeln mit Normalkomponenten (n), Orientierungskomponenten (o) und Annäherungskomponenten (a):
    Figure DE102015109646B4_0005
  • 6A zeigt die Drehung der Nettogreifverwindung durch die Matrix R. Schritt 110 umfasst außerdem, eine Verschiebung um δ → , so dass das Greifdrehmoment optimal ausgeglichen ist, d. h.: min(RF →NG × δ → + Rτ →⊥NG + τ →⊥T)
  • 6B zeigt die Drehung und Verschiebung oder Translation der Nettogreifverwindung durch die Matrix R bzw. die Translation δ → .
  • Wieder mit Bezug auf 2 wendet der Controller 40 bei Schritt 112 die in Schritt 110 berechnete Rotation ROT und Verschiebung SH auf die vorherige Orientierung und Position der Handfläche des Greiforgans 14 an. Mit dieser neu aktualisierten Orientierung und Position der Handfläche werden die Positionen der Fingergelenke für die neuen Greifkontakte (CG) mit Beschränkungen durch die Umgebung wie vorstehend mit Bezug auf Schritt 106 erläutert wurde, neu berechnet. Die aktualisierte Greifverwindung wird dann auf der Grundlage der neuen Greifkontakte neu berechnet. Schritt 112 ist notwendig, da sich aufgrund der angewendeten Drehung und Verschiebung die Greifpose in Schritt 110 verändert hat. Das Verfahren 100 geht dann zu Schritt 114 weiter.
  • Bei Schritt 114 stellt der Controller 40 fest, ob die Aufgabenverwindung und die neu aktualisierte Greifverwindung optimal ausgeglichen worden sind, d. h., ob wG + wT minimiert ist, ein Zustand, der bestimmt werden kann, indem die Werte minimiert werden, die in 6A und 6B gezeigt sind. Wenn nicht, wird Schritt 110 wiederholt, bis der minimale Wert von wG + wT erreicht ist, wobei Iterationen der Schritte 110 und 112 wiederholt werden, bis dieser optimale Ausgleich erreicht ist. Wenn der optimale Ausgleich erreicht ist, geht das Verfahren 100 zu Schritt 116 weiter.
  • Schritt 116 umfasst, dass die optimale Greifpose im Speicher aufgezeichnet wird und dass danach unter Verwendung der aufgezeichneten optimalen Greifpose eine Steuerungsaktion (CA) mit Bezug auf den Roboter 20 von 1 ausgeführt wird. Bei Schritt 116 heißt dies, dass die optimale Greifpose für die anstehende Aufgabe bekannt ist. Wenn sich die Aufgabe ändert, aktualisiert der Controller 40 automatisch den Greiftyp mit Hilfe einer weiteren Iteration des Verfahrens 100, d. h. ohne manuelles Teachen oder Trainieren des Roboters 20.
  • Obwohl die besten Arten zum Ausführen der Erfindung im Detail beschrieben wurden, wird der Fachmann auf dem Gebiet, das diese Erfindung betrifft, verschiedene alternative Konstruktionen und Ausführungsformen erkennen, um die Erfindung im Umfang der beigefügten Ansprüche in die Praxis umzusetzen.

Claims (10)

  1. Verfahren zum Bestimmen einer optimalen Greifpose eines Objekts durch ein Greiforgan eines Roboters beim Ausführen einer Aufgabe, wobei das Verfahren umfasst, dass: ein Satz von Eingaben mit Hilfe eines Controllers empfangen wird, der einen deskriptiven Parameter des Objekts, eine Aufgabenverwindung mit einem Referenzrahmen und eine befohlene Greifkraft des Greiforgans umfasst; eine Greifverwindung in dem Referenzrahmen der Aufgabenverwindung berechnet wird; die Greifverwindung mit Hilfe des Controllers gedreht und verschoben wird, bis die Aufgabenverwindung und die Greifverwindung optimal ausgeglichen sind, wobei die Aufgabenverwindung und die Greifverwindung optimal ausgeglichen sind, wenn die Summe aus der Aufgabenverwindung und der Greifverwindung minimiert ist; die optimale Greifpose in einem Speicher des Controllers als diejenige Greifpose aufgezeichnet wird, bei welcher die Greifverwindung und die Aufgabenverwindung optimal ausgeglichen sind; und unter Verwendung der aufgezeichneten optimalen Greifpose eine Steuerungsaktion mit Hilfe des Controllers ausgeführt wird.
  2. Verfahren nach Anspruch 1, das ferner umfasst, dass: ein anfänglicher Annäherungsvektor für das Greiforgan an das Objekt als willkürlicher Annäherungsvektor gewählt wird; unter Verwendung einer willkürlichen Greifpose das Objekt mit Hilfe des Greiforgans ergriffen wird; und eine Position und ein Satz von Greifkontakten des Greiforgans in der willkürlichen Greifpose und eine resultierende Greifverwindung der willkürlichen Greifpose berechnet werden.
  3. Verfahren nach Anspruch 2, wobei das Greiforgan eine Handfläche und mehrere Finger umfasst, und wobei das Berechnen der Position und des Satzes von Greifkontakten umfasst, dass eine Position und Orientierung der Handfläche und der Greifkontakte jedes der Finger unter Verwendung bekannter Kinematiken des Greiforgans und bekannter Dimensionen und der bekannten Position des Objekts berechnet werden.
  4. Verfahren nach Anspruch 1, wobei das Drehen und Verschieben der Greifverwindung umfasst, dass orthogonal zerlegte Drehmomentkomponenten verwendet werden.
  5. Verfahren nach Anspruch 1, wobei das Drehen und Verschieben der Greifverwindung umfasst, dass eine orthogonale Zerlegung verwendet wird, sodass das Drehmoment in rechtwinklige und parallele Komponenten zerlegt wird.
  6. Verfahren nach Anspruch 1, wobei der deskriptive Parameter des Objekts eine Gestalt des Objekts und einen Aufenthaltsort des Objekts im freien Raum umfasst.
  7. Robotersystem, umfassend: einen Roboter mit einem Greiforgan; und einen Controller mit einem Prozessor und einem konkreten nicht vorübergehenden Speicher, in dem Anweisungen aufgezeichnet sind, um eine optimale Greifpose eines Objekts mit dem Greiforgan bei der Ausführung einer Aufgabe zu bestimmen; wobei eine Ausführung der Anweisungen durch den Prozessor veranlasst, dass der Controller: einen Satz von Eingaben mit Hilfe eines Controllers empfängt, welcher einen deskriptiven Parameter des Objekts, eine Aufgabenverwindung mit einem Referenzrahmen und eine befohlene Greiforgankraft umfasst; eine Greifverwindung in dem Referenzrahmen der Aufgabenverwindung berechnet; die Greifverwindung mit Hilfe des Controllers dreht und verschiebt, bis die Aufgabenverwindung und die Greifverwindung optimal ausgeglichen sind, wobei die Aufgabenverwindung und die Greifverwindung optimal ausgeglichen sind, wenn die Summe aus der Aufgabenverwindung und der Greifverwindung minimiert ist; die optimale Greifpose im Speicher als diejenige Greifpose aufzeichnet, bei welcher die Greifverwindung und die Aufgabenverwindung optimal ausgeglichen sind; und unter Verwendung der aufgezeichneten optimalen Greifpose eine Steuerungsaktion ausführt.
  8. Robotersystem nach Anspruch 7, wobei der Controller programmiert ist, um einen anfänglichen Annäherungsvektor für das Greiforgan an das Objekt als eine willkürliche Annäherungstrajektorie zu wählen, um das Objekt mit Hilfe des Greiforgans unter Verwendung einer willkürlichen Greifpose zu ergreifen, und um eine Position und einen Satz von Greifkontakten des Greiforgans in der willkürlichen Greifpose zu berechnen.
  9. Robotersystem nach Anspruch 7, wobei der Controller die Greifverwindung unter Verwendung einer orthogonalen Zerlegung derart, dass der Controller das Drehmoment in rechtwinklige und parallele Komponenten zerlegt, dreht und verschiebt.
  10. Robotersystem nach Anspruch 7, wobei der deskriptive Parameter des Objekts eine Gestalt des Objekts und einen Aufenthaltsort des Objekts im freien Raum umfasst.
DE102015109646.3A 2014-06-20 2015-06-17 Planen des Greifens eines Roboters in Echtzeit Expired - Fee Related DE102015109646B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/310,567 2014-06-20
US14/310,567 US9283676B2 (en) 2014-06-20 2014-06-20 Real-time robotic grasp planning

Publications (2)

Publication Number Publication Date
DE102015109646A1 DE102015109646A1 (de) 2015-12-24
DE102015109646B4 true DE102015109646B4 (de) 2016-04-14

Family

ID=54768087

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015109646.3A Expired - Fee Related DE102015109646B4 (de) 2014-06-20 2015-06-17 Planen des Greifens eines Roboters in Echtzeit

Country Status (3)

Country Link
US (1) US9283676B2 (de)
CN (1) CN105196290B (de)
DE (1) DE102015109646B4 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102023588B1 (ko) 2016-03-03 2019-10-14 구글 엘엘씨 로봇 파지용 심층 기계 학습 방법 및 장치
CN109598264B (zh) * 2017-09-30 2020-10-16 北京猎户星空科技有限公司 物体抓取方法及装置
CN108340374B (zh) * 2018-02-08 2023-10-03 西北农林科技大学 一种采摘机械手的控制***及控制方法
WO2021025956A1 (en) 2019-08-02 2021-02-11 Dextrous Robotics, Inc. Robotic manipulators
US11389968B2 (en) * 2019-10-02 2022-07-19 Toyota Research Institute, Inc. Systems and methods for determining pose of objects held by flexible end effectors
US11331799B1 (en) * 2019-12-31 2022-05-17 X Development Llc Determining final grasp pose of robot end effector after traversing to pre-grasp pose
WO2023205176A1 (en) 2022-04-18 2023-10-26 Dextrous Robotics, Inc. System and/or method for grasping objects

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0671246A2 (de) * 1994-03-09 1995-09-13 Siemens Aktiengesellschaft Greiferbezogenes Handverfahren
DE19816953A1 (de) * 1998-04-17 1999-10-21 Univ Dresden Tech Anordnung zum Erzeugen von Schwenkbewegungen
DE102006005344A1 (de) * 2006-02-07 2007-08-09 Daimlerchrysler Ag Verfahren zur Simulation eines Montagevorgangs für ein Anbauteil
DE102006036490A1 (de) * 2006-08-04 2008-02-07 Daimler Ag Verfahren und Vorrichtung zum Steuern eines Handhabungsgeräts
DE102009017104A1 (de) * 2009-04-15 2010-10-21 Kuka Roboter Gmbh Verfahren und System zur Kraftrückkopplung zum Interagieren mit einer virtualisierten Umgebung
DE102010018440A1 (de) * 2009-04-30 2010-12-16 GM Global Technology Operations, Inc., Detroit Hierarchisches Robotersteuerungssystem und -Verfahren zum Steuern ausgewählter Freiheitsgrade eines Objekts unter Verwendung mehrerer Manipulatoren

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4860215A (en) * 1987-04-06 1989-08-22 California Institute Of Technology Method and apparatus for adaptive force and position control of manipulators
WO2005099417A2 (en) * 2004-04-12 2005-10-27 Strider Labs, Inc. System and method for computing grasps for a robotic hand with a palm
US7643907B2 (en) * 2005-02-10 2010-01-05 Abb Research Ltd. Method and apparatus for developing a metadata-infused software program for controlling a robot
CN101390027A (zh) * 2006-02-23 2009-03-18 Abb公司 依靠从使用者接收的力和扭矩控制物体的位置及方位的***
US8231158B2 (en) * 2006-11-03 2012-07-31 President And Fellows Of Harvard College Robust compliant adaptive grasper and method of manufacturing same
JP5281377B2 (ja) * 2008-12-04 2013-09-04 トヨタ自動車株式会社 ロボット装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0671246A2 (de) * 1994-03-09 1995-09-13 Siemens Aktiengesellschaft Greiferbezogenes Handverfahren
DE19816953A1 (de) * 1998-04-17 1999-10-21 Univ Dresden Tech Anordnung zum Erzeugen von Schwenkbewegungen
DE102006005344A1 (de) * 2006-02-07 2007-08-09 Daimlerchrysler Ag Verfahren zur Simulation eines Montagevorgangs für ein Anbauteil
DE102006036490A1 (de) * 2006-08-04 2008-02-07 Daimler Ag Verfahren und Vorrichtung zum Steuern eines Handhabungsgeräts
DE102009017104A1 (de) * 2009-04-15 2010-10-21 Kuka Roboter Gmbh Verfahren und System zur Kraftrückkopplung zum Interagieren mit einer virtualisierten Umgebung
DE102010018440A1 (de) * 2009-04-30 2010-12-16 GM Global Technology Operations, Inc., Detroit Hierarchisches Robotersteuerungssystem und -Verfahren zum Steuern ausgewählter Freiheitsgrade eines Objekts unter Verwendung mehrerer Manipulatoren

Also Published As

Publication number Publication date
CN105196290A (zh) 2015-12-30
US9283676B2 (en) 2016-03-15
CN105196290B (zh) 2017-07-14
DE102015109646A1 (de) 2015-12-24
US20150367514A1 (en) 2015-12-24

Similar Documents

Publication Publication Date Title
DE102015109646B4 (de) Planen des Greifens eines Roboters in Echtzeit
EP2987592B1 (de) Verfahren zum programmieren eines industrieroboters und zugehöriger industrieroboter
EP3020516B1 (de) Bestimmen von objektbezogenen greifräumen mittels eines roboters
EP2868445B1 (de) Verfahren zum Programmieren von Bewegungsabläufen eines redundanten Industrieroboters und zugehöriger Industrieroboter
DE102010018438B4 (de) Verfahren und Vorrichtung zur automatischen Steuerung eines humanoiden Roboters
DE102014108287B4 (de) Schnelles Erlernen durch Nachahmung von Kraftdrehmoment-Aufgaben durch Roboter
DE102008027008B4 (de) Verfahren und Vorrichtung zum Steuern eines Manipulators
DE102015204641B4 (de) Verfahren und System zur Programmierung eines Roboters
DE102014103738B3 (de) Visuelle fehlersuche bei roboteraufgaben
DE102011079117B4 (de) Verfahren zum Programmieren eines Roboters
DE102014110355B3 (de) Robotersystem und Verfahren zur Roboter-Geschwindigkeitssteuerung
DE102018009025B4 (de) Robotersteuervorrichtung zum Einstellen eines Bewegungskoordinatensystems
DE102012213957B4 (de) Schnelle Berechnung von Griffkontakten für einen seriellen Roboter
DE102015009151A1 (de) Ermitteln eines Eingabebefehls für einen Roboter, der durch manuelles Ausüben einer Kraft auf den Roboter eingegeben wird
DE102019118637B4 (de) Automatische pfadgenerierungsvorrichtung
DE102014116845A1 (de) Verfahren zum Ermitteln einer Bewegungsgrenze
DE102020212658A1 (de) Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
DE102016212958A1 (de) Redundanzauflösung für einen redundanten Manipulator
DE102012022190B4 (de) Inverse Kinematik
DE102015209773B3 (de) Verfahren zur kontinuierlichen Synchronisation einer Pose eines Manipulators und einer Eingabevorrichtung
DE102020200165B4 (de) Robotersteuereinrichtung und Verfahren zum Steuern eines Roboters
AT401746B (de) Steuerungsverfahren für roboter, unter verwendung von geometrischen zwangsbedingungen und zufalls-suchverfahren
DE102018124671B4 (de) Verfahren und Vorrichtung zur Erstellung eines Robotersteuerprogramms
DE3788741T2 (de) Roboter-Antrieb-Steuersystem und -Steuerverfahren.
DE102015003941A1 (de) Steuern eines mobilen redundanten Roboters

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee