DE10351670A1 - Verfahren und Vorrichtung zum Steuern von Robotern - Google Patents

Verfahren und Vorrichtung zum Steuern von Robotern Download PDF

Info

Publication number
DE10351670A1
DE10351670A1 DE10351670A DE10351670A DE10351670A1 DE 10351670 A1 DE10351670 A1 DE 10351670A1 DE 10351670 A DE10351670 A DE 10351670A DE 10351670 A DE10351670 A DE 10351670A DE 10351670 A1 DE10351670 A1 DE 10351670A1
Authority
DE
Germany
Prior art keywords
robot
tool tip
orientation
interpolated
predetermined
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.)
Withdrawn
Application number
DE10351670A
Other languages
English (en)
Inventor
Kenneth A. Rochester Stoddard
David Oakland Martin
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.)
KUKA Deutschland GmbH
Original Assignee
KUKA Roboter GmbH
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 KUKA Roboter GmbH filed Critical KUKA Roboter GmbH
Priority to DE10351670A priority Critical patent/DE10351670A1/de
Priority to JP2004319410A priority patent/JP5090618B2/ja
Priority to DE502004012052T priority patent/DE502004012052D1/de
Priority to AT04026013T priority patent/ATE493237T1/de
Priority to EP04026013A priority patent/EP1529605B1/de
Priority to US10/981,278 priority patent/US7421314B2/en
Publication of DE10351670A1 publication Critical patent/DE10351670A1/de
Withdrawn 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/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1607Calculation of inertia, jacobian matrixes and inverses
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators
    • 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/39069Inverse kinematics by arm splitting, divide six link arm into two three link arms
    • 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/39109Dual arm, multiarm manipulation, object handled in cooperation
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40333Singularity, at least one movement not possible, kinematic redundancy

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)
  • Automobile Manufacture Line, Endless Track Vehicle, Trailer (AREA)

Abstract

Ein Verfahren zum Steuern eines Roboters während einer Interpolation einer Trajektorie oder Bewegung zu einer vorbestimmten Stellung umfasst die Schritte a) Ignosieren von wenigstens einem der drei ursprünglich vorbestimmten oder interpolierten Orientierungswerte einer Werkzeugspritze; b) Auffinden neuer Orientierungswerte der Werkzeugspitze, die den Handgelenkspunkten des Roboters möglichst nah an dessen Basis platzieren; wobei c) die ursprünglich vorbestimmten oder interpolierten Ortsbestimmungswerte der Werkzeugspitze beibehalten werden und d) die ursprünglich vorbestimmten oder interpolierten, nicht ignorierten Orientierungswerte der Werkzeugspitze beibehalten werden. Das Verfahren lässt sich vorzugsweise zum Tragen eienr Last mit einer Mehrzahl von Robotern einsetzen. Sein hauptsächlicher Vorteil ist eine Vergrößerung des verfügbaren Arbeitsbereichs.

Description

  • Technischer Hintergrund
  • Die Erfindung betrifft sowohl ein Verfahren und eine Vorrichtung zum Steuern wenigstens eines Roboters als auch ein Verfahren und eine Vorrichtung zum Tragen einer Last mit mehr als einem Roboter.
  • Es ist bekannt, dass in manchen Fällen, in denen zwei oder mehr Roboter ein Teil tragen (Lastenteilung), der Gesamt-Arbeitsbereich für das Teil gegenüber dem Arbeitsbereich reduziert sein kann, der erreichbar ist, wenn das Teil von einem einzelnen Roboter getragen wird. Das liegt daran, dass die Roboter sich bei verschiedenen Orientierungen des Teils gegenseitig stören können und dass die zwei oder mehreren Roboter nicht am selben Ort platziert sind. Daher ist eine Trajektorie, die mit einem Roboter erreichbar ist, manchmal durch die anderen nicht ebenso erreichbar.
  • Gleichzeitig ist es gut bekannt, dass der Geschicklichkeits-Arbeitsbereich – der Bereich, in dem alle Orientierungen erreicht werden können – in der Regel kleiner ist, als der Ungeschicklichkeits-Arbeitsbereich.
  • Bei der Lastenteilung ist die Orientierung des Teils nur durch den Ort der Zugriffspunkte der einzelnen Roboter bestimmt. Der Begriff "Ort" bezieht sich auf den Dreiervektor, der die x-, y- und z-Koordinaten eines Objekts relativ zu einem Bezugssystem angibt. Der Begriff "Orientierung" bezieht sich auf die drei Drehungen eines Objekts um die x-, y-, und z-Achsen relativ zu einem Referenzsystem. Die Stellung eines Objekts im Raum beinhaltet sowohl seinen Ort als auch seine Orientierung, und entsprechend bezieht sich der Begriff "Stellung" auf die Kombination von Ort und Orientierung. Es werden sechs Zahlen benötigt, um die Stellung eines Objekts im Raum anzugeben, drei zur Darstellung des Ortes und drei zur Darstellung der Drehungen.
  • Wenn ein Objekt im Raum schwebt, ist es "frei", sich in allen sechs Richtungen zu bewegen; es besitzt sechs Freiheitsgrade (DOF) der Bewegung. Wenn ein Roboter das Objekt mit einem Standardgreifer ergreift, beschränkt er normalerweise dessen Bewegung in allen sechs Freiheitsgraden.
  • Der von mehr als einem einzelnen Roboter unternommene Versuch, das Teil auch zu orientieren, ist überbeschränkt, d.h. zwei Roboter, die ein Teil ergreifen, können das Teil oder sich selbst beschädigen, da sie jeweils versuchen, alle sechs Freiheitsgrade festzulegen.
  • Es existieren verschiedene Arten von singulären Stellungen, in die sich Roboter bewegen können. Hier ist jedoch diejenige Art von Singulärstellung von vordringlichem Interesse, in der der Roboter einen Steuerungs-Freiheitsgrad verliert und zur gleichen Zeit eine unendliche Anzahl von Lösungen für diese Stellung besitzt. Ein gängiges Beispiel hierfür ist jede Stellung, in der die Handgelenksachsen so angeordnet sind, dass die Drehachsen zweier Gelenke kolinear sind. In einem solchen Punkt existiert eine unendliche Anzahl von Werten für eines der beiden Gelenke, für die ein entgegengesetzter Wert des anderen Gelenks existiert, so dass die Werkzeugspitze exakt dieselbe Stellung beibehält. Dies bedeutet zugleich, dass eine Drehachse existiert, bezüglich derer der Roboter sich nicht weiter bewegen kann. Er hat diesen Steuerungs-Freiheitsgrad verloren.
  • Wenn sich ein Roboter in unmittelbarer Nähe zu einer solchen Singularität bewegt, müssen zumindest zwei der Handgelenks-Gelenke sehr schnell drehen, damit sich die Werkzeugspitze auch nur langsam bewegt. Gewöhnlich werden die Handgelenks-Gelenke bei dem Versuch, eine konstante Geschwindigkeit der Werkzeugspitze beizubehalten, versuchen, sich mit einer Geschwindigkeit oberhalb ihrer Grenzgeschwindigkeiten zu bewegen, und die Werkzeugspitze muss entweder abbremsen, oder der Roboter muss die gewünschte Trajektorie verlassen oder stoppt aufgrund eines Geschwindickeitsbegrenzungs-Fehlers.
  • Das Problem wird noch verschärft, wenn zwei oder mehr Roboter dasselbe Teil tragen und einer von ihnen in die Nähe einer singulären Stellung kommt. Er wird langsamer verfahren oder anhalten müssen, so dass die anderen ebenfalls langsamer verfahren oder anhalten müssen, was in genau der gleichen Weise zu geschehen hat. Es ist schwierig, diesen Anforderungen derart gerecht zu werden, dass keine Verformungskräfte auf das Teil einwirken. Wenn beispielsweise zwei Roboter einen Wassereimer tragen, wird mit Sicherheit Wasser aus dem Eimer herausspritzen, selbst wenn dieser ohne Zerbrechen abgebremst werden kann! Wenn zwei oder mehr Roboter eine geteilte Last tragen und ihre Orientierung relativ zu dieser Last festgelegt ist, verkleinert sich der Arbeitsbereich der koordinierten Gruppe in manchen Fällen gegenüber dem Arbeitsbereich, den ein einzelner Roboter beim Tragen derselben Last haben würde. Das liegt daran, dass die Roboter sich bei verschiedenen Orientierungen des Teils stören können und dass die Roboter nicht am selben Ort platziert sind. Daher kann das Teil in gewisser Weise nur im Schnittbereich der Arbeitsbereiche der Roboter bewegt werden, die sich die Last teilen.
  • Weiterhin ist in dem Fall, dass zwei oder mehr Roboter dasselbe Teil tragen, wobei jeder Roboter versucht, alle sechs Freiheitsgrade des Teils festzulegen, dieses hinsichtlich seiner Stellung überbeschränkt. Dies ist der heutige Stand der Technik bei der Lastenteilung.
  • Es besteht Bedarf, sowohl den verfügbaren Arbeitsbereich bei der Lastenteilung zu vergrößern, als auch die Überbeschränktheit zu reduzieren.
  • Außerdem sollte es aufgrund der verfügbaren zwölf Freiheitsgrade bei zwei Robotern, die ein Teil tragen (oder achtzehn Freiheitsgraden, wenn drei Roboter ein Teil tragen) möglich sein, dass redundante Freiheitsgrade existieren, so dass Singularitäten vermieden werden können.
  • Unter Berücksichtigung der vorstehend aufgeführten Gesichtspunkte liegt der Erfindung die hauptsächliche Aufgabe zugrunde, den verfügbaren Arbeitsbereich zu vergrößern, da jeder Roboter einen verbesserten Gebrauch seines "ungeschickten" Arbeitsbereichs machen kann, und Spannungen in dem Teil und in den Robotern aufgrund von Überbeschränkt heit zu reduzieren. Eine weitere Aufgabe ist die Vermeidung von Singularitäten.
  • Zusammenfassung der Erfindung
  • Diese Aufgaben werden gelöst durch ein Verfahren zum Steuern eines Roboters während der Interpolation einer Trajektorie oder Bewegung zu einer vorbestimmten Stellung, beinhaltend die Schritte:
    • a) Ignorieren von wenigstens einem der drei ursprünglich vorbestimmten oder interpolierten Orientierungswerte einer Werkzeugspitze,
    • b) Auffinden neuer Orientierungswerte der Werkzeugspitze, die den Handgelenkspunkt des Roboters möglichst nah an dessen Basis platzieren, wobei
    • c) die ursprünglich vorbestimmten oder interpolierten Ortswerte der Werkzeugspitze beibehalten werden und d) die ursprünglich vorbestimmten oder interpolierten, nicht ignorierten Orientierungswerte der Werkzeugspitze beibehalten werden,
    sowie durch ein System zum Steuern eines Roboters zur Verwendung während der Interpolation einer Trajektorie oder Bewegung zu einer vorbestimmten Stellung, das ausgebildet ist
    • a) zum Ignorieren wenigstens eines der drei ursprünglich vorbestimmten oder interpolierten Orientierungswerte der Werkzeugspitze,
    • b) zum Auffinden neuer Orientierungswerte der Werkzeugspitze, die den Handgelenkspunkt des Roboters möglichst nah an dessen Basis platzieren, unter
    • c) Beibehaltung der ursprünglich vorbestimmten oder interpolierten Ortswerte der Werkzeugspitze und
    • d) Beibehaltung der ursprünglich vorbestimmten oder interpolierten, nicht ignorierten Orientierungswerte der Werkzeugspitze.
  • Nach einer bevorzugten Ausgestaltung werden die Orientierungswerte der Werkzeugspitze gemäß Schritt b) durch einen Weiten-Minimierungsalgorithmus bestimmt.
  • Weiterhin umfasst die Erfindung ein Verfahren und ein System zum Tragen einer Last mit wenigstens zwei Robotern, wobei die Verbindung eines Roboter mit der Last über ein Kardangelenk, ein Kugelgelenk oder ein Scharniergelenk erfolgt. Auf diese Weise schlägt die Erfindung eine neue Möglichkeit vor, wie mehrere Roboter ein Objekt ergreifen und bewegen können.
  • Die Orientierung kann um alle drei Achsen frei rotieren oder in einem Freiheitsgrad beschränkt sein, wobei sie jedoch um zwei Achsen frei rotieren kann, oder sie kann in zwei Freiheitsgraden beschränkt sein, wobei sie jedoch um eine einzelne Achse frei rotieren kann, so dass in jedem dieser Fälle die freien Achsen bzw. die freie Achse gemäß dem Schritt a) ignoriert werden können bzw. kann.
  • Entsprechend handelt es sich bei den eingesetzten Mitteln vorzugsweise um ein Kugelgelenk, ein Scharniergelenk oder ein Kardangelenk.
  • Weiterhin betrifft die Erfindung ein Verfahren zum Tragen einer Last mit wenigstens zwei Robotern, bei dem die Verbindung wenigstens eines Roboters mit der Last über ein Kardangelenk erfolgt, wobei ein Steuern wenigstens eines der Roboter während der Interpolation einer Trajektorie beinhaltet:
    • a) Ignorieren von wenigstens einem der drei ursprünglich vorbestimmten oder interpolierten Orientierungswerte einer Werkzeugspitze,
    • b) Auffinden neuer Orientierungswerte der Werkzeugspitze, die den Handgelenkspunkt des Roboters möglichst nah an dessen Basis platzieren, wobei
    • c) die ursprünglich vorbestimmten oder interpolierten Ortswerte der Werkzeugspitze beibehalten werden und
    • d) die ursprünglich vorbestimmten oder interpolierten, nicht ignorierten Orientierungswerte der Werkzeugspitze beibehalten werden.
  • Alternativ kann im Rahmen von Weiterentwicklungen des vorstehend genannten, erfindungsgemäßen Verfahrens die Verbindung von wenigstens einem Roboter mit der Last über ein Scharniergelenk oder ein Kugelgelenk erfolgen. Auf diese Weise kombiniert die Erfindung einige der vorstehend genannten Vorteile.
  • Ein Wegfall der Erfordernis eines oder mehrerer Freiheitsgrade der Orientierungssteuerung liefert auch wenigstens einen Freiheitsgrad für redundante Lösungen für jeden Roboter, d.h. ein Roboter kann eine gegebenen Stellung auf mehr als eine Weise erreichen (unter Verwendung einer beliebigen Orientierung). Dieser Umstand lässt sich ausnutzen, um Singularitäten bei der Lastenteilung zu vermeiden.
  • Das Singularitäten-Problem lässt sich durch Verwendung einer Trajektorie umgehen, die den gewünschten Stellungen folgt, aber ein Abweichen der Orientierung ermöglicht, so dass die singuläre Stellung vermieden werden kann. Dies ist das Wesen der vorliegenden Erfindung. Das Erleichtern der Orientierungs-Anforderungen für jeden Roboter hat den dreifachen Vorteil, dass dadurch 1) die Reichweite jedes Roboters vergrößert wird (durch Erlaubnis einer Nutzung des "ungeschickten" Arbeitsraumes), 2) Überbestimmtheiten des Teils reduziert werden und 3) der Bedarf reduziert wird, Roboter in die Nähe von singulären Stellungen zu bewegen.
  • Durch Erleichterung der Orientierungs-Anforderungen für jeden Roboter wird erfindungsgemäß der Arbeitsbereich dieses Roboters vergrößert, indem ihm erlaubt wird, sich in "ungeschickte" Bereiche seines Arbeitsbereichs zu bewegen, und die Überbeschränktheit des gemeinsamen Zustands mit dem Teil wird reduziert. Obwohl auf diese Weise nicht in allen Fällen gegenseitige Störungen zwischen den Robotern beseitigt sind, lassen sich die Störbereiche reduzieren, indem den Robotern erlaubt wird, ihre Zugriffspunkte mit unterschiedlichen Orientierungen zu erreichen.
  • Obwohl die Erfindung vorteilhafter Weise bei zwei oder mehr Lasten teilenden Robotern eingesetzt wird, existieren Fälle außerhalb der Lastenteilungs-Problematik, in denen Orientierung nicht wichtig ist und ein einzelner, ein Teil bewegender Roboter von einem ausgeweiteten Arbeitsbereich und einer Singularitäten-Vermeidung profitieren kann. Ein Beispiel hierfür ist das Fallenlassen eines Teils in einen Behälter, wobei es nur darauf ankommt, das Teil über dem Behälter zu platzieren. Es muss nicht ausgerichtet sein.
  • Nach dem Stand der Technik wird zum Bestimmen der Gelenkwinkel eines Roboters bei gegebener Stellung der Werkzeugspitze ein sogenannter Rückwärtsrechnungs-Algorithmus verwendet. Der Rückwärtsrechnungs-Algorithmus wird für gewöhnlich eingesetzt, um die Gelenkwinkel zu bestimmen, die verwendet werden müssen, um eine beliebige, vorbestimmte kartesische Stellung zu erreichen, inklusive der interpolierten Stellungen, die bei einer Bewegung entlang einer kartesischen Trajektorie benutzt werden, beispielsweise einer geraden Linie oder einem Kreis.
  • Erfindungsgemäß wird die vorbestimmte kartesische Stellung jedes Roboter, inklusive während einer Interpolation vorbestimmter Stellungen, die sowohl Ort und Orientierung der Werkzeugspitzen eines jeden Roboters umfassen, in zwei Teile geteilt. Die durch die Trajektorie und das Werkzeug zwischen dem Roboter und dem Teil beschränkten Freiheitsgrade werden derart bestimmt, dass die Zwangsbedingungen erfüllt sind. Die verbleibenden, unbeschränkten Freiheitsgrade werden ausgehend von der vorbestimmten Stellung derart verändert, dass der Roboter eine größte mögliche Reichweite entlang einer gegebenen Trajektorie besitzt.
  • Dieser Algorithmus lässt sich als ein neues Rückwärtsrechnungs-Verfahren in Einzelroboter-Anwendungen einsetzen, in denen die Orientierung der Last nicht entscheidend ist, und er kann bei Lastenteilung mit mehreren Robotern eingesetzt werden, bei der die Lastorientierung nur durch den Ort der Werkzeugspitzen der die Last teilenden Roboter festgelegt werden kann und die Orientierung der Werkzeugspitze jedes Roboters je nach Werkzeugtyp in einem oder mehreren Freiheitsgraden frei ist.
  • Ein Beispiel einer Einzelroboter-Anmeldung ist, wie gesagt, die Überführung von Teilen in Behälter oder auf Fördermittel.
  • Bei der Lastenteilung wird das neue Rückwärtsrechnungs-Verfahren eingesetzt, um ein neues Verfahren zu unterstützen, bei dem ein abhängiger Roboter einem unabhängigen folgt. Die Begriffe "abhängig" und "unabhängig" beziehen sich auf Roboter in geometrisch koordinierter Bewegung, beispielsweise bei Lastenteilung, wie in der am 3. April 2003 von Stoddard et al. eingereichten US-Patentanmeldung 10/406,521 beschrieben. In diesem Fall basiert die tatsächliche Stellung der geteilten Last auf der vorbestimmten Stellung des unabhängigen Roboters. Der Ort des abhängigen Roboters wird auf normale Weise, basierend auf der vorbestimmten Stellung der geteilten Last bestimmt. Allerdings wird die Orientierung aller Werkzeugspitzen der die Last teilenden Roboter einschließlich sowohl der unabhängigen als auch der abhängigen Roboter gemäß des neuen Rückwärtsrechnungs-Verfahren bestimmt. Diese Technik wird mit jeder standardmäßigen, kartesischen Interpolation benutzt, die alle kartesischen Freiheitsgrade (x, y, z, A, B, C) interpoliert, beispielsweise lineare oder zirkulare Interpolation.
  • Der erfindungsgemäße Algorithmus zum Bestimmen der Orientierung jedes die Last teilenden Roboters wird als "Minimal-Weiten"-Lösung bezeichnet. Durch Minimieren des Abstands zwischen der Basis des Roboters und seinem Handgelenkspunkt (WCP, Wrist Center Point) für jeden Punkt entlang einer Trajektorie ist es dem WCP möglich, sich weiter fort entlang der Trajektorie zu bewegen, wodurch der Arbeitsbereich maximiert wird. Dieser Minimal-Weiten-Ansatz lässt sich für den WCP verwenden, da keine bestimmte Orientierung angenommen werden muss. D.h., für jeden Punkt ent lang der Trajektorie darf sich die Orientierung der Werkzeugspitze (TCP) ändern, so dass der WCP näher an der Roboterbasis ist, als wenn die vorgegebene Orientierung verwendet würde. Der Algorithmus findet eine Lösung, die:
    • 1) den gewünschten TCP-Ort erreicht (x, y, z des TCP),
    • 2) eine Orientierung verwendet, so dass der WCP möglichst nahe dem Drehzentrum an der Roboterbasis ist.
  • Der Minimal-Weiten-Algorithmus variiert auf der Grundlage der Anzahl der aufgrund des Werkzeugs freigegebenen Freiheitsgrade und des Roboterdesigns. Im Folgenden werden Algorithmen erläutert, die für drei Werkzeugarten wirksam sind, wobei angenommen wird, dass es sich um einen Roboter mit einem Kugel-Handgelenk handelt, der keine Handgelenks- oder Basis-/Vorderarm-Achsversatze aufweist. Lösungen für andere Roboterarten und für andere Werkzeugarten sind auch möglich.
  • Kurze Beschreibung der Zeichnungen
  • Weitere Vorteile und Eigenschaften der Erfindung ergeben sich aus den Patentansprüchen und der folgenden Beschreibung von Ausführungsbeispielen der Erfindung unter Bezugnahme auf die Zeichnung. Es zeigt:
  • 1 einen Industrieroboter, bei dem die Erfindung einsetzbar ist;
  • 2a2c unterschiedliche Werkzeugarten mit verschiedenen freien Freiheitsgraden; nämlich
  • 2a ein Kugelgelenk, das Drehungen in allen drei Rotations-Freiheitsgraden ermöglicht;
  • 2b ein Scharniergelenk, das Drehungen in einem Freiheitsgrad ermöglicht;
  • 2c ein Kardangelenk, das Rotationen in zwei Freiheitsgraden ermöglicht;
  • 3 eine zwischen zwei Robotern geteilte Last mit unterschiedlichen Arten von Verbindungswerkzeugen;
  • 4a ein Ablaufdiagramm des erfindungsgemäßen Algorithmus für zwei oder drei Freiheitsgrade;
  • 4b, c in bildlicher Form den Minimal-Weiten-Algorithmus für zwei oder drei Freiheitsgrade;
  • 5a ein Ablaufdiagramm des erfindungsgemäßen Algorithmus für einen Freiheitsgrad;
  • 5b, c in bildlicher Darstellung den Minimal-Weiten-Algorithmus für einen Freiheitsgrad;
  • 6a, b einen Vergleich der Standard-Interpolation (6a) mit einer Minimal-Weiten-Interpolation (6b) für ein Kugelgelenk; und
  • 7a–d einen Vergleich der Standardinterpolation mit einer Minimal-Weiten-Interpolation für ein Scharniergelenk.
  • Detaillierte Beschreibung der Erfindung
  • Ein erfindungsgemäßer Industrieroboter 1 besitzt eine feste Basis 2, die ein Karussell 3 trägt, das um eine vertikale A1-Achse drehbar ist. Ein erster Roboterarm 4 ist um eine horizontale A2-Achse drehbar mit dem Karussell 3 verbunden.
  • Der erste Roboterarm 4 trägt, um eine horizontale A3-Achse schwenkbar, einen zweiten Roboterarm 5. An dem Arm 5 ist eine Roboterhand 6 befestigt, die dreiteilig ausgebildet ist, wobei die Teile jeweils um eine Achse A4, A5 bzw. A6 drehbar sind. Die Achsen schneiden sich in einem Punkt der Achse A5, bei dem es sich um den Handgelenkspunkt (WCP) für dieses spezielle Roboterdesign handelt. Das freie Ende des Handteils 7 (um die A6-Achse drehbar) ist mit einem Werkzeug 8 versehen, in der gezeigten Ausgestaltung der Erfindung mit einer Gelenkpfanne eines Kugelgelenks.
  • Wenn ein Werkstück durch einen einzelnen Industrieroboter getragen wird, kommt ein Greifer zum Einsatz, der das Teil in sechs Freiheitsgraden (x, y, z für den Ort sowie Drehungen um die x-, y-, z-Achsen) beschränkt.
  • 2a zeigt die Verbindung mit einem Teil 14 über ein Kugelgelenk mit beispielsweise einer über eine Roboterhand 12 mit dem Roboter verbundenen Gelenkpfanne 11 und einer mit dem Teil 14 verbundenen Kugel 13.
  • Auf diese Weise ist der TCP, das Zentrum der Gelenkpfanne 11, hinsichtlich seiner Stellung (Ort und Orientierung) durch den Roboter fixiert. Die Kugel 13 kann sich in drei Rotations-Freiheitsgraden bewegen. Somit lässt sich das Teil 14 um das Zentrum der Kugel 13 herum in drei Freiheitsgraden frei drehen. Ein solches Werkzeug schränkt nur den Ort ein. (Es beschränkt keine Freiheitsgrade der Orientierung.)
  • Wenn zwei Kugeln 13 weit beabstandet an dem Teil 14 angeordnet sind (wie in 2a gezeigt) und zwei Roboter zum Ergreifen des Teils eingesetzt werden, wobei jeder eine Gelenkpfanne 11 bei einer der Kugeln 13 besitzt, kann das Teil 14 noch immer frei um eine Linie zwischen den beiden Bällen 13 rotieren. Um die Orientierung des Teils bei Verwendung von nur zwei Bällen 13 und Gelenkpfannen 11 als Befestigungsvorrichtungen festzulegen, müssen wenigstens drei Roboter zum Tragen des Teils eingesetzt werden. Dies mag in einigen Fällen sinnvoll sein, jedoch wäre eine Lösung zu bevorzugen, die wirksam wird, wenn nur zwei Roboter zum Tragen des Teils 14 eingesetzt werden.
  • Gemäß der 2b wird ein Teil 14 durch eine Welle oder ein Scharnier 21 getragen, das auf jeder Seite des Teils 14 angebracht ist. Wenn ein Roboter das Teil 14 durch Ergreifen eines Scharniers 21 aufnimmt, kann das Teil 14 sich nur in einem Freiheitsgrad bewegen, da es nur um die Scharnierachse rotieren kann. Dieses Werkzeug beschränkt den Ort und zwei Freiheitsgrade der Orientierung. Wenn nun zwei Roboter das Teil aufnehmen, wobei jeder ein Scharnier 21 ergreift, ist die Orientierung des Teils 14 festgelegt; es ist in einigen Freiheitsgraden überbeschränkt, nicht jedoch in dem durch die Scharniere 21 freigegebenen Freiheitsgrad.
  • Eine dritte Art von Werkzeug ist eine Art von Kardangelenk 31, das in 2c gezeigt ist und Rotationen in zwei Freiheitsgraden ermöglicht, sowie als Kombination von zwei Wellen oder Scharnieren, die jeweils um Achsen unterschiedlicher Orientierung drehbar sind, Rotationen in dem dritten Freiheitsgrad einschränkt oder beschränkt. Ein Teil mit einem Kardangelenk auf jeder Seite könnte ebenfalls durch zwei Roboter getragen werden, wodurch die Überbeschränktheit weiter verbessert wird.
  • Wie in 3 gezeigt, kann eine Kombination von Werkzeugtypen verwendet werden. Wenn beispielsweise ein Roboter (nicht gezeigt) das Teil 14 über ein Kardangelenk 31 ergreift und der andere Roboter (nicht gezeigt) über ein Kugelgelenk 13 zugreift, wird ein dritter Roboter nicht benötigt. Der über das Kardangelenk 31 zugreifende Roboter beschränkt die Bewegung um eine Linie zwischen dem Kardangelenk 31 und der Kugel 13, während die anderen beiden Drehungen des Teils durch den Ort der Greifpunkte beschränkt sind, und keine der drei Drehungen ist überbeschränkt.
  • Während einer normalen Interpolation gemäß dem Stand der Technik wird eine Trajektorie in allen sechs Freiheitsgraden interpoliert. Bei der Lastenteilung mit zwei oder mehr Robotern wird normalerweise ein unabhängiger Roboter und ein abhängiger oder mehrere abhängige Roboter verwendet. Diese Begriffe beziehen sich auf Roboter in geometrisch koordinierten Bewegungen, z.B. bei der Lastenteilung, wie in der am 3. April 2003 eingereichten US-Patentanmeldung 10/406,521 von Stoddard et al. beschrieben, wobei ein Roboter, der unabhängige Roboter, seinem normalen Interpolationsverfahren folgt, während andere, abhängige Roboter sich in Koordinatensystemen bewegen, die sich auf eine Koordinatensystem beziehen, das von dem unabhängigen Roboter "abhängig" und mit diesem verknüft ist, wobei jeder mit einem unabhängigen Roboter verbundene abhängige Roboter lediglich die vollständige Stellung in sechs Freiheitsgraden kopiert, diese von dem unabhängigen Greifpunkt zu dem abhängigen Greifpunkt verschiebt und dann eine Lösung für seine sechs Gelenkwinkel unter Verwendung des gleichen Algorithmus in sechs Freiheitsgraden wie der unabhängige Roboter sucht. Diese Lösungen werden alle innerhalb desselben Servozyklus ermittelt und geben die Gelenkwinkel aller Roboter in demselben Servozyklus aus, wobei für jeden Interpolationszyklus für jeden Roboter eine Lösung ausgegeben wird.
  • Im Zuge der erfindungsgemäßen Verwendung einer "Weiten-Minimalisierung" wird der unabhängige Roboter die vollständige Trajektorie wie gewöhnlich interpolieren und allen abhängigen Robotern alle sechs Freiheitsgrade der kartesischen Information mitteilen, wie dies gewöhnlich nach dem Stand der Technik geschieht, beispielsweise gemäß der vorstehend genannten US-Patentanmeldung 10/406,521. Selbst angesichts der Tatsache, dass jeder Roboter diese interpolierte Orientierung in seiner endgültigen Lösung ignorieren wird, ist die Orientierung wichtig beim Bestimmen des korrekten Versatzes des Greifpunkts jedes Roboters relativ zum Greifpunkt des unabhängigen Roboters.
  • Die endgültige Lösung für den TCP jedes Roboters (unabhängiger und aller abhängigen Roboter) erfolgt mittels der Lösung für den Ort des TCP, der durch den Interpolator des unabhängigen Roboters angegeben und für die abhängigen Roboter verschoben ist (oder mitgeteilte und versetzte Glieder-Informationen). Allerdings werden für die Orientierung jedes TCP (den unabhängigen Roboter eingeschlossen) die von dem Standardinterpolator oder aus Glieder-Informationen stammenden Orientierungsinformationen durch optimierte, aus dem Minimal-Weiten-Algorithmus abgeleitete Orientierungsinformationen substituiert.
  • Für das Kugelgelenk-Werkzeug, das keine Orientierungszwänge auferlegt, ist eine optimierte Orientierung eine solche, die nur geringe oder keine Handgelenks-Winkeländerungen gegenüber dem vorangehenden, interpolierten Wert bewirkt und den Handgelenkspunkt (WCP) so nahe wie möglich am Schnitt punkt der Basisachsen platziert. Im Allgemeinen werden mehrere Sätze von Handgelenkswinkeln das letzte Kriterium erfüllen, so dass das erste Kriterium ein Auswählen des minimalen Bewegungssatzes erforderlich macht, der eine minimale Bewegung der Handgelenks-Gelenke gegenüber den vorherigen, interpolierten Werten bewirkt.
  • Nachfolgend wird der Algorithmus detailliert Schritt für Schritt bei Anwendung auf Roboter mit einer offenen kinematischen Kette und sechs Freiheitsgraden dargestellt, dessen Handgelenke keinen Versatz besitzen und dessen WCP-Lösung unabhängig von der Handgelenksachsen-Lösung durchführbar ist (ein Kugel-Handgelenk). In der Basis können Achsen-Versatze existieren; der Algorithmus wird durch einen Basis-Versatz nicht verändert.
  • Dargestellt ist zunächst der Algorithmus für Minimal-Weiten, wenn die Orientierung in allen drei Freiheitsgraden frei ist, wie durch das Kugelgelenkmodell vorgegeben, oder wenn die Orientierung in zwei Freiheitsgraden frei ist, wie durch das Kardangelenk-Modell für das Werkzeug vorgeben.
  • Die Lösung ist in den 4a4c dargestellt und wird wie folgt ausgeführt:
    Schritt 1: Beginne mit der Stellung (sowohl Ort als auch Orientierung) des TCP vom Interpolator oder einer anderen, vorgegebenen Stellung;
    Schritt 2: Finde die Linie vom Schnittpunkt der Basis-Drehachse mit der Drehachse des zweiten Gelenks, dem "Basisschnittpunkt", zum TCP; (dies ist wahr, selbst wenn zwischen der Basisdrehachse und der Bewegungsebene der Glieder 2 und 3 ein Versatz existiert (eine versetzte Ba sis).)
    Schritt 3: Auffinden des Punktes auf dieser Linie, der genau dem TCP-WCP-Abstand vom TCP (der effektiven Werkzeuglänge) entspricht. Dieser Punkt ist der Ort des neuen WCP;
    Schritt 4: Ermittle die Robotergelenke 1, 2 und 3 für den vorstehend identifizierten WCP gemäß der Standardlösung für den WCP, wie sie in jedem Lehrbuch über Rückwärtsrechnungen bei Roboterkinematiken dargestellt ist.
    Schritt 5: Auffinden der Gelenkwinkel des Roboter-Handgelenks, die den TCP relativ zu dem identifizierten WCP korrekt anordnen. Auf diese Weise bleibt ein Freiheitsgrad der Drehung um die Linie vom WCP zum TCP frei. Allerdings ist in der Praxis eine Gelenkpfanne nicht vollständig frei bezüglich der Rotation um eine Kugel, und der tatsächliche Werkzeugzwang kann helfen, die endgültige Drehung zu bestimmen. Für ein Kardangelenk ist die endgültige Drehung durch die Festdrehung des Kardangelenks festgelegt. Für das Kardangelenk wird die endgültige Drehung durch die Orientierung des Kardangelenks relativ zu der Befestigung oder der getragenen Last bestimmt. Für das Kugelgelenk ist auch die endgültige Drehung frei und sollte so ausgewählt werden, dass sie in der Nähe ihres Wertes aus vorangehenden Interpolationszyklen liegt oder diesen entspricht.
    Schritt 6: Wenn mehrfache Lösungen in den ersten vier Schritten existieren, wähle die Gelenkwinkel des Roboter-Handgelenks, die Werten aus vorangehenden Interpolationszyklen am nächsten liegen.
  • Nachfolgend wird der Algorithmus gemäss den 5a–c dargestellt, wobei angenommen wird, dass nur ein Freiheitsgrad der Orientierung frei ist, wie durch ein Scharniermodell für das Werkzeug vorgegeben:
    Schritt 1: Definiere den TCP auf der Scharnierachse am Ort des definierten Greifpunkts auf der Scharnierachse.
    Schritt 2: Definiere einen Kreis, dessen Mittelpunkt der TCP ist und dessen Ebene durch die Scharnierachse definiert ist. Der Radius des Kreises ist durch den Abstand zwischen TCP und WCP definiert (effektive Werkzeuglänge).
    Schritt 3: Auffinden der Linie von dem Roboter-Basis-Schnittpunkt zum TCP wie im Fall des Kugelgelenks.
    Schritt 4: Projiziere die vorstehend genannte Linie auf die Ebene des vorstehend definierten Kreises.
    Schritt 5: Der Schnittpunkt des Kreises mit der projizierten Linie ist der gewünschte Ort des WCP. Er stellt den Schnittpunkt des Kreises mit der kleinstmöglichen Kugel um den Roboter-Basis-Schnittpunkt (die Minimalweite des WCP, die den Kreis berührt) dar. Ermitteln der Lösungen für (Bestimmen der) Robotergelenke 1, 2 und 3 wie im Falle des Kugelgelenks (standardmäßige Lehr buchlösung).
    Schritt 6: Ermitteln der Lösung für die Handgelenks-Gelenkwinkel, die den TCP relativ zum WCP korrekt anordnen. Auf diese Weise verbleibt eine freie Drehbewegung, die durch Ausrichtung der Scharnierachse festgelegt werden kann.
  • Bei korrekter Anordnung der Werkzeuge wird die Verwendung der beiden vorstehenden Lösungen für Scharniergelenks-, Kardangelenks- und/oder Kugelgelenks-Werkzeuge für jeden Punkt entlang einer Trajektorie auch Singularitäten des Handgelenks entlang der Trajektorie vermeiden.
  • Die 6a und 6b zeigen einen Vergleich des Anhebens eines Teils, hier eines Autos, unter Verwendung eines starren Greifers (6a), der das Auto unter Verwendung von Kugelgelenks-Verbindungen anhebt, und des Minimal-Weiten-Algorithmus (6b). Das Auto wird entlang einer vertikalen Linie von einer unteren Stellung in eine obere Stellung getragen. Bei Interpolation unter Anwendung eines starren Greifers und einer standardgemäßen Rückwärtsrechnung (6a) ist die Reichweite begrenzt, da die Orientierung immer derjenigen des Auto-Trägers (horizontal) entsprechen muss. Zusätzlich muss sich das Handgelenk in die Nähe einer Singularität bewegen. Bei Rückwärtsrechnung einer Kugelgelenks-Verbindung zusammen mit einer Minimalweite bleibt das Handgelenk auf einer Linie mit dem Roboter-Basisschnittpunkt und gelangt niemals in die Nähe einer Singularität, mit Ausnahme der extremen Reichweiten-Grenzen, so dass dementsprechend kein Problem auftritt. Die Reichweite ist vergrößert, da das Handgelenk nicht horizontal ausgerichtet bleiben muss.
  • Die 7a bis 7d zeigen einen Vergleich der standardgemäßen Lösung der Rückwärtsrechnung beim Transportieren eines Teils, z.B. eines Autos, mit einem starren Greifer gegenüber der Minimal-Weiten-Lösung der Rückwärtsrechnung unter Verwendung von Scharnierverbindungen zwischen dem Roboter und dem Auto-Träger. Die 7a und 7c zeigen Draufsichten, wohingegen die 7b und 7d Seitenansichten zeigen. Das Handgelenk ist stärker eingeschränkt als bei Verwendung des Kugelgelenks, kann aber realistisch mit zwei eine Last teilenden Roboter eingesetzt werden. Das Diagramm zeigt Drauf- und Seitenansichten derselben horizontalen Bewegung. Diese ist bei einer Höhe dargestellt, die im Falle einer standardgemäßen Lösung der Rückwärtsrechnung ein Problem ergeben würde, da sie in die Nähe einer Singularität kommt. Im Falle der Minimal-Weiten-Lösung der Rückwärtsrechnung existiert kein solches Problem, mit Ausnahme der absoluten Extrempunkte. Es ergibt sich außerdem eine Reichweitenvergrößerung für die Minimalweiten-Lösung im Vergleich mit der Standardlösung der Rückwärtsrechnung, da der Handgelenkspunkt in den Extrempunkten tiefer liegt.

Claims (18)

  1. Verfahren zum Steuern eines Roboters während einer Interpolation einer Trajektorie oder Bewegung zu einer vorbestimmten Stellung, beinhaltend die Schritte: a) Ignorieren von wenigstens einem der drei ursprünglich vorbestimmten oder interpolierten Orientierungswerte einer Werkzeugspitze, b) Auffinden neuer Orientierungswerte der Werkzeugspitze, die den Handgelenkspunkt des Roboters möglichst nah an dessen Basis platzieren, wobei c) die ursprünglich vorbestimmten oder interpolierten Ortswerte der Werkzeugspitze beibehalten werden und d) die ursprünglich vorbestimmten oder interpolierten, nicht ignorierten Orientierungswerte der Werkzeugspitze beibehalten werden.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass Schritt b) mittels eines Weiten-Minimierungsalgorithmus durchgeführt wird.
  3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Orientierung der Werkzeugspitze in zwei Freiheitsgraden beschränkt bleibt, jedoch um eine einzelne Achse frei rotieren kann, so dass die freie Achse gemäß Schritt a) ignoriert werden kann.
  4. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Orientierung der Werkzeugspitze in einem Freiheitsgrad beschränkt ist, jedoch um zwei Achsen frei rotieren kann, so dass die freien Achsen gemäß Schritt a) ignoriert werden können.
  5. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Orientierung der Werkzeugspitze um alle drei Achsen frei rotieren kann, so dass die freien Achsen gemäß Schritt a) ignoriert werden können.
  6. Verfahren zum Tragen einer Last mit wenigstens zwei Robotern, wobei eine Verbindung von wenigstens einem Roboter mit der Last über ein Kardangelenk erfolgt.
  7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass eine Verbindung von wenigstens einem Roboter mit der Last über ein Scharniergelenk erfolgt.
  8. Verfahren nach Anspruch 6 oder 7, dadurch gekennzeichnet, dass eine Verbindung von wenigstens einem Roboter mit der Last über ein Kugelgelenk erfolgt.
  9. Verfahren nach einem der Ansprüche 6 bis 8, dadurch gekennzeichnet, dass ein Steuern wenigstens eines der Ro boter während der Interpolation einer Trajektorie beinhaltet: a) Ignorieren von wenigstens einem der drei ursprünglich vorbestimmten oder interpolierten Orientierungswerte einer Werkzeugspitze, b) Auffinden neuer Orientierungswerte der Werkzeugspitze, die den Handgelenkspunkt des Roboters möglichst nah an dessen Basis platzieren, wobei c) die ursprünglich vorbestimmten oder interpolierten Ortswerte der Werkzeugspitze beibehalten werden und d) die ursprünglich vorbestimmten oder interpolierten, nicht ignorierten Orientierungswerte der Werkzeugspitze beibehalten werden.
  10. System zum Steuern eines Roboters zur Verwendung während einer Interpolation einer Trajektorie oder Bewegung zu einer vorbestimmten Stellung, das ausgebildet ist: a) zum Ignorieren wenigstens eines der drei ursprünglich vorbestimmten oder interpolierten Orientierungswerte der Werkzeugspitze, b) zum Auffinden neuer Orientierungswerte der Werkzeugspitze, die den Handgelenkspunkt des Roboters möglichst nah an dessen Basis platzieren, unter c) Beibehaltung der ursprünglich vorbestimmten oder interpolierten Ortswerte der Werkzeugspitze und d) Beibehaltung der ursprünglich vorbestimmten oder interpolierten, nicht ignorierten Orientierungswerte der Werkzeugspitze.
  11. System nach Anspruch 10, beinhaltend einen Weiten-Minimierungsalgorithmus zum Bestimmen neuer Orientierungswerte der Werkzeugspitze.
  12. System nach Anspruch 10 oder 11, dadurch gekennzeichnet, dass die Orientierung der Werkzeugspitze in zwei Freiheitsgraden beschränkt bleibt, jedoch um eine einzelne Achse frei rotieren kann, so dass die freie Achse gemäß Schritt a) ignoriert werden kann.
  13. System nach Anspruch 10 oder 12, dadurch gekennzeichnet, dass die Orientierung der Werkzeugspitze in einem Freiheitsgrad beschränkt ist, jedoch um zwei Achsen frei rotieren kann, so dass die freien Achsen gemäß Schritt a) ignoriert werden können.
  14. System nach Anspruch 10 oder 11, dadurch gekennzeichnet, dass die Orientierung der Werkzeugspitze um alle drei Achsen frei rotieren kann, so dass die freien Achsen gemäß Schritt a) ignoriert werden können.
  15. System aus wenigstens zwei Robotern, die eine Last tragen, dadurch gekennzeichnet, dass eine Verbindung von wenigstens einem Roboter mit der Last über ein Kardangelenk erfolgt.
  16. System nach Anspruch 15, dadurch gekennzeichnet, dass eine Verbindung von wenigstens einem Roboter mit der Last über ein Kugelgelenk erfolgt.
  17. System nach Anspruch 15 oder 16, dadurch gekennzeichnet, dass eine Verbindung von wenigstens einem Roboter mit der Last über ein Scharniergelenk erfolgt.
  18. System nach einem der Ansprüche 15 bis 17, dadurch gekennzeichnet; dass wenigstens ein Roboter über ein Kardangelenk mit der Last verbunden ist und dass wenigstens einer der Roboter ein Steuerungssystem zur Verwendung während einer Interpolation einer Trajaktorie oder Bewegung zu einer vorbestimmten Stellung aufweist, das ausgebildet ist a) zum Ignorieren wenigstens eines der drei ursprünglich vorbestimmten oder interpolierten Orientierungswerte der Werkzeugspitze, b) zum Auffinden neuer Orientierungswerte der Werkzeugspitze, die den Handgelenkspunkt des Roboters möglichst nah an dessen Basis platzieren, unter c) Beibehaltung der ursprünglich vorbestimmten oder interpolierten Ortswerte der Werkzeugspitze und d) Beibehaltung der ursprünglich vorbestimmten oder interpolierten, nicht ignorierten Orientierungswerte der Werkzeugspitze.
DE10351670A 2003-11-05 2003-11-05 Verfahren und Vorrichtung zum Steuern von Robotern Withdrawn DE10351670A1 (de)

Priority Applications (6)

Application Number Priority Date Filing Date Title
DE10351670A DE10351670A1 (de) 2003-11-05 2003-11-05 Verfahren und Vorrichtung zum Steuern von Robotern
JP2004319410A JP5090618B2 (ja) 2003-11-05 2004-11-02 ロボットを制御するための方法、負荷を運ぶ方法、ロボットを制御するためのシステムおよび負荷を運ぶ少なくとも2つのロボットのシステム
DE502004012052T DE502004012052D1 (de) 2003-11-05 2004-11-03 Verfahren und Vorrichtung zum Steuern von Robotern
AT04026013T ATE493237T1 (de) 2003-11-05 2004-11-03 Verfahren und vorrichtung zum steuern von robotern
EP04026013A EP1529605B1 (de) 2003-11-05 2004-11-03 Verfahren und Vorrichtung zum Steuern von Robotern
US10/981,278 US7421314B2 (en) 2003-11-05 2004-11-04 Method and device for controlling robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10351670A DE10351670A1 (de) 2003-11-05 2003-11-05 Verfahren und Vorrichtung zum Steuern von Robotern

Publications (1)

Publication Number Publication Date
DE10351670A1 true DE10351670A1 (de) 2005-06-30

Family

ID=34428570

Family Applications (2)

Application Number Title Priority Date Filing Date
DE10351670A Withdrawn DE10351670A1 (de) 2003-11-05 2003-11-05 Verfahren und Vorrichtung zum Steuern von Robotern
DE502004012052T Expired - Lifetime DE502004012052D1 (de) 2003-11-05 2004-11-03 Verfahren und Vorrichtung zum Steuern von Robotern

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE502004012052T Expired - Lifetime DE502004012052D1 (de) 2003-11-05 2004-11-03 Verfahren und Vorrichtung zum Steuern von Robotern

Country Status (5)

Country Link
US (1) US7421314B2 (de)
EP (1) EP1529605B1 (de)
JP (1) JP5090618B2 (de)
AT (1) ATE493237T1 (de)
DE (2) DE10351670A1 (de)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006086021A2 (en) * 2004-10-25 2006-08-17 University Of Dayton Method and system to provide improved accuracies in multi-jointed robots through kinematic robot model parameters determination
JP4226623B2 (ja) * 2006-09-29 2009-02-18 ファナック株式会社 ワーク取り出し装置
WO2008074836A1 (en) * 2006-12-19 2008-06-26 Abb Research Ltd Parts handling device, system and method
JP5235376B2 (ja) * 2007-10-05 2013-07-10 川崎重工業株式会社 ロボットのターゲット位置検出装置
DE102008043156A1 (de) * 2008-10-24 2010-05-06 Kuka Roboter Gmbh Halterungsvorrichtung, medizinischer Roboter und Verfahren zum Einstellen des Tool Center Points eines medizinischen Roboters
JP4730440B2 (ja) * 2009-01-01 2011-07-20 ソニー株式会社 軌道計画装置及び軌道計画方法、並びにコンピューター・プログラム
US8634950B2 (en) * 2009-12-14 2014-01-21 Embraer S.A. Automated positioning and alignment method and system for aircraft structures using robots
US8676382B2 (en) 2010-05-26 2014-03-18 GM Global Technology Operations LLC Applying workspace limitations in a velocity-controlled robotic mechanism
US9067278B2 (en) 2013-03-29 2015-06-30 Photon Automation, Inc. Pulse spread laser
JP6238628B2 (ja) * 2013-08-06 2017-11-29 キヤノン株式会社 ロボット装置、ロボット制御方法、ロボット制御プログラム及びロボット装置を用いた部品の製造方法
EP2845696B1 (de) * 2013-09-10 2017-05-17 Siemens Aktiengesellschaft Bearbeitungsmaschine mit redundanten Achsen und Auflösung der Redundanz in Echtzeit
US9981389B2 (en) 2014-03-03 2018-05-29 California Institute Of Technology Robotics platforms incorporating manipulators having common joint designs
US9862090B2 (en) * 2014-07-25 2018-01-09 California Institute Of Technology Surrogate: a body-dexterous mobile manipulation robot with a tracked base
DE102015008188B3 (de) * 2015-06-25 2016-06-16 Kuka Roboter Gmbh Abfahren einer vorgegebenen Bahn mit einem Roboter
CN108172106B (zh) * 2016-05-20 2019-08-20 南通大学 连杆参数表达直观的基于d-h参数法的机器人运动学教具
US10065311B1 (en) * 2016-06-08 2018-09-04 X Development Llc Singularity handling for robot jogging
US11667035B2 (en) * 2019-07-01 2023-06-06 Wisconsin Alumni Research Foundation Path-modifying control system managing robot singularities
JP7502439B2 (ja) * 2020-07-07 2024-06-18 ファナック株式会社 ロボット制御装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US4975856A (en) * 1986-02-18 1990-12-04 Robotics Research Corporation Motion controller for redundant or nonredundant linkages
GB2232504A (en) * 1989-05-23 1990-12-12 Honda Motor Co Ltd Method of teaching a robot
JPH0720915A (ja) * 1993-07-06 1995-01-24 Fanuc Ltd ロボットの同期制御方法
US6317651B1 (en) * 1999-03-26 2001-11-13 Kuka Development Laboratories, Inc. Trajectory generation system
US20020120363A1 (en) * 1998-12-08 2002-08-29 J. Kenneth Salisbury Mater having redundant degrees of freedom
US20020192058A1 (en) * 2000-09-01 2002-12-19 Erich Harsch Articulated arm transport system
US20030171847A1 (en) * 2002-03-07 2003-09-11 Fanuc Robotics America, Inc. Method of controlling a robot through a singularity

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS594266B2 (ja) * 1978-07-28 1984-01-28 元田電子工業株式会社 先端制御ロボツト
US4785528A (en) * 1986-12-22 1988-11-22 The Boeing Company Robotic work positioning system
US4964062A (en) * 1988-02-16 1990-10-16 Ubhayakar Shivadev K Robotic arm systems
JPH07285089A (ja) * 1994-04-14 1995-10-31 Mitsubishi Heavy Ind Ltd 5指手腕機構
US6070109A (en) * 1998-03-10 2000-05-30 Fanuc Robotics North America, Inc. Robot calibration system
DE29909047U1 (de) * 1999-05-22 2000-10-19 KUKA Schweissanlagen GmbH, 86165 Augsburg Positioniervorrichtung für Werkstückträger oder Werkstücke
US6356807B1 (en) * 1999-08-13 2002-03-12 Fanuc Robotics North America, Inc. Method of determining contact positions, calibration parameters, and reference frames for robot assemblies
US6434449B1 (en) * 2000-08-03 2002-08-13 Pierre De Smet Method and device for automated robot-cell calibration
JP3715537B2 (ja) * 2001-02-19 2005-11-09 本田技研工業株式会社 多関節ロボットの干渉回避方法およびプログラム
DE10255037A1 (de) * 2002-11-26 2004-06-09 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Bearbeiten eines Werkstücks
US6804580B1 (en) 2003-04-03 2004-10-12 Kuka Roboter Gmbh Method and control system for controlling a plurality of robots
WO2005044522A2 (en) * 2003-10-27 2005-05-19 Abb Ab Method for controlling a robot

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4975856A (en) * 1986-02-18 1990-12-04 Robotics Research Corporation Motion controller for redundant or nonredundant linkages
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
GB2232504A (en) * 1989-05-23 1990-12-12 Honda Motor Co Ltd Method of teaching a robot
JPH0720915A (ja) * 1993-07-06 1995-01-24 Fanuc Ltd ロボットの同期制御方法
US20020120363A1 (en) * 1998-12-08 2002-08-29 J. Kenneth Salisbury Mater having redundant degrees of freedom
US6317651B1 (en) * 1999-03-26 2001-11-13 Kuka Development Laboratories, Inc. Trajectory generation system
US20020192058A1 (en) * 2000-09-01 2002-12-19 Erich Harsch Articulated arm transport system
US20030171847A1 (en) * 2002-03-07 2003-09-11 Fanuc Robotics America, Inc. Method of controlling a robot through a singularity

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JP 07-020915 A (Internet: http://www19.ipdl.jpo.go .jp/PA1/cgi-bin/PA1INIT/)
JP 07020915 A (Internet: http://www19.ipdl.jpo.go.jp/PA1/cgi-bin/PA1INIT/)in: Patent Abstracts of Japan *

Also Published As

Publication number Publication date
JP2005138278A (ja) 2005-06-02
JP5090618B2 (ja) 2012-12-05
DE502004012052D1 (de) 2011-02-10
US20050125100A1 (en) 2005-06-09
ATE493237T1 (de) 2011-01-15
EP1529605B1 (de) 2010-12-29
EP1529605A2 (de) 2005-05-11
EP1529605A3 (de) 2008-12-17
US7421314B2 (en) 2008-09-02

Similar Documents

Publication Publication Date Title
EP1529605B1 (de) Verfahren und Vorrichtung zum Steuern von Robotern
EP3341164B1 (de) Robotergreifer
DE102014204550B4 (de) Kugelarretierungs-kompensator zum einsatz mit einem roboter-werkzeug
DE69604140T2 (de) Positioniermechanismus mit mehreren Freiheitsgraden
DE102004010312B4 (de) Verfahren zum Einmessen eines Arbeitspunktes
DE102013109876A1 (de) Verfahren zur Steuerung eines redundanten Roboters
EP3323026A1 (de) Ermitteln eines eingabebefehls für einen roboter, der durch manuelles ausüben einer kraft auf den roboter eingegeben wird
DE102016106082A1 (de) Robotersystem mit umkonfigurierbarer Organanordnung
EP1439934B1 (de) Vorrichtung zur fünfachsigen bewegung und/oder positionierung eines objektes
DE102014113268B4 (de) Achswinkelbestimmungsverfahren für einen sechsachsigen Roboter und Steuervorrichtung für einen sechsachsigen Roboter
DE2745932A1 (de) Manipulator
DE3741632A1 (de) Verfahren und vorrichtung zum erkennen und ansteuern eines raumzieles
EP0232548B1 (de) Bearbeitungsstation für grosse Werkstücke
EP3592508A1 (de) Roboterarm mit einer mechanischen anschlagsvorrichtung
WO2006039730A2 (de) Parallelkinematische vorrichtung
DE102013205008B4 (de) Vorrichtung zur Erzielung vorteilhafter kinematischer Eigenschaften bei der Verschwenkung programmgesteuert bewegter, rotationssymmetrisch wirkender Werkzeuge
DE112018000610T5 (de) Schräge und kreisförmige Grenze für Linienverfolgung und kreisförmige Verfolgung
WO2003086717A1 (de) Hybrider parallelmanipulator zum verfahren eines arbeitskopfes in raum
DE102011105616A1 (de) Hybridroboter auf der Basis von drei Linearaktoren deren Achsen sich schneiden, eines Parellelitätshalters, eines multifunktionalen Raumgelenkes, eines Mehrachsenraumgelenkes und einer Raumorientierungseinheit
EP3569367B1 (de) Rechnergestütztes ermitteln einer bewegung einer vorrichtung
EP3173192A1 (de) Anordnung und verfahren zur aufeinander abgestimmten steuerung von wenigstens zwei parallelkinematik-robotern
DE19841243A1 (de) Industrieroboter
DE69022407T2 (de) Nachfolgesteuerungssystem für eine zusätzliche roboterachse.
DE102015012956A1 (de) Gelenkstruktur, die einen Längenspielraum einer Versorgungsleitung optimieren kannn, und Industrieroboter mit der Gelenkstruktur
DE3601456A1 (de) Mechanischer gelenkmechanismus

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R082 Change of representative
R120 Application withdrawn or ip right abandoned

Effective date: 20120606