DE112018007729T5 - Maschinelle Lernvorrichtung und mit dieser ausgestattetes Robotersystem - Google Patents

Maschinelle Lernvorrichtung und mit dieser ausgestattetes Robotersystem Download PDF

Info

Publication number
DE112018007729T5
DE112018007729T5 DE112018007729.2T DE112018007729T DE112018007729T5 DE 112018007729 T5 DE112018007729 T5 DE 112018007729T5 DE 112018007729 T DE112018007729 T DE 112018007729T DE 112018007729 T5 DE112018007729 T5 DE 112018007729T5
Authority
DE
Germany
Prior art keywords
workpiece
robot
unit
behavior
container
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
DE112018007729.2T
Other languages
English (en)
Other versions
DE112018007729B4 (de
Inventor
Kunimune Komaike
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.)
Yamaha Motor Co Ltd
Original Assignee
Yamaha Motor Co Ltd
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 Yamaha Motor Co Ltd filed Critical Yamaha Motor Co Ltd
Publication of DE112018007729T5 publication Critical patent/DE112018007729T5/de
Application granted granted Critical
Publication of DE112018007729B4 publication Critical patent/DE112018007729B4/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/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1612Programme controls characterised by the hand, wrist, grip control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • 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/40053Pick 3-D object from pile of objects

Abstract

Eine Aktion eines Roboters (2), den ein Robotersystem (1) umfasst, wird entsprechend einem Lernergebnis einer maschinellen Lernvorrichtung (5) gesteuert. Die maschinelle Lernvorrichtung (5) umfasst eine Verhaltensüberwachungseinheit (62), eine Verschiebungsgrößen-Überwachungseinheit (63) und eine Lerneinheit (64). Die Verhaltensüberwachungseinheit (62) überwacht ein Verhaltensmuster des Roboters (2), der ein Werkstück (W) aus einem Behälter (CN) entnimmt. Die Verschiebungsgrößen-Überwachungseinheit (63) überwacht anhand von vor und nach der Entnahmeaktion des Roboters (2) aufgenommen und von einer Bildaufnahmevorrichtung (3) ausgegebenen Bilddatenelementen eine Werkstückverschiebungsgröße, die eine durch die Entnahme eines Zielwerkstücks aus dem Behälter (CN) verursachte Verschiebungsgröße eines Nicht-Zielwerkstücks in dem Behälter (CN) angibt. Die Lerneinheit (64) lernt einen Einflussgrad (IM) eines zugeordneten Verhaltensmusters des Roboters (2) zur Entnahme des Zielwerkstücks aus dem Behälter (CN) auf das Nicht-Zielwerkstück, wobei der Einflussgrad (IM) von der Werkstückverschiebungsgröße abhängt.

Description

  • Technischer Bereich
  • Die vorliegende Erfindung betrifft eine maschinelle Lernvorrichtung, die eine Aktion eines Roboters lernt, der ungeordnet übereinanderliegende Werkstücke entnimmt, und ein Robotersystem, das die maschinelle Lernvorrichtung umfasst.
  • Technischer Hintergrund
  • Als System zur Entnahme eines Werkstücks aus einem Behälter, der mehrere ungeordnet übereinanderliegende Werkstücke enthält, ist ein Robotersystem zur Entnahme eines Werkstücks durch einen Roboter bekannt, der eine Handeinheit umfasst (siehe Patentliteratur 1). Das in Patentliteratur 1 offenbarte Robotersystem umfasst eine maschinelle Lernvorrichtung, die eine Entnahmeaktion eines Roboters lernt. Die maschinelle Lernvorrichtung lernt eine Aktion des Roboters, der ein Werkstück aus einem Behälter entnimmt, anhand einer Roboteraktion, die einem von einer dreidimensionalen Messvorrichtung gemessenen dreidimensionalen Lageplan von Werkstücken entspricht, und anhand von einem Ergebnis einer Bestimmung des Erfolgs /des Scheiterns der Entnahme eines Werkstücks zugeordneten überwachten Daten.
  • Das Lernen unter Verwendung der überwachten Daten, die das Ergebnis der Bestimmung des Erfolgs / des Scheiterns der Entnahme eines Werkstücks umfassen, ist jedoch weit vom Lernen einer optimalen Entnahmeaktion des Roboters entfernt. Selbst wenn von der Handeinheit des Roboters ein Zielwerkstück erfolgreich aus dem Behälter entnommen wird, könnte diese Entnahmeaktion Einfluss auf Nicht-Zielwerkstücke in dem Behälter haben. Bei der Aktion der Entnahme des Zielwerkstücks aus dem Behälter könnte die Handeinheit oder das von der Handeinheit ergriffene Zielwerkstück beispielsweise eine Schlagkraft auf die Nicht-Zielwerkstücke aufbringen. In anderen Fällen könnte die Entnahme des Zielwerkstücks ein Einstürzen des Stapels der Nicht-Zielwerkstücke verursachen. Wie vorstehend beschrieben, könnten die Werkstücke beschädigt werden, wenn die Entnahmeaktion zur Entnahme des Zielwerkstücks Einfluss auf die Nicht-Zielwerkstücke in dem Behälter hat.
  • Liste der Entgegenhaltungen
  • Patentliteratur
  • Patentliteratur 1: JP 2017-64910 A
  • Zusammenfassung der Erfindung
  • Die vorliegende Erfindung wurde in Anbetracht der vorstehend beschriebenen Umstände entwickelt. Es ist eine Aufgabe der vorliegenden Erfindung, eine maschinelle Lernvorrichtung, die eine optimale Aktion eines Roboters zur Entnahme eines Werkstücks aus einem Behälter lernen kann, der mehrere ungeordnet übereinanderliegende Werkstücke enthält, und ein Robotersystem bereitzustellen, das die maschinelle Lernvorrichtung umfasst.
  • Eine maschinelle Lernvorrichtung gemäß einem Aspekt der vorliegenden Erfindung ist eine Vorrichtung, die eine Aktion eines Roboters, der eine Handeinheit umfasst, zur Entnahme des Werkstücks aus einem Behälter lernt, der mehrere ungeordnet übereinanderliegende Werkstücke enthält. Eine maschinelle Lernvorrichtung umfasst eine Verhaltensüberwachungseinheit, die darauf ausgelegt ist, ein Verhaltensmuster des Roboters zu überwachen, der eine Entnahmeaktion zur Entnahme eines Zielwerkstücks aus dem Behälter mittels der Handeinheit ausführt, eine Verschiebungsgrößen-Überwachungseinheit, die darauf ausgelegt ist, anhand von vor und nach der Entnahmeaktion des Roboters aufgenommen und von einer Bildaufnahmevorrichtung, die ein Bild eines Inneren des Behälters aufnimmt, ausgegebenen Bilddatenelementen eine Werkstückverschiebungsgröße zu überwachen, die eine durch die Entnahme des Zielwerkstücks aus dem Behälter durch die Handeinheit verursachte Verschiebungsgröße eines Nicht-Zielwerkstücks, das nicht das Zielwerkstück ist, in dem Behälter angibt, und eine Lerneinheit, die darauf ausgelegt ist, anhand von überwachten Daten, in denen das Verhaltensmuster und die Werkstückverschiebungsgröße einander zugeordnet sind, einen Einflussgrad des zugeordneten Verhaltensmusters zur Entnahme des Zielwerkstücks aus dem Behälter durch die Handeinheit auf das Nicht-Zielwerkstück zu lernen, wobei der Einflussgrad von der Werkstückverschiebungsgröße abhängt.
  • Ein Robotersystem gemäß einem weiteren Aspekt der vorliegenden Erfindung umfasst einen Roboter mit einer Handeinheit, der das Werkstück aus einem Behälter entnimmt, der mehrere ungeordnet übereinanderliegende Werkstücke enthält, eine Bildaufnahmevorrichtung, die ein Bild eines Inneren des Behälters aufnimmt und Bilddaten ausgibt, die maschinelle Lernvorrichtung, die darauf ausgelegt ist, anhand der Bilddaten eine Entnahmeaktion des Roboters zur Entnahme des Werkstücks aus dem Behälter durch die Handeinheit zu lernen, und eine Steuervorrichtung, die darauf ausgelegt ist, eine Aktion des Roboters entsprechend einem Lernergebnis der maschinellen Lernvorrichtung zu steuern.
  • Die Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden durch die folgende genaue Beschreibung und die beiliegenden Zeichnungen verdeutlicht.
  • Figurenliste
    • 1 ist ein Blockdiagramm, das eine Konfiguration eines Robotersystems gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
    • 2 ist eine Figur, die ein Beispiel eines Roboters darstellt, den das Robotersystem umfasst.
    • 3 ist eine Figur zur Erläuterung eines Arbeitsablaufs einer Zustandsüberwachungseinheit einer maschinellen Lernvorrichtung, die das Robotersystem umfasst.
    • 4 ist eine Figur zur Erläuterung eines Arbeitsablaufs einer Verhaltensüberwachungseinheit der maschinellen Lernvorrichtung.
    • 5 ist eine Figur zur Erläuterung eines Verhaltenselements, das ein Verhaltensmuster des Roboters definiert.
    • 6 ist eine Figur zur Erläuterung eines Arbeitsablaufs einer Verschiebungsgrößen-Überwachungseinheit der maschinellen Lernvorrichtung.
    • 7 ist eine Figur zur Erläuterung eines Arbeitsablaufs einer Lerneinheit der maschinellen Lernvorrichtung.
    • 8 ist ein Ablaufdiagramm, das eine von der maschinellen Lernvorrichtung ausgeführte Lernverarbeitung darstellt.
    • 9A ist eine Figur zur Erläuterung von von einer Verhaltensbestimmungseinheit der maschinellen Lernvorrichtung erstellten Verhaltensmuster-Bestimmungsinformationen.
    • 9B ist eine Figur zur Erläuterung der von der Verhaltensbestimmungseinheit der maschinellen Lernvorrichtung erstellten Verhaltensmuster-Bestimmungsinformationen.
    • 10A ist eine Figur zur Erläuterung von von einer Reihenfolgeeinstelleinheit der maschinellen Lernvorrichtung erstellten Verhaltensanweisungsinformationen.
    • 10B ist eine Figur zur Erläuterung der von der Reihenfolgeeinstelleinheit der maschinellen Lernvorrichtung erstellten Verhaltensanweisungsinformationen.
    • 11 ist ein Ablaufdiagramm, das eine von der maschinellen Lernvorrichtung ausgeführte Lemergebnisberücksichtigungsverarbeitung darstellt.
  • Beschreibung der Ausführungsformen
  • Eine maschinelle Lernvorrichtung und ein Robotersystem gemäß einer Ausführungsform der vorliegenden Erfindung werden anhand der Zeichnungen beschrieben.
  • [Allgemeine Konfiguration des Robotersystems]
  • 1 ist ein Blockdiagramm, das eine Konfiguration eines Robotersystems 1 gemäß einer Ausführungsform der vorliegenden Erfindung darstellt. Das Robotersystem 1 umfasst einen Roboter 2, eine Bildaufnahmevorrichtung 3, eine Steuervorrichtung 4 und eine maschinelle Lernvorrichtung 5. Bei dem Robotersystem 1 lernt die maschinelle Lernvorrichtung 5 anhand von von der Bildaufnahmevorrichtung 3 ausgegebenen Bilddaten eine Aktion des Roboters 2, und die Steuervorrichtung 4 steuert die Aktion des Roboters 2 entsprechend einem Ergebnis des Lernens.
  • Der Roboter 2 wird unter Bezugnahme auf 2 beschrieben. 2 ist eine Figur, die ein Beispiel des Roboters 2 darstellt, den das Robotersystem 1 umfasst. Der Roboter 2 ist ein Roboter zur Entnahme des Werkstücks W aus einem Behälter CN, der mehrere ungeordnet übereinanderliegende Werkstücke W enthält. Der Behälter CN hat die Form einer mit einem Boden versehenen Hülle mit einer oberen Öffnung. Der Roboter 2 entnimmt das Werkstück W durch die obere Öffnung des Behälters CN.
  • Der Roboter 2 ist nicht im Besonderen auf einen bestimmten Typ beschränkt und kann ein beliebiger Roboter sein, der eine Handeinheit umfasst, die das Werkstück W aus dem Behälter CN entnehmen kann. Der Roboter 2 kann beispielsweise ein vertikaler Gelenkroboter, ein horizontaler Gelenkroboter oder ein Doppelarm-Gelenkroboter sein. Eine Konfiguration eines in 2 dargestellten sechsachsigen vertikalen Gelenkroboters wird nachstehend als Beispiel des Roboters 2 beschrieben. Die Anzahl der Achsen des vertikalen Gelenkroboters ist nicht auf sechs beschränkt. Der vertikale Gelenkroboter kann eine beliebige Anzahl an Achsen aufweisen. Der Roboter 2 umfasst eine Fußeinheit 21, eine Rumpfeinheit 22, einen ersten Arm 23, eine zweiten Arm 24, eine Handachseneinheit 25 und eine Handeinheit 26.
  • Die Fußeinheit 21 ist beispielsweise an einem Boden oder einem Sockel befestigt und weist die Form eines Kastens auf, in dem beispielsweise ein (nicht gezeigter) Antriebsmotor untergebracht ist. Die Rumpfeinheit 22 ist auf einer Oberseite der Fußeinheit 21 vorgesehen und ist sowohl in der normalen als auch in der Rückwärtsrichtung um eine erste Achse 2A drehbar, die sich längs einer vertikalen Richtung (der Richtung nach oben und unten) erstreckt. Der erste Arm 23 ist ein Armelement mit einer vorgegebenen Länge und bezogen auf eine Längsrichtung an einem Endabschnitt des ersten Arms 23 über eine zweite Achse 2B, die sich längs einer horizontalen Richtung erstreckt, an der Rumpfeinheit 22 angebracht. Der erste Arm 23 ist sowohl in der normalen als auch in der Rückwärtsrichtung um die zweite Achse 2B drehbar.
  • Der zweite Arm 24 umfasst eine Armbasis 241 und eine Armeinheit 242. Die Armbasis 241 ist ein Basisabschnitt des zweiten Arms 24 und über eine dritte Achse 2C, die sich längs einer zu der zweiten Achse 2B parallelen horizontalen Richtung erstreckt, bezogen auf die Längsrichtung an einem anderen Endabschnitt des ersten Arms 23 angebracht. Die Armbasis 241 ist sowohl in der normalen als auch in der Rückwärtsrichtung um die dritte Achse 2C drehbar. Die Armeinheit 242 ist ein Armelement mit einer vorgegebenen Länge und über eine zu der dritten Achse 2C senkrechte vierte Achse 2D bezogen auf eine Längsrichtung mit einem Endabschnitt der Armeinheit 242 an der Armbasis 241 angebracht. Die Armeinheit 242 ist sowohl in der normalen als auch in der Rückwärtsrichtung um die vierte Achse 2D drehbar.
  • Die Handachseneinheit 25 ist bezogen auf die Längsrichtung über eine fünfte Achse 2E, die sich parallel zu der zweiten Achse 2B und der dritten Achse 2C erstreckt, horizontal an einem anderen Endabschnitt der Armeinheit 242 angebracht. Die Handachseneinheit 25 ist sowohl in der normalen als auch in der Rückwärtsrichtung um die fünfte Achse 2E drehbar.
  • Die Handeinheit 26 ist ein Abschnitt, mit dem der Roboter 2 das Werkstück W aus dem Behälter CN entnimmt. Die Handeinheit 26 ist über eine zu der fünften Achse 2E vertikale sechste Achse 2F an der Handachseneinheit 25 angebracht. Die Handeinheit 26 ist sowohl in der normalen als auch in der Rückwärtsrichtung um die sechste Achse 2F drehbar. Die Handeinheit 26 ist nicht im Besonderen auf einen bestimmten Typ beschränkt und kann einen beliebigen Aufbau aufweisen, mit dem das Werkstück W in dem Behälter CN gehalten werden kann. Die Handeinheit 26 kann beispielsweise einen Aufbau, der mehrere Klauen zum Ergreifen und Halten des Werkstücks W umfasst, oder einen Aufbau aufweisen, der einen Elektromagneten oder eine Unterdruckerzeugungsvorrichtung umfasst, die eine Kraft zum Anziehen des Werkstücks W erzeugt. Bei der Ausführungsform weist die Handeinheit 26 einen Aufbau auf, der mehrere Klauen umfasst, und ergreift das Werkstück W in dem Behälter CN zur Entnahme des Werkstücks W.
  • Die Bildaufnahmevorrichtung 3 ist eine Vorrichtung, die von oben ein Bild eines Inneren des Behälters CN aufnimmt, wobei das Bild sämtliche von mehreren Werkstücken W enthält, die in dem Behälter CN enthalten sind, und Bilddaten ausgibt, die Positionsdaten zu den Werkstücken W umfassen. Gemäß der Ausführungsform ist die Bildaufnahmevorrichtung 3 eine dreidimensionale Messvorrichtung wie ein dreidimensionaler Bildsensor, der eine Kamera 31 und eine Bildverarbeitungseinheit 32 umfasst, wie in 1 dargestellt. Die Kamera 31 nimmt zum Erhalt eines Bilds, das einen Bildbereich jedes von mehreren in dem Behälter CN enthaltenen Werkstücken W enthält, von oben ein Bild des Inneren des Behälters CN auf. Die Bildverarbeitungseinheit 32 verarbeitet das mittels der Kamera 31 erhaltene Bild, um Bilddaten zu erstellen, die dreidimensionale Positionsinformationen zu jedem der Werkstücke W umfassen. Die dreidimensionalen Positionsinformationen zu jedem Werkstück werden beispielsweise durch einen Koordinatenwert (X, Y, Z) in einem rechtwinkligen XYZ-Koordinatensystem repräsentiert. Das rechtwinklige XYZ-Koordinatensystem ist ein Koordinatensystem, das so festgelegt ist, dass es eine horizontale Ebene (die XY-Ebene), die eine X-Achse und eine Y-Achse enthält, und eine zu der XY-Ebene normale Z-Achse umfasst. Die von der Bildaufnahmevorrichtung 3 ausgegebenen Bilddaten werden in eine Verschiebungsgrößen-Überwachungseinheit 63 und eine Verhaltensbestimmungseinheit 71 eingegeben, die die später beschriebene maschinelle Lernvorrichtung 5 umfasst.
  • Die Steuervorrichtung 4 steuert eine Aktion des Roboters 2 und einen Betrieb der Bildaufnahmevorrichtung 3. Die Steuervorrichtung 4 steuert die Aktion des Roboters 2 und den Betrieb der Bildaufnahmevorrichtung 3 anhand von von der Verhaltensbestimmungseinheit 71 und einer Reihenfolgeeinstelleinheit 72, die die später beschriebene maschinelle Lemvorrichtung 5 umfasst, erstellten Informationsbausteinen.
  • [Konfiguration der maschinellen Lernvorrichtung]
  • Nun wird die maschinelle Lernvorrichtung 5 beschrieben. Wie in 1 dargestellt, umfasst die maschinelle Lernvorrichtung 5 eine Lernverarbeitungseinheit 6, die eine Lernverarbeitung zum Lernen der Aktion des Roboters 2 (durch maschinelles Lernen) ausführt, und eine Lernergebnisberücksichtigungs-Verarbeitungseinheit 7, die eine Lemergebnisberücksichtigungsverarbeitung zur Berücksichtigung eines Ergebnisses des Lernens der Aktion des Roboters 2 ausführt. Hinsichtlich eines von der maschinellen Lernvorrichtung 5 ausgeführten Lernverfahrens bestehen keine besonderen Beschränkungen. So können beispielsweise „überwachtes Lernen“, „unüberwachtes Lernen“ oder „verstärkendes Lernen“ eingesetzt werden. Bei der Ausführungsform wird ein Q-Lernverfahren, bei dem es sich um verstärkendes Lernen handelt, als Verfahren zum Lernen durch die maschinelle Lernvorrichtung 5 eingesetzt. Das Q-Lernen ist ein Verfahren, bei dem eine fortlaufende Aktion des Roboters 2 in mehrere Zustände unterteilt wird und durch das aufeinanderfolgende Ändern der Zustände des Verhaltens des Roboters 2 ein Verhalten des Roboters 2 mit einem hohen Wert erlernt wird, durch das eine Belohnung erzielt werden kann. Das Q-Lernen als das von der maschinellen Lernvorrichtung 5 ausgeführte verstärkende Lernen kann beispielsweise unter Verwendung eines neuronalen Netzwerks realisiert werden. Das neuronale Netzwerk weist einen Aufbau wie den eines menschlichen Gehirns mit mehrschichtigen Logikschaltkreisen auf, die jeweils eine Funktion wie die eines Neurons (einer Nervenzelle) eines menschlichen Gehirns haben.
  • <Lemverarbeitungseinheit>
  • Die Lernverarbeitungseinheit 6 ist ein Element, das eine Lernverarbeitung zum Lernen der Aktion des Roboters 2 ausführt und eine Zustandsüberwachungseinheit 61, eine Verhaltensüberwachungseinheit 62, die Verschiebungsgrößen-Überwachungseinheit 63 und eine Lerneinheit 64 umfasst.
  • (Zustandsüberwachungseinheit)
  • 3 ist eine Figur zur Erläuterung eines Arbeitsablaufs der Zustandsüberwachungseinheit 61. 3 zeigt einen Zustand des Roboters 2 und des Behälters CN von oben betrachtet, wobei drei Werkstücke W1, W2 und W3 in dem Behälter CN zufällig aufeinander geschichtet sind. Der Roboter 2 führt eine fortlaufende Aktion zur Entnahme des Zielwerkstücks W3 aus dem Behälter CN durch die Handeinheit 26 und zur Anordnung des entnommenen Werkstücks W3 auf einer Palette PL aus. Die Zustandsüberwachungseinheit 61 überwacht den Zustand des Roboters 2, wobei sie die fortlaufende Aktion des Roboters 2 in mehrere Zustände unterteilt.
  • Hinsichtlich der Anzahl der von der Zustandsüberwachungseinheit 61 überwachten Zustände des Roboters 2 bestehen keine besonderen Beschränkungen. In 3 sind vier Zustände dargestellt, bei denen es sich um einen Zustand S1, einen Zustand S2, einen Zustand S3 und einen Zustand S4 handelt. Im Zustand S1 sind die Rumpfeinheit 22, der erste Arm 23, der zweite Arm 24, die Handachseneinheit 25 und die Handeinheit 26 des Roboters 2 hinsichtlich der Stellung jeweils so eingestellt, dass sich die Handeinheit 26 an einer vorgegebenen Position über der Palette PL befindet. Im Zustand S2 steht das Werkstück W3, das ergriffen werden soll, in dem Behälter CN kurz davor, von der Handeinheit 26 ergriffen zu werden, und die Rumpfeinheit 22, der erste Arm 23, der zweite Arm 24, die Handachseneinheit 25 und die Handeinheit 26 des Roboters 2 werden hinsichtlich der Stellung jeweils so eingestellt, dass sich die Handeinheit 26 an einer vorgegebenen Position unmittelbar über dem Werkstück W3 befindet. Im Zustand S3 werden die Rumpfeinheit 22, der erste Arm 23, der zweite Arm 24, die Handachseneinheit 25 und die Handeinheit 26 des Roboters 2 hinsichtlich der Stellung jeweils so eingestellt, dass die Handeinheit 26 das Werkstück W3, das ergriffen werden soll, in dem Behälter CN ergreift. Im Zustand S4 werden die Rumpfeinheit 22, der erste Arm 23, der zweite Arm 24, die Handachseneinheit 25 und die Handeinheit 26 des Roboters 2 hinsichtlich der Stellung jeweils so eingestellt, dass das von der Handeinheit 26 ergriffene Werkstück W3 auf der Palette PL angeordnet wird. Der Roboter 2 wechselt zur Entnahme des Zielwerkstücks W3 aus dem Behälter CN und zur Anordnung des entnommenen Werkstücks W3 auf der Palette PL mittels der Handeinheit 26 in dieser Reihenfolge fortlaufend den Zustand aus dem Zustand S1 in den Zustand S2, in den Zustand S3 und in den Zustand S4.
  • Der Zustand des Roboters 2 wird durch eine Zustandsvariable (ΔX, ΔY, ΔZ, p) definiert. Die Zustandsvariable (ΔX, ΔY, ΔZ, p) ändert sich bei einer Veränderung des Zustands des Roboters 2.
  • In dem rechtwinkligen XYZ-Koordinatensystem wird ein die Position des Werkstücks W3, das von der Handeinheit 26 ergriffen werden soll, in dem Behälter CN betreffender X-Koordinatenwert als (nachstehend als „X-Bezugswert“ bezeichneter) Bezugswert herangezogen. „ΔX“ in der Zustandsvariable bezeichnet eine Differenz zwischen dem die (nachstehend als „X-Wert der Hand“ bezeichnete) Position der Handeinheit 26 betreffenden X-Koordinatenwert und dem X-Bezugswert. In dem rechtwinkligen XYZ-Koordinatensystem wird ein die Position des Werkstücks W3, das von der Handeinheit 26 ergriffen werden soll, in dem Behälter CN betreffender Y-Koordinatenwert als (nachstehend als „Y-Bezugswert“ bezeichneter) Bezugswert herangezogen. „ΔY“ in der Zustandsvariable bezeichnet eine Differenz zwischen dem die (nachstehend als „Y-Wert der Hand“ bezeichnete) Position der Handeinheit 26 betreffenden Y-Koordinatenwert und dem Y-Bezugswert. In dem rechtwinkligen XYZ-Koordinatensystem wird ein die Position des Werkstücks W3, das von der Handeinheit 26 ergriffen werden soll, in dem Behälter CN betreffender Z-Koordinatenwert als (nachstehend als „Z-Bezugswert“ bezeichneter) Bezugswert herangezogen. „ΔZ“ in der Zustandsvariable bezeichnet eine Differenz zwischen dem die (nachstehend als „Z-Wert der Hand“ bezeichnete) Position der Handeinheit 26 betreffenden Z-Koordinatenwert und dem Z-Bezugswert. Das „p“ in der Zustandsvariable gibt an, ob die Handeinheit 26 das Werkstück W3 ergriffen hat. Das „p“ in der Zustandsvariable ist „1“, wenn die Handeinheit 26 das Werkstück W3 ergriffen hat, und „0; null“, wenn die Handeinheit 26 das Werkstück W3 nicht ergriffen hat.
  • Wenn der Zustand des Roboters 2 der Zustand S1 ist, ist die Handeinheit 26 längs der Koordinatenachsenrichtungen der X-Achse, der Y-Achse und der Z-Achse von dem Behälter CN entfernt und hat das Werkstück W3 nicht ergriffen. Hinsichtlich der Zustandsvariable (ΔX, ΔY, ΔZ, p), die den Zustand S1 des Roboters 2 definiert, geben „ΔX“, „ΔY“ und „ΔZ“ jeweils vorgegebene Werte von „XA“, „YA“ und „ZA“ an, und „p“ beträgt „0; null“.
  • Wenn der Zustand des Roboters 2 der Zustand S2 ist, ist die Handeinheit 26 längs der Richtungen der X-Achse und der Y-Achse nicht von dem Behälter CN entfernt, längs der Richtung der Z-Achse hingegen von dem Behälter CN entfernt und hat das Werkstück W3 nicht ergriffen. Hinsichtlich der Zustandsvariable (ΔX, ΔY, ΔZ, p), die den Zustand S2 des Roboters 2 definiert, geben „ΔX“ und „ΔY“ jeweils „0; null‟ an, „ΔZ“ gibt einen vorgegebenen Wert „ZA“ an, und „p“ gibt „0; null“ an.
  • Wenn der Zustand des Roboters 2 der Zustand S3 ist, ist die Handeinheit 26 längs der Koordinatenachsenrichtungen der X-Achse, der Y-Achse und der Z-Achse nicht von dem Behälter CN entfernt und hat das Werkstück W3 ergriffen. Hinsichtlich der Zustandsvariable (ΔX, ΔY, ΔZ, p), die den Zustand S3 des Roboters 2 definiert, geben „ΔX“, „ΔY“ und „ΔZ“ jeweils „0; null“ an, und „p“ gibt „1“ an.
  • Wenn der Zustand des Roboters 2 der Zustand S4 ist, ist die Handeinheit 26 längs der Koordinatenachsenrichtungen der X-Achse, der Y-Achse und der Z-Achse von dem Behälter CN entfernt und hat das Werkstück W3 ergriffen. Hinsichtlich der Zustandsvariable (ΔX, ΔY, ΔZ, p), die den Zustand S4 des Roboters 2 definiert, geben „ΔX“, „ΔY“ und „ΔZ“ jeweils die vorgegebenen Werte „XA“, „YA“ und „ZA“ an, und „p“ gibt „1“ an.
  • Anhand der Zustandsvariable (ΔX, ΔY, ΔZ, p), die sich zusammen mit dem Wechsel des Zustands des Roboters 2 ändert, kann die Zustandsüberwachungseinheit 61 erkennen, in welchem Zustand unter dem Zustand S1, dem Zustand S2, dem Zustand S3 und dem Zustand S4 der Roboter 2 sich befindet. Wenn der Zustand des Roboters 2 entweder der Zustand S1, der Zustand S2 oder der Zustand S3 ist, existieren beispielsweise mehrere Unterzustände mit unterschiedlichen Stellungen der Rumpfeinheit 22, des ersten Arms 23, des zweiten Arms 24, der Handachseneinheit 25 oder der Handeinheit 26. Wenn der Zustand des Roboters 2 entweder der Zustand S1, der Zustand S2 oder der Zustand S3 ist, überwacht die Zustandsüberwachungseinheit 61 auch den Unterzustand. Hinsichtlich des Zustands S4, der der letztendliche Zielzustand des Roboters 2 zur Anordnung des von der Handeinheit 26 ergriffenen Werkstücks W3 auf der Palette PL ist, existiert kein Unterzustand wie im Zustand S1, im Zustand S2 und im Zustand S3.
  • (Verhaltensüberwachungseinheit)
  • 4 ist eine Figur zur Erläuterung eines Arbeitsablaufs der Verhaltensüberwachungseinheit 62. Hinsichtlich des Zustands des Roboters 2 zeigt 4, dass im Zustand S1 mehrere Unterzustände „S1-1, S1-2, ... und S 1-n“, im Zustand S2 mehrere Unterzustände „S2-1, S2-2, ... und S2-n“ und im Zustand S3 mehrere Unterzustände „S3-1, S3-2, ... und S3-n“ existieren.
  • Die Verhaltensüberwachungseinheit 62 überwacht ein Verhaltensmuster des Roboters 2, das den Zustand verändert. Genauer ist das von der Verhaltensüberwachungseinheit 62 überwachte Verhaltensmuster des Roboters 2 ein Verhaltensmuster zum Überführen des Zustands des Roboters 2 aus dem Zustand S1 in den Zustand S2, ein Verhaltensmuster zum Überführen des Zustands aus dem Zustand S2 in den Zustand S3 und ein Verhaltensmuster zum Überführen des Zustands aus dem Zustand S3 in den Zustand S4. Der Roboter 2 kann beim Wechseln des Zustands mehrere Verhaltensmuster (Verhalten A1, Verhalten A2, ... und Verhalten An) annehmen, wobei die Anzahl an Mustern von der Anzahl der Unterzustände in jedem unter dem Zustand S1, dem Zustand S2 und dem Zustand S3 abhängt. Wenn der Zustand des Roboters 2 aus dem Zustand S2 in den Zustand S3 wechselt, wird von dem Handeinheit 26 eine Entnahmeaktion zur Entnahme des Zielwerkstücks W aus dem Behälter CN ausgeführt.
  • Verhaltenselemente, die das von der Verhaltensüberwachungseinheit 62 überwachte Verhaltensmuster des Roboters 2 definieren, umfassen, wie in 5 dargestellt, einen Greifwinkel θ, eine Greifposition HP, einen Drehwinkel β1 um die erste Achse 2A, ein Drehgeschwindigkeitsmuster um die erste Achse 2A, einen Drehwinkel β2 um die zweite Achse 2B, ein Drehgeschwindigkeitsmuster um die zweite Achse 2B, einen Drehwinkel β3 um die dritte Achse 2C, ein Drehgeschwindigkeitsmuster um die dritte Achse 2C, einen Drehwinkel β4 um die vierte Achse 2D, ein Drehgeschwindigkeitsmuster um die vierte Achse 2D, einen Drehwinkel β5 um die fünfte Achse 2E, ein Drehgeschwindigkeitsmuster um die fünfte Achse 2E, einen Drehwinkel β6 um die sechste Achse 2F und ein Drehgeschwindigkeitsmuster um die sechste Achse 2F. Wie vorstehend beschrieben, ist die Anzahl der Achsen des Roboters 2, der ein vertikaler Gelenkroboter ist, nicht auf sechs beschränkt und kann jede beliebige Anzahl sein. Daher hängen die Drehwinkel und die Drehgeschwindigkeitsmuster um die jeweiligen Achsen, die die Verhaltenselemente umfassen, die das Verhaltensmuster des Roboters 2 definieren, von der Anzahl der Achsen ab.
  • Der Greifwinkel 0 ist ein Winkel zwischen zwei Klauen zum Ergreifen des Werkstücks W durch die Handeinheit 26 (siehe 2). Die Greifposition HP bezeichnet eine Position, an der das Zielwerkstück W ergriffen wird, wenn die Handeinheit 26 das Zielwerkstück W entnimmt. Der Drehwinkel β1 um die erste Achse 2A bezeichnet den Drehwinkel, um den die Rumpfeinheit 22 um die erste Achse 2A gedreht wird, wenn sich der Zustand des Roboters 2 ändert. Die Rumpfeinheit 22 ist sowohl in der normalen als auch in der Rückwärtsrichtung um die erste Achse 2A drehbar. Der Drehwinkel β1 wird ein „positiver; Plus-Drehwinkel“, wenn die Rumpfeinheit 22 in der normalen Richtung gedreht wird, und ein „negativer; Minus-Drehwinkel“ wenn die Rumpfeinheit 22 in der umgekehrten Richtung gedreht wird. Der Drehwinkel β2 um die zweite Achse 2B bezeichnet den Drehwinkel, um den der erste Arm 23 um die zweite Achse 2B gedreht wird, wenn sich der Zustand des Roboters 2 ändert. Der erste Arm 23 ist sowohl in der normalen als auch in der Rückwärtsrichtung um die zweite Achse 2B drehbar. Der Drehwinkel β2 wird ein „positiver; Plus-Drehwinkel“, wenn der erste Arm 23 in der normalen Richtung gedreht wird, und ein „negativer; Minus-Drehwinkel“, wenn der erste Arm 23 in der umgekehrten Richtung gedreht wird. Der Drehwinkel β3 um die dritte Achse 2C bezeichnet den Drehwinkel, um den die Armbasis 241 um die dritte Achse 2C gedreht wird, wenn sich der Zustand des Roboters 2 ändert. Die Armbasis 241 ist sowohl in der normalen als auch in der Rückwärtsrichtung um die dritte Achse 2C drehbar. Der Drehwinkel ß3 wird ein „positiver; Plus-Drehwinkel“, wenn die Armbasis 241 in der normalen Richtung gedreht wird, und ein „negativer; Minus-Drehwinkel“, wenn die Armbasis 241 in der umgekehrten Richtung gedreht wird.
  • Der Drehwinkel β4 um die vierte Achse 2D bezeichnet den Drehwinkel, um den die Armeinheit 242 um die vierte Achse 2D gedreht wird, wenn sich der Zustand des Roboters 2 ändert. Die Armeinheit 242 ist sowohl in der normalen als auch in der Rückwärtsrichtung um die vierte Achse 2D drehbar. Der Drehwinkel β4 wird ein „positiver; Plus-Drehwinkel“, wenn die Armeinheit 242 in der normalen Richtung gedreht wird, und ein „negativer; Minus-Drehwinkel“, wenn die Armeinheit 242 in der umgekehrten Richtung gedreht wird. Der Drehwinkel ß5 um die fünfte Achse 2E bezeichnet den Drehwinkel, um den die Handachseneinheit 25 um die fünfte Achse 2E gedreht wird, wenn sich der Zustand des Roboters 2 ändert. Die Handachseneinheit 25 ist sowohl in der normalen als auch in der Rückwärtsrichtung um die fünfte Achse 2E drehbar. Der Drehwinkel β5 wird ein „positiver; Plus-Drehwinkel“, wenn die Handachseneinheit 25 in der normalen Richtung gedreht wird, und ein „negativer; Minus-Drehwinkel“, wenn die Handachseneinheit 25 in der umgekehrten Richtung gedreht wird. Der Drehwinkel β6 um die sechste Achse 2F bezeichnet den Drehwinkel, um den die Handeinheit 26 um die sechste Achse 2F gedreht wird, wenn sich der Zustand des Roboters 2 ändert. Die Handeinheit 26 ist sowohl in der normalen als auch in der Rückwärtsrichtung um die sechste Achse 2F drehbar. Der Drehwinkel β6 wird ein „positiver; Plus-Drehwinkel“, wenn die Handeinheit 26 in der normalen Richtung gedreht wird, und ein „negativer; Minus-Drehwinkel“, wenn die Handeinheit 26 in der umgekehrten Richtung gedreht wird.
  • Die Drehgeschwindigkeitsmuster der Achsen 2A bis 2F bezeichnen jeweils ein Muster der Drehgeschwindigkeit um jede Achse und sind in ein erstes Muster, ein zweites Muster und ein drittes Muster eingeteilt, die in 5 dargestellt sind. Das erste Muster der Drehgeschwindigkeit weist zwei Bereiche auf, bei denen es sich um einen ansteigenden Bereich, in dem die Drehgeschwindigkeit im zeitlichen Ablauf linear erhöht wird, und einen absteigenden Bereich handelt, in dem die Drehgeschwindigkeit im zeitlichen Ablauf gegenüber der letzten Drehgeschwindigkeit im ansteigenden Bereich linear verringert wird. Das zweite Muster der Drehgeschwindigkeit weist drei Bereiche auf, bei denen es sich um einen ansteigenden Bereich, in dem die Drehgeschwindigkeit im zeitlichen Ablauf linear erhöht wird, einen konstanten Geschwindigkeitsbereich, in dem die Drehgeschwindigkeit über einen Zeitabschnitt konstant auf der letzten Drehgeschwindigkeit im ansteigenden Bereich gehalten wird, und einen absteigenden Bereich handelt, in dem die Drehgeschwindigkeit im zeitlichen Ablauf gegenüber der letzten Drehgeschwindigkeit im konstanten Geschwindigkeitsbereich linear verringert wird. Das dritte Muster der Drehgeschwindigkeit weist zwei Bereiche auf, bei denen es sich um einen ansteigenden Bereich, in dem die Drehgeschwindigkeit im zeitlichen Ablauf kurvenförmig erhöht wird, und einen absteigenden Bereich handelt, in dem die Drehgeschwindigkeit im zeitlichen Ablauf gegenüber der letzten Drehgeschwindigkeit im ansteigenden Bereich kurvenförmig verringert wird.
  • Die Verhaltensüberwachungseinheit 62 kann anhand der Verhaltenselemente eine Änderung des Zustands des Verhaltensmusters des Roboters 2 erkennen.
  • (Verschiebungsgrößen-Überwachungseinheit)
  • 6 ist eine Figur zur Erläuterung eines Arbeitsablaufs der Verschiebungsgrößen-Überwachungseinheit 63. Die Verschiebungsgrößen-Überwachungseinheit 63 überwacht eine durch den Wechsel des Zustands des Roboters 2 aus dem Zustand S2 in den Zustand S3 verursachte, d.h. aus der Entnahmeaktion zur Entnahme des Zielwerkstücks W aus dem Behälter CN durch die Handeinheit 26 resultierende Werkstückverschiebungsgröße. Die Werkstückverschiebungsgröße bezeichnet eine Verschiebungsgröße jedes der Nicht-Zielwerkstücke W mit Ausnahme des von der Handeinheit 26 entnommen Zielwerkstücks W in dem Behälter CN. Die Verschiebungsgrößen-Überwachungseinheit 63 überwacht die Werkstückverschiebungsgrößen der Nicht-Zielwerkstücke W anhand von vor und nach der Entnahmeaktion des Roboters 2 aufgenommen und von der Bildaufnahmevorrichtung 3 ausgegebenen Bilddatenelementen.
  • Bei dem in 6 dargestellten Beispiel wird durch einen von der Kamera 31 der Bildaufnahmevorrichtung 3 vor dem Ausführen der Entnahmeaktion durch den Roboter 2 ausgeführten Bildaufnahmevorgang ein Bezugsbild GS beschafft, und die Bildverarbeitungseinheit 32 führt zur Erstellung von Bezugsbilddaten GDS eine Bildverarbeitung an dem Bezugsbild GS aus. Das Bezugsbild GS umfasst Bildbereiche, die drei Werkstücke W1, W2 und W3 betreffen, die zufällig aufeinandergeschichtet und in dem Behälter CN enthalten sind, wobei die Bildbereiche ein dem Werkstück W1 entsprechender Bildbereich GW1, ein dem Werkstück W2 entsprechender Bildbereich GW2 und ein dem Werkstück W3 entsprechender Bildbereich GW3 sind. Die Bezugsbilddaten GDS umfassen Informationen, die einen Koordinatenwert (X1, Y1, Z1) betreffen, bei dem es sich um dreidimensionale Positionsinformationen zu dem Werkstück W1 handelt, Informationen, die einen Koordinatenwert (X2, Y2, Z2) betreffen, bei dem es sich um dreidimensionale Positionsinformationen zu dem Werkstück W2 handelt, und Informationen, die einen Koordinatenwert (X3, Y3, Z3) betreffen, bei dem es sich um dreidimensionale Positionsinformationen zu dem Werkstück W3 handelt.
  • Bei dem in 6 dargestellten Beispiel werden durch den von der Kamera 31 der Bildaufnahmevorrichtung 3 nach dem Ausführen der Entnahmeaktion durch den Roboter 2 ausgeführten Bildaufnahmevorgang ein erstes Bild G1, ein zweites Bild G2 und ein drittes Bild G3 beschafft, und die Bildverarbeitungseinheit 32 führt zur Erstellung der ersten Bilddaten GD1, der zweiten Bilddaten GD2 und der dritten Bilddaten GD3 jeweils eine Bildverarbeitung an den Bildern G1, G2 und G3 aus.
  • Das erste Bild G1 und die ersten Bilddaten GD1 zeigen jeweils ein Bild und Bilddaten, die nach der Entnahme des Werkstücks W3 durch den Roboter 2 entsprechend dem Verhaltensmuster A1 aufgenommen wurden. Das erste Bild G1 umfasst nach der Entnahme des Werkstücks W3 entsprechend dem Verhaltensmuster A1 aufgenommene Bildbereiche für die Werkstücke W1 und W2, wobei die Bildbereiche ein dem Werkstück W1 entsprechender Bildbereich GW1 und ein dem Werkstück W2 entsprechender Bildbereich GW2 sind. Die ersten Bilddaten GD1 umfassen Informationen, die einen Koordinatenwert (X11, Y11, Z11) betreffen, bei dem es sich um dreidimensionale Positionsinformationen zu dem Werkstück W1 handelt, und Informationen, die einen Koordinatenwert (X21, Y21, Z21) betreffen, bei dem es sich um dreidimensionale Positionsinformationen zu dem Werkstück W2 handelt.
  • Das zweite Bild G2 und die zweiten Bilddaten GD2 zeigen jeweils ein Bild und Bilddaten, die nach der Entnahme des Werkstücks W3 durch den Roboter 2 entsprechend dem Verhaltensmuster A2 aufgenommen wurden. Das zweite Bild G2 umfasst nach der Entnahme des Werkstücks W3 entsprechend dem Verhaltensmuster A2 aufgenommene Bildbereiche für die Werkstücke W1 und W2, wobei die Bildbereiche ein dem Werkstück W1 entsprechender Bildbereich GW1 und ein dem Werkstück W2 entsprechender Bildbereich GW2 sind. Die zweiten Bilddaten GD2 umfassen Informationen, die einen Koordinatenwert (XI2, Y12, Z12) betreffen, bei dem es sich um dreidimensionale Positionsinformationen zu dem Werkstück W1 handelt, und Informationen, die einen Koordinatenwert (X22, Y22, Z22) betreffen, bei dem es sich um dreidimensionale Positionsinformationen zu dem Werkstück W2 handelt.
  • Das dritte Bild G3 und die dritten Bilddaten GD3 zeigen jeweils ein Bild und Bilddaten, die nach der Entnahme des Werkstücks W2 durch den Roboter 2 entsprechend dem Verhaltensmuster A3 aufgenommen wurden. Das dritte Bild G3 umfasst nach der Entnahme des Werkstücks W2 entsprechend dem Verhaltensmuster A3 aufgenommene Bildbereiche für die Werkstücke W1 und W3, wobei die Bildbereiche ein dem Werkstück W1 entsprechender Bildbereich GW1 und ein dem Werkstück W3 entsprechender Bildbereich GW3 sind. Die dritten Bilddaten GD3 umfassen Informationen, die einen Koordinatenwert (X13, Y13, Z13) betreffen, bei dem es sich um dreidimensionale Positionsinformationen zu dem Werkstück W1 handelt, und Informationen, die einen Koordinatenwert (X33, Y33, Z33) betreffen, bei dem es sich um dreidimensionale Positionsinformationen zu dem Werkstück W3 handelt.
  • Die Verschiebungsgrößen-Überwachungseinheit 63 überwacht anhand der Bezugsbilddaten GDS und der ersten Bilddaten GD1 eine erste Werkstückverschiebungsgröße WD1, die die aus der Entnahme des Werkstücks W3 entsprechend dem Verhaltensmuster A1 resultierenden Verschiebungsgrößen der Werkstücke W1 und W2 in dem Behälter CN angibt. Die erste Werkstückverschiebungsgröße WD1 umfasst eine Werkstückverschiebungsgröße (XD11, YD11, ZD11) des Werkstücks W1 und eine Werkstückverschiebungsgröße (XD21, YD21, ZD21) des Werkstücks W2. „XD11“ in der Werkstückverschiebungsgröße des Werkstücks W1 bezeichnet eine Differenz zwischen einem X-Koordinatenwert „X1“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1 und einem X-Koordinatenwert „X11“ in den in den ersten Bilddaten GD1 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1. „YD11“ in der Werkstückverschiebungsgröße des Werkstücks W1 bezeichnet eine Differenz zwischen einem Y-Koordinatenwert „Y1‟ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1 und einem Y-Koordinatenwert „Y11“ in den in den ersten Bilddaten GD1 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1. „ZD11“ in der Werkstückverschiebungsgröße des Werkstücks W1 bezeichnet eine Differenz zwischen einem Z-Koordinatenwert „Z1“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1 und einem Z-Koordinatenwert „ZD11“ in den in den ersten Bilddaten GD1 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1.
  • Ähnlich bezeichnet „XD21“ in der Werkstückverschiebungsgröße des Werkstücks W2 eine Differenz zwischen dem X-Koordinatenwert „X2“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2 und dem X-Koordinatenwert „X21“ in den in den ersten Bilddaten GD1 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2. „YD21“ in der Werkstückverschiebungsgröße des Werkstücks W2 bezeichnet eine Differenz zwischen dem Y-Koordinatenwert „Y2“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2 und dem Y-Koordinatenwert „Y21“ in den in den ersten Bilddaten GD1 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2. „ZD21“ in der Werkstückverschiebungsgröße des Werkstücks W2 bezeichnet eine Differenz zwischen dem Z-Koordinatenwert „Z2“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2 und dem Z-Koordinatenwert „Z21“ in den in den ersten Bilddaten GD1 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2.
  • Wie aus einem Vergleich des Bezugsbilds GS mit dem ersten Bild G1 ersichtlich, sind die Positionen der Werkstücke W1 und W2 nach der Entnahme des Werkstücks W3 entsprechend dem Verhaltensmuster A1 gegenüber den Positionen der Werkstücke W1 und W2 vor der Entnahme des Werkstücks W3 jeweils wenig verändert. Daher nehmen die Werte der Werkstückverschiebungsgröße (XD11, YD 11, ZD11) des Werkstücks W1 und die Werte der Werkstückverschiebungsgröße (XD21, YD21, ZD21) des Werkstücks W2, die in der von der Verschiebungsgrößen-Überwachungseinheit 63 überwachten ersten Werkstückverschiebungsgröße WD1 enthalten sind, jeweils einen Wert nahe „0; null“ an.
  • Die Verschiebungsgrößen-Überwachungseinheit 63 überwacht anhand der Bezugsbilddaten GDS und der zweiten Bilddaten GD2 eine zweite Werkstückverschiebungsgröße WD2, die die aus der Entnahme des Werkstücks W3 entsprechend dem Verhaltensmuster A2 resultierenden Verschiebungsgrößen der Werkstücke W1 und W2 in dem Behälter CN angibt. Die zweite Werkstückverschiebungsgröße WD2 umfasst eine Werkstückverschiebungsgröße (XD12, YD12, ZD12) des Werkstücks W1 und eine Werkstückverschiebungsgröße (XD22, YD22, ZD22) des Werkstücks W2. „XD12“ in der Werkstückverschiebungsgröße des Werkstücks W1 bezeichnet eine Differenz zwischen dem X-Koordinatenwert „X1“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1 und dem X-Koordinatenwert „X12“ in den in den zweiten Bilddaten GD2 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1. „YD12“ in der Werkstückverschiebungsgröße des Werkstücks W1 bezeichnet eine Differenz zwischen dem Y-Koordinatenwert „Y1“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1 und dem Y-Koordinatenwert „Y12“ in den in den zweiten Bilddaten GD2 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1. „ZD12“ in der Werkstückverschiebungsgröße des Werkstücks W1 bezeichnet eine Differenz zwischen dem Z-Koordinatenwert „Z1“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1 und dem Z-Koordinatenwert „Z12“ in den in den zweiten Bilddaten GD2 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1.
  • Ähnlich bezeichnet „YD22“ in der Werkstückverschiebungsgröße des Werkstücks W2 eine Differenz zwischen dem X-Koordinatenwert „X2“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2 und dem X-Koordinatenwert „X22“ in den in den zweiten Bilddaten GD2 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2. „YD22“ in der Werkstückverschiebungsgröße des Werkstücks W2 bezeichnet eine Differenz zwischen dem Y-Koordinatenwert „Y2“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2 und dem Y-Koordinatenwert „Y22“ in den in den zweiten Bilddaten GD2 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2. „ZD22“ in der Werkstückverschiebungsgröße des Werkstücks W2 bezeichnet eine Differenz zwischen dem Z-Koordinatenwert „Z2“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2 und dem Z-Koordinatenwert „Z22“ in den in den zweiten Bilddaten GD2 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2.
  • Wie aus einem Vergleich des Bezugsbilds GS mit dem zweiten Bild G2 ersichtlich, ist die Position des Werkstücks W1 nach der Entnahme des Werkstücks W3 entsprechend dem Verhaltensmuster A2 gegenüber der Position des Werkstücks W1 vor der Entnahme des Werkstücks W3 wenig verändert, wogegen sich die Position des Werkstücks W2 verändert hat. Hinsichtlich der Werkstückverschiebungsgrößen der Werkstücke W1 und W2, die in der von der Verschiebungsgrößen-Überwachungseinheit 63 überwachten zweiten Werkstückverschiebungsgröße WD2 enthalten sind, nehmen die Werte in der Werkstückverschiebungsgröße (XD 12, YD 11, ZD11) des Werkstücks W1 jeweils einen Wert nahe „0; null“ an, wogegen die Werte in der Werkstückverschiebungsgröße (XD22, YD22, ZD22) des Werkstücks W2 jeweils einen der Verschiebung des Werkstücks W2 entsprechenden Wert annehmen.
  • Die Verschiebungsgrößen-Überwachungseinheit 63 überwacht anhand der Bezugsbilddaten GDS und der dritten Bilddaten GD3 eine dritte Werkstückverschiebungsgröße WD3, die die durch die Entnahme des Werkstücks W2 entsprechend dem Verhaltensmuster A3 verursachten Verschiebungsgrößen der Werkstücke W1 und W3 in dem Behälter CN angibt. Die dritte Werkstückverschiebungsgröße WD3 umfasst eine Werkstückverschiebungsgröße (XD13, YD13, ZD13) des Werkstücks W1 und eine Werkstückverschiebungsgröße (XD33, YD33, ZD33) des Werkstücks W3. „XD13“ in der Werkstückverschiebungsgröße des Werkstücks W1 bezeichnet eine Differenz zwischen dem X-Koordinatenwert „X1“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1 und dem X-Koordinatenwert „X13“ in den in den dritten Bilddaten GD3 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1. „YD 13“ in der Werkstückverschiebungsgröße des Werkstücks W1 bezeichnet eine Differenz zwischen dem Y-Koordinatenwert „Y1“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1 und dem Y-Koordinatenwert „Y13“ in den in den dritten Bilddaten GD3 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1. „ZD13“ in der Werkstückverschiebungsgröße des Werkstücks W1 bezeichnet eine Differenz zwischen dem Z-Koordinatenwert „Z1“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1 und dem Z-Koordinatenwert „Z13“ in den in den dritten Bilddaten GD3 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W1.
  • Ähnlich bezeichnet „XD33“ in der Werkstückverschiebungsgröße des Werkstücks W3 eine Differenz zwischen dem X-Koordinatenwert „X3“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W2 und dem X-Koordinatenwert „X33“ in den in den dritten Bilddaten GD3 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W3. „YD33“ in der Werkstückverschiebungsgröße des Werkstücks W3 bezeichnet eine Differenz zwischen dem Y-Koordinatenwert „Y3“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W3 und dem Y-Koordinatenwert „Y33“ in den in den dritten Bilddaten GD3 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W3. „ZD33“ in der Werkstückverschiebungsgröße des Werkstücks W3 bezeichnet eine Differenz zwischen dem Z-Koordinatenwert „Z3“ in den in den Bezugsbilddaten GDS enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W3 und dem Z-Koordinatenwert „Z33“ in den in den dritten Bilddaten GD3 enthaltenen dreidimensionalen Positionsinformationen zu dem Werkstück W3.
  • Wie aus einem Vergleich des Bezugsbilds GS mit dem dritten Bild G3 ersichtlich, ist die Position des Werkstücks W1 nach der Entnahme des Werkstücks W2 entsprechend dem Verhaltensmuster A3 wenig verändert gegenüber der Position des Werkstücks W1 vor der Entnahme des Werkstücks W3, wogegen sich die Position des Werkstücks W3 verändert hat. Hinsichtlich der Werkstückverschiebungsgrößen der Werkstücke W1 und W3, die in der von der Verschiebungsgrößen-Überwachungseinheit 63 überwachten dritten Werkstückverschiebungsgröße WD3 enthalten sind, nehmen die Werte in der Werkstückverschiebungsgröße (XD13, YD13, ZD13) des Werkstücks W1 jeweils einen Wert nahe „0; null“ an, wogegen die Werte in der Werkstückverschiebungsgröße (XD33, YD33, ZD33) des Werkstücks W3 jeweils einen der Verschiebung des Werkstücks W3 entsprechenden Wert annehmen.
  • Die Konfiguration der Verschiebungsgrößen-Überwachungseinheit 63 ist nicht auf eine beschränkt, die die Werkstückverschiebungsgröße anhand von Bilddatenelementen vor und nach der Entnahmeaktion des Roboters 2 aufgenommener tatsächlicher Bilder überwacht. Sie kann eine sein, die darauf ausgelegt ist, die Werkstückverschiebungsgröße anhand von Bilddatenelementen zu überwachen, für die beispielsweise VR-Bilder (virtuelle Bilder) verwendet werden. Dies bedeutet, dass die Verschiebungsgrößen-Überwachungseinheit 63 darauf ausgelegt sein kann, eine Anordnung von Werkstücken W vor und nach der Entnahmeaktion des Roboters 2 in einem VR-Raum zu reproduzieren, unter Verwendung von in dem VR-Raum reproduzierten VR-Bildern der Werkstücke W dreidimensionale Positionsinformationen zu berechnen und anhand des Ergebnisses der Berechnung Werkstückverschiebungsgrößen zu ermitteln.
  • (Lerneinheit)
  • 7 ist eine Figur zur Erläuterung eines Arbeitsablaufs der Lerneinheit 64. Die Lerneinheit 64 lernt ein optimales Verhaltensmuster des Roboters 2 beim Wechsel des Zustands des Roboters 2. Dies bedeutet, dass die Lerneinheit 64 ein optimales Verhaltensmuster des Roboters 2 für den Wechsel des Zustands des Roboters 2 aus dem Zustand S1 in den Zustand S2, ein optimales Verhaltensmuster des Roboters 2 für den Wechsel des Zustands aus dem Zustand S2 in den Zustand S3 und ein optimales Verhaltensmuster des Roboters 2 für den Wechsel des Zustands aus dem Zustand S3 in den Zustand S4 lernt. Nachstehend erfolgt eine genaue Beschreibung des Lernens des Verhaltensmusters für den Wechsel des Zustands aus dem Zustand S2 in den Zustand S3 durch den Roboter 2, wobei davon ausgegangen wird, dass das optimale Verhaltensmuster des Roboters 2 für den Wechsel des Zustands des Roboters 2 aus dem Zustand S1 in den Zustand S2 und das optimale Verhaltensmuster des Roboters 2 für den Wechsel des Zustands aus dem Zustand S3 in den Zustand S4 bereits erlernt wurden. Dies bedeutet, dass nachstehend das Lernen des Verhaltensmusters für die Entnahme des Zielwerkstücks W aus dem Behälter CN durch die Handeinheit 26 durch den Roboter 2 beschrieben wird.
  • Die Lerneinheit 64 lernt einen Einflussgrad des von der Verhaltensüberwachungseinheit 62 überwachten, zugeordneten Verhaltensmusters des Roboters 2 zur Entnahme des Zielwerkstücks W aus dem Behälter CN durch die Handeinheit 26 auf die Nicht-Zielwerkstücke W, wobei der Einflussgrad von der von der Verschiebungsgrößen-Überwachungseinheit 63 überwachten Werkstückverschiebungsgröße abhängt. Die Lerneinheit 64 lernt anhand von überwachten Daten TD, in denen das Verhaltensmuster des Roboters 2 und die Werkstückverschiebungsgröße einander zugeordnet sind, den Einflussgrad der Entnahme des Zielwerkstücks W auf das Nicht-Zielwerkstück W. Bei dem in 7 dargestellten Beispiel sind die überwachten Daten TD die Daten, in denen das Verhaltensmuster A1 der ersten Werkstückverschiebungsgröße WD1 zugeordnet ist, das Verhaltensmuster A2 der zweiten Werkstückverschiebungsgröße WD2 zugeordnet ist und das Verhaltensmuster A3 der dritten Werkstückverschiebungsgröße WD3 zugeordnet ist, wie in 6 dargestellt.
  • Wie in 1 dargestellt, umfasst die Lerneinheit 64 eine Belohnungseinstelleinheit 641 und eine Wertefunktions-Aktualisierungseinheit 642.
  • Die Belohnungseinstelleinheit 641 stellt den Einflussgrad IM auf das Nicht-Zielwerkstück W und eine Belohnung R für das von der Verhaltensüberwachungseinheit 62 überwachte Verhaltensmuster zur Entnahme des Zielwerkstücks W durch den Roboter 2 ein, wobei der Einflussgrad IM und die Belohnung R von der Werkstückverschiebungsgröße abhängen. Der Einflussgrad IM auf das Nicht-Zielwerkstück W wird auf einen Wert eingestellt, der mit der von der Verschiebungsgrößen-Überwachungseinheit 62 überwachten Werkstückverschiebungsgröße des Nicht-Zielwerkstücks W so in Wechselbeziehung steht, dass er bei einer geringeren Werkstückverschiebungsgröße einen kleineren Wert annimmt. Die Belohnungseinstelleinheit 641 vergibt eine Belohnung R mit einem ersten Wert R1 (beispielsweise „100“, der größer als 0 (null) ist) für ein Verhaltensmuster des Roboters 2, das eine Werkstückverschiebungsgröße verursacht, die kleiner als ein vorgegebener Schwellenwert WDT ist, und eine Belohnung R mit einem zweiten Wert R2 (beispielsweise 0 (null)), der kleiner als der erste Wert R1 ist, für ein Verhaltensmuster des Roboters 2, das eine Werkstückverschiebungsgröße verursacht, die dem Schwellenwert WDT entspricht oder größer als dieser ist.
  • Bei dem in 7 dargestellten Beispiel legt die Belohnungseinstelleinheit 641 für das Verhaltensmuster A1, das der ersten Werkstückverschiebungsgröße WD1 entspricht, die kleiner als der Schwellenwert WDT ist, „IM1“ als der ersten Werkstückverschiebungsgröße WD1 entsprechenden Einflussgrad IM fest und vergibt eine Belohnung R mit dem ersten Wert R1, der größer als „0; null“ ist. Die Belohnungseinstelleinheit 641 legt für das Verhaltensmuster A2, das der zweiten Werkstückverschiebungsgröße WD2 entspricht, die dem Schwellenwert WDT entspricht oder größer als dieser ist, „IM2“ als der zweiten Werkstückverschiebungsgröße WD2 entsprechenden Einflussgrad IM fest und vergibt eine Belohnung R mit dem zweiten Wert R2 (0; null). Die Belohnungseinstelleinheit 641 legt für das Verhaltensmuster A3, das der dritten Werkstückverschiebungsgröße WD3 entspricht, die dem Schwellenwert WDT entspricht oder größer als dieser ist, „IM3“ als der dritten Werkstückverschiebungsgröße WD3 entsprechenden Einflussgrad IM fest und vergibt eine Belohnung R mit dem zweiten Wert R2 (0; null).
  • Die Wertefunktions-Aktualisierungseinheit 642 aktualisiert eine Wertefunktion, die einen Wert Q(s, a) des Verhaltensmusters des Roboters 2 entsprechend der von der Belohnungseinstelleinheit 641 eingestellten Belohnung R definiert. Die Wertefunktions-Aktualisierungseinheit 642 aktualisiert die Wertefunktion unter Verwendung einer Aktualisierungsformel zur Aktualisierung des Werts Q(s, a), die durch die Formel (1) ausgedrückt wird.
    [Formel 1] Q ( s ,a ) Q ( s ,a ) + α ( R ( s ,a ) + γ max a'  Q ( s' ,a' ) Q ( s ,a ) )
    Figure DE112018007729T5_0001
  • In Formel (1) bezeichnet „s“ einen Zustand des Roboters 2 (den Zustand S2), und „a“ bezeichnet ein Verhalten (das Verhalten A1, das Verhalten A2 und das Verhalten A3) des Roboters 2, das einem Verhaltensmuster folgt. Der Zustand des Roboters 2 wechselt durch das Verhalten „a“ aus dem Zustand „s“ (dem Zustand S2) in den Zustand „s'‟ (den Zustand S3). R(s, a) bezeichnet eine für die Änderung des Zustands erhaltene Belohnung R. Der Term, der „max“ enthält, bezeichnet den mit „γ“ multiplizierten Wert Q(s', a'), wobei der Wert Q(s', a') ein Wert für die Auswahl des Verhaltens „a' im Zustand „s'‟ mit dem höchsten Wert ist. „γ“ ist ein Parameter, der als Abschwächungsrate bezeichnet wird und einen Wert in einem Bereich von 0 < y ≤ 1 (beispielsweise 0,9) aufweist. „α“ ist ein Parameter, der als Lernrate bezeichnet wird und einen Wert in einem Bereich von 0 < α ≤ 1 (beispielsweise 0,1) aufweist.
  • Formel (1) stellt eine Aktualisierungsformel zur Aktualisierung des Werts Q(s, a) des Verhaltens „a“ im Zustand „s“ anhand der von der Belohnungseinstelleinheit 641 für das Verhalten „a“ festgelegten Belohnung R(s, a) dar. Dies bedeutet, dass Formel (1) angibt, dass der Wert Q(s, a) erhöht wird, wenn eine Summe des Werts Q(s', a') des Verhaltens „a'‟ im Zustand „s'‟ und der Belohnung R(s, a) größer als der Wert Q(s, a) des Verhaltens „a“ im Zustand „s“ ist, und dass der Wert Q(s, a) verringert wird, wenn sie kleiner ist. Dies bedeutet, dass die Wertefunktions-Aktualisierungseinheit 642 die Wertefunktion unter Verwendung der durch Formel (1) ausgedrückten Aktualisierungsformel aktualisiert, um den Wert Q(s, a) des Verhaltens „a“ in einem bestimmten Zustand „s“ auf einen Wert nahe der für das Verhalten „a“ festgelegten Belohnung R und den Wert Q(s', a') des besten Verhaltens „a'‟ in dem aus dem Verhalten „a“ resultierenden nächsten Zustand „s'‟ zu ändern.
  • (Von der Lernverarbeitungseinheit ausgeführte Lernverarbeitung)
  • Wie vorstehend beschrieben, umfasst die Lernverarbeitungseinheit 6 der maschinellen Lernvorrichtung 5 die Zustandsüberwachungseinheit 61, die Verhaltensüberwachungseinheit 62, die Verschiebungsgrößen-Überwachungseinheit 63 und die Lerneinheit 64. Die von der Lernverarbeitungseinheit 6 ausgeführte Lernverarbeitung wird unter Bezugnahme auf ein Ablaufdiagramm gemäß 8 beschrieben.
  • Die Verschiebungsgrößen-Überwachungseinheit 63 ruft vor der Entnahmeaktion des Roboters 2 aufgenommene und von der Bildaufnahmevorrichtung 3 ausgegebene Bezugsbilddaten GDS (6) ab (Schritt a1). Dann überwacht die Zustandsüberwachungseinheit 61 den Zustand des Roboters 2 (Schritt a2). Genauer überwacht die Zustandsüberwachungseinheit 61 anhand der Zustandsvariable (ΔX, ΔY, ΔZ, p), die sich mit der Änderung des Zustands des Roboters 2 ändert, den Wechsel des Zustands des Roboters 2 aus dem Zustand S2 in den Zustand S3. Die Verhaltensüberwachungseinheit 62 überwacht das Verhaltensmuster des Roboters 2 beim Wechsel des Zustands des Roboters 2 aus dem Zustand S2 in den Zustand S3, d.h. bei der Ausführung der Entnahmeaktion zur Entnahme des Zielwerkstücks W aus dem Behälter CN durch die Handeinheit 26 (Schritt a3). Genauer überwacht die Verhaltensüberwachungseinheit 62 das Verhaltensmuster des Roboters 2 während einer Zustandsübergangsphase aus dem Zustand S2 in den Zustand S3 anhand der Verhaltenselemente (des Greifwinkels θ, der Greifposition HP, der Drehwinkel β1 bis β6 der Wellen und der Drehgeschwindigkeitsmuster der Wellen).
  • Dann ruft die Verschiebungsgrößen-Überwachungseinheit 63 nach dem Ausführen der Entnahmeaktion entsprechend dem von der Verhaltensüberwachungseinheit 62 überwachten Verhaltensmuster durch den Roboter 2 aufgenommene und von der Bildaufnahmevorrichtung 3 ausgegebene Bilddaten ab (Schritt a4). Anhand der vor und nach der Entnahmeaktion des Roboters 2 aufgenommen und von einer Bildaufnahmevorrichtung 3 ausgegebenen Bilddatenelemente überwacht die Verschiebungsgrößen-Überwachungseinheit 63 die durch die Entnahme des Zielwerkstücks W aus dem Behälter CN verursachte Werkstückverschiebungsgröße des Nicht-Zielwerkstücks W (Schritt a5).
  • Dann stellt die Belohnungseinstelleinheit 641 der Lerneinheit 64 den Einflussgrad IM des zugeordneten Verhaltensmusters des Roboters 2 auf das Nicht-Zielwerkstück Wein, wobei der Einflussgrad IM von der Werkstückverschiebungsgröße abhängt, und bestimmt, ob die Werkstückverschiebungsgröße kleiner als der vorgegebene Schwellenwert WDT ist (Schritt a6). Die Belohnungseinstelleinheit 641 vergibt eine Belohnung R, die größer als „0; null“ ist, für das Verhaltensmuster des Roboters 2, bei dem die Werkstückverschiebungsgröße kleiner als der Schwellenwert WDT ist (Schritt a7). Die Belohnungseinstelleinheit 641 vergibt eine Belohnung R von „0; null“ für das Verhaltensmuster des Roboters 2, das der Werkstückverschiebungsgröße zugeordnet ist, die dem Schwellenwert WDT entspricht oder größer als dieser ist (Schritt a8).
  • Dann aktualisiert die Wertefunktions-Aktualisierungseinheit 642 der Lerneinheit 64 die Wertefunktion, die den Wert Q(s, a) des Verhaltensmusters des Roboters 2 definiert, unter Verwendung der durch die Formel (1) ausgedrückten Aktualisierungsformel (Schritt a9). Die zu den vorstehend beschriebenen Schritten a1 bis a9 beschrieben Prozesse werden von der Lernverarbeitungseinheit 6 in einem Zyklus der Lernverarbeitung ausgeführt. Die Lernverarbeitungseinheit 6 bestimmt, ob die Anzahl der ausgeführten Wiederholungen des Lernvorgangs eine vorgegebene Anzahl erreicht hat (Schritt a10). Die Prozesse in Schritt a1 bis Schritt a9 werden wiederholt, bis Anzahl der Wiederholungen der Durchführung des Lernens die vorgegebene Anzahl erreicht hat.
  • Bei der Lernverarbeitungseinheit 6 wird das Verhaltensmuster des Roboters 2 zur Entnahme des Zielwerkstücks W aus dem Behälter CN von der Verhaltensüberwachungseinheit 62 überwacht, und die durch die Entnahmeaktion des Roboters 2 verursachte Werkstückverschiebungsgröße des Nicht-Zielwerkstücks W in dem Behälter CN wird von der Verschiebungsgrößen-Überwachungseinheit 63 überwacht. Anhand der überwachten Daten TD, in denen das Verhaltensmuster des Roboters 2 der Werkstückverschiebungsgröße zugeordnet ist, lernt die Lerneinheit 64 den Einflussgrad IM des zugeordneten Verhaltensmusters zur Entnahme des Zielwerkstücks W aus dem Behälter CN auf das Nicht-Zielwerkstück, wobei der Einflussgrad IM von der Werkstückverschiebungsgröße abhängt.
  • Die Werkstückverschiebungsgröße ist eine Kennzahl für eine Auswirkung einer Schlagkraft auf das Nicht-Zielwerkstück W und eine Einsturzrate der Nicht-Zielwerkstücke W, die durch die Entnahme des Zielwerkstücks W aus dem Behälter CN verursacht werden oder aus dieser resultieren. Dies bedeutet, dass die auf das Nicht-Zielwerkstück W einwirkende Schlagkraft und die Einsturzrate der Nicht-Zielwerkstücke W bei einer geringeren Werkstückverschiebungsgröße geringer sind und dass der entsprechende Einflussgrad IM auf die Nicht-Zielwerkstücke W geringer ist. Da die Lerneinheit 64 den Einflussgrad IM des zugeordneten Verhaltensmusters auf das Nicht-Zielwerkstück W lernt, wobei der Einflussgrad IM von der Werkstückverschiebungsgröße abhängt, kann die Lerneinheit 64 ein Verhaltensmuster des Roboters 2 mit einem geringen Einflussgrad IM der Entnahme des Zielwerkstücks W aus dem Behälter CN auf das Nicht-Zielwerkstück W lernen. Somit kann eine zum Verhindern einer Beschädigung des Werkstücks W optimale Entnahmeaktion des Roboters 2 mit einem geringen Einflussgrad auf die Nicht-Zielwerkstücke W gelernt werden.
  • Darüber hinaus umfasst das Verhaltenselement, das das von der Verhaltensüberwachungseinheit 62 überwachte Verhaltensmuster des Roboters 2 definiert, die Greifposition HP, an der die Handeinheit 26 das eine Zielwerkstück W bei der Entnahme des Zielwerkstücks W ergreift. Das von der Verhaltensüberwachungseinheit 62 überwachte Verhaltensmuster des Roboters 2 bildet die von der Lerneinheit 64 beim Lernen der Aktion des Roboters 2 verwendeten überwachten Daten TD. Da die Greifposition HP, an der die Handeinheit 26 das Werkstück W ergreift, als Element des Verhaltenselements einbezogen ist, das das Verhaltensmuster des Roboters 2 definiert und die überwachten Daten TD bildet, kann die Lerneinheit 64 zur Verringerung des Einflussgrads IM auf die Nicht-Zielwerkstücke W ein Verhaltensmuster des Roboters 2 lernen, das die Greifposition HP berücksichtigt.
  • <Lernergebnisberücksichtigungs-Verarbeitungseinheit>
  • Die Lernergebnisberücksichtigungs-Verarbeitungseinheit 7 der maschinellen Lernvorrichtung 5 führt eine Lemergebnisberücksichtigungsverarbeitung zur Berücksichtigung des Lernergebnisses der Lernverarbeitungseinheit 6 zu der Aktion des Roboters 2 aus. Die Lemergebnisberücksichtigungs-Verarbeitungseinheit 7 führt die Lemergebnisberücksichtigungsverarbeitung aus, wenn der Roboter 2 eine Produktionsaktion ausführt, nachdem die Lerneinheit 64 der Lernverarbeitungseinheit 6 den Einflussgrad IM gelernt hat. Die Produktionsaktion des Roboters 2 ist eine von dem Roboter 2 ausgeführte, fortlaufende Aktion zur Entnahme des Werkstücks W aus dem Behälter CN mittels der Handeinheit 26 und zur Anordnung des entnommen Werkstücks W auf einer Palette PL. Wie in 1 dargestellt, umfasst die Lemergebnisberücksichtigungs-Verarbeitungseinheit 7 die Verhaltensbestimmungseinheit 71, die Reihenfolgeeinstelleinheit 72 und eine Aktualisierungseinheit 73. Die Elemente, die die Lemergebnisberücksichtigungs-Verarbeitungseinheit 7 bilden, werden nachstehend unter Bezugnahme auf die 9A, 9B, 10A, 10B und 11 beschrieben. Die 9A und 9B sind Figuren zur Erläuterung von Elementen von von der Verhaltensbestimmungseinheit 71 erstellten Verhaltensmuster-Bestimmungsinformationen JH1 und JH1A. Die 10A und 10B sind Figuren zur Erläuterung von Elementen von von der Reihenfolgeeinstelleinheit 72 erstellten Verhaltensanweisungsinformationen JH2 und JH2A. 11 ist ein Ablaufdiagramm, das die von der Lernergebnisberücksichtigungs-Verarbeitungseinheit 7 ausgeführte Lemergebnisberücksichtigungsverarbeitung darstellt.
  • (Verhaltensbestimmungseinheit)
  • Nachdem die Lerneinheit 64 den Einflussgrad IM gelernt hat, sendet die Verhaltensbestimmungseinheit 71 über die Steuervorrichtung 4 Bildaufnahme-Anforderungsinformationen, mittels derer die Ausgabe von Bilddaten angefordert wird, an die Bildaufnahmevorrichtung 3, wenn der Roboter 2 die Produktionsaktion einleitet. Die Verhaltensbestimmungseinheit 71 erhält als Reaktion auf die Bildaufnahme-Anforderungsinformationen vor der Entnahmeaktion des Roboters 2 aufgenommene und von der Bildaufnahmevorrichtung 3 ausgegebene Bilddaten (Schritt b1 in 11). Die Verhaltensbestimmungseinheit 71 erkennt anhand der abgerufenen Bilddaten einen zufällig aufeinanderliegenden Zustand mehrerer Werkstücke W in dem Behälter CN. Die Verhaltensbestimmungseinheit 71 bestimmt für jedes Werkstück W ein von der Lerneinheit 64 erlerntes Verhaltensmuster mit dem minimalen Einflussgrad IM als Verhaltensmuster des Roboters 2 für die Entnahme des Werkstücks W aus dem Behälter CN durch die Handeinheit 26 (Schritt b2 in 11).
  • Die Verhaltensbestimmungseinheit 71 erstellt die in 9A dargestellten Verhaltensmuster-Bestimmungsinformationen JH1 als Informationen, die ein Ergebnis der Bestimmung des Verhaltensmusters für jedes Werkstück W angeben (Schritt b3 in 11). In den Verhaltensmuster-Bestimmungsinformationen JH1 werden Werkstücktypinformationen J11 zur Spezifikation jedes Werkstücks W in dem Behälter CN, Verhaltensmusterinformationen J12, die das Verhaltensmuster für jedes Werkstück W angeben, und Einflussgradinformationen J13, die den Einflussgrad IM der Entnahme des Zielwerkstücks W auf das Nicht-Zielwerkstück W angeben, einander zugeordnet.
  • Die in 9A dargestellten Verhaltensmuster-Bestimmungsinformationen JH1 werden nachstehend im Einzelnen beschrieben. Die Verhaltensbestimmungseinheit 71 erkennt anhand der von der Bildaufnahmevorrichtung 3 ausgegebenen Bilddaten den zufällig aufeinandergeschichteten Zustand der Werkstücke „W1“, „W2“, „W3“, „W4“ und „W5“ in dem Behälter CN. Die Verhaltensbestimmungseinheit 71 bestimmt ein Verhaltensmuster „Verhalten A1“, dem ein von der Lerneinheit 64 erlernter minimaler Einflussgrad IM von „20“ zugeordnet ist, als Verhaltensmuster des Roboters 2 zur Entnahme des Werkstücks „W1“ aus dem Behälter CN. Die Verhaltensbestimmungseinheit 71 bestimmt ein Verhaltensmuster „Verhalten A2“, dem ein von der Lerneinheit 64 erlernter minimaler Einflussgrad IM von „10“ zugeordnet ist, als Verhaltensmuster des Roboters 2 zur Entnahme des Werkstücks „W2“ aus dem Behälter CN. Die Verhaltensbestimmungseinheit 71 bestimmt ein Verhaltensmuster „Verhalten A3“, dem ein von der Lerneinheit 64 erlernter minimaler Einflussgrad IM von „1“ zugeordnet ist, als Verhaltensmuster des Roboters 2 zur Entnahme des Werkstücks „W3“ aus dem Behälter CN. Die Verhaltensbestimmungseinheit 71 bestimmt ein Verhaltensmuster „Verhalten A4“, dem der von der Lerneinheit 64 erlernte minimale Einflussgrad IM von „0,5“ zugeordnet ist, als Verhaltensmuster des Roboters 2 zur Entnahme des Werkstücks „W4“ aus dem Behälter CN. Die Verhaltensbestimmungseinheit 71 bestimmt ein Verhaltensmuster „Verhalten A5“, dem der von der Lerneinheit 64 erlernte minimale Einflussgrad IM von „0,1“ zugeordnet ist, als Verhaltensmuster des Roboters 2 zur Entnahme des Werkstücks „W5“ aus dem Behälter CN. Die Verhaltensmuster-Bestimmungsinformationen JH1 sind die Informationen, die, wie vorstehend beschrieben, das Ergebnis der Bestimmung des Verhaltensmusters für jedes Werkstück W durch die Verhaltensbestimmungseinheit 71 in einer Form angeben, die die einander zugeordneten Werkstücktypinformationen J11, Verhaltensmusterinformationen J12 und Einflussgradinformationen J13 umfasst.
  • Die von der Verhaltensbestimmungseinheit 71 erstellten Verhaltensmuster-Bestimmungsinformationen JH1 werden an die Steuervorrichtung 4 ausgegeben. Die Steuervorrichtung 4, in die die Verhaltensmuster-Bestimmungsinformationen JH1 eingegeben werden, kann die Entnahmeaktion des Roboters 2 entsprechend den Verhaltensmuster-Bestimmungsinformationen JH1 steuern.
  • Die Verhaltensbestimmungseinheit 71 bestimmt zur Berücksichtigung des Lernergebnisses der Lerneinheit 64 bei der Entnahmeaktion durch den Roboter 2 bei einer tatsächlichen Produktion für jedes Werkstück W ein Verhaltensmuster mit einem minimalen Einflussgrad IM als Verhaltensmuster des Roboters 2 zur Entnahme des Werkstücks W aus dem Behälter CN. Bei der tatsächlichen Produktion folgt der Roboter 2 bei jedem Werkstück W dem von der Verhaltensbestimmungseinheit 71 bestimmten Verhaltensmuster und führt dadurch eine optimale Entnahmeaktion mit einem geringen Einflussgrad IM auf das Nicht-Zielwerkstück W aus, wodurch Beschädigungen des Werkstücks W verhindert werden.
  • Die Verhaltensbestimmungseinheit 71 bestimmt das Verhaltensmuster des Roboters 2 für jedes Werkstück W in dem Behälter CN anhand der durch eine einzige Aufnahme aufgenommen und von der Bildaufnahmevorrichtung 3 ausgegebenen Bilddaten. Dies bedeutet, dass die Bildaufnahmevorrichtung 3 bei der tatsächlichen Produktion nicht immer jedes Mal ein Bild aufnimmt, wenn das Werkstück W entnommen wird, um das Verhaltensmuster des Roboters 2 für die Entnahme des Werkstücks W zu bestimmen. Das Verhaltensmuster des Roboters 2 für jedes Werkstück W in dem Behälter CN wird anhand der durch eine einzige Aufnahme aufgenommenen Bilddaten bestimmt, und der Roboter 2 kann den bestimmten Verhaltensmustern folgend mehrere Werkstücke W nacheinander entnehmen. Auf diese Weise kann die Anzahl der Aufnahmen zum Aufnehmen von Bildern mittels der Bildaufnahmevorrichtung 3 bei der tatsächlichen Produktion verringert werden, und eine Leerlaufzeit des Roboters 2 aufgrund der Aufnahme von Bildern kann verkürzt werden, wodurch eine Effizienz der Produktion verbessert wird.. Wenn der Roboter 2 ein zweiarmiger Roboter oder ein Roboter mit mehreren Handeinheiten 26 ist, können fortlaufend mehrere Werkstücke W entnommen werden, indem dem von der Verhaltensbestimmungseinheit 71 bestimmten Verhaltensmuster gefolgt wird. Dadurch kann bei einem zweiarmigen Roboter oder einem Roboter mit mehreren Handeinheiten 26 die Effektivität der Produktion weiter verbessert werden.
  • Auf den Empfang von der später beschriebenen Aktualisierungseinheit 73 ausgegebener Aktualisierungsanforderungsinformationen, mittels derer eine Aktualisierung der Verhaltensmusters-Bestimmungsinformationen JH1 angefordert wird, hin aktualisiert die Verhaltensbestimmungseinheit 71 den Vorgang der Bestimmung des Verhaltensmusters des Roboters 2, erstellt in 9B dargestellte, aktualisierte Verhaltensmuster-Bestimmungsinformationen JH1A und gibt die aktualisierten Verhaltensmuster-Bestimmungsinformationen JH1A an die Steuervorrichtung 4 aus. Die Steuervorrichtung 4, in die die aktualisierten Verhaltensmuster-Bestimmungsinformationen JH1A eingegeben werden, kann die Entnahmeaktion des Roboters 2 anhand der Verhaltensmuster-Bestimmungsinformationen JH1A steuern. Die Einzelheiten zu den aktualisierten Verhaltensmuster-Bestimmungsinformationen JH1A werden später beschrieben.
  • (Reihenfolgeeinstelleinheit)
  • Die Reihenfolgeeinstelleinheit 72 nimmt auf die Verhaltensmuster-Bestimmungsinformationen JH1 Bezug und stellt anhand der von der Verhaltensbestimmungseinheit 71 bestimmten Verhaltensmuster des Roboters 2 eine Entnahmereihenfolge für die Entnahme des Werkstücke W aus dem Behälter CN so ein, dass ein Verhaltensmuster mit einem geringeren Einflussgrad IM höher eingestuft wird (Schritt b4 in 11).
  • Die Reihenfolgeeinstelleinheit 72 erstellt in 10A dargestellte Verhaltensanweisungsinformationen JH2 als Informationen, die ein Ergebnis der Festlegung der Entnahmereihenfolge angeben (Schritt b5 in 11). Die Verhaltensanweisungsinformationen JH2 umfassen Einflussbezugswertinformationen J21, die einen Bezugswert IMS des Einflussgrads IM angeben, und Verhaltenslisteninformationen J22. Auf den in den Einflussbezugswertinformationen J21 angegebenen Bezugswert IMS wird Bezug genommen, wenn die später beschriebene Aktualisierungseinheit 73 die Entnahmeaktion des Roboters 2 überwacht. In den Verhaltenslisteninformationen J22 wird aus Daten, in denen die Werkstücktypinformationen J11, die Verhaltensmusterinformationen J12 und die Einflussgradinformationen J13 einander zugeordnet sind, eine in der von der Reihenfolgeeinstelleinheit 72 für die Entnahme der Werkstücke W eingestellten Entnahmereihenfolge geordnete Liste gebildet. Dies bedeutet, dass in den Verhaltenslisteninformationen J22 aus den Daten, in in denen die Werkstücktypinformationen J11, die Verhaltensmusterinformationen J12 und die Einflussgradinformationen J13 einander zugeordnet sind, eine Liste von Elementen gebildet wird, die in aufsteigender Reihenfolge des in den Einflussgradinformationen J13 angegebenen Einflussgrads IM geordnet sind.
  • Die von der Reihenfolgeeinstelleinheit 72 erstellten Verhaltensanweisungsinformationen JH2 werden an die Steuervorrichtung 4 ausgegeben (Schritt b6 in 11). Die Steuervorrichtung 4, in die die Verhaltensanweisungsinformationen JH2 eingegeben werden, kann die Entnahmeaktion des Roboters 2 entsprechend den in den Verhaltensanweisungsinformationen JH2 enthaltenen Verhaltenslisteninformationen J22 der Entnahmereihenfolge für die Entnahme der Werkstücke W folgend steuern. Die in den Verhaltensanweisungsinformationen JH2 enthaltenen Verhaltenslisteninformationen J22 entsprechen den von der Verhaltensbestimmungseinheit 71 erstellten Verhaltensmuster-Bestimmungsinformationen JH1 mit der Ausnahme, dass die Reihenfolge der Daten, in denen die Werkstücktypinformationen J11, die Verhaltensmusterinformationen J12 und die Einflussgradinformationen J13 einander zugeordnet sind, eine andere ist. Daher werden bei der Ausgabe der Verhaltensanweisungsinformationen JH2 an die Steuervorrichtung 4 die Verhaltensmuster-Bestimmungsinformationen JH1 nicht an die Steuervorrichtung 4 ausgegeben.
  • Wie vorstehend beschrieben, legt die Reihenfolgeeinstelleinheit 72 die Entnahmereihenfolge für die Entnahme der Werkstücke W aus dem Behälter CN fest. Bei der tatsächlichen Produktion entnimmt der Roboter 2 lediglich der von der Reihenfolgeeinstelleinheit 72 eingestellten Entnahmereihenfolge folgend die Werkstücke W aus dem Behälter CN. Der Roboter 2 kann dadurch die Entnahmeaktion so ausführen, dass das Werkstück W mit einem geringeren Einflussgrad IM auf das Nicht-Zielwerkstück W zuerst entnommen wird.
  • Auf den Empfang der Aktualisierungsanforderungsinformationen, mittels derer eine Aktualisierung der Verhaltensanweisungsinformationen JH2 angefordert wird und die von der später beschriebenen Aktualisierungseinheit 73 ausgegeben werden, hin aktualisiert die Reihenfolgeeinstelleinheit 72 den Vorgang der Einstellung der Entnahmereihenfolge für die Entnahme der Werkstücke W, erstellt die in 10B dargestellten aktualisierten Verhaltensanweisungsinformationen JH2A und gibt die aktualisierten Verhaltensanweisungsinformationen JH2A an die Steuervorrichtung 4 aus. Die Steuervorrichtung 4, in die die aktualisierten Verhaltensanweisungsinformationen JH2A eingegeben werden, kann die Entnahmeaktion des Roboters 2 entsprechend den in den Verhaltensanweisungsinformationen JH2A enthaltenen Verhaltenslisteninformationen J22 der Entnahmereihenfolge für die Entnahme der Werkstücke W folgend steuern. Die Einzelheiten zu den aktualisierten Verhaltensanweisungsinformationen JH2A werden später beschrieben.
  • (Aktualisierungseinheit)
  • Die Aktualisierungseinheit 73 überwacht die der von der Reihenfolgeeinstelleinheit 72 eingestellten Entnahmereihenfolge für die Entnahme der Werkstücke W folgende Entnahmeaktion des Roboters 2, wenn der Roboter 2 die von der Steuervorrichtung 4 entsprechend den in den Verhaltensanweisungsinformationen JH2 enthaltenen Verhaltenslisteninformationen J22 gesteuerte Produktionsaktion ausführt (Schritt b7 in 11). Die Aktualisierungseinheit 73 bestimmt, ob sämtliche der jeweils mit einem in den Einflussgradinformationen J13 angegebenen Einflussgrad IM, der kleiner als der in den Einflussbezugswertinformationen J21 angegebene vorgegebene Bezugswert IMS ist, eingestuften Werkstücke W aus dem Behälter CN entnommen wurden (Schritt b8 in 11). Wenn bestimmt wird, dass sämtliche der jeweils mit einem Einflussgrad IM, der kleiner als der vorgegebene Bezugswert IMS ist, eingestuften Werkstücke W entnommen wurden, bestimmt die Aktualisierungseinheit 73, ob ein mit einem Einflussgrad IM, der dem Bezugswert IMS entspricht oder höher als dieser ist, eingestuftes Werkstück W vorhanden ist (Schritt b9 in 11).
  • Die Aktualisierungseinheit 73 aktualisiert den Arbeitsablauf der Verhaltensbestimmungseinheit 71 zur Bestimmung des Verhaltensmusters und den Arbeitsablauf der Reihenfolgeeinstelleinheit 72 zur Einstellung der Entnahmereihenfolge für die Entnahme des Werkstücks W, wenn sämtliche der jeweils mit einem Einflussgrad IM, der kleiner als der Bezugswert IMS ist, eingestuften Werkstücke W entnommen wurden und das mit einem Einflussgrad IM, der dem Bezugswert IMS entspricht oder höher als dieser ist, eingestufte Werkstück W vorhanden ist. Die Aktualisierungseinheit 73 gibt zur Aktualisierung der Arbeitsabläufe der Verhaltensbestimmungseinheit 71 und der Reihenfolgeeinstelleinheit 72 die Aktualisierungsanforderungsinformationen, mittels derer eine Aktualisierung der Verhaltensmuster-Bestimmungsinformationen JH1 angefordert wird, an die Verhaltensbestimmungseinheit 71 und die Aktualisierungsanforderungsinformationen, mittels derer eine Aktualisierung der Verhaltensanweisungsinformationen JH2 angefordert wird, an die Reihenfolgeeinstelleinheit 72 aus (Schritt b10 in 11).
  • Ein Arbeitsablauf der Aktualisierungseinheit 73 wird unter Bezugnahme auf die in 10A dargestellten Verhaltensanweisungsinformationen JH2 beschrieben. Der von der Steuervorrichtung 4 gesteuerte Roboter 2 führt die Entnahmeaktion der in die Verhaltenslisteninformationen J22 eingetragenen Entnahmereihenfolge folgend entsprechend dem in den Verhaltensmusterinformationen J12 angegebenen Verhaltensmuster aus, wobei die Entnahmereihenfolge so eingestellt ist, dass das Werkstück W mit einem in den Einflussgradinformationen J13 angegebenen geringeren Einflussgrad IM zuerst entnommen wird. Die Aktualisierungseinheit 73 überwacht die Entnahmeaktion des Roboters 2. Bei dem in 10A dargestellten Beispiel sind die Werkstücke W5, W4 und W3 mit der Einstufung „1 bis 3“ in der Entnahmereihenfolge jeweils mit einem Einflussgrad IM, der geringer als der Bezugswert IMS ist (beispielsweise „2“ beträgt), eingestufte Werkstücke W. Gleichzeitig sind die in der Entnahmereihenfolge jeweils mit „4“ oder darunter eingestuften Werkstücke W wie das Werkstück W2 jeweils mit einem Einflussgrad IM, der dem Bezugswert IMS entspricht oder höher als dieser ist, eingestufte Werkstücke W. In einem derartigen Fall gibt die Aktualisierungseinheit 73 die Aktualisierungsanforderungsinformationen an die Verhaltensbestimmungseinheit 71 und die Reihenfolgeeinstelleinheit 72 aus, um die Arbeitsabläufe der beiden Einheiten zu aktualisieren, wenn sämtliche der in der Entnahmereihenfolge mit „1 bis 3“ eingestuften Werkstücke W5, W4 und W3 entnommen wurden.
  • Durch die dem Verhaltensmuster mit dem Einflussgrad IM, der geringer als der Bezugswert IMS ist, entsprechende Entnahmeaktion für das Werkstück W kann eine Beschädigung des Werkstücks W verhindert werden, da der Einflussgrad IM auf das Nicht-Zielwerkstück W relativ gering ist. Gleichzeitig können durch die dem Verhaltensmuster mit dem Einflussgrad IM, der dem Bezugswert IMS entspricht oder höher als dieser ist, entsprechende Entnahmeaktion für das Werkstück W Schäden an dem Werkstück W verursacht werden, da der Einflussgrad IM auf das Nicht-Zielwerkstück W relativ hoch ist.
  • Bei der tatsächlichen Produktion entnimmt der Roboter 2 lediglich der von der Reihenfolgeeinstelleinheit 72 eingestellten Entnahmereihenfolge folgend sämtliche der jeweils mit einem Einflussgrad IM, der geringer als der Bezugswert IMS ist, eingestuften Werkstücke W aus dem Behälter CN. Auf diese Weise kann der Roboter 2 jedes Werkstück W mit einem relativ geringen Einflussgrad IM auf das Nicht-Zielwerkstück W, der in einem Bereich liegt, in dem Schäden an dem Werkstück W verhindert werden, fortlaufend entnehmen.
  • Wenn die Entnahmeaktion des Roboters 2 zur Entnahme sämtlicher der jeweils mit einem Einflussgrad IM, der geringer als der Bezugswert IMS ist, eingestuften Werkstücke W abgeschlossen ist, wurde der zufällig aufeinandergeschichtete Zustand der verbleibenden Werkstücke W in dem Behälter CN gegenüber dem Zustand vor der Entnahmeaktion verändert. Zu diesem Zeitpunkt aktualisiert die Aktualisierungseinheit 73 den Arbeitsablauf der Verhaltensbestimmungseinheit 71 zur Bestimmung des Verhaltensmusters und den Arbeitsablauf der Reihenfolgeeinstelleinheit 72 zur Bestimmung der Entnahmereihenfolge. Dies bedeutet, dass vor dem Ausführen der Entnahmeaktion an dem Werkstück W der aktualisierte Arbeitsablauf der Verhaltensbestimmungseinheit 71 zur Bestimmung des Verhaltensmusters anhand von der Bildaufnahmevorrichtung 3 ausgegebener neuer Bilddaten und der aktualisierte Arbeitsablauf der Reihenfolgeeinstelleinheit 72 zur Einstellung der Entnahmereihenfolge ausgeführt werden, wenn die Entnahmeaktion des Roboters 2 zur Entnahme sämtlicher der jeweils mit einem Einflussgrad IM, der geringer als der Bezugswert IMS ist, eingestuften Werkstücke W abgeschlossen ist.
  • (Vorgang der Aktualisierung durch die Verhaltensbestimmungseinheit)
  • Auf den Empfang der von der Aktualisierungseinheit 73 ausgegebenen Aktualisierungsanforderungsinformationen hin wiederholt die Verhaltensbestimmungseinheit 71 zur Aktualisierung des Arbeitsablaufs zur Bestimmung des Verhaltensmusters des Roboters 2 die in 11 dargestellten Schritte b1 bis b3 und erstellt die in 9B dargestellten aktualisierten Verhaltensmuster-Bestimmungsinformationen JH1A.
  • Die in 9B dargestellten Verhaltensmuster-Bestimmungsinformationen JH1A werden nachstehend im Einzelnen beschrieben. Anhand der von der Bildaufnahmevorrichtung 3 nach dem Empfang der Aktualisierungsanforderungsinformationen von der Aktualisierungseinheit 73 ausgegebenen neuen Bilddaten erkennt die Verhaltensbestimmungseinheit 71 den zufällig aufeinandergeschichteten Zustand der nach der Entnahme sämtlicher der jeweils mit einem Einflussgrad IM, der geringer als der Bezugswert IMS war, eingestuften Werkstücke W5, W4 und W3 in dem Behälter CN verbliebenen Werkstücke, darunter „W1“, „W2“, „W6“, „W7“ und „W8“. Wie vorstehend beschrieben, hat sich der zufällig aufeinandergeschichtete Zustand der verbliebenen Werkstücke W in dem Behälter CN gegenüber dem Zustand vor der Entnahmeaktion verändert, wenn die Entnahmeaktion des Roboters 2 zur Entnahme sämtlicher der jeweils mit einem Einflussgrad IM, der geringer als der Bezugswert IMS ist, eingestuften Werkstücke W abgeschlossen ist. Somit hat sich auch der Einflussgrad IM auf die in dem Behälter CN verbliebenen Werkstücke W geändert.
  • Die Verhaltensbestimmungseinheit 71 bestimmt ein Verhaltensmuster „Verhalten A11“, dem ein von der Lerneinheit 64 erlernter minimaler Einflussgrad IM von „0,2“ zugeordnet ist, als Verhaltensmuster des Roboters 2 zur Entnahme des Werkstücks „W1“ aus dem Behälter CN. Die Verhaltensbestimmungseinheit 71 bestimmt ein Verhaltensmuster „Verhalten A21“, dem ein von der Lerneinheit 64 erlernter minimaler Einflussgrad IM von „0,01“ zugeordnet ist, als Verhaltensmuster des Roboters 2 zur Entnahme des Werkstücks „W2“ aus dem Behälter CN. Die Verhaltensbestimmungseinheit 71 bestimmt ein Verhaltensmuster „Verhalten A61“, dem ein von der Lerneinheit 64 erlernter minimaler Einflussgrad IM von „0,3“ zugeordnet ist, als Verhaltensmuster des Roboters 2 zur Entnahme des Werkstücks „W6“ aus dem Behälter CN. Die Verhaltensbestimmungseinheit 71 bestimmt ein Verhaltensmuster „Verhalten A71“, dem ein von der Lerneinheit 64 erlernter minimaler Einflussgrad IM von „20“ zugeordnet ist, als Verhaltensmuster des Roboters 2 zur Entnahme des Werkstücks „W7“ aus dem Behälter CN. Die Verhaltensbestimmungseinheit 71 bestimmt ein Verhaltensmuster „Verhalten A81“, dem ein von der Lerneinheit 64 erlernter minimaler Einflussgrad IM von „40“ zugeordnet ist, als Verhaltensmuster des Roboters 2 zur Entnahme des Werkstücks „W8“ aus dem Behälter CN. Die aktualisierten Verhaltensmuster-Bestimmungsinformationen JH1A geben das aktualisierte Ergebnis der Bestimmung des Verhaltensmusters für jedes Werkstück W durch die Verhaltensbestimmungseinheit 71, wie vorstehend beschrieben, als Informationen an, in denen die Werkstücktypinformationen J11, die Verhaltensmusterinformationen J12 und die Einflussgradinformationen J13 einander zugeordnet sind.
  • Nach der Entnahmeaktion des Roboters 2 zur Entnahme sämtlicher der jeweils mit einem Einflussgrad IM, der geringer als der Bezugswert IMS ist, eingestuften Werkstücke W aktualisiert und bestimmt die Verhaltensbestimmungseinheit 71 für jedes Werkstück W ein Verhaltensmuster mit einem minimalen Einflussgrad IM als Verhaltensmuster des Roboters 2 zur Entnahme der in dem Behälter CN verbliebenen Werkstücke W. Bei der tatsächlichen Produktion folgt der Roboter 2 für jedes Werkstück W dem von der Verhaltensbestimmungseinheit 71 aktualisierten und bestimmten Verhaltensmuster und führt eine optimale Entnahmeaktion mit einem geringen Einflussgrad IM auf das Nicht-Zielwerkstück W aus, wodurch Schäden an dem Werkstück W verhindert werden.
  • (Vorgang der Aktualisierung durch die Reihenfolgeeinstelleinheit)
  • Auf den Empfang der von der Aktualisierungseinheit 73 ausgegebenen Aktualisierungsanforderungsinformationen hin wiederholt die Reihenfolgeeinstelleinheit 72 zur Aktualisierung des Vorgangs der Einstellung der Entnahmereihenfolge für die Werkstücke W die in 11 dargestellten, vorstehend beschriebenen Schritte b4 bis b6 und erstellt die in 10B dargestellten aktualisierten Verhaltensanweisungsinformationen JH2A.
  • Die in den von der Reihenfolgeeinstelleinheit 72 aktualisierten Verhaltensanweisungsinformationen JH2A enthaltenen Verhaltenslisteninformationen J22 entsprechen den von der Verhaltensbestimmungseinheit 71 aktualisierten Verhaltensmuster-Bestimmungsinformationen JH1A mit der Ausnahme, dass die Reihenfolge in den Daten, in denen die Werkstücktypinformationen J11, die Verhaltensmusterinformationen J12 und die Einflussgradinformationen J13 einander zugeordnet sind, eine andere ist. In den Verhaltenslisteninformationen J22 wird aus den Daten, in denen die Werkstücktypinformationen J11, die Verhaltensmusterinformationen J12 und die Einflussgradinformationen J13 einander zugeordnet sind, eine in aufsteigender Reihenfolge des in den Einflussgradinformationen J13 angegebenen Einflussgrads IM geordnete Liste von Elementen erstellt.
  • Die von der Reihenfolgeeinstelleinheit 72 aktualisierten Verhaltensanweisungsinformationen JH2A werden an die Steuervorrichtung 4 ausgegeben. Die Steuervorrichtung 4, in die die Verhaltensanweisungsinformationen JH2A eingegeben werden, kann die Entnahmeaktion des Roboters 2 der aktualisierten Entnahmereihenfolge für die Entnahme der Werkstücke W folgend entsprechend den in den Verhaltensanweisungsinformationen JH2A enthaltenen Verhaltenslisteninformationen J22 steuern.
  • Wie vorstehend beschrieben, aktualisiert die Reihenfolgeeinstelleinheit 72 die Entnahmereihenfolge für die Entnahme der in dem Behälter CN verbliebenen Werkstücke W und stellt sie ein. Bei der tatsächlichen Produktion entnimmt der Roboter 2 lediglich der von der Reihenfolgeeinstelleinheit 72 aktualisierten Entnahmereihenfolge folgend die in dem Behälter CN verbliebenen Werkstücke W. Der Roboter 2 kann dadurch die Entnahmeaktion so ausführen, dass das Werkstück W mit einem geringeren Einflussgrad IM auf das Nicht-Zielwerkstück W zuerst entnommen wird.
  • Die vorstehend beschriebenen spezifischen Ausführungsformen umfassen hauptsächlich die folgenden Erfindungen.
  • Eine maschinelle Lernvorrichtung gemäß einem Aspekt der vorliegenden Erfindung lernt eine Aktion eines Roboters, der eine Handeinheit umfasst, zur Entnahme des Werkstücks aus einem Behälter, der mehrere ungeordnet übereinanderliegende Werkstücke enthält. Die maschinelle Lernvorrichtung umfasst eine Verhaltensüberwachungseinheit, die darauf ausgelegt ist, ein Verhaltensmuster des Roboters zu überwachen, der eine Entnahmeaktion zur Entnahme eines Zielwerkstücks aus dem Behälter durch die Handeinheit ausführt, eine Verschiebungsgrößen-Überwachungseinheit, die darauf ausgelegt ist, anhand von vor und nach der Entnahmeaktion des Roboters aufgenommenen und von einer Bildaufnahmevorrichtung, die ein Bild eines Inneren des Behälters aufnimmt, ausgegebenen Bilddatenelementen eine Werkstückverschiebungsgröße zu überwachen, die eine durch die Entnahme des Zielwerkstücks aus dem Behälter durch die Handeinheit verursachte Verschiebungsgröße eines Nicht-Zielwerkstücks, das nicht das Zielwerkstück ist, in dem Behälter angibt, und eine Lerneinheit, die darauf ausgelegt ist, anhand von überwachten Daten, in denen das Verhaltensmuster und die Werkstückverschiebungsgröße einander zugeordnet sind, einen Einflussgrad des zugeordneten Verhaltensmusters zur Entnahme des Zielwerkstücks aus dem Behälter durch die Handeinheit auf das Nicht-Zielwerkstück zu lernen, wobei der Einflussgrad von der Werkstückverschiebungsgröße abhängt.
  • Bei der maschinellen Lernvorrichtung wird das Verhaltensmuster des Roboters zur Entnahme des Zielwerkstücks aus dem Behälter von der Verhaltensüberwachungseinheit überwacht, und die durch die Entnahmeaktion des Roboters verursachte Werkstückverschiebungsgröße des Nicht-Zielwerkstücks in dem Behälter wird von der Verschiebungsgrößen-Überwachungseinheit überwacht. Die Lerneinheit lernt anhand der überwachten Daten, in denen das Verhaltensmuster des Roboters der Werkstückverschiebungsgröße zugeordnet ist, den Einflussgrad des zugeordneten Verhaltensmusters zur Entnahme des Zielwerkstücks aus dem Behälter auf das Nicht-Zielwerkstück, wobei der Einflussgrad von der Werkstückverschiebungsgröße abhängt.
  • Die Werkstückverschiebungsgröße ist eine Kenngröße für eine Auswirkung einer Schlagkraft auf das Nicht-Zielwerkstück und eine durch die Entnahme des Zielwerkstücks aus dem Behälter verursachte oder aus dieser resultierende Einsturzrate der Nicht-Zielwerkstücke. Dies bedeutet, dass die auf das Nicht-Zielwerkstück einwirkende Schlagkraft und die Einsturzrate der Nicht-Zielwerkstücke bei einer geringeren Werkstückverschiebungsgröße geringer sind und dass der entsprechende Einflussgrad auf das Nicht-Zielwerkstück geringer ist. Da die Lerneinheit den Einflussgrad des zugeordneten Verhaltensmusters auf das Nicht-Zielwerkstück lernt, wobei der Einflussgrad von der Werkstückverschiebungsgröße abhängt, kann die Lerneinheit zur Entnahme des Zielwerkstücks aus dem Behälter ein Verhaltensmuster des Roboters mit einem geringen Einflussgrad auf das Nicht-Zielwerkstück lernen. Somit kann eine zum Verhindern von Schäden an den Werkstücken optimale Entnahmeaktion des Roboters mit einem geringen Einflussgrad auf das Nicht-Zielwerkstücke gelernt werden.
  • Die maschinelle Lernvorrichtung kann ferner eine Verhaltensbestimmungseinheit umfassen, die darauf ausgelegt ist, bei der Ausgabe der vor der Entnahmeaktion des Roboters aufgenommenen Bilddatenelemente durch die Bildaufnahmevorrichtung nach dem Lernen des Einflussgrads durch die Lerneinheit einen zufällig aufeinanderliegenden Zustand der mehreren Werkstücke in dem Behälter anhand der Bilddaten zu erkennen, und für jedes der Werkstücke ein Verhaltensmuster mit einem minimalen Einflussgrad als Verhaltensmuster des Roboters zur Entnahme jedes der Werkstücke aus dem Behälter durch Handeinheit bestimmt.
  • Bei dieser Konfiguration bestimmt die Verhaltensbestimmungseinheit zur Berücksichtigung des Ergebnisses des Lernens durch die Lerneinheit bei einer tatsächlichen Entnahmeaktion des Roboters für jedes Werkstück das Verhaltensmuster mit einem minimalen Einflussgrad als Verhaltensmuster des Roboters zur Entnahme des Werkstücks aus dem Behälter. Bei der tatsächlichen Produktion folgt der Roboter für jedes Werkstück dem von der Verhaltensbestimmungseinheit bestimmten Verhaltensmuster und führt zur Vermeidung von Schäden an dem Werkstück eine optimale Entnahmeaktion mit einem geringen Einflussgrad auf ein Nicht-Zielwerkstück aus.
  • Die Verhaltensbestimmungseinheit bestimmt das Verhaltensmuster des Roboters für jedes Werkstück in dem Behälter anhand der durch eine einzige Aufnahme aufgenommen und von der Bildaufnahmevorrichtung ausgegebenen Bilddaten. Dies bedeutet, das bei der tatsächlichen Produktion die Bildaufnahmevorrichtung nicht immer jedes Mal ein Bild aufnimmt, wenn das Werkstück entnommen wird, um das Verhaltensmuster des Roboters zur Entnahme des Werkstücks zu bestimmen. Das Verhaltensmuster des Roboters für jedes Werkstück in dem Behälter wird anhand der durch eine einzige Aufnahme aufgenommen Bilddaten bestimmt, und der Roboter kann den bestimmten Verhaltensmustern folgend nacheinander mehrere Werkstücke entnehmen. Auf diese Weise können die Anzahl der Aufnahmen zur Aufnahme von Bildern durch die Bildaufnahmevorrichtung bei der tatsächlichen Produktion verringert und eine Leerlaufzeit des Roboters aufgrund der Aufnahme von Bildern verkürzt werden, wodurch eine Effizienz der Produktion verbessert wird..
  • Die maschinelle Lernvorrichtung kann ferner eine Reihenfolgeeinstelleinheit umfassen, die darauf ausgelegt ist, eine Entnahmereihenfolge für die Entnahme der Werkstücke aus dem Behälter anhand des von der Verhaltensbestimmungseinheit bestimmten Verhaltensmusters des Roboters so einzustellen, dass das Verhaltensmuster mit einem geringeren Einflussgrad höher eingestuft wird.
  • Bei dieser Konfiguration legt die Reihenfolgeeinstelleinheit die Entnahmereihenfolge für die Entnahme der Werkstücke aus dem Behälter fest. Bei der tatsächlichen Produktion entnimmt der Roboter lediglich der von der Reihenfolgeeinstelleinheit eingestellten Entnahmereihenfolge folgend die Werkstücke aus dem Behälter. Der Roboter kann dadurch die Entnahmeaktion so ausführen, dass das Werkstück mit einem geringeren Einflussgrad auf das Nicht-Zielwerkstück zuerst entnommen wird.
  • Die maschinelle Lernvorrichtung kann ferner eine Aktualisierungseinheit umfassen, die darauf ausgelegt ist, die der von der Reihenfolgeeinstelleinheit festgelegten Entnahmereihenfolge folgende Entnahmeaktion des Roboters zu überwachen, und einen Arbeitsablauf der Verhaltensbestimmungseinheit zur Bestimmung eines Verhaltensmusters und einen Arbeitsablauf der Reihenfolgeeinstelleinheit zur Einstellung der Entnahmereihenfolge aktualisiert, wenn sämtliche jeweils mit einem Einflussgrad, der geringer als ein vorgegebener Bezugswert ist, eingestuften Werkstücke aus dem Behälter entnommen wurden.
  • Durch die dem Verhaltensmuster mit dem Einflussgrad, der kleiner als der Bezugswert ist, entsprechende Entnahmeaktion für das Werkstück können Schäden an dem Werkstück verhindert werden, da der Einflussgrad auf das Nicht-Zielwerkstück relativ gering ist. Gleichzeitig können durch die dem Verhaltensmuster mit dem Einflussgrad, der dem Bezugswert entspricht oder höher als dieser ist, entsprechende Entnahmeaktion für das Werkstück Schäden an dem Werkstück verursacht werden, da der Einflussgrad auf das Nicht-Zielwerkstück relativ hoch ist.
  • Bei der tatsächlichen Produktion entnimmt der Roboter lediglich der von der Reihenfolgeeinstelleinheit eingestellten Entnahmereihenfolge folgend sämtliche der jeweils mit einem Einflussgrad, der kleiner als der Bezugswert ist, eingestuften Werkstücke aus dem Behälter. Auf diese Weise kann der Roboter fortlaufend jedes Werkstück entnehmen, das einen relativ geringen Einflussgrad auf das Nicht-Zielwerkstück hat, der in einem Bereich liegt, in dem Beschädigungen des Werkstücks verhindert werden. Wenn die Entnahmeaktion des Roboters abgeschlossen ist, hat sich der zufällig aufeinandergeschichtete Zustand der Werkstücke in dem Behälter gegenüber dem Zustand vor der Entnahmeaktion geändert. Zu diesem Zeitpunkt aktualisiert die Aktualisierungseinheit den Arbeitsablauf der Verhaltensbestimmungseinheit zur Bestimmung des Verhaltensmusters und den Arbeitsablauf der Reihenfolgeeinstelleinheit zur Einstellung der Entnahmereihenfolge. Dies bedeutet, dass vor dem Ausführen der Entnahmeaktion an dem Werkstück der aktualisierte Arbeitsablauf der Verhaltensbestimmungseinheit zur Bestimmung des Verhaltensmusters anhand von der Bildaufnahmevorrichtung ausgegebener neuer Bilddaten und der aktualisierte Arbeitsablauf der Reihenfolgeeinstelleinheit zum Einstellen der Entnahmereihenfolge ausgeführt werden, wenn die Entnahmeaktion des Roboters zur Entnahme sämtlicher der jeweils mit einem Einflussgrad, der kleiner als der Bezugswert ist, eingestuften Werkstücke abgeschlossen ist. Der Roboter entnimmt die Werkstücke aus dem Behälter, indem er einfach dem von der Verhaltensbestimmungseinheit aktualisierten und bestimmten Verhaltensmuster und ebenso der von der Reihenfolgeeinstelleinheit aktualisierten und eingestellten Entnahmereihenfolge folgt.
  • Bei der maschinellen Lernvorrichtung ergreift die Handeinheit ein Werkstück in dem Behälter und entnimmt das Werkstück aus dem Behälter, und ein Verhaltenselement, das ein von der Verhaltensüberwachungseinheit überwachtes Verhaltensmuster des Roboters definiert, umfasst eine Greifposition, an der die Handeinheit das Zielwerkstück zur Entnahme des Zielwerkstücks ergreift.
  • Das von der Verhaltensüberwachungseinheit überwachte Verhaltensmuster des Roboters bildet die von der Lerneinheit beim Lernen der Aktion des Roboters verwendeten überwachten Daten. Da die Greifposition, an der der Handeinheit das Werkstück ergreift, als Element des Verhaltenselements enthalten ist, das das Verhaltensmuster des Roboters definiert, das die überwachten Daten bildet, kann die Lerneinheit zur Verringerung des Einflussgrads auf die Nicht-Zielwerkstücke ein Verhaltensmuster des Roboters lernen, das die Greifposition berücksichtigt.
  • Ein Robotersystem gemäß einem weiteren Aspekt der vorliegenden Erfindung umfasst einen Roboter mit einer Handeinheit, der das Werkstück aus einem Behälter entnimmt, der mehrere ungeordnet übereinanderliegende Werkstücke enthält, eine Bildaufnahmevorrichtung, die ein Bild eines Inneren des Behälters aufnimmt und Bilddaten ausgibt, die maschinelle Lernvorrichtung, die darauf ausgelegt ist, anhand der Bilddaten eine Entnahmeaktion des Roboters zur Entnahme des Werkstücks aus dem Behälter durch die Handeinheit zu lernen, und eine Steuervorrichtung, die darauf ausgelegt ist, eine Aktion des Roboters entsprechend einem Lernergebnis der maschinellen Lernvorrichtung zu steuern.
  • Das Robotersystem umfasst die maschinelle Lernvorrichtung, die eine optimale Aktion des Roboters zur Entnahme des Werkstücks aus dem Behälter lernen kann. Somit kann der Roboter bei der tatsächlichen Produktion zur Entnahme des Zielwerkstücks aus dem Behälter die optimale Entnahmeaktion mit einem geringen Einflussgrad auf ein Nicht-Zielwerkstück ausführen, um Schäden an dem Werkstück zu verhindern.
  • Gemäß der vorliegenden Erfindung werden, wie vorstehend beschrieben, eine maschinelle Lernvorrichtung, die eine optimale Aktion eines Roboters zur Entnahme eines Werkstücks aus einem Behälter lernen kann, der mehrere ungeordnet übereinanderliegende Werkstücke enthält, und ein Robotersystem bereitgestellt, das die maschinelle Lernvorrichtung umfasst.
  • Bezugszeichenliste
  • 1
    Robotersystem
    2
    Roboter
    26
    Handeinheit
    3
    Bildaufnahmevorrichtung
    4
    Steuervorrichtung
    5
    maschinelle Lernvorrichtung
    6
    Lernverarbeitungseinheit
    61
    Zustandsüberwachungseinheit
    62
    Verhaltensüberwachungseinheit
    63
    Verschiebungsgrößen-Überwachungseinheit
    64
    Lerneinheit
    641
    Belohnungseinstelleinheit
    642
    Wertefunktions-Aktualisierungseinheit
    7
    Lernergebnisberücksichtigungs-Verarbeitungseinheit
    71
    Verhaltensbestimmungseinheit
    72
    Reihenfolgeeinstelleinheit
    73
    Aktualisierungseinheit
  • 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 2017064910 A [0004]

Claims (6)

  1. Maschinelle Lernvorrichtung, die eine Aktion eines Roboters, der eine Handeinheit umfasst, zur Entnahme des Werkstücks aus einem Behälter lernt, der mehrere ungeordnet übereinanderliegende Werkstücke enthält, wobei die maschinelle Lernvorrichtung umfasst: eine Verhaltensüberwachungseinheit, die darauf ausgelegt ist, ein Verhaltensmuster des Roboters zu überwachen, der eine Entnahmeaktion zur Entnahme eines Zielwerkstücks aus dem Behälter mittels der Handeinheit ausführt; eine Verschiebungsgrößen-Überwachungseinheit, die darauf ausgelegt ist, anhand von vor und nach der Entnahmeaktion des Roboters aufgenommenen und von einer Bildaufnahmevorrichtung, die ein Bild eines Inneren des Behälters aufnimmt, ausgegebenen Bilddatenelementen eine Werkstückverschiebungsgröße zu überwachen, die eine durch die Entnahme des Zielwerkstücks aus dem Behälter durch die Handeinheit verursachte Verschiebungsgröße eines Nicht-Zielwerkstücks, das nicht das Zielwerkstück ist, in dem Behälter angibt; und eine Lerneinheit, die darauf ausgelegt ist, anhand von überwachten Daten, in denen das Verhaltensmuster und die Werkstückverschiebungsgröße einander zugeordnet sind, einen Einflussgrad des zugeordneten Verhaltensmusters zur Entnahme des Zielwerkstücks aus dem Behälter durch die Handeinheit auf das Nicht-Zielwerkstück zu lernen, wobei der Einflussgrad von der Werkstückverschiebungsgröße abhängt.
  2. Maschinelle Lernvorrichtung nach Anspruch 1, die ferner eine Verhaltensbestimmungseinheit umfasst, die darauf ausgelegt ist, bei der Ausgabe der vor der Entnahmeaktion des Roboters aufgenommen Bilddatenelemente durch die Bildaufnahmevorrichtung nach dem Lernen des Einflussgrads durch die Lerneinheit anhand der Bilddaten einen zufällig aufeinanderliegenden Zustand der mehreren Werkstücke in dem Behälter zu erkennen und für jedes der Werkstücke ein Verhaltensmuster mit einem minimalen Einflussgrad als Verhaltensmuster des Roboters zur Entnahme jedes der Werkstücke aus dem Behälter durch die Handeinheit zu bestimmen.
  3. Maschinelle Lernvorrichtung nach Anspruch 2, die ferner eine Reihenfolgeeinstelleinheit umfasst, die darauf ausgelegt ist, eine Entnahmereihenfolge für die Entnahme jedes der Werkstücke aus dem Behälter anhand des von der Verhaltensbestimmungseinheit bestimmten Verhaltensmusters des Roboters so einzustellen, dass das Verhaltensmuster mit einem geringeren Einflussgrad höher eingestuft wird.
  4. Maschinelle Lernvorrichtung nach Anspruch 3, die ferner eine Aktualisierungseinheit umfasst, die darauf ausgelegt ist, die der von der Reihenfolgeeinstelleinheit festgelegten Entnahmereihenfolge folgende Entnahmeaktion des Roboters zu überwachen, und einen Arbeitsablauf der Verhaltensbestimmungseinheit zur Bestimmung eines Verhaltensmusters und einen Arbeitsablauf der Reihenfolgeeinstelleinheit zur Festlegung der Entnahmereihenfolge aktualisiert, wenn sämtliche jeweils mit einem Einflussgrad, der geringer als ein vorgegebener Bezugswert ist, eingestuften Werkstücke aus dem Behälter entnommen wurden.
  5. Maschinelle Lernvorrichtung nach einem der Ansprüche 1 bis 4, wobei die Handeinheit ein Werkstück in dem Behälter ergreift und das Werkstück aus dem Behälter entnimmt, und ein Verhaltenselement, das ein von der Verhaltensüberwachungseinheit überwachtes Verhaltensmuster des Roboters definiert, eine Greifposition umfasst, an der die Handeinheit das Zielwerkstück zur Entnahme des Zielwerkstücks ergreift.
  6. Robotersystem, das umfasst: einen Roboter mit einer Handeinheit, der das Werkstück aus einem Behälter entnimmt, der mehrere ungeordnet übereinanderliegende Werkstücke enthält; eine Bildaufnahmevorrichtung, die ein Bild eines Inneren des Behälters aufnimmt und Bilddaten ausgibt; die maschinelle Lernvorrichtung nach einem der Ansprüche 1 bis 5, die darauf ausgelegt ist, anhand der Bilddaten eine Entnahmeaktion des Roboters zur Entnahme des Werkstücks aus dem Behälter durch Handeinheit zu lernen; und eine Steuervorrichtung, die darauf ausgelegt ist, eine Aktion des Roboters entsprechend einem Lernergebnis der maschinellen Lernvorrichtung zu steuern.
DE112018007729.2T 2018-06-14 2018-06-14 Maschinelle Lernvorrichtung und mit dieser ausgestattetes Robotersystem Active DE112018007729B4 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/022807 WO2019239562A1 (ja) 2018-06-14 2018-06-14 機械学習装置及びこれを備えたロボットシステム

Publications (2)

Publication Number Publication Date
DE112018007729T5 true DE112018007729T5 (de) 2021-02-25
DE112018007729B4 DE112018007729B4 (de) 2022-09-08

Family

ID=68843106

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112018007729.2T Active DE112018007729B4 (de) 2018-06-14 2018-06-14 Maschinelle Lernvorrichtung und mit dieser ausgestattetes Robotersystem

Country Status (5)

Country Link
US (1) US11945115B2 (de)
JP (1) JP7008136B2 (de)
CN (1) CN112135719B (de)
DE (1) DE112018007729B4 (de)
WO (1) WO2019239562A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020212658A1 (de) 2020-10-07 2022-04-07 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
DE102021104001B3 (de) 2021-02-19 2022-04-28 Gerhard Schubert Gesellschaft mit beschränkter Haftung Verfahren zum automatischen Ergreifen, insbesondere Umsetzen, von Gegenständen

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11645498B2 (en) * 2019-09-25 2023-05-09 International Business Machines Corporation Semi-supervised reinforcement learning

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58184351A (ja) 1982-04-19 1983-10-27 Ogura Clutch Co Ltd 片側2出力軸電動機
US7765780B2 (en) * 2003-12-12 2010-08-03 Vision Robotics Corporation Agricultural robot system and method
JP4390758B2 (ja) * 2005-09-08 2009-12-24 ファナック株式会社 ワーク取出し装置
SE529377C2 (sv) * 2005-10-18 2007-07-24 Morphic Technologies Ab Publ Metod och arrangemang för att lokalisera och plocka upp föremål från en bärare
JP4199264B2 (ja) 2006-05-29 2008-12-17 ファナック株式会社 ワーク取り出し装置及び方法
JP4565023B2 (ja) * 2008-07-04 2010-10-20 ファナック株式会社 物品取り出し装置
JP5623358B2 (ja) * 2011-09-06 2014-11-12 三菱電機株式会社 ワーク取り出し装置
JP2014081863A (ja) * 2012-10-18 2014-05-08 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
JP6088563B2 (ja) * 2015-02-10 2017-03-01 ファナック株式会社 位置及び姿勢の変換演算機能を備えたワーク取出しロボットシステム、及びワーク取出し方法
US11020859B2 (en) * 2015-05-01 2021-06-01 Transportation Ip Holdings, Llc Integrated robotic system and method for autonomous vehicle maintenance
DE102016009030B4 (de) 2015-07-31 2019-05-09 Fanuc Corporation Vorrichtung für maschinelles Lernen, Robotersystem und maschinelles Lernsystem zum Lernen eines Werkstückaufnahmevorgangs
JP6148316B2 (ja) * 2015-07-31 2017-06-14 ファナック株式会社 故障条件を学習する機械学習方法及び機械学習装置、並びに該機械学習装置を備えた故障予知装置及び故障予知システム
JP6522488B2 (ja) 2015-07-31 2019-05-29 ファナック株式会社 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法
JP6240689B2 (ja) 2015-07-31 2017-11-29 ファナック株式会社 人の行動パターンを学習する機械学習装置、ロボット制御装置、ロボットシステム、および機械学習方法
JP6010204B1 (ja) 2015-10-26 2016-10-19 ファナック株式会社 パワー素子の予測寿命を学習する機械学習装置及び方法並びに該機械学習装置を備えた寿命予測装置及びモータ駆動装置
JP6616170B2 (ja) * 2015-12-07 2019-12-04 ファナック株式会社 コアシートの積層動作を学習する機械学習器、積層コア製造装置、積層コア製造システムおよび機械学習方法
JP6333871B2 (ja) * 2016-02-25 2018-05-30 ファナック株式会社 入力画像から検出した対象物を表示する画像処理装置
EP3742347B1 (de) * 2016-03-03 2022-11-02 Google LLC Maschinelles tiefes lernverfahren und vorrichtung für robotisches greifen
US9914213B2 (en) * 2016-03-03 2018-03-13 Google Llc Deep machine learning methods and apparatus for robotic grasping
JP6457421B2 (ja) 2016-04-04 2019-01-23 ファナック株式会社 シミュレーション結果を利用して学習を行う機械学習装置,機械システム,製造システムおよび機械学習方法
US20170297206A1 (en) * 2016-04-14 2017-10-19 The Regents Of The University Of Colorado, A Body Corporate Measuring distance and contact force during robotic manipulation
KR101980603B1 (ko) * 2016-05-20 2019-05-22 구글 엘엘씨 오브젝트(들)를 캡처하는 이미지(들)에 기초하는 그리고 환경에서의 미래 로봇 움직임에 대한 파라미터(들)에 기초하여 로봇 환경에서의 오브젝트(들)의 모션(들)을 예측하는 것과 관련된 머신 학습 방법들 및 장치
JP2018008343A (ja) 2016-07-13 2018-01-18 富士通株式会社 部品ピックアップ方法及び部品供給装置
JP6838833B2 (ja) 2016-09-05 2021-03-03 国立大学法人信州大学 把持装置、把持方法、及びプログラム
US10518372B2 (en) * 2016-09-12 2019-12-31 Kindred Systems Inc. Compound prismatic platforms for use in robotic systems
JP6514171B2 (ja) * 2016-09-27 2019-05-15 ファナック株式会社 最適な物品把持経路を学習する機械学習装置、及び機械学習方法
AU2017357645B2 (en) * 2016-11-08 2022-11-10 Dogtooth Technologies Limited A robotic fruit picking system
JP6438512B2 (ja) * 2017-03-13 2018-12-12 ファナック株式会社 機械学習により補正した計測データでワークの取り出しを行うロボットシステム、計測データ処理装置および計測データ処理方法
JP2018176334A (ja) * 2017-04-10 2018-11-15 キヤノン株式会社 情報処理装置、計測装置、システム、干渉判定方法および物品の製造方法
JP6457587B2 (ja) * 2017-06-07 2019-01-23 ファナック株式会社 ワークの動画に基づいて教示点を設定するロボットの教示装置
JP6911777B2 (ja) * 2018-01-23 2021-07-28 トヨタ自動車株式会社 動作軌道生成装置
US11014231B2 (en) * 2018-05-03 2021-05-25 Fujitsu Limited Robotic device task learning

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020212658A1 (de) 2020-10-07 2022-04-07 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
US11806872B2 (en) 2020-10-07 2023-11-07 Robert Bosch Gmbh Device and method for controlling a robotic device
DE102021104001B3 (de) 2021-02-19 2022-04-28 Gerhard Schubert Gesellschaft mit beschränkter Haftung Verfahren zum automatischen Ergreifen, insbesondere Umsetzen, von Gegenständen

Also Published As

Publication number Publication date
DE112018007729B4 (de) 2022-09-08
US11945115B2 (en) 2024-04-02
US20210229275A1 (en) 2021-07-29
CN112135719B (zh) 2023-08-22
JP7008136B2 (ja) 2022-01-25
CN112135719A (zh) 2020-12-25
WO2019239562A1 (ja) 2019-12-19
JPWO2019239562A1 (ja) 2021-04-22

Similar Documents

Publication Publication Date Title
DE102018000730B4 (de) Werkstückaufnahmevorrichtung und Werkstückaufnahmeverfahren zum Verbessern des Aufnahmevorgangs eines Werkstücks
DE112013003209B4 (de) Robotersteuerungsvorrichtung und Robotersteuerungsverfahren
DE112017007028B4 (de) Positionskontrollvorrichtung und Positionskontrollverfahren
DE112012002677T9 (de) Zuführvorrichtung für Bauelemente
DE112011103794B4 (de) Aufnehmervorrichtung für Werkstücke
DE112017007025T5 (de) Positionssteuerungseinrichtung und positionssteuerungsverfahren
DE112018007729B4 (de) Maschinelle Lernvorrichtung und mit dieser ausgestattetes Robotersystem
DE102019208187B4 (de) Robotersystem und Steuerungsverfahren für ein Robotersystem
DE112019000097B4 (de) Steuervorrichtung, Arbeitsroboter, Programm und Steuerverfahren
DE102021107568A1 (de) Adaptive planung von zugriffen zum aufheben von behältern
DE102021109332B4 (de) Vorrichtung und Verfahren zum Steuern eines Roboters zum Einsetzen eines Objekts in eine Einsetzstelle
WO2018193130A1 (de) Verfahren zur erstellung einer datenbank mit greiferposen, verfahren zum steuern eines roboters, computerlesbares speichermedium und handhabungssystem
DE102021109334A1 (de) Vorrichtung und Verfahren zum Trainieren eines Neuronalen Netzes zum Steuern eines Roboters für eine Einsetzaufgabe
DE102021205324A1 (de) Greifverfahren und Greifvorrichtung eines Industrieroboters, Computerspeichermedium und Industrieroboter
DE112018007727T5 (de) Robotersystem
DE102019134665B3 (de) Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators
WO2017016641A2 (de) Verfahren und system zum steuern eines roboters
DE102021104001B3 (de) Verfahren zum automatischen Ergreifen, insbesondere Umsetzen, von Gegenständen
DE102022107249A1 (de) Modularisierung von Netzen zum Lernen von hochdimensionalen Roboteraufgaben
DE102018112370B4 (de) Richtungsabhängige Kollisionsdetektion für einen Robotermanipulator
DE102020210823A1 (de) Maschinen-Steueranordnung
DE102020200165A1 (de) Robotersteuereinrichtung und Verfahren zum Steuern eines Roboters
DE102017012348B3 (de) Mit einer Formungsmaschine und einer Formproduktentnahmevorrichtung versehenes Formungssystem
DE102021109333A1 (de) Vorrichtung und Verfahren zum Trainieren eines Neuronalen Netzes zum Steuern eines Roboters für eine Einsetzaufgabe
DE102021201880A1 (de) Vorrichtung und Verfahren zum Ermitteln der Pose eines Objekts

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final