DE102019106729A1 - Drive device and machine learning device - Google Patents

Drive device and machine learning device Download PDF

Info

Publication number
DE102019106729A1
DE102019106729A1 DE102019106729.4A DE102019106729A DE102019106729A1 DE 102019106729 A1 DE102019106729 A1 DE 102019106729A1 DE 102019106729 A DE102019106729 A DE 102019106729A DE 102019106729 A1 DE102019106729 A1 DE 102019106729A1
Authority
DE
Germany
Prior art keywords
command
state
learning
value
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.)
Pending
Application number
DE102019106729.4A
Other languages
German (de)
Inventor
Takehiro Yamaguchi
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 DE102019106729A1 publication Critical patent/DE102019106729A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4183Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by data acquisition, e.g. workpiece identification
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/14Estimation or adaptation of motor parameters, e.g. rotor time constant, flux, speed, current or voltage
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D13/00Control of linear speed; Control of angular speed; Control of acceleration or deceleration, e.g. of a prime mover
    • G05D13/62Control of linear speed; Control of angular speed; Control of acceleration or deceleration, e.g. of a prime mover characterised by the use of electric means, e.g. use of a tachometric dynamo, use of a transducer converting an electric value into a displacement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P6/00Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
    • H02P6/08Arrangements for controlling the speed or torque of a single motor
    • 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/33Director till display
    • G05B2219/33034Online learning, training
    • 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/33Director till display
    • G05B2219/33321Observation learning
    • 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/35Nc in input of data, input till input file format
    • G05B2219/35534Conversion input data
    • 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/37Measurements
    • G05B2219/37254Estimate wear of subsystem of machine with measures from other subsystems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Automation & Control Theory (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Power Engineering (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Feedback Control In General (AREA)
  • Control Of Electric Motors In General (AREA)
  • Numerical Control (AREA)

Abstract

Eine Antriebsvorrichtung, welche eine Geschwindigkeit oder ein Drehmoment eines Servomotors einer Verarbeitungsmaschine im Einklang mit einem durch Umwandeln eines von außerhalb eingegebenen externen Befehls erlangten Befehl steuert, weist eine Vorrichtung zum maschinellen Lernen auf, welche die angemessene Umwandlung vom externen Befehl zum Befehl erlernt. Die Vorrichtung zum maschinellen Lernen weist auf: eine Zustandsbeobachtungseinheit, welche den externen Befehl, den Befehl und einen Zustand der Bearbeitungsmaschine oder des Servomotors als Zustandsvariablen, die einen gegenwärtigen Zustand einer Umgebung darstellen, überwacht; eine Bestimmungsdatenerfassungseinheit, welche Bestimmungsdaten, die ein Auswertungsergebnis der Bearbeitung durch die Bearbeitungsmaschine anzeigen, erfasst; und eine Lerneinheit, welche den Zusammenhang zwischen dem externen Befehl und dem Zustand der Bearbeitungsmaschine oder des Servomotors sowie dem Befehl unter Verwendung der Zustandsvariablen und der Bestimmungsdaten erlernt.A drive device which controls a speed or torque of a servomotor of a processing machine in accordance with a command obtained by converting an external command input from an external input has a machine learning device which learns the appropriate conversion from the external command to the command. The machine learning apparatus includes: a state observation unit that monitors the external command, the command, and a state of the processing machine or the servomotor as state variables representing a current state of an environment; a determination data acquisition unit that acquires determination data indicating an evaluation result of the processing by the processing machine; and a learning unit that learns the relationship between the external command and the state of the processing machine or the servomotor and the command using the state variables and the determination data.

Description

[HINTERGRUND DER ERFINDUNG]BACKGROUND OF THE INVENTION

Gebiet der ErfindungField of the invention

Die vorliegende Erfindung betrifft eine Antriebsvorrichtung und eine Vorrichtung für maschinelles Lernen und, insbesondere, eine Antriebsvorrichtung und eine Vorrichtung für maschinelles Lernen, die einen als Reaktion auf einen externen Befehl erzeugten Befehl optimieren.The present invention relates to a machine learning drive apparatus and apparatus and, more particularly, to a machine learning drive apparatus and apparatus which optimize a command generated in response to an external command.

Beschreibung der verwandten TechnikDescription of the Related Art

Es gibt Antriebsvorrichtungen, die einen Befehl, der von einer Steuervorrichtung ausgegeben worden ist (hierin im Folgenden bezeichnet als externer Befehl), empfangen, und einen Befehl zum Steuern einer Vorrichtung (hierin im Folgenden einfach als Befehl bezeichnet) erzeugen. In einem typischen Beispiel, wie es in 10 gezeigt ist, gibt eine Steuervorrichtung einen analogen Spannungsbefehl als einen externen Befehl aus, eine Servomotorantriebsvorrichtung unterzieht den analogen Spannungsbefehl einer AD-Wandlung und erzeugt einen Geschwindigkeitsbefehl und einen Drehmomentbefehl, und ein Servomotor wird nach der Wandlung durch die Befehle (den Geschwindigkeitsbefehl und den Drehmomentbefehl) angetrieben.There are driving devices which receive a command issued from a control device (hereinafter referred to as an external command) and generate a command for controlling a device (hereinafter referred to simply as a command). In a typical example, as in 10 A control device outputs an analog voltage command as an external command, a servomotor drive device applies the analog voltage command to an AD conversion and generates a speed command and a torque command, and a servo motor, after being converted by the commands (the speed command and the torque command). driven.

Während ein Befehlswert im Fall eines analogen Spannungsbefehls in der Form eines analogen Spannungswerts übertragen wird, kann aufgrund von Eingangsversatzspannung, Rauschen und dergleichen, die durch die halbleitenden Eigenschaften und die Auswirkung von Temperaturschwankungen (einer Temperaturdrift) entstehen können, ein Fehler zwischen einem von der Steuervorrichtung vorgesehenen Befehlswert und einem durch die Antriebsvorrichtung beruhend auf dem empfangenen analogen Spannungswert interpretierten Befehlswert auftreten. Ein solcher Fehler beeinträchtigt die Steuerbarkeit des Servomotors und kann Phänomene, wie zum Beispiel eine Zunahme der Zykluszeit, einen Verlust an Reaktionsgeschwindigkeit, einen Verlust an Bearbeitungsqualität und eine Erhöhung des Energieverbrauchs, verursachen.While a command value is transmitted in the form of an analog voltage value in the case of an analog voltage command, an error may arise between one of the control device due to input offset voltage, noise, and the like which may be caused by the semiconducting characteristics and the effect of temperature drift (temperature drift) provided command value and interpreted by the drive device based on the received analog voltage value command value occur. Such an error affects the controllability of the servomotor and may cause phenomena such as an increase in cycle time, a loss of reaction speed, a loss of machining quality, and an increase in power consumption.

Um ein Auftreten solcher Phänomene zu unterdrücken, wird eine Fehlfunktion eines Servomotors üblicherweise, sogar wenn ein Fehler in einem empfangenen anlogen Spannungsbefehlswert entstanden ist, verhindert durch Maßnahmen, wie zum Beispiel:

  1. (1) dass, wenn eine Steuervorrichtung einen 0-V-Befehl als einen externen Befehl ausgibt, zur selben Zeit ein Servoabschaltsignal und ein Achsenstoppsignal ausgegeben werden;
  2. (2) dass die Steuervorrichtung ein Verhalten des Servomotors überwacht und einen externen Befehl ausgibt, der das Verhalten des Servomotors (in einer entgegengesetzten Richtung) aufhebt (eine Schleife einbaut); und (3) dass eine tote Zone oder ein Filter bereitgestellt ist (zum Beispiel werden Spannungsschwankungen von ±0,001 V ungültig gemacht).
In order to suppress occurrence of such phenomena, a malfunction of a servomotor is usually prevented by measures such as, for example, even if an error has occurred in a received analog voltage command value.
  1. (1) that when a control device outputs a 0V command as an external command, a power-off signal and an axis stop signal are output at the same time;
  2. (2) that the control device monitors a behavior of the servomotor and outputs an external command that overrides (loops) the behavior of the servomotor (in an opposite direction); and (3) that a dead zone or filter is provided (for example, voltage variations of ± 0.001V are invalidated).

Als eine verwandte Technik beschreibt die offengelegte japanische Patentanmeldung Nr. 2017-102613 eine Motorsteuervorrichtung, die durch maschinelles Lernen Korrekturmengen eines Positionsbefehls, eines Geschwindigkeitsbefehls und dergleichen zum Steuern eines Motors berechnet.As a related technique, the disclosed Japanese Patent Application No. 2017-102613 a motor control device that calculates, by machine learning, correction amounts of a position command, a speed command, and the like for controlling an engine.

Das in der offengelegten japanischen Patentanmeldung Nr. 2017-102613 beschriebene Verfahren zielt ab auf das Korrigieren einer Verschlechterung der Sanftheit der Bewegung einer Vorschubachse, die aufgrund von verschiedenen mechanischen Faktoren auftritt, und ist nicht dafür vorgesehen, einen Fehler, der zwischen einem von einer Steuervorrichtung vorgesehenen Befehlswert und einem durch die Antriebsvorrichtung interpretierten Befehlswert entsteht, und der nachteilige Phänomene wie die oben beschriebenen verursachen kann, zu korrigieren.That in the disclosed Japanese Patent Application No. 2017-102613 The described method aims at correcting a deterioration of the smoothness of the movement of a feed axis that occurs due to various mechanical factors, and is not intended to cause an error occurring between a command value provided by a controller and a command value interpreted by the drive device. and that can cause adverse phenomena such as those described above to correct.

Die üblicherweise vorgenommenen Maßnahmen (1) und (2) weisen ein Problem damit auf, dass ein aufwändiger Mechanismus einschließlich der Hinzufügung von Hardware und einer komplexen Steuerung durch eine Steuervorrichtung entwickelt werden muss. Maßnahme (3) weist ein Problem damit auf, dass Schwankungen in Befehlswerten, die unter eine Schwelle einer toten Zone oder eines Filters fallen, sowie Fehlern, welche die Schwelle überschreiten, nicht Rechnung getragen werden kann. Daher sind die Maßnahmen unzureichend und folglich sind zusätzliche Maßnahmen erforderlich.The measures normally taken ( 1 ) and ( 2 ) have a problem that a complicated mechanism including the addition of hardware and complex control must be developed by a controller. Measure ( 3 ) has a problem that fluctuations in command values falling below a threshold of a dead zone or a filter as well as errors exceeding the threshold can not be accommodated. Therefore, the measures are insufficient and therefore additional measures are needed.

[ZUSAMMENFASSUNG DER ERFINDUNG][SUMMARY OF THE INVENTION]

Die vorliegende Erfindung ist gemacht worden, um derartige Probleme zu lösen, und eine Aufgabe derselben ist die Bereitstellung einer Antriebsvorrichtung und einer Vorrichtung zum maschinellen Lernen, die einen als Reaktion auf einen externen Befehl erzeugten Befehl optimieren.The present invention has been made to solve such problems, and an object thereof is to provide a driving apparatus and a machine learning apparatus which optimize a command generated in response to an external command.

Eine Antriebsvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung ist eine Antriebsvorrichtung, welche eine Geschwindigkeit und ein Drehmoment eines Servomotors einer Bearbeitungsmaschine gemäß eines durch Umwandeln eines von außen eingegebenen externen Befehls erlangten Befehls steuert, die Antriebsvorrichtung aufweisend eine Vorrichtung zum maschinellen Lernen, welche eine angemessene Umwandlung vom externen Befehl zum Befehl erlernt, wobei die Vorrichtung für maschinelles Lernen aufweist: eine Zustandsbeobachtungseinheit, welche den externen Befehl, den Befehl und einen Zustand der Bearbeitungsmaschine oder des Servomotors als Zustandsvariablen, die einen gegenwärtigen Zustand einer Umgebung darstellen, überwacht; eine Bestimmungsdatenerfassungseinheit, welche Bestimmungsdaten, die ein Auswertungsergebnis der Bearbeitung durch die Bearbeitungsmaschine anzeigen, erfasst; und eine Lerneinheit, welche den Zusammenhang zwischen dem externen Befehl und dem Zustand der Bearbeitungsmaschine sowie dem Befehl unter Verwendung der Zustandsvariablen und der Bestimmungsdaten erlernt.A driving device according to an embodiment of the present invention is a driving device that controls a speed and a torque of a servomotor of a processing machine according to an instruction obtained by converting an externally input external command, the driving device having a machine learning device that performs an appropriate conversion from learning external command to the command, the machine learning apparatus comprising: a state observation unit which monitors the external command, the command and a state of the processing machine or the servomotor as state variables representing a current state of an environment; a determination data acquisition unit that acquires determination data indicating an evaluation result of the processing by the processing machine; and a learning unit which learns the relationship between the external command and the state of the processing machine and the command using the state variables and the designation data.

In der Antriebsvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung umfassen die Zustandsvariablen, als der Zustand der Bearbeitungsmaschine oder des Servomotors, mindestens eines der Elemente aus der Gruppe bestehend aus Geschwindigkeitsbefehlswert, Drehmomentbefehlswert, Positionsrückmeldung, Geschwindigkeitsrückmeldung, Drehmomentrückmeldung, Motorstromwert und einer Motortemperatur jeder der Wellen der Bearbeitungsmaschine, Zykluszeit der Bearbeitung, Temperatur jeder der Einheiten der Bearbeitungsmaschine, Form und Rohmaterial eines bei der Bearbeitung verwendeten Materials sowie Form und Rohmaterial eines bei der Bearbeitung verwendeten Formwerkzeugs.In the drive apparatus according to an embodiment of the present invention, the state variables, as the state of the processing machine or the servomotor, include at least one of the group consisting of speed command value, torque command value, position feedback, speed feedback, torque feedback, motor current value and motor temperature of each of the shafts of the processing machine Cycle time of the processing, temperature of each of the units of the processing machine, shape and raw material of a material used in processing, and shape and raw material of a mold used in processing.

In der Antriebsvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung umfassen die Bestimmungsdaten mindestens eines der Elemente aus der Gruppe bestehend aus einer Präzision und einer Qualität eines bearbeiteten Produkts, einer Vibration der Bearbeitungsmaschine, einem Formwerkzeug oder einer Kugelspindel, einer Last am Servomotor, einem Energieverbrauch durch die Bearbeitungsmaschine und einer Zykluszeit der Bearbeitung.In the drive device according to an embodiment of the present invention, the determination data includes at least one of the group consisting of a precision and a quality of a processed product, a vibration of the processing machine, a mold or a ball screw, a load on the servomotor, a power consumption by the Processing machine and a cycle time of processing.

In der Antriebsvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung umfasst die Lerneinheit: eine Auswirkungsberechnungseinheit, welche eine Auswirkung in Zusammenhang mit dem Auswertungsergebnis erlangt; und eine Wertfunktionsaktualisierungseinheit, welche unter Verwendung der Auswirkung eine Funktion aktualisiert, die einen Wert des Befehls in Bezug auf den externen Befehl und den Zustand der Bearbeitungsmaschine oder des Servomotors darstellt.In the drive apparatus according to an embodiment of the present invention, the learning unit includes: an impact calculation unit that obtains an effect related to the evaluation result; and a value-function updating unit that, using the effect, updates a function representing a value of the command with respect to the external command and the state of the processing machine or the servomotor.

In der Antriebsvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung berechnet die Lerneinheit die Zustandsvariablen und die Bestimmungsdaten in einer mehrschichtigen Struktur.In the drive apparatus according to an embodiment of the present invention, the learning unit calculates the state variables and the determination data in a multi-layered structure.

Die Antriebsvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung weist ferner eine Entscheidungsfindungseinheit auf, welche einen Wert des Befehls beruhend auf einem Lernergebnis der Lerneinheit ausgibt.The driving device according to an embodiment of the present invention further comprises a decision making unit that outputs a value of the command based on a learning result of the learning unit.

In der Antriebsvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung führt die Lerneinheit das Lernen unter Verwendung der Zustandsvariablen und der von einer Mehrzahl der Antriebsvorrichtungen erlangten Bestimmungsdaten aus.In the driving apparatus according to an embodiment of the present invention, the learning unit executes the learning using the state variables and the determination data obtained from a plurality of the driving devices.

In der Antriebsvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung ist die Vorrichtung zum maschinellen Lernen durch eine Cloud-Datenverarbeitungsumgebung, eine Fog-Datenverarbeitungsumgebung (Datenverarbeitung am Rand der Cloud) oder eine Edge-Datenverarbeitungsumgebung (Datenverarbeitung am Rand des Netzwerks) realisiert.In the drive apparatus according to an embodiment of the present invention, the machine learning apparatus is realized by a cloud computing environment, a fog computing environment (edge computing of the cloud), or an edge computing environment (edge computing of the network).

Eine Vorrichtung zum maschinellen Lernen gemäß einer Ausführungsform der vorliegenden Erfindung ist eine Vorrichtung zum maschinellen Lernen, welche die angemessene Umwandlung von einem externen Befehl, der einer Antriebsvorrichtung von außen eingegeben wird, in einen Befehl zum Steuern einer Geschwindigkeit oder eines Drehmoments eines Servomotors einer Bearbeitungsmaschine erlernt, die Vorrichtung zum maschinellen Lernen aufweisend: eine Zustandsbeobachtungseinheit, welche den externen Befehl, den Befehl und einen Zustand der Bearbeitungsmaschine oder des Servomotors als Zustandsvariablen, die einen gegenwärtigen Zustand einer Umgebung darstellen, beobachtet; eine a Bestimmungsdatenerfassungseinheit, welche Bestimmungsdaten, die ein Auswertungsergebnis der Bearbeitung durch die Bearbeitungsmaschine anzeigen, erfasst; und eine Lerneinheit, welche den Zusammenhang zwischen dem externen Befehl und dem Zustand der Bearbeitungsmaschine oder des Servomotors sowie dem Befehl unter Verwendung der Zustandsvariablen und der Bestimmungsdaten erlernt.A machine learning apparatus according to an embodiment of the present invention is a machine learning apparatus that learns the appropriate conversion from an external command input to a drive device from the outside to a command for controlling a speed or torque of a servomotor of a processing machine , the machine learning apparatus comprising: a state observation unit that observes the external command, the command, and a state of the processing machine or the servomotor as state variables representing a current state of an environment; a determination data acquisition unit that acquires determination data indicating an evaluation result of processing by the processing machine; and a learning unit that learns the relationship between the external command and the state of the processing machine or the servomotor and the command using the state variables and the determination data.

Im Einklang mit der vorliegenden Erfindung können eine Antriebsvorrichtung und eine Vorrichtung zum maschinellen Lernen, die einen als Reaktion auf einen externen Befehl erzeugten Befehl optimieren, bereitgestellt werden.In accordance with the present invention, a drive apparatus and a machine learning apparatus that optimize a command generated in response to an external command may be provided.

Figurenlistelist of figures

Die obigen sowie weitere Aufgaben und Funktionen der vorliegenden Erfindung werden aus der folgenden Beschreibung von Ausführungsformen offensichtlich, wenn diese zusammen mit den begleitenden Zeichnungen betrachtet werden, in denen:

  • 1 ein schematisches Hardwarekonfigurationsdiagramm einer Antriebsvorrichtung gemäß einer ersten Ausführungsform ist;
  • 2 ein schematisches Funktionsblockdiagramm der Antriebsvorrichtung gemäß der ersten Ausführungsform ist;
  • 3 ein schematisches Funktionsblockdiagramm ist, das einen Aspekt einer Antriebsvorrichtung zeigt;
  • 4 ein schematisches Ablaufdiagramm ist, das einen Aspekt eines maschinellen Lernverfahrens zeigt;
  • 5A ein Diagramm ist, das ein Neuron darstellt;
  • 5B ein Diagramm ist, das ein neuronales Netzwerk darstellt;
  • 6 ein schematisches Funktionsblockdiagramm einer Antriebsvorrichtung gemäß einer zweiten Ausführungsform ist;
  • 7 ein schematisches Funktionsblockdiagramm ist, das einen Aspekt eines Systems zeigt, welches eine Antriebsvorrichtung umfasst;
  • 8 ein schematisches Funktionsblockdiagramm ist, das einen weiteren Aspekt des Systems zeigt, welches eine Antriebsvorrichtung umfasst;
  • 9 ein schematisches Ablaufdiagramm ist, das einen Aspekt eines maschinellen Lernverfahrens zeigt; und
  • 10 ein Diagramm ist, das schematisch einen Betrieb einer Antriebsvorrichtung darstellt.
The above and other objects and features of the present invention will become more apparent from the following description of embodiments when taken in conjunction with the accompanying drawings, in which:
  • 1 FIG. 3 is a schematic hardware configuration diagram of a drive apparatus according to a first embodiment; FIG.
  • 2 is a schematic functional block diagram of the drive device according to the first embodiment;
  • 3 Fig. 10 is a schematic functional block diagram showing an aspect of a drive device;
  • 4 Fig. 10 is a schematic flowchart showing an aspect of a machine learning method;
  • 5A is a diagram representing a neuron;
  • 5B is a diagram representing a neural network;
  • 6 FIG. 3 is a schematic functional block diagram of a drive device according to a second embodiment; FIG.
  • 7 Fig. 12 is a schematic functional block diagram showing an aspect of a system including a drive device;
  • 8th Figure 12 is a schematic functional block diagram showing another aspect of the system including a drive device;
  • 9 Fig. 10 is a schematic flowchart showing an aspect of a machine learning method; and
  • 10 Fig. 3 is a diagram schematically illustrating an operation of a drive device.

[AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN]DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Eine Antriebsvorrichtung 1 gemäß einer Ausführungsform der vorliegenden Erfindung empfängt einen externen Befehl, der von einer Steuervorrichtung ausgegeben wird, und der einen Fehler aufweist, wandelt den empfangenen externen Befehl um, und erzeugt einen Befehl, der typischerweise dazu verwendet wird, eine Vorrichtung anzutreiben (einen Servomotor oder dergleichen), und gibt diesen aus. Durch den Befehl wird die Vorrichtung angetrieben und eine Bearbeitung ausgeführt. Die Antriebsvorrichtung 1 ist dazu fähig, eine Korrektheit eines Ergebnisses der Bearbeitung auszuwerten und die Umwandlung vom externen Befehl zum Befehl zum Verbessern der Bearbeitungsergebnisse zu optimieren.A drive device 1 According to an embodiment of the present invention, receiving an external command issued from a controller and having an error converts the received external command and generates a command that is typically used to drive a device (a servomotor or the like) ), and outputs this. The command drives the device and performs a machining. The drive device 1 is able to evaluate a correctness of a result of the processing and to optimize the conversion from the external command to the command to improve the processing results.

Die Steuervorrichtung ist typischerweise eine Vorrichtung, die eine Bearbeitungsmaschine steuert. Zum Beispiel ist die Steuervorrichtung einer Spritzgussmaschine dazu fähig, eine Mehrzahl von Achsen zu steuern, wie zum Beispiel eine Einspritzachse, eine Messachse, eine Formschließachse, eine Projektionsachse, eine Plastifizierungsachse und eine zusätzliche Achse. Die Antriebsvorrichtung 1 ist zum Beispiel eine Vorrichtung, welche einen Servomotor einer dieser Achsen antreibt, und die der Steuervorrichtung untergeordnet ist. Die Antriebsvorrichtung 1 empfängt einen analogen Spannungsbefehl ausgegeben von der Steuervorrichtung, unterzieht den analogen Spannungsbefehl einer A/D-Wandlung und erzeugt einen Geschwindigkeitsbefehlswert und einen Drehmomentbefehlswert, und gibt die Befehlswerte aus, um einen Servomotor tatsächlich anzutreiben.The control device is typically a device that controls a processing machine. For example, the control device of an injection molding machine is capable of controlling a plurality of axes, such as an injection axis, a measurement axis, a mold closure axis, a projection axis, a plastication axis, and an additional axis. The drive device 1 For example, a device which drives a servomotor of one of these axes and which is subordinate to the control device. The drive device 1 receives an analog voltage command output from the controller, A / D conversion the analog voltage command, and generates a speed command value and a torque command value, and outputs the command values to actually drive a servomotor.

1 ist ein schematisches Hardwarekonfigurationsdiagramm aufweisend die Antriebsvorrichtung 1 gemäß der ersten Ausführungsform der vorliegenden Erfindung und einen Servomotor, der durch die Antriebsvorrichtung 1 angetrieben wird. Die Antriebsvorrichtung 1 weist eine CPU 11, einen ROM 12, einen RAM 13, einen nichtflüchtigen Speicher 14, eine Schnittstelle 21, eine Schnittstelle 22, einen Bus 20 und eine Servosteuereinheit 30 auf. Ein Servomotor 50 und eine Steuervorrichtung 80 sind mit der Antriebsvorrichtung 1 verbunden. 1 FIG. 13 is a schematic hardware configuration diagram including the drive device. FIG 1 according to the first embodiment of the present invention and a servomotor driven by the driving device 1 is driven. The drive device 1 has a CPU 11 , a ROM 12 , a ram 13 , a non-volatile memory 14 , an interface 21 , an interface 22 , a bus 20 and a servo control unit 30 on. A servomotor 50 and a control device 80 are with the drive device 1 connected.

Die CPU 11 ist ein Prozessor, der die gesamte Antriebsvorrichtung 1 steuert. Die CPU 11 liest ein im ROM 12 gespeichertes Systemprogramm über die Schnittstelle 22 und den Bus 20 ein und steuert die gesamte Antriebsvorrichtung 1 im Einklang mit dem Systemprogramm.The CPU 11 is a processor that drives the entire drive 1 controls. The CPU 11 reads in the ROM 12 stored system program via the interface 22 and the bus 20 and controls the entire drive device 1 in line with the system program.

Der ROM 12 speichert im Vorhinein verschiedene Systemprogramme (einschließlich eines Systemprogramms zum Steuern der Kommunikation mit einer Vorrichtung zum maschinellen Lernen 100, die später beschrieben wird), die dazu erforderlich sind, die Antriebssteuerung des Servomotors 50 und dergleichen auszuführen.The ROM 12 stores in advance various system programs (including a system program for controlling communication with a machine learning device 100 which will be described later) required for the drive control of the servomotor 50 and the like.

Der RAM 13 speichert vorübergehend Berechnungsdaten und dergleichen.The RAM 13 temporarily stores calculation data and the like.

Der nichtflüchtige Speicher 14 ist zum Beispiel durch eine Batterie (nicht gezeigt) gepuffert, und ist dazu fähig, seinen Speicherstatus zu bewahren, sogar wenn eine Stromversorgung der Antriebsvorrichtung 1 ausgeschaltet ist. Der nichtflüchtige Speicher 14 speichert verschiedene Programme, Daten und dergleichen. Die im nichtflüchtigen Speicher 14 gespeicherten Programme und Daten können bei der Ausführung oder im Gebrauch dem RAM 13 bereitgestellt werden.The non-volatile memory 14 is buffered by a battery (not shown), for example, and is capable of maintaining its memory status even when power is supplied to the driving device 1 is off. The non-volatile memory 14 stores various programs, data and the like. The non-volatile memory 14 stored programs and data may be in the execution or use of the RAM 13 to be provided.

Die Servosteuereinheit 30 empfängt einen Geschwindigkeitsbefehl und einen Drehmomentbefehl, die von der CPU 11 ausgegeben worden sind, und treibt den Servomotor 50 an.The servo control unit 30 receives a speed command and a torque command issued by the CPU 11 have been issued, and drives the servomotor 50 at.

Der Servomotor 50 wird durch die Servosteuereinheit 30 angetrieben und bewegt in der Bearbeitungsmaschine bereitgestellte Achsen. Typischerweise kann der Servomotor 50 einen eingebauten Positions-/Geschwindigkeitsmelder aufweisen. Der Positions-/Geschwindigkeitsmelder gibt ein Positions-/Geschwindigkeitsrückmeldesignal aus, und eine Rückkopplungssteuerung der Position und Geschwindigkeit wird ausgeführt, wenn das Positions-/Geschwindigkeitsrückmeldesignal zur Steuervorrichtung 80 zurückgeleitet wird. The servomotor 50 is through the servo control unit 30 driven and moved in the processing machine provided axes. Typically, the servomotor can 50 have a built-in position / speed detector. The position / velocity detector outputs a position / velocity feedback signal and feedback control of position and velocity is performed when the position / velocity feedback signal is sent to the controller 80 is returned.

Es ist anzumerken, dass - obwohl die Steuervorrichtung 80 und die Antriebsvorrichtung 1 in 1 eins-zu-eins miteinander verbunden sind - in Wahrheit eine Anzahl von Antriebsvorrichtungen 1, die der Anzahl der Achsen, die in der Bearbeitungsmaschine, die ein Steuerobjekt darstellt, bereitgestellt sind, entspricht, mit der Steuervorrichtung 80 verbunden sind. Falls die Steuervorrichtung 80 zum Beispiel eine Bearbeitungsmaschine steuert, die mit sechs Achsen versehen ist, sind insgesamt sechs Antriebsvorrichtungen 1, die den jeweiligen Achsen entsprechen, mit der Steuervorrichtung 80 verbunden.It should be noted that - although the control device 80 and the drive device 1 in 1 one-to-one connected - in fact a number of drive devices 1 that corresponds to the number of axes provided in the processing machine representing a control object with the control device 80 are connected. If the control device 80 For example, controlling a machining machine provided with six axes is a total of six driving devices 1 corresponding to the respective axes with the control device 80 connected.

Die Steuervorrichtung 80 ist eine Vorrichtung zum Steuern einer Bearbeitungsmaschine, und ist zum Beispiel aus einer numerischen Steuervorrichtung gebildet. Die Steuervorrichtung 80 erzeugt einen externen Befehl zum Steuern einer Achse im Einklang mit einem Bearbeitungsprogramm, und leitet den externen Befehl über die Schnittstelle 22 an die CPU 11 weiter. Während ein externer Befehl typischerweise als ein analoger Spannungswert eingegeben wird, kann der analoge Spannungswert einen Fehler aufweisen, der einer Eingangsversatzspannung, Rauschen oder dergleichen zuzuschreiben ist. Darüber hinaus leitet die Steuervorrichtung 80 verschiedene Dateninformationen, die für maschinelles Lernen (das später beschrieben wird) erforderlich sind, über die Schnittstelle 22 an die CPU 11 weiter.The control device 80 is a device for controlling a processing machine, and is formed of, for example, a numerical control device. The control device 80 generates an external command to control an axis in accordance with a machining program, and passes the external command through the interface 22 to the CPU 11 further. While an external command is typically input as an analog voltage value, the analog voltage value may include an error attributable to input offset voltage, noise, or the like. In addition, the control device directs 80 various data information required for machine learning (to be described later) through the interface 22 to the CPU 11 further.

Die Schnittstelle 21 ist eine Schnittstelle zum Verbinden der Antriebsvorrichtung 1 mit der Vorrichtung zum maschinellen Lernen 100. Die Vorrichtung zum maschinellen Lernen 100 weist einen Prozessor 101, einen ROM 102, einen RAM 103 und einen nichtflüchtigen Speicher 104 auf.the interface 21 is an interface for connecting the drive device 1 with the machine learning device 100 , The machine learning device 100 has a processor 101 , a ROM 102 , a ram 103 and a nonvolatile memory 104 on.

Der Prozessor 101 steuert die gesamte Vorrichtung zum maschinellen Lernen 100. Der ROM 102 speichert Systemprogramme und dergleichen. Der RAM 103 führt eine vorübergehende Speicherung in entsprechenden Prozessen in Zusammenhang mit dem maschinellen Lernen aus. Der nichtflüchtige Speicher 104 speichert Lernmodelle und dergleichen.The processor 101 controls the entire machine learning device 100 , The ROM 102 saves system programs and the like. The RAM 103 performs temporary storage in corresponding processes related to machine learning. The non-volatile memory 104 stores learning models and the like.

Die Vorrichtung zum maschinellen Lernen 100 beobachtet über die Schnittstelle 21 verschiedene Einzelinformationen (externe Befehle, verschiedene Dateninformationen und dergleichen, die von der Steuervorrichtung 80 eingegeben werden), welche durch die Antriebsvorrichtung 1 erlangt werden können. Die Vorrichtung zum maschinellen Lernen 100 gibt Befehle (einen Geschwindigkeitsbefehl und einen Drehmomentbefehl) zum Antreiben des Servomotors 50 über die Schnittstelle 21 zur Antriebsvorrichtung 1 aus. Die Antriebsvorrichtung 1 empfängt einen durch die Vorrichtung zum maschinellen Lernen 100 ausgegebenen Befehl und gibt den Befehl an die Servosteuereinheit 30 aus.The machine learning device 100 observed over the interface 21 various pieces of information (external commands, various data information and the like provided by the control device 80 entered), which by the drive device 1 can be obtained. The machine learning device 100 gives commands (a speed command and a torque command) to drive the servomotor 50 over the interface 21 to the drive device 1 out. The drive device 1 receives one through the machine learning device 100 output command and gives the command to the servo control unit 30 out.

2 ist ein schematisches Funktionsblockdiagramm der Antriebsvorrichtung 1 und der Vorrichtung zum maschinellen Lernen 100 gemäß der ersten Ausführungsform. Die Vorrichtung zum maschinellen Lernen 100 weist eine Zustandsbeobachtungseinheit 106, eine Bestimmungsdatenerfassungseinheit 108 und eine Lerneinheit 110 auf. Die Zustandsbeobachtungseinheit 106, die Bestimmungsdatenerfassungseinheit 108 und die Lerneinheit 110 können zum Beispiel als eine Funktion des Prozessors 101 umgesetzt sein. Alternativ dazu können die Zustandsbeobachtungseinheit 106, die Bestimmungsdatenerfassungseinheit 108 und die Lerneinheit 110 zum Beispiel umgesetzt sein, indem der Prozessor 101 im ROM 102 gespeicherte Software ausführt. 2 is a schematic functional block diagram of the drive device 1 and the machine learning apparatus 100 according to the first embodiment. The machine learning device 100 has a state observation unit 106 , a determination data acquisition unit 108 and a learning unit 110 on. The state observation unit 106 , the determination data acquisition unit 108 and the learning unit 110 For example, as a function of the processor 101 be implemented. Alternatively, the state observation unit 106 , the determination data acquisition unit 108 and the learning unit 110 for example, be implemented by the processor 101 in the ROM 102 stored software executes.

Die Zustandsbeobachtungseinheit 106 beobachtet Zustandsvariablen S, die einen gegenwärtigen Zustand einer Umgebung darstellen. Die Zustandsvariablen S umfassen einen Befehlswert S1 erlangt durch Umwandeln und Korrigieren eines analogen Spannungsbefehlswerts, der einen Fehler aufweist, einen analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und verschiedene Einzelinformationen, die einen Zustand einer Bearbeitungsmaschine anzeigen. Wenn die Bearbeitungsmaschine zum Beispiel eine Spritzgussmaschine ist, können die Zustandsvariablen S Achseninformationen S3 in Bezug auf die Zustände sämtlicher Achsen der Spritzgussmaschine, eine Zykluszeit/Taktzeit S4 der Spritzgussmaschine, eine Temperatur S5 der Spritzgussmaschine, Materialinformationen S6 in Bezug auf das Harzmaterial und Forminformationen S7 in Bezug auf eine Spritzgießform umfassen.The state observation unit 106 observes state variables S representing a current state of an environment. The state variables S include a command value S1 obtained by converting and correcting an analog voltage command value having an error, an analog voltage command value S2 that has an error, and various pieces of information indicating a state of a processing machine. For example, if the processing machine is an injection molding machine, the state variables S may be axis information S3 with respect to the states of all the axes of the injection molding machine, one cycle time / cycle time S4 the injection molding machine, a temperature S5 the injection molding machine, material information S6 in terms of the resin material and shape information S7 with respect to an injection mold.

Der Befehlswert S1 ist ein Befehlswert, der erzeugt wird, indem der analoge Spannungsbefehlswert S2 (der später beschrieben ist) einer A/D-Wandlung unterzogen, und eine Korrektur desselben angewendet wird. Ein Ablauf der A/D-Wandlung und der Korrektur kann umgekehrt werden. Der Korrekturprozess kann durch den Prozessor 101 ausgeführt werden, indem einer analogen Eingangsspannung ein vorgeschriebener Versatz hinzugefügt wird, ein Teil (zum Beispiel eine Vorderkante) einer Wellenform einer analogen Spannung mit einem vorgeschriebenen Koeffizienten zum Ändern der Wellenform multipliziert wird, und dergleichen. Eine Vielzahl der Befehlswerte S1 können durch Variieren des Versatzes, des Koeffizienten und dergleichen erlangt werden.The command value S1 is a command value that is generated by the analog voltage command value S2 (which will be described later) subjected to A / D conversion, and a correction thereof is applied. A process of A / D conversion and correction can be reversed. The correction process can be done by the processor 101 by adding a prescribed offset to an analog input voltage, a part (for example, a leading edge) of a waveform an analog voltage is multiplied by a prescribed coefficient for changing the waveform, and the like. A variety of command values S1 can be obtained by varying the offset, the coefficient, and the like.

Der analoge Spannungsbefehlswert S2 ist ein analoger Spannungswert, welcher der Antriebsvorrichtung 1 als ein externer Befehl von der Steuervorrichtung 80 eingegeben wird. Die Zustandsbeobachtungseinheit 106 ist dazu fähig, den analogen Spannungsbefehlswert S2 von der Antriebsvorrichtung 1 zu erfassen.The analog voltage command value S2 is an analog voltage value, which is the drive device 1 as an external command from the control device 80 is entered. The state observation unit 106 is capable of the analog voltage command value S2 from the drive device 1 capture.

Die Achseninformationen S3 sind ein Geschwindigkeitsbefehlswert, ein Drehmomentbefehlswert, eine Positionsrückmeldung, eine Geschwindigkeitsrückmeldung, eine Drehmomentrückmeldung, ein Motorstromwert, eine Motortemperatur und dergleichen von allen oder einer oder mehreren beliebigen Achsen der Spritzgussmaschine. Die Zustandsbeobachtungseinheit 106 erfasst die Achseninformationen S3 von der Antriebsvorrichtung 1. Die Antriebsvorrichtung 1 ist dazu fähig, diese Einzelinformationen von der Steuervorrichtung 80 zu erfassen.The axis information S3 are a speed command value, a torque command value, a position feedback, a speed feedback, a torque feedback, a motor current value, an engine temperature, and the like of all or one or more arbitrary axes of the injection molding machine. The state observation unit 106 captures the axis information S3 from the drive device 1 , The drive device 1 is capable of this item of information from the controller 80 capture.

Die Zykluszeit S4 ist eine Zykluszeit der Bearbeitung in der Spritzgussmaschine. Die Zustandsbeobachtungseinheit 106 erfasst die Zykluszeit S4 von der Antriebsvorrichtung 1. Die Antriebsvorrichtung 1 ist dazu fähig, diese Informationen von der Steuervorrichtung 80 zu erfassen.The cycle time S4 is a cycle time of machining in the injection molding machine. The state observation unit 106 records the cycle time S4 from the drive device 1 , The drive device 1 is capable of this information from the control device 80 capture.

Die Temperatur S5 stellt eine Temperatur jeder der Einheiten der Spritzgussmaschine dar. Die Zustandsbeobachtungseinheit 106 erfasst die Temperatur S5 von der Antriebsvorrichtung 1. Die Antriebsvorrichtung 1 ist dazu fähig, diese Informationen von der Steuervorrichtung 80 zu erfassen.The temperature S5 represents a temperature of each of the units of the injection molding machine. The state observation unit 106 detects the temperature S5 from the drive device 1 , The drive device 1 is capable of this information from the control device 80 capture.

Die Materialinformationen S6 sind Informationen, welche eine Form (zum Beispiel eine Kennung, welche eine Form eindeutig anzeigt) und ein Rohmaterial (zum Beispiel eine Kennung, welche ein Rohmaterial eindeutig angibt) eines in der Spritzgussmaschine verwendeten Harzmaterials angeben. Die Zustandsbeobachtungseinheit 106 erfasst die Materialinformationen S6 von der Antriebsvorrichtung 1. Die Antriebsvorrichtung 1 ist dazu fähig, diese Einzelinformationen von der Steuervorrichtung 80 zu erfassen.The material information S6 That is, information indicating a shape (for example, an identifier uniquely indicating a shape) and a raw material (for example, an identifier uniquely indicating a raw material) of a resin material used in the injection molding machine. The state observation unit 106 captures the material information S6 from the drive device 1 , The drive device 1 is capable of this item of information from the controller 80 capture.

Die Forminformationen S7 sind Informationen, welche eine Form (zum Beispiel eine Kennung, welche eine Form eindeutig anzeigt) und ein Rohmaterial (zum Beispiel eine Kennung, welche ein Rohmaterial eindeutig angibt) einer Form, die in der Spritzgussmaschine verwendet wird, angeben. Die Zustandsbeobachtungseinheit 106 erfasst die Forminformationen S7 von der Antriebsvorrichtung 1. Die Antriebsvorrichtung 1 ist dazu fähig, diese Einzelinformationen von der Steuervorrichtung 80 zu erfassen.The shape information S7 For example, information indicating a shape (for example, an identifier uniquely indicating a shape) and a raw material (for example, an identifier uniquely indicating a raw material) of a shape used in the injection molding machine are. The state observation unit 106 captures the shape information S7 from the drive device 1 , The drive device 1 is capable of this item of information from the controller 80 capture.

Die Bestimmungsdatenerfassungseinheit 108 erlangt Bestimmungsdaten D, die einen Index darstellen, der ein Ergebnis anzeigt, wenn der Servomotor unter den Zustandsvariablen S angetrieben wird. Die Bestimmungsdaten D weisen eine Präzision D1 auf, welche eine Information in Bezug auf eine Präzision und eine Qualität eines bearbeiteten Produkts ist, sowie verschiedene Einzelinformationen, welche einen Zustand einer Bearbeitungsmaschine anzeigen. Wenn die Bearbeitungsmaschine zum Beispiel eine Spritzgussmaschine ist, können die Informationen eine Vibration D2 der Spritzgussmaschine, eine Spritzgießform, eine Kugelspindel oder dergleichen, eine Last D3 auf den Servomotor 50, Stromverbrauch/Leistungsaufnahme D4 durch die Spritzgussmaschine, eine Zykluszeit D5 der Spritzgussmaschine und eine Reaktionszeit D6 des Servomotors 50 umfassen.The determination data acquisition unit 108 obtains determination data D indicative of an index indicating a result when the servo motor is driven among the state variables S. The determination data D show a precision D1 which is information regarding a precision and a quality of a processed product, and various pieces of information indicating a state of a processing machine. For example, if the processing machine is an injection molding machine, the information may be a vibration D2 the injection molding machine, an injection mold, a ball screw or the like, a load D3 on the servomotor 50 , Power consumption / power consumption D4 through the injection molding machine, a cycle time D5 the injection molding machine and a reaction time D6 of the servomotor 50 include.

Als die Präzision D1 kann die Bestimmungsdatenerfassungseinheit 108 zum Beispiel einen Wert verwenden, der einen Fehler zwischen den Abmessungen und den Auslegungswerten des bearbeiteten Produkts angibt. Als die Präzision D1 kann auch ein Auswertungswert verwendet werden, der eine Qualität (zum Beispiel einen Oberflächenzustand) des bearbeiteten Produkts angibt. Da ein Erfassungsverfahren, ein Auswertungsverfahren und dergleichen des Fehlers und des oben beschriebenen Auswertungswerts bekannte Verfahren sind, werden ausführliche Beschreibungen hierin weggelassen. Zum Beispiel können der Fehler und der Auswertungswert innerhalb einer Bearbeitungsmaschine gemessen werden, oder sie können durch eine Inspektionsmaschine oder dergleichen außerhalb der Bearbeitungsmaschine gemessen werden. Ein Messergebnis der Inspektionsmaschine wird in die Steuervorrichtung 80 eingegeben. Die Antriebsvorrichtung 1 erfasst diese Einzelinformationen von der Steuervorrichtung 80, und die Bestimmungsdatenerfassungseinheit 108 erfasst diese Einzelinformationen von der Antriebsvorrichtung 1.As the precision D1 can the determination data acquisition unit 108 For example, use a value that indicates an error between the dimensions and design values of the processed product. As the precision D1 An evaluation value may also be used that indicates a quality (for example, a surface condition) of the processed product. Since a detection method, an evaluation method and the like of the error and the evaluation value described above are known methods, detailed descriptions are omitted herein. For example, the error and the evaluation value may be measured within a processing machine, or they may be measured by an inspection machine or the like outside the processing machine. A measurement result of the inspection machine is transferred to the control device 80 entered. The drive device 1 detects this individual information from the control device 80 , and the determination data acquiring unit 108 detects this individual information from the drive device 1 ,

Als die Vibration D2 kann die Bestimmungsdatenerfassungseinheit 108 Informationen (eine Verschiebung, eine Geschwindigkeit, eine Beschleunigung oder dergleichen), welche eine Vibration der Spritzgussmaschine, einer Form, einer Kugelspindel oder dergleichen anzeigen, von der Antriebsvorrichtung 1 erfassen. Die Antriebsvorrichtung 1 ist dazu fähig, diese Einzelinformationen von der Steuervorrichtung 80 zu erfassen.As the vibration D2 can the determination data acquisition unit 108 Information (a displacement, a speed, an acceleration or the like) indicative of a vibration of the injection molding machine, a mold, a ball screw or the like from the driving device 1 to capture. The drive device 1 is capable of this item of information from the controller 80 capture.

Als die Last D3 kann die Bestimmungsdatenerfassungseinheit 108 von der Antriebsvorrichtung 1 Informationen, welche eine Last auf den Servomotor 50 angeben, erfassen. Die Last auf den Servomotor 50 kann durch die Steuervorrichtung 80 erfasst werden. Die Antriebsvorrichtung 1 erfasst diese Informationen von der Steuervorrichtung 80, und die Bestimmungsdatenerfassungseinheit 108 erfasst diese Einzelinformationen von der Antriebsvorrichtung 1.As the burden D3 can the determination data acquisition unit 108 from the drive device 1 Information which is a load on the servomotor 50 specify, record. The load on the servomotor 50 can through the control device 80 be recorded. The drive device 1 detects this information from the control device 80 , and the determination data acquiring unit 108 detects this individual information from the drive device 1 ,

Als den Energieverbrauch D4 kann die Bestimmungsdatenerfassungseinheit 108 von der Antriebsvorrichtung 1 Informationen, welche den Energieverbrauch durch die Spritzgussmaschine anzeigen, erfassen. Die Antriebsvorrichtung 1 ist dazu fähig, diese Informationen von der Steuervorrichtung 80 zu erfassen.As the energy consumption D4 can the determination data acquisition unit 108 from the drive device 1 Collect information indicating the energy consumption by the injection molding machine. The drive device 1 is capable of this information from the control device 80 capture.

Als die Zykluszeit/Taktzeit D5 kann die Bestimmungsdatenerfassungseinheit 108 von der Antriebsvorrichtung 1 Informationen, welche eine Zykluszeit der Spritzgussmaschine anzeigen, erfassen. Die Antriebsvorrichtung 1 ist dazu fähig, diese Informationen von der Steuervorrichtung 80 zu erfassen.As the cycle time / cycle time D5 can the determination data acquisition unit 108 from the drive device 1 Information indicating a cycle time of the injection molding machine, capture. The drive device 1 is capable of this information from the control device 80 capture.

Als die Reaktionszeit D6 kann die Bestimmungsdatenerfassungseinheit 108 von der Antriebsvorrichtung 1 eine Reaktionszeit des Servomotors 50, oder anders gesagt eine Zeit von der Ausgabe eines Befehlswerts, bis die Geschwindigkeit, das Drehmoment oder dergleichen den Befehlswert erreicht, erfassen. Die Reaktionszeit des Servomotors 50 kann durch die Steuervorrichtung 80 erfasst werden. Die Antriebsvorrichtung 1 erfasst diese Informationen von der Steuervorrichtung 80, und die Bestimmungsdatenerfassungseinheit 108 erfasst diese Informationen von der Antriebsvorrichtung 1.As the reaction time D6 can the determination data acquisition unit 108 from the drive device 1 a reaction time of the servomotor 50 , or in other words, a time from the issuance of a command value until the speed, torque or the like reaches the command value. The reaction time of the servomotor 50 can through the control device 80 be recorded. The drive device 1 detects this information from the control device 80 , and the determination data acquiring unit 108 detects this information from the drive device 1 ,

Unter Verwendung der Zustandsvariablen S und der Bestimmungsdaten D erlernt die Lerneinheit 110 Korrelationen zwischen dem analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und dem Zustand der Bearbeitungsmaschine (den Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, den Materialinformationen S6 und den Forminformationen S7), und dem Befehlswert S1. Mit anderen Worten erzeugt die Lerneinheit 110 Modellstrukturen, welche ein Korrelationsverhältnis der Komponenten S1, S2, S3, S4, S5, S6 und S7 der Zustandsvariablen S anzeigen.Using the state variable S and the destination data D learn the lesson 110 Correlations between the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ), and the command value S1 , In other words, the learning unit generates 110 Model structures showing a correlation ratio of the components S1 . S2 . S3 . S4 . S5 . S6 and S7 the state variable S Show.

Betrachtet unter dem Aspekt eines Lernzeitraums in der Lerneinheit 110 sind die in die Lerneinheit 110 eingegebenen Zustandsvariablen S Daten von einem Lernzeitraum vor einem Lernzeitraum, während welchem die Bestimmungsdaten D erfasst worden sind. Während die Vorrichtung zum maschinellen Lernen 100 das Lernen ausführt, werden in der Umgebung (1) die Erfassung des analogen Spannungsbefehlswerts S2, der einen Fehler aufweist, und des Zustands der Bearbeitungsmaschine (der Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, der Materialinformationen S6 und der Forminformationen S7) und des Befehlswerts S1, (2) das Antreiben des Servomotors 50 im Einklang mit dem Befehlswert S1 oder, mit anderen Worten, die Ausführung der Bearbeitung, und (3) die Erfassung der Bestimmungsdaten D wiederholt vorgenommen. Die Bestimmungsdaten D in (3) sind ein Auswertungsergebnis einer Präzision oder einer Qualität eines bearbeiteten Produkts, einer Produktivität, einer Effizienz oder dergleichen in einer auf dem Befehlswert S1 beruhenden Bearbeitung.Considered under the aspect of a learning period in the learning unit 110 they are in the learning unit 110 entered state variables S Data from a learning period before a learning period during which the determination data D have been recorded. While the machine learning device 100 learning takes place in the environment ( 1 ) the acquisition of the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) and the command value S1 , ( 2 ) driving the servomotor 50 in accordance with the command value S1 or, in other words, the execution of the processing, and ( 3 ) the acquisition of the determination data D repeated. The determination data D in ( 3 ) are an evaluation result of precision or quality of a processed product, productivity, efficiency, or the like in one on the command value S1 based editing.

Durch Wiederholen eines solchen Lernzyklus wird die Lerneinheit 110 fähig dazu, ein Merkmal, welches Korrelationen zwischen dem analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und dem Zustand der Bearbeitungsmaschine (den Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, den Materialinformationen S6 und den Forminformationen S7) und dem Befehlswert S1 automatisch zu erkennen. Obwohl die Korrelationen zwischen dem analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und dem Zustand der Bearbeitungsmaschine (den Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, den Materialinformationen S6 und den Forminformationen S7) und dem Befehlswert S1 am Beginn eines Lernalgorithmus im Wesentlichen unbekannt sind, identifiziert die Lerneinheit 110 allmählich ein Merkmal und interpretiert das Korrelationsverhältnis mit fortschreitendem Lernvorgang. Sobald die Korrelationen zwischen dem analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und dem Zustand der Bearbeitungsmaschine (den Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, den Materialinformationen S6 und den Forminformationen S7) und dem Befehlswert S1 bis zu einem einigermaßen zuverlässigen Niveau interpretiert worden sind, wird ein Lernergebnis, das durch die Lerneinheit 110 wiederholt ausgegeben wird, nutzbar zum Ausführen einer Auswahl einer Handlung (Entscheidungsfindung) hinsichtlich der in Bezug auf den gegenwärtigen Zustand auszugebenden Art von Befehlswert S2, oder, anders gesagt, des analogen Spannungsbefehlswerts S2, der einen Fehler aufweist, und des Zustands der Bearbeitungsmaschine (der Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, der Materialinformationen S6 und der Forminformationen S7). Mit anderen Worten wird die Lerneinheit 110 fähig dazu, eine optimale Lösung einer Handlung entsprechend dem gegenwärtigen Zustand auszugeben.By repeating such a learning cycle, the learning unit becomes 110 capable of providing a feature which correlates between the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) and the command value S1 automatically detect. Although the correlations between the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) and the command value S1 Essentially unknown at the beginning of a learning algorithm identifies the learning unit 110 gradually a feature and interprets the correlation ratio as the learning progresses. Once the correlations between the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) and the command value S1 have been interpreted to a reasonably reliable level, will be a learning outcome by the learning unit 110 used repeatedly to carry out a selection of an action (decision making) regarding the type of command value to be issued in relation to the current state S2 , or, in other words, the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ). In other words, the learning unit becomes 110 capable of outputting an optimum solution of an action according to the current state.

Die Zustandsvariablen S sind gebildet aus Daten, die durch Störungen kaum beeinträchtigt werden, und die Bestimmungsdaten D werden einmalig erlangt, indem die Antriebsvorrichtung 1 dazu veranlasst wird, verschiedene Dateninformationen von der Steuervorrichtung 80 zu erfassen. Daher können gemäß der Vorrichtung zum maschinellen Lernen 100 durch Verwendung eines Lernergebnisses von der Lerneinheit 110 ein optimaler Befehlswert S1 in Bezug auf den gegenwärtigen Zustand, oder anders gesagt der analoge Spannungsbefehlswert S2, der einen Fehler aufweist, und der Zustand der Bearbeitungsmaschine (die Achseninformationen S3, die Zykluszeit S4, die Temperatur S5, die Materialinformationen S6 und die Forminformationen S7), ohne die Verwendung von Berechnungen oder Schätzungen automatisch und genau erlangt werden. Mit anderen Worten kann ein optimaler Befehlswert S1 rasch bestimmt werden, indem einfach der gegenwärtige Zustand, oder anders gesagt der analoge Spannungsbefehlswert S2, der einen Fehler aufweist, und der Zustand der Bearbeitungsmaschine (die Achseninformationen S3, die Zykluszeit S4, die Temperatur S5, die Materialinformationen S6 und die Forminformationen S7) einbezogen werden. Daher kann eine geeignete Umwandlung eines externen Befehls in einen Befehl effizient durchgeführt werden.The state variables S are formed of data hardly affected by noise and the determination data D are obtained once by the drive device 1 is caused to different data information from the control device 80 capture. Therefore, according to the machine learning apparatus 100 by using a learning outcome from the lesson 110 an optimal command value S1 in Reference to the current state, or in other words, the analog voltage command value S2 that has an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) are automatically and accurately obtained without the use of calculations or estimates. In other words, an optimal command value S1 be quickly determined simply by the current state, or in other words, the analog voltage command value S2 that has an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) be included. Therefore, a suitable conversion of an external command into a command can be performed efficiently.

Als eine Modifikation der Vorrichtung zum maschinellen Lernen 100 kann die Lerneinheit 110 unter Verwendung der Zustandsvariablen S und der Bestimmungsdaten D erlangt für jede einer Mehrzahl von Bearbeitungsmaschinen desselben Typs, welche dieselbe Operation ausführen, angemessene Befehlswerte in den Bearbeitungsmaschinen erlernen. Gemäß dieser Konfiguration können Geschwindigkeit und Zuverlässigkeit des Lernens verbessert werden, da eine Menge von Datensätzen, welche die Zustandsvariablen S und die Bestimmungsdaten D, die in einer bestimmten Zeitperiode erlangt worden sind, aufweisen, erhöht und Datensätze mit einer größeren Vielfalt eingegeben werden können.As a modification of the machine learning apparatus 100 can the lesson 110 using the state variables S and the determination data D obtains appropriate command values in the processing machines for each of a plurality of processing machines of the same type performing the same operation. According to this configuration, speed and reliability of learning can be improved because a set of data sets representing the state variables S and the determination data D that have been obtained, exhibited, increased, and records entered with greater variety over a particular period of time.

Es ist anzumerken, dass der durch die Lerneinheit 110 ausgeführte Lernalgorithmus nicht speziell eingeschränkt ist, und Lernalgorithmen, die als maschinelles Lernen bekannt sind, übernommen werden können. 3 zeigt einen Aspekt der Antriebsvorrichtung 1, die in 1 gezeigt ist, in welcher die Antriebsvorrichtung 1 dafür ausgelegt ist, die Lerneinheit zu umfassen, welche Verstärkungslernen als ein Beispiel für den Lernalgorithmus ausführt. Verstärkungslernen ist ein Verfahren umfassend das Beobachten eines gegenwärtigen Zustands (mit anderen Worten, einer Eingabe) einer Umgebung, in welcher ein Lernobjekt vorhanden ist, und Ausführen einer vorgeschriebenen Handlung (mit anderen Worten, einer Ausgabe) in dem gegenwärtigen Zustand, Wiederholen, durch Versuch- und-Irrtum, von Zyklen, welche eine Art von Auswirkung für die Handlung bereitstellen, und Erlernen einer Strategie, welche eine Gesamtauswirkung (in der vorliegenden Ausführungsform, eine Ausgabe eines Befehlswerts) als eine optimale Lösung maximiert.It should be noted that through the learning unit 110 is not specifically limited, and learning algorithms known as machine learning can be adopted. 3 shows an aspect of the drive device 1 , in the 1 is shown, in which the drive device 1 is designed to include the learning unit, which performs reinforcement learning as an example of the learning algorithm. Gain learning is a method comprising observing a present state (in other words, an input) of an environment in which a learning object exists, and performing a prescribed action (in other words, an output) in the present state, repeating, by trial and error, of cycles that provide some sort of impact to the action, and learning a strategy that maximizes an overall impact (in the present embodiment, an output of a command value) as an optimal solution.

In der Vorrichtung zum maschinellen Lernen 100, welche die Antriebsvorrichtung 1, die in 3 gezeigt ist, aufweist, weist die Lerneinheit 110 eine Auswirkungsberechnungseinheit 112 und eine Wertfunktionsaktualisierungseinheit 114 auf.In the machine learning device 100 which the drive device 1 , in the 3 is shown, instructs the learning unit 110 an impact calculation unit 112 and a value-function updating unit 114 on.

Die Auswirkungsberechnungseinheit 112 erlangt eine Auswirkung R in Zusammenhang mit einem Auswertungsergebnis (welches den Bestimmungsdaten D entspricht, die in einem Lernzeitraum nach jenem, in welchem die Zustandsvariablen S erfasst worden sind) einer Präzision und einer Qualität eines bearbeiteten Produkts, einer Produktivität, einer Effizienz oder dergleichen, wenn die Bearbeitungsbedingungen beruhend auf den Zustandsvariablen S eingestellt werden.The impact calculation unit 112 obtains an impact R in connection with an evaluation result (which the determination data D in a learning period after that in which the state variables S have been detected) of a precision and a quality of a processed product, a productivity, an efficiency, or the like, when the machining conditions based on the state variables S be set.

Die Wertfunktionsaktualisierungseinheit 114 aktualisiert eine Funktion Q, die einen Wert eines Befehlswerts darstellt, unter Verwendung der Auswirkung R. Indem die Wertfunktionsaktualisierungseinheit 114 die Funktion Q wiederholt aktualisiert, erlernt die Lerneinheit 110 Korrelationen zwischen dem analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und dem Zustand der Bearbeitungsmaschine (den Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, den Materialinformationen S6 und den Forminformationen S7) und dem Befehlswert S1.The value-function update unit 114 updates a function Q representing a value of a command value using the impact R , By the value function updating unit 114 the function Q repeatedly updated, learns the lesson 110 Correlations between the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) and the command value S1 ,

In der Folge wird ein Beispiel eines Algorithmus für durch die Lerneinheit 110 ausgeführtes Verstärkungslernen beschrieben. Der Algorithmus im Einklang mit diesem Beispiel ist bekannt als Q-Lernen, bei dem es sich um ein Verfahren handelt, welches einen Zustand s eines Aktionsagenten und eine Aktion a, die der Aktionsagent in dem Zustand s als unabhängige Variablen zum Erlernen einer Funktion Q (s, a) auswählen kann, die einen Wert der Aktion a, wenn diese im Zustand s ausgewählt wird, darstellt, verwendet. Das Auswählen der Aktion a, welche die Wertfunktion Q im Zustand s maximiert, stellt eine optimale Lösung bereit. Durch das Starten von Q-Lernen in einem Zustand, in welchem eine Korrelation zwischen dem Zustand s und der Aktion a unbekannt ist, und Wiederholen von Versuch-und-Irrtum durch Auswählen verschiedener Aktionen a in einem beliebigen Zustand s wird die Wertfunktion Q wiederholt aktualisiert und der optimalen Lösung angenähert. In diesem Fall kann die Wertfunktion Q durch Übernehmen einer Konfiguration bei welcher, wenn sich die Umgebung (mit anderen Worten, der Zustand s) als ein Ergebnis des Auswählens der Aktion a im Zustand s verändert, eine Auswirkung (mit anderen Worten, eine Gewichtung der Aktion a) r im Einklang mit der Änderung bereitgestellt wird, und Leiten des Lernens, sodass die Aktion a ausgewählt wird, für welche eine höhere Auswirkung r bereitgestellt wird, innerhalb eines relativ kurzen Zeitraums an die optimale Lösung angenähert werden.The following is an example of an algorithm for the lesson 110 described gain learning described. The algorithm in accordance with this example is known as Q-learning, which is a method involving a state s of an action agent and an action a that the action agent in the state s as independent variables to learn a function Q ( s, a) which represents a value of the action a when selected in the state s. Selecting action a, which maximizes value function Q in state s, provides an optimal solution. By starting Q-learning in a state in which a correlation between the state s and the action a is unknown, and repeating trial-and-error by selecting various actions a in any state s, the value function Q is repeatedly updated and the optimal solution approximated. In this case, by adopting a configuration in which the environment (in other words, the state s) changes as a result of selecting the action a in the state s, the value function Q may have an effect (in other words, a weighting of the Action a) r is provided in accordance with the change, and guiding the learning so that the action a is selected for which a higher impact r is provided will be approximated to the optimal solution within a relatively short period of time.

Eine Aktualisierungsformel der Wertfunktion Q kann im Allgemeinen durch den unten wiedergegebenen Ausdruck 1 dargestellt werden. Im Ausdruck 1, kennzeichnen st und at einen Zustand beziehungsweise eine Aktion an einem Zeitpunkt t, und der Zustand verändert sich aufgrund der Aktion at zu St+1. rt+1 kennzeichnet eine Auswirkung, die erlangt wird, wenn sich der Zustand von st zu st+1 verändert. Der Ausdruck maxQ kennzeichnet Q, wenn eine Aktion a ausgeführt wird, welche zum Zeitpunkt t+1 einen Maximalwert Q erzeugt (bzw. von welcher in Betracht gezogen wird, sie würde diesen erzeugen). α und γ kennzeichnen einen Lernkoeffizienten beziehungsweise einen Diskontfaktor, und werden beliebig auf Werte von 0 < α ≤ 1 und 0 < γ ≤ 1 gesetzt. Q ( s t , a t ) Q ( s t , a t ) + α ( r t + 1 + γ   m a x a   Q ( s t + 1, a ) Q ( s t , a t ) )

Figure DE102019106729A1_0001
An update formula of the value function Q can generally be determined by the below reproduced Expression 1 are shown. In expression 1, st and a t denote a state and an action at a time t, respectively, and the state changes to S t + 1 due to the action a t . r t + 1 denotes an effect obtained when the state changes from s t to s t + 1 . The expression maxQ denotes Q when an action a is executed which generates (or is considered to generate) a maximum value Q at time t + 1 . α and γ denote a learning coefficient and a discount factor, respectively, and are arbitrarily set to values of 0 <α ≦ 1 and 0 <γ ≦ 1. Q ( s t . a t ) Q ( s t . a t ) + α ( r t + 1 + γ m a x a Q ( s t + 1, a ) - Q ( s t . a t ) )
Figure DE102019106729A1_0001

Wenn die Lerneinheit 110 Q-Lernen ausführt, entsprechen die Zustandsvariablen S, die durch die Zustandsbeobachtungseinheit 106 beobachtet werden, und die Bestimmungsdaten D, die durch die Bestimmungsdatenerfassungseinheit 108 erfasst werden, dem Zustand s der Aktualisierungsformel, die Aktion, wie der Befehlswert S1 in Bezug auf den gegenwärtigen Zustand zu bestimmen ist, oder anders gesagt der analoge Spannungsbefehlswert S2, der einen Fehler aufweist, und der Zustand der Bearbeitungsmaschinen (die Achseninformationen S3, die Zykluszeit S4, die Temperatur S5, die Materialinformationen S6 und die Forminformationen S7) entsprechen der Aktion a der Aktualisierungsformel, und die Auswirkung R, die durch die Auswirkungsberechnungseinheit 112 erlangt wird, entspricht der Auswirkung r der Aktualisierungsformel. Daher aktualisiert die Wertfunktionsaktualisierungseinheit 114 wiederholt die Funktion Q, welche einen Wert des Befehlswerts in Bezug auf den gegenwärtigen Zustand darstellt, durch Q-Lernen unter Verwendung der Auswirkung R.When the lesson 110 Q-learning, the state variables correspond S by the state observation unit 106 be observed, and the determination data D generated by the determination data acquisition unit 108 the state s of the update formula, the action, such as the command value S1 with respect to the current state, or in other words, the analog voltage command value S2 that has an error, and the condition of the processing machines (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) correspond to action a of the update formula, and the impact R generated by the impact calculation unit 112 is obtained corresponds to the impact r of the update formula. Therefore, the value-function updating unit updates 114 repeats the function Q which represents a value of the command value with respect to the current state by Q learning using the effect R ,

Wenn der Servomotor zum Beispiel beruhend auf dem bestimmten Befehlswert S1 angetrieben wird und die Bearbeitung ausgeführt wird und ein Auswertungsergebnis einer Präzision oder einer Qualität eines bearbeiteten Produkts, einer Produktivität, einer Effizienz oder dergleichen als „adäquat“ bestimmt wird, kann die Auswirkungsberechnungseinheit 112 die Auswirkung R auf einen positiven Wert setzen. Wenn andererseits ein Auswertungsergebnis einer Präzision oder einer Qualität eines bearbeiteten Produkts, einer Produktivität, einer Effizienz oder dergleichen als „inadäquat“ bestimmt wird, kann die Auswirkungsberechnungseinheit 112 die Auswirkung R auf einen negativen Wert setzen. Absolutwerte positiver oder negativer Auswirkungen R können dieselben sein oder sich voneinander unterscheiden.For example, when the servomotor is based on the determined command value S1 and the processing is performed and an evaluation result of a precision or a quality of a processed product, a productivity, an efficiency or the like is determined to be "adequate", the impact calculation unit 112 The effect R set to a positive value. On the other hand, when an evaluation result of precision or quality of a processed product, productivity, efficiency or the like is determined to be "inadequate", the impact calculation unit may 112 The effect R set to a negative value. Absolute values of positive or negative effects R may be the same or different.

Fälle, in welchen das Auswertungsergebnis einer Präzision oder einer Qualität eines bearbeiteten Produkts, einer Produktivität, einer Effizienz oder dergleichen als „adäquat“ bestimmt wird, können zum Beispiel umfassen: wenn die Präzision D1 (ein Fehler zwischen Dimensionen und Auslegungswerten des bearbeiteten Produkts oder dergleichen) kleiner ist, als ein Schwellenwert; wenn die Vibration D2 kleiner ist, als ein Schwellenwert; wenn die Last D3 kleiner ist, als ein Schwellenwert; wenn der Energieverbrauch D4 kleiner ist, als ein Schwellenwert; wenn die Zykluszeit D5 kürzer ist, als ein Schwellenwert; und wenn die Reaktionszeit D6 kürzer ist, als ein Schwellenwert. Fälle, in welchen das Auswertungsergebnis einer Präzision oder einer Qualität eines bearbeiteten Produkts, einer Produktivität, einer Effizienz oder dergleichen als „inadäquat“ bestimmt wird, können zum Beispiel Fälle umfassen, bei welchen D1 bis D6 gleich den vorgeschriebenen Schwellenwerten sind oder diese überschreiten. Alternativ dazu kann die Auswirkungsberechnungseinheit 112 die Korrektheit bestimmen, indem sie eine Mehrzahl von Werten kombiniert, die in den Bestimmungsdaten D enthalten sind.Cases in which the evaluation result of a precision or a quality of a processed product, a productivity, an efficiency or the like is determined to be "adequate" may include, for example: when the precision D1 (an error between dimensions and design values of the processed product or the like) is smaller than a threshold value; if the vibration D2 is less than a threshold; when the load D3 is less than a threshold; when the energy consumption D4 is less than a threshold; if the cycle time D5 is shorter than a threshold; and when the reaction time D6 is shorter than a threshold. Cases in which the evaluation result of precision or quality of a processed product, productivity, efficiency or the like is determined to be "inadequate" may include, for example, cases in which D1 to D6 are equal to or exceed the prescribed thresholds. Alternatively, the impact calculation unit 112 determine the correctness by combining a plurality of values included in the determination data D are included.

Die Auswirkungsberechnungseinheit 112 kann ein Auswertungsergebnis einer Präzision oder einer Qualität eines bearbeiteten Produkts, einer Produktivität, einer Effizienz oder dergleichen bestimmen, indem sie einen Wert (einen Änderungsbetrag, eine Änderungsrate oder dergleichen innerhalb eines vorgeschriebenen Zeitraums oder eines vorgeschriebenen Zyklus), der eine Änderung im Laufe der Zeit der oben beschriebenen D1 bis D6 angibt, verwendet. Zum Beispiel kann eine Bestimmung von „adäquat“ gemacht werden, wenn der Änderungsbetrag der oben beschriebenen D1 bis D6 0 ist oder einen negativen Wert annimmt, während eine Bestimmung von „inadäquat“ gemacht werden kann, wenn der Änderungsbetrag einen positiven Wert annimmt.The impact calculation unit 112 may determine an evaluation result of a precision or a quality of a processed product, a productivity, an efficiency, or the like, by a value (a change amount, a change rate or the like within a prescribed period or a prescribed cycle), a change with time the one described above D1 to D6 indicates used. For example, a determination of "adequate" may be made if the amount of change of those described above D1 to D6 0 or takes a negative value, while a determination of "inadequate" can be made if the amount of change takes a positive value.

Ein Auswertungsergebnis einer Präzision oder einer Qualität eines bearbeiteten Produkts, einer Produktivität, einer Effizienz oder dergleichen kann nur auf zwei Werte gesetzt werden, nämlich „adäquat“ und „inadäquat“, kann jedoch auch auf eine Mehrzahl von Stufen gesetzt werden. Zum Beispiel kann die Auswirkungsberechnungseinheit 112 die Auswirkung R derart reduzieren, dass die Auswirkung R umso kleiner ist, je größer ein Unterschied auf einer positiven Seite zwischen einem der oben beschriebenen Werte von D1 bis D6 und einem vorgeschriebenen Schwellenwert ist, und die Auswirkung R derart erhöhen, dass die Auswirkung R umso größer ist, je größer der Unterschied auf einer negativen Seite ist. Zum Beispiel kann die Auswirkungsberechnungseinheit 112 die Auswirkung R derart reduzieren, dass die Auswirkung R umso kleiner ist, je größer ein Unterschied auf einer positiven Seite zwischen einem Änderungsbetrag oder einer Änderungsrate der oben beschriebenen Werte von D1 bis D6 und einem vorgeschriebenen Schwellenwert ist, und die Auswirkung R derart erhöhen, dass die Auswirkung R umso größer ist, je größer der Unterschied auf einer negativen Seite ist.An evaluation result of a precision or a quality of a processed product, a productivity, an efficiency, or the like can only be set to two values, namely, "adequate" and "inadequate," but may be set to a plurality of levels. For example, the impact calculation unit 112 The effect R so reduce that impact R the smaller the difference on a positive side between one of the values of D1 to D6 and a prescribed threshold, and the impact R so increase that impact R the larger the difference on a negative side, the greater the value. For example, the impact calculation unit 112 The effect R so reduce that impact R the smaller the difference is on a positive side between an amount of change or a rate of change of the above-described values of D1 to D6 and a prescribed threshold, and the impact R so increase that impact R the larger the difference on a negative side, the greater the value.

Die Wertfunktionsaktualisierungseinheit 114 kann eine Aktionswerttabelle aufweisen, in welcher die Zustandsvariablen S, die Bestimmungsdaten D und die Auswirkung R in Zusammenhang mit einem Aktionswert (zum Beispiel einem numerischen Wert), dargestellt durch die Funktion Q, organisiert sind. In diesem Fall kann ein Vorgang der Aktualisierung der Funktion Q durch die Wertfunktionsaktualisierungseinheit 114 gleichbedeutend mit einem Vorgang der Aktualisierung der Aktionswerttabelle durch die Wertfunktionsaktualisierungseinheit 114 sein. Da die Korrelationen zwischen dem analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und dem Zustand der Bearbeitungsmaschine (den Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, den Materialinformationen S6 und den Forminformationen S7) und dem Befehlswert S1 am Beginn des Q-Lernens unbekannt sind, sind in der Aktionswerttabelle verschiedene Zustandsvariablen S, Bestimmungsdaten D und Auswirkungen R hinsichtlich ihres Zusammenhangs mit zufällig bestimmten Werten (der Funktion Q) des Aktionswerts vorbereitet. Die Auswirkungsberechnungseinheit 112 ist dazu fähig, eine entsprechende Auswirkung R unmittelbar zu berechnen, sobald die Bestimmungsdaten D bekannt sind, wobei in diesem Fall der berechnete Wert R in die Aktionswerttabelle geschrieben wird.The value-function update unit 114 may have an action value table in which the state variables S , the determination data D and the impact R associated with an action value (for example, a numerical value) represented by the function Q , are organized. In this case, a process of updating the function Q by the value function updating unit 114 synonymous with a process of updating the action value table by the value function updating unit 114 be. Because the correlations between the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) and the command value S1 are unknown at the beginning of Q-learning, there are various state variables in the action value table S , Determination data D and effects R in terms of their correlation with randomly determined values (the function Q ) of the action value. The impact calculation unit 112 is capable of doing so R to calculate immediately as soon as the determination data D are known, in which case the calculated value R is written to the action value table.

Wenn das Q-Lernen unter Verwendung einer Auswirkung R im Einklang mit einem Auswertungsergebnis einer Präzision oder einer Qualität eines bearbeiteten Produkts, einer Produktivität, einer Effizienz oder dergleichen fortschreitet, wird das Lernen in eine Richtung geführt, in welcher eine Aktion ausgewählt wird, die eine höhere Auswirkung R aufweist, und die Aktionswerttabelle aktualisiert wird, indem ein Wert (die Funktion Q) eines Aktionswerts in Bezug auf eine im gegenwärtigen Zustand ausgeführte Aktion im Einklang mit einem Zustand (mit anderen Worten, den Zustandsvariablen S und den Bestimmungsdaten D) der Umgebung, welche sich als ein Ergebnis des Ausführens der ausgewählten Aktion im gegenwärtigen Zustand ändert, überschrieben wird. Durch Wiederholen dieser Aktualisierung wird der Wert (die Funktion Q) des in der Aktionswerttabelle angezeigten Aktionswerts derart überschrieben, dass der Wert umso größer ist, je korrekter die Aktion ist. Auf diese Weise wird das zuvor unbekannte Korrelationsverhältnis zwischen dem gegenwärtigen Zustand der Umgebung oder, mit anderen Worten, dem analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und dem Zustand der Bearbeitungsmaschine (den Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, den Materialinformationen S6 und den Forminformationen S7) und dem Befehlswert S1 allmählich offensichtlich. Mit anderen Worten werden durch Aktualisieren der Aktionswerttabelle die Korrelationen zwischen dem analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und dem Zustand der Bearbeitungsmaschine (den Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, den Materialinformationen S6 und den Forminformationen S7) und dem Befehlswert S1 allmählich einer optimalen Lösung angenähert.When Q learning using an impact R In accordance with an evaluation result of a precision or a quality of a processed product, a productivity, an efficiency, or the like, the learning is guided in a direction in which an action having a higher effect is selected R and the action value table is updated by adding a value (the function Q ) of an action value with respect to an action performed in the current state in accordance with a state (in other words, the state variables S and the determination data D ) of the environment which changes as a result of executing the selected action in the present state is overwritten. By repeating this update, the value (the function Q ) of the action value displayed in the action value table is overwritten such that the more correct the action is, the greater the value. In this way, the previously unknown correlation ratio between the current state of the environment or, in other words, the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) and the command value S1 gradually becoming apparent. In other words, by updating the action value table, the correlations between the analog voltage command value become S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) and the command value S1 gradually approaching an optimal solution.

Bezugnehmend auf 4 wird ein Ablauf des Q-Lernens (mit anderen Worten ein Aspekt eines maschinellen Lernverfahrens), das durch die Lerneinheit 110 ausgeführt wird, näher beschrieben.Referring to 4 becomes a course of Q learning (in other words, an aspect of a machine learning method) that is executed by the learning unit 110 is executed, described in more detail.

Schritt SA01: Die Wertfunktionsaktualisierungseinheit 114 bezieht sich an diesem Zeitpunkt auf die Aktionswerttabelle, um den Befehlswert S1 als eine Aktion, die im gegenwärtigen Zustand, der durch die Zustandsvariablen S beobachtet durch die Zustandsbeobachtungseinheit 106 angezeigt ist, auszuführen ist, zufällig auszuwählen.step SA01 : The value function update unit 114 at this point in time refers to the action value table, to the command value S1 as an action, in the present state, by the state variable S observed by the state observation unit 106 is displayed, execute is to select at random.

Schritt SA02: Die Wertfunktionsaktualisierungseinheit 114 lädt die Zustandsvariablen S des durch die Zustandsbeobachtungseinheit 106 beobachteten gegenwärtigen Zustands.step SA02 : The value function update unit 114 loads the state variables S by the state observation unit 106 observed present condition.

Schritt SA03: Die Wertfunktionsaktualisierungseinheit 114 lädt die durch die Bestimmungsdatenerfassungseinheit 108 erfassten Bestimmungsdaten D des gegenwärtigen Zustands.step SA03 : The value function update unit 114 loads the through the determination data acquisition unit 108 detected determination data D of the current state.

Schritt SA04: Die Wertfunktionsaktualisierungseinheit 114 bestimmt beruhend auf den Bestimmungsdaten D, ob der Befehlswert S1 angemessen ist, oder nicht. Wenn der Befehlswert S1 angemessen ist, erfolgt ein Übergang zu Schritt SA05. Wenn der Befehlswert S1 unangemessen ist, erfolgt ein Übergang zu Schritt SA07.step SA04 : The value function update unit 114 determined based on the determination data D whether the command value S1 is appropriate or not. If the command value S1 is appropriate, a transition is made to step SA05 , If the command value S1 is inappropriate, a transition is made to step SA07 ,

Schritt SA05: Die Wertfunktionsaktualisierungseinheit 114 wendet eine positive Auswirkung R erlangt durch die Auswirkungsberechnungseinheit 112 auf eine Aktualisierungsformel der Funktion Q an.step SA05 : The value function update unit 114 applies a positive impact R obtained by the impact calculation unit 112 to an update formula of the function Q at.

Schritt SA06: Die Wertfunktionsaktualisierungseinheit 114 aktualisiert die Aktionswerttabelle unter Verwendung der Zustandsvariablen S und der Bestimmungsdaten D im gegenwärtigen Zustand, der Auswirkung R und des Werts des Aktionswerts (der Funktion Q nach der Aktualisierung).step SA06 : The value function update unit 114 updates the action value table using the state variables S and the determination data D in the present state, the impact R and the value of the action value (the function Q after the update).

Schritt SA07: Die Wertfunktionsaktualisierungseinheit 114 wendet eine negative Auswirkung R erlangt durch die Auswirkungsberechnungseinheit 112 auf eine Aktualisierungsformel der Funktion Q an.step SA07 : The value function update unit 114 applies a negative impact R obtained by the impact calculation unit 112 to an update formula of the function Q at.

Die Lerneinheit 110 aktualisiert wiederholt die Aktionswerttabelle durch Wiederholen der Schritte SA01 bis SA07, und führt das Lernen fort.The learning unit 110 updates the action value table repeatedly by repeating the steps SA01 to SA07 , and continues learning.

Es ist anzumerken, dass der Vorgang des Erlangens der Auswirkung R und der Aktualisierungsvorgang der Wertfunktion in den Schritten SA04 bis SA07 in Bezug auf jede der Dateninformationen, welche die Bestimmungsdaten D aufweisen, ausgeführt werden. Zum Beispiel ist 9 ein Ablaufdiagramm in einem Fall, in welchem die Reaktionszeit D6 und der Energieverbrauch D4 als zwei Einzelteile der Bestimmungsdaten D verwendet werden. It should be noted that the process of obtaining the impact R and the update operation of the value function in the steps SA04 to SA07 with respect to each of the data information containing the determination data D have executed. For example 9 a flowchart in a case in which the reaction time D6 and the energy consumption D4 as two items of destination data D are used.

Schritt SB01: Die Wertfunktionsaktualisierungseinheit 114 bezieht sich an diesem Zeitpunkt auf die Aktionswerttabelle, um den Befehlswert S1 als eine Aktion, die im gegenwärtigen Zustand, der durch die Zustandsvariablen S beobachtet durch die Zustandsbeobachtungseinheit 106 angezeigt ist, auszuführen ist, zufällig auszuwählen.step SB01 : The value function update unit 114 at this point in time refers to the action value table, to the command value S1 as an action, in the present state, by the state variables S observed by the state observation unit 106 is displayed, execute is to select at random.

Schritt SB02: Die Wertfunktionsaktualisierungseinheit 114 lädt die Zustandsvariablen S des durch die Zustandsbeobachtungseinheit 106 beobachteten gegenwärtigen Zustands.step SB02 : The value function update unit 114 loads the state variables S by the state observation unit 106 observed present condition.

Schritt SB03: Die Wertfunktionsaktualisierungseinheit 114 lädt die durch die Bestimmungsdatenerfassungseinheit 108 erfassten Bestimmungsdaten D des gegenwärtigen Zustands.step SB03 : The value function update unit 114 loads the through the determination data acquisition unit 108 recorded determination data D of the current state.

Schritt SB04: Die Wertfunktionsaktualisierungseinheit 114 bestimmt beruhend auf der Reaktionszeit D6 in den Bestimmungsdaten D, ob der Befehlswert S1 angemessen ist, oder nicht. Wenn der Befehlswert S1 angemessen ist, erfolgt ein Übergang zu Schritt SB05. Wenn der Befehlswert S1 unangemessen ist, erfolgt ein Übergang zu Schritt SB06.step SB04 : The value function update unit 114 determined based on the reaction time D6 in the determination data D whether the command value S1 is appropriate or not. If the command value S1 is appropriate, a transition is made to step SB05 , If the command value S1 is inappropriate, a transition is made to step SB06 ,

Schritt SB05: Die Wertfunktionsaktualisierungseinheit 114 wendet eine positive Auswirkung R1 erlangt durch die Auswirkungsberechnungseinheit 112 auf eine Aktualisierungsformel der Funktion Q an.step SB05 : The value function update unit 114 applies a positive impact R1 obtained by the impact calculation unit 112 to an update formula of the function Q at.

Schritt SB06: Die Wertfunktionsaktualisierungseinheit 114 wendet eine negative Auswirkung R1 erlangt durch die Auswirkungsberechnungseinheit 112 auf eine Aktualisierungsformel der Funktion Q an.step SB06 : The value function update unit 114 applies a negative impact R1 obtained by the impact calculation unit 112 to an update formula of the function Q at.

Schritt SB07: Die Wertfunktionsaktualisierungseinheit 114 bestimmt beruhend auf dem Energieverbrauch D4 in den Bestimmungsdaten D, ob der Befehlswert S1 angemessen ist, oder nicht. Wenn der Befehlswert S1 angemessen ist, erfolgt ein Übergang zu Schritt SB08. Wenn der Befehlswert S1 unangemessen ist, erfolgt ein Übergang zu Schritt SB09.step SB07 : The value function update unit 114 determined based on the energy consumption D4 in the determination data D whether the command value S1 is appropriate or not. If the command value S1 is appropriate, a transition is made to step SB08 , If the command value S1 is inappropriate, a transition is made to step SB09 ,

Schritt SB08: Die Wertfunktionsaktualisierungseinheit 114 wendet eine positive Auswirkung R2 erlangt durch die Auswirkungsberechnungseinheit 112 auf eine Aktualisierungsformel der Funktion Q an.step SB08 : The value function update unit 114 applies a positive impact R2 obtained by the impact calculation unit 112 to an update formula of the function Q at.

Schritt SB09: Die Wertfunktionsaktualisierungseinheit 114 wendet eine negative Auswirkung R2 erlangt durch die Auswirkungsberechnungseinheit 112 auf eine Aktualisierungsformel der Funktion Q an.step SB09 : The value function update unit 114 applies a negative impact R2 obtained by the impact calculation unit 112 to an update formula of the function Q at.

Schritt SB10: Die Wertfunktionsaktualisierungseinheit 114 aktualisiert die Aktionswerttabelle unter Verwendung der Zustandsvariablen S und der einzelnen Bestimmungsdaten D4 und D6 im gegenwärtigen Zustand, der Auswirkungen R1 und R2 und des Werts des Aktionswerts (der Funktion Q nach der Aktualisierung).step SB10 : The value function update unit 114 updates the action value table using the state variables S and the individual determination data D4 and D6 in the present state, the effects R1 and R2 and the value of the action value (the function Q after the update).

In der Folge wird ein spezielles Beispiel eines Lernprozesses ausgeführt im Einklang mit dem in 9 gezeigten Ablauf beschrieben.As a result, a specific example of a learning process is performed in accordance with the 9 described sequence described.

Beispiel 1example 1

  • • In Schritt SB01 wird der folgende Wert als der Befehlswert S1 ausgegeben. Geschwindigkeitsbefehlswert S1:
    • X = Geschwindigkeitsumwandlungswert von 0,021 V
    • In step SB01 becomes the following value as the command value S1 output. Speed command value S1 :
    • X = speed conversion value of 0.021V
  • • In Schritt SB02 werden die folgenden Werte als die Zustandsvariablen S erfasst. Analoger Spannungsbefehlswert S2:
    • 0,021 V (aufweisend einen Fehler von 0,021 V)
    Achseninformationen 3 (Positionsrückmeldung):
    • X = 0,001 mm kontinuierlicher Anstieg
    • Y = 5,000 mm kontinuierlicher Anstieg
    • Z = 10,000 mm kontinuierlicher Anstieg
    Achseninformation 3 (Geschwindigkeitsrückmeldung):
    • X = 0,001 min-1
    • Y = 1,000 min-1
    • Z = 2,000 min-1
    • In step SB02 For example, the following values are detected as the state variables S. Analog voltage command value S2 :
    • 0.021 V (having an error of 0.021 V)
    axis information 3 (Position feedback):
    • X = 0.001 mm continuous increase
    • Y = 5,000 mm continuous increase
    • Z = 10,000 mm continuous increase
    axis information 3 (Speed feedback):
    • X = 0.001 min-1
    • Y = 1,000 rpm
    • Z = 2,000 min-1
  • • In Schritt SB03 werden die folgenden Werte als die Bestimmungsdaten D erfasst. Reaktionszeit D6:
    • 100 ms Anstieg
    Energieverbrauch D4:
    • 1,0 kWh Anstieg
    • In step SB03 The following values are detected as the determination data D. reaction time D6 :
    • 100 ms increase
    power consumption D4 :
    • 1.0 kWh increase
  • • Da sich die Reaktionszeit D6 erhöht hat, wird in Schritt SB04 bestimmt, dass der Befehlswert S1 unangemessen ist.• Because the reaction time D6 has increased in step SB04 determines that the command value S1 is inappropriate.
  • • In Schritt SB06 wird die Auswirkung R reduziert. • In step SB06 the effect R is reduced.
  • • Da sich der Energieverbrauch D4 erhöht hat, wird in Schritt SB07 bestimmt, dass der Befehlswert S1 unangemessen ist.• As the energy consumption D4 has increased in step SB07 determines that the command value S1 is inappropriate.
  • • In Schritt SB09 wird die Auswirkung R reduziert.• In step SB09 becomes the impact R reduced.
  • • In Schritt SB10 wird der Wert Q aktualisiert.• In step SB10 becomes the value Q updated.

Beispiel 2Example 2

  • • In Schritt SB01 wird der folgende Wert als der Befehlswert S1 ausgegeben. Geschwindigkeitsbefehlswert S1:
    • X = Geschwindigkeitsumwandlungswert von 0,000 V
    • In step SB01 becomes the following value as the command value S1 output. Speed command value S1 :
    • X = speed conversion value of 0.000V
  • • In Schritt SB02 werden die folgenden Werte als die Zustandsvariablen S erfasst. Analoger Spannungsbefehlswert S2:
    • 0,021 V (aufweisend einen Fehler von 0,021 V)
    Achseninformation 3 (Positionsrückmeldung):
    • X = 0,000 mm angehaltener Zustand
    • Y = 5,000 mm kontinuierlicher Anstieg
    • Z = 10,000 mm kontinuierlicher Anstieg
    Achseninformation 3 (Geschwindigkeitsrückmeldung):
    • X = 0,000 min-1
    • Y = 1,000 min-1
    • Z = 2,000 min-1
    • In step SB02 For example, the following values are detected as the state variables S. Analog voltage command value S2 :
    • 0.021 V (having an error of 0.021 V)
    axis information 3 (Position feedback):
    • X = 0.000 mm stopped state
    • Y = 5,000 mm continuous increase
    • Z = 10,000 mm continuous increase
    axis information 3 (Speed feedback):
    • X = 0.000 min-1
    • Y = 1,000 rpm
    • Z = 2,000 min-1
  • • In Schritt SB03 werden die folgenden Werte als die Bestimmungsdaten D erfasst. Reaktionszeit D6:
    • 100 ms kürzer
    Energieverbrauch D4:
    • 1,5 kWh Verringerung
    • In step SB03 The following values are detected as the determination data D. reaction time D6 :
    • 100 ms shorter
    power consumption D4 :
    • 1.5 kWh reduction
  • • Da sich die Reaktionszeit D6 verringert hat, wird in Schritt SB04 bestimmt, dass der Befehlswert S1 angemessen ist.• Because the reaction time D6 has decreased in step SB04 determines that the command value S1 is appropriate.
  • • In Schritt SB05 wird die Auswirkung R erhöht.• In step SB05 becomes the impact R elevated.
  • • Da sich der Energieverbrauch D4 verringert hat, wird in Schritt SB07 bestimmt, dass der Befehlswert S1 angemessen ist.• As the energy consumption D4 has decreased in step SB07 determines that the command value S1 is appropriate.
  • • In Schritt SB08 wird die Auswirkung R erhöht.• In step SB08 becomes the impact R elevated.
  • • In Schritt SB10 wird der Wert Q aktualisiert.• In step SB10 becomes the value Q updated.

Beim Voranbringen des Verstärkungslernens kann statt des Q-Lernens zum Beispiel ein neuronales Netzwerk verwendet werden. 5A bildet ein Modell eines Neurons schematisch ab. 5B bildet ein Modell eines durch Kombinieren der in 5A abgebildeten Neuronen konfigurierten dreischichtigen neuronalen Netzwerks ab. Das neuronale Netzwerk kann zum Beispiel durch eine Datenverarbeitungsvorrichtung, eine Speichervorrichtung und dergleichen gebildet werden, die ein Modell eines Neurons simulieren.In advancing gain learning, for example, a neural network may be used instead of Q learning. 5A schematically maps a model of a neuron. 5B Forms a model by combining the in 5A imaged neurons configured three-layer neural network. The neural network may be formed, for example, by a data processing device, a storage device, and the like that simulate a model of a neuron.

Das in 5A gezeigte Neuron gibt ein Ergebnis y in Bezug auf eine Mehrzahl von Eingaben x (in diesem Fall zum Beispiel Eingabe x1 bis Eingabe x3) aus. Jede der Eingaben x1 bis x3 wird multipliziert mit einem Gewicht w (w1 bis w3), das der Eingabe x entspricht. Dementsprechend gibt das Neuron das Ergebnis y dargestellt durch den unten abgebildeten Ausdruck 2 aus. Es ist anzumerken, dass in Ausdruck 2 die Eingabe x, die Ausgabe y und das Gewicht w jeweils Vektoren sind. Darüber hinaus bezeichnet θ eine Verzerrung und fk bezeichnet eine Aktivierungsfunktion. y = f k ( i = 1 n x i w i θ )

Figure DE102019106729A1_0002
This in 5A The neuron shown outputs a result y with respect to a plurality of inputs x (in this case, for example, input x 1 to input x 3 ). Each of the inputs x 1 to x 3 is multiplied by a weight w (w 1 to w 3 ) corresponding to the input x. Accordingly, the neuron outputs the result y represented by the expression 2 shown below. It should be noted that in Expression 2, the input x, the output y, and the weight w are each vectors. In addition, θ denotes a distortion and f k denotes an activation function. y = f k ( Σ i = 1 n x i w i - θ )
Figure DE102019106729A1_0002

Mit dem dreischichtigen neuronalen Netzwerk, das in 5B gezeigt ist, wird eine Mehrzahl von Eingaben x (in diesem Fall zum Beispiel die Eingaben x1 bis x3) von einer linken Seite eingegeben, und Ergebnisse y (in diesem Fall zum Beispiel ein Ergebnis y1 bis y3) werden von einer rechten Seite ausgegeben. Im dargestellten Beispiel werden die jeweiligen Eingaben x1, x2 und x3 mit entsprechenden Gewichten (zusammen dargestellt durch w1) multipliziert, und jede der Eingaben x1, x2 und x3 wird in drei Neuronen N11, N12 und N13 eingegeben.With the three-layered neural network, which in 5B is shown, a plurality of inputs x (in this case, for example, the inputs x1 to x3) are input from a left side, and results y (in this case, for example, a result y1 to y3) are output from a right side. In the example shown, the respective inputs x1, x2 and x3 are multiplied by corresponding weights (together represented by w1), and each of the inputs x1, x2 and x3 becomes three neurons N11 . N12 and N13 entered.

In 5B sind die Ausgaben der jeweiligen Neuronen N11 bis N13 zusammen dargestellt durch z1. z1 kann als ein Merkmalsvektor angesehen werden, der durch Extrahieren einer Merkmalsmenge eines Eingabevektor erlangt wird. Im dargestellten Beispiel werden die jeweiligen Merkmalsvektoren z1 mit entsprechenden Gewichten (zusammen dargestellt durch w2) multipliziert, und jeder der Merkmalsvektoren z1 wird in zwei Neuronen N21 und N22 eingegeben. Die Merkmalsvektoren z1 stellen ein Merkmal zwischen einem Gewicht W1 und einem Gewicht W2 dar.In 5B are the outputs of the respective neurons N11 to N13 represented together by z1. z1 may be regarded as a feature vector obtained by extracting a feature amount of an input vector. In the illustrated example, the respective feature vectors z1 are multiplied by corresponding weights (represented together by w2), and each of the feature vectors z1 becomes two neurons N21 and N22 entered. The feature vectors z1 represent a feature between a weight W1 and a weight W2 represents.

In 5B sind die Ausgaben der jeweiligen Neuronen N21 bis N22 zusammen dargestellt durch z2. z2 kann als ein Merkmalsvektor angesehen werden, der durch Extrahieren einer Merkmalsmenge des Eingabevektors z1 erlangt wird. Im dargestellten Beispiel werden die jeweiligen Merkmalsvektoren z2 mit entsprechenden Gewichten (zusammen dargestellt durch w3) multipliziert, und jeder der Merkmalsvektoren z2 wird in drei Neuronen N31, N32 und N33 eingegeben. Die Merkmalsvektoren z2 stellen ein Merkmal zwischen einem Gewicht W2 und einem Gewicht W3 dar. Schließlich geben die Neuronen N31 bis N33 die entsprechenden Ergebnisse y1 bis y3 aus.In 5B are the outputs of the respective neurons N21 to N22 represented together by z2. z2 may be regarded as a feature vector obtained by extracting a feature amount of the input vector z1. In the illustrated example, the respective feature vectors z2 are multiplied by corresponding weights (together represented by w3), and each of the feature vectors z2 becomes three neurons N31 . N32 and N33 entered. The feature vectors z2 represent a feature between a weight W2 and a weight W3 Finally, the neurons give N31 to N33 the corresponding results y1 to y3.

Es ist anzumerken, dass auch ein Verfahren des sogenannten tiefen Lernens unter Verwendung eines neuronalen Netzwerks aufweisend drei oder mehr Ebenen verwendet werden kann.It should be noted that a method of so-called deep learning using a neural network having three or more levels can also be used.

In der Vorrichtung zum maschinellen Lernen 100 kann dadurch, dass die Lerneinheit 110 eine Berechnung mit einer vielschichtigen Struktur im Einklang mit dem neuronalen Netzwerk unter Verwendung der Zustandsvariables S und der Bestimmungsdaten D als die Eingabe x ausführt, der Befehlswert S1 als das Ergebnis y ausgegeben werden. Darüber hinaus kann in der Vorrichtung zum maschinellen Lernen 100 dadurch, dass die Lerneinheit 110 ein neuronales Netzwerk als eine Wertfunktion im Verstärkungslernen verwendet und eine Berechnung mit einer vielschichtigen Struktur im Einklang mit dem neuronalen Netzwerk unter Verwendung der Zustandsvariablen S und eine Aktion a als die Eingabe x ausführt, ein Wert (das Ergebnis y) der Aktion in dem Zustand ausgegeben werden. Betriebsmodi eines neuronalen Netzwerks umfassen einen Lernmodus und einen Wertvorhersagemodus, und zum Beispiel kann ein Gewicht w erlernt werden unter Verwendung eines Lerndatensatzes im Lernmodus, und eine Wertbestimmung einer Aktion kann im Wertvorhersagemodus unter Verwendung des erlernten Gewichts w ausgeführt werden. Erfassung, Klassifizierung, Rückschluss und dergleichen können ebenfalls im Wertvorhersagemodus ausgeführt werden.In the machine learning device 100 can by doing that the lesson 110 a computation with a multi-layered structure in accordance with the neural network using the state variables S and the determination data D as the input x, the instruction value S1 are output as the result y. In addition, in the machine learning device 100 in that the learning unit 110 Uses a neural network as a value function in gain learning and performs a calculation having a multi-layered structure in accordance with the neural network using the state variable S and an action a as the input x, outputting a value (the result y) of the action in the state become. Operating modes of a neural network include a learning mode and a value prediction mode, and for example, a weight w can be learned using a learning data set in the learning mode, and a value determination of an action can be performed in the value prediction mode using the learned weight w. Acquisition, classification, inference and the like can also be performed in the value prediction mode.

Die oben beschriebene Konfiguration der Antriebsvorrichtung 1 kann als ein maschinelles Lernverfahren (oder Programm) beschrieben werden, welches durch den Prozessor 101 ausgeführt wird. Das maschinelle Lernverfahren ist ein maschinelles Lernverfahren des Erlernens einer angemessenen Umwandlung eines externen Befehls in den Befehlswert S1, das maschinelle Lernverfahren umfassend die durch eine CPU eines Computers ausgeführten Schritte: Beobachten des analogen Spannungsbefehlswerts S2, der einen Fehler aufweist, und des Zustands einer Bearbeitungsmaschine (der Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, der Materialinformationen S6 und der Forminformationen S7) als Zustandsvariablen S, welche einen gegenwärtigen Zustand einer Umgebung darstellen; Erfassen von Bestimmungsdaten D, welche ein Auswertungsergebnis einer Präzision oder einer Qualität eines bearbeiteten Produkts, einer Produktivität, einer Effizienz oder dergleichen der im Einklang mit einem Ausgabebefehlswert S1 ausgeführten Bearbeitung angeben; und Lernen des analogen Spannungsbefehlswerts S2, der einen Fehler aufweist, und des Zustands einer Bearbeitungsmaschine (der Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, der Materialinformationen S6 und der Forminformationen S7) und des Befehlswerts S1 in Verbindung miteinander unter Verwendung der Zustandsvariablen S und der Bestimmungsdaten D.The above-described configuration of the drive device 1 can be described as a machine learning process (or program), which is executed by the processor 101 is performed. The machine learning method is a machine learning method of learning an appropriate conversion of an external instruction into the instruction value S1 , the machine learning method comprising the steps performed by a CPU of a computer: observing the analog voltage command value S2 having an error and the state of a processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) as state variables S representing a current state of an environment; Acquisition of determination data D which is an evaluation result of a precision or a quality of a processed product, a productivity, an efficiency or the like in accordance with an output command value S1 specify executed processing; and learning the analog voltage command value S2 having an error and the state of a processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) and the command value S1 in conjunction with each other using the state variables S and the determination data D ,

6 zeigt eine Antriebsvorrichtung 2 gemäß einer zweiten Ausführungsform der vorliegenden Erfindung. Die Antriebsvorrichtung 2 weist eine Vorrichtung zum maschinellen Lernen 120 und eine Zustandsdatenerfassungseinheit 3 auf. 6 shows a drive device 2 according to a second embodiment of the present invention. The drive device 2 has a machine learning device 120 and a state data acquisition unit 3 on.

Die Zustandsdatenerfassungseinheit 3 erfasst den analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und den Zustand der Bearbeitungsmaschine (die Achseninformationen S3, die Zykluszeit S4, die Temperatur S5, die Materialinformationen S6 und die Forminformationen S7) und den Befehlswert S1 als die Zustandsdaten S0 und stellt der Zustandsbeobachtungseinheit 106 die Zustandsdaten S0 bereit. Zum Beispiel kann die Zustandsdatenerfassungseinheit 3 die Zustandsdaten S0 von der Antriebsvorrichtung 2 erfassen.The state data acquisition unit 3 detects the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) and the command value S1 as the state data S0 and represents the state observation unit 106 the status data S0 ready. For example, the state data acquisition unit 3 the status data S0 from the drive device 2 to capture.

Die Vorrichtung zum maschinellen Lernen 120 weist zusätzlich zur Zustandsbeobachtungseinheit 106, der Bestimmungsdatenerfassungseinheit 108 und der Lerneinheit 110 eine Entscheidungsfindungseinheit 122 auf. Zum Beispiel kann die Entscheidungsfindungseinheit 122 als eine Funktion des Prozessors 101 umgesetzt sein. Alternativ dazu kann die Entscheidungsfindungseinheit 122 zum Beispiel umgesetzt sein, indem der Prozessor 101 dazu veranlasst wird, im ROM 102 gespeicherte Software auszuführen.The machine learning device 120 indicates in addition to the state observation unit 106 , the determination data acquisition unit 108 and the learning unit 110 a decision-making unit 122 on. For example, the decision making unit 122 as a function of the processor 101 be implemented. Alternatively, the decision making unit 122 for example, be implemented by the processor 101 is caused in the ROM 102 to run stored software.

Zusätzlich zu Software (wie zum Beispiel einem Lernalgorithmus) und Hardware (dem Prozessor 101 oder dergleichen) zum eigenständigen Lernen einer angemessenen Umwandlung von einem externen Befehl in den Befehlswert S1, umfasst die Vorrichtung zum maschinellen Lernen 120 Software (wie zum Beispiel einen arithmetischen Algorithmus) und Hardware (den Prozessor 101 oder dergleichen) zum Ausgeben des Befehlswert S1 erlangt beruhend auf einem Lernergebnis als einen Befehl an den Servomotor 50. Alternativ, dazu kann die Vorrichtung zum maschinellen Lernen 120 eine Konfiguration annehmen, in welcher ein gemeinsamer Prozessor sämtliche Software ausführt, einschließlich des Lernalgorithmus und des arithmetischen Algorithmus.In addition to software (such as a learning algorithm) and hardware (the processor 101 or the like) for autonomously learning an appropriate conversion from an external instruction to the instruction value S1 , Includes the machine learning device 120 Software (such as an arithmetic algorithm) and hardware (the processor 101 or the like) for outputting the command value S1 obtains as a command to the servomotor based on a learning result 50 , Alternatively, the machine learning device may be used 120 assume a configuration in which a common processor executes all software, including the learning algorithm and the arithmetic algorithm.

Beruhend auf einem durch die Lerneinheit 110 erlernten Ergebnis erzeugt die Entscheidungsfindungseinheit 122 einen Befehlswert C, der ein Befehlswert S1 entsprechend dem analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und dem Zustand der Bearbeitungsmaschine (den Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, der Materialinformationen S6 und der Forminformationen S7) ist. Sobald die Entscheidungsfindungseinheit 122 den Befehlswert C an den Servomotor 50 ausgibt, wird der Servomotor 50 durch die Antriebsvorrichtung 2 im Einklang mit dem Befehlswert C angetrieben. Ein Zustand der Umgebung ändert sich auf diese Weise.Based on a through the lesson 110 The learned result generates the decision making unit 122 a command value C , which is a command value S1 according to the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , of the temperature S5 , the material information S6 and the shape information S7 ). Once the decision-making unit 122 the command value C to the servomotor 50 outputs, becomes the servomotor 50 through the drive device 2 in accordance with the command value C driven. A state of the environment changes in this way.

Die Zustandsbeobachtungseinheit 106 beobachtet in einem nächsten Lernzeitraum die Zustandsvariablen S, die sich aufgrund der Ausgabe des Befehlswerts C an die Umgebung durch die Entscheidungsfindungseinheit 122 geändert haben. Die Lerneinheit 110 erlernt eine angemessene Umwandlung von einem externen Befehl in den Befehlswert S1, zum Beispiel durch Aktualisieren der Wertfunktion Q (mit anderen Worten, der Aktionswerttabelle) unter Verwendung der geänderten Zustandsvariablen S. Anstatt den Befehlswert S1 aus den durch die Zustandsdatenerfassungseinheit 3 erfassten Zustandsdaten S0 zu erfassen, kann die Zustandsbeobachtungseinheit 106 dadurch den Befehlswert S1 vom RAM 103 der Vorrichtung zum maschinellen Lernen 120 erfassen, wie in der ersten Ausführungsform beschrieben.The state observation unit 106 observes the state variables in a next learning period S that is due to the output of the command value C to the environment through the decision making unit 122 have changed. The learning unit 110 learns an appropriate conversion from an external command to the command value S1 , for example by updating the value function Q (in other words, the action value table) using the changed state variables S , Instead of the command value S1 from the through the state data acquisition unit 3 acquired status data S0 to capture, the state observation unit 106 thereby the command value S1 from the RAM 103 the machine learning device 120 capture as described in the first embodiment.

Darüber hinaus gibt die Entscheidungsfindungseinheit 122 erneut den Befehlswert C, welcher der Befehlswert S1 erlangt beruhend auf dem Lernergebnis ist, an den Servomotor 50 aus. Durch Wiederholen dieses Lernzeitraums führt die Vorrichtung zum maschinellen Lernen 120 das Lernen fort und verbessert allmählich die Zuverlässigkeit des Befehlswerts S1 bestimmt durch die Vorrichtung zum maschinellen Lernen 120 selbst.In addition, there is the decision-making unit 122 again the command value C , which is the command value S1 obtained based on the learning outcome, to the servomotor 50 out. By repeating this learning period, the machine learning device performs 120 learning continues and gradually improves the reliability of the instruction value S1 determined by the machine learning device 120 even.

Die Vorrichtung zum maschinellen Lernen 120 erzeugt eine ähnliche Wirkung wie die Vorrichtung zum maschinellen Lernen 100 gemäß der ersten Ausführungsform. Darüber hinaus ist die Vorrichtung zum maschinellen Lernen 120 dazu imstande, einen Zustand der Umgebung durch eine Ausgabe der Entscheidungsfindungseinheit 122 zu verändern. In der Vorrichtung zum maschinellen Lernen 100 kann sich ein Lernergebnis der Lerneinheit 110 in der Umgebung wiederspiegeln, indem eine externe Vorrichtung Funktionen bereitstellt, welche der Entscheidungsfindungseinheit 122 entsprechen.The machine learning device 120 produces a similar effect as the machine learning device 100 according to the first embodiment. In addition, the machine learning device 120 capable of displaying a state of the environment through an output of the decision making unit 122 to change. In the machine learning device 100 can be a learning outcome of the learning unit 110 in the environment, by providing an external device functions which the decision making unit 122 correspond.

7 zeigt ein System 170 aufweisend eine Mehrzahl von Antriebsvorrichtungen. Das System 170 weist eine Mehrzahl von Antriebsvorrichtungen 160 und Antriebsvorrichtungen 160' auf. Sämtliche der Antriebsvorrichtungen 160 und der Antriebsvorrichtungen 160' sind miteinander durch ein verdrahtetes oder ein drahtloses Netzwerk 172 verbunden. 7 shows a system 170 comprising a plurality of drive devices. The system 170 has a plurality of drive devices 160 and drive devices 160 ' on. All of the drive devices 160 and the drive devices 160 ' are interconnected by a wired or a wireless network 172 connected.

Die Antriebsvorrichtungen 160 und die Antriebsvorrichtungen 160' weisen einen Mechanismus auf, der für Operationen mit demselben Ziel erforderlich ist. Andererseits weisen die Antriebsvorrichtungen 160' die Vorrichtung zum maschinellen Lernen 100 nicht auf, während die Antriebsvorrichtungen 160 die Vorrichtung zum maschinellen Lernen 100 aufweisen.The drive devices 160 and the drive devices 160 ' have a mechanism that is required for operations with the same goal. On the other hand, the drive devices 160 ' the machine learning device 100 not on while the drive devices 160 the machine learning device 100 exhibit.

Die Antriebsvorrichtungen 160 aufweisend die Vorrichtung zum maschinellen Lernen 100 sind dazu fähig, ein Lernergebnis der Lerneinheit 110 zu verwenden, um den Befehlswert S1 entsprechend dem analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und dem Zustand der Bearbeitungsmaschine (den Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, den Materialinformationen S6 und den Forminformationen S7) automatisch und genau zu erlangen, ohne Berechnungen oder Schätzungen zu verwenden. Darüber hinaus kann eine Konfiguration angenommen werden, in welcher die Vorrichtung zum maschinellen Lernen 100 mindestens einer Antriebsvorrichtung 160 eine angemessene Umwandlung eines externen Befehls in den Befehlswert S1, der allen Antriebsvorrichtungen 160 und den Antriebsvorrichtungen 160' gemein ist, beruhend auf den Zustandsvariablen S und den Bestimmungsdaten D, die für jede der Mehrzahl anderer Antriebsvorrichtungen 160 und die Antriebsvorrichtungen 160' erlangt werden, erlernt, und ein Lernergebnis daraus wird von allen Antriebsvorrichtungen 160 und den Antriebsvorrichtungen 160' gemeinsam verwendet. Gemäß dem System 170 kann eine Geschwindigkeit und eine Zuverlässigkeit des Erlernens einer angemessenen Umwandlung von einem externen Befehl zum Befehlswert S1 verbessert werden durch Verwendung von Datensätzen (einschließlich der Zustandsvariablen S und der Bestimmungsdaten D) mit größerer Variation als Eingabe.The drive devices 160 comprising the machine learning device 100 are capable of learning the learning unit 110 to use the command value S1 according to the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) automatically and accurately, without using calculations or estimates. In addition, a configuration may be adopted in which the machine learning apparatus 100 at least one drive device 160 an appropriate conversion of an external command into the command value S1 , the all drive devices 160 and the drive devices 160 ' is common, based on the state variables S and the determination data D for each of the plurality of other drive devices 160 and the drive devices 160 ' be learned, and a learning outcome from it will be from all propulsion devices 160 and the drive devices 160 ' used together. According to the system 170 can provide a speed and reliability of learning an appropriate conversion from an external command to the command value S1 be improved by using datasets (including state variables S and the determination data D ) with greater variation than input.

8 zeigt ein System 170' aufweisend eine Mehrzahl von Antriebsvorrichtungen 160'. Das System 170' weist die Mehrzahl von Antriebsvorrichtungen 160' aufweisend dieselbe mechanische Konfiguration und die Vorrichtung zum maschinellen Lernen 120 (oder die Vorrichtung zum maschinellen Lernen 100) auf. Die Mehrzahl von Antriebsvorrichtungen 160' und die Vorrichtung zum maschinellen Lernen 120 (oder die Vorrichtung zum maschinellen Lernen 100) sind durch ein verdrahtetes oder drahtloses Netzwerk 172 miteinander verbunden. 8th shows a system 170 ' comprising a plurality of drive devices 160 ' , The system 170 ' has the plurality of drive devices 160 ' having the same mechanical configuration and the machine learning device 120 (or the machine learning device 100 ) on. The majority of drive devices 160 ' and the machine learning device 120 (or the machine learning device 100 ) are through a wired or wireless network 172 connected with each other.

Die Vorrichtung zum maschinellen Lernen 120 (oder die Vorrichtung zum maschinellen Lernen 100) erlernt eine angemessene Umwandlung eines externen Befehls in den Befehlswert S1, der allen Antriebsvorrichtungen 160' gemein ist, beruhend auf den Zustandsvariablen S und den Bestimmungsdaten D erlangt für jede der Mehrzahl von Antriebsvorrichtungen 160'. Die Vorrichtung zum maschinellen Lernen 120 (oder die Vorrichtung zum maschinellen Lernen 100) ist dazu fähig, ein Lernergebnis derselben zu verwenden, um den Befehlswert S1 entsprechend dem analogen Spannungsbefehlswert S2, der einen Fehler aufweist, und dem Zustand der Bearbeitungsmaschine (den Achseninformationen S3, der Zykluszeit S4, der Temperatur S5, den Materialinformationen S6 und den Forminformationen S7) automatisch und genau zu erlangen, ohne Berechnungen oder Schätzungen zu verwenden.The machine learning device 120 (or the machine learning device 100 ) learns a proper conversion of an external command into the command value S1 , the all drive devices 160 ' is common, based on the state variables S and the determination data D attained for each of the plurality of drive devices 160 ' , The machine learning device 120 (or the machine learning device 100 ) is capable of using a learning result thereof to the command value S1 according to the analog voltage command value S2 having an error and the state of the processing machine (the axis information S3 , the cycle time S4 , the temperature S5 , the material information S6 and the shape information S7 ) automatically and accurately, without using calculations or estimates.

Die Vorrichtung zum maschinellen Lernen 120 (oder die Vorrichtung zum maschinellen Lernen 100) kann in einem Cloudserver oder dergleichen, der auf einem Netzwerk 172 bereitgestellt ist, vorhanden sein. Gemäß dieser Konfiguration kann unabhängig von einer Position oder einem Zeitraum des Vorhandenseins jeder der Mehrzahl von Antriebsvorrichtungen 160', wann immer es notwendig ist, eine erforderliche Anzahl von Antriebsvorrichtungen 160' mit der Vorrichtung zum maschinellen Lernen 120 (oder der Vorrichtung zum maschinellen Lernen 100) verbunden werden.The machine learning device 120 (or the machine learning device 100 ) can be in a cloud server or the like running on a network 172 is provided exist. According to this configuration, regardless of a position or a period of existence, each of the plurality of driving devices 160 ' whenever necessary, a required number of drive devices 160 ' with the machine learning device 120 (or the machine learning device 100 ) get connected.

Ein Bediener, der an dem System 170 oder dem System 170' arbeitet, kann zu einem geeigneten Zeitpunkt nach dem Start des Lernens durch die Vorrichtung zum maschinellen Lernen 120 (oder 100) bestimmen, ob ein Erfüllungsgrad des Lernens des Befehlswerts S1 (mit anderen Worten die Zuverlässigkeit des Befehlswerts S1, der ausgegeben wird) durch die Vorrichtung zum maschinellen Lernen 120 (oder die Vorrichtung zum maschinellen Lernen 100) ein gefordertes Niveau erreicht hat, oder nicht.An operator working on the system 170 or the system 170 ' can operate at an appropriate time after the start of learning by the machine learning device 120 (or 100 ) determine whether a degree of satisfaction of learning the command value S1 (in other words, the reliability of the command value S1 which is outputted) by the machine learning apparatus 120 (or the machine learning device 100 ) has reached a required level or not.

Während oben Ausführungsformen der vorliegenden Erfindung beschrieben worden sind, versteht sich, dass die vorliegende Erfindung nicht auf die in den oben beschriebenen Ausführungsformen dargelegten Beispiele beschränkt sind, und in verschiedensten Aspekten durch Vornehmen geeigneter Modifikationen derselben umgesetzt werden kann.While embodiments of the present invention have been described above, it should be understood that the present invention is not limited to the examples set forth in the above-described embodiments and can be implemented in various aspects by making appropriate modifications thereof.

Zum Beispiel sind der durch die Vorrichtung zum maschinellen Lernen 100 und die Vorrichtung zum maschinellen Lernen 120 ausgeführte Lernalgorithmus, der durch die Antriebsvorrichtung 1 und die Antriebsvorrichtung 2 ausgeführte Steueralgorithmus und dergleichen nicht auf die oben beschriebenen beschränkt, und verschiedenste Algorithmen können übernommen werden.For example, by the machine learning device 100 and the machine learning device 120 executed learning algorithm by the driving device 1 and the drive device 2 The control algorithm and the like are not limited to those described above, and various algorithms can be adopted.

Während die Antriebsvorrichtung 1 (oder die Antriebsvorrichtung 2) und die Vorrichtung zum maschinellen Lernen 100 (oder die Vorrichtung zum maschinellen Lernen 120) in den oben beschriebenen Ausführungsformen als Vorrichtungen aufweisend verschiedene CPU erklärt sind, kann die Vorrichtung zum maschinellen Lernen 100 (oder die Vorrichtung zum maschinellen Lernen 120) derart konfiguriert sein, dass sie durch die CPU 11, welche die Antriebsvorrichtung 1 (oder die Antriebsvorrichtung 2) aufweist, und ein im ROM 12 gespeichertes Systemprogramm umgesetzt werden kann.While the drive device 1 (or the drive device 2 ) and the machine learning device 100 (or the machine learning device 120 ) in the above-described embodiments are explained as having various CPUs, the machine learning apparatus may be explained 100 (or the machine learning device 120 ) to be configured by the CPU 11 which the drive device 1 (or the drive device 2 ), and one in ROM 12 stored system program can be implemented.

Ferner kann die Vorrichtung zum maschinellen Lernen 100 (oder die Vorrichtung zum maschinellen Lernen 120) in Informationsverarbeitungsumgebungen bezeichnet als Cloud-Datenverarbeitung, Fog-Datenverarbeitung und Edge-Datenverarbeitung und dergleichen umgesetzt werden.Further, the machine learning apparatus 100 (or the machine learning device 120 ) in information processing environments referred to as cloud data processing, fog data processing and edge data processing, and the like.

Während darüber hinaus in den oben beschriebenen Ausführungsformen in erster Linie ein Beispiel, in welchem ein analoger Spannungsbefehlswert als ein externer Befehl eingegeben wird, erklärt ist, ist die vorliegende Erfindung nicht darauf beschränkt, sondern ist auf sämtliche Antriebsvorrichtungen anwendbar, welche eine Vorrichtung gemäß einem aus irgendeiner Art von externem Befehl umgewandelten Befehl antreiben.Moreover, while in the above-described embodiments, an example in which an analog voltage command value is input as an external command is explained in the first place, the present invention is not limited to this, but is applicable to all driving devices comprising a device according to one of drive command converted to any kind of external command.

Während oben Ausführungsformen der vorliegenden Erfindung beschrieben worden sind, versteht sich, dass die vorliegende Erfindung nicht auf die in den oben beschriebenen Ausführungsformen dargelegten Beispiele beschränkt ist, und in anderen Aspekten durch Vornehmen geeigneter Modifikationen derselben umgesetzt werden kann.While embodiments of the present invention have been described above, it should be understood that the present invention is not limited to the examples set forth in the above-described embodiments, and in other aspects, may be practiced by making suitable modifications thereto.

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

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.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • JP 2017102613 [0005, 0006]JP 2017102613 [0005, 0006]

Claims (9)

Antriebsvorrichtung, welche eine Geschwindigkeit oder ein Drehmoment eines Servomotors einer Bearbeitungsmaschine gemäß einem Befehl steuert, welcher durch Umwandeln eines von außen eingegebenen externen Befehls erlangt ist, die Antriebsvorrichtung umfassend eine Vorrichtung zum maschinellen Lernen, welche eine angemessene Umwandlung vom externen Befehl zum Befehl erlernt, wobei die Vorrichtung zum maschinellen Lernen aufweist: eine Zustandsbeobachtungseinheit, welche den externen Befehl, den Befehl und einen Zustand der Bearbeitungsmaschine oder des Servomotors als Zustandsvariablen beobachtet, welche einen gegenwärtigen Zustand einer Umgebung darstellen; eine Bestimmungsdatenerfassungseinheit, welche Bestimmungsdaten, die ein Auswertungsergebnis der Bearbeitung durch die Bearbeitungsmaschine anzeigen, erfasst; und eine Lerneinheit, welche unter Verwendung der Zustandsvariablen und der Bestimmungsdaten den externen Befehl und den Zustand der Bearbeitungsmaschine oder des Servomotors und den Befehl in Zusammenhang miteinander erlernt.A driving apparatus that controls a speed or a torque of a servomotor of a processing machine according to a command obtained by converting an externally input external command, the driving device including a machine learning apparatus that learns an appropriate conversion from the external command to the command, wherein the machine learning apparatus has: a state observation unit that observes the external command, the command, and a state of the processing machine or the servomotor as state variables representing a current state of an environment; a determination data acquisition unit that acquires determination data indicating an evaluation result of the processing by the processing machine; and a learning unit which learns, by using the state variables and the designation data, the external command and the state of the processing machine or the servomotor and the command in association with each other. Antriebsvorrichtung nach Anspruch 1, wobei die Zustandsvariablen, als den Zustand der Bearbeitungsmaschine oder des Servomotors, mindestens eines der Elemente aus der Gruppe bestehend aus Geschwindigkeitsbefehlswert, Drehmomentbefehlswert, Positionsrückmeldung, Geschwindigkeitsrückmeldung, Drehmomentrückmeldung, Motorstromwert und Motortemperatur jeder der Achsen der Bearbeitungsmaschine, Zykluszeit der Bearbeitung, Temperatur jeder der Einheiten der Bearbeitungsmaschine, Form und Rohmaterial eines bei der Bearbeitung verwendeten Materials und Form und Rohmaterial eines bei der Bearbeitung verwendeten Formwerkzeugs aufweisen.Drive device after Claim 1 wherein the state variables, as the state of the processing machine or servomotor, are at least one of speed command value, torque command value, position feedback, speed feedback, torque feedback, motor current value and motor temperature of each of the axes of the processing machine, cycle time of processing, temperature of each of the units of the processing machine, mold and raw material of a material used in the machining, and mold and raw material of a molding tool used in the machining. Antriebsvorrichtung nach Anspruch 1 oder 2, wobei die Bestimmungsdaten mindestens einen der Werte aus der Gruppe bestehend aus Präzision und Qualität eines bearbeiteten Produkts, Vibration der Bearbeitungsmaschine, Formwerkzeug oder Kugelspindel, Last auf den Servomotor, Energieverbrauch durch die Verarbeitungsmaschine und Zykluszeit der Bearbeitung umfassen.Drive device after Claim 1 or 2 wherein the determination data comprises at least one of the group consisting of precision and quality of a processed product, vibration of the processing machine, forming tool or ball screw, load on the servomotor, power consumption by the processing machine, and cycle time of processing. Antriebsvorrichtung nach einem der Ansprüche 1 bis 3, wobei die Lerneinheit aufweist: eine Auswirkungsberechnungseinheit, welche eine Auswirkung in Zusammenhang mit dem Auswertungsergebnis erlangt; und eine Wertfunktionsaktualisierungseinheit, welche unter Verwendung der Auswirkung eine Funktion aktualisiert, die einen Wert des Befehls in Bezug auf den externen Befehl und den Zustand der Bearbeitungsmaschine oder des Servomotors darstellt.Drive device according to one of Claims 1 to 3 wherein the learning unit comprises: an impact calculation unit that obtains an effect related to the evaluation result; and a value-function updating unit that, using the effect, updates a function representing a value of the command with respect to the external command and the state of the processing machine or the servomotor. Antriebsvorrichtung nach einem der Ansprüche 1 bis 4, wobei die Lerneinheit die Zustandsvariablen und die Bestimmungsdaten in einer mehrschichtigen Struktur berechnet.Drive device according to one of Claims 1 to 4 wherein the learning unit calculates the state variables and the determination data in a multi-layered structure. Antriebsvorrichtung nach einem der Ansprüche 1 bis 5, ferner umfassend eine Entscheidungsfindungseinheit, welche einen Wert des Befehls beruhend auf einem Lernergebnis durch die Lerneinheit ausgibt.Drive device according to one of Claims 1 to 5 , further comprising a decision making unit that outputs a value of the command based on a learning result by the learning unit. Antriebsvorrichtung nach einem der Ansprüche 1 bis 6, wobei die Lerneinheit das Lernen unter Verwendung der Zustandsvariablen und der von einer Mehrzahl der Antriebsvorrichtungen erlangten Bestimmungsdaten ausführt.Drive device according to one of Claims 1 to 6 wherein the learning unit executes the learning using the state variables and the determination data obtained from a plurality of the driving devices. Antriebsvorrichtung nach einem der Ansprüche 1 bis 7, wobei die Vorrichtung zum maschinellen Lernen durch eine Cloud-Datenverarbeitungsumgebung, eine Fog-Datenverarbeitungsumgebung (Datenverarbeitung am Rand der Cloud) oder eine Edge-Datenverarbeitungsumgebung (Datenverarbeitung am Rand des Netzwerks) verwirklicht ist.Drive device according to one of Claims 1 to 7 wherein the machine learning device is implemented by a cloud computing environment, a fog computing environment (edge computing of the cloud), or an edge computing environment (edge computing of the network). Vorrichtung zum maschinellen Lernen, welche eine angemessene Umwandlung von einem externen Befehl, der von außerhalb in eine Antriebsvorrichtung eingegeben wird, zu einem Befehl zum Steuern einer Geschwindigkeit oder eines Drehmoments eines Servomotors einer Bearbeitungsmaschine lernt, die Vorrichtung zum maschinellen Lernen umfassend: eine Zustandsbeobachtungseinheit, welche den externen Befehl, den Befehl und einen Zustand der Bearbeitungsmaschine oder des Servomotors als Zustandsvariablen beobachtet, welche einen gegenwärtigen Zustand einer Umgebung darstellen; eine Bestimmungsdatenerfassungseinheit, welche Bestimmungsdaten, die ein Auswertungsergebnis der Bearbeitung durch die Bearbeitungsmaschine anzeigen, erfasst; und eine Lerneinheit, welche unter Verwendung der Zustandsvariablen und der Bestimmungsdaten den externen Befehl und den Zustand der Bearbeitungsmaschine oder des Servomotors und den Befehl in Zusammenhang miteinander erlernt.A machine learning apparatus which learns an appropriate conversion from an external command input from outside to a drive device to a command for controlling a speed or a torque of a servomotor of a processing machine, comprising the machine learning device: a state observation unit that observes the external command, the command, and a state of the processing machine or the servomotor as state variables representing a current state of an environment; a determination data acquisition unit that acquires determination data indicating an evaluation result of the processing by the processing machine; and a learning unit which learns, by using the state variables and the designation data, the external command and the state of the processing machine or the servomotor and the command in association with each other.
DE102019106729.4A 2018-03-23 2019-03-18 Drive device and machine learning device Pending DE102019106729A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018056873A JP6734318B2 (en) 2018-03-23 2018-03-23 Drive device and machine learning device
JP2018-056873 2018-03-23

Publications (1)

Publication Number Publication Date
DE102019106729A1 true DE102019106729A1 (en) 2019-10-02

Family

ID=67909804

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019106729.4A Pending DE102019106729A1 (en) 2018-03-23 2019-03-18 Drive device and machine learning device

Country Status (4)

Country Link
US (1) US11156988B2 (en)
JP (1) JP6734318B2 (en)
CN (1) CN110297510B (en)
DE (1) DE102019106729A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019217516A1 (en) * 2019-11-13 2021-06-02 Robert Bosch Gmbh Control system for an automation system and method for operating an automation system
DE102022003510B3 (en) 2022-09-23 2023-12-14 INPRO Innovationsgesellschaft für fortgeschrittene Produktionssysteme in der Fahrzeugindustrie mbH Device and method for determining defects and/or micro-faults of at least one drive component of an end-position-controlled system

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7331660B2 (en) * 2019-11-26 2023-08-23 横河電機株式会社 Apparatus, method and program
JP6722836B1 (en) * 2019-11-29 2020-07-15 菱洋エレクトロ株式会社 Abnormality monitoring device, abnormality monitoring method, and abnormality monitoring program
WO2021176619A1 (en) * 2020-03-04 2021-09-10 三菱電機株式会社 Positioning control device and positioning method
JP7484382B2 (en) 2020-04-24 2024-05-16 横河電機株式会社 Control device, control method, and control program
CN115803148B (en) * 2020-09-28 2024-03-12 三菱电机株式会社 Numerical control device and learning device
JP7498087B2 (en) * 2020-10-20 2024-06-11 株式会社日本製鋼所 Continuous kneading device and control method thereof
WO2023223471A1 (en) * 2022-05-18 2023-11-23 三菱電機株式会社 Machining result evaluation device, machining result evaluation method, machining condition determination device, and machining condition determination method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017102613A (en) 2015-11-30 2017-06-08 ファナック株式会社 Machine learning device and method for optimizing smoothness of feeding of feed shaft of machine and motor control device having machine learning device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6118988B2 (en) * 2013-04-09 2017-04-26 パナソニックIpマネジメント株式会社 Motor drive device
JP6063016B1 (en) * 2015-09-29 2017-01-18 ファナック株式会社 Machine learning method and machine learning device for learning operation command for electric motor, and machine tool provided with the machine learning device
JP6243385B2 (en) * 2015-10-19 2017-12-06 ファナック株式会社 Machine learning apparatus and method for learning correction value in motor current control, correction value calculating apparatus and motor driving apparatus provided with the machine learning apparatus
JP6506219B2 (en) * 2016-07-21 2019-04-24 ファナック株式会社 Machine learning device, motor control device and machine learning method for learning current command of motor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017102613A (en) 2015-11-30 2017-06-08 ファナック株式会社 Machine learning device and method for optimizing smoothness of feeding of feed shaft of machine and motor control device having machine learning device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019217516A1 (en) * 2019-11-13 2021-06-02 Robert Bosch Gmbh Control system for an automation system and method for operating an automation system
US12001184B2 (en) 2019-11-13 2024-06-04 Robert Bosch Gmbh Control system for an automation system and method for operating an automation system
DE102022003510B3 (en) 2022-09-23 2023-12-14 INPRO Innovationsgesellschaft für fortgeschrittene Produktionssysteme in der Fahrzeugindustrie mbH Device and method for determining defects and/or micro-faults of at least one drive component of an end-position-controlled system

Also Published As

Publication number Publication date
US20190294153A1 (en) 2019-09-26
JP6734318B2 (en) 2020-08-05
CN110297510A (en) 2019-10-01
CN110297510B (en) 2021-09-14
JP2019168973A (en) 2019-10-03
US11156988B2 (en) 2021-10-26

Similar Documents

Publication Publication Date Title
DE102019106729A1 (en) Drive device and machine learning device
DE102016010064B4 (en) Numerical control with machining condition adjustment function to reduce the occurrence of chatter or tool wear / breakage
DE102018006946B4 (en) Control and machine learning device
DE102016117773B4 (en) Machine tool generating optimal acceleration / deceleration, simulation device and machine learning device
DE102019002065B4 (en) Machine learning device, robot control device, and robot vision system using a machine learning device, and machine learning method
DE102018010054A1 (en) Control and machine learning device
DE102017011544A1 (en) Control and machine learning device
DE102018003266B4 (en) CONTROLLER AND MACHINE LEARNING DEVICE
DE102018004048B4 (en) Control and machine learning device
DE102018004330B4 (en) Control and machine learning device
DE102016008994A1 (en) TOOLING MACHINE, SIMULATING DEVICE AND MACHINE INCOMING DEVICE
DE102016117560B4 (en) TOOL MACHINE FOR PRODUCING A SPEED DISTRIBUTION
DE102018000342A1 (en) NUMERICAL CONTROL AND MECHANICAL LEARNING DEVICE
DE102016011402A1 (en) A machine learning method and machine learning apparatus for teaching operation commands to an electric motor and machine tool machine tool
DE102018010086A1 (en) Chip removal device and information processing device
DE102016009106A1 (en) Machining device equipped with control with processing time measuring function and measuring function on the machine
DE102019002156A1 (en) Controller and machine learning device
DE102018006248A1 (en) Control device and learning device
DE102019001044A1 (en) CONTROL DEVICE AND MACHINE LEARNING DEVICE
DE102018005199B4 (en) COMPONENT FEEDING DEVICE AND MACHINE LEARNING DEVICE
DE102019112211A1 (en) simulation device
DE102018108778A1 (en) Acceleration and deceleration control unit
DE102019001783A1 (en) CONTROL, MACHINE LEARNING DEVICE AND SYSTEM
DE102018126429A1 (en) Processing condition adjustment device and machine learning device
DE102019113229A1 (en) Programmable control and machine learning device

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: HL KEMPNER PATENTANWAELTE, SOLICITORS (ENGLAND, DE

Representative=s name: HL KEMPNER PATENTANWALT, RECHTSANWALT, SOLICIT, DE

R012 Request for examination validly filed
R016 Response to examination communication