DE102019001948A1 - Steuerung und maschinelle Lernvorrichtung - Google Patents

Steuerung und maschinelle Lernvorrichtung Download PDF

Info

Publication number
DE102019001948A1
DE102019001948A1 DE102019001948.2A DE102019001948A DE102019001948A1 DE 102019001948 A1 DE102019001948 A1 DE 102019001948A1 DE 102019001948 A DE102019001948 A DE 102019001948A DE 102019001948 A1 DE102019001948 A1 DE 102019001948A1
Authority
DE
Germany
Prior art keywords
axis
robot
data
axis angle
unit
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
DE102019001948.2A
Other languages
English (en)
Other versions
DE102019001948B4 (de
Inventor
Kouichirou Hayashi
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.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102019001948A1 publication Critical patent/DE102019001948A1/de
Application granted granted Critical
Publication of DE102019001948B4 publication Critical patent/DE102019001948B4/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/0081Programme-controlled manipulators with master teach-in means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • 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/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39298Trajectory learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)
  • Feedback Control In General (AREA)

Abstract

Eine maschinelle Lernvorrichtung ist in einer vielseitigen Steuerung vorgesehen, die in der Lage ist, Befehlsdaten zu folgern, die an jede Achse eines Roboters auszugeben sind. Die Vorrichtung umfasst eine Achswinkel-Umrechnungseinheit, die aus den Bewegungsbahndatendaten einen Änderungsbetrag eines Achswinkels einer Achse des Roboters berechnet, eine Zustandsbeobachtungseinheit, die Achswinkeldaten in Bezug auf den Änderungsbetrag des Achswinkels der Achse des Roboters als eine einen aktuellen Zustand einer Umgebung darstellende Zustandsvariable beobachtet, eine Labeldaten-Erfassungseinheit, die Achswinkelbefehlsdaten in Bezug auf Befehlsdaten für die Achse des Roboters als Labeldaten erfasst, und eine Lerneinheit, die den Änderungsbetrag des Achswinkels der Achse des Roboters und die Befehlsdaten für die Achse in Zuordnung zueinander unter Verwendung der Zustandsvariablen und der Labeldaten erfasst.

Description

  • VERWANDTE ANMELDUNG
  • Die vorliegende Anmeldung beansprucht die Priorität der Japanischen Patentanmeldung Nr. 2018-058685 , eingereicht am 26. März 2018, deren Offenbarung hiermit durch Bezugnahme in ihrer Gesamtheit hierin mit aufgenommen wird.
  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine Steuerung und eine maschinelle Lernvorrichtung und insbesondere eine Steuerung und eine maschinelle Lernvorrichtung, die hochgenaue Bewegungsbahn-Befehlsdaten erzeugen.
  • Beschreibung des Standes der Technik
  • Wenn die Laserstrahlbearbeiten, Abdichten, Lichtbogenschweißen oder dergleichen mit einem Roboter durchgeführt wird, ist die Bewegungsbahngenauigkeit eines Tool-Center-Points (TCP) des Roboters wichtig. Wenn der Roboter gesteuert wird, wird ein Motor, der jedes Gelenk des Roboters antreibt, so gesteuert, dass der Roboter-TCP einer angenommenen Soll-Bewegungsbahn folgt. Der Roboter-TCP kann jedoch aufgrund von Faktoren, wie einer unzureichenden Steifigkeit eines an einem Gelenk des Roboters vorgesehenen Untersetzungsgetriebes oder eines Roboterarms selbst und einem Umkehrspiel jeder Gelenkachse von einer im Voraus angenommenen Soll-Bewegungsbahn abweichen.
  • Es ist zu beachten, dass bestehende Techniken, die die Bewegungsbahngenauigkeit eines Roboter-TCP verbessern, Techniken umfassen, die in der Japanischen Patent-Auslegeschrift Nr. 2006-110702 , Japanischen Patent-Auslegeschrift Nr. 2004-322224 und Japanischen Patent-Auslegeschrift Nr. 2017-127964 offenbart sind, in denen die Lernsteuerung basierend auf der durch einen Sensor, eine Simulation und dergleichen identifizierten Bewegungsbahn eines Roboter-TCPs eines Roboters im Betrieb wiederholt wird, wodurch eine Soll-Bewegungsbahn reproduziert wird.
  • Wie durch die vorhandenen Techniken veranschaulicht, ist das, was von einem an einem Roboter angebrachten Sensor erhalten wird, eine physikalische Größe, wie Beschleunigung, Winkelgeschwindigkeit oder Erfassung von Kraft. Um die Bewegungsbahn eines Roboter-TCPs aus einer gemessenen physikalischen Größe zu erhalten, ist eine Berechnung, wie beispielsweise eine Integration, erforderlich. Da außerdem ein Sensorwert Rauschen enthalten kann, kann die Genauigkeit einer berechneten Position gering sein und der Verbesserungseffekt der Bewegungsbahngenauigkeit durch wiederholtes Lernen kann ebenfalls gering sein. Obwohl es Geräte gibt, die die Position einer Endposition eines Roboters direkt messen, wie z.B. Laser-Tracker, hat des Weiteren die Verwendung eines solchen Geräts zur Aufzeichnung der Bewegungsbahn eines Roboter-TCPs ein Problem dahingehend, dass dies sehr beschwerlich ist, da das Messgerät jedes Mal installiert werden muss, wenn eine Änderung an einem Betrieb des Roboters vorgenommen wird und das Lernen durchgeführt wird.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Es ist daher eine Aufgabe der vorliegenden Erfindung, eine Steuerung und eine maschinelle Lernvorrichtung bereitzustellen, die vielseitig einsetzbar sind und in der Lage sind, Befehlsdaten zu folgern, die auf der Grundlage einer Soll-Bewegungsbahn des Roboters an jede Achse eines Roboters auszugeben sind.
  • Eine Steuerung gemäß der vorliegenden Erfindung verbessert die Bewegungsbahngenauigkeit eines Roboter-TCP, indem ein Messgerät, das eine Betriebsbewegungsbahn eines Roboters direkt als Positionsdaten misst, und an den Roboter ausgegebene Befehlsdaten verwendet werden. Ein System, das, wenn ideale Bewegungsbahndaten eingegeben werde, Befehlsdaten zur Reproduktion der Bewegungsbahn ausgibt, ist aufgebaut, indem maschinelles Lernen unter Verwendung von Daten bezüglich einer von einem Positionsmessgerät gemessenen Betriebsbewegungsbahn eines Roboter-TCP (nachfolgend als Bewegungsbahn-Messdaten bezeichnet) und Befehlsdaten zum Steuern des Roboters als Lerndatensatz durchgeführt wird.
  • Ein Aspekt der vorliegenden Erfindung ist eine Steuerung, die auf der Grundlage von Bewegungsbahndaten einer Endposition eines Roboterarms an eine Achse eines Roboter auszugebende Befehlsdaten folgert, wobei die Steuerung eine maschinelle Lernvorrichtung umfasst, die die Folgerung von den Befehlsdaten lernt, die den Bewegungsbahndaten entsprechenden und an die Achse des Roboters auszugeben sind, umfassend: eine Achswinkel-Umrechnungseinheit, die aus den Bewegungsbahndaten einen Änderungsbetrag des Achswinkels der Achse des Roboters berechnet; eine Zustandsbeobachtungseinheit, die Achswinkeldaten in Bezug auf den von der Achswinkel-Umrechnungseinheit berechneten Änderungsbetrag des Achswinkels der Achse des Roboters als eine einen aktuellen Zustand einer Umgebung darstellende Zustandsvariable beobachtet; eine Labeldaten-Erfassungseinheit, die Achswinkelbefehlsdaten in Bezug auf die Befehlsdaten für die Achse des Roboters als Labeldaten erfasst; und eine Lerneinheit, die den Änderungsbetrag des Achswinkels der Achse des Roboters und Befehlsdaten für die Achse des Roboters in Zuordnung zueinander unter Verwendung der Zustandsvariablen und der Labeldaten lernt.
  • Ein weiterer Aspekt der vorliegenden Erfindung ist eine Steuerung, die auf der Grundlage von Bewegungsbahndaten einer Endposition eines Arms des Roboters an eine Achse eines Roboters auszugebende Befehlsdaten folgert, wobei die Steuerung eine maschinelle Lernvorrichtung umfasst, die die Folgerung von Befehlsdaten gelernt hat, die den Bewegungsbahndaten entsprechen und an eine Achse des Roboters auszugeben sind, umfassend: eine Achswinkel-Umrechnungseinheit, die aus den Bewegungsbahndaten einen Änderungsbetrag des Achswinkels der Achse des Roboters berechnet; eine Zustandsbeobachtungseinheit, die Achswinkeldaten in Bezug auf den von der Achswinkel-Umrechnungseinheit berechneten Änderungsbetrag des Achswinkels der Achse des Roboters als eine einen aktuellen Zustand einer Umgebung darstellende Zustandsvariable beobachtet; eine Lerneinheit, die den Änderungsbetrag des Achswinkels der Achse des Roboters und Befehlsdaten für die Achse des Roboters in Zuordnung zueinander gelernt hat; und eine Folgerungsergebnis-Ausgabeeinheit, die auf der Grundlage der von der Zustandsbeobachtungseinheit beobachteten Zustandsvariablen und eines Lernergebnisses durch die Lerneinheit Befehlsdaten für die Achse des Roboters folgert und sie ausgibt.
  • Ein weiterer Aspekt der vorliegenden Erfindung ist eine maschinelle Lernvorrichtung, die an eine Achse eines Roboters auszugebende Befehlsdaten lernt, wobei die Befehlsdaten den Bewegungsbahndaten einer Endposition eines Arms des Roboters entsprechen, wobei die maschinelle Lernvorrichtung umfasst: eine Achswinkel-Umrechnungseinheit, die aus den Bewegungsbahndaten einen Änderungsbetrag des Achswinkels der Achse des Roboters berechnet; eine Zustandsbeobachtungseinheit, die Achswinkeldaten in Bezug auf den von der Achswinkel-Umrechnungseinheit berechneten Änderungsbetrag des Achswinkels der Achse des Roboters als eine einen aktuellen Zustand einer Umgebung darstellende Zustandsvariable beobachtet; eine Labeldaten-Erfassungseinheit, die Achswinkelbefehlsdaten in Bezug auf die Befehlsdaten für die Achse des Roboters als Labeldaten erfasst; und eine Lerneinheit, die den Änderungsbetrag des Achswinkels der Achse des Roboters und Befehlsdaten für die Achse des Roboters in Zuordnung zueinander unter Verwendung der Zustandsvariablen und der Labeldaten lernt.
  • Ein weiterer Aspekt der vorliegenden Erfindung ist eine maschinelle Lernvorrichtung, die die Folgerung von an eine Achse eines Roboters auszugebende Befehlsdaten gelernt hat, wobei die Befehlsdaten den Bewegungsdaten einer Endposition eines Arms des Roboters entsprechen, wobei die maschinelle Lernvorrichtung umfasst: eine Achswinkel-Umrechnungseinheit, die aus den Bewegungsbahndaten einen Änderungsbetrag des Achswinkels der Achse des Roboters berechnet; eine Zustandsbeobachtungseinheit, die Achswinkeldaten in Bezug auf den von der Achswinkel-Umrechnungseinheit berechneten Änderungsbetrag des Achswinkels der Achse des Roboters als eine einen aktuellen Zustand einer Umgebung darstellende Zustandsvariable beobachtet; und eine Lerneinheit, die den Änderungsbetrag des Achswinkels der Achse des Roboters und Befehlsdaten für die Achse des Roboters in Zuordnung zueinander gelernt hat; und eine Folgerungsergebnis-Ausgabeeinheit, die auf der Grundlage der von der Zustandsbeobachtungseinheit beobachteten Zustandsvariablen und eines Lernergebnisses durch die Lerneinheit Befehlsdaten für die Achse des Roboters folgert und sie ausgibt.
  • Die vorliegende Erfindung ermöglicht es, dass Befehlsdaten für einen Roboter vielseitig gefolgert werden können, indem verschiedene Bewegungen des Roboters eingelernt werden, da basierend auf einer Soll-Bewegungsbahn des Roboters an jede Achse des Roboters auszugebende Befehlsdaten gefolgert werden können.
  • Figurenliste
  • Die Aufgabe und die Merkmale, die vorstehenden beschrieben sind, sowie andere Aufgaben und Merkmale der vorliegenden Erfindung werden aus der folgenden Beschreibung der Ausführungsbeispiele mit Bezug auf die beigefügten Zeichnungen ersichtlich, in denen:
    • 1 ein schematisches Hardware-Konfigurationsdiagramm einer Steuerung gemäß einer Ausführungsform zeigt;
    • 2 ein schematisches Funktionsblockdiagramm einer Steuerung gemäß einer Ausführungsform zeigt;
    • 3 ein Schaubild zeigt, das ein Beispiel für Bewegungsbahndaten darstellt;
    • 4 ein Schaubild zeigt, das ein Beispiel für Eingabe- und Ausgabedaten in einer Lerneinheit darstellt;
    • 5 ein schematisches Funktionsblockdiagramm zeigt, das einen Modus einer Steuerung darstellt; und
    • 6 ein schematisches Funktionsblockdiagramm zeigt, das einen Modus eines Systems mit integrierter Steuerung darstellt.
  • AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Ausführungsformen der vorliegenden Erfindung werden mit Bezug auf die Zeichnungen beschrieben.
  • 1 ist ein schematisches Hardware-Konfigurationsdiagramm, das einen Hauptteil einer Steuerung gemäß einer ersten Ausführungsform darstellt. Eine Steuerung 1 kann als Steuerung implementiert werden, die beispielsweise einen Roboter steuert. Die Steuerung 1 kann ferner als ein Computer implementiert werden, der in Verbindung mit einer Steuerung bereitgestellt wird, die einen Roboter steuert, oder als ein Computer, wie beispielsweise ein Zellencomputer, ein Host-Computer oder ein Cloud-Server, der über ein Netzwerk mit der Steuerung verbunden ist. 1 stellt ein Beispiel dar, in dem die Steuerung 1 als eine Steuerung implementiert ist, die eine Fertigungsmaschine steuert.
  • Eine CPU 11 der Steuerung 1 gemäß der vorliegenden Ausführungsform ist ein Prozessor, der im Allgemeinen die Steuerung 1 steuert. Die CPU 11 liest ein in einem ROM 12 gespeichertes Systemprogramm über einen Bus 20 und steuert die gesamte Steuerung 1 gemäß dem Systemprogramm. Ein RAM 13 speichert Daten, wie temporäre Berechnungsdaten und Anzeigedaten, verschiedene Daten, die von einem Bediener über eine Eingabeeinheit eingegeben werden (nicht dargestellt).
  • Ein nichtflüchtiger Speicher 14 ist als ein Speicher konfiguriert, der einen gespeicherten Zustand aufrechterhält, indem er mit einer Batterie gesichert wird (nicht dargestellt), wenn beispielsweise die Steuerung 1 ausgeschaltet ist. Der nichtflüchtige Speicher 14 speichert ein über eine Schnittstelle 19 gelesenes Steuerprogramm, eine über ein Bedienfeld 71 eingelernte Position, und Daten, wie beispielsweise verschiedene vom Roboter, seinen Peripheriegeräten und einem Bewegungsbahn-Messgerät 3 erfasste Daten. Das im nichtflüchtigen Speicher 14 gespeicherte Programm kann bei Verwendung in den RAM 13 geladen werden. Weiterhin werden verschiedene Systemprogramme (einschließlich eines Systemprogramms zur Steuerung der Kommunikation mit einer maschinellen Lernvorrichtung 100), die für den Betrieb der Steuerung 1 erforderlich sind, vorab in den ROM 12 geschrieben.
  • Das Bewegungsbahn-Messgerät 3 ist ein Messgerät, wie beispielsweise ein Laser-Tracker, das eine Betriebsbewegungsbahn eines Zielobjekts direkt als Positionsdaten misst und in der vorliegenden Ausführungsform Positionsdaten eines Endes eines Armes eines Roboters durch Messen eines zu messenden Objekts misst, das am Ende des Armes des Roboters als Bewegungsbahn-Messpunkt während des Lernens durch die maschinelle Lernvorrichtung 100 befestigt ist. Die CPU 11 erfasst die Positionsdaten als Bewegungsbahndaten über eine Schnittstelle 18.
  • Eine Achssteuerschaltung 30 zum Steuern einer Achse des Roboters empfängt von der CPU 11 einen vorgegebenen Achsenbewegungsbetrag und gibt einen Achsenbefehl an einen Servoverstärker 40 aus. Als Reaktion auf diesen Befehl treibt der Servoverstärker 40 einen Servomotor 50 an, der die Achse des Roboters bewegt. Der Servomotor 50 für die Achse verfügt über einen Positions-/Geschwindigkeitsdetektor und führt eine Regelung von Positions-/Geschwindigkeit durch, indem er ein Positions-/Geschwindigkeits-Rückmeldesignal von dem Positions-/Geschwindigkeitsdetektor an die Achssteuerschaltung 30 zurückführt.
  • Obwohl in dem Hardware-Konfigurationsdiagramm in 1 nur ein Achssteuerkreis 30, ein Servoverstärker 40 und ein Servomotor 50 dargestellt sind, sind genauso viele dieser Komponenten wie die Anzahl der Achsen eines zu steuernden Roboters vorgesehen.
  • Eine Schnittstelle 21 ist eine Schnittstelle zur Verbindung der Steuerung 1 und der maschinellen Lernvorrichtung 100. Die maschinelle Lernvorrichtung 100 umfasst einen Prozessor 101, der die gesamte maschinelle Lernvorrichtung 100 steuert, einen ROM 102, der ein Systemprogramm und dergleichen speichert, einen RAM 103 zur Zwischenspeicherung in jedem Prozess in Bezug auf das maschinelle Lernen, und einen nichtflüchtigen Speicher 104, der zum Speichern eines Lernmodells und dergleichen verwendet wird. Die maschinelle Lernvorrichtung 100 ist in der Lage, jede Art von Information zu beobachten, die in der Steuerung 1 über die Schnittstelle 21 erfasst werden kann. Weiterhin steuert die Steuerung 1 den Roboter auf der Grundlage eines von der maschinellen Lernvorrichtung 100 ausgegebenen Wertes.
  • 2 ist ein schematisches Funktionsblockdiagramm der Steuerung 1 und der maschinellen Lernvorrichtung 100 gemäß der ersten Ausführungsform. Die in 2 gezeigten Funktionsblöcke werden von der CPU 11 der Steuerung 1 und dem Prozessor 101 der in 1 dargestellten maschinellen Lernvorrichtung 100 implementiert, die ihre jeweiligen Systemprogramme ausführen, um den Betrieb jeder Einheit der Steuerung 1 und der maschinellen Lernvorrichtung 100 zu steuern.
  • Die Steuerung 1 gemäß der vorliegenden Ausführungsform umfasst eine Steuereinheit 34, die einen Block eines Steuerprogramms und eine im nichtflüchtigen Speicher 14 gespeicherte eingelernte Position liest und einen Roboter 2 und dessen Peripherievorrichtungen steuert.
  • Die Steuereinheit 34 ist ein Funktionsmittel zum Lesen eines Blocks eines Steuerprogramms und einer im nichtflüchtigen Speicher 14 gespeicherten eingelernten Position (oder eines Blocks eines Steuerprogramms und einer im RAM 13 geladenen eingelernten Position), um den Roboter 2 auf der Grundlage eines Befehls gemäß dem Block zu steuern. Die Steuereinheit 34 umfasst allgemeine Funktionen zum Steuern jedes Teils des Roboters 2, wie etwa: wenn ein Block des Steuerprogramms anweist, jede Achse (Gelenk) des Roboters 2 zu bewegen, Ausgabe von Befehlsdaten in jedem Steuerintervall als einen Änderungsbetrag eines Achswinkels an einen Servomotor 50, der die Achse antreibt, und wenn ein Block des Steuerprogramms anweist, eine in dem Roboter 2 vorgesehene Peripherievorrichtung (nicht dargestellt) zu betreiben, Ausgabe eines Betriebsbefehls an die Peripherievorrichtung.
  • Andererseits umfasst die in der Steuerung 1 vorgesehene maschinelle Lernvorrichtung 100 Software (wie etwa einen Lernalgorithmus) und Hardware (wie etwa den Prozessor 101), um selbstständig die Folgerung auf jegliche Achswinkelbefehlsdaten des Roboters 2, die den Bewegungsbahndaten eines Endes eines Arms des Roboters 2 (einem Änderungsbetrag des Achswinkels jeder Achse, daraus umgerechnet) entsprechen, durch sogenanntes maschinelles Lernen einzulernen. Was die in der Steuerung 1 bereitgestellte maschinelle Lernvorrichtung 100 von selbst einlernt, entspricht einer Modellstruktur, die die Korrelation zwischen Bewegungsbahndaten des Endes des Armes des Roboters 2 (einem daraus umgerechneten Änderungsbetrag des Achswinkels jeder Achse) und jeglichen Achswinkelbefehlsdaten des Roboters 2 darstellt.
  • Wie in den Funktionsblöcken in 2 gezeigt, umfasst die in der Steuerung 1 vorgesehene maschinelle Lernvorrichtung 100 eine Achswinkel-Umrechnungseinheit 105, die einen Änderungsbetrag des Achswinkels jeder Achse des Roboters 2 aus der Position des Endes des Arms des Roboters 2, die in den durch Messung mit dem Bewegungsbahnmessgerät 3 erfassten Bewegungsbahndaten umfasst ist, erhält, eine Zustandsbeobachtungseinheit 106, die eine einen aktuellen Zustand einer Umgebung darstellende Zustandsvariable S beobachtet, die Achswinkeldaten S1 umfasst, die den durch die Achswinkel-Umrechnungseinheit 105 umgerechneten Achswinkel jeder Achse des Roboters 2 anzeigen, eine Labeldaten-Erfassungseinheit 108, die Labeldaten L erfasst, die Achswinkelbefehlsdaten L1 umfassen, die einen an jede Achse des Roboters 2 auszugebenden Änderungsbetrag eines Achswinkels anzeigen, die Lerneinheit 110, die einen Änderungsbetrag des Achswinkels jeder Achse, der in Zuordnung zu einem aus Bewegungsbahndaten des Endes des Arms des Roboters 2 umgerechneten Änderungsbetrag des Achswinkels der Achse an den Roboter 2 auszugeben ist, unter Verwendung der Zustandsvariablen S und der Labeldaten L erlernt, und eine Folgerungsergebnis-Ausgabeeinheit 122, die einen Änderungsbetrag des Achswinkels ausgibt, der aus (einem Änderungsbetrag des Achswinkels jeder Achse, umgerechnet aus) Bewegungsbahndaten des Endes des Arms des Roboters 2 unter Verwendung eines gelernten Modells durch die Lerneinheit 110 gefolgert wurde und an die Achse des Roboters 2 als Achswinkelbefehlsdaten auszugeben ist.
  • Die Achswinkel-Umrechnungseinheit 105 ist ein Funktionsmittel zum Durchführen einer Umrechnung in einen Änderungsbetrag des Achswinkels jeder Achse des Roboters 2 auf der Grundlage der Position des Endes des Arms des Roboters 2, die in den Bewegungsdatendaten umfasst ist, die von dem Bewegungsbahnmessgerät 3 erfasst werden, das das am Ende des Arms des Roboters 2 befestigte zu messende Objekt misst. Die Achswinkel-Umrechnungseinheit 105 erhält einen Achswinkel (Position) jeder Achse des wie der Position des Endes des Arms des Roboters 2 und der Länge eines jeden der Arme, aus denen der Roboter 2 besteht, indem ein bekanntes Verfahren, wie die inverse Kinematik, verwendet wird, und berechnet einen Änderungsbetrag des Achswinkels der Achse aus dem erhaltenen Achswinkel der Achse.
  • 3 ist ein Diagramm, das ein Beispiel für Bewegungsbahndaten des Endes des Armes des Roboters 2 zeigt. Die Bewegungsbahndaten des Endes des Arms des Roboters 2 können als eine Reihe von Positionsdaten (in einem vorbestimmten Koordinatensystem, z.B. einem Roboterkoordinatensystem) definiert werden, die von dem Bewegungsbahnmessgerät 3 gemessen werden, das die Position des am Ende des Arms des Roboters 2 in vorbestimmten Abständen befestigten zu messenden Objekts misst. Die Achswinkel-Umrechnungseinheit 105 erhält einen Änderungsbetrag des Achswinkels jeder Achse in vorbestimmten Intervallen auf der Grundlage jeder Positionsdateninformation des zu messenden Objekts, die in jedem Intervall in den Bewegungsbahndaten umfasst ist. Wenn beispielsweise die in 3 gezeigten Bewegungsbahndaten erfasst wurden, erhält die Achswinkel-Umrechnungseinheit 105 nacheinander einen Änderungsbetrag Da1 der axialen Geschwindigkeit jeder Achse, wenn sich das zu messende Objekt von P0 nach P1 bewegt, einen Änderungsbetrag Da2 der axialen Geschwindigkeit jeder Achse, wenn sich das zu messende Objekt von P1 nach P2 bewegt, und so weiter.
  • Während Bewegungsbahndaten, die von der Achswinkel-Umrechnungseinheit 105 zum Erhalten eines Änderungsbetrags des Achswinkels verwendet werden, bei jeder Bewegung von dem Bewegungsbahnmessgerät 3 erfasst werden können, können von dem Bewegungsbahnmessgerät 3 gemessene Bewegungsbahndaten in einem Speicher, wie dem nichtflüchtigen Speicher 14, zwischengespeichert und beim anschließenden Lernen aus dem Speicher erfasst werden. In diesem Fall wird vorzugsweise eine Zeit oder dergleichen in Zuordnung so gespeichert, dass eine Übereinstimmung zwischen (jeder Positionsdateninformation, die in den) Bewegungsbahndaten, die auf dem Speicher gespeichert sind, und den von der Steuereinheit 34 an den Roboter 2 ausgegebenen Befehlsdaten (z.B. eine Übereinstimmung zwischen den Positionsdaten P1 und den Befehlsdaten Ca1 , wenn Befehlsdaten C1 von der Steuereinheit 34 an jede Achse des Roboters 2 ausgegeben werden, wenn die Position des zu messenden Objekts bei P1 liegt) identifiziert werden kann.
  • Die Zustandsbeobachtungseinheit 106 erfasst die Achswinkeldaten S1 von der Achswinkel-Umrechnungseinheit 105 als Zustandsvariable S während des Lernens durch die Lerneinheit 110. Weiterhin erfasst die Zustandsbeobachtungseinheit 106 die Achswinkeldaten S1 (Da: Da1 , Da2 , ...) als Zustandsvariable S aus der Achswinkel-Umrechnungseinheit 105 während der Folgerung auf Achswinkelbefehlsdaten für jede Achse des Roboters 2 unter Verwendung eines Lernergebnisses durch die Lerneinheit 110.
  • Die Labeldaten-Erfassungseinheit 108 erfasst Achswinkelbefehlsdaten L1 (Ca: Ca1 , Ca2 , ...) in Bezug auf Achswinkelbefehlsdaten für jede Achse, die von der Steuereinheit 34 während des Lernens durch die Lerneinheit 110 an den Roboter 2 als Labeldaten L ausgegeben werden. Als Achswinkelbefehlsdaten L1 können beispielsweise Achswinkelbefehlsdaten für jede Achse, die von der Steuereinheit 34 an den Roboter 2 ausgegeben werden, direkt erfasst werden, oder Achswinkelbefehlsdaten für jede Achse, die von der Steuereinheit 34 an den Roboter 2 ausgegeben werden, können in einem Speicher, wie dem nichtflüchtigen Speicher 14, zwischengespeichert und beim späteren Lernen aus dem Speicher erfasst werden. Im letzteren Fall wird beispielsweise eine Zeit oder dergleichen vorzugsweise in Zuordnung gespeichert, so dass eine Übereinstimmung zwischen den im Speicher gespeicherten Befehlsdaten und (jeder Positionsdateninformation in den) Bewegungsbahndaten identifiziert werden kann. Es ist zu beachten, dass die Labeldaten-Erfassungseinheit 108 während des Lernens von der Lerneinheit 110 verwendet wird und nicht als wesentlicher Bestandteil der maschinellen Lernvorrichtung 100 einbezogen werden muss, nachdem das Lernens durch die Lerneinheit 110 abgeschlossen worden ist.
  • Die Lerneinheit 110 lernt Labeldaten L (Achswinkelbefehlsdaten L1, die Achswinkelbefehlsdaten für jede Achse des Roboters 2 anzeigen), die einer Zustandsvariablen S (Achswinkeldaten S1, die einen aus Bewegungsbahndaten des Endes des Arms des Roboters 2 umgerechneten Änderungsbetrag des Achswinkels jeder Achse anzeigen,) gemäß einem von beliebigen Lernalgorithmen, die insgesamt als maschinelles Lernen bezeichnet werden, entsprechen. So kann beispielsweise die Lerneinheit 110 eine Korrelation zwischen den in einer Zustandsvariablen S umfassten Achswinkeldaten S1 und den in den Labeldaten L umfassten Achswinkelbefehlsdaten L1 lernen. Die Lerneinheit 110 kann wiederholt ein Lernen basierend auf einem Datensatz mit einer Zustandsvariablen S und den Labeldaten L durchführen.
  • Im einfachsten Fall kann die Lerneinheit 110 dazu konfiguriert werden, eine Beziehung zwischen einem in den Achswinkeldaten S1 umfassten Änderungsbetrag Da des Achswinkels jeder Achse und einer in den Achswinkelbefehlsdaten L1 enthaltenen Befehlsdateninformation Ca für die Achse zu lernen. Weiterhin kann die Lerneinheit 110 dazu konfiguriert werden, eine Beziehung zwischen einer Reihe von (einer Mehrzahl von) Änderungsbeträgen des Achswinkels jeder Achse zu lernen (beispielsweise in 3, einen Änderungsbetrag des Achswinkels jeder Achse beim Bewegen von P0 nach P1 , einen Änderungsbetrag des Achswinkels jeder Achse beim Bewegen von P1 nach P2 , einen Änderungsbetrag des Achswinkels jeder Achse beim Bewegen von P2 nach P3, ...), die in den Achswinkeldaten S1 und einer Reihe von (einer Mehrzahl von) in den Achswinkelbefehlsdaten L1 umfassten Befehlsdaten für jede Achse umfasst sind. Im letzteren Fall wird die Genauigkeit der Achswinkelbefehlsdaten als Folgerungsergebnis verbessert, da Achswinkelbefehlsdaten für jede Achse gefolgert werden können, indem alle Beziehungen mit einer Reihe von Änderungsbeträgen des Achswinkels jeder Achse berücksichtigt werden, die zur gleichen Zeit eingegeben werden.
  • 4 zeigt ein Beispiel für Eingabe- und Ausgabedaten eines maschinellen Lerners, der die Lerneinheit 110 bildet. Eine Konfiguration in 4, bei der m gleich 1 ist, entspricht der einfachsten Konfiguration der Lerneinheit 110.
  • Beim Lernen durch die Lerneinheit 110 ist es wünschenswert, dass eine Mehrzahl von Lernzyklen basierend auf den für jeden aus einer Mehrzahl von Robotern 2 erfassten Daten durchgeführt wird. Durch Wiederholen solcher Lernzyklen interpretiert die Lerneinheit 110 automatisch eine Korrelation zwischen einem aus Bewegungsbahndaten des Endes des Arms jedes Roboters 2 umgerechneten Änderungsbetrag des Achswinkels jeder Achse (Achswinkeldaten S1) und Achswinkelbefehlsdaten (Achswinkelbefehlsdaten L1) für jede Achse des Roboters 2. Während die Korrelation der Achswinkelbefehlsdaten L1 mit den Achswinkeldaten S1 zu Beginn eines Lernalgorithmus praktisch unbekannt ist, interpretiert die Lerneinheit 110 schrittweise die Beziehung zwischen den Achswinkeldaten S1 und den Achswinkelbefehlsdaten L1, während die Lerneinheit 110 weiterhin lernt, und wird dadurch befähigt, die Korrelation der Achswinkelbefehlsdaten L1 mit den Achswinkeldaten S1 unter Verwendung eines daraus resultierenden erlernten Modells zu interpretieren.
  • Es sollte angemerkt werden, dass die Lerneinheit 110 zwar so konfiguriert werden kann, dass sie ein einzelnes Lernmodell umfasst, dass aber verschiedene Lernmodelle, die von Trägheiten abhängig sind, die beispielsweise aus einer Struktur und Positionshaltung des Roboters 2 (und dem Gewicht eines Objekts, das am Ende des Armes des Roboters 2 befestigt oder gegriffen wird) gewonnen werden können, bereitgestellt werden können. In diesem Fall kann eine Mehrzahl von Intervallen basierend auf Werten von Trägheiten erstellt werden, können verschiedene Lernmodelle für die verschiedenen Intervalle aufgebaut werden, kann ein Lernmodell ausgewählt werden, das einer Trägheit entspricht, die basierend auf einer Struktur oder Positionshaltung des Roboters 2 (und dem Gewicht eines Objekts, das am Ende des Arms des Roboters 2 befestigt oder gegriffen wird) berechnet wird, und kann ein Lernen und eine Folgerung unter Verwendung des Lernmodells durchgeführt werden. Auf diese Weise können Lernmodelle, die jeweils einen Bewegungsunterschied des Roboters aufgrund eines Trägheitsunterschieds widerspiegeln, individuell aufgebaut werden, so dass die Kosten für den Aufbau gelernter Modelle (die Zeit und dergleichen, die zum Konvergieren eines Lernmodell benötigt werden) und die Größen der gelernten Modelle reduziert werden können.
  • Basierend auf einem Ergebnis des Lernens (ein gelerntes Modell) durch die Lerneinheit 110 folgert die Folgerungsergebnis-Ausgabeeinheit 122 Achswinkelbefehlsdaten für jede Achse des Roboters 2 basierend auf (einem Änderungsbetrag des Achswinkels jeder Achse, der umgerechnet wurde aus) Bewegungsbahndaten des Endes des Arms des Roboters 2 und gibt die gefolgerten Achswinkelbefehlsdaten für jede Achse des Roboters 2 aus. Insbesondere zeigen Achswinkelbefehlsdaten L1 in Bezug auf Achswinkelbefehlsdaten für jede Achse des Roboters 2, die von der Lerneinheit 110 in Zuordnung zu Achswinkeldaten S1 gelernt wurden, die einen aus Bewegungsbahndaten des Endes des Arms des Roboters 2 umgerechneten Änderungsbetrag des Achswinkels jeder Achse anzeigen, Befehlsdaten an, die von der Steuereinheit 34 an jede Achse des Roboters 2 auszugeben sind, und der Wert wird bei der Folgerung ausgegeben, die ein gelerntes Modell von der Lerneinheit 110 verwendet. Basierend auf dem Ausgabewert folgert die Folgerungsergebnis-Ausgabeeinheit 122 dann einen Befehl, der an jede Achse des Roboters 2 auszugeben ist, um eine Bewegungsbahn (Soll-Bewegungsbahn) zu erreichen, der das Ende des Roboters 2 folgen soll, und gibt das Ergebnis der Folgerung an die Steuereinheit 34 aus.
  • Die Folgerungsergebnis-Ausgabeeinheit 122 wird von der maschinellen Lernvorrichtung 100 bei der Folgerung von Achswinkelbefehlsdaten verwendet, die von der Steuereinheit 34 an den Roboter 2 für Soll-Bewegungsbahndaten des Roboters 2 auszugeben sind. Wenn insbesondere Soll-Bewegungsbahndaten, denen das Ende des Roboters 2 folgen soll, von einer externen Quelle, wie dem Bedienfeld 71, oder von einem Steuerprogramm in die maschinelle Lernvorrichtung 100 eingegeben werden, berechnet die Achswinkel-Umrechnungseinheit 105 einen Änderungsbetrag des Achswinkels jeder Achse des Roboters 2 auf der Grundlage der eingegebenen Soll-Bewegungsbahndaten, und die Folgerungsergebnis-Ausgabeeinheit 122 folgert Achswinkelbefehlsdaten L1, bei denen es sich um einen an jede Achse des Roboters 2 auszugebenden Änderungsbetrag des Achswinkels handelt, indem ein Lernergebnisses der Lerneinheit 110 mit dem berechneten Änderungsbetrag des Achswinkels jeder Achse des Roboters 2 als Achswinkeldaten S1 verwendet wird.
  • In der maschinellen Lernvorrichtung 100 mit der vorstehend beschriebenen Konfiguration ist ein von der Lerneinheit 110 auszuführender Lernalgorithmus nicht besonders eingeschränkt, und es können alle bekannten Lernalgorithmen für das maschinelle Lernen verwendet werden. 5 stellt eine weitere Betriebsart der in 2 dargestellten Steuerung 1 dar und ist eine Konfiguration mit der Lerneinheit 110, die überwachtes Lernen als weiteres Beispiel für einen Lernalgorithmus durchführt. Überwachtes Lernen ist ein Verfahren, bei dem ein bekannter Datensatz (als Trainingsdaten bezeichnet), der eine Eingabe und eine der Eingabe entsprechende Ausgabe umfasst, bereitgestellt wird und ein Merkmal, das eine Korrelation zwischen der Eingabe und der Ausgabe impliziert, aus den Trainingsdaten identifiziert wird, wodurch ein Korrelationsmodell zum Folgern einer erforderlichen Ausgabe, die einer neuen Eingabe entspricht, gelernt wird.
  • In der in der in 3 gezeigten Steuerung 1 vorgesehenen maschinellen Lernvorrichtung 100 umfasst die Lerneinheit 110 eine Fehlerberechnungseinheit 112, die einen Fehler E zwischen einem Korrelationsmodell M zum Folgern von Achswinkelbefehlsdaten für jede Achse des Roboters 2 auf der Grundlage eines aus Bewegungsbahndaten des Endes des Arms des Roboters 2 umgerechneten Änderungsbetrags des Achswinkels jeder Achse und einem korrelierenden Merkmal berechnet, das aus den Trainingsdaten T identifiziert wurde, die aus einem Änderungsbetrag des Achswinkels jeder Achse erhalten wurden, der aus in der Vergangenheit erfassten Bewegungsbahndaten des Endes des Arms des Roboters 2 und einem Ergebnis jeder aktuellen Achswinkel-Befehlsdateninformation für den Roboter 2 umgerechnet wurde, und eine Modellaktualisierungseinheit 114, die das Korrelationsmodell M aktualisiert, um den Fehler E zu reduzieren. Die Lerneinheit 110 lernt die Folgerung von jeder Achswinkel-Befehlsdateninformation für den Roboter 2 basierend auf einem Änderungsbetrag des Achswinkels jeder Achse, der aus den Bewegungsbahndaten des Endes des Arms des Roboters 2 durch wiederholte Aktualisierungen des Korrelationsmodells M durch die Modellaktualisierungseinheit 114 umgerechnet wird.
  • Ein Anfangswert des Korrelationsmodells M ist beispielsweise eine vereinfachte Darstellung (beispielsweise unter Verwendung einer linearen Funktion) einer Korrelation zwischen einer Zustandsvariablen S und den Labeldaten L und wird der Lerneinheit 110 vor Beginn des überwachten Lernens bereitgestellt. Wie vorstehend beschrieben, können Daten über einen Änderungsbetrag des Achswinkels jeder Achse, der aus in der Vergangenheit erfassten Bewegungsbahndaten des Endes des Arms des Roboters 2 und Daten über jede aktuelle Achswinkel-Befehlsdateninformation für den Roboter 2 umgerechnet wurde, als Trainingsdaten T in der vorliegenden Erfindung verwendet werden und der Lerneinheit 110 bei Bedarf während des Betriebs der Steuerung 1 zur Verfügung gestellt werden. Die Fehlerberechnungseinheit 112 identifiziert ein korrelierendes Merkmal, das eine Korrelation zwischen einem aus Bewegungsbahndaten des Endes des Arms des Roboters 2 umgerechneten Änderungsbetrag des Achswinkels jeder Achse und jeder Achswinkel-Befehlsdateninformation für den Roboter 2, die dem Roboter 2 mit einem Identifikationscode 2 angehängt wird, impliziert, unter Verwendung der der Lerneinheit 110 bei Bedarf bereitgestellten Trainingsdaten T, und erhält einen Fehler E zwischen dem korrelierenden Merkmal und einem Korrelationsmodell M, das einer Zustandsvariablen S im aktuellen Zustand und den Labeldaten L entspricht. Die Modellaktualisierungseinheit 114 aktualisiert zum Beispiel das Korrelationsmodell M in der Richtung, in der der Fehler E gemäß einer vorgegebenen Aktualisierungsregel reduziert wird.
  • Im nächsten Lernzyklus werden Achswinkelbefehlsdaten für jede Achse des Roboters 2 unter Verwendung der Zustandsvariablen S gemäß dem aktualisierten Korrelationsmodell M gefolgert, die Fehlerberechnungseinheit 112 erhält einen Fehler E zwischen einem Ergebnis der Folgerung und den aktuell erfassten Labeldaten L, und die Modellaktualisierungseinheit 114 aktualisiert das Korrelationsmodell M erneut. Auf diese Weise wird schrittweise ein Zusammenhang zwischen dem bisher unbekannten aktuellen Zustand der Umgebung und einer Folgerung für den aktuellen Zustand deutlich gemacht.
  • Wenn das oben beschriebene überwachte Lernen durchgeführt wird, kann ein neuronales Netzwerk verwendet werden. Obwohl ein neuronales Netzwerk, das drei Schichten umfasst, nämlich eine Eingabeschicht, eine Zwischenschicht und eine Ausgabeschicht, als das neuronale Netzwerk verwendet werden kann, kann auch eine sogenannte Deep-Learning-Technik, die ein aus mehr als drei Schichten bestehendes neuronales Netzwerk verwendet, verwendet werden, um eine Konfiguration bereitzustellen, die effektiveres Lernen und Folgern ermöglicht.
  • Weiterhin kann ein wiederkehrendes neuronales Netzwerk verwendet werden, in dem Daten, die in einer Zeitfolge eingegeben werden, gelernt und unter Berücksichtigung vergangener Eingaben gefolgert werden. Wenn das wiederkehrende neuronale Netzwerk verwendet wird, ist ein maschineller Lerner, der eine Lerneinheit 110 bildet, in der Lage, durch Berücksichtigung einer früheren Reihe von Bewegungen eines Roboters 2 selbst dann zu lernen und zu folgern, wenn der maschinelle Lerner dazu konfiguriert ist, eine Beziehung zwischen einem in den Achswinkeldaten S1 umfassten Änderungsbetrag Da des Achswinkels jeder Achse und einer in den Achswinkelbefehlsdaten L1 umfassten Befehlsdateninformation Ca für die Achse zu lernen.
  • Die oben beschriebene Konfiguration der maschinellen Lernvorrichtung 100 kann durch ein maschinelles Lernverfahren (oder Software) beschrieben werden, das von dem Prozessor 101 Schritt für Schritt ausgeführt wird. Das maschinelle Lernverfahren ist ein maschinelles Lernverfahren, bei dem ein aus Bewegungsbahndaten eines Endes eines Arms eines Roboters 2 umgerechneter Änderungsbetrag des Achswinkels jeder Achse verwendet wird, um die Folgerung von Achswinkelbefehlsdaten für den Roboter 2 zu lernen, und es umfasst die Schritte des Beobachtens, durch einen Prozessor 101, eines Änderungsbetrags des Achswinkels (Achswinkeldaten S1) jeder Achse, der aus Bewegungsbahndaten des Endes des Arms des Roboters 2 als eine einen aktuellen Zustand darstellende Zustandsvariable S umgerechnet wird, des Erfassens von Achswinkelbefehlsdaten (Achswinkelbefehlsdaten L1) für jede Achse des Roboters 2 als Labeldaten L und des Lernens der Achswinkeldaten S1 und der Achswinkelbefehlsdaten für jede Achse des Roboters 2 in Zuordnung zueinander unter Verwendung der Zustandsvariablen S und der Labeldaten L.
  • Ein gelerntes Modell, das durch das Lernen durch die Lerneinheit 110 der maschinellen Lernvorrichtung 100 erfasst wird, kann als ein Programmmodul verwendet werden, das Teil der Software für das maschinelle Lernen ist. Ein gelerntes Modell der vorliegenden Erfindung kann auf einem Computer verwendet werden, der einen Prozessor, wie etwa eine CPU oder einen GPU, und einen Speicher umfasst. Insbesondere arbeitet der Prozessor des Computers gemäß einem Befehl von dem in dem Speicher gespeicherten gelernten Modell, um eine Berechnung durchzuführen, indem ein aus Bewegungsbahndaten eines Endes eines Arms des Roboters 2 umgerechneter Änderungsbetrag des Achswinkels jeder Achse als Eingabe genommen wird, und ein Folgerungsergebnis von Achswinkelbefehlsdaten für jede Achse des Roboters 2 auf der Grundlage des Ergebnisses der Berechnung auszugeben. Das erlernte Modell der vorliegenden Erfindung kann über ein externes Speichermedium, ein Netzwerk oder dergleichen auf einen anderen Computer kopiert und auf dem Computer verwendet werden.
  • Wenn ein gelerntes Modell der vorliegenden Erfindung auf einen anderen Computer kopiert und in einer neuen Umgebung verwendet wird, kann das gelernte Modell ferner basierend auf einer neuen Zustandsvariablen und den von der Umgebung erfassten Labeldaten eingelernt werden. In diesem Fall kann ein basierend auf der Umgebung aus dem erlernten Modell abgeleitetes gelerntes Modell (nachfolgend als abgeleitetes Modell bezeichnet) erhalten werden. Das abgeleitete Modell der vorliegenden Erfindung ist mit dem ursprünglichen erlernten Modell dahingehend identisch, dass ein Folgerungsergebnis der Achswinkelbefehlsdaten für jede Achse eines Roboters 2 basierend auf einem aus Bewegungsbahndaten eines Endes eines Arms des Roboters 2 umgerechneten Änderungsbetrag des Achswinkels jeder Achse ausgegeben wird, unterscheidet sich aber von dem ursprünglichen erlernten Modell dadurch, dass das Ausgabeergebnis besser an die neue Umgebung angepasst ist als das des ursprünglichen erlernten Modells. Das abgeleitete Modell kann ferner über ein externes Speichermedium, ein Netzwerk oder dergleichen auf einen anderen Computer kopiert und auf dem Computer verwendet werden.
  • Weiterhin kann ein gelerntes Modell, das durch Verwendung einer Ausgabe erhalten wird, die für eine Eingabe in eine ein gelerntes Modell der vorliegenden Erfindung integrierende maschinelle Lernvorrichtung erhalten wird, um von Anfang an in einer anderen maschinellen Lernvorrichtung ein Lernen durchzuführen (im Folgenden als destilliertes Modell bezeichnet), aufgebaut werden, und das destillierte Modell kann verwendet werden (ein solcher Lernprozess wird als Destillation bezeichnet). Bei der Destillation wird das ursprüngliche gelernte Modell auch als Lehrermodell bezeichnet und das neu aufgebaute, destillierte Modell wird auch als Schülermodell bezeichnet. Im Allgemeinen ist ein destilliertes Modell kleiner als sein ursprüngliches gelerntes Modell und kann dennoch einen Genauigkeitsgrad erreichen, der dem des ursprünglichen gelernten Modells entspricht, und eignet sich daher besser für die Verteilung an andere Computer über ein externes Speichermedium, ein Netzwerk oder dergleichen.
  • 6 zeigt ein System 170, das eine Steuerung 1 gemäß einer Ausführungsform umfasst. Das System 170 umfasst mindestens eine Steuerung 1, die als Teil eines Computers, wie etwa ein Zellencomputer, ein Host-Computer oder ein Cloud-Server, implementiert ist, eine Mehrzahl von Robotern 2 (Fertigungsmaschinen, die mit Robotern 2 ausgestattet sind) und ein drahtgebundenes/drahtloses Netzwerk 172, das die Steuerung 1 und die Roboter 2 miteinander verbindet.
  • In dem System 170 mit der vorstehend beschriebenen Konfiguration ist die eine maschinelle Lernvorrichtung 100 umfassende Steuerung 1 in der Lage, automatisch und genau Achswinkelbefehlsdaten für jede Achse jedes Roboters 2 zu folgern, die den Bewegungsbahndaten eines Endes eines Arms des Roboters 2 entsprechen, indem ein Ergebnis des Lernens durch eine Lerneinheit 110 verwendet wird. Weiterhin kann die maschinelle Lernvorrichtung 100 der Steuerung 1 dazu konfiguriert werden, die Folgerung von Achswinkelbefehlsdaten für jede Achse eines Roboters 2, die allen Robotern 2 gemeinsam sind, auf der Grundlage einer Zustandsvariablen S und für jeden der Mehrzahl von Robotern 2 erfassten Labeldaten L zu lernen und zu ermöglichen, dass ein Ergebnis des Lernens in allen Robotern 2 verwendet werden kann. Das System 170 kann daher die Geschwindigkeit und Zuverlässigkeit des Lernens der Folgerung von Achswinkelbefehlsdaten für jede Achse von Robotern 2 verbessern, indem eine größere Vielfalt von Datensätzen (einschließlich der Zustandsvariablen S und Labeldaten L) als Eingaben genommen wird.
  • Obwohl Ausführungsformen der vorliegenden Erfindung vorstehend beschrieben wurden, ist die vorliegende Erfindung nicht auf die vorstehend beschriebenen Ausführungsformen beschränkt und kann durch Vornehmen geeigneter Modifikationen auf verschiedene Arten implementiert werden.
  • Beispielsweise sind Algorithmen, wie ein Lernalgorithmus und ein Rechenalgorithmus, die von der maschinellen Lernvorrichtung 100 ausgeführt werden, und ein von der Steuerung 1 ausgeführter Algorithmus nicht auf die oben beschriebenen beschränkt und es können verschiedene Algorithmen verwendet werden.
  • Obwohl die Steuerung 1 und die maschinelle Lernvorrichtung 100 als Vorrichtungen beschrieben wurden, die unterschiedliche CPUs in den obigen Ausführungsformen aufweisen, kann des Weiteren die maschinelle Lernvorrichtung 100 durch eine CPU 11 der Steuerung 1 und ein in einem ROM 12 gespeichertes Systemprogramm implementiert werden.
  • Obwohl Ausführungsformen der vorliegenden Erfindung beschrieben wurden, ist die vorliegende Erfindung nicht auf die vorstehend beschriebenen Ausführungsbeispiele beschränkt und kann durch Vornehmen geeigneter Modifikationen auf andere Arten implementiert werden.
  • 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 2018058685 [0001]
    • JP 2006110702 [0004]
    • JP 2004322224 [0004]
    • JP 2017127964 [0004]

Claims (9)

  1. Steuerung, die auf der Grundlage von Bewegungsbahndaten einer Endposition eines Roboterarms an eine Achse eines Roboter auszugebende Befehlsdaten folgert, wobei die Steuerung eine maschinelle Lernvorrichtung umfasst, die die Folgerung von Befehlsdaten lernt, die den Bewegungsbahndaten entsprechen und an die Achse des Roboters auszugeben sind, umfassend: eine Achswinkel-Umrechnungseinheit, die aus den Bewegungsbahndaten einen Änderungsbetrag des Achswinkels der Achse des Roboters berechnet; eine Zustandsbeobachtungseinheit, die Achswinkeldaten in Bezug auf den von der Achswinkel-Umrechnungseinheit berechneten Änderungsbetrag des Achswinkels der Achse des Roboters als eine einen aktuellen Zustand einer Umgebung darstellende Zustandsvariable beobachtet; eine Labeldaten-Erfassungseinheit, die Achswinkelbefehlsdaten in Bezug auf die Befehlsdaten für die Achse des Roboters als Labeldaten erfasst; und eine Lerneinheit, die den Änderungsbetrag des Achswinkels der Achse des Roboters und Befehlsdaten für die Achse des Roboters in Zuordnung zueinander unter Verwendung der Zustandsvariablen und der Labeldaten lernt.
  2. Steuerung nach Anspruch 1, wobei die Lerneinheit umfasst: eine Fehlerberechnungseinheit, die einen Fehler zwischen einem Korrelationsmodell zum Folgern von Befehlsdaten für die Achse des Roboters aus der Zustandsvariablen und einem aus vorab bereitgestellten Trainingsdaten identifizierten korrelierenden Merkmal berechnet; und eine Modellaktualisierungseinheit, die das Korrelationsmodell aktualisiert, um den Fehler zu reduzieren.
  3. Steuerung nach Anspruch 1 oder 2, wobei die Lerneinheit die Zustandsvariable und die Labeldaten unter Verwendung einer Mehrschichtstruktur berechnet.
  4. Steuerung nach einem der Ansprüche 1 bis 3, wobei die Lerneinheit unter Verwendung eines Lernmodells aufgebaut ist, das basierend auf Zeitreihendaten erlernbar ist.
  5. Steuerung, die auf der Grundlage von Bewegungsbahndaten einer Endposition eines Arms des Roboters an eine Achse eines Roboters auszugebende Befehlsdaten folgert, wobei die Steuerung eine maschinelle Lernvorrichtung umfasst, die die Folgerung von Befehlsdaten gelernt hat, die den Bewegungsbahndaten entsprechen und an eine Achse des Roboters auszugeben sind, umfassend: eine Achswinkel-Umrechnungseinheit, die aus den Bewegungsbahndaten einen Änderungsbetrag des Achswinkels der Achse des Roboters berechnet; eine Zustandsbeobachtungseinheit, die Achswinkeldaten in Bezug auf den von der Achswinkel-Umrechnungseinheit berechneten Änderungsbetrag des Achswinkels der Achse des Roboters als eine einen aktuellen Zustand einer Umgebung darstellende Zustandsvariable beobachtet; eine Lerneinheit, die den Änderungsbetrag des Achswinkels der Achse des Roboters und Befehlsdaten für die Achse des Roboters in Zuordnung zueinander gelernt hat; und eine Folgerungsergebnis-Ausgabeeinheit, die auf der Grundlage der von der Zustandsbeobachtungseinheit beobachteten Zustandsvariablen und eines Lernergebnisses durch die Lerneinheit Befehlsdaten für die Achse des Roboters folgert und ausgibt.
  6. Steuerung nach einem der Ansprüche 1 bis 5, wobei die Lerneinheit ein Lernmodell, das einer auf der Grundlage einer Struktur des Roboters berechneten Trägheit entspricht, aus einer Mehrzahl von Lernmodellen, von denen jedes einem Intervall von Trägheiten zugeordnet ist, auswählt und verwendet.
  7. Steuerung nach einem der Ansprüche 1 bis 6, wobei die maschinelle Lernvorrichtung auf einem Cloud-Server vorhanden ist.
  8. Maschinelle Lernvorrichtung, die an eine Achse eines Roboters auszugebende Befehlsdaten lernt, wobei die Befehlsdaten Bewegungsbahndaten einer Endposition eines Roboterarms entsprechen, wobei die maschinelle Lernvorrichtung umfasst: eine Achswinkel-Umrechnungseinheit, die aus den Bewegungsbahndaten einen Änderungsbetrag des Achswinkels der Achse des Roboters berechnet; eine Zustandsbeobachtungseinheit, die Achswinkeldaten in Bezug auf den von der Achswinkel-Umrechnungseinheit berechneten Änderungsbetrag des Achswinkels der Achse des Roboters als eine einen aktuellen Zustand einer Umgebung darstellende Zustandsvariable beobachtet; eine Labeldaten-Erfassungseinheit, die Achswinkelbefehlsdaten in Bezug auf die Befehlsdaten für die Achse des Roboters als Labeldaten erfasst; und eine Lerneinheit, die den Änderungsbetrag des Achswinkels der Achse des Roboters und Befehlsdaten für die Achse des Roboters in Zuordnung zueinander unter Verwendung der Zustandsvariablen und der Labeldaten lernt.
  9. Maschinelle Lernvorrichtung, die die Folgerung von an eine Achse eines Roboters auszugebenden Befehlsdaten gelernt hat, wobei die Befehlsdaten Bewegungsbahndaten einer Endposition eines Arms des Roboters entsprechen, wobei die maschinelle Lernvorrichtung umfasst: eine Achswinkel-Umrechnungseinheit, die aus den Bewegungsbahndaten einen Änderungsbetrag des Achswinkels der Achse des Roboters berechnet; eine Zustandsbeobachtungseinheit, die Achswinkeldaten in Bezug auf den von der Achswinkel-Umrechnungseinheit berechneten Änderungsbetrag des Achswinkels der Achse des Roboters als eine einen aktuellen Zustand einer Umgebung darstellende Zustandsvariable beobachtet; und eine Lerneinheit, die den Änderungsbetrag des Achswinkels der Achse des Roboters und Befehlsdaten für die Achse des Roboters in Zuordnung zueinander gelernt hat; und eine Folgerungsergebnis-Ausgabeeinheit, die auf der Grundlage der von der Zustandsbeobachtungseinheit beobachteten Zustandsvariablen und eines Lernergebnisses durch die Lerneinheit Befehlsdaten für die Achse des Roboters folgert und ausgibt.
DE102019001948.2A 2018-03-26 2019-03-19 Steuerung und maschinelle Lernvorrichtung Active DE102019001948B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-058685 2018-03-26
JP2018058685A JP6781183B2 (ja) 2018-03-26 2018-03-26 制御装置及び機械学習装置

Publications (2)

Publication Number Publication Date
DE102019001948A1 true DE102019001948A1 (de) 2019-09-26
DE102019001948B4 DE102019001948B4 (de) 2022-07-28

Family

ID=67848372

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019001948.2A Active DE102019001948B4 (de) 2018-03-26 2019-03-19 Steuerung und maschinelle Lernvorrichtung

Country Status (4)

Country Link
US (1) US11235461B2 (de)
JP (1) JP6781183B2 (de)
CN (1) CN110355751B (de)
DE (1) DE102019001948B4 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019216229A1 (de) * 2019-10-07 2021-04-08 Robert Bosch Gmbh Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
DE102019216560A1 (de) * 2019-10-28 2021-04-29 Robert Bosch Gmbh Verfahren und Vorrichtung zum Trainieren von Manipulationsfertigkeiten eines Robotersystems
DE102021204697A1 (de) 2021-05-10 2022-11-10 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Steuern einer Robotervorrichtung
DE102021209867A1 (de) 2021-09-07 2023-03-09 Kuka Deutschland Gmbh Bewerten und/oder Steuern eines Roboterarbeitsprozesses

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6781183B2 (ja) 2018-03-26 2020-11-04 ファナック株式会社 制御装置及び機械学習装置
JP7092307B2 (ja) * 2019-02-01 2022-06-28 三菱電機株式会社 作業判別装置および作業判別方法
CN110161850B (zh) * 2019-04-24 2020-04-07 南京航空航天大学 一种工业机器人变参数刚度辨识与建模方法
JP7263920B2 (ja) * 2019-05-23 2023-04-25 トヨタ自動車株式会社 演算装置、制御プログラム、機械学習器及び把持装置
JP7021158B2 (ja) * 2019-09-04 2022-02-16 株式会社東芝 ロボットシステムおよび駆動方法
JP7351935B2 (ja) * 2020-01-28 2023-09-27 株式会社Fuji 制御装置、制御方法、情報処理装置及び情報処理方法
KR20230003615A (ko) * 2020-06-26 2023-01-06 미쓰비시덴키 가부시키가이샤 백래시량 측정 장치 및 백래시량 측정 방법
CN112297008B (zh) 2020-10-28 2021-11-26 珠海格力电器股份有限公司 识别控制指令的方法及装置、非易失性存储介质、处理器
CA3213106A1 (en) * 2021-03-10 2022-09-15 Schlumberger Canada Limited Methods and systems for operational surveillance of a physical asset using smart event detection
WO2023190843A1 (ja) * 2022-03-31 2023-10-05 住友重機械工業株式会社 支援装置、作業機械、プログラム
WO2023223570A1 (ja) * 2022-05-18 2023-11-23 三菱電機株式会社 制御装置、ロボットシステム、学習装置、ロボットの制御方法およびプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004322224A (ja) 2003-04-21 2004-11-18 Yaskawa Electric Corp ロボット制御装置
JP2006110702A (ja) 2004-10-18 2006-04-27 Fanuc Ltd 学習制御機能を備えたロボット及びロボットの制御方法
JP2017127964A (ja) 2016-01-14 2017-07-27 ファナック株式会社 学習機能を備えたロボット装置
JP2018058685A (ja) 2016-10-07 2018-04-12 日本総合整美株式会社 ハンドレールのコーティング方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0588721A (ja) * 1991-09-30 1993-04-09 Fujitsu Ltd 関節型ロボツトの制御装置
JP2001277166A (ja) * 2000-03-31 2001-10-09 Sony Corp ロボット及びロボットの行動決定方法
JPWO2004033159A1 (ja) * 2002-10-11 2006-02-09 富士通株式会社 ロボット制御アルゴリズム構築装置、ロボット制御アルゴリズム構築プログラムロボット制御装置、ロボット制御プログラム、およびロボット
US8600552B2 (en) 2009-10-30 2013-12-03 Honda Motor Co., Ltd. Information processing method, apparatus, and computer readable medium
US8886359B2 (en) 2011-05-17 2014-11-11 Fanuc Corporation Robot and spot welding robot with learning control function
JP5896789B2 (ja) 2012-03-07 2016-03-30 キヤノン株式会社 ロボット制御装置、ロボット装置、ロボット制御方法、プログラム及び記録媒体
WO2013164470A1 (en) 2012-05-04 2013-11-07 Leoni Cia Cable Systems Sas Imitation learning method for a multi-axis manipulator
WO2015058297A1 (en) * 2013-10-25 2015-04-30 Vakanski Aleksandar Image-based trajectory robot programming planning approach
JP6347595B2 (ja) * 2013-11-25 2018-06-27 キヤノン株式会社 ロボット制御方法、及びロボット制御装置
US9630318B2 (en) * 2014-10-02 2017-04-25 Brain Corporation Feature detection apparatus and methods for training of robotic navigation
KR20180059888A (ko) * 2015-10-14 2018-06-05 카와사키 주코교 카부시키 카이샤 로봇교시방법 및 로봇 암 제어장치
JP6339603B2 (ja) * 2016-01-28 2018-06-06 ファナック株式会社 レーザ加工開始条件を学習する機械学習装置、レーザ装置および機械学習方法
US10471595B2 (en) * 2016-05-31 2019-11-12 Ge Global Sourcing Llc Systems and methods for control of robotic manipulation
JP6514166B2 (ja) * 2016-09-16 2019-05-15 ファナック株式会社 ロボットの動作プログラムを学習する機械学習装置,ロボットシステムおよび機械学習方法
CN106997175A (zh) * 2016-10-21 2017-08-01 遨博(北京)智能科技有限公司 一种机器人仿真控制方法及装置
JP2018126798A (ja) * 2017-02-06 2018-08-16 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
CN106774345B (zh) * 2017-02-07 2020-10-30 上海仙软信息科技有限公司 一种进行多机器人协作的方法与设备
JP6781183B2 (ja) 2018-03-26 2020-11-04 ファナック株式会社 制御装置及び機械学習装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004322224A (ja) 2003-04-21 2004-11-18 Yaskawa Electric Corp ロボット制御装置
JP2006110702A (ja) 2004-10-18 2006-04-27 Fanuc Ltd 学習制御機能を備えたロボット及びロボットの制御方法
JP2017127964A (ja) 2016-01-14 2017-07-27 ファナック株式会社 学習機能を備えたロボット装置
JP2018058685A (ja) 2016-10-07 2018-04-12 日本総合整美株式会社 ハンドレールのコーティング方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019216229A1 (de) * 2019-10-07 2021-04-08 Robert Bosch Gmbh Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
DE102019216229B4 (de) 2019-10-07 2022-11-10 Robert Bosch Gmbh Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
DE102019216560A1 (de) * 2019-10-28 2021-04-29 Robert Bosch Gmbh Verfahren und Vorrichtung zum Trainieren von Manipulationsfertigkeiten eines Robotersystems
DE102019216560B4 (de) 2019-10-28 2022-01-13 Robert Bosch Gmbh Verfahren und Vorrichtung zum Trainieren von Manipulationsfertigkeiten eines Robotersystems
US11590651B2 (en) 2019-10-28 2023-02-28 Robert Bosch Gmbh Method and device for training manipulation skills of a robot system
DE102021204697A1 (de) 2021-05-10 2022-11-10 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Steuern einer Robotervorrichtung
DE102021204697B4 (de) 2021-05-10 2023-06-01 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Steuern einer Robotervorrichtung
DE102021209867A1 (de) 2021-09-07 2023-03-09 Kuka Deutschland Gmbh Bewerten und/oder Steuern eines Roboterarbeitsprozesses

Also Published As

Publication number Publication date
CN110355751B (zh) 2023-04-28
JP6781183B2 (ja) 2020-11-04
JP2019166626A (ja) 2019-10-03
US11235461B2 (en) 2022-02-01
CN110355751A (zh) 2019-10-22
US20190291271A1 (en) 2019-09-26
DE102019001948B4 (de) 2022-07-28

Similar Documents

Publication Publication Date Title
DE102019001948B4 (de) Steuerung und maschinelle Lernvorrichtung
DE112018006161B4 (de) System und Verfahren zum Steuern eines Fahrzeugs
DE112013003209B4 (de) Robotersteuerungsvorrichtung und Robotersteuerungsverfahren
DE102013202378B4 (de) Prozedurales Gedächtnislernen und Robotersteuerung
DE2330054C2 (de) Vorrichtung zur Steuerung der Bewegung eines Arbeitselementes eines Roboterarmes
DE102016012065B4 (de) Robotersystem mit Funktion zum Berechnen von Position und Ausrichtung eines Sensors
EP2146825B1 (de) Bewegungssteuerung für elastische roboterstrukturen
DE102015010124B4 (de) Roboterprogramm-Erzeugungsvorrichtung, die Roboterprogramm zum Reduzieren von Stössen der Gelenke des Roboters erzeugt
DE102016013731A1 (de) Robotersystem mit Funktionen zum Vereinfachen von Lehrvorgängen und Verbessern der Betriebsleistung durch Lernen
DE112018000122T5 (de) Maschinelles-Lernen-Vorrichtung, Korrekturparameter-Anpassungssystem und Maschinelles-Lernen-Verfahren
DE102020132093A1 (de) Vorrichtung für maschinelles Lernen, Steuervorrichtung, Bearbeitungssystem und Verfahren für maschinelles Lernen zum Lernen eines Korrekturbetrags eines Werkstückmodells
DE102017000063A1 (de) Robotereinrichtung mit Lernfunktion
DE102018129528A1 (de) Schwingungsunterdrückungsvorrichtung
DE102018008370A1 (de) Lebensdauervorhersagegerät
EP1715352A2 (de) Verfahren und Vorrichtung zur Fehlerdiagnose mechatronischer Systeme
DE102009003003A1 (de) Numerische Steuerung mit der Funktion einer Koordinatentransformation der Werkzeugphase
DE102014118001A1 (de) Verfahren zur Bewegungssimulation eines Manipulators
DE102021204697B4 (de) Verfahren zum Steuern einer Robotervorrichtung
DE102018214272A1 (de) Robotersystem
DE112019007222T5 (de) Motorsteuereinrichtung
DE112018006220T5 (de) Verwendung eines Unterstützungsmotors eines Servolenkungssystems zum Erzeugen von Testzyklen gemäß einem Schwingungserfassungszyklus
DE102019104922A1 (de) Kollisionspositionsschätzvorrichtung und maschinenlernvorrichtung
DE102019205651B3 (de) Verfahren und System zum Ausführen von Roboterapplikationen
DE102020211648A1 (de) Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
DE3742686A1 (de) Vorrichtung zur modellgefuehrten steuerung eines roboters

Legal Events

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