DE102019006725B4 - Steuereinrichtung und Steuersystem - Google Patents

Steuereinrichtung und Steuersystem Download PDF

Info

Publication number
DE102019006725B4
DE102019006725B4 DE102019006725.8A DE102019006725A DE102019006725B4 DE 102019006725 B4 DE102019006725 B4 DE 102019006725B4 DE 102019006725 A DE102019006725 A DE 102019006725A DE 102019006725 B4 DE102019006725 B4 DE 102019006725B4
Authority
DE
Germany
Prior art keywords
data
manipulator
controller
learning
control
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.)
Active
Application number
DE102019006725.8A
Other languages
English (en)
Other versions
DE102019006725A1 (de
Inventor
Takashi Satou
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
Priority claimed from JP2019108190A external-priority patent/JP6928031B2/ja
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102019006725A1 publication Critical patent/DE102019006725A1/de
Application granted granted Critical
Publication of DE102019006725B4 publication Critical patent/DE102019006725B4/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
    • B25J13/00Controls for manipulators
    • 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/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/005Manipulators for mechanical processing tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/005Manipulators for mechanical processing tasks
    • B25J11/0065Polishing or grinding
    • 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
    • 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/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/1679Programme controls characterised by the tasks executed
    • B25J9/1687Assembly, peg and hole, palletising, straight line, weaving pattern movement
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0205Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
    • G05B13/024Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system in which a parameter or coefficient is automatically adjusted to optimise the performance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4083Adapting programme, configuration
    • 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/39218Force tracking
    • 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/39318Position loop ann and velocity loop ann and force loop ann
    • 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/39323Force and motion control

Abstract

Steuersystem (500), das ein System ist, in dem eine Mehrzahl von Vorrichtungen über ein Netzwerk miteinander verbunden ist, wobei die Mehrzahl von Vorrichtungen eine erste Steuereinrichtung (1) beinhaltet, die einen Industrieroboter (2) mit einer Funktion zum Erkennen einer Kraft und eines Moments, die auf einen Manipulator ausgeübt werden, steuert, wobei die erste Steuereinrichtung aufweist:eine Steuereinheit (32), die den Industrieroboter auf Grundlage eines Steuerbefehls steuert;eine Datenerfassungseinheit (34), die die Kraft und/oder das Moment, die auf den Manipulator des Industrieroboters ausgeübt werden, als Erfassungsdaten erfasst; undeine Vorverarbeitungseinheit (36), die Kraftzustandsdaten, die Informationen in Bezug auf die Kraft beinhalten, die auf den Manipulator ausgeübt wird, und Steuerbefehls-Einstelldaten, die ein Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator angeben, als Zustandsdaten auf Grundlage der Erfassungsdaten erzeugt, wobeidie Vorverarbeitungseinheit (36) Ermittlungsdaten, die ein Ermittlungsergebnis eines Betriebszustands des Manipulators angeben, nachdem das Einstellverhalten weiter durchgeführt worden ist, auf Grundlage der Erfassungsdaten erzeugt, unddie erste Steuereinrichtung ferner eine Lerneinheit (110) aufweist, die ein Lernmodell erzeugt, das durch Anwenden eines bestärkenden Lernens auf das Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator im Hinblick auf den Zustand der auf den Manipulator ausgeübten Kraft als Prozess des maschinellen Lernens mithilfe der Zustandsdaten und der Ermittlungsdaten gewonnen wird, wobeidie erste Steuereinrichtung einen Prozess eines maschinellen Lernens in Bezug auf das Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator auf Grundlage der Zustandsdaten durchführt, wobeidie Mehrzahl von Vorrichtungen eine zweite Steuereinrichtung (1') beinhaltet, die sich von der ersten Steuereinrichtung unterscheidet, und ein Lernergebnis durch die erste Steuereinrichtung gemeinsam mit der zweiten Steuereinrichtung genutzt wird.

Description

  • Die vorliegende Erfindung bezieht sich auf eine Steuereinrichtung und ein Steuersystem und im Besonderen auf eine Steuereinrichtung und ein Steuersystem, die in der Lage sind, Parameter wie zum Beispiel eine Druckkraft, eine Verfahrgeschwindigkeit und eine Verfahrrichtung geeignet einzustellen, insbesondere wenn ein Manipulator eines Roboters kraftgesteuert wird.
  • Ein Roboter mit einem Kraftsensor kann für Vorgänge wie zum Beispiel ein präzises Aneinanderpassen von Teilen, Einstellen der Phasen von Zahnrädern, Entgraten und Polieren verwendet werden. Wenn ein Roboter veranlasst wird, einen solchen Vorgang durchzuführen, wird der Roboter veranlasst, ein Teil oder ein Werkzeug zu greifen, um dadurch die Kraft in einer vorgegebenen Richtung auf einen gewünschten Wert zu steuern (Kraftsteuerung). Als ein solches Kraftsteuerungsverfahren sind eine Impedanzsteuerung, eine Dämpfungssteuerung, eine Hybridsteuerung und dergleichen bekannt. Bei allen diesen Steuerverfahren muss eine geeignete Steuerverstärkung festgelegt werden. Es ist ein Verfahren zum automatischen Einstellen der Steuerverstärkung bekannt (siehe zum Beispiel Dokument JP 2007 - 237 312 A ).
  • Wie oben beschrieben, ist das Verfahren zum Festlegen der Steuerverstärkung bei einer Kraftsteuerung allgemein bekannt, jedoch hängen die sonstigen Parameter wie zum Beispiel eine geeignete Druckkraft, Verfahrgeschwindigkeit und Verfahrrichtung von der Einstellung durch den Bediener ab. Für einen in einer solchen Parametereinstellung unerfahrenen Bediener ist es schwierig, eine tatsächliche Einstellung durchzuführen, was zu Problemen wie zum Beispiel Zeitaufwand führt, der in einem Wechsel zwischen Bedienern resultiert, wobei das Werkstück oder das Werkzeug durch Festlegen ungeeigneter Werte während der Einstellung beschädigt wird.
  • Beispiele für Steuereinrichtungen und Steuersysteme, insbesondere für Industrieroboter, werden durch die Dokumente DE 20 2017 105 598 U1 , DE 10 2016 011 532 A1 , DE 10 2012 104 194 B4 , EP 3 357 651 A2 , EP 3 357 649 A2 und JP 2014 - 006 566 A offenbart.
  • Es besteht die technische Aufgabe ein verbessertes Steuersystem bereitzustellen, welches eine effiziente Steuerung von Industrierobotern ermöglicht.
  • Diese technische Aufgabe wird durch den Gegenstand des Hauptanspruchs gelöst. Die weiteren Ansprüche definieren vorteilhafte Ausgestaltungen des Gegenstands des Hauptanspruchs.
  • Grundsätzlich ist es erwünscht, eine Steuereinrichtung und ein Steuersystem vorzusehen, die in der Lage sind, Parameter wie zum Beispiel eine Druckkraft, eine Verfahrgeschwindigkeit und eine Verfahrrichtung in geeigneter Weise einzustellen, wenn ein Manipulator eines Roboters gesteuert wird. Dazu kann die Steuereinrichtung des Roboters mit einer Funktion zur Verwendung von maschinellem Lernen ausgestattet werden, um Parameter in Bezug auf eine Steuerung eines Manipulators eines Industrieroboters automatisch einzustellen.
  • Eine Steuereinrichtung kann einen Industrieroboter mit einer Funktion zum Erkennen einer Kraft und eines Moments, die auf einen Manipulator ausgeübt werden, steuern und beinhaltet: eine Steuereinheit, die den Industrieroboter auf Grundlage eines Steuerbefehls steuert; eine Datenerfassungseinheit, die die Kraft und/oder das Moment, die auf den Manipulator des Industrieroboters ausgeübt werden, als Erfassungsdaten erfasst; und eine Vorverarbeitungseinheit, die Kraftzustandsdaten, die Informationen in Bezug auf die Kraft beinhalten, die auf den Manipulator ausgeübt wird, und Steuerbefehls-Einstelldaten, die ein Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator angeben, als Zustandsdaten auf Grundlage der Erfassungsdaten erzeugt. Und die Steuereinrichtung führt einen Prozess eines maschinellen Lernens in Bezug auf das Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator auf Grundlage der Zustandsdaten durch.
  • Die Vorverarbeitungseinheit kann Ermittlungsdaten, die ein Ermittlungsergebnis eines Betriebszustands des Manipulators angeben, nachdem das Einstellverhalten weiter durchgeführt worden ist, auf Grundlage der Erfassungsdaten erzeugen, und die Steuereinrichtung kann ferner eine Lerneinheit beinhalten, die ein Lernmodell erzeugt, das durch Anwenden eines bestärkenden Lernens auf das Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator im Hinblick auf den Zustand der auf den Manipulator ausgeübten Kraft als Prozess des maschinellen Lernens mithilfe der Zustandsdaten und der Ermittlungsdaten gewonnen wird.
  • Die Steuereinrichtung kann ferner beinhalten: eine Lernmodell-Speichereinheit, die ein Lernmodell speichert, das durch Anwenden von bestärkendem Lernen auf das Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator im Hinblick auf den Zustand der auf den Manipulator ausgeübten Kraft gewonnen wird, und eine Entscheidungsfindungseinheit, die das Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator mithilfe des in der Lernmodell-Speichereinheit gespeicherten Lernmodells auf Grundlage der Zustandsdaten als Prozess des maschinellen Lernens schätzt.
  • Die Vorverarbeitungseinheit kann Belastungsermittlungsdaten, die ein Ausmaß einer Belastung angeben, die auf den Manipulator ausgeübt wird, nachdem das Einstellverhalten durchgeführt worden ist, als Ermittlungsdaten erzeugen.
  • Die Vorverarbeitungseinheit kann Betriebszeitdaten, die ein Ausmaß einer Betriebszeit des Manipulators angeben, nachdem das Einstellverhalten durchgeführt worden ist, als Ermittlungsdaten erzeugen.
  • Ein System kann ein System sein, in dem eine Mehrzahl von Vorrichtungen über ein Netzwerk miteinander verbunden ist, wobei die Mehrzahl von Vorrichtungen eine erste Steuereinrichtung beinhaltet, bei der es sich um die oben genannte Steuereinrichtung handelt.
  • Die Mehrzahl von Vorrichtungen kann einen Computer beinhalten, der eine Vorrichtung für maschinelles Lernen aufweist, der Computer kann ein Lernmodell als mindestens ein Ergebnis des bestärkenden Lernens der ersten Steuereinrichtung erfassen, und die in dem Computer vorgesehene Vorrichtung für maschinelles Lernen kann auf Grundlage des erfassten Lernmodells eine Optimierung oder Verbesserung durchführen.
  • Die Mehrzahl von Vorrichtungen kann eine zweite Steuereinrichtung beinhalten, die sich von der ersten Steuereinrichtung unterscheidet, und ein Lernergebnis durch die erste Steuereinrichtung kann gemeinsam mit der zweiten Steuereinrichtung genutzt werden.
  • Die Mehrzahl von Vorrichtungen kann eine zweite Steuereinrichtung beinhalten, die sich von der ersten Steuereinrichtung unterscheidet, und durch die zweite Steuereinrichtung beobachtete Daten können über das Netzwerk für ein bestärkendes Lernen durch die erste Steuereinrichtung zur Verfügung stehen.
  • Parameter wie zum Beispiel eine Druckkraft, eine Verfahrgeschwindigkeit und eine Verfahrrichtung bei einer Steuerung eines Manipulators eines Roboters auf Grundlage von Lernergebnissen können in geeigneter Weise eingestellt werden.
    • 1 ist eine schematische graphische Darstellung einer Hardware-Konfiguration einer Steuereinrichtung;
    • 2 ist eine schematische graphische Darstellung von Funktionsblöcken einer Steuereinrichtung gemäß;
    • 3 ist eine Ansicht, die ein Beispiel für einen Vorgang zum Passen von Teilen durch einen Industrieroboter darstellt;
    • 4 ist eine Ansicht, die ein Beispiel für einen Zahnradmontagevorgang durch den Industrieroboter darstellt;
    • 5 ist eine Ansicht, die ein Beispiel für einen Werkstück-Entgratungs- und Werkstück-Poliervorgang durch den Industrieroboter darstellt;
    • 6 ist eine Ansicht, die ein Beispiel für ein System mit einer dreifachen Hierarchiestruktur darstellt, das einen Cloud-Server, einen Fog-Computer und einen Edge-Computer beinhaltet;
    • 7 ist eine schematische graphische Darstellung einer Hardware-Konfiguration der Steuereinrichtung, die auf einem Computer implementiert ist;
    • 8 ist eine schematische graphische Darstellung einer Konfiguration eines Steuersystems;
    • 9 ist eine schematische graphische Darstellung einer Konfiguration eines Steuersystems; und
    • 10 ist eine schematische graphische Darstellung einer Konfiguration eines Steuersystems.
  • 1 ist eine schematische graphische Darstellung einer Hardware-Konfiguration, die Hauptbestandteile einer eine Vorrichtung für maschinelles Lernen enthaltenden Steuereinrichtung gemäß eines Beispiels darstellt. Eine Steuereinrichtung 1 kann als Steuereinrichtung implementiert werden, die einen Industrieroboter steuert, der zum Beispiel Teile passt und montiert, entgratet und dergleichen.
  • Eine in der Steuereinrichtung 1 vorgesehene CPU 11 ist ein Prozessor, der die gesamte Steuereinrichtung 1 steuert. Die CPU 11 liest ein in einem ROM 12 gespeichertes Systemprogramm über einen Bus 20 und steuert die gesamte Steuereinrichtung 1 entsprechend dem Systemprogramm. Ein RAM 13 speichert vorübergehend temporäre Berechnungsdaten sowie verschiedene Daten, die von einem Bediener durch eine Lehrbedientafel 60, eine Eingabevorrichtung 71 und dergleichen eingegeben werden.
  • Ein nichtflüchtiger Speicher 14 besteht zum Beispiel aus einem durch eine (nicht dargestellte) Batterie gesicherten Speicher, einem Halbleiterlaufwerk (solid state drive, SSD) und dergleichen und ist so konfiguriert, dass der Speicherzustand aufrechterhalten wird, selbst wenn die Steuereinrichtung 1 ausgeschaltet wird. Der nichtflüchtige Speicher 14 speichert von der Lehrbedientafel 60 durch eine Schnittstelle 19 eingegebene Lehrdaten, von der Eingabevorrichtung 71 eingegebene Daten, ein durch eine (nicht dargestellte) Schnittstelle eingegebenes Industrieroboter-Steuerprogramm, durch einen an dem Industrieroboter angebrachten Sensor 3 erkannte Daten (eine Kraft oder ein Moment, die auf den Manipulator ausgeübt werden), durch einen Servomotor 50 erkannte Daten (den Stromwert, die Position, die Geschwindigkeit, die Beschleunigung, das Drehmoment und dergleichen des Servomotors 50) zum Antreiben einer Achse des Industrieroboters, durch eine (nicht dargestellte) externe Speichervorrichtung oder ein Netzwerk gelesene Daten und dergleichen. Die Programme und die verschiedenen Daten, die in dem nichtflüchtigen Speicher 14 gespeichert sind, können in den RAM 13 geladen werden, wenn sie ausgeführt oder verwendet werden. Es ist zu beachten, dass verschiedene Systemprogramme (einschließlich eines Systemprogramms zum Steuern von Wechselwirkungen mit einer im Folgenden beschriebenen Vorrichtung 100 für maschinelles Lernen) zum Ausführen von Prozessen zum Anlernen einer Robotersteuerung und einer Lehrposition im Voraus in den ROM 12 geschrieben werden.
  • Verschiedene in den Speicher gelesene Daten, als Ergebnis einer Ausführung von Programmen und dergleichen gewonnene Daten und von einer im Folgenden beschriebenen Vorrichtung 100 für maschinelles Lernen ausgegebene Daten und sonstige Daten werden durch die Schnittstelle 17 ausgegeben und auf einer Anzeigevorrichtung 70 angezeigt. Ferner übergibt die Eingabevorrichtung 71, die eine Tastatur, eine Zeigevorrichtung und dergleichen beinhaltet, einen Befehl, Daten und dergleichen auf Grundlage der Bedienung durch einen Bediener durch eine Schnittstelle 18 an die CPU 11.
  • Bei der Lehrbedientafel 60 handelt es sich um eine Vorrichtung zur manuellen Dateneingabe, die eine Anzeige, ein Handrad, einen Hardware-Schlüssel und dergleichen beinhaltet. Die Lehrbedientafel 60 empfängt Informationen durch eine Schnittstelle 19 von der Steuereinrichtung 1 und zeigt diese an und übergibt Impulse, Befehle und verschiedene von dem Handrad, dem Hardware-Schlüssel und dergleichen eingegebene Daten an die CPU 11.
  • Eine Achsensteuerschaltung 30 zum Steuern einer Achse eines in dem Industrieroboter vorgesehenen Gelenks und dergleichen empfängt einen Achsenbewegungs-Befehlsbetrag von der CPU 11 und gibt einen Achsenbefehl an einen Servoverstärker 40 aus. Wenn dieser Befehl empfangen wird, steuert der Servoverstärker 40 den Servomotor 50 so an, dass er die in dem Roboter vorgesehene Achse bewegt. Der Servomotor 50 der Achse enthält einen Positions-/Drehzahldetektor und führt ein Positions-/Drehzahl-Rückkopplungssignal von diesem Positions-/Drehzahldetektor zu der Achsensteuerschaltung 30 zurück, um eine Positions-/Drehzahlregelung durchzuführen. Es ist zu beachten, dass die graphische Darstellung der Hardware-Konfiguration von 1 nur einen Satz der Achsensteuerschaltung 30, des Servoverstärkers 40 und des Servomotors 50 darstellt, der Satz der Vorrichtungen jedoch tatsächlich für jede in dem zu steuernden Roboter vorgesehene Achse bereitgestellt wird. Wenn der Roboter zum Beispiel sechs Achsen aufweist, werden sechs Sätze der Achsensteuerschaltung 30, des Servoverstärkers 40 und des Servomotors 50 bereitgestellt.
  • Bei einer Schnittstelle 21 handelt es sich um eine Schnittstelle zum Verbinden der Steuereinrichtung 1 und der Vorrichtung 100 für maschinelles Lernen. Die Vorrichtung 100 für maschinelles Lernen weist einen Prozessor 101 zum Steuern der gesamten Vorrichtung 100 für maschinelles Lernen, einen ROM 102 zum Speichern des Systemprogramms und dergleichen, einen RAM 103 zum vorübergehenden Speichern in jedem Prozess in Bezug auf maschinelles Lernen und einen nichtflüchtigen Speicher 104 zur Verwendung beim Speichern des Lernmodells und dergleichen auf. Die Vorrichtung 100 für maschinelles Lernen kann jede einzelne Information (die Kraft oder das Moment, die auf den Manipulator ausgeübt werden, und den Stromwert, die Position, die Geschwindigkeit, die Beschleunigung, das Drehmoment und dergleichen des Servomotors 50) beobachten, die durch die Steuereinrichtung 1 durch die Schnittstelle 21 erfasst werden kann. Ferner empfängt die Steuereinrichtung 1 eine Änderungsanweisung eines Kraftbefehls oder eines Drehmomentbefehls, der von der Vorrichtung 100 für maschinelles Lernen ausgegeben wird, und führt eine Korrektur oder dergleichen auf Grundlage des Programms oder der Lehrdaten an dem Robotersteuerbefehl durch.
  • 2 ist eine schematische graphische Darstellung von Funktionsblöcken der Steuereinrichtung 1 und der Vorrichtung 100 für maschinelles Lernen gemäß eines ersten Beispiels.
  • Die Steuereinrichtung 1 weist eine Konfiguration auf, die erforderlich ist, wenn die Vorrichtung 100 für maschinelles Lernen ein Lernen (einen Lernmodus) durchführt. Jeder in 2 dargestellte Funktionsblock wird implementiert, wenn die in der Steuereinrichtung 1 vorgesehene CPU 11 und der Prozessor 101 der in 1 dargestellten Vorrichtung 100 für maschinelles Lernen die jeweiligen Systemprogramme ausführen und den Betrieb jeder Einheit der Steuereinrichtung 1 und der Vorrichtung 100 für maschinelles Lernen steuern.
  • Diese Steuereinrichtung 1 beinhaltet eine Steuereinheit 32, eine Datenerfassungseinheit 34 und eine Vorverarbeitungseinheit 36. Die in der Steuereinrichtung 1 vorgesehene Vorrichtung 100 für maschinelles Lernen beinhaltet eine Lerneinheit 110 und eine Entscheidungsfindungseinheit 120. Ferner beinhaltet der nichtflüchtige Speicher 14 eine Erfassungsdaten-Speichereinheit 54 zum Speichern von von einem Industrieroboter 2, dem Sensor 3 und dergleichen erfassten Daten. Der nichtflüchtige Speicher 104 in der Vorrichtung 100 für maschinelles Lernen beinhaltet eine Lernmodell-Speichereinheit 130 zum Speichern eines durch maschinelles Lernen durch eine Lerneinheit 110 erstellten Lernmodells.
  • Die Steuereinheit 32 steuert den Betrieb des Industrieroboters 2 auf Grundlage eines in dem nichtflüchtigen Speicher 104 gespeicherten Steuerprogramms 52. Die Steuereinheit 32 steuert den Industrieroboter 2 auf Grundlage eines Steuervorgangs durch den Bediener an der (nicht dargestellten) Bedientafel und des in dem nichtflüchtigen Speicher 14 gespeicherten Steuerprogramms und dergleichen. Ferner weist die Steuereinheit 32 eine allgemeine Steuerfunktion auf, die zum Steuern jedes Teils des Industrieroboters 2 erforderlich ist, zum Beispiel Ausgeben von Befehlsdaten als Änderungsbetrag eines Achsenwinkels in jedem Steuerzyklus an einen Motor, der eine Achse antreibt, wenn das Steuerprogramm 52 einen Befehl zum Bewegen jeder der in dem Industrieroboter 2 vorgesehenen Achsen (Gelenke) ausgibt. Ferner erfasst die Steuereinheit 32 den Motorzustandsbetrag (den Stromwert, die Position, die Geschwindigkeit, die Beschleunigung, das Drehmoment und dergleichen des Motors) jedes in dem Industrieroboter 2 vorgesehenen Motors und gibt diesen an die Datenerfassungseinheit 34 aus.
  • Die Datenerfassungseinheit 34 erfasst verschiedene, von dem Industrieroboter 2, dem Sensor 3, der Eingabevorrichtung 71 und dergleichen eingegebene Daten. Die Datenerfassungseinheit 34 erfasst zum Beispiel den Befehl durch das Programm zum Steuern des Industrieroboters, die Kraft oder das Moment, die auf den Manipulator des Industrieroboters 2 ausgeübt werden, den Stromwert, die Position, die Geschwindigkeit, die Beschleunigung, das Drehmoment und dergleichen des Servomotors 50, der die Achse des Industrieroboters 2 antreibt, und speichert diese in der Erfassungsdaten-Speichereinheit 54. Die Datenerfassungseinheit 34 kann von dem Sensor 3 erkannte Daten und Daten in Bezug auf den Servomotor 50 als Zeitreihendaten erfassen. Ferner kann die Datenerfassungseinheit 34 Daten von einem weiteren Computer über eine (nicht dargestellte) externe Speichervorrichtung oder ein drahtgebundenes/drahtloses Netzwerk erfassen.
  • Die Vorverarbeitungseinheit 36 erzeugt Zustandsdaten zur Verwendung bei einem Lernen durch die Vorrichtung 100 für maschinelles Lernen auf Grundlage von durch die Datenerfassungseinheit 34 erfassten Daten. Genauer gesagt, die Vorverarbeitungseinheit 36 erzeugt die Zustandsdaten, die durch Umwandeln (Digitalisieren, Abtasten und dergleichen) der durch die Datenerfassungseinheit 34 erfassten Daten in ein einheitliches, durch die Vorrichtung 100 für maschinelles Lernen zu verarbeitendes Format gewonnen werden. Wenn die Vorrichtung 100 für maschinelles Lernen zum Beispiel ein bestärkendes Lernen durchführt, erzeugt die Vorverarbeitungseinheit 36 beim Lernen einen Satz von Zustandsdaten S und Ermittlungsdaten D in einem vorgegebenen Format.
  • Die durch die Vorverarbeitungseinheit 36 erzeugten Zustandsdaten S beinhalten Kraftzustandsdaten S1, die Informationen über eine auf den Manipulator des Industrieroboters 2 ausgeübte Kraft enthalten, und Steuerbefehls-Einstelldaten S2, die das Einstellverhalten des Steuerbefehls (des Drehzahlbefehls, Kraftbefehls, Drehmomentbefehls und dergleichen) des Manipulators angeben, das in einem Kraftzustand der Kraftzustandsdaten S1 durchgeführt wird.
  • Die Kraftzustandsdaten S1 können zumindest eine auf den Manipulator des Industrieroboters 2 ausgeübte Kraft in einer Vorschubrichtung beinhalten und können eine in einer anderen Richtung als der Vorschubrichtung ausgeübte Kraft oder ein Moment der Kraft beinhalten. Die Kraftzustandsdaten S1 können durch den in den Manipulator des Industrieroboters 2 eingebauten Sensor 3 erkannt werden oder können umfassend aus dem Strom oder dergleichen gewonnen werden, der durch den Servomotor 50 fließt, der jede Achse des Industrieroboters 2 antreibt.
  • Die Steuerbefehls-Einstelldaten S2 können mindestens einen Steuerbefehl wie zum Beispiel den Drehzahlbefehl, den Kraftbefehl und den Drehmomentbefehl in der Vorschubrichtung des Manipulators als Einstellverhalten des Steuerbefehls (wie zum Beispiel eines Drehzahlbefehls, eines Kraftbefehls und eines Drehmomentbefehls) in der Vorschubrichtung des Manipulators beinhalten, das in dem Kraftzustand der Kraftzustandsdaten S1 durchgeführt wird, und können ferner einen Steuerbefehl in einer anderen Richtung als der Vorschubrichtung beinhalten.
  • Bei den durch die Vorverarbeitungseinheit 36 erzeugten Ermittlungsdaten D handelt es sich um Daten, die ein Ermittlungsergebnis in einem Betriebszustand des Manipulators nach dem Einstellverhalten angeben, wenn das Einstellverhalten des durch die Steuerbefehls-Einstelldaten S2 angegebenen Steuerbefehls in dem Kraftzustand der Kraftzustandsdaten S1 durchgeführt wird. Die Ermittlungsdaten D können mindestens die Belastungsermittlungsdaten D1 beinhalten, die ein Ausmaß einer auf den Manipulator ausgeübten Belastung angeben, und können die Betriebszeit-Ermittlungsdaten D2 beinhalten, die ein Ausmaß der Betriebszeit des Manipulators angeben.
  • Die Lerneinheit 110 führt ein maschinelles Lernen mithilfe der durch die Vorverarbeitungseinheit 36 erzeugten Daten durch. Die Lerneinheit 110 verwendet ein allgemein bekanntes Verfahren für bestärkendes Lernen, um ein Lernmodell zu erzeugen, das durch Lernen des Einstellverhaltens des Steuerbefehls (zum Beispiel eines Drehzahlbefehls, eines Kraftbefehls und eines Drehmomentbefehls) des Manipulators im Hinblick auf den Betriebszustand des Industrieroboters 2 gewonnen wird, und speichert das erzeugte Lernmodell in der Lernmodell-Speichereinheit 130. Bei bestärkendem Lernen handelt es sich um ein Verfahren zum heuristischen Wiederholen eines Zyklus, der den Ist-Zustand (das heißt, eine Eingabe) einer Umgebung beobachtet, in der sich ein Lernobjekt befindet, Durchführen einer vorgegebenen Aktion (d.h., einer Ausgabe) in dem Ist-Zustand und Geben einer Belohnung für die Aktion, um dadurch eine Strategie (ein Einstellverhalten des Steuerbefehls wie zum Beispiel des Drehzahlbefehls, des Kraftbefehls und des Drehmomentbefehls des Manipulators in der Vorrichtung für maschinelles Lernen) zu finden, um die Gesamtheit der Belohnungen zu maximieren und dadurch die Strategie als optimale Lösung zu lernen. Zu Beispielen für das durch die Lerneinheit 110 durchgeführte Verfahren des bestärkenden Lernens zählt Q-Learning.
  • Beim Q-Learning durch die Lerneinheit 110 kann die Belohnung R so ermittelt werden, dass, wenn die Größe der Belastung, die ausgeübt wird, wenn der Manipulator in der Vorschubrichtung bewegt wird, zum Beispiel in einen vorgegebenen Belastungsbereich fällt, die Belohnung R als „gut“, das heißt, eine positive (Plus-)Belohnung R ermittelt wird, und wenn die Größe der Belastung die vorgegebene Belastung übersteigt, die Belohnung R als „schlecht“, das heißt, eine negative (Minus-) Belohnung R ermittelt wird. Alternativ kann die Belohnung R so ermittelt werden, dass zum Beispiel, wenn die Zeit (wie etwa die Zeit, die für einen Vorgang in Anspruch genommen wird, und die Zeit, die für eine Bewegung über eine vorgegebene Entfernung in Anspruch genommen wird), die in Anspruch genommen wird, um den Manipulator in der Vorschubrichtung zu bewegen, unter einen vorgegebenen Schwellenwert fällt, die Belohnung R als „gut“, das heißt, eine positive (Plus-)Belohnung R ermittelt wird, und wenn die Zeit den vorgegebenen Schwellenwert übersteigt, die Belohnung R als „schlecht“, das heißt, eine negative (Minus-)Belohnung R ermittelt wird. Der Wert der Belohnung R kann abhängig von dem Ausmaß der Belastung und der Länge der Zeit, die für den Vorgang in Anspruch genommen wird, geändert werden. Es ist zu beachten, dass, wenn eine Mehrzahl von Datenelementen als Ermittlungsbedingung in den Ermittlungsdaten D beinhaltet ist, eine Kombination der Mehrzahl von Datenelementen für die Ermittlung verwendet werden kann.
  • Die Lerneinheit 110 kann so konfiguriert sein, dass ein neuronales Netz als Wertfunktion Q (Lernmodell) verwendet wird, das annimmt, dass die Zustandsdaten S und eine Aktion a in das neuronale Netz eingegeben werden und ein Wert (Ergebnis y) der Aktion a in dem Zustand ausgegeben wird. Bei einer derartigen Konfiguration kann ein neuronales Netz mit drei Schichten: einer Eingabeschicht, einer Zwischenschicht und einer Ausgabeschicht als Lernmodell verwendet werden, jedoch kann ein sogenanntes Deep-Learning-Verfahren mithilfe eines neuronalen Netzes mit drei oder mehr Schichten dazu verwendet werden, ein effektiveres Lernen und Schlussfolgern durchzuführen.
  • Das durch die Lerneinheit 110 erzeugte Lernmodell wird in der Lernmodell-Speichereinheit 130 gespeichert, die in dem nichtflüchtigen Speicher 104 vorgesehen ist, und wird für einen Schätzprozess des Einstellverhaltens des Steuerbefehls des Manipulators des Industrieroboters 2 durch die Entscheidungsfindungseinheit 120 verwendet.
  • Es ist zu beachten, dass es sich bei der Lerneinheit 110 um einen wesentlichen Bestandteil in der Lernphase handelt, sie jedoch nicht unbedingt ein wesentlicher Bestandteil ist, nachdem das Lernen des Einstellverhaltens des Steuerbefehls des Manipulators des Industrieroboters 2 durch die Lerneinheit 110 abgeschlossen ist. Wenn die Vorrichtung 100 für maschinelles Lernen, in der das Lernen abgeschlossen worden ist, zum Beispiel an einen Kunden ausgeliefert wird, kann die Lerneinheit 110 vor der Auslieferung entfernt werden.
  • Auf Grundlage der von der Vorverarbeitungseinheit 36 eingegebenen Zustandsdaten S und mithilfe des in der Lernmodell-Speichereinheit 130 gespeicherten Lernmodells berechnet die Entscheidungsfindungseinheit 120 eine optimale Lösung für das Einstellverhalten des Steuerbefehls in Bezug auf die Vorschubrichtung des Manipulators des Industrieroboters 2 und gibt das berechnete Einstellverhalten des Steuerbefehls in Bezug auf die Vorschubrichtung des Manipulators des Industrieroboters 2 aus. Die Entscheidungsfindungseinheit 120 kann die Belohnung für einen Fall, in dem die Aktion in dem Ist-Zustand durchgeführt wird, durch Eingeben der Zustandsdaten S (wie zum Beispiel der Kraftzustandsdaten S1 und der Steuerbefehls-Einstelldaten S2), die von der Vorverarbeitungseinheit 36 eingegeben werden, und des Einstellverhaltens (wie zum Beispiel der Einstellung von Befehlswerten für Drehzahl, Kraft und Drehmoment) des Steuerbefehls des Manipulators des Industrieroboters 2 als Eingabedaten in das durch bestärkendes Lernen durch die Lerneinheit 110 erzeugte Lernmodell berechnen (Parameter werden ermittelt). In diesem Fall wird die Belohnungsberechnung an einer Mehrzahl von aktuell verfügbaren Einstellverhalten des Steuerbefehls des Manipulators des Industrieroboters 2 durchgeführt. Durch Vergleichen der Mehrzahl von berechneten Belohnungen wird anschließend das Einstellverhalten des Steuerbefehls des Manipulators des Industrieroboters 2, das die größte Belohnung aufweist, als optimale Lösung geschätzt. Die durch die Entscheidungsfindungseinheit 120 geschätzte optimale Lösung für das Einstellverhalten des Steuerbefehls des Manipulators des Industrieroboters 2 kann nicht nur in die Steuereinheit 32 zur Verwendung beim Einstellen des Steuerbefehls des Manipulators des Industrieroboters 2 eingegeben werden, sondern kann darüber hinaus zum Beispiel zum Anzeigen an die Anzeigevorrichtung 70 ausgegeben werden und kann über ein drahtgebundenes/drahtloses Netzwerk zum Übertragen an einen Host-Computer, einen Cloud-Computer und sonstige Computer ausgegeben werden.
  • Die Steuereinrichtung 1 mit der oben genannten Konfiguration kann die Steuerung eines Vorschubs des Manipulators durch eine geeignete Drehzahleinstellung und Krafteinstellung automatisch einstellen, während die Kraft und das Moment, die in der Vorschubrichtung des Manipulators ausgeübt werden, bei verschiedenen mithilfe des Industrieroboters 2 durchgeführten Vorgängen erkannt werden.
  • 3 bis 5 stellen ein Beispiel für einen Vorgang dar, der durch Steuern des Industrieroboters 2 mithilfe der Steuereinrichtung 1 durchgeführt wird.
  • 3 stellt ein Beispiel für einen Vorgang dar, bei dem die Steuereinrichtung 1 den Industrieroboter 2 so steuert, dass die an dem Industrieroboter 2 angebrachte Hand 80 veranlasst wird, ein Teil 81 zu greifen und das Teil 81 an eine vorgegebene Position eines weiteren Teils 82 zu passen.
  • In einem solchen Beispiel erfasst die Datenerfassungseinheit 34 eine Kraft in jeder axialen Richtung (der Richtung der x-Achse, der Richtung der y-Achse und der Richtung der z-Achse), die auf die Hand 80 des Industrieroboters 2 ausgeübt wird, und ein Moment um jede Achse, und anschließend erzeugt die Vorverarbeitungseinheit 36 auf Grundlage der Kraft und des Moments die Kraftzustandsdaten S1. Im Gegensatz dazu wird als Einstellverhalten des Steuerbefehls, das in der Vorschubrichtung (der Passrichtung des Teils 81) der Hand 80 angewendet wird, der Kraftbefehl und/oder der Drehzahlbefehl in der Vorschubrichtung eingestellt. Infolgedessen wird angenommen, dass die Belastungsermittlungsdaten D1 angeben, ob die resultierende Kraft der auf die Hand 80 ausgeübten Belastung in jeder axialen Richtung gleich wie oder kleiner als ein vorgegebener Schwellenwert ist, und es wird angenommen, dass die Betriebszeit-Ermittlungsdaten D2 angeben, ob die Zeit, die zum Bewegen in der Passrichtung in Anspruch genommen wird (die Zeit, die zum Bewegen über eine vorgegebene Entfernung in Anspruch genommen wird) gleich wie oder kleiner als ein vorgegebener Schwellenwert ist.
  • Es ist zu beachten, dass das Einstellverhalten des Steuerbefehls der Hand 80 ferner ein Einstellverhalten (wie zum Beispiel eine Feineinstellung einer Neigung des Teils und eine Feineinstellung der Position in der vertikalen Richtung relativ zu der Passrichtung des Teils) der Hand 80 in einer anderen Richtung als der Vorschubrichtung beinhalten kann. Während des Durchführens eines solchen Einstellverhaltens lernt die Lerneinheit 110 ein geeignetes Einstellverhalten im Hinblick auf die in dem Passvorgang auf die Hand 80 ausgeübte Kraft in jeder axialen Richtung und das Moment um jede Achse. Entsprechend dem durch die Entscheidungsfindungseinheit 120 auf Grundlage des Lernergebnisses ermittelten Einstellverhalten kann die Steuereinheit 32 eine geeignete Steuerung an dem Industrieroboter 2 durchführen.
  • 4 stellt ein Beispiel für einen Vorgang dar, bei dem die Steuereinrichtung 1 den Industrieroboter 2 so steuert, dass die an dem Industrieroboter 2 angebrachte Hand 80 veranlasst wird, ein Zahnrad 83 zu greifen, und während die Phase des Zahnrads 83 auf ein weiteres Zahnrad 84 eingestellt wird, die Zahnräder 83 und 84 montiert werden.
  • In einem solchen Beispiel erfasst die Datenerfassungseinheit 34 eine auf die Hand 80 des Industrieroboters 2 ausgeübte Kraft in der Vorschubrichtung und ein Moment um die Achse des Zahnrads 83, und anschließend erzeugt die Vorverarbeitungseinheit 36 die Kraftzustandsdaten S1 auf Grundlage der Kraft und des Moments. Im Gegensatz dazu wird als Einstellverhalten des Steuerbefehls, das in der Vorschubrichtung der Hand 80 angewendet wird, der Kraftbefehl in der Vorschubrichtung eingestellt. Infolgedessen wird angenommen, dass die Belastungsermittlungsdaten D1 angeben, ob die auf die Hand 80 ausgeübte Belastung in der Vorschubrichtung gleich wie oder kleiner als ein vorgegebener Schwellenwert ist und ob die Belastung um die Achse des Zahnrads 83 gleich wie oder kleiner als ein vorgegebener Schwellenwert ist, und es wird angenommen, dass die Betriebszeit-Ermittlungsdaten D2 angeben, ob die Zeit, die zum Bewegen der Hand 80 in der Vorschubrichtung in Anspruch genommen wird (die Zeit, die zum Bewegen über eine vorgegebene Entfernung in Anspruch genommen wird) gleich wie oder kleiner als ein vorgegebener Schwellenwert ist. Es ist zu beachten, dass das Einstellverhalten des Steuerbefehls der Hand 80 ferner ein Einstellverhalten eines Winkelgeschwindigkeitsbefehls um die Achse des Zahnrads 83 und den Drehzahlbefehl beinhalten kann. Während des Durchführens eines solchen Einstellverhaltens lernt die Lerneinheit 110 ein geeignetes Einstellverhalten im Hinblick auf die in dem Zahnradmontagevorgang auf die Hand 80 ausgeübte Kraft in der Vorschubrichtung und das Moment um die Achse des Zahnrads 83. Entsprechend dem durch die Entscheidungsfindungseinheit 120 auf Grundlage des Lernergebnisses ermittelten Einstellverhalten kann die Steuereinheit 32 eine geeignete Steuerung an dem Industrieroboter 2 durchführen.
  • 5 stellt ein Beispiel für einen Vorgang dar, bei dem die Steuereinrichtung 1 den Industrieroboter 2 so steuert, dass ein an dem Industrieroboter 2 angebrachtes Polierwerkzeug 85 veranlasst wird, ein Werkstück 86 zu entgraten oder zu polieren. In einem solchen Beispiel erfasst die Datenerfassungseinheit 34 eine auf das an dem Industrieroboter 2 angebrachte Polierwerkzeug 85 ausgeübte Kraft in der Vorschubrichtung und eine Kraft in einer Druckrichtung des Polierwerkzeugs 85 gegen das Werkstück 86, und anschließend erzeugt die Vorverarbeitungseinheit 36 die Kraftzustandsdaten S1 auf Grundlage dieser Kräfte. Im Gegensatz dazu wird als Einstellverhalten des Steuerbefehls, das in der Vorschubrichtung des Polierwerkzeugs 85 angewendet wird, der Drehzahlbefehl in der Vorschubrichtung eingestellt. Infolgedessen wird angenommen, dass die Belastungsermittlungsdaten D1 angeben, ob die auf das Polierwerkzeug 85 ausgeübte Belastung in der Vorschubrichtung gleich wie oder kleiner als ein vorgegebener Schwellenwert ist und ob die Belastung in der Druckrichtung gegen das Werkstück 86 in einen vorgegebenen Bereich (gleich wie oder größer als ein erster Schwellenwert und gleich wie oder kleiner als ein zweiter Schwellenwert) fällt, und es wird angenommen, dass die Betriebszeit-Ermittlungsdaten D2 angeben, ob die Zeit, die zum Bewegen des Polierwerkzeugs 85 in der Vorschubrichtung in Anspruch genommen wird (die Zeit, die zum Bewegen über eine vorgegebene Entfernung in Anspruch genommen wird) gleich wie oder kleiner als ein vorgegebener Schwellenwert ist. Es ist zu beachten, dass das Einstellverhalten des Steuerbefehls des Polierwerkzeugs 85 ferner ein Einstellverhalten des Kraftbefehls in der Druckrichtung gegen das Werkstück 86 beinhalten kann.
  • Während des Durchführens eines solchen Einstellverhaltens lernt die Lerneinheit 110 ein geeignetes Einstellverhalten im Hinblick auf die in den Vorgängen des Entgratens und des Polierens auf das Polierwerkzeug 85 ausgeübte Kraft in der Vorschubrichtung und die Kraft in der Druckrichtung gegen das Werkstück 86. Entsprechend dem durch die Entscheidungsfindungseinheit 120 auf Grundlage des Lernergebnisses ermittelten Einstellverhalten kann die Steuereinheit 32 eine geeignete Steuerung an dem Industrieroboter 2 durchführen.
  • Die folgende Beschreibung legt den Schwerpunkt auf ein zweites bis viertes Beispiel, bei denen die oben genannte Steuereinrichtung 1 gemäß des ersten Beispiels als Teil eines Systems implementiert ist, in dem eine Mehrzahl von Vorrichtungen, darunter ein Cloud-Server, ein Host-Computer, Fog-Computer und Edge-Computer (wie zum Beispiel eine Robotersteuereinrichtung und die Steuereinrichtung), über ein drahtgebundenes/drahtloses Netzwerk miteinander verbunden ist.
  • Wie in 6 dargestellt, wird in den folgenden zweiten bis vierten Beispielen ein System angenommen, in dem eine Mehrzahl von Vorrichtungen in einem Zustand, in dem jede der Mehrzahl von Vorrichtungen mit einem Netzwerk verbunden ist, logisch in drei Schichten unterteilt ist: eine Schicht, die einen Cloud-Server 6 und dergleichen enthält, eine Schicht, die einen Fog-Computer 7 und dergleichen enthält, und eine Schicht, die einen Edge-Computer 8 (wie zum Beispiel eine Robotersteuereinrichtung und die Steuereinrichtung, die in einer Zelle 9 beinhaltet sind) enthält.
  • In einem solchen System kann die Steuereinrichtung 1 gemäß eines Beispiels auf einem beliebigen des Cloud-Servers 6, des Fog-Computers 7 und des Edge-Computers 8 so implementiert sein, dass Daten zur Verwendung bei maschinellem Lernen von der Mehrzahl von Vorrichtungen über das Netzwerk für verteiltes Lernen gemeinsam genutzt werden können, kann das erzeugte Lernmodell für eine umfangreiche Analyse in dem Fog-Computer 7 und dem Cloud-Server 6 erfasst werden und kann ferner das erzeugte Lernmodell gemeinsam wiederverwendet werden.
  • In dem in 6 dargestellten System wird eine Mehrzahl von Zellen 9 in einer Fabrikationsstätte an verschiedenen Stellen vorgesehen, und ein Fog-Computer 7, der sich in der oberen Schicht befindet, verwaltet jede Zelle 9 in einer vorgegebenen Einheit (wie zum Beispiel in Einheiten von Fabrikationsstätten und in Einheiten einer Mehrzahl von Fabrikationsstätten desselben Herstellers). Die durch diese Fog-Computer 7 erfassten und analysierten Daten werden durch den Cloud-Server 6 in der oberen Schicht weiter erfasst und analysiert, und die als Ergebnis gewonnenen Informationen können zur Steuerung und dergleichen durch jeden Edge-Computer 8 verwendet werden.
  • 7 ist eine schematische graphische Darstellung einer Hardware-Konfiguration, in der die Steuereinrichtung auf einem Computer wie zum Beispiel dem Cloud-Server und dem Fog-Computer implementiert ist.
  • Eine in der auf dem Computer implementierten Steuereinrichtung 1' vorgesehene CPU 311 ist ein Prozessor, der die gesamte Steuereinrichtung 1' steuert. Die CPU 311 liest ein in einem ROM 312 gespeichertes Systemprogramm über einen Bus 320 und steuert die gesamte Steuereinrichtung 1' entsprechend dem Systemprogramm. Ein RAM 313 speichert vorübergehend temporäre Berechnungsdaten, Anzeigedaten und sonstige verschiedene Daten, die von dem Bediener durch eine (nicht dargestellte) Eingabeeinheit eingegeben werden.
  • Ein nichtflüchtiger Speicher 314 ist als Speicher konfiguriert, der zum Beispiel durch eine (nicht dargestellte) Batterie so gesichert ist, dass der Speicherzustand aufrechterhalten wird, selbst wenn die Steuereinrichtung 1' ausgeschaltet wird. Der nichtflüchtige Speicher 314 speichert durch eine Eingabevorrichtung 371 eingegebene Programme und verschiedene, von jeder Einheit der Steuereinrichtung 1' und von dem Industrieroboter 2' durch ein Netzwerk 5 erfasste Daten. Die Programme und die verschiedenen Daten, die in dem nichtflüchtigen Speicher 314 gespeichert sind, können in den RAM 313 geladen werden, wenn sie ausgeführt oder verwendet werden. Es ist zu beachten, dass verschiedene Systemprogramme wie zum Beispiel ein allgemein bekanntes Analyseprogramm (das ein Systemprogramm zum Steuern von Wechselwirkungen mit einer im Folgenden beschriebenen Vorrichtung 100 für maschinelles Lernen beinhaltet) vorläufig in den ROM 312 geschrieben werden.
  • Die Steuereinrichtung 1' ist durch eine Schnittstelle 319 mit einem drahtgebundenen/drahtlosen Netzwerk 5 verbunden. Mindestens ein Industrieroboter 2' (ein Industrieroboter mit der Steuereinrichtung), eine weitere Steuereinrichtung 1, ein Edge-Computer 8, ein Fog-Computer 7, ein Cloud-Server 6 und dergleichen sind mit dem Netzwerk 5 verbunden und tauschen gemeinsam Daten mit der Steuereinrichtung 1' aus.
  • Verschiedene in den Speicher gelesene Daten, als Ergebnis einer Ausführung von Programmen gewonnene Daten und dergleichen werden durch die Schnittstelle 317 ausgegeben und auf einer Anzeigevorrichtung 370 angezeigt. Ferner übergibt die Eingabevorrichtung 371, die eine Tastatur, eine Zeigevorrichtung und dergleichen beinhaltet, einen Befehl, Daten und dergleichen auf Grundlage der Bedienung durch einen Bediener durch eine Schnittstelle 318 an die CPU 311.
  • Bei einer Schnittstelle 321 handelt es sich um eine Schnittstelle zum Verbinden der Steuereinrichtung 1' und der Vorrichtung 100 für maschinelles Lernen. Die Vorrichtung 100 für maschinelles Lernen weist dieselbe Konfiguration wie die in 1 beschriebene auf.
  • Wenn die Steuereinrichtung 1' auf einem Computer wie zum Beispiel einem Cloud-Server und einem Fog-Computer implementiert ist, stimmen folglich die in der Steuereinrichtung 1' vorgesehenen Funktionen mit den in dem ersten Beispielbeschriebenen überein, mit der Ausnahme, dass die Erfassung von Informationen von dem Industrieroboter 2' und die Einstellung des Steuerbefehls des Manipulators im Hinblick auf den Industrieroboter 2' durch das Netzwerk 5 ausgetauscht werden. Da der Industrieroboter 2' die Steuereinrichtung aufweist, steuert dabei die in der Steuereinrichtung 1' vorgesehene Steuereinheit 32 (siehe 2) den Industrieroboter 2' nicht, sondern erfasst und steuert die Informationen in Bezug auf den Verarbeitungszustand des Industrieroboters 2' durch die in dem Industrieroboter 2' vorgesehene Steuereinrichtung.
  • 8 ist eine schematische graphische Darstellung einer Konfiguration eines Steuersystems gemäß eines zweiten Beispiels mit einer Steuereinrichtung 1'.
  • Ein Steuersystem 500 des vorliegenden Beispiels weist eine Mehrzahl von Steuereinrichtungen 1 und 1', eine Mehrzahl von Industrierobotern 2' und das Netzwerk 5 auf, das diese Steuereinrichtungen 1 und 1' und die Industrieroboter 2' miteinander verbindet.
  • In diesem Steuersystem 500 schätzt die Steuereinrichtung 1', die die Vorrichtung 100 für maschinelles Lernen aufweist, die Einstellung des Steuerbefehls des Manipulators in dem Industrieroboter 2' mithilfe des Lernergebnisses der Lerneinheit 110. Ferner kann das Steuersystem 500 so konfiguriert sein, dass mindestens eine Steuereinrichtung 1' die Einstellung des Steuerbefehls des Manipulators in jedem der Industrieroboter 2 und 2', die allen Steuereinrichtungen 1 und 1' gemeinsam ist, auf Grundlage der durch jede der sonstigen Mehrzahl von Steuereinrichtungen 1 und 1' gewonnenen Zustandsvariablen S und Ermittlungsdaten D lernt und alle Steuereinrichtungen 1 und 1' die Lernergebnisse gemeinsam nutzen. Daher kann das Steuersystem 500 eine Lerngeschwindigkeit und eine Zuverlässigkeit mithilfe von mehr unterschiedlichen Datensätzen (einschließlich der Zustandsvariablen S und der Ermittlungsdaten D) als Eingabe verbessern.
  • 9 ist eine schematische graphische Darstellung einer Konfiguration eines Systems gemäß eines dritten Beispiels, in dem die Vorrichtung für maschinelles Lernen und die Steuereinrichtung auf einer unterschiedlichen Vorrichtung implementiert sind.
  • Ein Steuersystem 500' des Beispiels weist mindestens eine Vorrichtung 100 für maschinelles Lernen (die in 9 als Beispiel dargestellt wird, das als Teil des Fog-Computers 7 implementiert ist), die als Teil eines Computers wie zum Beispiel eines Cloud-Servers, eines Host-Computers und eines Fog-Computers implementiert ist, eine Mehrzahl von Steuereinrichtungen 1" und das Netzwerk 5 auf, das diese Steuereinrichtungen 1" und den Computer miteinander verbindet. Es ist zu beachten, dass die Hardware-Konfiguration des Computers mit der schematischen Hardware-Konfiguration der in 7 dargestellten Steuereinrichtung 1' übereinstimmt, so dass die in einem Universalcomputer vorgesehenen Hardware-Bestandteile wie zum Beispiel die CPU 311, der RAM 313 und der nichtflüchtige Speicher 314 durch den Bus 320 verbunden sind.
  • In dem Steuersystem 500' mit der oben genannten Konfiguration lernt die Vorrichtung 100 für maschinelles Lernen auf Grundlage der von jeder der Mehrzahl von Steuereinrichtungen 1" gewonnenen Zustandsvariablen S und Ermittlungsdaten D die Einstellung des Steuerbefehls des Manipulators in dem Industrieroboter 2, die allen Steuereinrichtungen 1" gemeinsam ist, und kann anschließend mithilfe des Lernergebnisses die Einstellung des Steuerbefehls des Manipulators in jedem Industrieroboter 2 durchführen. Entsprechend der Konfiguration des Steuersystems 500' kann die notwendige Anzahl von Steuereinrichtungen 1" bei Bedarf unabhängig davon, wo und wann jede der Mehrzahl von Steuereinrichtungen 1" vorhanden ist, mit der Vorrichtung 100 für maschinelles Lernen verbunden werden.
  • 10 ist eine schematische graphische Darstellung einer Konfiguration eines Steuersystems 500" mit einer Vorrichtung 100' für maschinelles Lernen und der Steuereinrichtung 1 gemäß eines vierten Beispiels.
  • Ein Steuersystem 500" des Beispiels weist mindestens eine Vorrichtung 100' für maschinelles Lernen (die in 10 als Beispiel dargestellt wird, das als Teil des Fog-Computers 7 implementiert ist), die auf einem Computer wie zum Beispiel einem Edge-Computer, einem Fog-Computer, einem Host-Computer und einem Cloud-Server implementiert ist, eine Mehrzahl von Steuereinrichtungen 1 und das drahtgebundene/drahtlose Netzwerk 5 auf, das diese Steuereinrichtungen 1 und den Computer miteinander verbindet.
  • In dem Steuersystem 500" mit der oben genannten Konfiguration erfasst der Fog-Computer 7, der die Vorrichtung 100' für maschinelles Lernen aufweist, das Lernmodell, das als Ergebnis des maschinellen Lernens durch die in der Steuereinrichtung 1 vorgesehene Vorrichtung 100 für maschinelles Lernen gewonnen wird, von jeder Steuereinrichtung 1. Anschließend optimiert oder verbessert die in dem Fog-Computer 7 vorgesehene Vorrichtung 100' für maschinelles Lernen das Wissen auf Grundlage dieser Mehrzahl von Lernmodellen, um dadurch ein neu optimiertes oder verbessertes Lernmodell zu erzeugen und anschließend das erzeugte Lernmodell an jede Steuereinrichtung 1 zu verteilen.
  • Zu Beispielen für ein Optimieren oder Verbessern des Lernmodells durch die Vorrichtung 100' für maschinelles Lernen zählt eine Erzeugung eines Destillationsmodells auf Grundlage einer Mehrzahl von von jeder Steuereinrichtung 1 gewonnenen Lernmodellen. Dabei erzeugt die Vorrichtung 100' für maschinelles Lernen des Beispiels in das Lernmodell einzugebende Eingabedaten. Anschließend erzeugt die Vorrichtung 100' für maschinelles Lernen mithilfe einer Ausgabe, die durch Eingeben der Eingabedaten in jedes Lernmodell als Ergebnis gewonnen wird, ein neues Lernmodell (Destillationsmodell) durch ein Lernen von Grund auf. Das auf diese Weise erzeugte Destillationsmodell wird durch ein externes Speichermedium oder das Netzwerk 5, wie oben beschrieben, an die Steuereinrichtung 1 und sonstige Computer verteilt und durch diese verwendet.
  • Ein weiteres Beispiel für ein Optimieren oder Verbessern des Lernmodells durch die Vorrichtung 100' für maschinelles Lernen kann so in Betracht gezogen werden, dass in dem Prozess eines Durchführens einer Destillation an einer Mehrzahl von von jeder Steuereinrichtung 1 erfassten Lernmodellen eine Verteilung von Ausgabedaten jedes Lernmodells im Hinblick auf Eingabedaten durch ein allgemeines statistisches Verfahren (wie zum Beispiel einen Ausreißertest) analysiert wird, um einen Ausreißer eines Satzes von Eingabedaten und Ausgabedaten zu extrahieren und eine Destillation mithilfe des Satzes von Eingabedaten und Ausgabedaten durchzuführen, aus dem die Ausreißer ausgeschlossen sind. Durch Durchlaufen eines solchen Prozesses werden ungewöhnliche Schätzergebnisse aus dem Satz von Eingabedaten und der Ausgabedaten, die von jedem Lernmodell gewonnen werden, ausgeschlossen, und mithilfe des Satzes von Eingabedaten und der Ausgabedaten, aus dem die ungewöhnlichen Schätzergebnisse ausgeschlossen worden sind, kann das Destillationsmodell erzeugt werden. Das auf diese Weise erzeugte Destillationsmodell kann als vielseitigeres Lernmodell als das durch eine Mehrzahl von Steuereinrichtungen 1 erzeugte Lernmodell verwendet werden.
  • Es ist zu beachten, dass sonstige allgemeine Verfahren zum Optimieren oder Verbessern des Lernmodells (wie zum Beispiel ein Verfahren zum Analysieren jedes Lernmodells und Optimieren von Hyperparametern des Lernmodells auf Grundlage des Analyseergebnisses) nach Bedarf eingebracht werden können.
  • Ein Beispiel für einen Betrieb des Steuersystems 500" kann dergestalt sein, dass die Vorrichtung 100' für maschinelles Lernen an dem Fog-Computer 7 angeordnet ist, der für eine Mehrzahl von Steuereinrichtungen 1 als Edge-Computer installiert ist, das durch jede Steuereinrichtung 1 erzeugte Lernmodell durch den Fog-Computer 7 erfasst und in diesem gespeichert wird, eine Optimierung oder Verbesserung auf Grundlage einer Mehrzahl von gespeicherten Lernmodellen durchgeführt wird und anschließend das optimierte oder verbesserte Lernmodell nach Bedarf neu an jede Steuereinrichtung 1 verteilt wird.
  • Ein weiteres Beispiel für einen Betrieb des Steuersystems 500" kann dergestalt sein, dass die durch den Fog-Computer 7 erfassten und in diesem gespeicherten Lernmodelle und die durch den Fog-Computer 7 optimierten oder verbesserten Lernmodelle durch einen höherrangigen Host-Computer oder Cloud-Server erfasst werden und diese Lernmodelle für eine Anwendung auf intelligente Arbeit in einer Fabrikationsstätte oder bei dem Hersteller der Steuereinrichtung 1 (wie zum Beispiel Erstellung und Neuverteilung eines weiteren vielseitigen Lernmodells in einem höheren Server, Unterstützung von Wartungsarbeit auf Grundlage der Analyseergebnisse der Lernmodelle, Analyse der Leistungsfähigkeit und dergleichen jeder Steuereinrichtung 1 und eine Anwendung auf eine Entwicklung einer neuen Maschine und dergleichen) verwendet werden.
  • Die obigen Beispiele sind so beschrieben worden, dass die Steuereinrichtung 1 und die Vorrichtung 100 für maschinelles Lernen eine unterschiedliche CPU (Prozessor) aufweisen. Die Vorrichtung 100 für maschinelles Lernen kann jedoch auch durch die in der Steuereinrichtung 1 vorgesehene CPU 11 und das in dem ROM 12 gespeicherte Systemprogramm implementiert werden.

Claims (6)

  1. Steuersystem (500), das ein System ist, in dem eine Mehrzahl von Vorrichtungen über ein Netzwerk miteinander verbunden ist, wobei die Mehrzahl von Vorrichtungen eine erste Steuereinrichtung (1) beinhaltet, die einen Industrieroboter (2) mit einer Funktion zum Erkennen einer Kraft und eines Moments, die auf einen Manipulator ausgeübt werden, steuert, wobei die erste Steuereinrichtung aufweist: eine Steuereinheit (32), die den Industrieroboter auf Grundlage eines Steuerbefehls steuert; eine Datenerfassungseinheit (34), die die Kraft und/oder das Moment, die auf den Manipulator des Industrieroboters ausgeübt werden, als Erfassungsdaten erfasst; und eine Vorverarbeitungseinheit (36), die Kraftzustandsdaten, die Informationen in Bezug auf die Kraft beinhalten, die auf den Manipulator ausgeübt wird, und Steuerbefehls-Einstelldaten, die ein Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator angeben, als Zustandsdaten auf Grundlage der Erfassungsdaten erzeugt, wobei die Vorverarbeitungseinheit (36) Ermittlungsdaten, die ein Ermittlungsergebnis eines Betriebszustands des Manipulators angeben, nachdem das Einstellverhalten weiter durchgeführt worden ist, auf Grundlage der Erfassungsdaten erzeugt, und die erste Steuereinrichtung ferner eine Lerneinheit (110) aufweist, die ein Lernmodell erzeugt, das durch Anwenden eines bestärkenden Lernens auf das Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator im Hinblick auf den Zustand der auf den Manipulator ausgeübten Kraft als Prozess des maschinellen Lernens mithilfe der Zustandsdaten und der Ermittlungsdaten gewonnen wird, wobei die erste Steuereinrichtung einen Prozess eines maschinellen Lernens in Bezug auf das Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator auf Grundlage der Zustandsdaten durchführt, wobei die Mehrzahl von Vorrichtungen eine zweite Steuereinrichtung (1') beinhaltet, die sich von der ersten Steuereinrichtung unterscheidet, und ein Lernergebnis durch die erste Steuereinrichtung gemeinsam mit der zweiten Steuereinrichtung genutzt wird.
  2. Steuersystem (500) nach Anspruch 1, wobei die erste Steuereinrichtung (1) ferner aufweist eine Lernmodell-Speichereinheit (130), die ein Lernmodell speichert, das durch Anwenden von bestärkendem Lernen auf das Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator im Hinblick auf den Zustand der auf den Manipulator ausgeübten Kraft gewonnen wird, und eine Entscheidungsfindungseinheit (120), die das Einstellverhalten des Steuerbefehls in Bezug auf den Manipulator mithilfe des in der Lernmodell-Speichereinheit gespeicherten Lernmodells auf Grundlage der Zustandsdaten als Prozess des maschinellen Lernens schätzt.
  3. Steuersystem (500) nach Anspruch 1, wobei die Vorverarbeitungseinheit (36) Belastungsermittlungsdaten, die ein Ausmaß einer Belastung angeben, die auf den Manipulator ausgeübt wird, nachdem das Einstellverhalten durchgeführt worden ist, als Ermittlungsdaten erzeugt.
  4. Steuersystem (500) nach Anspruch 1, wobei die Vorverarbeitungseinheit (36) Betriebszeitdaten, die ein Ausmaß einer Betriebszeit des Manipulators angeben, nachdem das Einstellverhalten durchgeführt worden ist, als Ermittlungsdaten erzeugt.
  5. Steuersystem (500) nach Anspruch 1, wobei die Mehrzahl von Vorrichtungen einen Computer beinhaltet, der eine Vorrichtung für maschinelles Lernen aufweist, der Computer ein Lernmodell als mindestens ein Ergebnis des bestärkenden Lernens der ersten Steuereinrichtung erfasst, und die in dem Computer vorgesehene Vorrichtung für maschinelles Lernen auf Grundlage des erfassten Lernmodells eine Optimierung oder Verbesserung durchführt.
  6. Steuersystem nach Anspruch 1, wobei durch die zweite Steuereinrichtung beobachtete Daten über das Netzwerk für ein bestärkendes Lernen durch die erste Steuereinrichtung zur Verfügung stehen.
DE102019006725.8A 2018-10-02 2019-09-25 Steuereinrichtung und Steuersystem Active DE102019006725B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2018187717 2018-10-02
JP2018-187717 2018-10-02
JP2019108190A JP6928031B2 (ja) 2018-10-02 2019-06-10 制御装置及び制御システム
JP2019-108190 2019-06-10

Publications (2)

Publication Number Publication Date
DE102019006725A1 DE102019006725A1 (de) 2020-04-02
DE102019006725B4 true DE102019006725B4 (de) 2023-06-01

Family

ID=69781093

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019006725.8A Active DE102019006725B4 (de) 2018-10-02 2019-09-25 Steuereinrichtung und Steuersystem

Country Status (3)

Country Link
US (1) US20200101603A1 (de)
CN (1) CN110978014A (de)
DE (1) DE102019006725B4 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11312015B2 (en) * 2018-09-10 2022-04-26 Reliabotics LLC System and method for controlling the contact pressure applied by an articulated robotic arm to a working surface
US20200293942A1 (en) * 2019-03-11 2020-09-17 Cisco Technology, Inc. Distributed learning model for fog computing
JP2021064222A (ja) * 2019-10-15 2021-04-22 富士通株式会社 方策改善方法、方策改善プログラム、および方策改善装置
JP2021089606A (ja) * 2019-12-04 2021-06-10 キヤノン株式会社 システムおよびその制御方法、並びにプログラム
US20230080768A1 (en) * 2021-09-10 2023-03-16 Honda Motor Co., Ltd. Object manipulation
CN114378820B (zh) * 2022-01-18 2023-06-06 中山大学 一种基于安全强化学习的机器人阻抗学习方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007237312A (ja) 2006-03-07 2007-09-20 Fanuc Ltd 制御装置
JP2014006566A (ja) 2012-06-21 2014-01-16 Institute Of National Colleges Of Technology Japan 組み込み知能コントローラ、制御システム、制御プログラム、記録媒体、及び制御方法
DE102012104194B4 (de) 2011-05-17 2015-10-15 Fanuc Corporation Roboter und Punktschweissroboter mit lernender Steuerungsfunktion
DE102016011532A1 (de) 2015-09-30 2017-03-30 Fanuc Corporation Maschinenlernvorrichtung und Maschinenlernverfahren zum Optimieren der Häufigkeit einer Werkzeugkorrektur einer Werkzeugmaschine und Werkzeugmaschine mit der Maschinenlernvorrichtung
DE202017105598U1 (de) 2016-09-15 2018-05-24 Google LLC (n.d.Ges.d. Staates Delaware) System zum tiefen Verstärkungslernen für Robotermanipulation
EP3357649A2 (de) 2017-02-06 2018-08-08 Seiko Epson Corporation Steuerungsvorrichtung, roboter und robotersystem
EP3357651A2 (de) 2017-02-06 2018-08-08 Seiko Epson Corporation Steuerungsvorrichtung, roboter und robotersystem

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06195127A (ja) * 1992-12-22 1994-07-15 Agency Of Ind Science & Technol マニピュレータのハイブリッド遠隔制御装置
JP3362379B2 (ja) * 1994-05-26 2003-01-07 松下電工株式会社 力制御装置における力の検出方法
JP6240689B2 (ja) * 2015-07-31 2017-11-29 ファナック株式会社 人の行動パターンを学習する機械学習装置、ロボット制御装置、ロボットシステム、および機械学習方法
JP6457421B2 (ja) * 2016-04-04 2019-01-23 ファナック株式会社 シミュレーション結果を利用して学習を行う機械学習装置,機械システム,製造システムおよび機械学習方法
JP6431017B2 (ja) * 2016-10-19 2018-11-28 ファナック株式会社 機械学習により外力の検出精度を向上させた人協調ロボットシステム
JP6457472B2 (ja) * 2016-12-14 2019-01-23 ファナック株式会社 制御システム及び機械学習装置
JP2018107315A (ja) * 2016-12-27 2018-07-05 ファナック株式会社 プリント板組立作業のための機械学習装置、制御装置、産業機械、組立システム及び機械学習方法
JP2018126799A (ja) * 2017-02-06 2018-08-16 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
JP6484265B2 (ja) * 2017-02-15 2019-03-13 ファナック株式会社 学習制御機能を備えたロボットシステム及び学習制御方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007237312A (ja) 2006-03-07 2007-09-20 Fanuc Ltd 制御装置
DE102012104194B4 (de) 2011-05-17 2015-10-15 Fanuc Corporation Roboter und Punktschweissroboter mit lernender Steuerungsfunktion
JP2014006566A (ja) 2012-06-21 2014-01-16 Institute Of National Colleges Of Technology Japan 組み込み知能コントローラ、制御システム、制御プログラム、記録媒体、及び制御方法
DE102016011532A1 (de) 2015-09-30 2017-03-30 Fanuc Corporation Maschinenlernvorrichtung und Maschinenlernverfahren zum Optimieren der Häufigkeit einer Werkzeugkorrektur einer Werkzeugmaschine und Werkzeugmaschine mit der Maschinenlernvorrichtung
DE202017105598U1 (de) 2016-09-15 2018-05-24 Google LLC (n.d.Ges.d. Staates Delaware) System zum tiefen Verstärkungslernen für Robotermanipulation
EP3357649A2 (de) 2017-02-06 2018-08-08 Seiko Epson Corporation Steuerungsvorrichtung, roboter und robotersystem
EP3357651A2 (de) 2017-02-06 2018-08-08 Seiko Epson Corporation Steuerungsvorrichtung, roboter und robotersystem

Also Published As

Publication number Publication date
CN110978014A (zh) 2020-04-10
US20200101603A1 (en) 2020-04-02
DE102019006725A1 (de) 2020-04-02

Similar Documents

Publication Publication Date Title
DE102019006725B4 (de) Steuereinrichtung und Steuersystem
DE102018006946B4 (de) Steuerung und maschinelle Lernvorrichtung
DE102020100316B4 (de) Bestimmungsgerät
DE102017011251B4 (de) Robotersteuerung mit Funktion, die ein Lernen vereinfacht, und Robotersteuerverfahren
DE102012218297B4 (de) Verfahren zur dynamischen Optimierung einer Robotersteuerschnittstelle
DE102019001948B4 (de) Steuerung und maschinelle Lernvorrichtung
DE102012106771B4 (de) Controller für elektromotor, umfassend eine funktion zum simultanen schätzen von trägheit, reibung und federkonstante
DE102018004330B4 (de) Steuerung und maschinelle Lernvorrichtung
DE102015107436B4 (de) Lernfähige Bahnsteuerung
DE112008003963B4 (de) System und Verfahren zur Off-line-Programmierung eines Industrieroboters
DE102009003003B4 (de) Numerische Steuerung mit der Funktion einer Koordinatentransformation der Werkzeugphase
DE102019110434A1 (de) Werkzeugwahlvorrichtung und Maschinenlernvorrichtung
DE102020115658A1 (de) Anpassungsunterstützungsvorrichtung
DE102006017945A1 (de) Ein Verfahren zur Optimierung eines Roboterprogramms und eines Robotersystems
DE102020106239A1 (de) Greifkrafteinstellvorrichtung und greifkrafteinstellsystem
DE102020118225A1 (de) Anomaliebestimmungsvorrichtung und Anomaliebestimmungssystem
DE102018008370A1 (de) Lebensdauervorhersagegerät
DE102019118637A1 (de) Automatische pfadgenerierungsvorrichtung
DE102017120221A1 (de) Steuereinheit, Arbeit-Steuervorrichtung, Mehrachsenbewegung-Steuervorrichtung und Antrieb-Steuervorrichtung
DE102019209104A1 (de) Ausgabevorrichtung, Steuervorrichtung und Ausgabeverfahren für einen Bewertungsfunktionswert
DE102019001177B4 (de) Steuergerät, maschinelle Lernvorrichtung und System
DE102017007909A1 (de) Produktionssteuerung, ausgestattet mit einer Funktion zur Identifizierung der Ursache nach einem Betriebsstop einer Produktionseinrichtung, die Fertigungseinrichtungen umfasst
DE102019007381A1 (de) Numerische Steuerung
DE102017010678B4 (de) Verfahren und System zum Vorgeben eines Beaufschlagungsmuster-Befehls-Lexikons zur Eingabe wenigstens eines Roboterbefehls
DE102018007107A1 (de) Steuereinrichtung und maschinenlerneinrichtung

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