DE102014104226A1 - Verfahren zur Erzeugung eines Pfades eines mehrachsigen Roboters und Steuervorrichtung für den mehrachsigen Roboter - Google Patents

Verfahren zur Erzeugung eines Pfades eines mehrachsigen Roboters und Steuervorrichtung für den mehrachsigen Roboter Download PDF

Info

Publication number
DE102014104226A1
DE102014104226A1 DE102014104226.3A DE102014104226A DE102014104226A1 DE 102014104226 A1 DE102014104226 A1 DE 102014104226A1 DE 102014104226 A DE102014104226 A DE 102014104226A DE 102014104226 A1 DE102014104226 A1 DE 102014104226A1
Authority
DE
Germany
Prior art keywords
path
points
robot
point
arm
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.)
Granted
Application number
DE102014104226.3A
Other languages
English (en)
Other versions
DE102014104226B4 (de
DE102014104226B8 (de
Inventor
c/o DENSO WAVE INCORPORATED Iwasaki Yoshirou
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.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
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 Denso Wave Inc filed Critical Denso Wave Inc
Publication of DE102014104226A1 publication Critical patent/DE102014104226A1/de
Publication of DE102014104226B4 publication Critical patent/DE102014104226B4/de
Application granted granted Critical
Publication of DE102014104226B8 publication Critical patent/DE102014104226B8/de
Active 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/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • 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/40429Stochastic, probabilistic generation of intermediate points

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

Ein Pfad wird für einen bei einer Spitze der Verbindungen eines mehrachsigen Roboters angebrachten Endaktuators erzeugt, wobei der Endaktuator entlang des Pfades von dessen Startpunkt zu dessen Endpunkt bewegt wird. Beim Erzeugen des Pfads werden Start- und Endpunkte positionierend im realen Raum spezifiziert und anfängliche Durchgangspunkte werden ebenso zwischen den Start- und Endpunkten erzeugt. Koordinatenpositionen sowohl von den spezifizierten Start- und Endpunkten als auch von den erzeugten anfänglichen Durchgangspunkten werden zu Winkel der entsprechenden Achsen der Gelenke umgewandelt. Basierend auf den Start- und Endpunkten und anfänglichen Durchgangspunkten, die zu dem Gelenkwinkelraum umgewandelt wurden, wird der Pfad erzeugt, der dem Endaktuator ermöglicht, in kürzester Zeit von dessen Startpunkt zu dessen Endpunkt bewegt zu werden, während die anfänglichen Durchgangspunkte wiederholend zum Erzeugen des Pfads verändert werden.

Description

  • HINTERGRUND DER ERFINDUNG
  • [Technisches Gebiet der Erfindung]
  • Die vorliegende Erfindung betrifft ein Verfahren zum Erzeugen eines Pfades, um die Bewegungsgeschwindigkeit eines mehrachsigen Roboters zu beschleunigen und betrifft eine Steuervorrichtung für den mehrachsigen Roboter.
  • [Stand der Technik]
  • In letzter Zeit wird bei Standorten auf der grünen Wiese, wie z. B. einer produktiven Anlage, eine große Vielfalt von Industrierobotern verwendet. Solche Industrieroboter enthalten sogenannte mehrachsige Roboter mit einer Mehrzahl von Gelenken (Achsen). Solche mehrachsigen Roboter werden für Schweißarbeiten, Beschichtungsarbeiten, den Zusammenbau von Teilen, die Lieferung von Teilen und dergleichen verwendet. Bei einem solchen mehrachsigen Roboter ist es durch seinen Charakter erforderlich, dessen Zeitdauer von einem Startpunkt zu einem Endpunkt zu reduzieren, d. h. erforderlich, um die Bewegungsgeschwindigkeit zu erhöhen.
  • Verfahren zum Steuern der Beschleunigung/Verzögerung der Bewegung eines mehrachsigen Roboters zum Erhöhen der Bewegungsgeschwindigkeit sind bekannt. Beispielsweise wird entsprechend eines von solchen Verfahren ein Basisbewegungsgeschwindigkeitsmuster in eine Trapezform ausgebildet, um eine maximale Beschleunigung gemäß der Stellung des Roboters gefolgt durch Korrektur des Geschwindigkeitsmusters zu berechnen. Gemäß einem weiteren Verfahren wird ein mehrachsiger Roboter unter einer Zweipunktregelung (bang-bang control) unter Verwendung eines maximalen Drehmomentmusters bewegt, das auf einem Maximalprinzip basiert.
  • In diesem trapezförmigen Geschwindigkeitsmuster ist die Beschleunigung der Zeitdauer konstant, die jedem der Schulterabschnitte entspricht. Allerdings verändert sich, da sich die tatsächliche Stellung des mehrachsigen Roboters von Moment zu Moment verändert, die maximale Beschleunigung auf eine nicht-lineare Weise. Mit anderen Worten, obwohl eine maximale Beschleunigung tatsächlich in einer nicht-linearen Weise erreicht werden kann, wird die Beschleunigung des vorstehenden Bewegungsgeschwindigkeitsmusters in einer linearen Weise ausgeführt. Dadurch sind die Motoren nicht in der Lage, deren Leistung ausreichend auszuüben. Bezüglich des letzten Verfahrens werden, obwohl es tatsächliche Randbedingungen gibt, die durch die obere Grenze der Bewegungsgeschwindigkeit (Randbedingungen) auferlegt werden, solche Randbedingungen ignoriert. Als Stand der Technik betreffend die vorstehend erwähnte Steuerung der Beschleunigung/Verzögerung sind in den Patentdokumenten JP-A-2000-094371 , JP-A-2002-132349 und JP-A-2002-321178 offenbarte Steuerverfahren bekannt.
  • Die in den dargelegten Patentdokumenten offenbarten Übersichten und Probleme der Steuerverfahren werden nachstehend erläutert.
  • Das Patentdokument JP-A-2000-094371 offenbart ein Verfahren, in dem die Beschleunigung in dem trapezförmigen Geschwindigkeitsmuster entsprechend dem Gewicht eines Werkzeugs und der Trägheit verändert wird. Allerdings wird entsprechend dieser Steuerung die Beschleunigung bei einer konstanten Rate basierend auf der bei dem Zeitpunkt des Anbringens/Lösens des Werkzeugs errechneten Beschleunigung erhöht. Demgemäß kann die Beschleunigung nicht über die Beschränkung hinaus gehen, die durch die Eigenschaften des trapezförmigen Geschwindigkeitsmusters auferlegt wird.
  • Das in dem Patentdokument JP-A-2002-132349 offenbarte Steuerverfahren erwähnt auch die Zeitdauer zum Ausführen der Beschleunigung/Verzögerung basierend auf dem trapezförmigen Geschwindigkeitsmuster. Insbesondere wird bei der Zeitdauer eine tatsächliche Beschleunigungskurve so eingestellt, dass sie so weit wie möglich mit einer voreingestellten beschränkten Beschleunigungskurve übereinstimmt, um eine Ausgabe einer größeren Beschleunigung zu ermöglichen.
  • Allerdings ist in diesem Patentdokument unklar, wie die voreingestellte Begrenzungsbeschleunigungskurve berechnet wird. Ferner wird die Kurve als ein Parameter für jede der Achsen, jede der Bewegungsrichtungen und jede der Beschleunigungen/Verzögerungen vorgesehen.
  • Demgemäß werden in diesem Steuerverfahren: (1) eine Mehrzahl von Parameter vorgesehen und dadurch ist die Steuerung mühsam; zudem können (2) die Parameter, die diskrete Werte sind, nicht genau in Übereinstimmung mit der Beschleunigungskurve gebracht werden; ferner wird (3), obwohl eine maximale Beschleunigung von der Stellung des Roboters abhängt, dieser Punkt nicht berücksichtigt. Daher wird dieses Steuerverfahren nicht als ein allgemeines Verfahren betrachtet.
  • Das Patentdokument JP-A-2002-321178 offenbart ein Steuerverfahren, in dem eine dynamische Gleichung unter Berücksichtung der Bewegungsgleichungen jedes der Achsen eines Roboters bei dem Startpunkt einer Bewegung, dem Endpunkt einer Bewegung, dem Startpunkt einer Verzögerung, und dem Endpunkt der Bewegung gelöst wird, um dadurch die Beschleunigungszeit und die Verzögerungszeit zu minimieren. Allerdings kann mit diesem Steuerverfahren die Beschleunigung/Verzögerung bei anderen Aktionspunkten als die vorstehend erwähnten Aktionspunkte minimiert werden.
  • KURZFASSUNG DER ERFINDUNG
  • Dadurch wird gewünscht, ein Verfahren zum Erzeugen eines Pfades (oder einer Kurvenbahn) eines mehrachsigen Roboters vorzusehen, um die Zeitdauer der Bewegung des Endaktuators des Roboters zu verkürzen und den Betrag der Erzeugung des Pfades zu reduzieren, und eine Steuervorrichtung für den Roboter in einer kürzeren Zeitdauer seines Endaktuators vorzusehen.
  • Als eine beispielhafte Ausführungsform ist ein Verfahren zum Erzeugen (oder Herstellen) eines Pfades für den mehrachsigen Roboter vorgeschlagen, der mit einer Mehrzahl von bewegbaren Achsen vorgesehen ist, die aus einer Mehrzahl von Verbindungen und einer Mehrzahl von Gelenken gebildet sind, wobei ein Endaktuator bei einer Spitze der mit den Gelenken verbundenen Verbindungen angebracht ist und entlang des Pfades bewegt wird, wobei der Schritt die Schritte enthält: Spezifizieren eines Startpunkts und eines Endpunkts; Erzeugen eines Durchgangspunkts zwischen den spezifizierten Start- und Endpunkten; Umwandeln der Koordinatenpositionen von sowohl den spezifizieren Start- und Endpunkten als auch den erzeugten anfänglichen Durchgangspunkten in dem Winkel jeder der bewegbaren Achsen der Gelenke; und Erzeugen basierend sowohl auf den spezifizierten Start- und Endpunkten als auch den erzeugten anfänglichen Durchgangspunkten, die der Winkelumwandlung unterzogen wurden, des Pfades, der dem Endaktuator ermöglicht, sich in kürzester Zeit von dessen Startpunkt zu dessen Endpunkt zu bewegen, wobei die Herstellung des Pfades wiederholt Veränderungen der anfänglichen Durchgangspunkte enthält.
  • Vorzugsweise sind die anfänglichen Durchgangspunkte drei an der Zahl.
  • Noch bevorzugter erzeugt der Schritt der Erzeugung des Pfades Geschwindigkeitsmuster der ersten und zweiten Gelenke, um jeweils erste und zweite Gelenke aus der Mehrzahl der Gelenke basierend auf dem Start- und Endpunkt anzutreiben, die der Winkelumwandlung unterzogen wurden, wobei die zweite Verbindung näher an dem Endaktuator positioniert ist als die erste Verbindung, die Geschwindigkeitsmuster eine Bewegung der zweiten Verbindung ermöglichen, i) um eine Reaktion zum Erhöhen einer Beschleunigungskraft zu bewirken, die durch das erste Gelenk erzeugt wird, wenn begonnen wird, dem Endaktuator von dem Startpunkt zu dem Endpunkt zu bewegen, und ii) eine Reaktionskraft zum Erhöhen einer Verzögerungskraft zu bewirken, die durch das erste Gelenk erzeugt wird, wenn der Endaktuator bei dem Endpunkt gestoppt wird.
  • Als weitere beispielhafte Ausführungsform wird eine Vorrichtung zum Steuern des Antriebs eines mehrachsigen Roboters vorgesehen, der mit einer Mehrzahl von bewegbaren Achsen vorgesehen ist, die aus einer Mehrzahl von Verbindungen und einer Mehrzahl von Gelenken gebildet sind, aufweisend: eine Positionsspezifizierungseinrichtung zum Spezifizieren eines Startpunkts und eines Endpunkts eines Pfades, der kontinuierlich von dem Startpunkt zu dem Endpunkt verläuft, wobei der Endaktuator bei einer Spitze der mit den Gelenken verbundenen Verbindungen angebracht ist; eine erste Erzeugungseinrichtung zum Erzeugen eines Durchgangspunkts zwischen den spezifizierten Start- und Endpunkten; eine erste Umwandlungseinrichtung zum Umwandeln von Koordinatenpositionen sowohl von den spezifizierten Start- und Endpunkten als auch von den erzeugten anfänglichen Durchgangspunkten in Winkel von jeder der bewegbaren Achsen der Gelenke; zweite Erzeugungseinrichtung zum Erzeugen basierend auf den spezifizierten Start- und Endpunkten und den erzeugten anfänglichen Durchgangspunkten, die der Winkelumwandlung unterzogen wurden, des Pfades, der dem Endaktuator ermöglicht, sich in kürzester Zeit von dessen Startpunkt zu dessen Endpunkt zu bewegen, wobei die Herstellung des Pfades wiederholt Veränderungen der anfänglichen Durchgangspunkte enthält; und eine Steuereinrichtung zum Steuern des Antriebs der Mehrzahl der bewegbaren Achsen basierend auf dem erzeugten Pfad.
  • Da der vorstehend erwähnte Pfad als Ergebnis der Berechnung basierend auf den Bewegungsdynamiken eines mehrachsigen Roboters erzeugt wird, wird der Pfad, der die Geschwindigkeit maximieren kann, innerhalb eines Erfüllungsbereichs von Randbedingungen des Roboters erhalten. Demgemäß wird ein optimaler Pfad erhalten, der praktisch verwendet werden kann.
  • Vorausgesetzt, dass die Berechnung unter Verwendung der Koordinatenposition des Endaktuators ausgeführt wird, und dass die Konfiguration des Arms bei gewissen Punkten des Pfades verändert wird, wird der Typ der inversen Kinematiken bei dem Punkt verändert, wenn die Konfiguration verändert wird. Daher werden die Randbedingungen des Roboters betreffend die Beschleunigung und die Geschwindigkeit verändert, wobei die Berechnung des Erhaltens einer zusammenhängenden kürzesten Zeitdauer der Bewegung zwischen dem Start- und Endpunkt deaktiviert wird. Daher ist es, wenn die Berechnung unter Verwendung der Koordinate des Endaktuators ausgeführt wird, erforderlich, dass die Konfiguration des Arms nicht verändert wird. Dies führt zur Hinzufügung der Beschränkung der Berechnung eines Pfades, der die Zeitdauer minimiert. Diesbezüglich werden, wenn eine Berechnung nach der Umwandlung der Koordinatenpositionen des Endaktuators zu den Achsenwinkel ausgeführt wird, die Randbedingungen nicht diskontinuierlich sein, selbst wenn die Konfiguration bei gewissen Punkten des Pfades verändert wird, wodurch die Berechnung ermöglicht wird. Demgemäß kann ein Geschwindigkeitsmuster, das die Zeitdauer minimieren kann, ohne Einschränkung der Konfiguration des Arms berechnet werden.
  • KURZE BESCHREIBUNG DER FIGUREN
  • Bei den begleitenden Figuren zeigt:
  • 1 ein Diagramm, das schematisch Schritte des Berechnens eines Bewegungspfades der minimalen Zeit für einen Roboter darstellt, der in den Ausführungsformen der vorliegenden Erfindung ausgeführt wird;
  • 2 durch (a) bis (d) Diagramme, die ein Prinzip eines Verfahrens zum Steuern der Bewegung eines Arms eines Roboters gemäß den Ausführungsformen verglichen mit einem Beispiel des Standes der Technik darstellen;
  • 3 durch (a) eine allgemeine schematische perspektivische Ansicht eines Roboters, der in einer ersten Ausführungsform der vorliegenden Erfindung veranschaulicht wird, und durch (b) eine X-Y-Ebene auf der physikalische Parameter (dynamische Parameter) eines Roboters angezeigt werden;
  • 4 ein elektrisches und funktionales Blockdiagramm, das ein Steuersystem des Roboters gemäß der ersten Ausführungsform darstellt;
  • 5 ein Flussdiagramm, das die durch eine Steuereinheit ausgeführten Schritte des Erzeugens eines Geschwindigkeitsmusters gemäß den in 1 dargestellten Schritten darstellt;
  • 6 ein Flussdiagramm, das die Einzelheiten eines Teils der Schritte des Erzeugens des Geschwindigkeitsmusters, wie in 5 dargestellt, unter Verwendung des Bobrow's Verfahren und unter Berücksichtung von Randbedingungen darstellt;
  • 7 durch (a) und (b) ein Diagramm, das ein Rechte-Hand-System und ein Linke-Hand-System eines Roboterarms darstellt;
  • 8 ein Diagramm, das die Gründe darstellt, warum ein Geschwindigkeitsmuster durch Umwandeln der Koordinatenposition eines Endaktuators zu einem Winkel jeder Achse berechnet wird;
  • 9 ein beispielhaftes Diagramm, das die Randbedingungen der Pfadbeschleunigung darstellt;
  • 10 einen Pfad, in den sich die Koordinaten einer ersten Achse, einer zweiten Achse und eines Endaktuators auf einer X-Y-Ebene verändert.
  • 11 durch (a) ein Diagramm, bei dem gleichzeitig die fünf Positionen des Endaktuators aufgezeichnet sind, die durch (a) bis (e) von 10 gezeigt sind, und 11 durch (b) ein Diagramm, das Veränderungen eines Winkels, einer Winkelgeschwindigkeit, einer Winkelbeschleunigung und eines Drehmoments jeder der ersten und zweiten Achsen während einer Bewegung von einem Startpunkt zu einem Endpunkt darstellt;
  • 12 ein Flussdiagramm, das einen Prozess zum Vorbereiten eines Geschwindigkeitsmusters, das durch eine Steuereinheit ausgeführt wird, gemäß einer zweiten Ausführung der vorliegenden Erfindung darstellt;
  • 13 ein Flussdiagramm, das einen detaillierten Prozess einer Vorbereitung eines Geschwindigkeitsmusters gemäß dem Bobrow's Verfahren unter Berücksichtigung von Randbedingungen darstellt, wobei der Prozess als ein Teil des in 12 dargestellten Prozesses ausgeführt wird;
  • 14 ein schematisches Diagramm, das einen dreiachsigen Armroboter gemäß einer Abwandlung darstellt;
  • 15 ein Diagramm, das eine Simulation darstellt, wenn das Verfahren zum Erzeugen eines Pfades der vorliegenden Erfindung auf den dreiachsigen Roboter angewandt wird;
  • 16 ein Diagramm, das eine TN-Kurve eines Motors, der in einem mehrachsigen Roboter verwendet wird, gemäß einer weiteren Abwandlung darstellt.
  • 17 ein schematisches Diagramm, das einen zweiachsigen XR-Roboter gemäß einer noch weiteren Abwandlung darstellt;
  • 18 ein schematisches Diagramm, das die Wirkungen des Verfahrens zum Erzeugen eines Pfades der vorliegenden Erfindung in dem XR-Roboter darstellt.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Mit Bezug auf die begleitenden Figuren werden nachstehend verschiedene Ausführungsformen einer Technik zum Erzeugen (oder Herstellen) eines Pfades (oder einer Kurvenbahn) eines mehrachsigen Roboters der voreingestellten Erfindung und einer Steuervorrichtung für den mehrachsigen Roboter beschrieben.
  • [Erste Ausführungsform]
  • Bezugnehmend auf die 1 bis 11 wird nachstehend ein Verfahren zum Erzeugen eines Pfades eines mehrachsigen Roboters und einer Vorrichtung für den mehrachsigen Roboter gemäß einer ersten Ausführungsform der vorliegenden Erfindung dargestellt.
  • Bevor spezifisch ein Beispiel des mehrachsigen Roboters mit Bezugnahme auf die 1 und 2 beschrieben wird, wird eine Übersicht eines Steuerverfahrens des mehrachsigen Roboters der vorliegenden Ausführungsform beschrieben. Zunächst bezugnehmend auf (a) bis (d) von 2 wird das Steuerverfahren der vorliegenden Ausführungsform verglichen mit einem Steuerverfahren basierend auf dem Stand der Technik beschrieben.
  • Wie in 2(a) gezeigt, wird ein einfacher zweiachsiger Roboter (mit den Achsen J1 und J2) angenommen, in dem erste und zweite Arme (Verbindungen) AM1 und AM2 in einem Arm kombiniert sind, um so um jeweils zwei Gelenke JT1 und JT2 bewegbar zu sein. Ein Endaktuator EF des Roboters wird auf der X-Y-Ebene von einer Winkelposition (J1, J2) = (0°, 0°) zu einer Winkelposition (J1, J2) = (90°, 0°) bewegt. Wie in 2(b) gezeigt, ist das einfachste Verfahren in diesem Fall, lediglich den ersten Arm AM1 (d. h. die erste Achse J1) um 90° ohne Bewegen des zweiten Arms AM2 (d. h. die zweite Achse J2) zu rotieren. In diesem Verfahren leidet der erste Arm AM1 vom unverhältnismäßigen Aufbringen einer großen Last, da lediglich der erste Arm AM1 bewegt wird. Ferner weist mit diesem Verfahren der Arm als Ganzes einen konstanten maximalen Bewegungsradius auf, der eine große Trägheit bewirkt. Dadurch wird ein Problem aufgeworfen, das die Bewegungsgeschwindigkeit gering ist.
  • 2(c) zeigt eine Bewegung basierend auf der vorstehend erwähnten Zweipunktregelung (bang-bang control). In diesem Fall wird der Arm geklappt bzw. gefaltet, was die Bewegung des zweiten Arms AM2 zusätzlich zu der Bewegung des ersten Arms AM1 enthält. Demgemäß wird die Trägheit reduziert, um eine Hochgeschwindigkeitsbewegung zu ermöglichen. Allerdings werden keine Randbedingungen, wie z. B. eine auf den Roboter auferlegte Geschwindigkeitsrandbedingung, in diesem Fall berücksichtigt. Dadurch ist es unmöglich, den Roboter auf diese Weise für die Reduktion der Zeitdauer tatsächlich zu bewegen.
  • In der vorliegenden Ausführungsform wird, wie schematisch in 2(d) gezeigt, der Bewegungspfad realisiert. Insbesondere wird, wenn die Bewegung des Endaktuators EF gestartet wird, der erste Arm AM1 (erste Achse J1) zunächst in eine Richtung eines Endpunkts rotiert (bezogen auf Pfeil A) während der zweite Arm AM2 (zweite Achse J2) in eine entgegengesetzte Richtung zu dem Endpunkt rotiert wird (bezogen auf Pfeil A'). In diesem Fall ist die Konfiguration des Arms ein sogenanntes Linke-Hand-System.
  • Danach wird bei gewissen Punkten der Rotation des ersten Arms AM1 (bezogen auf den Pfeil A) dem zweite Arm AM2 ermöglicht, in dessen Drehrichtung (bezogen auf Pfeil B') zu pendeln, so dass sich bei Betrachtung mit Bezug auf den ersten Arm AM1 der Endaktuator EF (die Position eines Endes des zweiten Arms AM2) dem Endpunkt nähert, vorausgehend einem Ende des ersten Arms AM1. In diesem Fall ist die Konfiguration des Arms ein sogenanntes Rechte-Hand-System.
  • Insbesondere werden bei der in 2(b) bezeichneten Bewegung der zweite Arm AM2 und der Endaktuator EF immer auf dem auf den ersten Arm AM1 zentrierten Kreisradius bewegt. Andererseits wird bei der in 2(d) gezeigten Bewegung der zweite Arm AM2 zunächst in eine Richtung eins Startpunkts (der Pfeil A') rotiert, um eine Verzögerung der Bewegung des Endaktuators EF zu ermöglichen. Allerdings wird danach der zweite Arm AM2 in Richtung des Endpunkts rotiert, der dem ersten Arm AM1 vorangeht. Mit anderen Worten, der Endaktuator EF1 geht dem ersten Arm AM1 voraus.
  • Auf diese Weise kann die koaktive Bewegung der zwei Arme AM1 und AM2 (erste und zweite Achse) die auf den Motoren der zwei Gelenke JT1 und JT2 auferlegte Last verglichen mit der in 2(b) gezeigten Bewegung verteilen. Ferner wird, da der Arm leicht gefaltet wird, die Trägheit kleiner, um dadurch die auf die Motoren auferlegte Last zu reduzieren.
  • Zudem bewegt die Bewegung des zweiten Arms AM2 eine Kraft, die die Reaktion des ersten Arms AM1, d. h. der ersten Achse J1, begleitet. Insbesondere wird, wenn sich der Endaktuator EF1 von dem Startpunkt bewegt, eine Vorspannkraft auf den ersten Arm AM1, wie durch den Pfeil A'' gezeigt, aufgebracht, der die Reaktion gegenüber der vorübergehenden Rückrotation (der Pfeil A') des zweiten Arms AM2 begleitet. Die Vorspannkraft A'' wird in eine Richtung des Erhöhens der Rotation des Arms AM1 in Richtung des Endpunkts aufgebracht. Im Gegenzug wird, wenn der Endaktuator EF sich dem Endpunkt annähert, eine unterdrückende Kraft auf den ersten Arm AM1 aufgebracht, wie durch den Pfeil B'' gezeigt, die die Reaktion gegenüber der vorhergehenden Bewegung (der Pfeil B') in Rotationsrichtung des zweiten Arms AM2 bis dahin begleitet. Mit anderen Worten, die unterdrückende Kraft B'' wird in eine Richtung des Unterdrückens der Rotation (der Pfeil A) des ersten Arms AM1 bis dahin aufgebracht.
  • Auf diese Weise werden die Beschleunigung und die Verzögerung der Rotation des ersten Arms AM1 positiv durch die Reaktionskräfte unterstützt, d. h. die Vorspannkraft oder die unterdrückende Kraft, die durch die temporäre Bewegung des zweiten Arms AM2 bewirkt werden, wenn der Endaktuator EF1 dessen Rotation beginnt oder beendet. Demgemäß wird die Zeit, die für die Bewegung des Endaktuators EF von der Winkelposition (J1, J2) = (0°, 0°) zu der Winkelposition (J1, J2) = (90°, 0°), verglichen mit der Steuerung ohne der vorstehend beschriebenen Unterstützung, bemerkenswert verkürzt.
  • Um die Bewegung der Arme auf diese Weise zu erreichen, ist es erforderlich, vorab ein Geschwindigkeitsmuster zur Rotation der Arme, d. h. die Motoren der entsprechenden Achsen, zu erzeugen. Beim Erzeugen des Geschwindigkeitsmusters wird ein Verfahren, das nachstehend spezifisch beschrieben wird, verwendet, um den effizientesten Bewegungspfad auf der Prämisse auszuwählen, dass die Randbedingungen des Roboters erfüllt werden.
  • 1 stellt Diagramme dar, die schematisch Schritte zum Realisieren des in 2(b) gezeigten Bewegungspfades zeigen. Zunächst wird eine Mehrzahl von Durchgangspunkten vorübergehend festgelegt, während der Endaktuator EF des Roboters von dem Startpunkt zu dem Endpunkt (1(a)) bewegt wird. Anschließend wird das Bobrow's Verfahren verwendet, um einen Pfad des Endaktuators EF zu berechnen. Daher wird ein Geschwindigkeitsmuster berechnet, das eine maximale Geschwindigkeit der Bewegung des Endaktuators EF über die Durchgangspunkte (1(b)) realisieren kann. Beim Durchführen der Berechnung gemäß dem Bobrow's Verfahren wird eine Gleichung entsprechend der tatsächlichen Bewegung des Roboters berücksichtigt (diese Gleichung wird nachstehend als eine Bewegungsgleichung bezeichnet). Daher wird ein maximales Geschwindigkeitsmuster beim Erfüllen der Randbedingungen des Roboters berechnet, wobei die Randbedingungen die Beschränkung der Bewegungsgeschwindigkeit und des Drehmoments jeder Achse enthalten.
  • Nach Berechnen des Geschwindigkeitsmusters wird eine Zeitdauer berechnet, die für den Roboter erforderlich ist, um sich von einem vorbestimmten Startpunkt zu einem vorbestimmten Endpunkt entsprechend dem Geschwindigkeitsmuster (1(c)) zu bewegen. Anschließend werden beim Aktualisieren der Durchgangspunkte (1(d)) die vorstehend beschriebenen Schritte wiederholend durchgeführt. Wenn bestimmt wird, dass die Zeitdauer zu einem Minimum konvergiert wurde, werden die Serien an Schritte beendet. Die Serien der Schritte werden für jede Achse des mehrachsigen Roboters ausgeführt. Der ergebende Pfad wird der eine sein, der die Randbedingungen des Roboters erfüllt (d. h. die obere Grenze der Geschwindigkeit und Drehmoment jedes der Gelenke des Roboters) und ermöglicht dem Endaktuator EF, sich von dem Startpunkt zu dem Endpunkt in einer kürzesten Zeit zu bewegen. Die Information bezüglich dem Geschwindigkeitsmuster jedes der Achse (d. h. Pfadinformation), die auf diese Weise erhalten wird, wird in einem Speicher (nicht gezeigt) in einem Robotercontroller RC (bezogen auf 4) für die Verwendung bei der tatsächlichen Steuerung des mehrachsigen Roboters gespeichert. Der Roboter RC fungiert als Steuervorrichtung für den Roboter.
  • Bezugnehmend auf 3 bis 11 werden nachstehend insbesondere ein Verfahren zum Erzeugen der Pfadinformation oder des vorstehend beschriebenen mehrachsigen Roboters und einem Beispiel einer Steuervorrichtung für den mehrachsigen Roboter unter Verwendung der Pfadinformationen beschrieben. 3(a) ist ein schematisches Diagramm, das allgemein einen Vierachsenroboter 1 (mehrachsiger Roboter) darstellt. Der Roboter 1 enthält eine lineare Bewegungsschiene 2. Die lineare Bewegungsschiene stützt über ihre untere Oberfläche einen bewegbaren Körper 2a (Basisseitenarm) als eine erste Verbindung, so dass der bewegbare Körper 2a sich linear entlang einer X-Richtung bewegen kann, die die erste Achse (X-Achse) ist. Die lineare Bewegungsschiene 2 enthält einen Antriebsmechanismus, der den bewegbaren Körper 2a frei bewegen kann. Obwohl nicht spezifisch gezeigt, wird der Antriebsmechanismus aus einem bei einem Ende der linearen Bewegungsschiene 2 angebrachten linearen Bewegungsmotor 3 und einem nicht gezeigten Kugelumlaufspindelmechanismus gebildet.
  • Der bewegbare Körper 2a weist einen unteren Oberflächenabschnitt auf, der mit einer Armunterstützungsbasis 4 verbunden ist. Die Armunterstützungsbasis 4 weist eine untere Oberfläche auf, auf der ein horizontaler Dreharm 5 (Endaktuatorseitenarm) der sich in horizontaler Richtung erstreckt, montiert ist. Insbesondere weist der horizontale Dreharm 5 als zweite Verbindung einen Endabschnitt auf der Basisendseite auf, durch die der Arm 5 an die untere Oberfläche der Armunterstützungsbasis 4 montiert ist, so dass der Arm 5 in einer R-Richtung um eine zweite Achse (vertikale Achse, R-Achse) drehen kann. Der horizontale Dreharm 5 weist einen anderen Endabschnitt (Endfläche) auf einer gegenüberliegenden Seite zu der Basisendseite bezüglich der vertikalen Achse auf. Die Endfläche des Arms 5 ist mit einem Hebekörper 6 als dritte Verbindung montiert, die vertikal bewegbar ist (dritte Achse, Z-Achse). Der Hebekörper 6 weist eine untere Oberfläche auf, auf der ein Gelenk 7 als vierte Verbindung montiert ist, um koaxial um eine vertikale Achse (vierte Achse, t-Achse) drehbar zu sein. Das Gelenk 7 ist derart konfiguriert, dass es ein Werkzeug, wie z. B. ein Futter (Hand) zum Halten eines Werkzeugs, davon lösbar anbringbar ist.
  • Der horizontale Dreharm 5 ist in einer horizontalen Richtung durch einen Armrotationsmotor 8 (siehe 4) und einen Rotationsübertragungsmechanismus endlos rotierbar (drehbar). Der Armrotationsmotor 8 ist innerhalb der Armunterstützungsbasis 4 angebracht, um als eine Antriebsquelle zu dienen. Der Hebekörper 6 wird vertikal bei einem Ende des horizontalen Dreharms 5 durch einen Motor und einem Zahnstangenmechanismus bewegt, die in dem horizontalen Dreharm 5 aufgenommen sind. Das Gelenk 7 wird koaxial durch einen in dem Hebekörper 6 aufgenommenen Motor rotiert.
  • Es wird sichergestellt, dass die Bewegungen des Roboters 1 (Motoren der entsprechenden Achsen, die den linearen Bewegungsmotor 3 enthalten), wie in 4 gezeigt, durch eine Steuereinheit 9 (Steuervorrichtung) eines Robotercontrollers RC basierend auf einem solchen Werkzeugprozessprogramms gesteuert werden. Die Steuereinheit 9 enthält eine CPU, einen ROM und einen RAM und ist mit einem Programmierhandgerät 10 verbunden. Das Programmierhandgerät 10 enthält eine Gruppe von Schaltern 11 und eine Anzeige 12 als eine Anzeige einer Richtung.
  • 3(b) stellt eine X-Y-Ebene dar, auf der physikalische Parameter (dynamische Parameter) des Roboters 1 angezeigt werden. Die Y-Achse ist orthogonal zur X-Achse. Die Frontseite des in 3(a) gezeigten Roboters 1 entspricht der positiven Seite der Koordinate. In 3(b) zeigen die Referenzen m1, m2 und m3 jeweils eine Masse der ersten Verbindung [kg], eine Masse der zweiten Verbindung [kg] und eine Gesamtmasse [kg] der „dritten und vierten Verbindungen und der Lasten” an. Die Referenzen lg2 zeigen einen Abstand [m] von der Achsenposition der ersten Verbindung zu dem Schwerpunkt der zweiten Verbindung an. Die Referenz l2 zeigt eine Länge [m] der zweiten Verbindung an. Die Referenz I2 zeigt eine Trägheit [kgm2] um den Schwerpunkt der zweiten Verbindung an. Die Referenz I4 zeigt eine Trägheit [kgm2] um die dritte und die vierte Verbindung und eines Gesamtschwerpunkts an. Die Referenz θ1 zeigt eine Verbindungsposition der ersten Achse an und eine Referenz θ2 zeigt einen Verbindungswinkel der zweiten Achse an.
  • Der vorstehend beschriebene, mehrachsige Roboter 1 weist vier Achsen auf. Das Verfahren zum Erzeugen eines Pfades und des Steuerverfahrens gemäß der vorliegenden Erfindung kann bezüglich einer Mehrzahl von Achsen, d. h. zwei oder drei Achsen oder mehreren, aus den vier Achsen ausgeführt werden. Allerdings werden zum Zwecke der Klarheit bei der Beschreibung auf das Prinzip der Pfaderzeugung und Steuerung lediglich die ersten und zweiten Achsen der Berechnung der nachfolgenden Beschreibung unterzogen. Basierend auf der nachstehend dargelegten Beschreibung eines Beispiels einer Pfaderzeugung, die drei oder mehrere Achsen und die Steuerung enthält, wird nachstehend beschrieben.
  • Hier werden bezüglich Quantitäten θ und λ die nachfolgenden Definitionen angegeben:
  • θ:
    Position eines durch einen Gelenkwinkel jedes Axialgelenks gezeigten Roboters [rad],
    θ':
    Geschwindigkeit eines durch eine Winkelgeschwindigkeit jedes Axialgelenks gezeigten Roboters [rad/s],
    θ'':
    Beschleunigung eines durch eine Winkelbeschleunigung jedes der Achsgelenke gezeigten Roboters [rad/s2],
    λ:
    Jede Position auf einem Pfad, die als ein Pfadparameter bezogen wird,
    λ':
    Gradient jeder Position auf einem Pfad, die auf einer Pfadgeschwindigkeit bezogen wird, und
    λ'':
    Krümmung bei jeder Position auf einem Pfad, die sich auf eine Pfadbeschleunigung bezieht.
  • Die Bewegungsgleichung des vorstehend beschriebenen mehrachsigen Roboters 1 wird durch die nachfolgende Formel (1) ausgedrückt.
    Figure DE102014104226A1_0002
    wobei τ einen Drehmomentvektor darstellt. Die physikalischen Parameter des Roboters 1 werden auf einer Trägheitsmatrix H und einer Matrix h, die die Zentrifugal- und Corioliskraft anzeigen, in Formel (1) reflektiert.
  • Figure DE102014104226A1_0003
  • Ferner stellt in Formel (1) B eine Reibung dar und g stellt eine Schwerkraft dar. Allerdings werden diese in der nachfolgenden Beschreibung ignoriert.
  • Betreffend die Einzelheiten der Bewegungsgleichung eines Roboters wird auf das nachfolgende Dokument 1 Bezug genommen:
  • 5 zeigt ein Flussdiagramm, das die durch die Steuereinheit 9 ausgeführten Schritte entsprechend jenen darstellt, die in 1 dargestellt sind.
  • Zunächst liest die Steuereinheit 9 einen Startpunkt und einen Endpunkt des Endaktuators des Roboters 1 (Schritt S1). Beispielsweise werden Start- und Endpunkte beispielsweise als Erlernpunkte durch den Operator angegeben. Anschließend bestimmt ansprechend auf einen Operatorbefehl oder automatisch die Steuereinheit 9 drei Punkte zwischen den Start- und Endpunkten für die Verwendung als anfängliche Durchgangspunkte (Interpolationspunkte) (Schritt S2). Beim Bestimmen dieser anfänglichen Durchgangspunkte wird die lineare Interpolation oder dergleichen verwendet. Beispielsweise werden, wenn die Koordinate des Startpunkts (0, 0) ist und die Koordinate des Endpunkts (30, 100) ist, bestimmt, dass die anfänglichen Durchgangspunkte (7,5, 25), (15, 50) und (22,5, 75) sind.
  • Anschließend führt die Steuereinheit 9 eine Spline-Interpolation aus, um beispielsweise zwischen den Startpunkt, dem Endpunkt und den drei anfänglichen Durchgangspunkten zu interpolieren (Schritt S3). Bezüglich dem aus der Spline-Interpolation ergebenden Pfad bereitet die Steuereinheit 9 ein Geschwindigkeitsmuster, das die Zeitdauer minimiert, unter Verwendung des Bobrow's-Verfahren (Schritt S4) vor.
  • Betreffend das Bobrow's-Verfahren wird auf die nachfolgenden Dokumente 2 und 3 Bezug genommen.
  • Anschließend berechnet die Steuereinheit 9 eine Zeitdauer bei dem Fall, bei dem der Endaktuator (das Ende der zweiten Achse, d. h. der zweite Arm des vorliegenden Beispiels) des Roboters 1 entlang des interpolierten Pfades bewegt, gemäß dem vorbereiteten Geschwindigkeitsmuster (Schritt S5). Anschließend berechnet die Steuereinheit 9 den Unterschied zwischen der Zeitdauer zu der zuvor berechneten Zeitdauer. Anschließend bestimmt die Steuereinheit 9, ob der Unterschied zwischen den zwei Zeitdauern kleiner als ein vorbestimmter Schwellenwert ist (z. B. 0,001 s) (Schritt S6). Falls eine negative Bestimmung erfolgt (NEIN bei Schritt S6), werden die bei Schritt S2 berechneten Durchgangspunkte unter Verwendung des Downward-Simplex-Verfahren oder dergleichen (Schritt S7) aktualisiert. Selbstverständlich können hier andere Verfahren, wie z. B. Gradientenverfahren oder allgemeine Algorithmen verwendet werden.
  • Nach Aktualisieren der Durchgangspunkte kehrt der Prozess der Steuereinheit 9 zu Schritt S3 zurück und Schritt S3 und die anschließenden Schritte bis zu Schritt S7 werden wiederholend ausgeführt. Anschließend werden, falls der Unterschied der Zeitdauer zwischen dieser Zeit und der vorherigen Zeit geringer als der vorbestimmte Schwellenwert ist (JA bei Schritt S6), die Serien der Schritte des Berechnens eines Bewegungspfades beendet.
  • Bezugnehmend nun auf 6 wird nachstehend die Berechnung gemäß dem bei Schritt S5 ausgeführten Bobrow's-Verfahren berechnet. Zunächst wird unter Verwendung der nachfolgenden Formel (3), die den Pfad des Endaktuators ausdrückt, der bei Schritt S3 bestimmt wurde, ein Pfadparameter λ zu einer Endaktuatorposition x (Vektor) auf dem Pfad (Schritt S11) umgewandelt. x = f(λ) (3)
  • Es soll erkannt werden, dass die zu den Formeln designierten Nummern in Übereinstimmung mit jenen sind, die gegebenenfalls in Dokument 1 angezeigt sind. Wenn der Pfad f(λ) beispielsweise mit einer dreidimensionalen Spline-Funktion interpoliert wird, wird nachfolgende Formel (3a) eingerichtet: f(λ) = αλ3 + bλ2 + cλ + d (3a) wobei λ eine Variable der Koordinaten darstellt, die von Inkrementen in dem Pfad von dem Startpunkt zu dem Endpunkt abhängen.
  • Anschließend wird basierend auf inversen Kinematiken die Endaktuatorposition x zu einem Winkel q jeder Achse (Arm) (Schritt S12) umgewandelt. q = p–1(f(λ)) (4) wobei p eine Funktion darstellt, die Vorwärtskinematiken anzeigt. Der Grund, warum die Endaktuatorposition x zu einem Winkel q umgewandelt wird, ist, dass ein Pfad des Endaktuators ohne Beschränken des Handsystems berechnet werden kann, d. h. die Konfiguration des Arms des Roboters (7(a) zeigt ein Linke-Hand-System und 7(b) zeigt ein Rechte-Hand-System).
  • Insbesondere werden, wie mit Bezug auf 8 beschrieben wird, wenn die Berechnung von 6 unter Verwendung der Koordinatenposition ausgeführt wird, vorausgesetzt dass die Konfiguration des Arms bei gewissen Punkten des Pfades verändert wird (siehe (a) und (b) von 8), die Randbedingungen diskontinuierlich bei dem Punkt, bei dem die Konfiguration verändert wird und dadurch werden keine Ergebnisse der Berechnung erhalten. Dadurch ist es erforderlich, die Berechnung unter Verwendung der Koordinatenpositionen ohne Veränderung der Konfiguration des Arms auszuführen. (In den Dokumenten 2 und auch 3 wird ein Geschwindigkeitsmuster, das eine maximale Geschwindigkeit erreichen kann, ohne Veränderung der Konfiguration des Arms des Roboters von der anfänglichen bestimmten Konfiguration berechnet.)
  • Dagegen wird bei der vorliegenden Ausführungsform ein Bewegungspfad durch Umwandeln im Voraus der Koordinatenpositionen in Winkel der individuellen Achsen berechnet. Dementsprechend wird bei dem Fall, bei dem die Konfiguration des Arms bei gewissen Punkten des Pfades verändert wird, die Randbedingungen nicht diskontinuierlich und dadurch können die Ergebnisse der Berechnung erhalten werden. Auf diese Weise wird ein Beschleunigungsmuster berechnet, das eine maximale Beschleunigung erreichen kann, ohne durch die Konfiguration des Arms beschränkt zu sein.
  • Danach wird, wenn die Formel (4) in die Formel (1) substituiert wird, die Formel (5) wie folgt (Schritt S13) erhalten: τ = α1(λ)λ .. + a2(λ)λ .2 + a3(λ)λ . + a4(λ) a1 = Hj–1f' a2 = Hj–1(f'' – J .(q, J–1f')J–1f') + h(q, J–1f') a3 = BJ–1f' a4 = g (5) wobei J eine Jacobimatrix darstellt. Ferner sind in Formel (5) die Terme von a3 und a5, d. h. Parameter, die die Reibung B und die Schwerkraft g enthalten, gleich Null.
  • Anschließend berechnet bei Schritt S14 die Steuereinheit 9 eine maximale Beschleunigung λ''max und eine maximale Verzögerung λ''min aus der Formel (5) (diesbezüglich wird auf die Formeln (8) bis (10) von 1 Bezug genommen). Das an λ angehängte Symbol '' ersetzt die doppelten Punkte, die in Dokument 1 die Beschleunigung anzeigen. Die maximale Beschleunigung λ''max und die maximale Verzögerung λ''min, die hier berechnet werden, sind die Randbedingungen, die zu der Beschleunigung der Bewegung des Roboters 1 dazugehören.
  • Anschließend berechnet die Steuereinheit 9 eine nächste Position λ und eine Geschwindigkeit λ' aus den Formeln (11) und (12) unter Verwendung der maximalen Beschleunigung λ''max (oder maximalen Verzögerung λ''min) (Schritt S15). In diesen Formeln ist die Zeit t eine Abtastzeit (z. B. 1 ms). Ferner zeigen die Symbole λ0 und λ'0 jeweils eine aktuelle Position und Geschwindigkeit an. Das an λ angehängte Symbol ' zeigt eine Differenzierung erster Ordnung an und ersetzt den Punkt, der in Dokument 1 die Geschwindigkeit anzeigt. λ = 0.5λ''maxt2 + λ't (11) λ' = λ''maxt (12)
  • Anschließend bestimmt die Steuereinheit 9, ob die Geschwindigkeit λ' und die Beschleunigung (Verzögerung) λ'' des Pfadparameters λ die Randbedingungen erfüllen (Schritt S16). Insbesondere bestimmt die Steuereinheit 9, ob beide der nachfolgenden Bedingungen: λ'min ≤ λ' ≤ λ'max (13) λ''min(λ, λ') ≤ λ'' ≤ λ''max(λ, λ') (14) gleichzeitig erfüllt sind. Abhängig davon, ob der Roboter beschleunigt oder verzögert, wird λ'min oder λ'max und λ''min oder λ''max verwendet.
  • 9 zeigt ein schematisches Diagramm basierend auf 2 des vorstehend dargelegten Dokuments (2). Insbesondere zeigt 9 einen Erfüllungsbereich der Randbedingungen bezüglich der Beschleunigung (Verzögerung) λ'' der Pfadparameter λ eines zweiachsigen Roboters. Insbesondere ist ein zulässiger Bereich λ'min bis λ''max unter AND-Bedingungen innerhalb eines Bereichs einer maximalen Beschleunigung bis zu einer maximalen Verzögerung festgelegt, die zu jeder Achse spezifiziert sind (Motor der bei jedem Gelenk angebracht ist).
  • Ferner sind die kritischen Werte λ'min und λ'max der Randbedingungen bezüglich der Geschwindigkeit λ' des Pfadparameters λ, wie folgt: λ'min = max(q'min/f'(λ)) (15) λ'max = min(q'max/f'(λ)) (16) wobei f(λ) einen Pfad anzeigt, und q'min und q'max jeweils minimale und maximale Gelenksgeschwindigkeiten anzeigen, die in Abhängigkeit der Spezifikation des Roboters 1 bestimmt werden.
  • Die Geschwindigkeitsbedingung und die Beschleunigungs-(Drehmoment)-Bedingung sind minimale Bedingungen, die als Randbedingungen notwendig sind. Abhängig von der Situation können andere Bedingungen hinzugefügt werden.
  • Bei dem vorstehend erwähnten Schritt S16 aktualisiert, falls die Geschwindigkeit λ' und die Beschleunigung (Verzögerung) λ'' des Pfadparameters λ beide Randbedingungen der Formeln (13) und (14) (JA bei Schritt S16) erfüllen, die Steuereinheit 9 die Position λ auf dem bei Schritt S15 (Schritt S17) berechneten Wert. Anschließend bestimmt die Steuereinheit 9, ob die Position λ ein End-λend (Schritt S18) erreicht hat. Falls eine negative Bestimmung erfolgt (NEIN bei Schritt S18), kehrt der Prozess zu Schritt S14 zurück. Falls eine positive Bestimmung erfolgt (JA bei Schritt S18), wird der Prozess beendet.
  • Andererseits führt bei Schritt S16, falls die Geschwindigkeit λ' und die Beschleunigung (Verzögerung) λ'' nicht wenigstens eine der Randbedingungen der Formeln (13) und (14) (NEIN bei Schritt S16) erfüllen, die Steuereinheit 9 den Schritt S19 aus. Insbesondere subtrahiert, wenn der Roboter in einem Beschleunigungszustand ist, die Steuereinheit 9 eine willkürliche Konstante „a” von der maximalen Beschleunigung λ''max, um den resultierenden Wert als eine neue maximale Beschleunigung λ''max zu verwenden. Andererseits subtrahiert, wenn der Roboter in einem Verzögerungszustand ist, die Steuereinheit 9 die willkürliche Konstante „a” von der maximalen Verzögerung λ''min, um den resultierenden Wert als eine neue maximale Verzögerung λ''min, zu verwenden. Danach kehrt der Prozess zu Schritt S15 zurück, bei dem die Position λ und die Geschwindigkeit λ', d. h. die Pfadparameter, erneut berechnet werden.
  • Wenn der in 6 gezeigte Prozess abgeschlossen ist, wird ein Geschwindigkeitsmuster, das eine maximale Bewegungsgeschwindigkeit erreichen kann, erhalten. Mit diesem Geschwindigkeitsmuster wird eine maximale Bewegungsgeschwindigkeit erreicht, wenn der Endaktuator des Roboters 1 sich entlang des durch die Interpolation bei Schritt S3 von 9 erhaltenen Pfades bewegt, wobei die Randbedingungen der Geschwindigkeit und Beschleunigung (= Drehmoment) erfüllt sind. Mit anderen Worten, da der Berechnungsprozess gemäß dem Bobrow's Verfahren basierend auf den Bewegungsdynamiken des Roboters 1 ausgeführt wird, können die Randbedingungen des Roboters 1 erfüllt werden.
  • Obwohl nicht gezeigt, wird tatsächlich die Zeitdauer gemäß den Schritten S4 und S5 für die Vorwärts- und Rückwärtsgeschwindigkeitsmuster zwischen den Start- und Endpunkten berechnet. Das bedeutet, dass der in Schritt S4 dargelegte Algorithmus auf die Berechnung des Vorwärtsgeschwindigkeitsmuster von dem Startpunkt zu dem Endpunkt angewandt wird, und anschließend auf die Berechnung des Rückwärtsgeschwindigkeitsmusters von dem Endpunkt zu dem Startpunkt angewandt wird. Danach werden das Vorwärtsgeschwindigkeitsmuster und das Rückwärtsgeschwindigkeitsmuster kombiniert und eine Zeitdauer wird für das kombinierte Muster berechnet.
  • Die 10 und 11 zeigen ein Beispiel eines wie vorstehend beschrieben berechneten Pfades für die Minimierung der Bewegungsgeschwindigkeit des Endaktuators des Roboters 1. 10(a) zeigt ein Diagramm, das mit der durchgezogenen Linie einen Pfad, d. h. Veränderungen der Koordinaten, auf der X-Y-Ebene der ersten und zweiten Achse, und den Endaktuator darstellt. Wie in der Figur gezeigt, ist die Koordinate bei dem Startpunkt (–0,3, 0,3) und die Koordinate bei dem Endpunkt (0,3, 0,3). 11(b) ist ein Diagramm, das die Veränderungen des Winkels, der Winkelgeschwindigkeit, der Winkelbeschleunigung und des Drehmoments der ersten und zweiten Achsen während der Bewegung von dem Startpunkt zu dem Endpunkt darstellt.
  • Die erste Achse bewegt sich linear auf der X-Achse von –0,3 [m] (siehe 10(a)) zu 0,3 [m] (siehe 10(e)). Dies entspricht der Bewegung des bewegbaren Körpers 2a entlang der linearen Bewegungsschiene 2. Die zweite Achse weist einen Rotationswinkel θ2 auf (Rotationswinkel des horizontalen Dreharms 5), der 0 [rad] bei den Start- und dem Endpunkten und bei einem Mittelpunkt auf der X-Achse ist. Allerdings ist, wie in 10(b) gezeigt, die zweite Achse in einem rotierenden Zustand um 0,6 [rad] in eine entgegengesetzte Richtung zur Richtung des Endpunkts. Dadurch ist die X-Achsenkoordinate des Endaktuators eine negative Seite bezüglich der Koordinate des bewegbaren Körpers 2a. Dieser Zustand entspricht dem Rechte-Hand-System vor dem Hintergrund der Konfiguration des Arms des Roboters 1. Dagegen ist, wie in 10(d) gezeigt, die zweite Achse in einem rotierenden Zustand um –0,6 [rad] in die Richtung des Startpunkts. Dadurch ist die X-Achse der Position des Endaktuators eine positive Seite bezüglich der Koordinate des bewegbaren Körpers 2a. Dieser Zustand entspricht dem Linke-Hand-System vor dem Hintergrund der Konfiguration des Arms des Roboters 1.
  • In Übereinstimmung mit der vorstehenden Bewegung erreicht die Winkelgeschwindigkeit der zweiten Achse einen positiven Seitenhöchstwert (10 rad/s, Höchstwert V2) direkt nach dem Bewegen entfernt von dem Startpunkt (V1). Anschließend verändert sich von diesem Höchstwert die Winkelgeschwindigkeit linear in Richtung eines negativen Seitenhöchstwerts (–10 rad/s, Höchstwert V3) bei einem Mittelpunkt. Ferner verändert sich auch die Winkelgeschwindigkeit linear von dem Mittelpunkt in Richtung eines positiven Seitenhöchstwerts (10 rad/s, Höchstwert V4) direkt vor dem Endpunkt. Mit anderen Worten, wie in 11(b) gezeigt, wird ein auf dem Mittelpunkt zentriertes symmetrisches Geschwindigkeitsmuster aufgespannt.
  • Die Winkelbeschleunigung entsprechend dem vorstehenden Winkelgeschwindigkeitsmuster wird wie folgt ein Muster aufweisen. Insbesondere erreicht die Winkelbeschleunigung einen positiven Seitenhöchstwert 400 rad/s2 von 0 bei dem Startpunkt V1, wendet sich zu einem negativen Wert von ungefähr –50 rad/s2 bei dem Höchstwert V2 und wird bei dem negativen Wert von ungefähr –50 rad/s2 bis zu dem Höchstwert V3 bei dem Mittelpunkt gehalten. Ferner wird, wenn die Winkelbeschleunigung sich zu einem positiven Wert von 50 rad/s2 bei dem Höchstwert V3 bei dem Mittelpunkt wendet, der Wert bei dem Höchstwert V4 gehalten. Anschließend erreicht die Winkelbeschleunigung einen negativen Seitenhöchstwert –400 rad/s2 bei dem Höchstwert V4 und kehrt zu 0 bei dem Endpunkt V5 zurück.
  • Die Bewegung der zweiten Achse, wie vorstehend beschrieben, übt nachfolgende Wirkungen aus. Insbesondere verändert beim Start der Bewegung von dem Startpunkt die zweite Achse ihren Winkel θ2 von 0 [rad] → 0,6 [rad] → 0 [rad] bevor sie den Mittelpunkt der X-Achse erreicht. Dadurch pendelt der Endaktuator des Roboters 1, der einmal in eine positive Rotationsrichtung pendelte, zurück in eine negative Rotationsrichtung. Als Reaktion wird eine diese Bewegung begleitende Reaktion in dem bewegbaren Körper 2a bewirkt, um eine Beschleunigungskraft für die Beschleunigung dieser Bewegung des ersten Arms zu erzeugen, wenn die Bewegung gestartet wird. Diese Vorspannkraft unterstützt (beeinflusst) die Bewegung des ersten und des zweiten Arms in die Richtung des Endpunkts.
  • Andererseits verändert die zweite Achse ihren Winkel θ2 von 0 [rad] → –0,6 [rad] → 0 [rad] bevor sie den Endpunkt von dem Mittelpunkt auf der X-Achse erreicht. Dadurch pendelt der Endaktuator des Roboters 1, der einmal in eine negative Rotationsrichtung pendelte, zurück in eine positive Rotationsrichtung. Auch in diesem Fall wird eine die Bewegung begleitende Reaktion in dem bewegbaren Körper 2a bewirkt, um als eine Verzögerungskraft zu fungieren. Die Verzögerungskraft unterstützt (unterdrückt) die Verzögerungsbewegung der zweiten Achse bevor sie den Endpunkt erreicht und ihre Bewegung stoppt.
  • Als Ergebnis der Bewegung der zweiten Achse, wie vorstehend beschrieben, wird die Zeit für den Endaktuator des Roboters 1 verkürzt, um sich von dem Startpunkt zu dem Endpunkt zu bewegen, verglichen mit der Zeit, die für die einfache Bewegung eines mehrachsigen Roboters basierend auf dem Stand der Technik erforderlich ist. Die gestrichelte Linie in 10 zeigt einen Pfad bei dem Fall an, bei dem die erste Achse bewegt wird ohne die zweite Achse überhaupt zu rotieren. Wenn die Bewegung des Roboters 1 basierend auf der gestrichelten Linie simuliert wurde, war die Zeitdauer 536 ms, während eine Simulation basierend auf dem durch die durchgezogene Linie angezeigten Pfad von einer Zeitdauer von 514 ms resultiert. Daher hat der Pfad mit der durchgezogenen Linie eine Reduzierungswirkung der Zeitdauer um 4% oder mehr. Dementsprechend kann, wenn es dem Roboter 1 ermöglicht wird, eine Zeitdauer gleich zu der des Standes der Technik einzunehmen, der Roboter 1 mit weniger Energie als der Stand der Technik bewegt werden, wodurch dies zur Energieeinsparung beiträgt. Ferner kann beispielsweise beim Reduzieren der Ausgabe der Motoren das Niveau des Stromverbrauchs der Motoren reduziert werden, was zur Reduktion der Größe und der Kosten des Roboters 1 führt.
  • 11(a) zeigt ein Diagramm, bei dem die fünf Positionen des in (a) bis (e) von 10 dargestellten Endaktuators gleichzeitig aufgezeichnet sind. Diese fünf Positionen entsprechen den fünf Positionen (V1 bis V5), die auf dem Winkelgeschwindigkeitsmuster der in 11(b) gezeigten zweiten Achse aufgezeichnet sind, d. h. entsprechend den Umkehrpunkten der Winkelgeschwindigkeit oder der Winkelbeschleunigung. Wie vorstehend beschrieben, werden bei Schritt S2 von 5 drei anfängliche Durchgangspunkte zwischen den Start- und Endpunkten festgelegt. Diese drei anfänglichen Durchgangspunkte werden so ausgewählt, dass sie den in 11 gezeigten Umkehrpunkten der Winkelgeschwindigkeit oder der Winkelbeschleunigung entsprechen. Dies ist, weil die Auswahl der drei anfänglichen Durchgangspunkte auf diese Weise vorteilhaft bei der Erhöhung der Effizienz der Berechnung betrachtet wird.
  • Beispielsweise kann, wie aus der 4 von Dokument 3 und der darin zugehörigen Beschreibung verständlich ist, bei dem Bobrow's Verfahren eine größere Anzahl von Durchgangspunkten zum Suchen eines Pfades eine höhere Wirkung auf die Reduzierung der Zeitdauer ausüben. Allerdings führt die Zunahme der Anzahl der Durchgangspunkte direkt zur Erhöhung der für die Berechnung benötigten Zeit. Daher ist die unbegrenzte Zunahme der Anzahl der Durchgangspunkte nicht praktisch.
  • Diesbezüglich wird bei der vorliegenden Ausführungsform die Anzahl der anfänglichen Durchgangspunkte unter Berücksichtigung des Gleichgewichts zwischen der Reduktion der Zeitdauer und der Unterdrückung der Zunahme der Berechnungszeit auf drei festgelegt. Es ist nicht erforderlich, die Auswahl der anfänglichen Durchgangspunkte streng auszuführen. Wie vorstehend beschrieben, können die drei anfänglichen Durchgangspunkte bestimmt werden, wie z. B. durch einfaches Teilen des linearen Abstands zwischen den Start- und Endpunkten in vier. Im Zuge des Wiederholens der in 1 oder 5 gezeigten Schritte wird ein neuer Pfad mit der Aktualisierung der Durchgangspunkte berechnet, um eine Optimierung zu erreichen.
  • Daher wird ein Pfad ausgewählt, der die Zeitdauer bei einem Bewegungsmuster minimieren würde, wie z. B. einem Greif- und Platzier-Muster. Die Auswahl eines solchen Pfades hängt von den Koordinatenpositionen der drei Durchgangspunkte als die drei Umkehrpunkte (wie in 11(a) gezeigt), die Winkelgeschwindigkeit oder die Winkelbeschleunigung der zweiten Achse ab. Auf diese Weise kann, wenn die Anzahl der anfänglichen Durchgangspunkte auf drei festgelegt wird, ein Pfad, der die Zeitdauer minimiert, berechnet werden, während die Zunahme der Berechnungszeit unterdrückt wird.
  • Wie vorstehend beschrieben, ist gemäß der vorliegenden Ausführungsform das zu bewegende Objekt der mehrachsige Roboter 1, der den bewegbaren Körper 2a enthält, der auf der Basisseite und dem horizontalen Dreharm 5 positioniert ist, der dazu auf der Endaktuatorseite des bewegbaren Körpers 2a verbunden ist. Die Steuereinheit 9 erzeugt einen Pfad, so dass beim Bewegen des Endaktuators von dem Startpunkt die bei dem bewegbaren Körper 2a durch die Bewegung des horizontalen Dreharms 5 bewirkte Beschleunigungskraft erhöht werden kann, die durch die Bewegung des bewegbaren Körpers 2a entlang dessen Basisachse bewirkt wird, die die lineare Bewegungsschiene 2 ist. Zudem erzeugt die Steuereinheit 9 den Pfad, so dass beim Stoppen des Endaktuators bei dem Endpunkt die bei dem bewegbaren Körper 2a durch die Bewegung des horizontalen Dreharms 5 bewirkte Reaktion die durch die Bewegung des bewegbaren Körpers 2a bewirkte Verzögerungskraft erhöht werden kann.
  • Bei der Steuerung eines mehrachsigen Roboters basierend auf den Stand der Technik bleibt eine Achse, deren Bewegungsbetrag sich nicht zwischen dem Start- und Endpunkten verändert, immer noch bei einer einfachen Arbeit basierend auf einem Greif- und Platzier-Muster oder dergleichen. Mit anderen Worten, der Roboter wird das durch die gestrichelten Linien in 10 angezeigte Bewegungsmuster aufweisen. Mit dem vollständig ausgestreckten Arm würde die zweite Achse mit Ausgeben von nutzlosen Haltedrehmoment fortfahren, so dass der Arm auf der Endaktuatorseite nicht durch das Trägheitsdrehmoment bewegt werden würde, das durch die hohe Beschleunigung der ersten Achse (Fahrachse) bewirkt wird. Demgemäß erlegt das nutzlose Haledrehmoment lediglich eine Last auf den Basisseitenarm auf.
  • Andererseits bewegt sich, wenn ein Pfad wie vorstehend beschrieben erzeugt wird, der horizontale Dreharm 5 derart, dass er eine Reaktion zu dem bewegbaren Körper 2a bewirkt. Der Pfad kann sowohl die Beschleunigungskraft, die beim Aktivieren des Endaktuators erforderlich ist, als auch die Verzögerungskraft, die beim Stoppen des Endaktuators erforderlich ist, erhöhen. Daher wird die Geschwindigkeit der Bewegung des Endaktuators von dem Startpunkt zu dem Endpunkt erhöht, um dadurch die Zeitdauer des Endaktuators zu reduzieren. Insbesondere wird bei einem gewissen Punkt der Bewegung des Endaktuators der horizontale Arm 5 leichter rotiert, um die bei der linearen Bewegung des bewegbaren Körpers 2a bewirkte Trägheit zu reduzieren. Demgemäß kann der Endaktuator mit weniger Energie bewegt werden. Dadurch kann, wenn der Roboter 1 bei einer Zeitdauer gleich zu der eines Pfades basierend auf dem Stand der Technik-Verfahren bewegt wird, der Roboter 1 mit geringerem Energieverbrauch als beim Stand der Technik bewegt werden.
  • Der vorstehend beschriebene Pfad wird als ein Ergebnis der Berechnung basierend auf den Bewegungsdynamiken des mehrachsigen Roboters 1 erzeugt. Demgemäß kann ein auf diese Weise berechneter Pfad die Bewegungsgeschwindigkeit innerhalb eines Erfüllungsbereichs der Randbedingungen des Roboters maximieren. Daher kann ein optimierter Pfad für den praktischen Nutzen erzeugt werden. Zudem werden bei der Berechnung eines Geschwindigkeitsmusters unter Verwendung des Bobrow's Verfahrens Positionen auf dem Pfad zu Winkel umgewandelt. Demgemäß ist die Konfiguration des Arms des Roboters 1 nicht auf das Linke-Hand-System noch auf das Rechte-Hand-System beschränkt. Daher wird ein Geschwindigkeitsmuster, das eine maximale Beschleunigung erreichen kann, unter Verwendung der beiden Linke- und Rechte-Hand-Systeme berechnet werden.
  • Ferner wird, wenn der Endaktuator von dem Startpunkt bewegt wird, der bewegbare Körper 2a in die Richtung des Endpunkts bewegt werden, während der horizontale Dreharm 5 so rotiert wird, dass dessen Ende sich in eine entgegengesetzte Richtung zu der Richtung des Endpunkts bewegt. Danach wird das Ende des horizontalen Dreharms 5 in die Richtung des Endpunkts bewegt. In diesem Fall trägt die durch die Bewegung des horizontalen Dreharms 5 bewegte Reaktion dazu bei, die Beschleunigungskraft bei dem Zeitpunkt des Aktivierens des Roboters 1 zu unterstützen.
  • Ferner wird der Pfad derart erzeugt, dass beim Stoppen des Endaktuators bei dem Endpunkt der horizontale Dreharm 5 bei einer Position, bei dem dessen Ende oder der Endaktuator über dem Endpunkt hinausgeht, davon in Richtung des Startpunkts bewegt wird. Mit anderen Worten, der Pfad wird derart erzeugt, dass sichergestellt wird, dass das Ende des horizontalen Dreharms 5 oder der Endaktuator zurück in Richtung des Startpunkts pendelt und stoppt. In diesem Fall trägt die durch die Bewegung des horizontalen Dreharms 5 bewirkte Reaktion zur Unterstützung der Verzögerungskraft bei dem Zeitpunkt des Stoppens des Roboters 1 bei. Mit anderen Worten, der auf diese Weise erzeugte Pfad ermöglicht dem horizontalen Dreharm 5, sich derart zu bewegen, dass er eine Reaktion auf den bewegbaren Körper 2a bewirkt.
  • Die drei Durchgangspunkte werden zwischen den Start- und Endpunkten festgelegt und es wird sichergestellt, dass eine geeignete Zeitdauer für die Durchgangspunkte berechnet wird, während die Positionen der drei Durchgangspunkte verändert werden. Insbesondere wird sichergestellt, um einen Pfad zu erzeugen, der die Zeitdauer des Endaktuators minimiert, dass der Pfad optimiert wird. Um den Pfad zu optimieren, wird sichergestellt, dass einer oder mehrere Durchgangspunkte zwischen den Start- und Endpunkten festgelegt sind, und es ist erforderlich, dass die Bewegungsgeschwindigkeit, die berechnet wird, wenn die Position der Durchgangspunkte verändert werden, mit der Bewegungsgeschwindigkeit vor der Veränderung verglichen werden.
  • Vorausgesetzt, dass der horizontale Dreharm 5, wie vorstehend beschrieben, bewegt wird, wird der bewegbare Körper 2a, der eine Achse auf der Basisseite bezüglich des horizontalen Dreharms 5 ist, aufweisen: einen Zeitpunkt, wenn eine Beschleunigung dazu direkt nach der Aktivierung gegeben ist; einen Zeitpunkt, wenn die Richtung der Beschleunigung bei gewissen Punkten der Bewegung umgekehrt wird; und einen Zeitpunkt, wenn die Beschleunigung Null ist vor dem Stopppunkt. Im Zuge der Optimierung des Pfades wird als wichtig erachtet, wenigstens die Durchgangspunkte entsprechend den vorstehenden drei Zeitpunkten zu optimieren. Demgemäß wird, wenn die Durchgangspunkte entsprechend den vorstehenden drei Zeitpunkten festgelegt werden, ein Pfad, der die Zeitdauer minimiert, wirksam erzeugt, während der Berechnungsbetrag unterdrückt wird. Auf diese Weise kann ein optimierter und praktisch nutzbarer Pfad erhalten werden. Gleichzeitig kann mit einem solchen Pfad das Potenzial der Motoren oder Aktuatoren maximal herausgezogen werden, was nicht durch das Verfahren basierend auf dem Stand der Technik aufgrund der Einschränkung des Verfahrens erreicht werden würde.
  • Zudem wird, wenn das Geschwindigkeitsmuster für jeden Gelenkraum erzeugt wird und die Randbedingungen des Drehmoments und der Geschwindigkeit für jedes Gelenk wie beim Stand der Technik bestimmt wird, die Anzahl der Bedingungen zweimal soviel wie die Anzahl der Achsen sein. Diesbezüglich wird gemäß dem in der vorliegenden Ausführungsform verwendeten Bobrow's Verfahren ein Geschwindigkeitsmuster für einen Pfadraum erzeugt. Demgemäß werden die Randbedingungen der Beschleunigung und Geschwindigkeit lediglich zwei.
  • [Zweite Ausführungsform]
  • Bezugnehmend auf 12 und 13 wird nachstehend eine zweite Ausführungsform betreffend einem Verfahren zum Erzeugen eines Pfades eines mehrachsigen Roboters und eine Steuervorrichtung für den mehrachsigen Roboter beschrieben.
  • Bei der zweiten und den anschließenden Ausführungsformen werden den Komponenten, die identisch oder ähnlich zu jenen bei der Steuervorrichtung der ersten Ausführungsform sind, die gleichen Bezugszeichen zum Zwecke des Verzichtens oder Vereinfachung der Erläuterung gegeben.
  • Bei dem Verfahren zum Erzeugen eines Pfades eines mehrachsigen Roboters und einer Steuervorrichtung für den mehrachsigen Roboter gemäß der zweiten Ausführungsform gibt es eine Veränderung bei dem Zeitpunkt des Ausführens des Schritts des Umwandelns der Position x eines Endaktuators zu einem Winkel q jeder Achse. Insbesondere wird bei der vorstehend beschriebenen ersten Ausführungsform die Position x des Endaktuators zu einem Winkel q jeder Achse durch Lösen der inversen Kinematiken umgewandelt (bezugnehmend auf Schritt S12). Diesbezüglich wird bei der zweiten Ausführungsform die Umwandlung zu dem Winkel q bei einer Stufe vor der Vorbereitung eines kürzesten Geschwindigkeitsmusters ausgeführt, d. h. bei der Stufe der Interpolation der Durchgangspunkte. Dadurch kann die Berechnung basierend auf inverse Kinematiken verzichtet werden, um die Last der Berechnung erheblich zu reduzieren.
  • Bezugnehmend auf 12 und 13 wird nachstehend ein Prozess zum Vorbereiten eines Geschwindigkeitsmusters beschrieben, der durch die Steuereinheit 9 ausgeführt wird.
  • Die Steuereinheit 9 liest Informationen, die einen beispielsweise durch einen Operator vergebenen Startpunkt und einen Endpunkt zeigt (Schritt S1 in 12) und erzeugt drei anfängliche Durchgangspunkte (Schritt S2). Anschließend wandelt die Steuereinheit 9 die Start-, End- und anfängliche Durchgangspunkte in dem Endaktuatorraum zu entsprechende Winkel in dem Gelenksraum (Schritt S2A) um. Nach dieser Umwandlung schreitet die Steuereinheit 9 zu Schritt S3 fort, wobei die Interpolation für den Startpunkt, den Endpunkt und den drei anfänglichen Durchgangspunken ausgeführt wird, um einen Pfad x = f(λ) zu erzeugen. Als Reaktion werden bei Schritt S4A der Schritt S13A und die Schritte S14 bis S19, wie in 13 gezeigt, ausgeführt. Bei Schritt S13A aus diesen Schritten wird der Winkel q in die Bewegungsgleichung des Roboters substituiert.
  • In diesem Fall wird der interpolierte Winkel q ausgedrückt durch: q = f(λ), q' = f'λ', q'' = f'λ'' + f'λ''2 (17)
  • Dies wird durch die Bewegungsgleichung des Roboters bei einem Gelenksraum wie folgt ausgedrückt: T = a1(λ)λ'' + a2(λ)λ'2 + a3(λ)λ' + a4(λ) a1 = Hf', a2 = Hf'' + h(q, f'), a3 = Bf', a4 = q (18)
  • In 12 und 13 sind die anderen Schritte als die vorstehenden ähnlich zu jenen der ersten Ausführungsform.
  • Dadurch wird gemäß der zweiten Ausführungsform der Pfad x zu dem Gelenkswinkel q vor der Stufe der Interpolation des Pfades x = f(λ) umgewandelt. Dies kann den Prozess zum Lösen der Gleichung der vorstehend erwähnten inversen Kinematiken, d. h. Schritte S11 und S12 der vorstehend beschriebenen 6, beseitigen.
  • Mit anderen Worten, die Bewegungsdynamiken (Vorwärtskinematiken) müssen lediglich in einem Gelenksraumwinkel gelöst werden, was dementsprechend zur Reduktion der Last der Berechnung führt.
  • Die in der ersten Ausführungsform erhaltenen Operationen und Vorteile können auch in der zweiten Ausführungsform erhalten werden.
  • (Abwandlungen)
  • Die vorliegende Erfindung ist nicht auf die vorstehend beschriebenen oder die in den Figuren dargestellte Ausführungsform beschränkt, sondern kann wie folgt verkörpert oder erweitert werden.
  • Die Anzahl der Durchgangspunkte kann vier oder mehr sein.
  • Ein anderes Verfahren als das Bobrow's Verfahren kann bei der Berechnung des Pfades des Maximierens der Geschwindigkeit des mehrachsigen Roboters basierend auf den Bewegungsdynamiken des Roboters verwendet werden.
  • Der Basisseitenarm und der Endaktuatorseitenarm werden basierend auf der Positionsbeziehung der Arme bestimmt. Beispielsweise kann ein mehrachsiger Roboter einen mit einem Ende eines zweiten Arms verbundenen dritten Arm aufweisen. In diesem Fall werden, wenn der erste Arm als ein „Basisseitenarm” bezeichnet wird, der zweite und der dritte Arm als „Endaktuatorenseitenarme” bezeichnet werden. Der dritte Arm wird auch, wenn der zweite Arm als ein „Basisseitenarm” bezeichnet wird, als ein „Endaktuatorseitenarm” bezeichnet. Als Beispiel dafür zeigt 14 einen dreiachsigen Roboter. Der dreiachsige Roboter weist die Arme AM1, AM2 und AM3 auf, die jeweils mit den Gelenken JT1, JT2 und JT3 verbunden sind. Beim Bewegen des Endaktuators EF des dreiachsigen Arms von einem Startpunkt zu einem gewünschten Endpunkt kann das Verfahren zum Erzeugen eines Pfades und das in der ersten oder zweiten Ausführungsform beschriebene Steuerverfahren auf einfache Weise angewandt werden. In diesem Fall kann, wenn die Gelenkswinkel der Gelenke JT1, JT2 und JT3 jeweils durch θ1, θ2 und θ3 repräsentiert wird, die Formel (1) unter Verwendung des nachfolgenden Winkels q als dreidimensionaler Vektor verarbeitet werden: q = [θ1, θ2, θ3] (19)
  • Daher wurde der dreiachsige Roboter aktiviert, wie in einem in 15 gezeigten Beispiel angezeigt. Diesbezüglich wurde beim Bewegen der Position der drei Achsen (J1, J2 und J3) von einem Startpunkt (0, 0, 0) Grad zu einem Endpunkt (90, 45, 90) Grad eine Wirkung des Erhöhen der Beschleunigungskraft und der Verzögerungskraft bestätigt, um durch die Reaktion des Endaktuatorseitenarms erhalten zu werden. Mit anderen Worten, verglichen mit dem Ort eines Pfades (die Strich-Punkt-Punkt-Linie in 15) des Standes der Technik, wurde eine verkürzte Zeitdauer bestätigt.
  • Die Anmeldung der vorliegenden Erfindung ist nicht auf einen mehrachsigen Roboter beschränkt, der eine Fahrachse enthält, die mit einer Rotationsachse kombiniert ist. Stattdessen kann die vorliegende Erfindung auf einen mehrachsigen Roboter mit einer unterschiedlichen Kombination von Achsen angewandt werden.
  • Bei den vorstehend beschriebenen Ausführungsformen werden die oberen Grenzen λ'min und λ'max der Geschwindigkeit der Randbedingungen als konstant behandelt. Allerdings können diese Werte variable Werte sein. Zwei Beispiele davon sind hier vorgesehen.
  • Bei dem ersten Beispiel wird der Fokus auf die Beziehung zwischen der Geschwindigkeit und dem Drehmoment jedes Motors des Roboters der vorliegenden Erfindung gelegt. Insbesondere betrifft das erste Beispiel eine Funktion des Veränderns der oberen Grenze der Beschleunigung als eine der Randbedingungen. 16 zeigt ein Diagramm, das eine TN-Kurve eines im Allgemein bekannten Motors darstellt. Es ist bekannt, dass sich, wenn ein Motor seine Geschwindigkeit erhöht, das ausgegebene maximale Drehmoment sinkt. Daher wird in diesem Beispiel die Randbedingung des Motors betreffend dem Drehmoment wie folgt unter Berücksichtigung der vorstehenden Beziehung ausgedrückt: λ''min(λ, q'/f) ≤ λ''(λ, q'/f) ≤ λ''max(λ, q'/f) (20)
  • Unter Verwendung der in 16 gezeigten TN-Kurve wird ein maximales Drehmoment entsprechend der aktuellen Geschwindigkeit q' berechnet, um basierend auf der Formel (20) eine Bestimmung durchzuführen. Dadurch wird das maximale Drehmoment gemäß der Geschwindigkeit variiert.
  • Das zweite Beispiel betrifft eine Funktion des Veränderns einer oberen Grenzgeschwindigkeit als eine der Randbedingungen in einem XR-Roboter, der eine Fahrachse, wie z. B. einer Kugelumlaufspindel, aufweist.
  • Der in 17 gezeigte XR-Roboter enthält eine Kugelumlaufspindel 20, eine direkt wirkende Achse J1 (X-Achse), eine bewegbare Bühne 23 und einen Arm 25. Die direkt wirkende Achse J1 weist zwei Enden auf, die zu einer fixierten Basis 22 über eine Fixiereinrichtung 21 fixiert sind. Die bewegbare Bühne 23 ist bewegbar durch die direkt wirkende Achse J1 gehalten. Der Arm 25 wird rotierbar durch die bewegbare Bühne 23 über ein Gelenk 24 gehalten. Der Arm 25 dient als eine Rotationsachse (R-Achse) J2. Der zweiachsige XR-Roboter ist auf diese Weise konfiguriert. Bei der Erzeugung des Pfades der zwei Achsen J1 und J2 wird die Konfiguration gemäß der vorliegenden Erfindung implementiert, um dadurch die Beschleunigungskraft und die Verzögerungskraft zu erhöhen.
  • Bei einer einzigen Achse, wie z. B. einer Kugelumlaufspindel, wird deren obere Grenzgeschwindigkeit (sogenannte Grenzgeschwindigkeit oder kritische Geschwindigkeit) eingerichtet. Der Wert der oberen Grenzgeschwindigkeit variiert jedoch in Abhängigkeit der Position der Achse von deren fixierten Enden. Wenn ein solcher Roboter mit dem herkömmlichen trapezförmigen Geschwindigkeitsmuster angetrieben wird, wurde der obere Rand (obere Grenzgeschwindigkeit) des Trapez auf einen konstanten Wert festgelegt, der ein den Sicherheitswert berücksichtigender Wert ist.
  • In diesem Beispiel kann das Verfahren zum Erzeugen eines Pfades gemäß der vorliegenden Erfindung auf den XR-Roboter angewandt werden, um die obere Grenzgeschwindigkeit entsprechend einer Position P der bewegbaren Bühne 23 entlang der direkt wirkenden Achse J1 zu verändern. Wie aus der Formel (13) verstanden wird, wird die Randbedingung λ'min ≤ λ' ≤ λ'max der Geschwindigkeit durch die Position λ (d. h. Winkel) und die maximale Geschwindigkeit q' bestimmt. Daher kann die obere Grenzgeschwindigkeit entsprechend der Position P der Achse J1 variiert werden. Dadurch kann, wie schematisch durch den schraffierten Bereich in 18 angezeigt, der Geschwindigkeitsbereich, der nicht vollständig bei dem Stand der Technik genutzt wurde, wirksam genutzt werden, um die Zeitdauer weiter zu verkürzen.
  • Die vorliegende Erfindung kann in einigen anderen Ausbildungen ohne von deren Erfindungsgedanken abzuweichen verkörpert werden. Die soweit beschriebenen Ausführungsformen und Abwandlungen beabsichtigen daher lediglich darstellend und nicht beschränkend zu sein, da der Umfang der Erfindung vielmehr durch die beigefügten Ansprüche als durch die vorstehende Beschreibung definiert ist. Alle Änderungen, die innerhalb dem Bereich und den Grenzen der Ansprüche oder Äquivalente zu einem solchen Bereich oder Grenzen fallen, werden daher beabsichtigt durch die Ansprüche umfasst zu sein.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 2000-094371 A [0004, 0006]
    • JP 2002-132349 A [0004, 0007]
    • JP 2002-321178 A [0004, 0010]
  • Zitierte Nicht-Patentliteratur
    • Proceedings of the 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems October 9–15, 2006, Beijing China ”Time-Optimal Path Generation of Fast-Motion Planar Parallel Manipulator” by Yanjie Liu, Chenqi Wan, Juan Li, Lining Sun [0060]
    • The International Journal of Robotics Research, Vol. 4. No. 3, Fall 1985 pp. 3–17 ”Time-Optimal Control of Robotic Manipulators Along Specified Paths” by J. E. Bobrow, S. Dubowsky, J. S. Gibson [0064]
    • IEEE JOURNAL OF ROBOTICS AND AUTOMATION, Vol. 4, No. 4, August 1988 pp. 443–450 ”Optimal Robot Path Planning Using the Minimum-Time Criterion” by James E. Bobrow [0064]

Claims (4)

  1. Verfahren zum Erzeugen eines Pfades für einen mehrachsigen Roboter (1), der mit einer Mehrzahl von bewegbaren Achsen (J1, J2) vorgesehen ist, die aus einer Mehrzahl von Verbindungen und einer Mehrzahl von Gelenken (JT1, JT2) gebildet sind, wobei ein Endaktuator (EF) bei einer Spitze der mit den Gelenken (JT1, JT2) verbundenen Verbindungen angebracht ist und sich entlang des Pfades bewegt, wobei der Schritt die Schritte aufweist: Spezifizieren eines Startpunkts und eines Endpunkts; Erzeugen eines Durchgangspunkts zwischen den spezifizierten Start- und Endpunkten; Umwandeln von Koordinatenpositionen sowohl von den spezifizierten Start- und Endpunkten als auch den erzeugten anfänglichen Durchgangspunkten in Winkel jeder der bewegbaren Achsen (J1, J2) der Gelenke (JT1, JT2); und Erzeugen basierend sowohl auf den spezifizierten Start- und Endpunkten als auch den erzeugten anfänglichen Durchgangspunkten, die der Winkelumwandlung unterzogen wurden, des Pfades, der dem Endaktuator (EF) ermöglicht, sich in der kürzesten Zeit von dessen Startpunkt zu dessen Endpunkt zu bewegen, wobei das Herstellen des Pfades wiederholt Veränderungen der anfänglichen Durchgangspunkte enthält.
  2. Verfahren nach Anspruch 1, wobei die anfänglichen Durchgangspunkte drei an der Anzahl sind.
  3. Verfahren nach Anspruch 2, wobei der Schritt zum Erzeugen des Pfades Geschwindigkeitsmuster von ersten und zweiten Gelenken (JT1, JT2) erzeugt, um jeweils erste und zweite Gelenke (JT1, JT2) aus der Mehrzahl der Gelenke (JT1, JT2) basierend auf den Start- und Endpunkten anzutreiben, die der Winkelumwandlung unterzogen wurden, wobei die zweite Verbindung näher an dem Endaktuator (EF) positioniert ist als die erste Verbindung, die Geschwindigkeitsmuster einer Bewegung der zweiten Verbindung ermöglichen, i) eine Reaktion zum Erhöhen einer Beschleunigungskraft zu bewirken, die durch das erste Gelenk (JT1) erzeugt wird, wenn begonnen wird, den Endaktuator (EF) von dem Startpunkt in Richtung des Endpunkts zu bewegen, und ii) eine Reaktion zur Erhöhung einer Verzögerungskraft bewirken, die durch das erste Gelenk (JT1) erzeugt wird, wenn der Endaktuator bei dem Endpunkt gestoppt wird.
  4. Vorrichtung zum Steuern des Antriebs eines mehrachsigen Roboters (1), der mit einer Mehrzahl von bewegbaren Achsen (J1, J2) vorgesehen ist, die aus einer Mehrzahl von Verbindungen und Gelenken (JT1, JT2) gebildet sind, aufweisend: eine Positionsspezifizierungseinrichtung zum Spezifizieren eines Startpunkts und eines Endpunkts eines Pfades, der kontinuierlich von dem Startpunkt zu dem Endpunkt verläuft, wobei der Endaktuator (EF) an einer Spitze der mit den Gelenken (JT1, JT2) verbundenen Verbindungen angebracht ist; eine erste Erzeugungseinrichtung zum Erzeugen eines Durchgangspunkts zwischen dem spezifizierten Start- und Endpunkt; eine Umwandlungseinrichtung zum Umwandeln von Koordinatenpositionen sowohl von den spezifizierten Start- und Endpunkten als auch von den erzeugten anfänglichen Durchgangspunkten in Winkel jeder der bewegbaren Achsen (J1, J2) der Gelenke (JT1, JT2); eine zweite Erzeugungseinrichtung zum Erzeugen basierend auf den spezifizierten Start- und Endpunkten und den erzeugten anfänglichen Durchgangspunkten, die der Winkelumwandlung unterzogen wurden, des Pfades, der dem Endaktuator (EF) ermöglicht, sich in der kürzesten Zeit von dessen Startpunkt zu dessen Endpunkt zu bewegen, wobei die Herstellung des Pfades wiederholt Veränderungen der anfänglichen Durchgangspunkte enthält; und eine Steuereinrichtung zum Steuern des Antriebs der Mehrzahl der bewegbaren Achsen (J1, J2) basierend auf dem Erzeugungspfad.
DE102014104226.3A 2013-03-28 2014-03-26 Verfahren zur Erzeugung eines Pfades eines mehrachsigen Roboters und Steuervorrichtung für den mehrachsigen Roboter Active DE102014104226B8 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/852,417 2013-03-28
US13/852,417 US9221175B2 (en) 2013-03-28 2013-03-28 Method of generating path of multiaxial robot and control apparatus for the multiaxial robot

Publications (3)

Publication Number Publication Date
DE102014104226A1 true DE102014104226A1 (de) 2014-10-02
DE102014104226B4 DE102014104226B4 (de) 2016-05-12
DE102014104226B8 DE102014104226B8 (de) 2016-08-04

Family

ID=51519980

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014104226.3A Active DE102014104226B8 (de) 2013-03-28 2014-03-26 Verfahren zur Erzeugung eines Pfades eines mehrachsigen Roboters und Steuervorrichtung für den mehrachsigen Roboter

Country Status (3)

Country Link
US (1) US9221175B2 (de)
JP (1) JP6268819B2 (de)
DE (1) DE102014104226B8 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015109708B3 (de) * 2015-06-17 2016-01-21 Uwe Simon Verfahren zur Steuerung des Bewegungsablaufs einer motorisch angetriebenen Maschinen- oder Werkzeugkomponente
DE102015106227B3 (de) * 2015-04-22 2016-05-19 Deutsches Zentrum für Luft- und Raumfahrt e.V. Steuern und/oder Regeln von Motoren eines Roboters

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9517558B2 (en) 2011-09-02 2016-12-13 Brooks Automation Inc. Time-optimal trajectories for robotic transfer devices
JP6123595B2 (ja) * 2013-09-10 2017-05-10 株式会社デンソーウェーブ 2軸ロボットの速度制御方法
JP6455019B2 (ja) * 2014-08-21 2019-01-23 株式会社デンソーウェーブ ロボットの制御装置及び制御方法
DE102015002994A1 (de) * 2015-03-09 2016-09-15 Kuka Roboter Gmbh Verändern einer initial vorgegebenen Roboterbahn
WO2016196512A1 (en) * 2015-05-29 2016-12-08 Abb Technology Ag Method and system for robotic adaptive production
JP6468127B2 (ja) * 2015-08-26 2019-02-13 トヨタ自動車株式会社 全方位移動体、その制御方法及びプログラム
US9981381B1 (en) * 2016-06-08 2018-05-29 X Development Llc Real time generation of phase synchronized trajectories
US10754337B2 (en) 2016-06-20 2020-08-25 Hypertherm, Inc. Systems and methods for planning paths to guide robots
US10040196B2 (en) * 2016-07-07 2018-08-07 Technologies Holding Corp. System and method for in-flight robotic arm retargeting
US10940584B1 (en) * 2018-04-26 2021-03-09 X Development Llc Robotic control
JP7115090B2 (ja) * 2018-07-17 2022-08-09 オムロン株式会社 加速度調整装置及び加速度調整プログラム
CN109719725B (zh) * 2018-12-29 2022-03-11 达闼机器人有限公司 一种机械臂运动规划的方法、机械臂及机器人
JP7028196B2 (ja) * 2019-01-15 2022-03-02 オムロン株式会社 ロボット制御装置、ロボット制御方法、及びロボット制御プログラム
EP3924152A1 (de) 2019-02-11 2021-12-22 Hypertherm, INC. Bewegungsverteilung in robotischen systemen
CN113365787A (zh) 2020-01-05 2021-09-07 牧今科技 具有动态运动调整机制的机器人系统及其操作方法
CN111922567B (zh) * 2020-08-13 2022-06-21 北京博清科技有限公司 焊接的控制方法、装置、计算机可读存储介质和焊接系统
CN113119111A (zh) * 2021-03-18 2021-07-16 深圳市优必选科技股份有限公司 机械臂及其轨迹规划方法和装置
CN113319859B (zh) * 2021-05-31 2022-06-28 上海节卡机器人科技有限公司 一种机器人示教方法、系统、装置及电子设备
CN114654463A (zh) * 2022-03-14 2022-06-24 上海电机学院 基于遗传算法的并联机器人分拣方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000094371A (ja) 1998-09-18 2000-04-04 Yaskawa Electric Corp ロボットの最短時間制御装置
JP2002132349A (ja) 2000-10-18 2002-05-10 Fanuc Ltd 加減速制御方法
JP2002321178A (ja) 2001-04-20 2002-11-05 Yaskawa Electric Corp ロボットの加減速時間決定方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4772831A (en) * 1986-11-20 1988-09-20 Unimation, Inc. Multiaxis robot control having improved continuous path operation
JP2786225B2 (ja) * 1989-02-01 1998-08-13 株式会社日立製作所 工業用ロボットの制御方法及び装置
KR0160998B1 (ko) * 1992-09-18 1998-12-15 윤종용 로보트의 구동경로 계획방법
JPH07200030A (ja) * 1993-12-28 1995-08-04 Hitachi Ltd ロボット動作計画装置、コントローラ、および、最適軌道生成方法
JPH0916241A (ja) 1995-06-29 1997-01-17 Fanuc Ltd ロボットの加減速動作の設定方法
JP3537229B2 (ja) * 1995-07-28 2004-06-14 ファナック株式会社 ロボットの制御方法
JPH1153021A (ja) 1997-08-05 1999-02-26 Yaskawa Electric Corp 産業用ロボットの加減速パターン生成方法
JP3673383B2 (ja) * 1997-12-12 2005-07-20 ファナック株式会社 ロボットの制御装置
JP3830475B2 (ja) 2003-08-05 2006-10-04 ファナック株式会社 制御装置
JP2006099347A (ja) * 2004-09-29 2006-04-13 Fanuc Ltd ロボット移動制御方法
JP4706684B2 (ja) * 2007-10-04 2011-06-22 セイコーエプソン株式会社 作業対象物の配置決定方法、作業対象物の配置決定支援装置、作業対象物の配置決定支援プログラム及びロボットシステム
JP4942672B2 (ja) * 2008-01-25 2012-05-30 三菱電機株式会社 ロボット軌道制御装置及びロボット軌道制御方法
WO2009110242A1 (ja) * 2008-03-06 2009-09-11 パナソニック株式会社 マニピュレータおよびその制御方法
JP5618068B2 (ja) * 2010-08-24 2014-11-05 シンフォニアテクノロジー株式会社 移動装置の軌道情報生成装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000094371A (ja) 1998-09-18 2000-04-04 Yaskawa Electric Corp ロボットの最短時間制御装置
JP2002132349A (ja) 2000-10-18 2002-05-10 Fanuc Ltd 加減速制御方法
JP2002321178A (ja) 2001-04-20 2002-11-05 Yaskawa Electric Corp ロボットの加減速時間決定方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
IEEE JOURNAL OF ROBOTICS AND AUTOMATION, Vol. 4, No. 4, August 1988 pp. 443-450 "Optimal Robot Path Planning Using the Minimum-Time Criterion" by James E. Bobrow
Proceedings of the 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems October 9-15, 2006, Beijing China "Time-Optimal Path Generation of Fast-Motion Planar Parallel Manipulator" by Yanjie Liu, Chenqi Wan, Juan Li, Lining Sun
The International Journal of Robotics Research, Vol. 4. No. 3, Fall 1985 pp. 3-17 "Time-Optimal Control of Robotic Manipulators Along Specified Paths" by J. E. Bobrow, S. Dubowsky, J. S. Gibson

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015106227B3 (de) * 2015-04-22 2016-05-19 Deutsches Zentrum für Luft- und Raumfahrt e.V. Steuern und/oder Regeln von Motoren eines Roboters
US10678210B2 (en) 2015-04-22 2020-06-09 Kastanienbaum GmbH Controlling and/or regulating motors of a robot
DE102015109708B3 (de) * 2015-06-17 2016-01-21 Uwe Simon Verfahren zur Steuerung des Bewegungsablaufs einer motorisch angetriebenen Maschinen- oder Werkzeugkomponente
EP3106946A1 (de) 2015-06-17 2016-12-21 Uwe Simon Verfahren zur steuerung des bewegungsablaufs einer motorisch angetriebenen maschinen- oder werkzeugkomponente

Also Published As

Publication number Publication date
US9221175B2 (en) 2015-12-29
DE102014104226B4 (de) 2016-05-12
US20140297031A1 (en) 2014-10-02
JP6268819B2 (ja) 2018-01-31
JP2014193520A (ja) 2014-10-09
DE102014104226B8 (de) 2016-08-04

Similar Documents

Publication Publication Date Title
DE102014104226B4 (de) Verfahren zur Erzeugung eines Pfades eines mehrachsigen Roboters und Steuervorrichtung für den mehrachsigen Roboter
DE102014104220B9 (de) Verfahren zum Steuern des Antriebs eines mehrachsigen Roboters und Steuervorrichtung für den mehrachsigen Roboter
EP2563553B1 (de) Verfahren und steuermittel zum steuern eines roboters
EP3341164B1 (de) Robotergreifer
DE60020466T2 (de) Parallelroboter mit vier Freiheitsgraden
EP2905111B1 (de) Verfahren zum Programmieren eines Industrieroboters und zugehöriger Industrieroboter
EP2868445B1 (de) Verfahren zum Programmieren von Bewegungsabläufen eines redundanten Industrieroboters und zugehöriger Industrieroboter
EP2954986B1 (de) Vorrichtung und Verfahren zum Steuern und Regeln eines Mehrkörpersystems
DE69636447T2 (de) Verfahren und vorrichtung zum steuern der bewegung eines redundanten manipulators
EP2546711B2 (de) Verfahren zum Programmieren eines Roboters
DE60129009T2 (de) Bewegungskorrektur eines industrieroboters
EP1950010B1 (de) Roboter und Verfahren zum Programmieren eines Roboters
DE102016002904B4 (de) Robotersystem
DE102012213957B4 (de) Schnelle Berechnung von Griffkontakten für einen seriellen Roboter
DE102014113268B4 (de) Achswinkelbestimmungsverfahren für einen sechsachsigen Roboter und Steuervorrichtung für einen sechsachsigen Roboter
DE102014226936B3 (de) Ganzkörperimpedanz für mobile Roboter
EP3023205B1 (de) Verfahren zum ermitteln einer bewegungsgrenze
DE102006055359A1 (de) Roboter und Verfahren zur Vermeidung einer Interferenz bei vielen Robotern
DE102010045525A1 (de) Handgelenk eines geschickten humanoiden Roboters
DE102011003506A1 (de) Industrieroboter
EP1920892A2 (de) Robotersteuerung, Roboter und Verfahren zum Steuern eines Roboters
WO2019029870A1 (de) Handhabungseinrichtung mit einem roboter sowie verfahren und computerprogramm
DE112012004592B4 (de) Vorrichtung und Verfahren zur Echtzeit-Steuerung von Wedelbewegungen
EP2504741B1 (de) Verfahren zum erstellen eines robotermodells und industrieroboter
DE102012022190B4 (de) Inverse Kinematik

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R082 Change of representative

Representative=s name: KUHNEN & WACKER PATENT- UND RECHTSANWALTSBUERO, DE

R020 Patent grant now final