DE112021007395T5 - Robotersteuerungseinrichtung, robotersteuerungsprogramm und robotersteuerungsverfahren - Google Patents

Robotersteuerungseinrichtung, robotersteuerungsprogramm und robotersteuerungsverfahren Download PDF

Info

Publication number
DE112021007395T5
DE112021007395T5 DE112021007395.8T DE112021007395T DE112021007395T5 DE 112021007395 T5 DE112021007395 T5 DE 112021007395T5 DE 112021007395 T DE112021007395 T DE 112021007395T DE 112021007395 T5 DE112021007395 T5 DE 112021007395T5
Authority
DE
Germany
Prior art keywords
trajectory
point
target object
robot
orientation
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.)
Pending
Application number
DE112021007395.8T
Other languages
English (en)
Inventor
Nanase Haruo
Takuya Okahara
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE112021007395T5 publication Critical patent/DE112021007395T5/de
Pending legal-status Critical Current

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
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • 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/40371Control trajectory to avoid joint limit as well as obstacle collision
    • 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/40519Motion, trajectory planning

Landscapes

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

Abstract

Eine Robotersteuerungseinrichtung erfasst eine Referenzbahn (202) und einen Verzweigungspunkt (204) entsprechend einer gemessenen Position und Ausrichtung eines Zielobjekts, legt die gemessene Position und Ausrichtung des Zielobjekts als einen Endpunkt (Pe) fest, erzeugt eine erste Bewegungsbahn, die eine Bewegungsbahn eines Roboters (101) von einem Startpunkt (Ps) zum Verzweigungspunkt (204) ist, indem die erfasste Referenzbahn (202) als solche verwendet wird, erzeugt eine zweite Bewegungsbahn, die eine Bewegungsbahn des Roboters (101) vom Verzweigungspunkt (204) zum Endpunkt (Pe) ist, indem eine erste Berechnung durchgeführt wird, und führt eine Antriebssteuerung des Roboters (101) gemäß einem Bewegungsbefehl durch, der die erste Bewegungsbahn und die zweite Bewegungsbahn umfasst.

Description

  • Gebiet
  • Die vorliegende Offenbarung betrifft eine Robotersteuerungseinrichtung, ein Robotersteuerungsprogramm und ein Robotersteuerungsverfahren zum Bewegen eines Gelenkroboters von einem Startpunkt zu einem Endpunkt.
  • Hintergrund
  • Bei einer normalen Punkt-zu-Punkt-Steuerung zur Veranlassung einer Bewegung eines Roboters von einem Startpunkt zu einem Endpunkt kann vor der Durchführung der Arbeit ein Bewegungsbefehl erzeugt werden, unter Berücksichtigung von Einschränkungen an einem Roboterhauptkörper und einer Umgebung, um die Verarbeitung zu reduzieren, um die Arbeitsgeschwindigkeit während der Durchführung der Arbeit zu erhöhen. Weiterhin ist es wünschenswert, bei der Erzeugung einer Bahn vor der Durchführung der Arbeit eine Bahn zu erzeugen, die es ermöglicht, dass ein die Produktivität quantitativ repräsentierender Bewertungswert, wie etwa die Bewegungszeit, in einen bestimmten Bereich fällt, um die Produktivität zu verbessern. In einem Fall, in dem die Position und Ausrichtung eines Zielobjekts der Roboterarbeit nicht festgelegt sind, ist es notwendig, eine Bewegungsbahn gemäß der tatsächlichen Position und Ausrichtung des Zielobjekts zu erzeugen. Es dauert eine Berechnungszeit, um eine Bewegungsbahn zu erzeugen, die alle Einschränkungen erfüllt. Es wurden daher auf breiter Basis Anstrengungen unternommen, um die für die Erzeugung der Bahn erforderliche Zeit zu verkürzen, indem Informationen über eine bereits erzeugte Bewegungsbahn verwendet werden.
  • Die in der Patentliteratur 1 beschriebene Technik basiert auf der Annahme, dass für die Durchführung von Arbeiten durch Durchlaufen einer Vielzahl von Arbeitsbereichen in einer bestimmten Reihenfolge vorab eine Bewegungsbahn erzeugt wird. Die Bewegungsbahn ist in eine Vielzahl von Arbeitsbereichsabschnitten unterteilt. Wenn bestimmt wird, dass ein Hindernis aufgrund einer Änderung der Anordnung oder Form umliegender Hindernisse einen Teil der Bewegungsbahn stört, wird eine Bahn nur für einen Arbeitsbereich erneut erzeugt, in dem die Störung auftritt.
  • Entgegenhaltungsliste
  • Patentliteratur
  • Patentliteratur 1: Japanisches Patent Nr. 6560841
  • Kurzdarstellung
  • Technisches Problem
  • Bei der Technik der Patentliteratur 1 ist es möglich, die Bahn eines spezifischen Arbeitsbereichsabschnitts, in dem Störung auftritt, zu ändern, aber ein zu ändernder Abschnitt ist an einem Abschnitt fixiert, in dem bestimmt wird, dass eine Störung mit einem Hindernis aufgetreten ist. Wird jedoch ein zu ändernder Abschnitt in einem Fall, in dem die Position und Ausrichtung des Zielobjekts variiert, nicht entsprechend festgelegt, so kann sich ein Bewertungswert unter Berücksichtigung der Verbindung mit einem unveränderten Abschnitt über einen zulässigen Bereich hinaus verschlechtern. Angenommen, es ist erforderlich, eine Armspitze eines Roboters stärker zu neigen als eine im Voraus erzeugte Bahn. Ist in einem solchen Fall ein zu ändernder Abschnitt kurz, so ist eine Wartezeit für das Warten auf einen Änderungsvorgang für die Armspitze erforderlich, und es besteht die Möglichkeit, dass die Bewegungszeit länger wird.
  • Die vorliegende Offenbarung wurde im Hinblick auf das Vorstehende getroffen, und der vorliegenden Offenbarung liegt die Aufgabe zugrunde, eine Robotersteuerungseinrichtung bereitzustellen, die in der Lage ist, die Zeit zum Erzeugen einer Bahn mit einem Bewertungswert, der in einen bestimmten Bereich fällt, auch dann zu verkürzen, wenn die Position und Ausrichtung eines Zielobjekts variieren.
  • Lösung des Problems
  • Um die oben beschriebenen Probleme zu lösen und die Aufgabe zu erfüllen, führt eine Robotersteuerungseinrichtung gemäß der vorliegenden Offenbarung eine vorbestimmte Aufgabe für ein Zielobjekt durch, indem ein Endeffektor eines Roboters von einem Startpunkt zu einem Endpunkt bewegt wird. Die Position und Ausrichtung des Zielobjekts ist nicht festgelegt. Die Robotersteuerungseinrichtung beinhaltet: eine Speichereinheit, die eine Referenzbahn und einen Verzweigungspunkt in Verbindung mit jeder von mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts speichert; eine Messeinheit, die die Position und Ausrichtung des Zielobjekts bei der Durchführung der Aufgabe misst; eine Einzelbahnerzeugungseinheit, die die Referenzbahn und den der gemessenen Position und Ausrichtung des Zielobjekts entsprechenden Verzweigungspunkt aus der Speichereinheit erfasst, die gemessene Position und Ausrichtung des Zielobjekts als den Endpunkt festlegt, eine erste Bewegungsbahn erzeugt, die eine Bewegungsbahn des Roboters vom Startpunkt zum Verzweigungspunkt ist, indem die erfasste Referenzbahn als solche verwendet wird, und eine zweite Bewegungsbahn erzeugt, die eine Bewegungsbahn des Roboters vom erfassten Verzweigungspunkt zum Endpunkt ist, indem eine erste Berechnung durchgeführt wird; und eine Robotersteuerungseinheit, die eine Antriebssteuerung des Roboters gemäß einem Bewegungsbefehl durchführt, der die erste Bewegungsbahn und die zweite Bewegungsbahn beinhaltet. Die Referenzbahn ist eine Bewegungsbahn des Roboters vom Startpunkt zu einem ersten Punkt, der eine der mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts ist, und ist eine Bewegungsbahn, die die Vermeidung von Störungen mit einem Hindernis ermöglicht und die eine Bedingung erfüllt, dass ein Bewertungswert in einen ersten Bereich fällt. Der Verzweigungspunkt ist ein Punkt auf der Referenzbahn und ist eine Bewegungsbahn, die eine Bedingung erfüllt, dass der Bewertungswert einer Bewegungsbahn vom Verzweigungspunkt zum ersten Punkt in einen zweiten Bereich fällt, der größer ist als der erste Bereich.
  • Vorteilhafte Wirkungen der Erfindung
  • Mit der vorliegenden Offenbarung wird erreicht, dass die Zeit zur Erzeugung einer Bahn mit einem Bewertungswert, der in einen bestimmten Bereich fällt, auch dann verkürzt werden kann, wenn die Position und Ausrichtung eines Zielobjekts variieren.
  • Kurze Beschreibung der Zeichnungen
    • 1 ist eine konzeptionelle Darstellung, die eine Konfiguration eines Robotersystems in einer ersten Ausführungsform veranschaulicht.
    • 2 ist eine Draufsicht auf ein Zielobjekt, die konzeptionell eine Drehverschiebung des Zielobjekts in einer Ebene in der ersten Ausführungsform veranschaulicht.
    • 3 ist eine konzeptionelle Darstellung, die eine Vielzahl von Kandidaten für eine Handannäherung in der ersten Ausführungsform veranschaulicht.
    • 4 ist ein Blockdiagramm, das eine gesamte Konfiguration einer Robotersteuerungseinrichtung in der ersten Ausführungsform veranschaulicht.
    • 5 ist eine konzeptionelle Darstellung zum Beschreiben eines Zielsatzes in der ersten Ausführungsform.
    • 6 ist eine Darstellung zum Beschreiben einer Positionsdefinition im Zielsatz in der ersten Ausführungsform.
    • 7 ist eine Darstellung zum Beschreiben einer Vielzahl von Mustern unterschiedlicher Drehverschiebungswinkel des Zielobjekts in der ersten Ausführungsform.
    • 8 ist eine Darstellung zum Beschreiben einer Vielzahl von Mustern unterschiedlicher Handannäherungen zum Zielobjekt in der ersten Ausführungsform.
    • 9 ist ein Ablaufdiagramm, das den Betrieb einer Bahnerzeugungseinheit zum Hinzufügen einer Referenzbahn und eines Verzweigungspunktes zu einer Einzelverzweigungspunktspeichereinheit auf der Grundlage des Zielsatzes in der ersten Ausführungsform veranschaulicht.
    • 10 ist eine konzeptionelle Darstellung, die ein Beispiel für das Auswählen einer Position des Zielobjekts zeigt, die zur Erzeugung einer Referenzbahn in der ersten Ausführungsform zu verwenden ist.
    • 11 ist eine konzeptionelle Darstellung, die ein weiteres Beispiel für das Auswählen einer Position des Zielobjekts zeigt, die zur Erzeugung einer Referenzbahn in der ersten Ausführungsform zu verwenden ist.
    • 12 ist eine konzeptionelle Darstellung, die noch ein weiteres Beispiel für das Auswählen einer Position des Zielobjekts zeigt, die zur Erzeugung einer Referenzbahn in der ersten Ausführungsform zu verwenden ist.
    • 13 ist eine konzeptionelle Darstellung, die eine Beziehung zwischen einer Referenzbahn und einem Verzweigungspunkt in der ersten Ausführungsform veranschaulicht.
    • 14 ist ein Ablaufdiagramm, das eine Vorgehensweise zum Berechnen des Verzweigungspunktes in der ersten Ausführungsform veranschaulicht.
    • 15 ist eine konzeptionelle Darstellung, die eine Beziehung zwischen der Referenzbahn und Hindernissen in der ersten Ausführungsform veranschaulicht.
    • 16 ist eine konzeptuelle Darstellung, die sich auf einen Auswahlbereich des Verzweigungspunktes in der ersten Ausführungsform bezieht.
    • 17 ist eine konzeptuelle Darstellung, die ein Verfahren veranschaulicht, mit dem eine Einzelbahnerzeugungseinheit eine Bahn in der ersten Ausführungsform erzeugt.
    • 18 ist ein Ablaufdiagramm, das einen Verarbeitungsvorgang der Einzelbahnerzeugungseinheit und einer Robotersteuerungseinheit in der ersten Ausführungsform veranschaulicht.
    • 19 ist ein Ablaufdiagramm, das einen Arbeitsvorgang zum Erzeugen einer Einzelbahn in einer zweiten Ausführungsform veranschaulicht.
    • 20 ist eine konzeptionelle Darstellung, die eine Referenzbahn und eine Einzelbahn in der zweiten Ausführungsform veranschaulicht.
    • 21 ist ein Blockdiagramm, das Hardwarekonfigurationen für die Robotersteuerungseinrichtung gemäß jeder von der ersten Ausführungsform und der zweiten Ausführungsform veranschaulicht.
  • Beschreibung von Ausführungsformen
  • Im Folgenden werden unter Bezugnahme auf die Zeichnungen eine Robotersteuerungseinrichtung, ein Robotersteuerungsprogramm und ein Robotersteuerungsverfahren gemäß jeder Ausführungsform detailliert beschrieben.
  • Erste Ausführungsform.
  • 1 ist eine konzeptionelle Darstellung, die eine Konfiguration eines Robotersystems 100 in einer ersten Ausführungsform veranschaulicht. Wie in 1 veranschaulicht, beinhaltet das Robotersystem 100 einen Roboter 101, einen Endeffektor 102, einen Bandförderer 103 und einen externen Sensor 104. Der Roboter 101 ist ein Gelenkroboter mit einer Vielzahl von Achsen und einer Vielzahl von Armen. Der Endeffektor 102 ist an einer Spitze jedes Arms des Roboters 101 befestigt. Der Roboter 101 führt eine vorbestimmte Aufgabe durch, indem er den Endeffektor 102 von einem Startpunkt Ps zu einem Endpunkt Pe bewegt. Der Endpunkt Pe ist nicht fixiert und wird auf Grundlage der Position und Ausrichtung eines Zielobjekts 200 definiert, das auf dem Bandförderer 103 getragen wird. Der als Messeinheit dienende externe Sensor 104 erhält die Position und Ausrichtung des Zielobjekts 200 unmittelbar vor der eigentlichen Bewegung des Roboters 101.
  • Der Bandförderer 103 führt den Transport in konstanter Richtung mit einer Bewegungsgeschwindigkeit V [mm/s] aus. Es gibt keine Vorrichtung zum Sichern des Zielobjekts 200 am Bandförderer 103. Die Position und Ausrichtung des Zielobjekts 200 relativ zum Roboter 101 variiert daher jedes Mal.
  • 2 ist eine Draufsicht auf das Zielobjekt 200, die konzeptionell eine Drehverschiebung des Zielobjekts 200 in einer Ebene in der ersten Ausführungsform veranschaulicht. Darüber hinaus ist 3 eine konzeptionelle Darstellung, die eine Vielzahl von Kandidaten für eine Handannäherung in der ersten Ausführungsform veranschaulicht.
  • 2 veranschaulicht eine von oben gesehen Platzierungsfläche des Bandförderers 103. Es gibt keinen Mechanismus zum Sichern des Zielobjekts 200 am Bandförderer 103. Es tritt daher eine Drehverschiebung auf, bei der das Zielobjekt 200 um einen Normalvektor der Platzierungsfläche des Bandförderers 103, also einen Vektor in einer Richtung senkrecht zur Entnahmefläche, in Drehung versetzt wird. Diese Drehverschiebung wird als Drehung in der Ebene in Bezug auf den Bandförderer 103 bezeichnet und ein Drehwinkel desselben wird als Drehverschiebungswinkel bezeichnet.
  • Wenn davon ausgegangen wird, dass das Zielobjekt 200 ein amorphes Objekt ist, kann es schwierig sein, die Aufgabe zu erfüllen, es sei denn, eine Bahn, um den Endeffektor 102 näher an das Zielobjekt 200 heranzuführen, wird entsprechend der Form des Zielobjekts 200 entsprechend ausgewählt. In der vorliegenden Ausführungsform wird für den Endeffektor 102, wie in 3 veranschaulicht, eine Vielzahl von Handannäherungen, die Bahnen zur Annäherung des Endeffektors 102 an das Zielobjekt 200 sind, vorab vorbereitet und eine der Handannäherungen, die die Aufgabenbewältigung ermöglicht, wird anhand der Form des Zielobjekts 200 ausgewählt. In 3 sind zwei Handannäherungen mit einer Handannäherung HA und einer Handannäherung HB veranschaulicht.
  • In der ersten Ausführungsform wird ein Satz von drei Elementen, einschließlich einer Positionsverschiebung in einer dreidimensionalen Translationsrichtung, einer Drehung in der Ebene in Bezug auf den Bandförderer 103 und einer Handannäherung, die auf der Grundlage der Formen des Endeffektors 102 und des Zielobjekts 200 ausgewählt wird, als ein einziges Variationsmuster in der Position und Ausrichtung des Zielobjekts 200 in Bezug auf den Roboter 101 betrachtet.
  • 4 ist ein Blockdiagramm, das eine gesamte Konfiguration einer Robotersteuerungseinrichtung der ersten Ausführungsform veranschaulicht. Die Robotersteuerungseinrichtung beinhaltet eine Peripherievorrichtungsinformationserfassungseinheit 301, eine Aufgabeninformationserfassungseinheit 302, eine Zielsatzfestlegungseinheit 303, eine Bahnerzeugungseinheit 310, eine Einzelverzweigungspunktspeichereinheit 306, eine Sensorinformationserfassungseinheit 307, eine Einzelbahnerzeugungseinheit 308 und eine Robotersteuerungseinheit 309. Die Bahnerzeugungseinheit 310 beinhaltet eine Referenzbahnerzeugungseinheit 304 und eine Verzweigungspunktspezifikationseinheit 305. Die Einzelverzweigungspunktspeichereinheit 306 dient als Speichereinheit.
  • Die Peripherievorrichtungsinformationserfassungseinheit 301 erfasst Peripherievorrichtungsinformationen, die eine Peripherievorrichtung des Roboters 101 betreffen. Bei den Peripherievorrichtungsinformationen handelt es sich um die Bewegungsgeschwindigkeit V des Bandförderers 103. Die Aufgabeninformationserfassungseinheit 302 erfasst Aufgabeninformationen, die Informationen bezüglich einer Aufgabe zur Erzeugung einer Bahn sind. Die Aufgabeninformationen beinhalten zumindest den Typ des zu verwendenden Endeffektors 102, den Typ des Zielobjekts 200 und eine Zielbewegung für die Aufgabe. Die Zielbewegung für die Aufgabe beinhaltet den Griff, die Anordnung und dergleichen des Zielobjekts 200.
  • Die Zielsatzfestlegungseinheit 303 erfasst die Bewegungsgeschwindigkeit V des Bandförderers 103, wobei es sich um die Peripherievorrichtungsinformationen handelt, von der Peripherievorrichtungsinformationserfassungseinheit 301. Außerdem erfasst die Zielsatzfestlegungseinheit 303 Aufgabeninformationen von der Aufgabeninformationserfassungseinheit 302.
  • Die Zielsatzfestlegungseinheit 303 berechnet eine Kombination aus einem Zielsatz 201, einer Ausrichtung, in der das Zielobjekt 200 innerhalb des Zielsatzes 201 existieren kann, und einer Handannäherung unter Verwendung der Bewegungsgeschwindigkeit V des Bandförderers 103 und der Aufgabeninformationen. Der Zielsatz 201 ist ein Satz von Positionen, an denen das Zielobjekt 200 existieren kann.
  • 5 ist eine konzeptionelle Darstellung zum Beschreiben des Zielsatzes 201 in der ersten Ausführungsform. Es wird ein Verfahren zum Berechnen des Zielsatzes 201 in der vorliegenden Ausführungsform beschrieben. In der vorliegenden Ausführungsform wird der in 5 veranschaulichte Zielsatz 201 auf Grundlage der Bewegungsgeschwindigkeit V des Bandförderers 103 berechnet. Wenn T [s] als obere Grenze der für die Bewegung des Roboters 101 erforderlichen Zeit (Bewegungszeit) in Bezug auf das Zielobjekt 200 definiert ist, kann die Länge des Zielsatzes 201 in einer Förderbewegungsrichtung auf TxV eingestellt werden. Weiterhin kann die Länge des Zielsatzes 201 in einer zur Förderbewegungsrichtung orthogonalen Richtung beispielsweise auf eine Breite W [mm] des Bandförderers 103 eingestellt werden. Die Bewegungszeit des Roboters 101 gegenüber dem Zielobjekt 200 ist beispielsweise die Zeit, die der Roboter 101 benötigt, um sich vom Startpunkt Ps zum Endpunkt Pe zu bewegen und die vorbestimmte Aufgabe vollständig auszuführen. In der vorliegenden Ausführungsform wird eine Variation in einer Förderhöhenrichtung nicht berücksichtigt, sondern der Zielsatz 201 kann unter Berücksichtigung einer Variation in Förderhöhenrichtung dreidimensional erzeugt werden.
  • Als Grenze eines von einem Benutzer des Robotersystems 100 angenommenen Arbeitsbereichs kann der Bereich des Zielsatzes 201 vom Benutzer unabhängig von der Bewegungsgeschwindigkeit V des Bandförderers 103 direkt spezifiziert werden.
  • Als Nächstes wird ein Verfahren zum Berechnen eines Variationsmusters des in den Zielsatz 201 einzubeziehenden Zielobjekts 200 beschrieben. 6 eine Darstellung zum Beschreiben einer Positionsdefinition im Zielsatz 201 in der ersten Ausführungsform. 7 ist eine Darstellung zum Beschreiben einer Vielzahl von Mustern unterschiedlicher Drehverschiebungswinkel des Zielobjekts 200 in der ersten Ausführungsform. 8 ist eine Darstellung zum Beschreiben einer Vielzahl von Mustern unterschiedlicher Handannäherungen zum Zielobjekt 200 in der ersten Ausführungsform.
  • Wie in 6 veranschaulicht, ist ein Raum im Zielsatz 201 in eine Vielzahl von Rasterquadraten beliebiger Größe unterteilt, und ein Rasterpunkt G ist als eine Mittelposition jedes der Vielzahl von unterteilten Rasterquadraten definiert. Jeder Rasterpunkt G weist Positionsinformationen auf, die seine eigene Position angeben. Der Rasterpunkt G ist zur Definition der Position einer translatorischen Verschiebung des Zielobjekts 200 spezifiziert. In 6 wurde der Raum innerhalb des Zielsatzes 201 in N1 (=25) Rasterquadrate in einer Matrix unterteilt und weist 25 Rasterpunkte G auf. 7 zeigt N2 (=3) Muster unterschiedlicher Drehverschiebungswinkel der Drehung des Zielobjekts 200 in der Ebene. 8 veranschaulicht Bahnen von N3 (=3) verschiedenen Handannäherungen HA, HB und HC.
  • Für jeden Rasterpunkt G gibt es N2 denkbare Variationsmuster unterschiedlicher Drehverschiebungswinkel der Drehung des Zielobjekts 200 in der Ebene und N3 denkbare Variationsmuster unterschiedlicher Handansätze. Daher gibt es N2×N3 Variationsmuster am Maximum für jeden einzelnen Rasterpunkt G. Für N2 und N3 wird im Voraus eine Zahl größer oder gleich 1 festgelegt. Der Intervallbetrag des Drehverschiebungswinkels kann frei bestimmt werden. Insgesamt werden daher in dem Zielsatz 201 N1×N2×N3 Variationsmuster für das Zielobjekt 200 festgelegt, und die Bahnerzeugungseinheit 310 berechnet für jedes der N1×N2×N3 Variationsmuster einen Verzweigungspunkt.
  • Als Nächstes wird die in 4 veranschaulichte Bahnerzeugungseinheit 310 beschrieben. Die Bahnerzeugungseinheit 310 beinhaltet die Referenzbahnerzeugungseinheit 304 und die Verzweigungspunktspezifikationseinheit 305.
  • 9 ist ein Ablaufdiagramm, das den Betrieb einer Bahnerzeugungseinheit 310 zum Hinzufügen einer Referenzbahn und eines Verzweigungspunkts zu der Einzelverzweigungspunktspeichereinheit 306 auf der Grundlage des Zielsatzes 201 in der ersten Ausführungsform veranschaulicht. 10 ist eine konzeptionelle Darstellung, die ein Beispiel für das Auswählen einer Position des Zielobjekts 200 zeigt, die zur Erzeugung einer Referenzbahn in der ersten Ausführungsform zu verwenden ist. 11 ist eine konzeptionelle Darstellung, die ein weiteres Beispiel für das Auswählen einer Position des Zielobjekts 200 zeigt, die zur Erzeugung einer Referenzbahn in der ersten Ausführungsform zu verwenden ist. 12 ist eine konzeptionelle Darstellung, die noch ein weiteres Beispiel für das Auswählen einer Position des Zielobjekts 200 zeigt, die zur Erzeugung einer Referenzbahn in der ersten Ausführungsform zu verwenden ist.
  • Die Referenzbahnerzeugungseinheit 304 liest zunächst den von der Zielsatzfestlegungseinheit 303 berechneten Zielsatz 201 und alle in dem Zielsatz 201 beinhalteten Variationsmuster des Zielobjekts 200 aus (S101).
  • Als Nächstes wählt die Referenzbahnerzeugungseinheit 304 unter Verwendung des ausgewählten Variationsmusters ein Variationsmuster, das einige der Rasterpunkte G aufweist, aus der Vielzahl von Variationsmustern aus und erzeugt eine Referenzbahn mit einem Bewertungswert, der in einen ersten Bereich fällt (S102). Das heißt, die Referenzbahnerzeugungseinheit 304 legt den vorbestimmten Startpunkt Ps als Bewegungsstartpunkt fest, legt mindestens ein spezifisches Variationsmuster im Zielsatz 201 als Endpunkt Pe fest und erzeugt unter Verwendung eines beliebigen Bahnerzeugungsverfahrens eine Referenzbahn mit einem Bewertungswert, der in den ersten Bereich fällt.
  • In der vorliegenden Ausführungsform wird die oben beschriebene Bewegungszeit als Bewertungswert ausgewählt. Als erster Bereich wird eine Bewegungszeit festgelegt, die kleiner oder gleich T1 [s] ist. Daher wird eine Referenzbahn erzeugt, sodass die Bewegungszeit gleich oder kleiner als T1 ist. Zu den Beispielen für einen Wert, der als Bewertungswert verwendet werden kann, gehören die geschätzte Lebensdauer des Roboters 101 unter der Annahme, dass der Roboter 101 die Bewegung in Bezug auf das Zielobjekt 200 wiederholt, und die vom Roboter 101 zu verbrauchende Leistung, wenn die Bewegung vom Roboter 101 in Bezug auf das Zielobjekt 200 ausgeführt wird.
  • In S102 kann ein Variationsmuster frei ausgewählt werden. Mittlerweile ist es denkbar, dass ein Variationsmuster mit, als Positionsinformationen, dem Rasterpunkt G eines Rasterquadrates an einer Mittelposition des Zielsatzes 201 ausgewählt wird, wie dies beispielsweise in 10 veranschaulicht ist. Wenn sich der Zielsatz 201 zudem über einen weiten Bereich erstreckt, können das Variationsmuster der Rasterpunkte G des Rasterquadrates in der Mitte des Zielsatzes 201 und Variationsmuster mit, als Positionsinformationen, den vier Ecken des Zielsatzes 201 entsprechenden Rasterpunkten G wie in 11 veranschaulicht ausgewählt werden. Da eine Vielzahl von Rasterpunkten G ausgewählt sind, wird in dem in 11 veranschaulichten Verfahren eine Vielzahl von Referenzbahnen erzeugt. Beispielsweise wird für den Drehverschiebungswinkel eines der N2 Variationsmuster vorab ausgewählt.
  • Weiterhin kann in S102 ein Variationsmuster ausgewählt werden, das, als Positionsinformationen, einen Rasterpunkt aufweist, der in einem Rasterquadrat G1 mit einer höchsten Auftrittshäufigkeit während der tatsächlichen Bewegung im Zielsatz 201 beinhaltet ist, wie in 12 veranschaulicht. Das Rasterquadrat G1 ist durch eine dicke Linie angedeutet. Wenn durch dieses Auswahlverfahren ein Variationsmuster ausgewählt wird, ist es möglich, für ein Muster mit der größten Wahrscheinlichkeit während der tatsächlichen Bewegung eine Bahn mit einem Bewertungswert zu erzeugen, der in den ersten Bereich fällt. Dadurch verbessert sich die Produktivität.
  • Als Bahnerzeugungsverfahren zum Erzeugen einer Referenzbahn kann eine bekannte Technik verwendet werden. Beispiele für eine solche Technik beinhalten ein Random-Sampling-Verfahren wie Rapidly Exploring Random Trees (RRT), ein Bahnparameteroptimierungsverfahren wie Covariant Hamiltonian Optimization for Motion Planning (CHOMP), eine grafische Lösung und ein Verstärkungslernverfahren. Darüber hinaus können diese Verfahren in Kombination verwendet werden. Zusätzlich kann eine Bahn verwendet werden, die von einem Systembenutzer manuell trainiert wird.
  • In der vorliegenden Ausführungsform werden eine Winkelabhängigkeit, eine Winkelgeschwindigkeitsabhängigkeit und eine Winkelbeschleunigungsabhängigkeit jedes Achsmotors des Roboters 101 als Abhängigkeiten bei der Erzeugung einer Referenzbahn berücksichtigt. Außerdem wird davon ausgegangen, dass der Roboter 101 und ein im Robotersystem 100 beinhaltetes Hindernis nicht miteinander kollidieren. Daher ist die erzeugte Referenzbahn eine Bahn, die es ermöglicht, Störungen mit einem Hindernis in einem Arbeitsbereich zu vermeiden.
  • Als Nächstes wird für jedes von der Zielsatzfestlegungseinheit 303 berechnete Variationsmuster geprüft, ob ein Verzweigungspunkt aufgezeichnet wurde (S103). Wenn Verzweigungspunkte für alle Variationsmuster aufgezeichnet wurden (S103: Ja), wird der Prozess beendet. Andernfalls (S103: Nein) geht der Prozess zu S104 über.
  • Die Verzweigungspunktspezifikationseinheit 305 wählt eines der Muster aus, für das noch kein Verzweigungspunkt unter allen Variationsmustern aufgezeichnet wurde (S104).
  • Als Nächstes wählt die Verzweigungspunktspezifikationseinheit 305 eine der Referenzbahnen aus (S105). In einem Fall, in dem es nur eine einzige Referenzbahn gibt, wird die Bahn ausgewählt. In der vorliegenden Ausführungsform wird bei einer Vielzahl von Referenzbahnen eine Referenzbahn mit dem Rasterpunkt G, der der Position eines als Ziel ausgewählten Variationsmusters am nächsten liegende Endpunkt Pe ist, wie in 11 veranschaulicht ausgewählt. Zum Beispiel ist in 11, wenn ein linkes Rasterquadrat, das das zweite von oben ist, als Variationsmuster ausgewählt wird, wird eine Referenzbahn mit einem Rasterquadrat an der oberen linken Ecke als Endpunkt Pe ausgewählt. Wenn eine Vielzahl von Referenzbahnen im gleichen Abstand von der als Ziel ausgewählten Position des Variationsmusters vorhanden ist, wird eine der Vielzahl von Referenzbahnen ausgewählt. Eine Regel, wie eine der Vielzahl von Referenzbahnen auszuwählen ist, wird vorab festgelegt.
  • 13 ist eine konzeptionelle Darstellung, die eine Beziehung zwischen einer Referenzbahn 202 und einem Verzweigungspunkt 204 in der ersten Ausführungsform veranschaulicht. Es wird eine Beziehung zwischen dem Verzweigungspunkt 204 und der Referenzbahn 202 beschrieben. Eine andere Bewegungsbahn des Roboters 101 zum Erreichen des Endpunkts Pe als die Referenzbahn 202 im Zielsatz 201 wird als Einzelbahn 203 bezeichnet. Die Einzelbahn 203 teilt sich einen Teil der Bahn mit der Referenzbahn 202. Die Einzelbahn 203 zweigt von der Referenzbahn 202 ab und dient als von der Referenzbahn 202 getrennte Bahn. Eine Startposition eines als separate Bahn dienenden Abschnitts der Einzelbahn 203 wird als Verzweigungspunkt 204 bezeichnet. Das heißt, aus Punkten auf der Referenzbahn 202 wird für eine einzige Einzelbahn 203 ein einziger Verzweigungspunkt 204 ausgewählt. 13 veranschaulicht ein Hindernis 205.
  • 14 ist ein Ablaufdiagramm, das eine Vorgehensweise zum Berechnen des Verzweigungspunkts 204 in der ersten Ausführungsform veranschaulicht und Details der in S106 von 9 durchgeführten Verarbeitung veranschaulicht. In S106 sucht die Bahnerzeugungseinheit 310 nach einem Kandidaten für einen Verzweigungspunkt, der es ermöglicht, dass ein Bewertungswert in einen zweiten Bereich fällt. 15 ist eine konzeptionelle Darstellung, die eine Beziehung zwischen der Referenzbahn 202 und den Hindernissen 205 in der ersten Ausführungsform veranschaulicht. 16 ist eine konzeptuelle Darstellung, die sich auf einen Auswahlbereich des Verzweigungspunktes 204 in der ersten Ausführungsform bezieht.
  • Es wird zunächst ein Prozess beschrieben, bei dem der Verzweigungspunkt 204 durch die Verzweigungspunktspezifikationseinheit 305 spezifiziert wird. Die Verzweigungspunktspezifikationseinheit 305 entnimmt aus der Referenzbahn 202 eine Vielzahl von als Kandidaten für den Verzweigungspunkt 204 dienende Bewegungspunkte (S201). Ein als Kandidat für den Verzweigungspunkt 204 dienender Bewegungspunkt wird durch eine Kombination von Zustandsgrößen dargestellt, die die Position und Ausrichtung des am Roboter 101 angebrachten Endeffektors 102 eindeutig bestimmen. In der vorliegenden Ausführungsform wird ein als Kandidat für den Verzweigungspunkt 204 dienender Bewegungspunkt durch eine Kombination von jeweiligen Winkeln der Achsmotoren des Roboters 101 dargestellt. Zu diesem Zeitpunkt wird die Referenzbahn 202 als ein Satz von Daten über Kombinationen der jeweiligen Winkel der Achsmotoren des Roboters 101 mit Zeitmarken gebildet, die die Zeit so definiert darstellen, dass der Startpunkt Ps der Zeit 0 entspricht.
  • Als Nächstes wird ein Abschnitt der Referenzbahn 202 beschrieben, der einen Bewegungspunkt beinhaltet, der als Kandidat für den Verzweigungspunkt 204 in der vorliegenden Ausführungsform dient. Wie oben beschrieben, ist die Referenzbahn 202 eine Bahn, die es ermöglicht, eine Störung mit dem Hindernis 205 im Arbeitsraum zu vermeiden. Wird der Verzweigungspunkt 204 an einer frühen Stelle der Referenzbahn 202 vorgegeben, um einen verbleibenden Teil der Einzelbahn 203 bis zum Endpunkt Pe zu erzeugen, erhöht sich die Anzahl der zu berücksichtigenden Hindernisse 205. Dadurch braucht es Zeit, die Einzelbahn 203 zu erzeugen. Daher ist es wünschenswert, dass die Einzelbahn 203 an dem Verzweigungspunkt 204 an einer Stelle abzweigt, an der die Hindernisse 205 weitestgehend vermieden sind.
  • Wie in 15 veranschaulicht, ist beispielsweise ein hypothetisches Hindernis 206 so festgelegt, dass um einen Außenumfang des im Arbeitsraum vorhandenen Hindernisses 205 ein Rand mit einer bestimmten Breite L verbleibt. Die Breite L kann frei spezifiziert werden. Wenn die Referenzbahn 202 vom Endpunkt Pe zum Startpunkt Ps zurückverfolgt wird, kollidiert die Referenzbahn 202 an einem Punkt Px1 mit dem hypothetischen Hindernis 206. Ein Abschnitt, in dem ein Kandidat für den Verzweigungspunkt 204 existiert, ist definiert als ein Abschnitt C1 zwischen dem Endpunkt Pe und dem Punkt Px1. Das heißt, der Verzweigungspunkt 204 wird aus einem Abschnitt der Referenzbahn 202 ausgewählt, in dem das hypothetische Hindernis 206 weder den Endeffektor 102 noch den Roboterhauptkörper stört. Der Roboterhauptkörper bezieht sich auf einen anderen Teil des Roboters 101 als den Endeffektor 102.
  • Darüber hinaus wird davon ausgegangen, dass die Position des ausgewählten Variationsmusters näher am Startpunkt Ps als am Endpunkt Pe der Referenzbahn 202 liegt. Wird in einem solchen Fall ein Punkt in der Nähe des Endpunkts Pe der Referenzbahn 202 als Verzweigungspunkt 204 bezeichnet, so kann die Einzelbahn 203 von dem Verzweigungspunkt 204 in die Position des ausgewählten Variationsmusters zurückkehren. Dadurch kann sich der Bewertungswert verschlechtern. Auf der Referenzbahn 202 wird daher ein Abschnitt C2 so festgelegt, dass der Abschnitt C2 einem Bereich d zwischen dem Endpunkt Pe der Referenzbahn 202 und einer Position Px2 des ausgewählten Variationsmusters entspricht, wie in 16 veranschaulicht. Somit ist ein im Abschnitt C2 beinhalteter Bewegungspunkt als Kandidat für den Verzweigungspunkt 204 ausgeschlossen.
  • Anschließend überprüft die Verzweigungspunktspezifikationseinheit 305, ob für alle Kandidaten für den Verzweigungspunkt 204 ein Bewertungswert der Einzelbahn 203 berechnet wurde (S202). Wenn nicht für alle Kandidaten für den Verzweigungspunkt 204 ein Bewertungswert der Einzelbahn 203 berechnet wurde (S202: Nein), wählt die Verzweigungspunktspezifikationseinheit 305 einen der Vielzahl von Kandidaten für den in S201 entnommenen Verzweigungspunkt 204 aus (S203). Die Verzweigungspunktspezifikationseinheit 305 erzeugt dann die Einzelbahn 203 aus dem ausgewählten der Kandidaten für den Verzweigungspunkt 204 bis zur Position des einen der Variationsmuster, ausgewählt in S104 (S204). Dabei verwendet die Verzweigungspunktspezifikationseinheit 305 bei der Erzeugung der Einzelbahn 203 dasselbe Verfahren wie ein Verfahren, mit dem die Einzelbahnerzeugungseinheit 308 die Einzelbahn 203 wie nachfolgend beschrieben erzeugt. Die Verzweigungspunktspezifikationseinheit 305 berechnet einen Bewertungswert der in S204 erzeugten Einzelbahn 203 (S205).
  • 17 ist eine konzeptuelle Darstellung, die ein Verfahren veranschaulicht, mit dem eine Einzelbahnerzeugungseinheit 308 eine Bahn in der ersten Ausführungsform erzeugt. Die Verzweigungspunktspezifikationseinheit 305 erzeugt auch die Einzelbahn 203 durch die gleiche Verarbeitung wie in 17 veranschaulicht. Im Folgenden wird ein Verfahren zum Erzeugen der Einzelbahn 203 beschrieben. In der vorliegenden Ausführungsform wird ein gemeinsames Interpolationsverfahren verwendet, um eine vom Verzweigungspunkt 204 auszufahrende Bahn zu erzeugen. Das gemeinsame Interpolationsverfahren ist eine der ersten Berechnungen zum Erzeugen der Einzelbahn 203.
  • 17 ist eine konzeptionelle Darstellung, die einen Fall veranschaulicht, bei dem der Roboter 101 zwei Achsen aufweist, dasselbe Verfahren aber auch auf einen Fall angewendet werden kann, bei dem der Roboter 101 zwei oder mehr Achsen aufweist. 17 veranschaulicht ein Zeitdiagramm der Sollwinkelgeschwindigkeit einer Achse 1 und ein Zeitdiagramm der Sollwinkelgeschwindigkeit einer Achse 2. In 17 stellt das Symbol „kt“ die Beschleunigungszeit, das Symbol „gt“ die Verzögerungszeit und das Symbol „tt“ die Konstantgeschwindigkeitszeit dar.
  • Zum einen wählt die Einzelbahnerzeugungseinheit 308 eine Achse aus, die einen Winkeländerungsbetrag vom Verzweigungspunkt 204 zur Position des ausgewählten der Variationsmuster, entsprechend dem Endpunkt Pe, in Bezug auf eine maximale Geschwindigkeit maximiert, die von jedem Achsmotor des Roboters 101 geliefert werden kann. In der vorliegenden Ausführungsform wird die Achse mit dem größten Winkeländerungsbetrag als repräsentative Achse j' bezeichnet. Da der Winkeländerungsbetrag der Achse 1 größer ist als der Winkeländerungsbetrag der Achse 2, dient die Achse 1 gemäß 17 als repräsentative Achse j'. Als repräsentative Achse j' wird aus einer Vielzahl von Achsen j (j = 1,2,...) eine Achse j ausgewählt, die der Formel (1) entspricht. Dabei bezeichnet das Symbol „θsj“ den Winkel der Achse j am Verzweigungspunkt 204, bezeichnet das Symbol „θGj“ den Winkel der Achse j an der Position des ausgewählten der Variationsmuster, entsprechend dem Endpunkt Pe, und bezeichnet das Symbol „v_maxj“ die maximale Geschwindigkeit, die von einem Motor der Achse j erreicht werden kann. Die rechte Seite der Formel (1) gibt an, wie der Winkeländerungsbetrag der Achse j in Bezug auf die Maximalgeschwindigkeit v_maxj ist, die durch den Motor der Achse j erreicht werden kann.
    Formel 1: j = max j | ( θ Gj θ sj ) / v _ max j |
    Figure DE112021007395T5_0001
  • Eine Maximalgeschwindigkeit vj'max auf einer Bahn der Achse j' (j'=1), die die repräsentative Achse ist, wird so festgelegt, dass vj'max=v_maxj'. Zu diesem Zeitpunkt ist eine während des Betriebs des Motors zu erreichende Maximalgeschwindigkeit vjmax des Motors der Achse j, die nicht die repräsentative Achse j' ist, vorübergehend wie in Formel (2) definiert. In Formel (2) repräsentiert (θGjsj) den Winkeländerungsbetrag der Achse j, die nicht die repräsentative Achse j' ist, und (θGj'sj') den Winkeländerungsbetrag der repräsentativen Achse j'.
    Formel 2: vj max = ( θ Gj θ sj ) ( θ Gj θ sj ) v _ max j
    Figure DE112021007395T5_0002
  • Die Beschleunigungszeit kt und die Verzögerungszeit gt werden anhand der vorübergehend definierten Maximalgeschwindigkeit vjmax jeder im Betrieb befindlichen Achse, einer Winkelgeschwindigkeit vjs jeder Achse am Verzweigungspunkt 204, einer Winkelgeschwindigkeit vje jeder Achse am Endpunkt Pe und der Geschwindigkeitsbeschränkung und Beschleunigungsbeschränkung des Roboters 101 bestimmt. Bei der Bestimmung der Beschleunigungszeit kt und der Verzögerungszeit gt wird die Konstantgeschwindigkeitszeit tt als Ergebnis der nachstehenden Lösungsformel (3) bezüglich der repräsentativen Achse j' in Bezug auf die Konstantgeschwindigkeitszeit tt bestimmt. Aus Gründen der Übersichtlichkeit wird in Formel (3) das Symbol’ weggelassen.
    Formel 3: ( θ Gj θ sj ) = 1 2 kt ( vj max + vj s ) + 1 2 gt ( vj max + vj e ) + vj max tt
    Figure DE112021007395T5_0003
  • Die vorübergehend definierte Maximalgeschwindigkeit vjmax der Achse j, die nicht die repräsentative Achse j' ist, wird als Ergebnis der Lösungsformel (3) in Bezug auf vjmax bestimmt. Durch die obige Berechnung werden für alle im Roboter 101 beinhalteten Achsen Winkelgeschwindigkeitsbefehlswerte erhalten, die nach dem Abzweigen der Bahn am Verzweigungspunkt 204 anzuwenden sind. Es ist daher möglich, Kombinationen aus einer Zeiteinheit und einem Bewegungspunkt nach dem Verzweigungspunkt 204 durch Integrieren des Winkelgeschwindigkeitsbefehlswerts in Bezug auf die Zeit zu berechnen.
  • Auf diese Weise erzeugt die Verzweigungspunktspezifikationseinheit 305 die Einzelbahn 203, die eine Bahn von dem Verzweigungspunkt 204, der der ausgewählte aus der Vielzahl von Kandidaten für den Verzweigungspunkt 204 ist, zu der Position des einen der Variationsmuster, ausgewählt in S104, ist (S204), und berechnet dann einen Bewertungswert der erzeugten Einzelbahn (S205). Anschließend prüft die Verzweigungspunktspezifikationseinheit 305, ob der berechnete Bewertungswert innerhalb des zweiten Bereichs liegt (S206). In der vorliegenden Ausführungsform wird als zweiter Bereich eine Bewegungszeit gleich oder kleiner T2 [s] so festgelegt, dass T2>T1. Als zweiter Bereich wird ein Bereich festgelegt, der breiter ist als der erste Bereich.
  • Wenn der Bewertungswert in den zweiten Bereich fällt (S206: Ja), bezeichnet die Verzweigungspunktspezifikationseinheit 305 den ausgewählten Verzweigungspunkt als richtigen Verzweigungspunkt (S108). Fällt der Bewertungswert nicht in den zweiten Bereich (S206: Nein), kehrt der Vorgang zu S202 zurück. Wenn der Vorgang zu S202 zurückkehrt, wird ein anderer Kandidat aus der Vielzahl von Kandidaten für den in S201 entnommenen Verzweigungspunkt 204 ausgewählt. Die Verzweigungspunktspezifikationseinheit 305 prüft dann, ob ein Bewertungswert der Einzelbahn 203 des ausgewählten anderen Kandidaten in den zweiten Bereich fällt, indem die Verarbeitung von S202 bis S206 durchgeführt wird. Auf diese Weise erhält die Verzweigungspunktspezifikationseinheit 305 den Verzweigungspunkt 204, der es ermöglicht, dass der Bewertungswert der Einzelbahn 203 in den zweiten Bereich fällt, indem die Verarbeitung von S202 bis S206 wiederholt wird.
  • In einem Fall, in dem die Verzweigungspunktspezifikationseinheit 305 nach Wiederholung der Verarbeitung von S202 bis S206 in S202 eine Bestimmung von „Ja“ vornimmt, erfüllt ferner keiner der Vielzahl von Kandidaten für den in S201 entnommenen Verzweigungspunkt 204 die Bedingung, dass der Bewertungswert nicht außerhalb des zweiten Bereichs liegt. In einem solchen Fall geht der Vorgang zu S107 über. In S107 wird die Referenzbahn 202, die nicht die in S102 erzeugte Referenzbahn 202 ist, neu erzeugt und der Referenzbahn 202 hinzugefügt. Insbesondere wird ein von dem in S104 ausgewählten Variationsmuster verschiedenes Variationsmuster ausgewählt und die Referenzbahn 202 mit einem Bewertungswert, der in den ersten Bereich fällt, unter Verwendung des neu ausgewählten Variationsmusters erzeugt (S107). Anschließend bestimmt die Verzweigungspunktspezifikationseinheit 305 den Verzweigungspunkt 204, der ermöglicht, dass der Bewertungswert in den zweiten Bereich fällt, indem die Verarbeitung von S202 bis S206 unter Verwendung der neu erzeugten Referenzbahn 202 wiederholt wird.
  • Wenn der Verzweigungspunkt 204 in S108 spezifiziert ist, setzt die Verzweigungspunktspezifikationseinheit 305 das in S104 ausgewählte Variationsmuster, die in S105 ausgewählte Referenzbahn 202 oder die in S107 hinzugefügte Referenzbahn 202 und den in S108 spezifizierten Verzweigungspunkt 204 als einen Datensatz zusammen und zeichnet den Datensatz in der Einzelverzweigungspunktspeichereinheit 306 auf (S109). Das heißt, die Verzweigungspunktspezifikationseinheit 305 zeichnet in der Einzelverzweigungspunktspeichereinheit 306 Bahnsatzdaten auf, die dem Datensatz bezüglich des Variationsmusters, der Referenzbahn 202 und des Verzweigungspunkts 204 entsprechen.
  • Nach Abschluss der Aufzeichnung der Bahnsatzdaten in der Einzelverzweigungspunktspeichereinheit 306 geht der Vorgang zu S103 über. In S103 bestimmt die Verzweigungspunktspezifikationseinheit 305, ob die Verzweigungspunkte 204 für alle von der Zielsatzfestlegungseinheit 303 berechneten Variationsmuster aufgezeichnet wurden. In einem Fall, in dem ein Variationsmuster verbleibt, für das der Verzweigungspunkt 204 nicht aufgezeichnet wurde, führt die Bahnerzeugungseinheit 310 wiederholt die Verarbeitung von S103 bis S109 und die Verarbeitung von S201 bis S206 durch. Dadurch zeichnet die Bahnerzeugungseinheit 310 die Verzweigungspunkte 204 für alle Variationsmuster in der Einzelverzweigungspunktspeichereinheit 306 auf.
  • 18 ist ein Ablaufdiagramm, das einen Verarbeitungsvorgang der Einzelbahnerzeugungseinheit 308 und der Robotersteuerungseinheit 309 in der ersten Ausführungsform veranschaulicht. Während der Roboter 101 tatsächlich arbeitet, erzeugt die Robotersteuerungseinheit 309 einen Bewegungsbefehl für den Roboter 101 unter Verwendung von Informationen, die in der einzelnen Verzweigungspunktspeichereinheit 306 aufgezeichnet sind.
  • Die Sensorinformationserfassungseinheit 307 misst zunächst unter Verwendung des externen Sensors 104 die tatsächliche Position, Ausrichtung und Form des Zielobjekts 200 (S301). Außerdem erfasst die Einzelbahnerzeugungseinheit 308 den Typ des Endeffektors 102 und den Typ des Zielobjekts 200 von der Aufgabeninformationserfassungseinheit 302 und die Bewegungsgeschwindigkeit V des Bandförderers 103 von der Peripherievorrichtungsinformationserfassungseinheit 301. Die Einzelbahnerzeugungseinheit 308 wählt eine Handannäherung anhand der Form des Zielobjekts 200 und der Aufgabeninformationen aus.
  • Als Nächstes liest die Einzelbahnerzeugungseinheit 308 von der Einzelverzweigungspunktspeichereinheit 306 Bahnsatzdaten einschließlich eines Variationsmusters, das der tatsächlichen Position und Ausrichtung des Zielobjekts 200 am nächsten ist. Anschließend nimmt die Einzelbahnerzeugungseinheit 308 die Referenzbahn 202 und den in den gelesenen Bahnsatzdaten beinhalteten Verzweigungspunkt 204 heraus (S302).
  • Als Nächstes legt die Einzelbahnerzeugungseinheit 308 als Endpunkt Pe' die tatsächliche Position und Ausrichtung des in S301 erfassten Zielobjekts 200 fest und erzeugt eine Einzelbahn vom herausgenommenen Verzweigungspunkt 204 bis zum Endpunkt Pe' (S303). Das unter Bezugnahme auf 17 beschriebene Verfahren wird bei der Erzeugung der Einzelbahn verwendet. Die Einzelbahnerzeugungseinheit 308 verwendet die in S302 herausgenommene Referenzbahn 202 als solche als Bahn vom Startpunkt Ps zum in S302 herausgenommenen Verzweigungspunkt 204. Die Bahn vom Startpunkt Ps zum Verzweigungspunkt 204 entspricht einer ersten Bewegungsbahn in den Ansprüchen, und die Bahn vom Verzweigungspunkt 204 zum Endpunkt Pe' entspricht einer zweiten Bewegungsbahn in den Ansprüchen.
  • Schließlich übermittelt die Einzelbahnerzeugungseinheit 308 an die Robotersteuerungseinheit 309 einen Bewegungsbefehl, der die erzeugte Einzelbahn vom Verzweigungspunkt 204 zum Endpunkt Pe' und die Referenzbahn 202 entsprechend dem Abschnitt vom Startpunkt Ps zum Verzweigungspunkt 204 (S304). Die Robotersteuerungseinheit 309 treibt den Roboter 101 gemäß dem empfangenen Bewegungsbefehl an. Dadurch bewegt der Roboter 101 den Endeffektor 102 vom Startpunkt Ps zum Endpunkt Pe und führt eine vorbestimmte Aufgabe für das Zielobjekt 200 aus.
  • Wie oben beschrieben, wird gemäß der ersten Ausführungsform durch Verwendung der Referenzbahn 202 eine Bewegungsbahn vom Startpunkt Ps zum Verzweigungspunkt 204 erzeugt, die eine Bewegungsbahn ist, die eine Vermeidung von Störungen mit dem Hindernis 205 ermöglicht und die Bedingung erfüllt, dass der Bewertungswert als solcher in den ersten Bereich fällt. Zusätzlich wird eine Bewegungsbahn vom Verzweigungspunkt zum Zielobjekt 200 entsprechend der tatsächlichen Position und Ausrichtung des Zielobjekts 200 erzeugt. Somit ist es auch bei einer Änderung der Position und Ausrichtung des Zielobjektes 200 möglich, die Zeit für die Berechnung einer Bahn mit einem Bewertungswert, der in einen bestimmten Bereich fällt, zu verkürzen. Dadurch ist es möglich, die Produktivität zu verbessern.
  • Gemäß der ersten Ausführungsform wird ferner der Verzweigungspunkt 204 so ausgewählt, dass der Bewertungswert bei der Erzeugung der Einzelbahn 203 in einen bestimmten Bereich fällt. Somit kann die erzeugte Bahn eine konstante Produktivität gewährleisten. Außerdem werden gemäß der ersten Ausführungsform unter den in der Referenzbahn 202 beinhalteten Bewegungspunkten Kandidaten für den Verzweigungspunkt 204 aus den Bewegungspunkten ausgewählt, die frei von Störungen mit dem hypothetischen Hindernis 206 sind und derart festgelegt sind, dass ein Rand mit der bestimmten Breite L um den Außenumfang des Hindernisses 205, das um die Bahn angeordnet ist, verbleibt. Dadurch wird die Anzahl der zu berücksichtigenden Hindernisse 205 zum Zeitpunkt der Erzeugung der Einzelbahn 203 reduziert. Dadurch kann die Zeit, die zur Erzeugung der Einzelbahn 203 benötigt wird, verkürzt werden.
  • Da darüber hinaus gemäß der ersten Ausführungsform eine denkbare Variation bezüglich des Zielobjekts 200 eine Differenz zwischen Handannäherungen beinhaltet, ist es möglich, die Aufgabe gemäß der Variation bezüglich des Zielobjekts 200 einschließlich der Handhabung des Endeffektors 102 effizient zu erfüllen. Weiterhin kann gemäß der ersten Ausführungsform in einem Fall, in dem Referenzbahn 202 keinen Verzweigungspunkt 204 beinhaltet, der es ermöglicht, dass der Bewertungswert der Einzelbahn 203 in den spezifizierten Bereich fällt, durch erneutes Erzeugen und Addieren der Referenzbahn 202 sichergestellt werden, dass für alle Variationsmuster in dem Zielsatz 201 eine Bewegungsbahn erzeugt wird.
  • Zweite Ausführungsform.
  • In der ersten Ausführungsform werden die Referenzbahn 202 und der Verzweigungspunkt 204 für alle in dem Zielsatz 201 beinhalteten Variationsmuster des Zielobjekts 200 separat festgelegt. Demgegenüber werden für alle in dem Zielsatz 201 beinhalteten Variationsmuster in einer zweiten Ausführungsform eine einzige Referenzbahn 202 und ein einziger Verzweigungspunkt 204 festgelegt. Das heißt, die einzige Referenzbahn 202 und der einzige Verzweigungspunkt 204 sind allen Variationsmustern in der zweiten Ausführungsform gemeinsam.
  • 19 ist ein Ablaufdiagramm, das einen Arbeitsvorgang zum Erzeugen einer Einzelbahn 203 in einer zweiten Ausführungsform veranschaulicht. 20 ist eine konzeptionelle Darstellung, die die Referenzbahn 202 und die Einzelbahn 203 in der zweiten Ausführungsform veranschaulicht. In der zweiten Ausführungsform wird das gleiche Robotersystem 100 wie das der ersten Ausführungsform verwendet. Außerdem führen auch die Zielsatzfestlegungseinheit 303 und die Referenzbahnerzeugungseinheit 304 die gleiche Verarbeitung wie in der ersten Ausführungsform durch.
  • Wie in 20 veranschaulicht, sind in der zweiten Ausführungsform die einzige Referenzbahn 202 und der einzige Verzweigungspunkt 204 für alle Variationsmuster des Zielobjekts 200 bereitgestellt, die in dem Zielsatz 201 beinhaltet sind. Daher wird in der zweiten Ausführungsform die Referenzbahn 202 als solche für einen Abschnitt vom Startpunkt Ps bis zum Verzweigungspunkt 204 verwendet, und eine Einzelbahn vom Verzweigungspunkt 204 bis zum tatsächlichen Endpunkt Pe wird gemäß der Position und Ausrichtung des tatsächlichen Endpunkts Pe für einen Abschnitt vom Verzweigungspunkt 204 bis zum eigentlichen Endpunkt Pe erzeugt. Wenn der tatsächliche Endpunkt Pe beispielsweise eine obere linke Ecke ist, wird eine Einzelbahn 203-C erzeugt. Wenn der tatsächliche Endpunkt Pe eine untere linke Ecke ist, wird eine Einzelbahn 203-D erzeugt. Wenn der tatsächliche Endpunkt Pe eine obere rechte Ecke ist, wird eine Einzelbahn 203-A erzeugt. Wenn der tatsächliche Endpunkt Pe eine untere rechte Ecke ist, wird eine Einzelbahn 203-B erzeugt.
  • Im Folgenden wird unter Bezugnahme auf 19 ein Vorgang zum Erzeugen der einzigen Referenzbahn 202 und des einzigen Verzweigungspunkts 204 beschrieben. Zunächst liest die Zielsatzfestlegungseinheit 303 wie in der ersten Ausführungsform den von der Zielsatzfestlegungseinheit 303 berechneten Zielsatz 201 und alle Variationsmuster der in dem Zielsatz 201 beinhalteten Zielobjekte 200 (S401).
  • Als Nächstes wählt die Referenzbahnerzeugungseinheit 304 ein Variationsmuster aus, das einige der Rasterpunkte G aus der Vielzahl von Variationsmustern aufweist, legt das ausgewählte Variationsmuster als Endpunkt Pe fest, legt den vorbestimmten Startpunkt Ps als Bewegungsstartpunkt fest und erzeugt die Referenzbahn 202 mit einem Bewertungswert, der in den ersten Bereich fällt, indem ein beliebiges gewünschtes Bahnerzeugungsverfahren wie in der ersten Ausführungsform verwendet wird (S402). Eine Bewegungszeit wird wie in der ersten Ausführungsform als Bewertungswert einer Bahn verwendet.
  • Als Bahnerzeugungsverfahren können bekannte Techniken wie etwa ein Random-Sampling-Verfahren wie RRT, ein Bahnparameteroptimierungsverfahren wie etwa CHOMP, eine grafische Lösung und ein Verstärkungslernverfahren verwendet werden. Darüber hinaus können diese Verfahren in Kombination verwendet werden. Zusätzlich kann eine Bahn verwendet werden, die von einem Systembenutzer manuell trainiert wird.
  • Als Nächstes spezifiziert die Verzweigungspunktspezifikationseinheit 305 einen Punkt, der als Kandidat für den Verzweigungspunkt 204 dient, indem der Punkt aus Bewegungspunkten der Referenzbahn 202 ausgewählt wird (S403). Wie unter Bezugnahme auf die 14 bis 16 beschrieben, wird für einen Abschnitt, aus dem der Verzweigungspunkt 204 auszuwählen ist, das gleiche Verfahren wie bei der ersten Ausführungsform ausgewählt.
  • Anschließend prüft die Verzweigungspunktspezifikationseinheit 305, ob für alle Variationsmuster im Zielsatz 201 ein durch Verwendung des in S403 spezifizierten Verzweigungspunkts 204 erzeugter Bewertungswert der Einzelbahn 203 berechnet wurde (S404). Bei Variationsmustern, für die kein Bewertungswert berechnet wurde (S404: Nein), wählt die Verzweigungspunktspezifikationseinheit 305 eines der Variationsmuster aus, für die kein Bewertungswert berechnet wurde, und berechnet einen Bewertungswert der Einzelbahn 203 (S405). Für die Berechnung des Bewertungswerts jeder Einzelbahn 203 wird das gleiche Verfahren wie bei der ersten Ausführungsform verwendet. Wenn für alle Variationsmuster Bewertungswerte berechnet wurden (S404: Ja), geht der Prozess zu S406 über.
  • Als Nächstes berechnet die Verzweigungspunktspezifikationseinheit 305 einen erwarteten Wert des Bewertungswerts für alle Variationsmuster in Bezug auf den in S403 ausgewählten Verzweigungspunktkandidaten (S406).
  • Als Verfahren zum Berechnen des erwarteten Werts des Bewertungswerts wird beispielsweise ein Verfahren verwendet, bei dem ein äquivalenter Mittelwert der Bewertungswerte aller Variationsmuster berechnet wird. Zusätzlich kann ein gewichteter Mittelwert verwendet werden, bei dem ein Gewicht, das dem Bewertungswert der Einzelbahn 203 entsprechend einem Variationsmuster im mittleren Teil des Zielsatzes 201 zuzuweisen ist, höher ist als ein Gewicht, das dem Bewertungswert der Einzelbahn 203 entsprechend einem Variationsmuster in der Nähe einer Außenkante des Zielsatzes 201 zuzuweisen ist. Ferner kann der erwartete Wert auf Grundlage der Anzahl der Vorkommen jedes Variationsmusters in einer tatsächlichen Fertigungslinie berechnet werden.
  • Die Verzweigungspunktspezifikationseinheit 305 prüft, ob der berechnete erwartete Wert des Bewertungswerts in den zweiten Bereich fällt (S407). Eine Bewegungszeit kleiner oder gleich T2 [s] (T2>T1) wird als der zweite Bereich festgelegt. Fällt der erwartete Wert des Bewertungswerts in den zweiten Bereich (S407: Ja), geht der Prozess zu S409 über. Fällt der erwartete Wert des Bewertungswerts nicht in den zweiten Bereich (S407: Nein), prüft die Verzweigungspunktspezifikationseinheit 305, ob ein weiterer Punkt, der als Kandidat für den Verzweigungspunkt 204 dient, auf der Referenzbahn 202 verbleibt (S408). Wenn ein Kandidat verbleibt (S408: Ja), kehrt der Prozess zu S403 zurück, und ein anderer Kandidat für den Verzweigungspunkt 204 wird festgelegt. Wenn kein Kandidat verbleibt (S408: Nein), geht der Prozess zu S409 über. Es ist anzumerken, dass in der zweiten Ausführungsform ein dritter Bereich, der breiter ist als der zweite Bereich, zur Bestimmung in S407 festgelegt werden kann.
  • In S409 wählt die Verzweigungspunktspezifikationseinheit 305 einen Verzweigungspunkt 204 aus und fügt den ausgewählten Verzweigungspunkt 204 der Einzelverzweigungspunktspeichereinheit 306 in Kombination mit der Referenzbahn 202 hinzu. In der vorliegenden Ausführungsform wird der Verzweigungspunkt 204 ausgewählt, der den erwarteten Wert des Bewertungswerts, d. h. den erwarteten Wert der Bewegungszeit, minimiert. Der Einzelverzweigungspunktspeichereinheit 306 speichert eine Kombination der Verzweigungspunkte 204 und der Referenzbahn 202.
  • Während der Roboter 101 tatsächlich arbeitet, erzeugt die Einzelverzweigungspunktspeichereinheit 306 eine Bewegungsbahn des Roboters 101 in gleicher Weise, wie in 18 beschrieben, unter Verwendung der Kombination der Verzweigungspunkte 204 und der in der Einzelverzweigungspunktspeichereinheit 306 gespeicherten Referenzbahn 202. Zuerst wird mittels des externen Sensors 104 die tatsächliche Position, Ausrichtung und Form des Zielobjekts 200 gemessen. Anschließend wird eine Kombination der Verzweigungspunkte 204 und der Referenzbahn 202 aus der Einzelverzweigungspunktspeichereinheit 306 herausgenommen. Anschließend wird die tatsächliche Position und Ausrichtung des Zielobjekts 200 als Endpunkt Pe' festgelegt und wird eine Einzelbahn von dem Verzweigungspunkt 204, der herausgenommen wurde, zum Endpunkt Pe' durch die Verwendung des unter Bezugnahme auf 17 beschriebenen Verfahrens erzeugt. Die Referenzbahn 202 wird als solche als Bahn vom Startpunkt Ps zum Verzweigungspunkt 204 übernommen. Danach wird der Roboter 101 auf Grundlage eines Bewegungsbefehls angetrieben, der die erzeugte Einzelbahn vom Verzweigungspunkt 204 zum Endpunkt Pe' und die Referenzbahn 202 entsprechend dem Abschnitt vom Startpunkt Ps zum Verzweigungspunkt 204 umfasst.
  • Da wie oben beschrieben gemäß der zweiten Ausführungsform nur eine einzige Kombination der Referenzbahn 202 und des Verzweigungspunkts 204 für eine Vielzahl von Variationsmustern festgelegt ist, kann die in der Einzelverzweigungspunktspeichereinheit 306 zu speichernde Datenmenge reduziert werden. Weiterhin gewährleistet gemäß der zweiten Ausführungsform, da als Verzweigungspunkt 204 ein Punkt, der den erwarteten Wert des Bewertungswerts minimiert, aus Kandidaten auf der Referenzbahn 202 ausgewählt wird, die erzeugte Bahn eine konstante Produktivität wie in der ersten Ausführungsform. Im Vergleich zur ersten Ausführungsform, bei der für jedes Variationsmuster des Zielobjekts 200 der Verzweigungspunkt 204 spezifiziert ist, besteht jedoch die Möglichkeit, dass die Produktivität einer Einzelbahn für jedes Variationsmuster abnimmt.
  • Hier wird eine Hardwarekonfiguration der in 4 veranschaulichten Robotersteuerungseinrichtung beschrieben. 21 ist ein Blockdiagramm, das Hardwarekonfigurationen für die Robotersteuerungseinrichtung gemäß jeder von der ersten Ausführungsform und der zweiten Ausführungsform veranschaulicht.
  • Die Robotersteuerungseinrichtung kann durch eine Hardwarekonfiguration 406 mit einer arithmetischen Vorrichtung 404 und einer in 21 veranschaulichten Speichervorrichtung 405 implementiert werden. Beispiele für die arithmetische Vorrichtung 404 beinhalten eine zentrale Verarbeitungseinheit (central processing unit - CPU) (auch als Verarbeitungsvorrichtung, arithmetische Vorrichtung, Mikroprozessor, Mikrocomputer, Prozessor oder Digitalsignalprozessor (DSP) bezeichnet) und einen hohen Systemintegrationsgrad (large-scale integration - LSI). Beispiele für die Speichervorrichtung 405 beinhalten einen Direktzugriffsspeicher (random access memory - RAM) und ein Festwertspeicher (read-only memory - ROM).
  • Die Robotersteuerungseinrichtung wird durch die arithmetische Vorrichtung 404 implementiert, die ein in der Speichervorrichtung 405 gespeichertes Programm zum Ausführen des Betriebs der Robotersteuerungseinrichtung liest und ausführt. Es kann auch gesagt werden, dass dieses Programm einen Computer dazu veranlasst, einen Vorgang oder ein Verfahren für die Robotersteuerungseinrichtung auszuführen.
  • Die Speichervorrichtung 405 speichert den Verzweigungspunkt 204 und die Referenzbahn 202. Die Speichervorrichtung 405 wird auch als temporärer Speicher verwendet, wenn die arithmetische Vorrichtung 404 verschiedene Verarbeitungsarten ausführt.
  • Das von der arithmetischen Vorrichtung 404 auszuführende Programm kann als Datei in einem installierbaren oder einem ausführbaren Format auf einem computerlesbaren Speichermedium gespeichert und als Computerprogrammprodukt bereitgestellt werden. Weiterhin kann das von der arithmetischen Vorrichtung 404 auszuführende Programm der Robotersteuerungseinrichtung über ein Netzwerk wie das Internet bereitgestellt werden.
  • Darüber hinaus kann die Robotersteuerungseinrichtung durch dedizierte Hardware implementiert werden. Darüber hinaus können einige der Funktionen der Robotersteuerungseinrichtung durch dedizierte Hardware und einige der anderen Funktionen davon durch Software oder Firmware implementiert werden. Beispielsweise können die Zielsatzfestlegungseinheit 303, die Referenzbahnerzeugungseinheit 304, die Verzweigungspunktspezifikationseinheit 305 und die Einzelverzweigungspunktspeichereinheit 306 von einem Computer und die Sensorinformationserfassungseinheit 307, die Einzelbahnerzeugungseinheit 308 und die Robotersteuerungseinheit 309 von einer Robotersteuerung ausgeführt werden.
  • Die in den vorstehenden Ausführungsformen dargelegten Konfigurationen zeigen Beispiele für den Gegenstand der vorliegenden Offenbarung und es ist möglich, die Konfigurationen mit einer anderen bekannten Technik zu kombinieren, und es ist zudem möglich, die Konfigurationen teilweise wegzulassen oder zu ändern, ohne vom Umfang der vorliegenden Offenbarung abzuweichen.
  • Liste der Bezugszeichen
  • 100 Robotersystem; 101 Roboter; 102 Endeffektor; 103 Bandförderer; 104 externer Sensor; 200 Zielobjekt; 201 Zielsatz; 202 Referenzbahn; 203 Einzelbahn; 204 Verzweigungspunkt; 205 Hindernis; 206 hypothetisches Hindernis; 301 Peripherievorrichtungsinformationserfassungseinheit; 302 Aufgabeninformationserfassungseinheit; 303 Zielsatzfestlegungseinheit; 304 Referenzbahnerzeugungseinheit; 305 Verzweigungspunktspezifikationseinheit; 306 Einzelverzweigungspunktspeichereinheit; 307 Sensorinformationserfassungseinheit; 308 Einzelbahnerzeugungseinheit; 309 Robotersteuerungseinheit; 310 Bahnerzeugungseinheit; 404 arithmetische Vorrichtung; 405 Speichervorrichtung; 406 Hardwarekonfiguration; Pe Endpunkt; Ps Startpunkt.
  • 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 6560841 [0004]

Claims (15)

  1. Robotersteuerungseinrichtung zum Durchführen einer vorbestimmten Aufgabe für ein Zielobjekt durch Bewegen eines Endeffektors eines Roboters von einem Startpunkt zu einem Endpunkt, wobei eine Position und Ausrichtung des Zielobjekts nicht festgelegt ist, wobei die Robotersteuerungseinrichtung Folgendes umfasst: eine Speichereinheit zum Speichern einer Referenzbahn und eines Verzweigungspunkts in Verbindung mit jeder von mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts; eine Messeinheit zum Messen der Position und Ausrichtung des Zielobjekts bei der Durchführung der Aufgabe; eine Einzelbahnerzeugungseinheit zum Erfassen der Referenzbahn und des Verzweigungspunkts entsprechend der gemessenen Position und Ausrichtung des Zielobjekts aus der Speichereinheit, Festlegen der gemessenen Position und Ausrichtung des Zielobjekts als den Endpunkt, Erzeugen einer ersten Bewegungsbahn, die eine Bewegungsbahn des Roboters vom Startpunkt zum Verzweigungspunkt ist, indem die erfasste Referenzbahn verwendet wird, und Erzeugen einer zweiten Bewegungsbahn, die eine Bewegungsbahn des Roboters vom erfassten Verzweigungspunkt zum Endpunkt ist, indem eine erste Berechnung durchgeführt wird; und eine Robotersteuerungseinheit zum Durchführen einer Antriebssteuerung des Roboters gemäß einem Bewegungsbefehl, der die erste Bewegungsbahn und die zweite Bewegungsbahn beinhaltet, wobei die Referenzbahn eine Bewegungsbahn des Roboters vom Startpunkt zu einem ersten Punkt ist, die eine der mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts ist, und eine Bewegungsbahn ist, die die Vermeidung von Störungen mit einem Hindernis ermöglicht und die eine Bedingung erfüllt, dass ein Bewertungswert in einen ersten Bereich fällt, und der Verzweigungspunkt ein Punkt auf der Referenzbahn ist und eine Bewegungsbahn ist, die eine Bedingung erfüllt, dass der Bewertungswert einer Bewegungsbahn vom Verzweigungspunkt zum ersten Punkt in einen zweiten Bereich fällt, der größer ist als der erste Bereich.
  2. Robotersteuerungseinrichtung nach Anspruch 1, umfassend: eine Zielsatzfestlegungseinheit zum Festlegen eines Satzes der mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts als Zielsatz; eine Referenzbahnerzeugungseinheit zum Auswählen mindestens einer Kombination aus einer Position und Ausrichtung des Zielobjekts, das in dem Zielsatz beinhaltet ist, und Erzeugen der Referenzbahn auf der Grundlage der ausgewählten Kombination aus der Position und Ausrichtung des Zielobjekts; und eine Verzweigungspunktspezifikationseinheit zum Durchführen eines ersten Prozesses für alle der mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts, Berechnen des Verzweigungspunkts für jede Kombination aus einer möglichen Position und Ausrichtung des Zielobjekts und Speichern der berechneten Verzweigungspunkte und der erzeugten Referenzbahn in der Speichereinheit, wobei der erste Prozess Entnehmen einer Vielzahl von in Frage kommenden Punkten für den Verzweigungspunkt aus der erzeugten Referenzbahn, Auswählen einer Bewegungsbahn mit dem Bewertungswert, der in den zweiten Bereich fällt, aus einer Vielzahl von Bewegungsbahnen aus der Vielzahl von entnommenen in Frage kommenden Punkten zu dem ersten Punkt und Festlegen eines in Frage kommenden Punkts entsprechend der ausgewählten Bewegungsbahn als einen Verzweigungspunkt entsprechend dem ersten Punkt beinhaltet.
  3. Robotersteuerungseinrichtung nach Anspruch 2, wobei die Referenzbahnerzeugungseinheit eine einzige Referenzbahn erzeugt, die den mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts gemeinsam ist.
  4. Robotersteuerungseinrichtung nach Anspruch 3, wobei die Referenzbahnerzeugungseinheit die einzige Referenzbahn an einer Mittelposition des Zielsatzes festlegt.
  5. Robotersteuerungseinrichtung nach Anspruch 3, wobei die Referenzbahnerzeugungseinheit die einzige Referenzbahn an einer Position mit einer größten Auftrittshäufigkeit während der tatsächlichen Roboterbewegung festlegt.
  6. Robotersteuerungseinrichtung nach Anspruch 2, wobei die Referenzbahnerzeugungseinheit die Referenzbahn an dem ersten Punkt festlegt, der sich gemäß den Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts unterscheidet.
  7. Robotersteuerungseinrichtung nach Anspruch 2, wobei die Referenzbahnerzeugungseinheit eine neue Referenzbahn erzeugt, wenn kein Verzweigungspunkt vorhanden ist, der eine Bedingung erfüllt, dass der Bewertungswert in den zweiten Bereich fällt.
  8. Robotersteuerungseinrichtung nach Anspruch 1, wobei die Speichereinheit eine Kombination aus der Referenzbahn, dem Verzweigungspunkt und einer Bahn der Handannäherung zu dem Zielobjekt in Verbindung mit jeder der mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts speichert.
  9. Robotersteuerungseinrichtung zum Durchführen einer vorbestimmten Aufgabe für ein Zielobjekt durch Bewegen eines Endeffektors eines Roboters von einem Startpunkt zu einem Endpunkt, wobei eine Position und Ausrichtung des Zielobjekts nicht festgelegt sind, wobei die Robotersteuerungseinrichtung Folgendes umfasst: eine Speichereinheit zum Speichern einer einzigen Referenzbahn und eines einzigen Verzweigungspunkts, die mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts gemeinsam sind; eine Messeinheit zum Messen der Position und Ausrichtung des Zielobjekts bei der Durchführung der Aufgabe; eine Einzelbahnerzeugungseinheit zum Erfassen der Referenzbahn und des Verzweigungspunkts aus der Speichereinheit, Festlegen der gemessenen Position und Ausrichtung des Zielobjekts als den Endpunkt, Erzeugen einer ersten Bewegungsbahn, die eine Bewegungsbahn des Roboters vom Startpunkt zum Verzweigungspunkt ist, indem die erfasste Referenzbahn verwendet wird, und Erzeugen einer zweiten Bewegungsbahn, die eine Bewegungsbahn des Roboters vom erfassten Verzweigungspunkt zum Endpunkt ist, indem eine erste Berechnung durchgeführt wird; und eine Robotersteuerungseinheit zum Durchführen einer Antriebssteuerung des Roboters gemäß einem Bewegungsbefehl, der die erste Bewegungsbahn und die zweite Bewegungsbahn beinhaltet, wobei die Referenzbahn eine Bewegungsbahn des Roboters vom Startpunkt zu einem ersten Punkt ist, die eine der mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts ist, und eine Bewegungsbahn ist, die die Vermeidung von Störungen mit einem Hindernis ermöglicht und die eine Bedingung erfüllt, dass ein Bewertungswert in einen ersten Bereich fällt, und der Verzweigungspunkt ein Punkt auf der Referenzbahn ist und eine Bewegungsbahn ist, die eine Bedingung erfüllt, dass ein Mittelwert der Bewertungswerte einer Vielzahl von Bewegungsbahnen vom Verzweigungspunkt zu den mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts in einen zweiten Bereich fällt, der breiter als der erste Bereich ist.
  10. Robotersteuerungseinrichtung nach Anspruch 9, umfassend: eine Zielsatzfestlegungseinheit zum Festlegen eines Satzes einer Vielzahl von möglichen Positionen und Ausrichtungen des Zielobjekts als Zielsatz; eine Referenzbahnerzeugungseinheit zum Auswählen einer einzigen Kombination aus einer Position und Ausrichtung des Zielobjekts, das in dem Zielsatz beinhaltet ist, und Erzeugen der Referenzbahn auf der Grundlage der ausgewählten Kombination aus der Position und Ausrichtung des Zielobjekts; und eine Verzweigungspunktspezifikationseinheit zum Entnehmen einer Vielzahl von in Frage kommenden Punkten für den Verzweigungspunkt aus der erzeugten Referenzbahn, Durchführen eines zweiten Prozesses zum Erhalten eines Mittelwerts der Bewertungswerte einer Vielzahl von Bewegungsbahnen aus einem der Vielzahl von entnommenen in Frage kommenden Punkten zu den mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts für alle in Frage kommenden Punkte, Festlegen eines in Frage kommenden Punktes als Verzweigungspunkt, der in der Vielzahl von in Frage kommenden Punkten beinhaltet ist und ermöglicht, dass der Mittelwert der Bewertungswerte in den zweiten Bereich fällt, und Speichern des festgelegten Verzweigungspunkts und der Referenzbahn in der Speichereinheit.
  11. Robotersteuerungseinrichtung nach Anspruch 10, wobei der Mittelwert der Bewertungswerte ein gewichteter Mittelwert ist, bei dem ein Gewicht, das dem Bewertungswert für einen Mittelabschnitt des Zielsatzes zuzuweisen ist, höher ist als ein Gewicht, das dem Bewertungswert in der Nähe einer Außenkante des Zielsatzes zuzuweisen ist.
  12. Robotersteuerungseinrichtung nach Anspruch 2 oder 10, wobei die Verzweigungspunktspezifikationseinheit den Verzweigungspunkt aus einem Abschnitt der Referenzbahn auswählt, in dem ein hypothetisches Hindernis weder den Endeffektor noch einen Roboterhauptkörper stört, wobei das hypothetische Hindernis so festgelegt ist, dass ein Rand mit einer bestimmten Breite um einen Außenumfang des Hindernisses verbleibt.
  13. Robotersteuerungseinrichtung nach einem der Ansprüche 1 bis 12, wobei der Bewertungswert eine Bewegungszeit des Roboters ist.
  14. Robotersteuerungsprogramm zum Durchführen einer vorbestimmten Aufgabe für ein Zielobjekt durch Bewegen eines Endeffektors eines Roboters von einem Startpunkt zu einem Endpunkt, wobei eine Position und Ausrichtung des Zielobjekts nicht festgelegt sind, wobei das Robotersteuerungsprogramm einen Computer zu Folgendem veranlasst: einem Schritt des Speicherns, in einer Speichereinheit, einer Referenzbahn und eines Verzweigungspunkts in Verbindung mit jeder von mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts; einem Schritt des Messens der Position und Ausrichtung des Zielobjekts bei der Durchführung der Aufgabe; einem Schritt des Erfassens der Referenzbahn und des Verzweigungspunkts entsprechend der gemessenen Position und Ausrichtung des Zielobjekts aus der Speichereinheit, Festlegen der gemessenen Position und Ausrichtung des Zielobjekts als den Endpunkt, Erzeugen einer ersten Bewegungsbahn, die eine Bewegungsbahn des Roboters vom Startpunkt zum Verzweigungspunkt ist, indem die erfasste Referenzbahn verwendet wird, und Erzeugen einer zweiten Bewegungsbahn, die eine Bewegungsbahn des Roboters vom erfassten Verzweigungspunkt zum Endpunkt ist, indem eine erste Berechnung durchgeführt wird; und einem Schritt des Durchführens einer Antriebssteuerung des Roboters gemäß einem Bewegungsbefehl, der die erste Bewegungsbahn und die zweite Bewegungsbahn beinhaltet, wobei die Referenzbahn eine Bewegungsbahn des Roboters vom Startpunkt zu einem ersten Punkt ist, die eine der mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts ist, und eine Bewegungsbahn ist, die die Vermeidung von Störungen mit einem Hindernis ermöglicht und die eine Bedingung erfüllt, dass ein Bewertungswert in einen ersten Bereich fällt, und der Verzweigungspunkt ein Punkt auf der Referenzbahn ist und eine Bewegungsbahn ist, die eine Bedingung erfüllt, dass der Bewertungswert einer Bewegungsbahn vom Verzweigungspunkt zum ersten Punkt in einen zweiten Bereich fällt, der größer ist als der erste Bereich.
  15. Robotersteuerungsverfahren zum Durchführen einer vorbestimmten Aufgabe für ein Zielobjekt durch Bewegen eines Endeffektors eines Roboters von einem Startpunkt zu einem Endpunkt, wobei eine Position und Ausrichtung des Zielobjekts nicht festgelegt sind, wobei das Robotersteuerungsverfahren Folgendes umfasst: einen Schritt des Speicherns, in einer Speichereinheit, einer Referenzbahn und eines Verzweigungspunkts in Verbindung mit jeder von mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts; einen Schritt des Messens der Position und Ausrichtung des Zielobjekts bei der Durchführung der Aufgabe; einen Schritt des Erfassens der Referenzbahn und des Verzweigungspunkts entsprechend der gemessenen Position und Ausrichtung des Zielobjekts aus der Speichereinheit, Festlegen der gemessenen Position und Ausrichtung des Zielobjekts als den Endpunkt, Erzeugen einer ersten Bewegungsbahn, die eine Bewegungsbahn des Roboters vom Startpunkt zum Verzweigungspunkt ist, indem die erfasste Referenzbahn verwendet wird, und Erzeugen einer zweiten Bewegungsbahn, die eine Bewegungsbahn des Roboters vom erfassten Verzweigungspunkt zum Endpunkt ist, indem eine erste Berechnung durchgeführt wird; und einen Schritt des Durchführens einer Antriebssteuerung des Roboters gemäß einem Bewegungsbefehl, der die erste Bewegungsbahn und die zweite Bewegungsbahn beinhaltet, wobei die Referenzbahn eine Bewegungsbahn des Roboters vom Startpunkt zu einem ersten Punkt ist, die eine der mehreren Kombinationen aus einer möglichen Position und Ausrichtung des Zielobjekts ist, und eine Bewegungsbahn ist, die die Vermeidung von Störungen mit einem Hindernis ermöglicht und die eine Bedingung erfüllt, dass ein Bewertungswert in einen ersten Bereich fällt, und der Verzweigungspunkt ein Punkt auf der Referenzbahn ist und eine Bewegungsbahn ist, die eine Bedingung erfüllt, dass der Bewertungswert einer Bewegungsbahn vom Verzweigungspunkt zum ersten Punkt in einen zweiten Bereich fällt, der größer ist als der erste Bereich.
DE112021007395.8T 2021-03-24 2021-03-24 Robotersteuerungseinrichtung, robotersteuerungsprogramm und robotersteuerungsverfahren Pending DE112021007395T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/012254 WO2022201362A1 (ja) 2021-03-24 2021-03-24 ロボット制御装置、ロボット制御プログラムおよびロボット制御方法

Publications (1)

Publication Number Publication Date
DE112021007395T5 true DE112021007395T5 (de) 2024-03-21

Family

ID=83396544

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021007395.8T Pending DE112021007395T5 (de) 2021-03-24 2021-03-24 Robotersteuerungseinrichtung, robotersteuerungsprogramm und robotersteuerungsverfahren

Country Status (4)

Country Link
JP (1) JP7438453B2 (de)
CN (1) CN116997441A (de)
DE (1) DE112021007395T5 (de)
WO (1) WO2022201362A1 (de)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003103481A (ja) 2001-09-28 2003-04-08 Honda Motor Co Ltd 多関節ロボットの姿勢適正化方法および適正化装置
JP4984576B2 (ja) * 2006-03-08 2012-07-25 トヨタ自動車株式会社 ロボットハンドによる把持制御方法
JP5724919B2 (ja) 2012-03-22 2015-05-27 トヨタ自動車株式会社 軌道生成装置、移動体、軌道生成方法及びプログラム
JP6807949B2 (ja) * 2016-11-16 2021-01-06 三菱電機株式会社 干渉回避装置
CN110198813B (zh) * 2017-01-31 2023-02-28 株式会社安川电机 机器人路径生成装置和机器人系统

Also Published As

Publication number Publication date
JP7438453B2 (ja) 2024-02-26
WO2022201362A1 (ja) 2022-09-29
CN116997441A (zh) 2023-11-03
JPWO2022201362A1 (de) 2022-09-29

Similar Documents

Publication Publication Date Title
DE102019001948B4 (de) Steuerung und maschinelle Lernvorrichtung
DE112017002498B4 (de) Robotervorgang-auswertungseinrichtung, robotervorgang-auswertungsverfahren und robotersystem
DE112016002797B4 (de) Kalibriervorrichtung und robotersystem mit einer solchen kalibriervorrichtung
EP0438095B1 (de) Korrekturverfahren für Koordinatenmessgeräte
DE102017002996A1 (de) Maschinenlernvorrichtung, die ein lernen unter verwendung eines simulationsergebnisses durchführt, maschinensystem, herstellungssystem und maschinenlernverfahren
DE102018008395B4 (de) Robotereinlernvorrichtung zum melden oder korrigieren einer positionsabweichung von einlernpunkten oder einer einlernlinie
DE112021001104T5 (de) Bewegungsplanungsverfahren mit kollisionsvermeidung für industrieroboter
DE102018200240B4 (de) Robotersteuerungsvorrichtung
DE102019118637B4 (de) Automatische pfadgenerierungsvorrichtung
DE102015010124A1 (de) Roboterprogramm-Erzeugungsvorrichtung, die Roboterprogramm zum Reduzieren von Stössen der Gelenke des Roboters erzeugt
DE102020110252B4 (de) Vibrationsanzeigeeinrichtung, Betriebsprogrammerstellungseinrichtung und System
DE102022129008A1 (de) Verfahren zur behandlung von kollisionen bei der griffgenerierung
DE102019209104A1 (de) Ausgabevorrichtung, Steuervorrichtung und Ausgabeverfahren für einen Bewertungsfunktionswert
DE102014014524A1 (de) Werkzeugbahnanzeigevorrichtung, mit einer Anzeigeeinheit für Bahndaten
DE102019003928A1 (de) Positionsinformationsanzeigesystem
EP3272468B1 (de) Verfahren und vorrichtung zum steuern einer roboterbewegung eines roboters anhand einer zweiten trajektorie
DE102012022190B4 (de) Inverse Kinematik
DE112019007889T5 (de) Bearbeitungsprogramm-umwandlungseinrichtung, numerische-steuereinrichtung und bearbeitungsprogramm-umwandlungsverfahren
DE112020006315B4 (de) Robotersteuervorrichtung, robotersteuerverfahren und vorrichtung zur erzeugung von lernmodellen
DE112005001095B4 (de) Anordnung für die relative Steuerung von Lastbewegungsaktuatoren
DE112021007395T5 (de) Robotersteuerungseinrichtung, robotersteuerungsprogramm und robotersteuerungsverfahren
DE102022130341A1 (de) Punktmengen-störungsprüfung
DE102019203623A1 (de) Verfahren zur Bereitstellung einer Karte
EP2118618B1 (de) Verfahren zum ermitteln von messstellen
DE112021003153T5 (de) Robotersteuerung

Legal Events

Date Code Title Description
R012 Request for examination validly filed