DE112019007404T5 - PARAMETER CALCULATION DEVICE, ROBOT CONTROL SYSTEM AND ROBOT SYSTEM - Google Patents

PARAMETER CALCULATION DEVICE, ROBOT CONTROL SYSTEM AND ROBOT SYSTEM Download PDF

Info

Publication number
DE112019007404T5
DE112019007404T5 DE112019007404.0T DE112019007404T DE112019007404T5 DE 112019007404 T5 DE112019007404 T5 DE 112019007404T5 DE 112019007404 T DE112019007404 T DE 112019007404T DE 112019007404 T5 DE112019007404 T5 DE 112019007404T5
Authority
DE
Germany
Prior art keywords
unit
robot
calculation device
movements
parameter calculation
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
DE112019007404.0T
Other languages
German (de)
Inventor
Satoru Matsuoka
Kiyoshi Maekawa
Koji Shiratsuchi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE112019007404T5 publication Critical patent/DE112019007404T5/en
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control

Landscapes

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

Abstract

Eine Parameterberechnungsvorrichtung (100) beinhaltet: eine Parameterspeichereinheit (110), die Parameter zum Steuern von Bewegungen eines Roboters für jeden Steuerabschnitt mit einer Geschwindigkeit von null als eine Grenze speichert; eine Zustandsvariablenerfassungseinheit (120), die auf Grundlage der Parameter Zustandsvariablen erfasst, die einen Zustand des Roboters bei einer Reihe von Bewegungen angeben, die aus einer Vielzahl von Steuerabschnitten gebildet ist; eine Bewertungseinheit (130), die auf Grundlage der Zustandsvariablen einen Bewertungswert zum Bewerten der Reihe von Bewegungen und eine Zykluszeit der Reihe von Bewegungen berechnet; und eine Einheit (140) zum maschinellen Lernen, die durch Lernen mittels mehrkriterieller Optimierung Parameter berechnet, die bewirken, dass der Bewertungswert eine erste Bedingung erfüllt und die Zykluszeit eine zweite Bedingung erfüllt, und die Parameterspeichereinheit (110) dazu veranlassen, die berechneten Parameter zu speichern.

Figure DE112019007404T5_0000
A parameter calculation device (100) includes: a parameter storage unit (110) that stores parameters for controlling movements of a robot for each control section with a speed of zero as a limit; a state variable acquisition unit (120) that acquires state variables indicative of a state of the robot in a series of movements, made up of a plurality of control sections, based on the parameters; an evaluation unit (130) that calculates an evaluation value for evaluating the series of movements and a cycle time of the series of movements based on the state variable; and a machine learning unit (140) that calculates parameters that cause the evaluation value to satisfy a first condition and the cycle time to satisfy a second condition through learning using multi-criteria optimization, and causes the parameter storage unit (110) to store the calculated parameters to save.
Figure DE112019007404T5_0000

Description

Gebietarea

Die vorliegende Erfindung betrifft eine Parameterberechnungsvorrichtung, die einen Parameter zum Steuern einer Bewegung eines Roboters berechnet, und ein daran beteiligtes Robotersteuersystem und Robotersystem.The present invention relates to a parameter calculation device that calculates a parameter for controlling a movement of a robot, and a robot control system and robot system involved therein.

Hintergrundbackground

Seit einigen Jahren müssen Industrieroboter die Betriebsgeschwindigkeit gemäß ihrer vorgesehenen Arbeit erhöhen, um die Produktivität zu verbessern. Wenn jedoch ein Stellglied einer Gelenkwelle eines Roboters wiederholt mit seiner höchstmöglichen Geschwindigkeit betrieben wird, kann es sein, dass Komponenten, die in dem Roboter eingerichtet sind, so übermäßig verbraucht werden, dass die Auslegungslebensdauer je nach der Größe der Last nicht eingehalten werden kann. Aus diesem Grund ist es für eine Steuervorrichtung, die dazu ausgelegt ist, den Roboter zu steuern, wünschenswert, ein Lastdrehmoment oder dergleichen zu überwachen, das auf die Gelenkwelle des Roboters ausgeübt wird, und einen Geschwindigkeits- oder Beschleunigungsparameter zum Erstellen eines an das Stellglied auszugebenden Bewegungsbefehls einzustellen.In recent years, industrial robots have been required to increase operation speed according to their intended work in order to improve productivity. However, when an actuator of a propeller shaft of a robot is repeatedly operated at its highest possible speed, components installed in the robot may be consumed so excessively that the design life cannot be maintained depending on the size of the load. For this reason, it is desirable for a controller designed to control the robot to monitor a load torque or the like applied to the joint shaft of the robot and a speed or acceleration parameter to make one to be output to the actuator set motion command.

Die in Patentliteratur 1 beschriebene Simulationsvorrichtung zur Schätzung der Lebensdauer verringert einen Geschwindigkeitsbefehlswert, wenn der Wert der Last auf ein Untersetzungsgetriebe, der durch Simulation von Roboterbewegungen erhalten wird, größer als ein Lastreferenzwert ist, der zur Erfüllung der Ziellebensdauer erforderlich ist.The life estimation simulation device described in Patent Literature 1 decreases a speed command value when the value of the load on a reduction gear obtained by simulating robot motions is larger than a load reference value required to meet the target life.

Liste der AnführungenList of citations

Patentliteraturpatent literature

Patentliteratur 1: Japanische Offenlegungsschrift Nr. 2013-144349 Patent Literature 1: Japanese Patent Application Laid-Open No. 2013-144349

Kurzdarstellungabstract

Technisches ProblemTechnical problem

Die oben aufgeführte Technik von Patentliteratur 1 verlängert jedoch eine Lebensdauer, indem sie den Geschwindigkeitsbefehlswert zu einem bestimmten Zeitpunkt verringert, und berücksichtigt keine Beschränkungsbedingung, wie etwa eine Lebensdauer in Bezug auf die gesamte Reihe von Bewegungen des Untersetzungsgetriebes. Daher ist es bei der oben aufgeführten Technik von Patentliteratur 1 nicht möglich, einen Bewegungsbefehl unter Berücksichtigung von sowohl einer Beschränkungsbedingung wie etwa einer Lebensdauer als auch einer Zykluszeit in Bezug auf die gesamte Reihe von Bewegungen einzustellen. Das heißt, bei der oben aufgeführten Technik von Patentliteratur 1 ist es nicht möglich zu bewirken, dass sowohl eine Beschränkungsbedingung für eine Reihe von Bewegungen als auch eine Bedingung für die Zykluszeit der Reihe von Bewegungen mit ihren jeweiligen spezifischen Bedingungen zufrieden sind.However, the above technique of Patent Literature 1 lengthens a lifetime by reducing the speed command value at a certain point in time, and does not consider a constraint condition such as a lifetime with respect to the entire series of movements of the speed reducer. Therefore, with the above technique of Patent Literature 1, it is not possible to set a movement command considering both a constraint condition such as a lifetime and a cycle time with respect to the entire series of movements. That is, with the technique of Patent Literature 1 listed above, it is not possible to make both a constraint condition for a series of motions and a condition for the cycle time of the series of motions to be satisfied with their respective specific conditions.

Die vorliegende Erfindung wurde angesichts der vorstehenden Umstände entwickelt und eine Aufgabe davon besteht darin, eine Parameterberechnungsvorrichtung bereitzustellen, die in der Lage ist, eine Gesamtoptimierung zu erreichen, bei der sowohl eine Beschränkungsbedingung für eine Reihe von Bewegungen als auch eine Bedingung für die Zykluszeit der Reihe von Bewegungen mit ihren jeweiligen spezifischen Bedingungen zufrieden sind.The present invention has been developed in view of the foregoing circumstances, and an object thereof is to provide a parameter calculation device capable of achieving overall optimization in which both a constraint condition for a series of movements and a condition for the cycle time of the series of movements are satisfied with their respective specific conditions.

Lösung des Problemsthe solution of the problem

Um die oben genannten Probleme zu lösen und die Aufgabe zu erfüllen, stellt die vorliegende Erfindung eine Parameterberechnungsvorrichtung bereit, umfassend: eine Parameterspeichereinheit, um einen oder mehrere Parameter zum Steuern einer oder mehrerer Bewegungen eines Roboters für jeden Steuerabschnitt mit einer Geschwindigkeit von null als eine Grenze zu speichern; eine Zustandsvariablenerfassungseinheit, um auf Grundlage der Parameter eine oder mehrere Zustandsvariablen zu erfassen, die einen Zustand des Roboters bei einer Reihe von Bewegungen angeben, die aus einer Vielzahl von Steuerabschnitten gebildet ist; eine Bewertungseinheit, um auf Grundlage der Zustandsvariablen einen Bewertungswert zum Bewerten der Reihe von Bewegungen und einer Zykluszeit der Reihe von Bewegungen zu berechnen; und eine Einheit zum maschinellen Lernen, um durch Lernen mittels mehrkriterieller Optimierung einen oder mehrere Parameter zu berechnen, mit denen der Bewertungswert eine erste Bedingung erfüllen kann und die Zykluszeit eine zweite Bedingung erfüllen kann, und die Parameterspeichereinheit dazu zu veranlassen, die berechneten Parameter zu speichern.In order to solve the above problems and achieve the object, the present invention provides a parameter calculation device comprising: a parameter storage unit to store one or more parameters for controlling one or more movements of a robot for each control section with a speed of zero as a limit save; a state variable acquiring unit for acquiring, based on the parameters, one or more state variables indicative of a state of the robot in a series of movements, made up of a plurality of control sections; an evaluation unit to calculate an evaluation value for evaluating the series of movements and a cycle time of the series of movements based on the state variable; and a machine learning unit for calculating one or more parameters with which the evaluation value can satisfy a first condition and the cycle time can satisfy a second condition through learning using multi-criteria optimization, and causing the parameter storage unit to store the calculated parameters .

Vorteilhafte Wirkungen der ErfindungAdvantageous Effects of the Invention

Die Parameterberechnungsvorrichtung gemäß der vorliegenden Erfindung kann eine vorteilhafte Wirkung des Erreichens einer Gesamtoptimierung erzielen, bei der sowohl eine Beschränkungsbedingung für eine Reihe von Bewegungen als auch eine Bedingung für die Zykluszeit der Reihe von Bewegungen mit ihren jeweiligen spezifischen Bedingungen zufrieden sind.The parameter calculation device according to the present invention can achieve an advantageous effect of achieving an overall optimization in which both a constraint condition for a series of movements and a condition for the cycle time of the series of movements are satisfied with their respective specific conditions.

Figurenlistecharacter list

  • 1 ist ein Blockdiagramm, das eine Konfiguration einer Parameterberechnungsvorrichtung gemäß einer ersten Ausführungsform veranschaulicht. 1 14 is a block diagram illustrating a configuration of a parameter calculation device according to a first embodiment.
  • 2 ist ein Ablaufdiagramm, das eine Parameterberechnungsprozedur der Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform veranschaulicht. 2 14 is a flowchart illustrating a parameter calculation procedure of the parameter calculation device according to the first embodiment.
  • 3 ist ein Blockdiagramm, das eine erste andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform veranschaulicht. 3 14 is a block diagram illustrating a first other exemplary configuration of the parameter calculation device according to the first embodiment.
  • 4 ist eine Darstellung zur Erläuterung einer Reihe von Bewegungen eines Roboters gemäß der ersten Ausführungsform. 4 12 is an illustration for explaining a series of movements of a robot according to the first embodiment.
  • 5 ist ein Diagramm, das ein Beispiel für ein Geschwindigkeitsmuster veranschaulicht, das durch die Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform erstellt wird. 5 FIG. 14 is a diagram illustrating an example of a velocity pattern prepared by the parameter calculation device according to the first embodiment.
  • 6 ist ein Diagramm, das ein Beispiel für ein Geschwindigkeitsmuster veranschaulicht, wenn eine maximale Geschwindigkeit und eine Beschleunigung in Bezug auf das in 5 veranschaulichte Geschwindigkeitsmuster abgesenkt werden. 6 is a diagram illustrating an example of a velocity pattern when a maximum velocity and an acceleration with respect to the in 5 illustrated speed patterns are lowered.
  • 7 ist ein Diagramm zur Erläuterung von Unterschieden zwischen Geschwindigkeitsmustern, die durch die Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform erstellt werden, und Geschwindigkeitsmustern eines Vergleichsbeispiels. 7 12 is a diagram for explaining differences between speed patterns prepared by the parameter calculation device according to the first embodiment and speed patterns of a comparative example.
  • 8 ist ein Blockdiagramm, das eine zweite andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform veranschaulicht. 8th 14 is a block diagram illustrating a second other example configuration of the parameter calculation device according to the first embodiment.
  • 9 ist ein Blockdiagramm, das eine dritte andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform veranschaulicht. 9 14 is a block diagram illustrating a third other example configuration of the parameter calculation device according to the first embodiment.
  • 10 ist ein Blockdiagramm, das eine vierte andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform veranschaulicht. 10 14 is a block diagram illustrating a fourth other example configuration of the parameter calculation device according to the first embodiment.
  • 11 ist eine Darstellung zur Erläuterung von Informationen, die auf einem Schnittstellenbildschirm durch die Parameterberechnungsvorrichtung aus 10 angezeigt werden sollen. 11 Fig. 14 is an illustration for explaining information displayed on an interface screen by the parameter calculation device 10 are to be displayed.
  • 12 ist ein Blockdiagramm, das eine fünfte andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform veranschaulicht. 12 14 is a block diagram illustrating a fifth other example configuration of the parameter calculation device according to the first embodiment.
  • 13 ist ein Blockdiagramm, das eine erste beispielhafte Konfiguration einer Parameterberechnungsvorrichtung gemäß einer zweiten Ausführungsform veranschaulicht. 13 14 is a block diagram illustrating a first example configuration of a parameter calculation device according to a second embodiment.
  • 14 ist ein Blockdiagramm, das eine zweite beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der zweiten Ausführungsform veranschaulicht. 14 14 is a block diagram illustrating a second example configuration of the parameter calculation device according to the second embodiment.
  • 15 ist ein Blockdiagramm, das eine beispielhafte Konfiguration einer Parameterberechnungsvorrichtung gemäß einer dritten Ausführungsform veranschaulicht. 15 14 is a block diagram illustrating an example configuration of a parameter calculation device according to a third embodiment.
  • 16 ist ein Blockdiagramm, das eine beispielhafte Konfiguration eines Robotersystems veranschaulicht, das eine Parameterberechnungsvorrichtung gemäß einer fünften Ausführungsform beinhaltet. 16 14 is a block diagram illustrating an example configuration of a robot system including a parameter calculation device according to a fifth embodiment.
  • 17 ist eine Darstellung, die eine beispielhafte Hardwarekonfiguration der Parameterberechnungsvorrichtung gemäß jeder der ersten bis fünften Ausführungsform veranschaulicht. 17 12 is a diagram illustrating an example hardware configuration of the parameter calculation device according to each of the first to fifth embodiments.
  • 18 ist eine Darstellung, die einen Steuerabschnitt veranschaulicht, bevor das Layout der Arbeitsumgebung durch die Parameterberechnungsvorrichtung gemäß einer sechsten Ausführungsform eingestellt wird. 18 14 is a diagram illustrating a control section before the layout of the work environment is adjusted by the parameter calculation device according to a sixth embodiment.
  • 19 ist eine Darstellung, die einen Steuerabschnitt veranschaulicht, nachdem das Layout der Arbeitsumgebung durch die Parameterberechnungsvorrichtung gemäß der sechsten Ausführungsform eingestellt wurde. 19 14 is a diagram illustrating a control section after the layout of the work environment is adjusted by the parameter calculation device according to the sixth embodiment.

Beschreibung von AusführungsformenDescription of Embodiments

Im Folgenden werden eine Parameterberechnungsvorrichtung, ein Robotersteuersystem und ein Robotersystem gemäß Ausführungsformen der vorliegenden Erfindung unter Bezugnahme auf die Zeichnungen näher beschrieben. Die vorliegende Erfindung ist nicht zwingend durch diese Ausführungsformen beschränkt.Hereinafter, a parameter calculation device, a robot control system, and a robot system according to embodiments of the present invention will be described in detail with reference to the drawings. The present invention is not necessarily limited by these embodiments.

Erste Ausführungsform.First embodiment.

<Vorrichtungskonfiguration><device configuration>

1 ist ein Blockdiagramm, das eine Konfiguration einer Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform veranschaulicht. Die Parameterberechnungsvorrichtung 100, bei der es sich um eine Roboterbewegungsparameterberechnungsvorrichtung handelt, fungiert als eine Vorrichtung, die Parameter (Bewegungsparameter) zur Verwendung beim Betreiben eines Roboters berechnet. Zu den Bewegungsparametern gehören Parameter, welche die Geschwindigkeit des Roboters, wie etwa die maximale Geschwindigkeit, Beschleunigung und Bereitschaftszeit des Roboters, bestimmen, und Parameter, welche die Bewegungsroute des Roboters bestimmen. Die erste bis fünfte Ausführungsform richten sich auf die Beschreibung eines Falls, in dem Bewegungsparameter Parameter sind, welche die Geschwindigkeit des Roboters bestimmen, und die sechste Ausführungsform richtet sich auf die Beschreibung eines Falls, in dem Bewegungsparameter Parameter sind, welche die Bewegungsroute des Roboters bestimmen. Die Parameterberechnungsvorrichtung 100 beinhaltet eine Parameterspeichereinheit 110, eine Zustandsvariablenerfassungseinheit 120, eine Bewertungseinheit 130, eine Einheit 140 zum maschinellen Lernen und eine Beendigungsbedingungsbestimmungseinheit 150. 1 14 is a block diagram illustrating a configuration of a parameter calculation device according to the first embodiment. The parameter calculation device 100, which is a robot movement parameter calculation device, functions as a device that calculates parameters (movement parameters) for use in operating a robot. Motion parameters include parameters that control the speed of the robot, such as maximum speed, acceleration the robot's movement and standby time, and parameters that determine the robot's movement route. The first to fifth embodiments are aimed at describing a case where movement parameters are parameters that determine the speed of the robot, and the sixth embodiment is aimed at describing a case where movement parameters are parameters that determine the movement route of the robot . The parameter calculation device 100 includes a parameter storage unit 110, a state variable acquisition unit 120, an evaluation unit 130, a machine learning unit 140, and a termination condition determination unit 150.

Die vorliegende Ausführungsform richtet sich auf die Beschreibung eines Falls, in dem es sich bei dem Roboter um einen Armroboter handelt, jedoch kann der Roboter eine beliebige Art von Roboter sein. Der Benutzer bewegt einen Armabschnitt des Roboters unter Verwendung einer Fernsteuerungsvorrichtung, die als Handprogrammiergerät bezeichnet wird, wodurch spezifische Positionen (Lernpunkte) eingelernt werden, durch die der Armabschnitt während eines Herstellungsprozesses eines Produkts verlaufen sollte. Alternativ dazu kann der Benutzer die Lernpunkte in den Armabschnitt des Roboters durch direktes Betätigen des Armabschnitts des Roboters oder dergleichen einlernen. Bei dem Roboter ist eine Betätigungsvorrichtung, die dazu ausgelegt ist, den Armabschnitt direkt zu betätigen, an dem Armabschnitt angebracht und hält ein Bediener die Betätigungsvorrichtung direkt mit der Hand, um den Armabschnitt zu bewegen, wodurch spezifische Positionen (Lernpunkte) eingelernt werden, durch die der Armabschnitt im Produktherstellungsprozess verlaufen sollte. Infolgedessen bewegt der Roboter den Armabschnitt während des Herstellungsprozesses des Produkts nacheinander an die Lernpunkte.The present embodiment is directed to the description of a case where the robot is an arm robot, but the robot may be any type of robot. The user moves an arm portion of the robot using a remote control device called a handheld programmer, thereby teaching specific positions (teaching points) through which the arm portion should pass during a manufacturing process of a product. Alternatively, the user can teach the learning points to the arm portion of the robot by directly manipulating the arm portion of the robot or the like. In the robot, an actuator designed to operate the arm portion directly is attached to the arm portion, and an operator directly holds the actuator with his hand to move the arm portion, thereby teaching specific positions (teaching points) through which the arm section should run in the product manufacturing process. As a result, the robot moves the arm portion to the learning points one by one during the manufacturing process of the product.

Die Parameterspeichereinheit 110 speichert für jeden Lernabschnitt einen Parameter oder mehrere Parameter zur Verwendung beim Erstellen eines Bewegungsbefehls für den Roboter. Die Parameterspeichereinheit 110 speichert für jeden Lernabschnitt eine Kombination von Parametern, die durch Lernen und Berechnung der Einheit 140 zum maschinellen Lernen erhalten werden. Mit einem Lernabschnitt ist ein Bewegungsabschnitt von einem Lernpunkt, d. h. einem Startpunkt einer Bewegung des Roboters, zu einem anderen Lernpunkt, d. h. einem Endpunkt davon, gemeint. Der Roboter führt eine Reihe von Bewegungen aus, indem er sich durch eine Vielzahl von Lernabschnitten bewegt. Es ist zu beachten, dass der Startpunkt und der Endpunkt einer Bewegung auf Grundlage eines Steuerprogramms (Robotersprache) eingestellt werden können, das dazu ausgelegt ist, die Bewegung des Roboters zu steuern. In diesem Fall speichert die Parameterspeichereinheit 110 für jeden Steuerabschnitt einen Parameter oder mehrere Parameter zur Verwendung beim Erstellen eines Bewegungsbefehls für den Roboter. Ein Steuerabschnitt entspricht einem Bewegungsabschnitt vom Startpunkt zum Endpunkt einer Bewegung des Roboters.The parameter storage unit 110 stores one or more parameters for use in creating a motion command for the robot for each session. The parameter storage unit 110 stores a combination of parameters obtained through learning and calculation of the machine learning unit 140 for each learning session. A learning segment is a movement segment from a learning point, i. H. a starting point of a movement of the robot, to another learning point, d. H. an end point of it, meant. The robot performs a series of movements by moving through a variety of learning stages. Note that the start point and end point of a movement can be set based on a control program (robot language) designed to control the movement of the robot. In this case, the parameter storage unit 110 stores one or more parameters for use in creating a movement command for the robot for each control section. A control section corresponds to a movement section from the start point to the end point of movement of the robot.

Die Zustandsvariablenerfassungseinheit 120 liest den/die Parameter für jeden Lernabschnitt aus, wobei der/die Parameter in der Parameterspeichereinheit 110 gespeichert wurde/wurden. Auf Grundlage des/der Parameter, der/die für jeden Lernabschnitt festgelegt ist/sind, berechnet die Zustandsvariablenerfassungseinheit 120 eine oder mehrere Zustandsvariablen jeder Komponente (z. B. jedes Gelenk) des Roboters bei einem Probelauf einer aus einer Vielzahl von Lernabschnitten gebildeten Reihe von Bewegungen, wodurch Zustandsvariablen bei der Reihe von Bewegungen erfasst werden. Eine Zustandsvariable ist eine Information, die den Zustand des Roboters angibt, und variiert je nach der Bewegung des Roboters. Zu Beispielen für Zustandsvariablen gehören die Verschiebung, die Geschwindigkeit, die Beschleunigung, der elektrische Stromverbrauch und der elektrische Leistungsverbrauch jedes Gelenks bei einer Reihe von Bewegungen.The state variable acquisition unit 120 reads out the parameter(s) for each session, the parameter(s) having been stored in the parameter storage unit 110 . Based on the parameter(s) set for each session, the state variable acquisition unit 120 calculates one or more state variables of each component (e.g., each joint) of the robot in a trial run of a series made up of a plurality of sessions Movements, whereby state variables are detected in the series of movements. A state variable is information that indicates the state of the robot, and varies depending on the movement of the robot. Examples of state variables include displacement, velocity, acceleration, electrical current consumption, and electrical power consumption of each joint in a series of movements.

Die Bewertungseinheit 130 berechnet einen Bewertungswert zum Bewerten der Reihe von Bewegungen und der Zykluszeit der Reihe von Bewegungen unter Verwendung der durch die Zustandsvariablenerfassungseinheit 120 erfassten Zustandsvariablen. In der vorliegenden Ausführungsform ist der Bewertungswert eine vorhergesagte Lebensdauer einer oder mehrerer Komponenten, die in dem Roboter eingerichtet sind, im Fall von Wiederholungen der Reihe von Bewegungen, ein Effektivstrom (Stromverbrauch) einer oder mehrerer Komponenten, der bei der Reihe von Bewegungen verbraucht wird, oder eine elektrische Leistung (Leistungsverbrauch) einer oder mehrerer Komponenten, die bei der Reihe von Bewegungen verbraucht wird.The evaluation unit 130 calculates an evaluation value for evaluating the series of movements and the cycle time of the series of movements using the state variables detected by the state variable detection unit 120 . In the present embodiment, the evaluation value is a predicted lifetime of one or more components installed in the robot in the case of repetitions of the series of movements, an effective current (power consumption) of one or more components consumed in the series of movements, or an electric power (power consumption) of one or more components consumed in the series of movements.

Unter Verwendung der ein oder mehreren durch die Zustandsvariablenerfassungseinheit 120 erfassten Zustandsvariablen berechnet die Bewertungseinheit 130 die Zeit, die für den Probelauf der Reihe von Bewegungen benötigt wird, als eine Zykluszeit. Die Bewertungseinheit 130 berechnet ferner als einen Bewertungswert mindestens eines von der vorhergesagten Lebensdauer, die mit der Reihe von Bewegungen assoziiert ist, dem Stromverbrauch infolge des Verbrauchs von elektrischem Strom bei der Reihe von Bewegungen und dem Leistungsverbrauch infolge des Verbrauchs von elektrischer Leistung bei der Reihe von Bewegungen.Using the one or more state variables detected by the state variable detection unit 120, the evaluation unit 130 calculates the time required for the trial run of the series of movements as a cycle time. The evaluation unit 130 further calculates, as an evaluation value, at least one of the predicted lifetime associated with the series of movements, the power consumption due to the consumption of electric power in the series of movements, and the power consumption due to the consumption of electric power in the series of movements.

Die Bewertungseinheit 130 führt eine Bewertung für den Bewertungswert durch, indem sie bestimmt, ob der Bewertungswert eine Beschränkungsbedingung erfüllt oder nicht. Mit der Beschränkungsbedingung ist eine Bedingung gemeint, die auf Grundlage von mindestens einem von der Auslegungslebensdauer, einer Obergrenze für den Stromverbrauch bei der Reihe von Bewegungen und einer Obergrenze für den Leistungsverbrauch bei der Reihe von Bewegungen einer oder mehrerer Komponenten des Roboters festgelegt wird. Die Auslegungslebensdauer ist eine Lebensdauer, die frei durch den Benutzer eingestellt werden kann und sich von einer Nennlebensdauer (weiter unten beschrieben) unterscheidet. In einem Fall, in dem der Bewertungswert die vorhergesagte Lebensdauer ist, die mit der Reihe von Bewegungen assoziiert ist, verwendet die Bewertungseinheit 130 die Beschränkungsbedingung, die auf Grundlage der Auslegungslebensdauer festgelegt wird. In einem Fall, in dem der Bewertungswert der Stromverbrauch bei der Reihe von Bewegungen ist, verwendet die Bewertungseinheit 130 die Beschränkungsbedingung, die auf Grundlage der Obergrenze für den Stromverbrauch bei der Reihe von Bewegungen festgelegt wird. In einem Fall, in dem der Bewertungswert der Leistungsverbrauch bei der Reihe von Bewegungen ist, verwendet die Bewertungseinheit 130 die Beschränkungsbedingung, die auf Grundlage der Obergrenze des Leistungsverbrauchs bei der Reihe von Bewegungen festgelegt wird.The evaluation unit 130 evaluates the evaluation value by determining whether or not the evaluation value satisfies a constraint condition. The constraint condition means a condition that is set based on at least one of design life, an upper limit of power consumption in the series of movements, and an upper limit of power consumption in the series of movements of one or more components of the robot. Design life is a life that can be freely set by the user and differs from a nominal life (described below). In a case where the evaluation value is the predicted lifetime associated with the series of movements, the evaluation unit 130 uses the constraint condition set based on the design lifetime. In a case where the evaluation value is the power consumption in the series of movements, the evaluation unit 130 uses the restriction condition that is set based on the upper limit of the power consumption in the series of movements. In a case where the evaluation value is the power consumption in the series of movements, the evaluation unit 130 uses the constraint condition that is set based on the upper limit of the power consumption in the series of movements.

Beispielsweise verwendet die Bewertungseinheit 130 die Auslegungslebensdauer, die Obergrenze für den Stromverbrauch oder die Obergrenze für den Leistungsverbrauch unverändert als die Beschränkungsbedingung, um zu bewerten, ob der Bewertungswert die Beschränkungsbedingung erfüllt oder nicht. Alternativ dazu kann die Bewertungseinheit 130 einen spezifischen Prozentsatz (z. B. 90 %) der Auslegungslebensdauer, einen spezifischen Prozentsatz der Obergrenze für den Stromverbrauch oder einen spezifischen Prozentsatz der Obergrenze für den Leistungsverbrauch verwenden, um zu bewerten, ob der Bewertungswert die Beschränkungsbedingung erfüllt oder nicht. Kurz ausgedrückt, kann die Beschränkungsbedingung ein spezifischer Prozentsatz der Auslegungslebensdauer, ein spezifischer Prozentsatz der Obergrenze für den Stromverbrauch oder ein spezifischer Prozentsatz der Obergrenze für den Leistungsverbrauch sein. Die Bewertungseinheit 130 sendet das Ergebnis der Bestimmung davon, ob die Beschränkungsbedingung erfüllt ist oder nicht, die Zykluszeit, die Beschränkungsbedingung und die Parameter, die für die Bewertung verwendet werden, an die Einheit 140 zum maschinellen Lernen.For example, the evaluation unit 130 uses the design life, the power consumption upper limit, or the power consumption upper limit as the constraint condition to judge whether or not the evaluation value satisfies the constraint condition. Alternatively, the evaluation unit 130 may use a specific percentage (e.g. 90%) of the design lifetime, a specific percentage of the power consumption cap, or a specific percentage of the power consumption cap to evaluate whether the evaluation value satisfies the constraint condition or not. In short, the constraint condition may be a specific percentage of the design lifetime, a specific percentage of the power consumption cap, or a specific percentage of the power consumption cap. The evaluation unit 130 sends the result of determination of whether or not the constraint condition is satisfied, the cycle time, the constraint condition, and the parameters used for the evaluation to the machine learning unit 140 .

Die Einheit 140 zum maschinellen Lernen speichert das Ergebnis der Bestimmung davon, ob die Beschränkungsbedingung erfüllt ist oder nicht, die Zykluszeit und die Beschränkungsbedingung im Voraus. Die Einheit 140 zum maschinellen Lernen sucht nach einer Kombination von solchen Parametern, dass die durch die Bewertungseinheit 130 berechnete Zykluszeit soweit minimiert wird, dass die Beschränkungsbedingung bei der gesamten Reihe von Bewegungen erfüllt ist. In der vorliegenden Ausführungsform entspricht das Bewirken, dass der Bewertungswert die Beschränkungsbedingung erfüllt, dem Bewirken, dass der Bewertungswert eine erste Bedingung erfüllt, und entspricht das Verkürzen der Zykluszeit dem Bewirken, dass die Zykluszeit eine zweite Bedingung erfüllt. Die Einheit 140 zum maschinellen Lernen aktualisiert die Werte von Parametern, die in der Parameterspeichereinheit 110 gespeichert sind, auf die Werte von Parametern (Kombination von Parametern) derart, dass die Zykluszeit die kleinste ist, die bei der Suche zu finden ist.The machine learning unit 140 stores the result of determination of whether or not the constraint condition is satisfied, the cycle time, and the constraint condition in advance. The machine learning unit 140 searches for a combination of parameters such that the cycle time calculated by the evaluation unit 130 is minimized to the extent that the constraint condition is satisfied on the entire series of movements. In the present embodiment, making the evaluation value satisfy the constraint condition corresponds to making the evaluation value satisfy a first condition, and shortening the cycle time corresponds to making the cycle time satisfy a second condition. The machine learning unit 140 updates the values of parameters stored in the parameter storage unit 110 to the values of parameters (combination of parameters) such that the cycle time is the smallest to be found in the search.

Die Beendigungsbedingungsbestimmungseinheit 150 bestimmt auf Grundlage der Beendigungsbedingung der Parametereinstellung (Parameterberechnung), ob die Beendigungsbedingung erfüllt ist oder nicht. Die Beendigungsbedingung der Parametereinstellung lautet z. B., dass die Anzahl von Suchen nach einer Kombination von Parametern in der Einheit 140 zum maschinellen Lernen eine spezifizierte maximale Anzahl von Suchen erreichen sollte. Alternativ dazu kann die Beendigungsbedingung der Parametereinstellung sein, dass die zu minimierende Zykluszeit eine ausreichend kleine Verringerung aufweist, wie etwa weniger als 10-6 Sekunden gegenüber dem Mindestwert einer Zykluszeit, der bis zum vorherigen maschinellen Lernen erhalten wurde. In der vorliegenden Ausführungsform werden Parameter in dem Fall, in dem die Beendigungsbedingung erfüllt ist, als optimale Parameter bezeichnet und wird die Zykluszeit in dem Fall, in dem die Beendigungsbedingung erfüllt ist, als minimale Zykluszeit bezeichnet. Das heißt, Parameter werden in dem Fall, in dem die Beendigungsbedingung während des Prozesses zum Verbessern des Bewertungswerts erfüllt ist, als optimale Parameter bezeichnet. Darüber hinaus wird die Zykluszeit in dem Fall, in dem die Beendigungsbedingung während des Prozesses zum Verbessern des Bewertungswerts erfüllt ist, als minimale Zykluszeit bezeichnet.The completion condition determination unit 150 determines whether or not the completion condition is satisfied based on the completion condition of the parameter setting (parameter calculation). The termination condition of the parameter setting is e.g. B. that the number of searches for a combination of parameters in the machine learning unit 140 should reach a specified maximum number of searches. Alternatively, the termination condition of the parameter adjustment may be that the cycle time to be minimized has a sufficiently small reduction, such as less than 10 -6 seconds, from the minimum value of cycle time obtained up to the previous machine learning. In the present embodiment, parameters in the case where the termination condition is satisfied are referred to as optimal parameters, and the cycle time in the case where the termination condition is satisfied is referred to as minimum cycle time. That is, parameters are referred to as optimal parameters in the case where the termination condition is satisfied during the process of improving the evaluation value. In addition, the cycle time in the case where the termination condition is satisfied during the process of improving the evaluation value is referred to as the minimum cycle time.

In dem Fall, in dem die Beendigungsbedingung erfüllt ist, gibt die Beendigungsbedingungsbestimmungseinheit 150 die Kombination von Parametern derart, dass die bis dahin erhaltene Zykluszeit minimiert wird, an eine externe Vorrichtung als eine Kombination der optimalen Parameter aus. Ein Beispiel für die externe Vorrichtung ist eine Steuerung, die dazu ausgelegt ist, den Roboter zu steuern.In the case where the ending condition is satisfied, the ending condition determining unit 150 outputs the combination of parameters such that the cycle time obtained so far is minimized to an external device as a combination of the optimal parameters. An example of the external device is a controller designed to control the robot.

In dem Fall, in dem die Beendigungsbedingung nicht erfüllt ist, benachrichtigt die Beendigungsbedingungsbestimmungseinheit 150 die Zustandsvariablenerfassungseinheit 120 darüber, dass die Beendigungsbedingung nicht erfüllt wurde. In diesem Fall berechnet die Parameterberechnungsvorrichtung 100 Parameter derart neu, dass die Zykluszeit minimiert wird.In the case where the termination condition is not satisfied, the termination condition determination unit 150 notifies the state variable detection unit 120 that the termination condition has not been satisfied. In this case, the parameter calculation device 100 recalculates parameters such that the cycle time is minimized.

<Repetitive Verarbeitung der Einheit zum maschinellen Lernen><Repetitive processing of machine learning unit>

2 ist ein Ablaufdiagramm, das eine Parameterberechnungsprozedur veranschaulicht, die durch die Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform durchgeführt wird. Der Benutzer gibt Lernpunktinformationen (Positionen von einem oder mehreren Lernpunkten) in die Parameterberechnungsvorrichtung 100 ein, um die Anzahl von einzustellenden Parametern zu bestimmen. Die Parameterberechnungsvorrichtung 100 empfängt die Lernpunktinformationen (Schritt S101). Demnach empfängt die Parameterberechnungsvorrichtung 100 die Lernpunktinformationen und speichert die Lernpunktinformationen in der Parameterspeichereinheit 110. 2 14 is a flowchart illustrating a parameter calculation procedure performed by the parameter calculation device according to the first embodiment. The user inputs learning point information (positions of one or more learning points) into the parameter calculation device 100 to determine the number of parameters to be set. The parameter calculation device 100 receives the learning point information (step S101). Thus, the parameter calculation device 100 receives the learning point information and stores the learning point information in the parameter storage unit 110.

Die Parameterspeichereinheit 110 speichert einen oder mehrere Ausgangswerte einer Kombination von Parametern, die bei der Reihe von Bewegungen optimiert werden sollen (Schritt S102). Die Ausgangswerte einer Kombination von Parametern, die in der Parameterspeichereinheit 110 gespeichert werden sollen, können durch den Benutzer in die Parameterberechnungsvorrichtung 100 eingegeben werden oder können durch die Parameterberechnungsvorrichtung 100 von einer anderen Vorrichtung empfangen werden. Es ist zu beachten, dass entweder Schritt S101 oder Schritt S102 zuerst ausgeführt werden kann.The parameter storage unit 110 stores one or more initial values of a combination of parameters to be optimized in the series of movements (step S102). The initial values of a combination of parameters to be stored in the parameter storage unit 110 may be input to the parameter calculation device 100 by the user or may be received by the parameter calculation device 100 from another device. Note that either step S101 or step S102 may be executed first.

Als Nächstes liest die Zustandsvariablenerfassungseinheit 120 die in der Parameterspeichereinheit 110 gespeicherte Kombination von Parametern aus und erfasst eine oder mehrere Zustandsvariablen der Reihe von Bewegungen (Schritt S103). Das heißt, die Zustandsvariablenerfassungseinheit 120 erfasst auf Grundlage des in der Parameterspeichereinheit 110 gespeicherten Parameters die Zustandsvariable jedes Gelenks des Roboters bei einem Probelauf der Reihe von Bewegungen. Die vorliegende Ausführungsform richtet sich auf die Beschreibung eines Falls, in dem die Zustandsvariablen die Verschiebung, Geschwindigkeit und Beschleunigung jedes Gelenks sind.Next, the state variable acquisition unit 120 reads out the combination of parameters stored in the parameter storage unit 110 and acquires one or more state variables of the series of movements (step S103). That is, based on the parameter stored in the parameter storage unit 110, the state variable acquisition unit 120 acquires the state variable of each joint of the robot in a trial run of the series of movements. The present embodiment is directed to the description of a case where the state variables are the displacement, velocity, and acceleration of each joint.

Als Nächstes berechnet die Bewertungseinheit 130 eine Zykluszeit und einen Bewertungswert (Schritt S104). Insbesondere berechnet die Bewertungseinheit 130 mindestens eines von der vorhergesagten Lebensdauer, dem Stromverbrauch und dem Leistungsverbrauch als einen Bewertungswert und berechnet eine Zykluszeit. In der vorliegenden Ausführungsform berechnet die Bewertungseinheit 130, da es sich bei den Zustandsvariablen um die Verschiebung, Geschwindigkeit und Beschleunigung jedes Gelenks handelt, die vorhergesagte Lebensdauer als einen Bewertungswert.Next, the evaluation unit 130 calculates a cycle time and an evaluation value (step S104). Specifically, the evaluation unit 130 calculates at least one of the predicted lifetime, the power consumption, and the power consumption as an evaluation value, and calculates a cycle time. In the present embodiment, since the state variables are the displacement, velocity, and acceleration of each joint, the evaluation unit 130 calculates the predicted life as an evaluation value.

Die Bewertungseinheit 130 bewertet den Bewertungswert, indem sie bestimmt, ob der Bewertungswert die Beschränkungsbedingung erfüllt oder nicht. Als Nächstes bestimmt die Bewertungseinheit 130, ob der Bewertungswert die Beschränkungsbedingung erfüllt oder nicht (Schritt S105). Die Bewertungseinheit 130 sendet der Einheit 140 zum maschinellen Lernen zudem das Ergebnis der Bestimmung davon, ob die Beschränkungsbedingung erfüllt ist oder nicht, die Zykluszeit, die Beschränkungsbedingung und die Parameter, die zur Bewertung verwendet werden.The evaluation unit 130 evaluates the evaluation value by determining whether or not the evaluation value satisfies the constraint condition. Next, the evaluation unit 130 determines whether or not the evaluation value satisfies the constraint condition (step S105). The evaluation unit 130 also sends the machine learning unit 140 the result of determination of whether or not the constraint condition is satisfied, the cycle time, the constraint condition, and the parameters used for evaluation.

Als Reaktion auf die Bestimmung, dass die Beschränkungsbedingung erfüllt ist (Schritt S105: Ja), legt die Einheit 140 zum maschinellen Lernen als einen Kandidaten für eine Kombination der optimalen Parameter eine Kombination fest, durch welche die Zykluszeit unter den Kombinationen von Parametern, welche die Beschränkungsbedingung bisher erfüllt haben, am kürzesten wird. Im Folgenden wird ein Kandidat für die optimalen Parameter zum Zeitpunkt der Festlegung, der durch die Einheit 140 zum maschinellen Lernen festgelegt wird, als optimaler Kandidatenparameter bezeichnet. Ein optimaler Kandidatenparameter wird durch Verbessern eines Parameters derart erhalten, dass die Zykluszeit verkürzt wird. Die mit dem optimalen Kandidatenparameter erhaltene Zykluszeit ist eine minimale Kandidatenzykluszeit. Die Einheit 140 zum maschinellen Lernen aktualisiert die Werte von Parametern, die in der Parameterspeichereinheit 110 gespeichert sind, auf die festgelegte Kombination der optimalen Kandidatenparameter (Schritt S106).In response to determining that the constraint condition is satisfied (step S105: Yes), the machine learning unit 140 sets, as a candidate for a combination of the optimal parameters, a combination by which the cycle time is reduced among the combinations of parameters that the have met the constraint condition so far will be the shortest. Hereinafter, a candidate for the optimal parameters at the time of setting, which is set by the machine learning unit 140, is referred to as an optimal candidate parameter. An optimal candidate parameter is obtained by improving a parameter such that the cycle time is shortened. The cycle time obtained with the optimal candidate parameter is a minimum candidate cycle time. The machine learning unit 140 updates the values of parameters stored in the parameter storage unit 110 to the set combination of the optimal candidate parameters (step S106).

Auf diese Weise berechnet die Einheit 140 zum maschinellen Lernen durch Lernen Parameter, die es ermöglichen, dass der Bewertungswert als ein erstes Bewertungselement und die Zykluszeit als ein zweites Bewertungselement ihre jeweiligen spezifischen Bedingungen erfüllen. In der ersten Ausführungsform ist die spezifische Bedingung, die durch den Bewertungswert erfüllt werden soll, dass die Beschränkungsbedingung zu erfüllen ist, und ist die spezifische Bedingung, die durch die Zykluszeit erfüllt werden soll, dass die Zykluszeit zu verbessern (verkürzen) ist.In this way, the machine learning unit 140 through learning calculates parameters that allow the evaluation value as a first evaluation item and the cycle time as a second evaluation item to satisfy their respective specific conditions. In the first embodiment, the specific condition to be satisfied by the evaluation value is that the constraint condition is to be satisfied, and the specific condition to be satisfied by the cycle time is that the cycle time is to be improved (shortened).

Als Reaktion auf die Bestimmung, dass die Beschränkungsbedingung nicht erfüllt ist (Schritt S105: Nein), erstellt die Einheit 140 zum maschinellen Lernen eine neue Kombination von Parametern gemäß einem Optimierungsalgorithmus (mehrkriterielle Optimierung). Beispiele für den Optimierungsalgorithmus sind eine Partikelschwarmoptimierung, Bayessche Optimierung oder dergleichen (weiter unten beschrieben). Die Einheit 140 zum maschinellen Lernen legt die erstellte neue Kombination von Parametern in der Parameterspeichereinheit 110 fest (Schritt S107).In response to determining that the constraint condition is not satisfied (step S105: No), the unit 140 creates the machine ll learn a new combination of parameters according to an optimization algorithm (multi-criteria optimization). Examples of the optimization algorithm are particle swarm optimization, Bayesian optimization or the like (described further below). The machine learning unit 140 sets the created new combination of parameters in the parameter storage unit 110 (step S107).

Nachdem die Einheit 140 zum maschinellen Lernen die Werte von Parametern, die in der Parameterspeichereinheit 110 gespeichert sind, auf die festgelegte Kombination von optimalen Kandidatenparametern aktualisiert hat, bestimmt die Beendigungsbedingungsbestimmungseinheit 150, ob die Beendigungsbedingung erfüllt ist oder nicht (Schritt S108). Als Reaktion auf die Bestimmung, dass die Beendigungsbedingung erfüllt ist (Schritt S108: Ja), beendet die Parameterberechnungsvorrichtung 100 die Suchverarbeitung nach dem optimalen Parameter. Als Reaktion auf die Bestimmung, dass die Beendigungsbedingung nicht erfüllt ist (Schritt S108: Nein), führt die Einheit 140 zum maschinellen Lernen einen Prozess von Schritt S107 aus. Das heißt, die Einheit 140 zum maschinellen Lernen legt in der Parameterspeichereinheit 110 eine neue Kombination von Parametern fest, die gemäß dem Optimierungsalgorithmus erstellt wird.After the machine learning unit 140 updates the values of parameters stored in the parameter storage unit 110 to the set combination of optimal candidate parameters, the termination condition determination unit 150 determines whether or not the termination condition is satisfied (step S108). In response to the determination that the ending condition is satisfied (step S108: Yes), the parameter calculation device 100 ends the optimal parameter search processing. In response to the determination that the termination condition is not satisfied (step S108: No), the machine learning unit 140 executes a process of step S107. That is, the machine learning unit 140 sets in the parameter storage unit 110 a new combination of parameters made according to the optimization algorithm.

Nach dem Prozess von Schritt S107 kehrt die Parameterberechnungsvorrichtung 100 zu dem Prozess von Schritt S103 zurück und wiederholt den Prozess der Schritte S103 bis S108, bis die Beendigungsbedingung erfüllt ist.After the process of step S107, the parameter calculation device 100 returns to the process of step S103 and repeats the process of steps S103 to S108 until the termination condition is satisfied.

<Vorrichtungskonfiguration zur Verwendung eines Simulators><Device configuration for using a simulator>

3 ist ein Blockdiagramm, das eine erste andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform veranschaulicht. 3 zeigt die Konfiguration einer Parameterberechnungsvorrichtung 100A in dem Fall, in dem das Erfassen einer Zustandsvariable unter Verwendung eines Simulators umgesetzt wird. Komponenten in 3, welche die gleichen Funktionen wie jene der in 1 veranschaulichten Parameterberechnungsvorrichtung 100 erzielen, sind mit den gleichen Bezugszeichen gekennzeichnet und auf deren redundante Beschreibungen wird verzichtet. 3 14 is a block diagram illustrating a first other exemplary configuration of the parameter calculation device according to the first embodiment. 3 12 shows the configuration of a parameter calculation device 100A in the case where detection of a state variable is implemented using a simulator. components in 3 , which has the same functions as those of in 1 parameter calculation apparatus 100 illustrated are denoted by the same reference numerals and redundant descriptions thereof are omitted.

Die Parameterberechnungsvorrichtung 100A, die der ersten anderen beispielhaften Konfiguration der Parameterberechnungsvorrichtung 100 entspricht, beinhaltet eine Zustandsvariablenerfassungseinheit 120A anstelle der Zustandsvariablenerfassungseinheit 120. Die Parameterberechnungsvorrichtung 100A erfasst eine Zustandsvariable unter Verwendung einer Robotersteuerung und eines Simulators, der ein kinetisches Modell des Roboters simuliert. Das heißt, die Zustandsvariablenerfassungseinheit 120A erfasst eine Zustandsvariable durch einen Probelauf einer Reihe von Bewegungen unter Verwendung einer Robotersteuerung und eines Simulators, die ein kinetisches Modell des Roboters simulieren.The parameter calculation device 100A, which corresponds to the first other example configuration of the parameter calculation device 100, includes a state variable acquisition unit 120A instead of the state variable acquisition unit 120. The parameter calculation device 100A acquires a state variable using a robot controller and a simulator that simulates a kinetic model of the robot. That is, the state variable acquisition unit 120A acquires a state variable by trial running a series of movements using a robot controller and a simulator that simulate a kinetic model of the robot.

Die Zustandsvariablenerfassungseinheit 120A beinhaltet eine Befehlserstellungseinheit 121 und eine Bewegungsprobeeinheit 122. Die Befehlserstellungseinheit 121 ist mit der Parameterspeichereinheit 110 und der Beendigungsbedingungsbestimmungseinheit 150 verbunden. Die Bewegungsprobeeinheit 122 ist mit der Befehlserstellungseinheit 121 und der Bewertungseinheit 130 verbunden.The state variable detection unit 120</b>A includes a command creating unit 121 and a movement probing unit 122 . The movement testing unit 122 is connected to the command generation unit 121 and the evaluation unit 130 .

Die Befehlserstellungseinheit 121 liest einen oder mehrere Parameter aus, die in der Parameterspeichereinheit 110 gespeichert sind, und erstellt einen Bewegungsbefehlswert für den Roboter.The command creation unit 121 reads one or more parameters stored in the parameter storage unit 110 and creates a movement command value for the robot.

Die Bewegungsprobeeinheit 122 führt eine Simulation, die auf den Bewegungsbefehlswerten für den Roboter beruht, unter Verwendung eines Simulators durch, der ein kinetisches Modell des Roboters simuliert, und erfasst Zustandsvariablen von Gelenken des Roboters bei der Reihe von Bewegungen aus dem Simulationsergebnis.The motion probing unit 122 performs simulation based on the motion command values for the robot using a simulator that simulates a kinetic model of the robot, and detects state variables of joints of the robot in the series of motions from the simulation result.

Bei der Simulation, die auf den Bewegungsbefehlswerten beruht, kann die Bewegungsprobeeinheit 122 dazu ausgelegt sein, die durch die Befehlserstellungseinheit 121 erstellten Bewegungsbefehlswerte direkt in das kinetische Modell des Roboters einzugeben, oder kann dazu ausgelegt sein, eine spezifische Verarbeitung an den durch die Befehlserstellungseinheit 121 erstellten Bewegungsbefehlswerten auszuführen und dann Ergebnisse der Ausführung darin einzugeben. In diesem Fall gibt die Bewegungsprobeeinheit 122 z. B. die durch die Befehlserstellungseinheit 121 erstellten Bewegungsbefehlswerte durch mindestens eines von einem Filter, das Bewegungsbefehlswerte formt, einem Filter, das ein Vorwärtsregelungssystem simuliert, und einem Filter, das ein Rückführregelungssystem simuliert, und gibt die resultierenden Werte der Filterung in das Modell ein.In the simulation based on the movement command values, the movement probing unit 122 may be configured to directly input the movement command values created by the command creating unit 121 into the kinetic model of the robot, or may be configured to perform specific processing on the ones created by the command creating unit 121 execute motion command values and then input results of execution therein. In this case, the motion testing unit 122 returns e.g. B. passes the movement command values prepared by the command generation unit 121 through at least one of a filter that shapes movement command values, a filter that simulates a feedforward control system, and a filter that simulates a feedback control system, and inputs the resultant values of the filtering into the model.

Obwohl sich 3 auf eine Beschreibung zu einem Beispiel richtet, bei dem Werte, die aus einem kinetischen Modell ausgegeben werden, als Zustandsvariablen der Gelenke erfasst werden, muss die Bewegungsprobeeinheit 122 nicht unbedingt ein kinetisches Modell des Roboters beinhalten. Beispielsweise kann in einem Fall, in dem der durch die Befehlserstellungseinheit 121 erstellte Bewegungsbefehlswert eine Geschwindigkeit jedes Gelenks des Roboters oder einen elektrischen Strom, der verbraucht wird, wenn jedes Gelenk angetrieben wird, darstellt, die Bewegungsprobeeinheit 122 die Bewegungsbefehlswerte, die während des Probelaufs der Reihe von Bewegungen erzeugt werden, unverändert als Zustandsvariablen der Geschwindigkeit oder des Stromverbrauchs des Roboters erfassen.Although himself 3 directed to a description of an example in which values output from a kinetic model are detected as state variables of the joints, the motion probing unit 122 does not necessarily need to include a kinetic model of the robot. For example, in a case where the movement command value created by the command creating unit 121 is a speed of each joint of the robot or an electric Power consumed when each joint is driven, the motion probing unit 122 acquires the motion command values generated during the trial run of the series of motions as they are as state variables of the robot's speed or power consumption.

Darüber hinaus kann die Bewegungsprobeeinheit 122 eine spezifische Verarbeitung an den Bewegungsbefehlswerten ausführen, die durch die Befehlserstellungseinheit 121 während des Probelaufs der Reihe von Bewegungen erstellt werden, und die resultierenden Werte der Ausführung als Zustandsvariablen des Roboters erfassen. In diesem Fall gibt die Bewegungsprobeeinheit 122 z. B. die durch die Befehlserstellungseinheit 121 erstellten Bewegungsbefehlswerte durch mindestens eines von einem Filter, das Bewegungsbefehlswerte formt, einem Filter, das ein Vorwärtsregelungssystem simuliert, und einem Filter, das ein Rückführregelungssystem simuliert, und erfasst die resultierenden Werte der Filterung als Zustandsvariablen des Roboters.In addition, the motion probing unit 122 may perform specific processing on the motion command values created by the command creating unit 121 during the trial run of the series of motions, and capture the resultant values of the execution as state variables of the robot. In this case, the motion testing unit 122 returns e.g. B. passes the movement command values prepared by the command generation unit 121 through at least one of a filter that shapes movement command values, a filter that simulates a feedforward control system, and a filter that simulates a feedback control system, and acquires the resultant values of the filtering as state variables of the robot.

<Definition der Reihe von Bewegungen><definition of the series of movements>

4 ist eine Darstellung zur Erläuterung einer Reihe von Bewegungen eines Roboters gemäß der ersten Ausführungsform. Der Roboter 300 arbeitet gemäß Bewegungsbefehlswerten, die von einer Robotersteuerung 200 ausgegeben werden. Der Benutzer, der die Bewegung des Roboters 300 ausgestaltet, greift den Roboter 300, um ein distales Ende 310 des Roboters 300 zu bewegen, wodurch Lernpunkte P1, P2 und P3 festgelegt werden. Das distale Ende 310 des Roboters 300 in 4 beinhaltet einen Greifmechanismus zum Greifen eines Produkts, bei dem es sich um ein zu beförderndes Objekt handelt. 4 12 is an illustration for explaining a series of movements of a robot according to the first embodiment. The robot 300 operates according to movement command values output from a robot controller 200 . The user designing the movement of the robot 300 grips the robot 300 to move a distal end 310 of the robot 300, thereby setting learning points P1, P2, and P3. The distal end 310 of the robot 300 in 4 includes a gripping mechanism for gripping a product that is an object to be conveyed.

Mit dem Ausdruck „Reihe von Bewegungen“ ist in der vorliegenden Ausführungsform eine Reihe oder Abfolge von Geschwindigkeitsmustern gemeint, die aus einer Vielzahl von Bewegungsabschnitten (Steuerabschnitten) von einem Startpunkt zu einem Endpunkt gebildet ist, wobei eine Geschwindigkeit von null als Grenze angesehen wird. Das heißt, „ein Steuerabschnitt“ in der vorliegenden Ausführungsform ist kein Abschnitt, der durch Aufteilen eines Geschwindigkeitsmusters erhalten wird, bei dem sich die Geschwindigkeit von null erhöht und auf null zurückgeht, sondern bezieht sich auf einen Abschnitt, bei dem sich die Geschwindigkeit von null erhöht und auf null zurückgeht. In einem Fall, in dem durch den Roboter 300 durchgeführte Bewegungen aus einer Bewegung vom Lernpunkt P1 zum Lernpunkt P2, einer Bewegung vom Lernpunkt P2 zum Lernpunkt P3 und einer Bewegung vom Lernpunkt P3 bis zum Lernpunkt P1 gebildet sind, werden diese drei Bewegungen in der vorliegenden Ausführungsform gemeinsam als eine Reihe von Bewegungen bezeichnet. Bei dieser Reihe von Bewegungen legt die Befehlserstellungseinheit 121 den Bewegungsabschnitt vom Lernpunkt P1 zum Lernpunkt P2 als einen Lernabschnitt P1-P2 fest, legt den Bewegungsabschnitt vom Lernpunkt P2 zum Lernpunkt P3 als einen Lernabschnitt P2-P3 fest und legt den Bewegungsabschnitt vom Lernpunkt P3 zum Lernpunkt P1 als einen Lernabschnitt P3-P1 fest.The term "series of movements" in the present embodiment means a series or sequence of speed patterns formed from a plurality of movement sections (control sections) from a starting point to an ending point, with a zero speed being regarded as a limit. That is, “a control section” in the present embodiment is not a section obtained by dividing a speed pattern in which the speed increases from zero and returns to zero, but refers to a section in which the speed changes from zero increases and returns to zero. In a case where movements performed by the robot 300 are composed of a movement from the learning point P1 to the learning point P2, a movement from the learning point P2 to the learning point P3, and a movement from the learning point P3 to the learning point P1, these three movements are used in the present Embodiment collectively referred to as a series of movements. In this series of movements, the command generation unit 121 sets the movement section from the learning point P1 to the learning point P2 as a learning section P1-P2, sets the movement section from the learning point P2 to the learning point P3 as a learning section P2-P3, and sets the movement section from the learning point P3 to the learning point P1 as a session P3-P1.

Für den Lernabschnitt P1-P2 erstellt die Befehlserstellungseinheit 121 auf Grundlage des/der für den Lernabschnitt P1-P2 festgelegten Parameter(s) einen Bewegungsbefehl für jeden Steuerzyklus, in dem sich das distale Ende 310 von dem Lernpunkt P1, d. h. dem Startpunkt, zum Lernpunkt P2, d. h. dem Endpunkt, bewegt.For the learning period P1-P2, the command creating unit 121 creates a movement command for each control cycle in which the distal end 310 moves away from the learning point P1, i.e., based on the parameter(s) set for the learning period P1-P2. H. the starting point, to the learning point P2, i. H. the end point, moved.

Ebenso erstellt die Befehlserstellungseinheit 121 für den Lernabschnitt P2-P3 einen Bewegungsbefehl für jeden Steuerzyklus vom Lernpunkt P2 zum Lernpunkt P3 auf Grundlage der für den Lernabschnitt P2-P3 festgelegten Parameter. Die Befehlserstellungseinheit 121 erstellt zudem für den Lernabschnitt P3-P1 einen Bewegungsbefehl für jeden Steuerzyklus vom Lernpunkt P3 zum Lernpunkt P1 auf Grundlage der für den Lernabschnitt P3-P1 festgelegten Parameter.Also, the command creation unit 121 for the learning portion P2-P3 creates a movement command for each control cycle from the learning point P2 to the learning point P3 based on the parameters set for the learning portion P2-P3. The command creating unit 121 also creates a movement command for the learning portion P3-P1 for each control cycle from the learning point P3 to the learning point P1 based on the parameters set for the learning portion P3-P1.

<Einzustellende Parameter><Parameters to be set>

Wenn die Anzahl von Parametern, die in einem Lernabschnitt eingestellt werden sollen, „m“ ist (m ist eine natürliche Zahl) und die Anzahl von Lernabschnitten, die in einer Reihe von Bewegungen enthalten sind, „n“ ist (n ist eine natürliche Zahl), beträgt die Dimension von Kombinationen von Parametern, die durch die Einheit 140 zum maschinellen Lernen optimiert werden sollen, m × n.When the number of parameters to be set in one session is "m" (m is a natural number) and the number of sessions included in a series of movements is "n" (n is a natural number ), the dimension of combinations of parameters to be optimized by the machine learning unit 140 is m×n.

In der vorliegenden Ausführungsform wird mindestens eine von der maximalen Geschwindigkeit des distalen Endes 310, der Beschleunigung des distalen Endes 310 und der Bereitschaftszeit bis zur nächsten Bewegung des distalen Endes 310 als ein Parameter verwendet, der eingestellt werden soll, um einen Bewegungsbefehlswert zu bestimmen, der für jeden Steuerzyklus in jedem Lernabschnitt erstellt wird. In der folgenden Beschreibung wird die Bereitschaftszeit bis zur nächsten Bewegung des distalen Endes 310 als „Verzögerungszeit“ bezeichnet.In the present embodiment, at least one of the maximum speed of the distal end 310, the acceleration of the distal end 310, and the standby time until the next movement of the distal end 310 is used as a parameter to be set to determine a movement command value that for each control cycle in each session. In the following description, the standby time until the next movement of the distal end 310 is referred to as "delay time".

5 ist ein Diagramm, das ein Beispiel für ein Geschwindigkeitsmuster veranschaulicht, das durch die Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform erstellt wird. 5 zeigt ein Geschwindigkeitsmuster PT1 in einem Lernabschnitt des Roboters, der durch die Parameterberechnungsvorrichtung 100A auf Grundlage der Parameter der maximalen Geschwindigkeit und Beschleunigung erstellt wird. Die horizontale Achse einer in 5 dargestellten Kurve ist die Zeit und die vertikale Achse derselben ist die Geschwindigkeit des distalen Endes 310. 5 FIG. 14 is a diagram illustrating an example of a velocity pattern prepared by the parameter calculation device according to the first embodiment. 5 shows a speed pattern PT1 in a learning section of the robot made by the parameter calculation device 100A based on the parameters of the maximum speed and acceleration. The horizontal axis a in 5 The curve shown is time and the vertical axis thereof is the velocity of the distal end 310.

Die Befehlserstellungseinheit 121 erstellt einen Bewegungsbefehlswert für jedes Gelenk, um das in 5 veranschaulichte Geschwindigkeitsmuster PT1 zu erzielen. Das Geschwindigkeitsmuster PT1 ist aus einem Beschleunigungsabschnitt von einem Zeitpunkt t0 zu einem Zeitpunkt t1, einem konstanten Geschwindigkeitsabschnitt vom Zeitpunkt t1 zu einem Zeitpunkt t2 und einem Bremsabschnitt vom Zeitpunkt t2 zu einem Zeitpunkt t3 gebildet. Ein Zeitraum Tt vom Zeitpunkt t3 zu einem Zeitpunkt t4 ist eine Verzögerungszeit. In 5 entspricht eine Dauer vom Zeitpunkt t0 zum Zeitpunkt t4 einem Lernabschnitt, der durch den Abschnitt TA angegeben ist. Daher ist die Geschwindigkeit v null während eines Zeitraums vom Zeitpunkt t3 zum Zeitpunkt t4 und kann die Befehlserstellungseinheit 121 einen Steuerabschnitt festlegen, wobei die Geschwindigkeit von null als eine Grenze angesehen wird.The command creation unit 121 creates a movement command value for each joint to move the in 5 illustrated velocity pattern PT1. The speed pattern PT1 is composed of an acceleration section from a time t0 to a time t1, a constant speed section from a time t1 to a time t2, and a deceleration section from a time t2 to a time t3. A period Tt from time t3 to time t4 is a delay time. In 5 a duration from time t0 to time t4 corresponds to a learning section indicated by section TA. Therefore, the speed v is zero during a period from time t3 to time t4, and the command making unit 121 can set a control section with the speed of zero taken as a limit.

Die Steigung des Geschwindigkeitsmusters PT1 in dem Beschleunigungsabschnitt ist die Beschleunigung im Beschleunigungsabschnitt und die Steigung des Geschwindigkeitsmusters PT1 in dem Bremsabschnitt ist die Abbremsung im Bremsabschnitt. Die Befehlserstellungseinheit 121 bestimmt die Geschwindigkeit v1 in dem konstanten Geschwindigkeitsabschnitt auf Grundlage des Parameters der maximalen Geschwindigkeit und bestimmt die Beschleunigung = v1 / (t1 - t0) in dem Beschleunigungsabschnitt und die Abbremsung = -v1 / (t3 - t2) in dem Bremsabschnitt unter Verwendung des Beschleunigungsparameters.The slope of the speed pattern PT1 in the acceleration section is the acceleration in the acceleration section, and the slope of the speed pattern PT1 in the deceleration section is the deceleration in the deceleration section. The command generation unit 121 determines the speed v1 in the constant speed section based on the maximum speed parameter, and determines the acceleration=v1/(t1-t0) in the acceleration section and deceleration=-v1/(t3-t2) in the deceleration section using of the acceleration parameter.

Wenn das Stellglied jedes Gelenks des Roboters mit seiner maximal möglichen Geschwindigkeit und Beschleunigung arbeitet, kann in einigen Fällen eine übermäßig große Last auf den Roboter ausgeübt werden. In solchen Fällen kann die Befehlserstellungseinheit 121 die Last im Austausch gegen eine Erhöhung der Zykluszeit verringern, indem einstellbare Parameter für jeden Lernabschnitt eingestellt werden, um die maximale Geschwindigkeit und Beschleunigung zu verringern oder um die Verzögerungszeit zu erhöhen. Infolgedessen kann die Parameterberechnungsvorrichtung 100A die Beschränkungsbedingung der vorhergesagten Lebensdauer bei der gesamten Reihe von Bewegungen erfüllen.In some cases, when the actuator of each joint of the robot is operating at its maximum possible speed and acceleration, an excessively large load may be applied to the robot. In such cases, the command generation unit 121 can reduce the load in exchange for increasing the cycle time by adjusting adjustable parameters for each session to reduce the maximum speed and acceleration or to increase the deceleration time. As a result, the parameter calculation device 100A can satisfy the constraint condition of the predicted lifetime in the entire series of movements.

6 ist ein Diagramm, das ein Beispiel für ein Geschwindigkeitsmuster veranschaulicht, wenn die maximale Geschwindigkeit und eine Beschleunigung in Bezug auf das in 5 veranschaulichte Geschwindigkeitsmuster verringert werden. 6 zeigt ein Geschwindigkeitsmuster PT2, das durch die Parameterberechnungsvorrichtung 100A erstellt wird, welche die maximale Geschwindigkeit und Beschleunigung in Bezug auf das Geschwindigkeitsmuster PT1 verringert. Die horizontale Achse einer in 6 dargestellten Kurve ist die Zeit und die vertikale Achse davon ist die Geschwindigkeit des distalen Endes 310. 6 is a diagram illustrating an example of a speed pattern when the maximum speed and an acceleration with respect to the in 5 illustrated speed patterns are reduced. 6 FIG. 12 shows a speed pattern PT2 created by the parameter calculation device 100A, which reduces the maximum speed and acceleration with respect to the speed pattern PT1. The horizontal axis a in 6 The curve shown is time and the vertical axis of which is the velocity of the distal end 310.

Hierbei ist gemeint, dass das Geschwindigkeitsmuster PT1 und das Geschwindigkeitsmuster PT2 ihre jeweiligen unterschiedlichen Geschwindigkeitsmuster für einen Steuerabschnitt mit der Geschwindigkeit von null als eine Grenze darstellen.Here it is meant that the speed pattern PT1 and the speed pattern PT2 represent their respective different speed patterns for a control section with the speed of zero as a boundary.

Das Geschwindigkeitsmuster PT2 ist aus einem Beschleunigungsabschnitt vom Zeitpunkt t0 zu einem Zeitpunkt t1a, einem konstanten Geschwindigkeitsabschnitt vom Zeitpunkt t1a zu einem Zeitpunkt t2a und einem Bremsabschnitt vom Zeitpunkt t2a zu einem Zeitpunkt t3a gebildet. Die Steigung des Geschwindigkeitsmusters PT2 in dem Beschleunigungsabschnitt entspricht der Beschleunigung im Beschleunigungsabschnitt und die Steigung des Geschwindigkeitsmusters PT2 im Bremsabschnitt entspricht dem Abbremsen im Bremsabschnitt.The speed pattern PT2 is composed of an acceleration section from time t0 to time t1a, a constant speed section from time t1a to time t2a, and a deceleration section from time t2a to time t3a. The slope of the speed pattern PT2 in the acceleration section corresponds to the acceleration in the acceleration section, and the slope of the speed pattern PT2 in the deceleration section corresponds to the deceleration in the deceleration section.

Die Befehlserstellungseinheit 121 verringert die Geschwindigkeit in dem konstanten Geschwindigkeitsabschnitt von v1 auf v2, verringert die Beschleunigung im Beschleunigungsabschnitt und verringert die Abbremsung im Bremsabschnitt. Unter der Annahme, dass die Bewegungsroute vom Startpunkt zum Endpunkt des Lernabschnitts fest ist, ist die Bewegungsgröße jeder Welle des Roboters unveränderlich. Daher erstellt die Befehlserstellungseinheit 121 das Geschwindigkeitsmuster PT2 derart, dass die Fläche eines Trapezes, das durch das Geschwindigkeitsmuster PT2 vom Zeitpunkt t0 zum Zeitpunkt t3a gezeichnet wird, gleich der Fläche eines Trapezes ist, das durch das Geschwindigkeitsmuster PT1 vom Zeitpunkt t0 zum Zeitpunkt t3 gezeichnet wird.The command generation unit 121 decreases the speed in the constant speed section from v1 to v2, decreases the acceleration in the acceleration section, and decreases the deceleration in the deceleration section. Assuming that the moving route from the starting point to the ending point of the session is fixed, the amount of movement of each shaft of the robot is fixed. Therefore, the command generation unit 121 prepares the speed pattern PT2 such that the area of a trapezoid drawn by the speed pattern PT2 from time t0 to time t3a is equal to the area of a trapezoid drawn by the speed pattern PT1 from time t0 to time t3 .

Daher kann die Einheit 140 zum maschinellen Lernen den Differenzbetrag (t3a - t3) > 0 in der Zykluszeit berechnen, die sich aus der Verringern der maximalen Geschwindigkeit und Beschleunigung aus den Parametern der maximalen Geschwindigkeit (Geschwindigkeit v2), Beschleunigung, Abbremsung und Verzögerungszeit, die für das Geschwindigkeitsmuster PT2 festgelegt wurden, ergibt. Es ist zu beachten, dass in einem Fall, in dem der absolute Wert der Beschleunigung und der absolute Wert der Abbremsung gleich sind, die Einheit 140 zum maschinellen Lernen den Differenzbetrag in der Zykluszeit unter Verwendung einer Beschleunigung anstelle einer Abbremsung berechnen kann oder den Differenzbetrag in der Zykluszeit unter Verwendung einer Abbremsung anstelle einer Beschleunigung berechnen kann.Therefore, the machine learning unit 140 can calculate the difference amount (t3a - t3) > 0 in the cycle time resulting from reducing the maximum speed and acceleration from the parameters of the maximum speed (speed v2), acceleration, deceleration and deceleration time, the were set for the speed pattern PT2. Note that in a case where the absolute value of acceleration and the absolute value of deceleration are the same, the machine learning unit 140 calculates the difference amount in the cycle time using a Calculate acceleration instead of deceleration or calculate the difference in cycle time using deceleration instead of acceleration.

Es ist zu beachten, dass die Befehlserstellungseinheit 121 die Geschwindigkeitsmuster PT1 und PT2 unter Verwendung anderer Parameter als der Parameter zum Einstellen der Werte der maximalen Geschwindigkeit und Beschleunigung festlegen kann. Beispielsweise kann die Befehlserstellungseinheit 121 die Geschwindigkeitsmuster PT1 und PT2 unter Verwendung eines Parameters zum Einstellen einer Entspannungsrate in Bezug auf einen oberen Grenzwert der maximalen Geschwindigkeit und eines Parameters zum Einstellen einer Entspannungsrate in Bezug auf einen oberen Grenzwert der Beschleunigung festlegen.Note that the command generation unit 121 may set the speed patterns PT1 and PT2 using parameters other than the parameters for setting the maximum speed and acceleration values. For example, the command generation unit 121 may set the speed patterns PT1 and PT2 using a parameter for setting a relaxation rate with respect to an upper limit of the maximum speed and a parameter for setting a relaxation rate with respect to an upper limit of the acceleration.

Beispielsweise kann die Befehlserstellungseinheit 121 dazu ausgelegt sein, die Entspannungsrate d für die maximale Geschwindigkeit eines Gelenks mit einer maximalen Geschwindigkeit v_max innerhalb des Bereichs von null bis eins einzustellen und die Geschwindigkeitsmuster PT1 und PT2 derart festzulegen, dass die eingestellte maximale Geschwindigkeit (v_max) × (1 - d) ist. Zu diesem Zeitpunkt kann in Bezug auf v_max der im Voraus für jedes Gelenk konzipierte obere Grenzwert der maximalen Geschwindigkeit als v_max angewandt werden. Der im Voraus für jedes Gelenk konzipierte obere Grenzwert der maximalen Geschwindigkeit ist ein Wert, der je nach der Fähigkeit des Stellglieds des Motors, der das Gelenk betätigt, bestimmt wird. Alternativ dazu kann in Bezug auf v_max die in jedem Lernabschnitt erreichbare maximale Geschwindigkeit als v_max angewandt werden.For example, the command generation unit 121 may be configured to set the relaxation rate d for the maximum speed of a joint having a maximum speed v_max within the range from zero to one and set the speed patterns PT1 and PT2 such that the set maximum speed (v_max) × ( 1 - d) is. At this time, with respect to v_max, the maximum speed upper limit designed in advance for each joint can be applied as v_max. The upper limit of the maximum speed designed in advance for each joint is a value determined depending on the capability of the actuator of the motor operating the joint. Alternatively, with respect to v_max, the maximum speed achievable in each session can be applied as v_max.

Die Bewertungseinheit 130 in der vorliegenden Ausführungsform bewertet die Bewertungswerte für die gesamte Reihe von Bewegungen im Ganzen, wobei die Bewertungswerte anhand von durch die Zustandsvariablenerfassungseinheit 120A erfassten Zustandsvariablen berechnet werden. Darüber hinaus können Lernabschnitte, die in der Reihe von Bewegungen enthalten sind, bei denen die Parameter eingestellt werden, um die Zykluszeit unter die Beschränkungsbedingung zu minimieren, durch den Benutzer unter Verwendung einer Robotersprache vorgegeben werden. Der Benutzer kann einige Abschnitte der Bewegungen vorgeben, welche die dem Roboter erteilte Arbeit bilden, und die Parameterberechnungsvorrichtung 100A dazu veranlassen, die Parameter zu optimieren. In diesem Fall gibt der Benutzer in einem in einer Robotersprache erzeugten Programm den Start- und den Endpunkt des Abschnitts vor, in dem eine Parameteroptimierung durchgeführt wird.The evaluation unit 130 in the present embodiment evaluates the evaluation values for the entire series of movements as a whole, the evaluation values being calculated based on state variables detected by the state variable detection unit 120A. In addition, lessons included in the series of moves where the parameters are adjusted to minimize the cycle time under the constraint condition can be specified by the user using a robotic language. The user can specify some portions of the movements that make up the work given to the robot and cause the parameter calculation device 100A to optimize the parameters. In this case, the user specifies in a program generated in a robot language the start and end point of the section in which parameter optimization is performed.

7 ist ein Diagramm zur Erläuterung von Unterschieden zwischen Geschwindigkeitsmustern, die durch die Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform erstellt werden, und Geschwindigkeitsmustern eines Vergleichsbeispiels. 7 wird bereitgestellt, um zu erläutern, dass unter der Beschränkungsbedingung, dass die Auslegungslebensdauer erfüllt werden sollte, eine Bewertung für eine Reihe von Bewegungen eine Lösung mit einer geringeren Zykluszeit als eine Bewertung für eine Bewegung in jedem Lernabschnitt ergeben kann. 7 12 is a diagram for explaining differences between speed patterns prepared by the parameter calculation device according to the first embodiment and speed patterns of a comparative example. 7 is provided to explain that under the constraint that the design lifetime should be met, an evaluation for a series of moves can yield a solution with a lower cycle time than an evaluation for one move in each session.

Die horizontale Achse einer in 7 dargestellten Kurve ist die Zeit und die vertikale Achse davon ist die Geschwindigkeit des distalen Endes 310. Eine Kurve im in 7 veranschaulichten oberen Teil stellt die Geschwindigkeitsmuster des Vergleichsbeispiels dar und eine andere Kurve im in 7 veranschaulichten unteren Teil stellt die durch die Parameterberechnungsvorrichtung 100A erstellten Geschwindigkeitsmuster dar. Auch in diesem Fall werden Lernabschnitte (Steuerabschnitte) mit der Geschwindigkeit von null als eine Grenze festgelegt.The horizontal axis a in 7 The curve shown is time and the vertical axis of which is the velocity of the distal end 310. A curve in FIG 7 The upper part illustrated represents the speed patterns of the comparative example and another curve in FIG 7 The lower part illustrated represents the speed patterns prepared by the parameter calculation device 100A. Also in this case, learning sections (control sections) are set with the speed of zero as a boundary.

Im Fall einer Bewertung für eine Bewegung in jedem Lernabschnitt werden Geschwindigkeitsmuster derart erzeugt, dass die Auslegungslebensdauer in jedem Lernabschnitt erfüllt ist. Beispielsweise werden in einem Fall, in dem die Auslegungslebensdauer 10.000 Stunden beträgt, die Geschwindigkeitsmuster derart erzeugt, dass jeder der Lernabschnitte P1-P2, P2-P3 und P3-P1 eine vorhergesagte Lebensdauer erreicht, die länger als 10.000 Stunden ist. 7 zeigt einen Fall, in dem die Geschwindigkeitsmuster des Vergleichsbeispiels derart erstellt werden, dass jeder der Lernabschnitte P1-P2, P2-P3 und P3-P1 eine vorhergesagte Lebensdauer von 11.000 Stunden erreicht.In the case of an evaluation for a movement in each session, velocity patterns are generated such that the design lifetime is satisfied in each session. For example, in a case where the design life is 10,000 hours, the speed patterns are generated such that each of the learning periods P1-P2, P2-P3, and P3-P1 achieves a predicted life longer than 10,000 hours. 7 FIG. 12 shows a case where the speed patterns of the comparative example are made such that each of the learning periods P1-P2, P2-P3, and P3-P1 achieves a predicted lifetime of 11,000 hours.

In dem Fall, in dem diese Bewertungseinheit 130 für eine Reihe von Bewegungen bewertet wird, kann, selbst wenn die vorhergesagte Lebensdauer, die mit Wiederholungen einer Teilbewegung (Bewegung in einigen der Lernabschnitte) assoziiert ist, kleiner als die Auslegungslebensdauer ist, eine Kombination von Parametern, mit denen die Auslegungslebensdauer durch Wiederholungen der gesamten Reihe von Bewegungen erfüllt werden kann, als ein Kandidat für eine optimale Lösung erkannt werden. Das liegt daran, dass, selbst wenn ein spezifischer Lernabschnitt eine vorhergesagte Lebensdauer aufweist, die kleiner als die Auslegungsdauer ist, die mit der gesamten Reihe von Bewegungen assoziierte vorhergesagte Lebensdauer die Auslegungslebensdauer erfüllen kann, wenn andere Abschnitte eine vorhergesagte Lebensdauer aufweisen, die gleich oder größer als die Auslegungslebensdauer ist. Daher kann die Bewertungseinheit 130 eine Lösung mit einer geringen Zykluszeit soweit erhalten, dass die Auslegungslebensdauer durch Ausgleichsabschnitte (Lernabschnitte), die zur Zykluszeitverringerung bei einer Hochgeschwindigkeitsbewegung beitragen, und Abschnitte (Lernabschnitten), die zur Lebensdauerverbesserung bei einer Niedriggeschwindigkeitsbewegung beitragen, erfüllt wird.In the case where this evaluation unit 130 is evaluated for a series of movements, even if the predicted lifetime associated with repetitions of a partial movement (movement in some of the learning sections) is less than the design lifetime, a combination of parameters , with which the design lifetime can be satisfied by repetitions of the entire series of movements, can be recognized as a candidate for an optimal solution. This is because even if a specific learning segment has a predicted lifetime that is less than the design lifetime, the predicted lifetime associated with the entire series of movements can meet the design lifetime when other segments have predicted lifetimes that are equal to or greater than than the design lifetime. Therefore, the evaluation unit 130 can make a solution obtained with a low cycle time to the extent that the design life is satisfied by balance sections (learning sections) that contribute to cycle time reduction in high-speed movement and sections (learning sections) that contribute to life improvement in low-speed movement.

7 zeigt einen Fall, in dem die Bewertungseinheit 130 Geschwindigkeitsmuster derart erstellt, dass die Lernabschnitte P1-P2, P2-P3 und P3-P1 die vorhergesagten Lebensdauern von 11.000 Stunden, 15.000 Stunden bzw. 7.000 Stunden erreichen. In diesem Fall beträgt die mit der Reihe von Bewegungen assoziierte vorhergesagte Lebensdauer 11.000 Stunden, was gleich der vorhergesagten Lebensdauer bei den Geschwindigkeitsmustern des Vergleichsbeispiels ist, da jedoch die vorhergesagte Lebensdauer durch die Reihe von Bewegungen bewertet wird, kann die Zykluszeit kleiner ausfallen als die des Vergleichsbeispiels. 7 12 shows a case where the evaluation unit 130 prepares speed patterns such that the learning periods P1-P2, P2-P3, and P3-P1 reach the predicted lives of 11,000 hours, 15,000 hours, and 7,000 hours, respectively. In this case, the predicted lifetime associated with the series of movements is 11,000 hours, which is equal to the predicted lifetime in the speed patterns of the comparative example, but since the predicted lifetime is evaluated by the series of movements, the cycle time may be less than that of the comparative example .

<Vorrichtungskonfiguration im Fall der Verwendung einer vorhergesagten Lebensdauer als eine Beschränkungsbedingung><Device configuration in case of using a predicted lifetime as a constraint condition>

8 ist ein Blockdiagramm, das eine zweite andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform veranschaulicht. 8 zeigt die Konfiguration der Parameterberechnungsvorrichtung 100Bb, die dazu ausgelegt ist, eine Beschränkungsbedingung festzulegen, die auf einer Auslegungslebensdauer beruht. Hier wird die Parameterberechnungsvorrichtung 100B zum Festlegen einer Beschränkungsbedingung, die auf einer Auslegungslebensdauer beruht, in Bezug auf die in 3 veranschaulichte Parameterberechnungsvorrichtung 100A beschrieben. Komponenten in 8, welche die gleichen Funktionen wie jene der in 3 veranschaulichten Parameterberechnungsvorrichtung 100A erzielen, sind mit den gleichen Bezugszeichen gekennzeichnet und auf deren redundante Beschreibungen wird verzichtet. 8th 14 is a block diagram illustrating a second other example configuration of the parameter calculation device according to the first embodiment. 8th 12 shows the configuration of the parameter calculation device 100Bb configured to set a constraint condition based on a design lifetime. Here, the parameter calculation device 100B is used to set a constraint condition based on a design lifetime with respect to the FIG 3 Illustrated parameter calculation device 100A will be described. components in 8th , which has the same functions as those of in 3 The parameter calculation device 100A illustrated are denoted by the same reference numerals, and redundant descriptions thereof are omitted.

Die Parameterberechnungsvorrichtung 100B als die zweite andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung 100 beinhaltet eine Bewertungseinheit 130B anstelle der Bewertungseinheit 130. Die Bewertungseinheit 130B beinhaltet eine Kinetikberechnungseinheit 131, eine Beschädigungsmaßberechnungseinheit 132 und eine Beschränkungsbestimmungseinheit 133a. Die Kinetikberechnungseinheit 131 ist mit der Bewegungsprobeeinheit 122 und der Beschädigungsmaßberechnungseinheit 132 verbunden. Die Beschädigungsmaßberechnungseinheit 132 ist mit der Beschränkungsbestimmungseinheit 133a verbunden. Die Beschränkungsbestimmungseinheit 133a ist mit der Einheit 140 zum maschinellen Lernen verbunden.The parameter calculation device 100B as the second other example configuration of the parameter calculation device 100 includes an evaluation unit 130B instead of the evaluation unit 130. The evaluation unit 130B includes a kinetics calculation unit 131, a damage amount calculation unit 132, and a restriction determination unit 133a. The kinetic calculation unit 131 is connected to the movement probing unit 122 and the damage amount calculation unit 132 . The damage amount calculation unit 132 is connected to the restriction determination unit 133a. The constraint determination unit 133a is connected to the machine learning unit 140 .

Die Kinetikberechnungseinheit 131 verwendet die Werte der Verschiebung, Geschwindigkeit und Beschleunigung jedes Gelenks, die durch die Zustandsvariablenerfassungseinheit 120A erfasst werden, um ein Lastdrehmoment zu berechnen, das auf das Gelenk ausgeübt werden soll. Die Beschädigungsmaßberechnungseinheit 132 berechnet ein Beschädigungsmaß des Gelenks des Roboters auf Grundlage des Lastdrehmoments und des Bewegungsgrads jedes Gelenks, um dadurch die vorhergesagte Lebensdauer des Roboters zu berechnen, die mit Wiederholungen der Reihe von Bewegungen assoziiert ist. Der Bewegungsgrad jedes Gelenks ist eine Drehgeschwindigkeit oder ein linearer Bewegungsweg, die durch Umwandlung von einer Geschwindigkeit auf Grundlage der Struktur des Gelenks erhalten wird. Das Beschädigungsmaß einer Komponente (eines Teils) des Roboters ist der Grad der Beschädigung der Komponente des Roboters. Das Beschädigungsmaß einer Komponente des Roboters erhöht sich mit zunehmendem Lastdrehmoment und Bewegungsgrad jedes Gelenks. Eine detaillierte Definition des Beschädigungsmaßes wird weiter unten beschrieben.The kinetic calculation unit 131 uses the values of the displacement, velocity, and acceleration of each joint detected by the state variable detection unit 120A to calculate a load torque to be applied to the joint. The damage amount calculation unit 132 calculates a damage amount of the robot's joint based on the load torque and the movement degree of each joint, to thereby calculate the predicted life of the robot associated with repetitions of the series of movements. The degree of movement of each joint is a rotational speed or a linear movement distance obtained by converting a speed based on the structure of the joint. The degree of damage of a component (part) of the robot is the degree of damage of the component of the robot. The degree of damage to a component of the robot increases with increasing load torque and degree of movement of each joint. A detailed definition of the degree of damage is described below.

Die Beschränkungsbestimmungseinheit 133a bestimmt, ob eine aus der Parameterspeichereinheit 110 ausgelesene Kombination von Parametern die Beschränkungsbedingung für die Reihe von Bewegungen erfüllt oder nicht, unter Verwendung eines Bestimmungsausdrucks, der auf der vorhergesagten Lebensdauer, die durch die Beschädigungsmaßberechnungseinheit 132 berechnet wurde, und der Auslegungslebensdauer beruht. Ein Beispiel für den Bestimmungsausdruck ist ein nachfolgend beschriebener Ausdruck (12).The constraint determination unit 133a determines whether or not a combination of parameters read from the parameter storage unit 110 satisfies the constraint condition for the series of movements using a determination expression based on the predicted life calculated by the damage amount calculation unit 132 and the design life. An example of the determination expression is an expression (12) described below.

<Kinetikberechnung><Kinetic Calculation>

Jedes Gelenk des Roboters ist aus zwei oder mehr Komponenten aufgebaut. Ein Gelenk, dessen Komponente drehbar ist, wird als Drehwelle bezeichnet und ein Gelenk, dessen Komponente linear beweglich ist, wird als Linearbewegungswelle bezeichnet. Die in der Bewertungseinheit 130B enthaltene Kinetikberechnungseinheit 131 berechnet die Größe T_i[k] des auf jedes Gelenk ausgeübten Lastdrehmoments und die Eingangsgeschwindigkeit n_i[k] einer Komponente des Roboters in jedem Steuerzyklus Δt (Einheit: Sekunde) des Roboters. Konkret wandelt die Kinetikberechnungseinheit 131 die Verschiebung, Geschwindigkeit und Beschleunigung jedes Gelenks, die von der Bewegungsprobeeinheit 122 erfasst werden, in eine Verschiebung, Geschwindigkeit und Beschleunigung auf der Ausgangsseite eines Bewegungskraftübertragungsmechanismus jedes Gelenks um, der ein Untersetzungsgetriebe, einen Kugelgewindetrieb und dergleichen beinhaltet. Dann berechnet die Kinetikberechnungseinheit 131 unter Verwendung der durch die Umwandlung erhaltenen Werte die Größe T_i[k] des auf jedes Gelenk ausgeübten Lastdrehmoments und die Eingangsdrehgeschwindigkeit n_i[k] einer Komponente des Roboters. Der tiefergestellte Index „i“ von T_i und n_i gibt an, dass sich der fragliche Wert auf die i-te (i ist eine natürliche Zahl) Achse des Roboters bezieht. Darüber hinaus gibt [k] an, dass der fragliche Wert im k-ten (k ist eine natürliche Zahl ist) Steuerzyklus Δt berechnet wird, wobei die Nummer ab dem Zeitpunkt gezählt wird, zu dem der Zähler in einem Beschädigungsmaßberechnungszyklus (weiter unten beschrieben) zurückgesetzt wird.Each joint of the robot is made up of two or more components. A joint whose component is rotatable is called a rotary shaft, and a joint whose component is linearly movable is called a linear motion shaft. The kinetic calculation unit 131 included in the evaluation unit 130B calculates the magnitude T_i[k] of load torque applied to each joint and the input speed n_i[k] of a component of the robot in each control cycle Δt (unit: second) of the robot. Specifically, the kinetic calculation unit 131 converts the displacement, velocity, and acceleration of each joint detected by the motion sample unit 122 into displacement, velocity, and acceleration on the output side of a motive power transmission mechanism of each joint, which is a subset tion gear, a ball screw and the like includes. Then, using the values obtained by the conversion, the kinetic calculation unit 131 calculates the magnitude T_i[k] of load torque applied to each joint and the input rotational speed n_i[k] of a component of the robot. The subscript "i" of T_i and n_i indicates that the value in question refers to the ith (i is a natural number) axis of the robot. In addition, [k] indicates that the value in question is calculated in the k-th (k is a natural number) control cycle Δt, counting the number from the time the counter in a damage measure calculation cycle (described below) is reset.

<Definition von und Berechnungsverfahren für das Beschädigungsmaß><Definition of and calculation method for degree of damage>

In der vorliegenden Ausführungsform ist das Beschädigungsmaß des Roboters wie folgt definiert, um die vorhergesagte Lebensdauer, die mit Wiederholungen einer Reihe von Bewegungen assoziiert ist, als einen Bewertungswert zu verwenden. Ein Beschädigungsmaß wird als ein Index verwendet, der angibt, wie viel Ermüdung im aktuellen Betriebszustand unter der Annahme anfällt, dass mit dem Erreichen eines „Lebensendes“ gemeint ist, dass es bei einer Komponente des Roboters zu einem Ermüdungsbruch durch sich wiederholende Bewegungen kommt. In der vorliegenden Ausführungsform berechnet die Beschädigungsmaßberechnungseinheit 132 das Beschädigungsmaß einer Komponente q unter Verwendung eines Ausdrucks von (bisheriger kumulierter Wert der Antriebszeit oder kumulierter Wert der Drehgeschwindigkeit der Komponente q) / (Nennlebensdauer oder Nennlebensdauer-äquivalente Drehgeschwindigkeit der Komponente q, die unter den aktuellen Betriebsbedingungen erforderlich ist). Die Nennlebensdauer-äquivalente Drehgeschwindigkeit ist eine Drehgeschwindigkeit, die der Nennlebensdauer entspricht.In the present embodiment, the degree of damage of the robot is defined as follows to use the predicted lifetime associated with repetitions of a series of movements as an evaluation value. A damage measure is used as an index of how much fatigue accumulates in the current operating condition, assuming that reaching “end of life” means that a component of the robot experiences a repetitive motion fatigue failure. In the present embodiment, the damage amount calculation unit 132 calculates the damage amount of a component q using an expression of (past cumulative value of driving time or cumulative value of rotational speed of component q) / (rated life or rated life-equivalent rotational speed of component q, under the current operating conditions is required). The rated life-equivalent rotational speed is a rotational speed equivalent to the rated life.

Da ein Berechnungsausdruck für die Nennlebensdauer oder Nennlebensdauer-äquivalente Drehgeschwindigkeit in Abhängigkeit einer Art der Komponente variiert, wird ein Berechnungsausdruck für ein Beschädigungsmaß für jede Art der Komponenten in der Beschädigungsmaßberechnungseinheit 132 festgelegt. Durch Definieren des Beschädigungsmaßes in der Parameterberechnungsvorrichtung 100B ist es möglich, die gleichen Kriterien zu verwenden, um die vorhergesagten Lebensdauern von zwei oder mehr Komponenten zu bewerten, deren Angaben zur Nennlebensdauer von Hersteller zu Hersteller verschieden sind.Since a calculation expression for the rated life or rated life-equivalent rotational speed varies depending on a kind of the component, a calculation expression for a damage amount is set for each kind of the components in the damage amount calculation unit 132 . By defining the degree of damage in the parameter calculator 100B, it is possible to use the same criteria to evaluate the predicted lives of two or more components that have different life ratings from manufacturer to manufacturer.

In der vorliegenden Ausführungsform berechnet die Beschädigungsmaßberechnungseinheit 132 für jeden Lernabschnitt ein Beschädigungsmaß und legt die Summe der Beschädigungsmaße in allen Lernabschnitten als ein mit der Reihe von Bewegungen assoziiertes Beschädigungsmaß fest. Darüber hinaus kann die Beschädigungsmaßberechnungseinheit 132 das Beschädigungsmaß, das mit der Reihe von Bewegungen assoziiert ist, unter Verwendung des Zeitpunkts, zu dem die gesamte Reihe von Bewegungen abgeschlossen ist, als einen Beschädigungsmaßberechnungszyklus berechnen, bei dem es sich um einen Berechnungszyklus für das Beschädigungsmaß handelt.In the present embodiment, the damage amount calculation unit 132 calculates a damage amount for each session and sets the sum of the damage amounts in all the sessions as a damage amount associated with the series of movements. Moreover, the damage amount calculation unit 132 may calculate the damage amount associated with the series of movements using the point in time when the entire series of movements is completed as a damage amount calculation cycle, which is a damage amount calculation cycle.

Beispielsweise wird in Betracht gezogen, dass das im Beschädigungsmaßberechnungszyklus berechnete Beschädigungsmaß durch Wiederholungen desselben Vorgangs kumuliert wird und der Zeitpunkt, zu dem der kumulierte Wert eins erreicht, als die vorhergesagte Lebensdauer festgelegt wird. Unter der Annahme, dass das Beschädigungsmaß des Roboters als Rlc wiedergegeben wird und die Zykluszeit als tc (Einheit: Sekunden) zu dem Zeitpunkt, zu dem ein Probelauf der Reihe von Bewegungen endet, wiedergegeben wird, kann die Beschädigungsmaßberechnungseinheit 132 den vorhergesagten Lebensdauerwert Lc (Einheit: Zeit) unter Verwendung des folgenden Ausdrucks (1) berechnen. LC = ( tc / 3600 ) / Rlc

Figure DE112019007404T5_0001
For example, it is considered that the damage amount calculated in the damage amount calculation cycle is cumulated by repetitions of the same operation, and the point in time when the cumulative value reaches one is set as the predicted lifetime. Assuming that the damage amount of the robot is represented as Rlc and the cycle time is represented as tc (unit: seconds) at the time when a trial run of the series of movements ends, the damage amount calculation unit 132 can calculate the life predicted value Lc (unit : time) using the following expression (1). LC = ( etc / 3600 ) / Rlc
Figure DE112019007404T5_0001

Unter der Annahme, dass das Beschädigungsmaß der Komponente q der i-ten Achse für eine Ausführung der Reihe von Bewegungen Rlc_i_q ist, kann die Beschädigungsmaßberechnungseinheit 132 den Wert des Beschädigungsmaßes Rlc unter Verwendung des folgenden Ausdrucks (2) berechnen, wobei der Wert bei der Berechnung der vorhergesagten Lebensdauer des gesamten Roboters verwendet werden soll. Rlc = max _ i , q ( Rlc _ i _ q )

Figure DE112019007404T5_0002
Assuming that the damage amount of the i-th axis component q for one execution of the series of movements is Rlc_i_q, the damage amount calculation unit 132 can calculate the value of the damage amount Rlc using the following expression (2), where the value in the calculation of the predicted lifetime of the entire robot should be used. Rlc = Max _ i , q ( Rlc _ i _ q )
Figure DE112019007404T5_0002

Das heißt, von allen Achsen i und Komponenten q verwendet die Beschädigungsmaßberechnungseinheit 132 die Achse, die das größte Beschädigungsmaß aufweist, und ein Beschädigungsmaß der entsprechenden Komponente zur Bewertung des Beschädigungsmaßes des gesamten Roboters.That is, of all the axes i and components q, the damage amount calculation unit 132 uses the axis having the largest damage amount and a damage amount of the corresponding component to evaluate the damage amount of the entire robot.

Die Beschädigungsmaßberechnungseinheit 132 berechnet das Beschädigungsmaß Rl_i[k]_q der Komponente q der i-ten Achse auf Grundlage des mittleren Lastdrehmoments Tav _i[k] und der in jedem spezifizierten Beschädigungsmaßberechnungszyklus t1[k] = k × Δt berechneten mittleren Eingangsdrehgeschwindigkeit Nav _i[k].The damage amount calculation unit 132 calculates the damage amount Rl_i[k]_q of the i-th axis component q based on the average load torque Tav_i[k] and the average input rotational speed Nav_i[k] calculated in each specified damage amount calculation cycle t1[k]=k×Δt ].

Die Beschädigungsmaßberechnungseinheit 132 kann den r-ten (r ist ein Multiplikator, der in Abhängigkeit von der Art der Komponente q variiert) kumulierten Wert des Leistungsdrehmoments Tacc_i[k], den kumulierten Wert der Eingangsdrehgeschwindigkeit Nacc_i[k] und den kumulierten Wert der Antriebszeit tb_i[k] (Einheit: Sekunde) bis zum k-ten Δt jeweils unter Verwendung der folgenden Ausdrücke (3) bis (5) berechnen. Der r-te kumulierte Wert des Leistungsdrehmoments Tacc_i[k] ist ein kumulierter Wert des Drehmoments, das zum Antreiben der Komponente q verwendet wird, wobei sein Drehmomentmultiplikator r ist. Der kumulierte Wert der Eingangsdrehgeschwindigkeit Nacc_i[k] ist ein kumulierter Wert der Eingangsdrehgeschwindigkeit n_i[k] der Komponente q. Der kumulierte Wert der Antriebszeit tb_i[k] ist ein kumulierter Wert der Antriebszeit der Komponente q. Tacc _ i [ k ] = Tacc _ i [ k 1 ] + T _ i [ k ] r × n _ i [ k ] × Δ t , Tacc _ i [ 0 ] = 0

Figure DE112019007404T5_0003
Nacc _ i [ k ] = Nacc _ i [ k 1 ] + n _ i [ k ] × Δ t , Nacc _ i [ 0 ] = 0
Figure DE112019007404T5_0004
tb _ i [ k ] = tb _ i [ k 1 ] + Δ t , tb _ i [ 0 ] = 0
Figure DE112019007404T5_0005
The damage amount calculation unit 132 may calculate the r-th (r is a multiplier used in varies depending on the type of component q) cumulative value of output torque Tacc_i[k], cumulative value of input rotational speed Nacc_i[k], and cumulative value of driving time tb_i[k] (unit: second) up to the k-th Δt, respectively Calculate using the following expressions (3) to (5). The rth cumulative value of output torque Tacc_i[k] is a cumulative value of torque used to drive component q, with its torque multiplier being r. The input rotational speed cumulative value Nacc_i[k] is a cumulative value of the input rotational speed n_i[k] of the q component. The cumulative value of the driving time tb_i[k] is a cumulative value of the driving time of the component q. tacc _ i [ k ] = tacc _ i [ k 1 ] + T _ i [ k ] right × n _ i [ k ] × Δ t , tacc _ i [ 0 ] = 0
Figure DE112019007404T5_0003
Nacc _ i [ k ] = Nacc _ i [ k 1 ] + n _ i [ k ] × Δ t , Nacc _ i [ 0 ] = 0
Figure DE112019007404T5_0004
tb _ i [ k ] = tb _ i [ k 1 ] + Δ t , tb _ i [ 0 ] = 0
Figure DE112019007404T5_0005

Unter Verwendung des kumulierten r-ten Leistungsdrehmomentwerts Tacc_i[k], des kumulierten Eingangsdrehgeschwindigkeitswerts Nacc_i[k] und des kumulierten Antriebszeitwerts tb_i[k], die durch die folgenden Ausdrücke (3) bis (5) wiedergegeben sind, kann die Beschädigungsmaßberechnungseinheit 132 das mittlere Lastdrehmoment Tav_i[k] und die mittlere Eingangsdrehgeschwindigkeit Nav_i[k] mit den folgenden Ausdrücken (6) bzw. (7) berechnen. Das mittlere Lastdrehmoment Tav _i[k] ist ein Mittelwert des Lastdrehmoments und die mittlere Eingangsdrehgeschwindigkeit Nav _i[k] ist ein Mittelwert der Eingangsdrehgeschwindigkeit n_i[k]. Tav _ i [ k ] = ( Tacc _ i [ k ] / Nacc _ i [ k ] ) ( 1 / r )

Figure DE112019007404T5_0006
Nav _ i [ k ] = Nacc _ i [ k ] / tb _ i [ k ]
Figure DE112019007404T5_0007
Using the r-th output torque cumulative value Tacc_i[k], the input rotational speed cumulative value Nacc_i[k], and the driving time cumulative value tb_i[k] represented by the following expressions (3) to (5), the damage amount calculation unit 132 calculates the average Calculate load torque Tav_i[k] and mean input rotational speed Nav_i[k] using the following expressions (6) and (7), respectively. The average load torque Tav_i[k] is an average of the load torque, and the average input rotation speed Nav_i[k] is an average of the input rotation speed n_i[k]. Tav _ i [ k ] = ( tacc _ i [ k ] / Nacc _ i [ k ] ) ( 1 / right )
Figure DE112019007404T5_0006
Nav _ i [ k ] = Nacc _ i [ k ] / tb _ i [ k ]
Figure DE112019007404T5_0007

In einem Fall, in dem die Komponente q ein Untersetzungsgetriebe ist, kann die Beschädigungsmaßberechnungseinheit 132 die Nennlebensdauer Lh_i[k] (Einheit: Zeit) unter aktuellen Betriebsbedingungen unter Verwendung des folgenden Ausdrucks (8) berechnen, wobei das Nenndrehmoment Tr_i, die Nenndrehgeschwindigkeit Nr i und die Nennlebensdauer L10 i (Einheit: Zeit) des Untersetzungsgetriebes als Konstanten festgelegt sind. Darüber hinaus kann die Beschädigungsmaßberechnungseinheit 132 das Beschädigungsmaß Rl_i[k]_(Untersetzungsgetriebe) unter Verwendung des folgenden Ausdrucks (9) berechnen. Lh _ i [ k ] = L 10 _ i × ( Tr _ i / Tav _ i [ k ] ) r × ( Nr _ i / Nav _ i [ k ] )

Figure DE112019007404T5_0008
Rl _ i [ k ] _ ( Untersetzungsgetriebe ) = ( tb_i [ k ] / 3600 ) / L h _ i [ k ]
Figure DE112019007404T5_0009
In a case where the component q is a reduction gear, the damage amount calculation unit 132 can calculate the rated life Lh_i[k] (unit: time) under actual operating conditions using the following expression (8), where the rated torque Tr_i, the rated rotational speed Nr i and the rated life L10 i (unit: time) of the reduction gear are set as constants. Moreover, the damage amount calculation unit 132 can calculate the damage amount Rl_i[k]_(reduction gear) using the following expression (9). Lh _ i [ k ] = L 10 _ i × ( Tr _ i / Tav _ i [ k ] ) right × ( No _ i / Nav _ i [ k ] )
Figure DE112019007404T5_0008
Rl _ i [ k ] _ ( reduction gear ) = ( tb_i [ k ] / 3600 ) / L H _ i [ k ]
Figure DE112019007404T5_0009

In einem Fall, in dem die zu bewertende Komponente ein Lager ist, kann die Beschädigungsmaßberechnungseinheit 132 die Nennlebensdauer-äquivalente Drehgeschwindigkeit Lr_i unter den aktuellen Betriebsbedingungen unter Verwendung des folgenden Ausdrucks (10) mit dem Umwandlungsfaktor u_i von dem mittleren Lastdrehmoment Tav _i[k] in die an der Position des Lagers ausgeübte mittlere Last, der grundlegenden dynamischen Nennlast C i des Lagers, dem Lastfaktor fw_i zur Berücksichtigung der Größe der Vibrationen der Maschine während ihres Betriebs und dem Multiplikator r, der in Abhängigkeit von der Art des/der Wälzkörper(s) in dem Lager variiert, berechnen. Darüber hinaus kann die Beschädigungsmaßberechnungseinheit 132 das Beschädigungsmaß Rl_i[k]_(Lager) unter Verwendung des folgenden Ausdrucks (11) berechnen. Die grundlegende dynamische Nennlast C_i ist eine konstante Last, bei der die Nennlebensdauer, die mit einer spezifischen Drehgeschwindigkeit assoziiert ist, erhalten wird. Lr_i [ k ] = ( C _ i / ( fw _ i × Tav_i [ k ] × u _ i ) ) r × 10 6

Figure DE112019007404T5_0010
Rl_i [ k ] _ ( Larger ) = Nacc_i [ k ] / Lr_i [ k ]
Figure DE112019007404T5_0011
In a case where the component to be evaluated is a bearing, the damage amount calculation unit 132 calculates the rated life-equivalent rotational speed Lr_i under the current operating conditions using the following expression (10) with the conversion factor u_i from the average load torque Tav _i[k] to the mean load exerted at the location of the bearing, the basic basic dynamic load C i of the bearing, the load factor fw_i to take into account the magnitude of the vibrations of the machine during its operation and the multiplier r, which depends on the type of rolling element(s) (s ) varies in the camp. Moreover, the damage amount calculation unit 132 can calculate the damage amount Rl_i[k]_(bearing) using the following expression (11). The basic dynamic rated load C_i is a constant load at which the rated life associated with a specific rotational speed is obtained. Lr_i [ k ] = ( C _ i / ( fw _ i × Tav_i [ k ] × and _ i ) ) right × 10 6
Figure DE112019007404T5_0010
Rl_i [ k ] _ ( larger ) = Nacc_i [ k ] / Lr_i [ k ]
Figure DE112019007404T5_0011

<Erfüllung einer Lebensbeschränkung><fulfillment of a life constraint>

Die Beschränkungsbedingung, dass die vorhergesagte Lebensdauer Lc, die mit Wiederholungen der Reihe von Bewegungen assoziiert ist, nicht kleiner ist als die Auslegungslebensdauer Ls, kann durch den folgenden Ausdruck (12) wiedergegeben werden. LC Ls

Figure DE112019007404T5_0012
The constraint condition that the predicted lifetime Lc associated with repetitions of the series of movements is not smaller than the design lifetime Ls can be represented by the following expression (12). LC Ls
Figure DE112019007404T5_0012

Die Parameterberechnungsvorrichtung 100B kann den folgenden Ausdruck (13) als die Beschränkungsbedingung verwenden. In dem Ausdruck (13) wird ein Wert (a × Ls), der durch Multiplizieren der spezifizierten Auslegungslebensdauer Ls mit einer angegebenen Konstante a erhalten wird, verwendet. LC a × Ls

Figure DE112019007404T5_0013
The parameter calculation device 100B can use the following expression (13) as the constraint condition. In the expression (13), a value (a × Ls) obtained by multiplying the specified design life Ls by a specified constant a is used. LC a × Ls
Figure DE112019007404T5_0013

Wenn die vorhergesagte Lebensdauer, die für die festgelegte Kombination von Parametern berechnet wird, die Beschränkungsbedingung nicht erfüllt, die auf der Auslegungslebensdauer beruht, kann die Bewertungseinheit 130B dem Bewertungswert eine schwere Strafe auferlegen, sodass die Kombination von Parametern, welche die Beschränkung nicht erfüllt, in der Einheit 140 nicht zum maschinellen Lernen übernommen wird.If the predicted life calculated for the specified combination of parameters does not meet the constraint condition based on the design life, the evaluation unit 130B may impose a severe penalty on the evaluation value such that the combination of parameters that does not satisfy the constraint is not adopted in the unit 140 for machine learning.

Beispielsweise kann in einem Fall, in dem die vorhergesagte Lebensdauer kleiner ist als die Auslegungslebensdauer, die Bewertungseinheit 130B einen Bewertungswert von etwa dem 100-Fachen der Zykluszeit ausgeben, die minimiert werden soll, sodass die Kombination von Parametern, welche die Beschränkungsbedingung nicht erfüllt, nicht als eine optimale Lösung zum Zeitpunkt des Abschlusses des Lernens ausgegeben wird.For example, in a case where the predicted lifetime is less than the design lifetime, the evaluation unit 130B may output an evaluation value of about 100 times the cycle time to be minimized so that the combination of parameters that does not meet the constraint condition does not is output as an optimal solution at the time of completion of learning.

<Betrieb der Einheit zum maschinellen Lernen><Operation of the machine learning unit>

Die Einheit 140 zum maschinellen Lernen verwendet die durch die Bewertungseinheit 130B berechneten Bewertungswerte, um derart nach einer Kombination von Parametern zu suchen, dass die Zykluszeit soweit minimiert wird, dass die Beschränkungsbedingung, die auf der Auslegungslebensdauer beruht, erfüllt ist. Wie oben beschrieben, beträgt, wenn die Anzahl von Parametern, die in einem Lernabschnitt eingestellt werden soll, m ist und die Anzahl von Lernabschnitten, die in einer Reihe von Bewegungen enthalten sind, n ist, die Dimension von Kombinationen von Parametern, nach denen durch die Einheit 140 zum maschinellen Lernen gesucht werden sollen, m × n. Als Suchverfahren dafür kann die Einheit 140 zum maschinellen Lernen ein öffentlich bekanntes Verfahren zur mehrkriteriellen Optimierung anwenden, bei dem ein kontinuierlicher Wert oder diskrete Werte verarbeitet werden können. Die Einheit 140 zum maschinellen Lernen kann eine Partikelschwarmoptimierung (PSO), eine Bayessche Optimierung oder dergleichen anwenden.The machine learning unit 140 uses the score values calculated by the score unit 130B to search for a combination of parameters such that the cycle time is minimized to the extent that the constraint condition based on the design lifetime is satisfied. As described above, when the number of parameters to be set in one session is m and the number of sessions included in a series of movements is n, the dimension of combinations of parameters after which by the machine learning unit 140 are to be searched for, m×n. As the search method for this, the machine learning unit 140 may adopt a publicly known multi-objective optimization method, in which a continuous value or discrete values can be processed. The machine learning unit 140 may apply particle swarm optimization (PSO), Bayesian optimization, or the like.

Darüber hinaus kann die Einheit 140 zum maschinellen Lernen als ein öffentlich bekanntes Verfahren zum bestärkenden Lernen zudem das Schauspieler-Kritiker-Verfahren anwenden, das die Auswahl eines kontinuierlichen Werts oder diskreter Werte als eine Aktion, die durch ein Lernsubjekt vorzunehmen ist, und die Berechnung eines Bewertungswerts als Reaktion auf die ausgewählte Aktion ermöglicht. Die Einheit 140 zum maschinellen Lernen führt eine Optimierungsverarbeitung durch, bis die Lernbeendigungsbedingung in der Beendigungsbedingungsbestimmungseinheit 150 erfüllt ist, und aktualisiert die Kombination von Parametern, die in der Parameterspeichereinheit 110 gespeichert ist.In addition, as a publicly known reinforcement learning method, the machine learning unit 140 may also apply the actor-critic method which involves selecting a continuous value or discrete values as an action to be taken by a learning subject and calculating a rating value in response to the selected action. The machine learning unit 140 performs optimization processing until the learning completion condition in the completion condition determination unit 150 is satisfied, and updates the combination of parameters stored in the parameter storage unit 110 .

<Optimierungsbeispiel><optimization sample>

Als ein Optimierungsbeispiel wird ein PSO-basiertes Verfahren beschrieben, das mit Kombinationen von kontinuierlichen Werten arbeitet. Bei einem allgemeinen Partikelschwarmoptimierungsverfahren ist eine Gruppe von N (N ist eine natürliche Anzahl von zwei oder mehr) Partikeln in einem mehrdimensionalen Raum definiert und werden bei jedem Parametersuchprozess die Position p und die Geschwindigkeit v jedes Partikels unter Verwendung der folgenden Ausdrücke (14) bzw. (15) aktualisiert. p p + v

Figure DE112019007404T5_0014
v w × v + c 1 × r 1 × ( pj p ) + c 2 × r 2 × ( pg p )
Figure DE112019007404T5_0015
As an optimization example, a PSO-based method is described that works with combinations of continuous values. In a general particle swarm optimization method, a set of N (N is a natural number of two or more) particles is defined in a multidimensional space, and in each parameter search process, the position p and velocity v of each particle are determined using the following expressions (14) and (15) updated. p p + v
Figure DE112019007404T5_0014
v w × v + c 1 × right 1 × ( pj p ) + c 2 × right 2 × ( pg p )
Figure DE112019007404T5_0015

Hierbei steht w für eine Trägheitskonstante, stehen c1 und c2 für den Anteil von Partikeln, die auf Positionen gerichtet sind, die höhere Bewertungswerte innerhalb der Gruppe aufweisen, und stehen r1 und r2 für Zufallszahlen im Bereich von null bis eins. Darüber hinaus steht pj für die beste Position, die das Partikel je gefunden hat, und steht pg für die beste Position, die je in der gesamten Gruppe gefunden wurde.Where w is an inertia constant, c1 and c2 are the fraction of particles directed to positions that have higher scores within the group, and r1 and r2 are random numbers ranging from zero to one. Furthermore, pj represents the best position ever found by the particle and pg represents the best position ever found in the whole group.

In der vorliegenden Ausführungsform entspricht eine einzustellende Kombination von Parametern der Partikelposition p. Die Parameterberechnungsvorrichtung 100B gibt als eine optimale Lösung die Kombination von Parametern aus, welche die minimale Zykluszeit zu dem Zeitpunkt erreicht hat, bei dem eine spezifizierte Anzahl von Suchen T aufgetreten ist.In the present embodiment, a combination of parameters to be set corresponds to particle position p. The parameter calculation device 100B outputs, as an optimal solution, the combination of parameters that has reached the minimum cycle time at the time a specified number of searches T has occurred.

In einem Fall, in dem die PSO auf die Einheit 140 zum maschinellen Lernen angewandt wird, führt die Parameterberechnungsvorrichtung 100B die Erfassung und Bewertung von Zustandsvariablen einer Reihe von Bewegungen für jedes der N Partikel durch. Die Bewertungseinheit 130B bestimmt, ob die Beschränkungsbedingung für jedes Partikel erfüllt ist oder nicht und bestimmt die Positionen der N Partikel unter Verwendung der Ausdrücke (14) und (15) derart neu, dass das Partikel mit dem besten Bewertungswert der Zykluszeit unter den Partikeln, welche die Beschränkungsbedingung erfüllen, durch andere Partikel angenähert wird.In a case where the PSO is applied to the machine learning unit 140, the parameter calculation device 100B performs the detection and evaluation of state variables of a series of movements for each of the N particles. The evaluation unit 130B determines whether or not the constraint condition is satisfied for each particle and re-determines the positions of the N particles using the expressions (14) and (15) such that the particle with the best evaluation value of the cycle time among the particles which satisfy the constraint condition is approximated by other particles.

<Raffinesse eines Einstellverfahrens für einen Parametersuchbereich><Sophistication of a setting method for a parameter search area>

[Einstellung eines Suchausgangswerts unter Verwendung eines Bewertungswerts für jeden Lernabschnitt][Setting a search seed using an evaluation value for each session]

Die Einheit 140 zum maschinellen Lernen kann den Suchbereich für eine einzustellende Kombination von Parametern unter Verwendung des für jeden Lernabschnitt durch die Beschädigungsmaßberechnungseinheit 132 berechneten Beschädigungsmaßes begrenzen. Im Fall der Verwendung der PSO legt die Einheit 140 zum maschinellen Lernen den Ausgangswert jedes Partikels nicht zufällig fest, sondern kann die Ausgangswerte derart festlegen, dass eine niedrigere Geschwindigkeit und eine niedrigere Beschleunigung in Lernabschnitten mit höheren Beschädigungsmaßen gemäß der Größe der Beschädigungsmaße bei einem Probelauf der Reihe von Bewegungen umgesetzt werden, welche die maximale Geschwindigkeit und die maximale Beschleunigung in allen Lernabschnitten aufweist. Folglich kann die Parameterberechnungsvorrichtung 100B einfach eine Kombination von Parametern finden, durch die sich die vorhergesagte Lebensdauer in Bezug auf die Differenz der Zykluszeit effektiv verbessert und entsprechend die Zykluszeit mit einer kleineren Anzahl von Suchen verringern kann.The machine learning unit 140 may limit the search range for a combination of parameters to be set using the damage degree calculated by the damage degree calculation unit 132 for each learning session. In case of use the PSO, the machine learning unit 140 does not randomly set the initial value of each particle, but may set the initial values such that a lower speed and a lower acceleration are implemented in learning sections with higher damage levels according to the magnitude of the damage levels in a trial run of the series of movements which has the maximum velocity and the maximum acceleration in all sessions. As a result, the parameter calculation device 100B can easily find a combination of parameters that can effectively improve the predicted life with respect to the difference in cycle time and accordingly reduce the cycle time with a smaller number of searches.

[Auswahl eines einzustellenden Lernabschnitts unter Verwendung eines Bewertungswerts für jeden Lernabschnitt][Selecting a session to set using a rating value for each session]

Um die Suchzeit zu verringern, indem die Anzahl von einzustellenden Parametern verringert wird, kann die Einheit 140 zum maschinellen Lernen als ein Einstellungsziel nur die Bewegungen in höherrangigen Lernabschnitten mit höheren Beschädigungsmaßen innerhalb der Reihe von Bewegungen festlegen. Die Einheit 140 zum maschinellen Lernen kann eine Zielbewegung auf Grundlage des Verhältnisses zwischen dem Beschädigungsmaß der Bewegung und einer Zeitdauer der Bewegung in jedem Lernabschnitt bestimmen. Beispielsweise handelt es sich bei einem Lernabschnitt mit einem höheren Beschädigungsmaß um einen Lernabschnitt mit einer größeren Last. Daher wird davon ausgegangen, dass bei einem Lernabschnitt mit einem höheren Beschädigungsmaß ein höherer Nutzen aus einer Lebensdauerverbesserung bei der Reihe von Bewegungen aufgrund einer Verringerung der Geschwindigkeit oder Beschleunigung erreicht werden kann als bei einem Lernabschnitt mit einem niedrigeren Beschädigungsmaß für die gleiche Zeitdauer in Bewegung. Daher kann die Einheit 140 zum maschinellen Lernen als ein Einstellungsziel nur eine höherrangige Bewegung mit einem größeren Verhältnis des Beschädigungsmaßes zur Bewegungszeitdauer festlegen. Es ist zu beachten, dass die Einheit 140 zum maschinellen Lernen einen einzustellenden Lernabschnitt auf Grundlage des Verhältnisses zwischen dem Bewertungswert (Verschiebung, Geschwindigkeit, Beschleunigung oder dergleichen) und der Bewegungszeitdauer in jedem Lernabschnitt bestimmen kann.In order to reduce the search time by reducing the number of parameters to be adjusted, the machine learning unit 140 may set as an adjustment target only the movements in higher-level learning sections with higher damage degrees within the series of movements. The machine learning unit 140 may determine a target movement based on the relationship between the amount of damage of the movement and a period of time of the movement in each learning section. For example, a session with a higher damage level is a session with a larger load. Therefore, it is considered that a session with a higher degree of damage can obtain a higher benefit of durability improvement in the series of movements due to a decrease in speed or acceleration than a session with a lower degree of damage for the same period of time in motion. Therefore, the machine learning unit 140 can set as an adjustment target only a higher-rank movement having a larger ratio of the damage amount to the movement period. It should be noted that the machine learning unit 140 may determine a learning period to be set based on the relationship between the evaluation value (displacement, speed, acceleration, or the like) and the movement time length in each learning period.

Darüber hinaus kann, selbst wenn sämtliche Lernabschnitte eingestellt werden sollen, die Einheit 140 zum maschinellen Lernen als die Ausgangswerte einer Kombination von Parametern Parameter in dem Fall festlegen, in dem nur die Parameter eines höherrangigen Lernabschnitts mit einem höheren Beschädigungsmaß bei der Reihe von Bewegungen eingestellt werden. Überdies kann die Einheit 140 zum maschinellen Lernen einen Lernabschnitt, der mit Ausgangswerten eingestellt werden soll, anhand des Verhältnisses zwischen dem Beschädigungsmaß jeder Bewegung und der Bewegungszeitdauer jeder Bewegung auswählen.Moreover, even if all the lessons are to be set, the machine learning unit 140 can set as the initial values of a combination of parameters parameters in the case where only the parameters of a higher-level lesson having a higher degree of damage in the series of movements are set . Moreover, the machine learning unit 140 can select a learning period to be set with initial values based on the relationship between the damage amount of each movement and the movement time period of each movement.

Wie oben beschrieben, kann die Einheit 140 zum maschinellen Lernen die Bewegungen in sämtlichen Lernabschnitten festlegen, die in der Reihe von Bewegungen als Einstellungsziele enthalten sind, oder kann nur die Bewegung in dem Lernabschnitt festlegen, der durch die Einheit 140 zum maschinellen Lernen auf Grundlage von Bewertungswerten von der Bewertungseinheit 130B als Einstellungsziel ausgewählt wurde. Darüber hinaus kann die Einheit 140 zum maschinellen Lernen nur die Bewegung in dem durch den Benutzer als Einstellungsziel vorgegebenen Lernabschnitt festlegen.As described above, the machine learning unit 140 may set the movements in all the learning sections included in the series of movements as adjustment targets, or may set only the movement in the learning section learned by the machine learning unit 140 based on evaluation values by the evaluation unit 130B as a setting target. In addition, the machine learning unit 140 can set only the movement in the learning section specified by the user as the setting target.

9 ist ein Blockdiagramm, das eine dritte andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform veranschaulicht. 9 zeigt die Konfiguration der Parameterberechnungsvorrichtung 100C zum Festlegen von nur der Bewegung in dem durch den Benutzer als Einstellungsziel vorgegebenen Lernabschnitt. Komponenten in 9, welche die gleichen Funktionen wie jene der in 1 veranschaulichten Parameterberechnungsvorrichtung 100 erzielen, sind mit den gleichen Bezugszeichen gekennzeichnet und auf deren redundante Beschreibungen wird verzichtet. 9 14 is a block diagram illustrating a third other example configuration of the parameter calculation device according to the first embodiment. 9 12 shows the configuration of the parameter calculation device 100C for setting only the movement in the learning section set by the user as the setting target. components in 9 , which has the same functions as those of in 1 parameter calculation apparatus 100 illustrated are denoted by the same reference numerals and redundant descriptions thereof are omitted.

Die Parameterberechnungsvorrichtung 100C als die dritte andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung 100 beinhaltet eine Einstellabschnittspeichereinheit 160 neben den Komponenten der Parameterberechnungsvorrichtung 100. Die Einstellabschnittspeichereinheit 160 speichert den einzustellenden Lernabschnitt, der durch den Benutzer unter Verwendung eines Programmierwerkzeugs eingegeben wird. Die Einstellabschnittspeichereinheit 160 speichert einen Wert, der dem einzustellenden Lernabschnitt entspricht.The parameter calculation device 100C as the third other exemplary configuration of the parameter calculation device 100 includes a setting section storage unit 160 among the components of the parameter calculation device 100. The setting section storage unit 160 stores the learning section to be set, which is input by the user using a programming tool. The setting section storage unit 160 stores a value corresponding to the learning section to be set.

Die Einheit 140 zum maschinellen Lernen liest den in der Einstellabschnittspeichereinheit 160 gespeicherten Wert aus und stellt nur die Parameter des Lernabschnitts ein, der dem ausgelesenen Wert entspricht. Dies bewirkt z. B., wenn es nicht gewünscht ist, die maximale Geschwindigkeit und Beschleunigung in einem bestimmten Lernabschnitt zu verringern, da die Parameterberechnungsvorrichtung 100C eine Einstellung nur in dem vorgegebenen Lernabschnitt durchführen kann, um eine Kombination von Parametern zu finden, welche die Beschränkungsbedingung zu der Reihe von Bewegungen erfüllt. Darüber hinaus kann die Parameterberechnungsvorrichtung 100C die Suchzeit verringern, indem die Anzahl der einzustellenden Parameter verringert wird.The machine learning unit 140 reads the value stored in the setting section storage unit 160 and sets only the parameters of the learning section corresponding to the read value. This causes z. B., when it is not desired to decrease the maximum speed and acceleration in a certain session, since the parameter calculation device 100C can perform adjustment only in the given session to find a combination of parameters that the constraint condition to the series of movements fulfilled. In addition, the parameter calculation The device 100C reduces the search time by reducing the number of parameters to be set.

Wie oben beschrieben, kann die Parameterberechnungsvorrichtung 100C eine Kombination von Parametern erstellen, die verwendet werden kann, um eine Erhöhung der Zykluszeit zu verhindern, während die Beschränkungsbedingung der Auslegungslebensdauer bei der Reihe von Bewegungen des Roboters mit einer kleinen Anzahl von Probeläufen im Vergleich zu dem Fall mit umfangreichen Probeläufen von Kombinationen von Parametern auf Grundlage aller Parameter, die für jeden Lernabschnitt festgelegt wurden, erfüllt wird.As described above, the parameter calculation device 100C can create a combination of parameters that can be used to prevent an increase in the cycle time while satisfying the constraint condition of the design life in the series of movements of the robot with a small number of trial runs compared to the case is met with extensive trial runs of combinations of parameters based on all parameters set for each session.

Darüber hinaus kann die Parameterberechnungsvorrichtung 100C ein Werkzeug beinhalten, das Informationen in Bezug auf die Parametereinstellung visualisiert, während eine Parametereinstellung durch die Einheit 140 zum maschinellen Lernen durchgeführt wird. Bei Informationen in Bezug auf die Parametereinstellung handelt es sich um mindestens einen der Werte von Parametern, die in der Parameterspeichereinheit 110 neu gespeichert sind, die durch die Bewertungseinheit 130 berechnete Zykluszeit und den Bewertungswert der durch die Bewertungseinheit 130 berechneten vorhergesagten Lebensdauer.Moreover, the parameter calculation device 100</b>C may include a tool that visualizes information related to parameter setting while parameter setting is performed by the machine learning unit 140 . Information related to the parameter setting is at least one of the values of parameters newly stored in the parameter storage unit 110 , the cycle time calculated by the evaluation unit 130 , and the evaluation value of the predicted lifetime calculated by the evaluation unit 130 .

10 ist ein Blockdiagramm, das eine vierte andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform veranschaulicht. 10 zeigt die Konfiguration der Parameterberechnungsvorrichtung 100D zum Visualisieren von Informationen, die sich auf eine Parametereinstellung beziehen, während eine Parametereinstellung durchgeführt wird. Komponenten in 10, welche die gleichen Funktionen wie jene der in 1 veranschaulichten Parameterberechnungsvorrichtung 100 erzielen, sind mit den gleichen Bezugszeichen gekennzeichnet und auf deren redundante Beschreibungen wird verzichtet. 11 ist eine Darstellung zur Erläuterung von Informationen, die auf einem Schnittstellenbildschirm durch die Parameterberechnungsvorrichtung aus 10 angezeigt werden. 10 14 is a block diagram illustrating a fourth other example configuration of the parameter calculation device according to the first embodiment. 10 12 shows the configuration of the parameter calculation device 100D for visualizing information related to parameter setting while parameter setting is being performed. components in 10 , which has the same functions as those of in 1 parameter calculation apparatus 100 illustrated are denoted by the same reference numerals and redundant descriptions thereof are omitted. 11 Fig. 14 is an illustration for explaining information displayed on an interface screen by the parameter calculation device 10 are displayed.

Die Parameterberechnungsvorrichtung 100D als die vierte andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung 100 beinhaltet eine Lernfortschrittsvisualisierungseinheit 170 neben den Komponenten der Parameterberechnungsvorrichtung 100. Die Lernfortschrittsvisualisierungseinheit 170 ist mit der Bewertungseinheit 130 und der Einheit 140 zum maschinellen Lernen verbunden. Die Lernfortschrittsvisualisierungseinheit 170 erfasst die Zykluszeit und die vorhergesagte Lebensdauer von der Bewertungseinheit 130 und erfasst einen Wert eines Parameters von der Einheit 140 zum maschinellen Lernen.The parameter calculation device 100D as the fourth other example configuration of the parameter calculation device 100 includes a learning progress visualization unit 170 among the components of the parameter calculation device 100. The learning progress visualization unit 170 is connected to the evaluation unit 130 and the machine learning unit 140. The learning progress visualization unit 170 acquires the cycle time and the predicted lifetime from the evaluation unit 130 and acquires a value of a parameter from the machine learning unit 140 .

Die Lernfortschrittsvisualisierungseinheit 170 zeigt auf einem Schnittstellenbildschirm 500 die von der Bewertungseinheit 130 und der Einheit 140 zum maschinellen Lernen erfassten Informationen an, d. h. Informationen, die sich auf den Status eines Lernfortschritts von Parametern beziehen. Der Schnittstellenbildschirm 500 ist ein Anzeigebildschirm für durch die Lernfortschrittsvisualisierungseinheit 170 ausgegebene Informationen (zu visualisierende Ergebnisse).The learning progress visualization unit 170 displays, on an interface screen 500, the information acquired by the evaluation unit 130 and the machine learning unit 140, i. H. Information related to the status of a learning progress of parameters. The interface screen 500 is a display screen for information (results to be visualized) output by the learning progress visualization unit 170 .

Beispielsweise gibt die Lernfortschrittsvisualisierungseinheit 170 die folgenden Arten von Informationen (A) bis (D) als den Status des Lernfortschritts an den Schnittstellenbildschirm 500 aus.

  1. (A) Bewertungswert (wie etwa einen Bewertungswert der vorhergesagten Lebensdauer jedes Gelenks), der in Schritt S104 aus 2 berechnet wird
  2. (B) Ergebnis der Bestimmung in Schritt S105 aus 2 dahingehend, ob der Bewertungswert der vorhergesagten Lebensdauer die Beschränkungsbedingung erfüllt oder nicht
  3. (C) Beste Kombination von Parametern zum Zeitpunkt der Aktualisierung, die in Schritt S106 aus 2 aktualisiert wurde
  4. (D) Änderung der Zykluszeit mit optimierten Parametern
For example, the learning progress visualization unit 170 outputs the following types of information (A) to (D) to the interface screen 500 as the status of the learning progress.
  1. (A) Evaluation value (such as an evaluation value of the predicted life of each joint) obtained in step S104 2 is calculated
  2. (B) Result of determination in step S105 2 whether or not the predicted lifetime evaluation value satisfies the constraint condition
  3. (C) Best combination of parameters at the time of update selected in step S106 2 has been updated
  4. (D) Change in cycle time with optimized parameters

Der Schnittstellenbildschirm 500 zeigt den Bewertungswert der Reihe von Bewegungen jedes Gelenks, die beste Kombination von Parametern (optimale Parameter), die Zykluszeit und dergleichen an. Dadurch ist es dem Benutzer möglich, den Lernfortschritt zu beobachten und einen Parameter zu erfassen, der stark zum Bewertungswert der Reihe von Bewegungen und der Anzahl der Suchen beiträgt, die für die Einheit 140 zum maschinellen Lernen erforderlich sind, um sie zu einer Lösung zusammenzuführen.The interface screen 500 displays the evaluation value of the series of movements of each joint, the best combination of parameters (optimal parameters), cycle time, and the like. This allows the user to monitor the learning progress and capture a parameter that greatly contributes to the evaluation value of the series of movements and the number of searches required for the machine learning unit 140 to merge them into a solution.

Darüber hinaus kann die Parameterberechnungsvorrichtung 100 eine Funktion zum Ausgeben eines Programms zum Betreiben des Roboters auf Grundlage der Parameter aufweisen, bei denen es sich um Ergebnisse handelt, die durch die Einheit 140 zum maschinellen Lernen eingestellt werden. 12 ist ein Blockdiagramm, das eine fünfte andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der ersten Ausführungsform veranschaulicht. 12 zeigt die Konfiguration der Parameterberechnungsvorrichtung 100E zum Erstellen eines Programms zum Betreiben des Roboters auf Grundlage eingestellter Parameter. Komponenten in 12, welche die gleichen Funktionen wie jene der in 1 veranschaulichten Parameterberechnungsvorrichtung 100 erzielen, sind mit den gleichen Bezugszeichen gekennzeichnet und auf deren redundante Beschreibungen wird verzichtet.In addition, the parameter calculation device 100 may have a function of outputting a program for operating the robot based on the parameters that are results set by the machine learning unit 140 . 12 14 is a block diagram illustrating a fifth other example configuration of the parameter calculation device according to the first embodiment. 12 12 shows the configuration of the parameter calculation device 100E for creating a program for operating the robot based on set parameters. components in 12 , which have the same funk ations like those of in 1 parameter calculation apparatus 100 illustrated are denoted by the same reference numerals and redundant descriptions thereof are omitted.

Die Parameterberechnungsvorrichtung 100E als die fünfte andere beispielhafte Konfiguration der Parameterberechnungsvorrichtung 100 beinhaltet eine Programmerstellungseinheit 180 neben den Komponenten der Parameterberechnungsvorrichtung 100. Die Programmerstellungseinheit 180 ist mit der Beendigungsbedingungsbestimmungseinheit 150 verbunden.The parameter calculation device 100</b>E as the fifth other exemplary configuration of the parameter calculation device 100 includes a program creation unit 180 among the components of the parameter calculation device 100 .

Die Programmerstellungseinheit 180 erfasst eine optimale Kombination von Parametern von der Beendigungsbedingungsbestimmungseinheit 150 zu dem Zeitpunkt, zu dem die Beendigungsbedingungsbestimmungseinheit 150 bestimmt, dass die Beendigungsbedingung der Parametereinstellung erfüllt wurde. Die optimale Kombination von Parametern, die von der Beendigungsbedingungsbestimmungseinheit 150 durch die Programmerstellungseinheit 180 erfasst werden, ist die Kombination von Parametern, die in der Parameterspeichereinheit 110 gespeichert ist.The program creating unit 180 acquires an optimal combination of parameters from the completion condition determination unit 150 at the time when the completion condition determination unit 150 determines that the completion condition of the parameter setting has been satisfied. The optimal combination of parameters acquired from the ending condition determination unit 150 by the program creating unit 180 is the combination of parameters stored in the parameter storage unit 110 .

Die Programmerstellungseinheit 180 erstellt ein Programm, um den Roboter dazu zu veranlassen, die Reihe von Bewegungen mit den Bewegungsbefehlswerten durchzuführen, die auf den erfassten Parametern beruhen. Das durch die Programmerstellungseinheit 180 erstellte Programm wird in einer Programmiersprache beschrieben, die durch den Benutzer zum Betreiben des Roboters verwendet wird. Die Programmerstellungseinheit 180 gibt das erstellte Programm an eine externe Vorrichtung (z. B. eine Steuerung, die dazu ausgelegt ist, den Roboter zu steuern) aus. Infolgedessen kann der Benutzer das optimale Programm für die Reihe von Bewegungen des Roboters erhalten.The program creation unit 180 creates a program to cause the robot to perform the series of movements with the movement command values based on the detected parameters. The program created by the program creation unit 180 is described in a programming language used by the user to operate the robot. The program creation unit 180 outputs the created program to an external device (e.g., a controller configured to control the robot). As a result, the user can get the optimal program for the series of movements of the robot.

Im Übrigen kann eine Teiloptimierung auf Grundlage einer Parametereinstellung an einem Geschwindigkeitsmuster keine Lösung erzeugen, welche die Beschränkungsbedingung erfüllt, die für die gesamte Reihe von Bewegungen erforderlich ist, die eine Vielzahl von Geschwindigkeitsmustern beinhaltet. Im Gegensatz dazu wird in der vorliegenden Ausführungsform eine Gesamtoptimierung auf Grundlage einer Parametereinstellung an einer Reihe von Bewegungen durchgeführt, die eine Vielzahl von Geschwindigkeitsmustern beinhaltet. Daher ist es in der vorliegenden Ausführungsform möglich, eine Lösung zu erhalten, welche die Beschränkungsbedingung erfüllt, die für die gesamte Reihe von Bewegungen erforderlich ist, und die Zykluszeit verkürzt.Incidentally, a partial optimization based on a parameter adjustment on a velocity pattern cannot produce a solution that satisfies the constraint condition required for the entire series of motions involving a plurality of velocity patterns. In contrast, in the present embodiment, overall optimization based on parameter adjustment is performed on a series of motions that includes a variety of velocity patterns. Therefore, in the present embodiment, it is possible to obtain a solution that satisfies the constraint condition required for the entire series of movements and shortens the cycle time.

Zudem gibt es ein Verfahren zum Erstellen eines Betriebsprogramms, das Bewertungskriterien erfüllt, indem die Sollgeschwindigkeit und die Sollbeschleunigung zu einem bestimmten Zeitpunkt um einen vorgegebenen Betrag verringert werden. Zudem stellt bei diesem Verfahren die gesamte Reihe von Bewegungen keinen zu bewertenden Gegenstand dar und ist es somit unmöglich, eine optimale Lösung zu erzeugen, welche die Beschränkungsbedingung erfüllt, die für die gesamte Reihe von Bewegungen erforderlich ist.There is also a method for creating an operating program that satisfies evaluation criteria by reducing the target speed and the target acceleration by a predetermined amount at a specific point in time. In addition, with this method, the entire series of motions is not an object to be evaluated, and thus it is impossible to generate an optimal solution that satisfies the constraint condition required for the entire series of motions.

Zudem gibt es ein Verfahren zum Bewerten der Lebensdauer eines Maschinenelements, indem das Drehmoment und die Bewegungsgeschwindigkeit, die auf das Maschinenelement einwirken, anhand der Gelenkverschiebung, Geschwindigkeit und Beschleunigung des Roboters berechnet werden, und gleichmäßigen Verringern der Geschwindigkeit und Beschleunigung der Reihe von Bewegungen unter Verwendung des Verhältnisses zwischen der Ziellebensdauer und der bewerteten Lebensdauer. Bei diesem Verfahren ist es nicht möglich, eine Gesamtoptimierung durchzuführen, bei der die Bewegungsgeschwindigkeit und die Beschleunigung mit einer von einem Steuerabschnitt zum nächsten variierenden Rate eingestellt werden. Im Gegensatz dazu kann in der vorliegenden Ausführungsform, da der Beitrag zum Beschädigungsmaß und dergleichen bei der Reihe von Bewegungen für jeden Steuerabschnitt berücksichtigt wird, eine Gesamtoptimierung unter Verwendung der vorhergesagten Lebensdauer erreicht werden, die anhand des Beschädigungsmaßes und dergleichen als eine Beschränkungsbedingung berechnet wird.In addition, there is a method of evaluating the durability of a machine element by calculating the torque and moving speed acting on the machine element from the joint displacement, speed and acceleration of the robot, and uniformly reducing the speed and acceleration of the series of movements using the ratio between the target lifetime and the evaluated lifetime. With this method, it is not possible to perform an overall optimization in which the moving speed and the acceleration are adjusted at a varying rate from one control section to the next. In contrast, in the present embodiment, since the contribution to the damage amount and the like is taken into account in the series of movements for each control section, overall optimization can be achieved using the predicted lifetime calculated from the damage amount and the like as a constraint condition.

Wie oben beschrieben, sucht in der ersten Ausführungsform die Einheit 140 zum maschinellen Lernen nach einer Kombination von Parametern derart, dass die Zykluszeit der Reihe von Bewegungen soweit minimiert wird, dass die Beschränkungsbedingung einer Lebensdauer, die mit Wiederholungen der Reihe von Bewegungen assoziiert ist, erfüllt wird. Daher können die Parameterberechnungsvorrichtungen 100 und 100A bis 100E eine Erhöhung der Zykluszeit verhindern, während sie die Beschränkungsbedingung für eine Lebensdauer für eine ganze Reihe von Bewegungen des Roboters erfüllen. Infolgedessen kann der Roboter leicht mit Vielfalt und Produktion variabler Mengen zurechtkommen. Darüber hinaus kann der Roboter die Betriebsgeschwindigkeit gemäß seiner Zielarbeit erhöhen und somit die Produktivität verbessern. Als eine Grenze wird die Geschwindigkeit von null verwendet, sodass ein Bewegungsgang in einem Steuerabschnitt abgeschlossen ist, und in dieser Situation wird, wenn eine Optimierung für eine Reihe von Bewegungen umgesetzt werden kann, die aus der Kumulierung von zwei oder mehr von einem solchen Steuerabschnitt gebildet sind, eine Gesamtoptimierung durch die gesamte Arbeit erreicht. Demnach ist es möglich, eine Gesamtoptimierung zu erreichen, bei der sowohl eine Beschränkungsbedingung für eine Reihe von Bewegungen als auch die Zykluszeit für die Reihe von Bewegungen ihre jeweiligen spezifischen Bedingungen erfüllen.As described above, in the first embodiment, the machine learning unit 140 searches for a combination of parameters such that the cycle time of the series of movements is minimized to the extent that the constraint condition of a lifetime associated with repetitions of the series of movements is satisfied will. Therefore, the parameter calculation devices 100 and 100A to 100E can prevent an increase in the cycle time while satisfying the constraint condition on a lifetime for a whole series of movements of the robot. As a result, the robot can easily cope with variety and variable-quantity production. In addition, the robot can increase the operation speed according to its target work, thus improving productivity. As a limit the speed of zero is used so that a movement walk is completed in a control section, and in this situation if an optimization can be implemented for a series of movements formed from the cumulation of two or more from such a control section are, an overall optimization through the entire work accomplished. Accordingly, it is possible to achieve an overall optimization in which both a constraint condition for a series of moves and the cycle time for the series of moves satisfy their respective specific conditions.

Zweite Ausführungsform.Second embodiment.

Als Nächstes wird die zweite Ausführungsform der vorliegenden Erfindung unter Bezugnahme auf die 13 und 14 beschrieben. In der zweiten Ausführungsform erfasst die Zustandsvariablenerfassungseinheit 120A einen elektrischen Stromwert, der beim Antreiben jedes Gelenks verbraucht wird, als eine Zustandsvariable und berechnet die Bewertungseinheit als einen Bewertungswert einen elektrischen Stromverbrauch oder einen elektrischen Leistungsverbrauch beim Antreiben für eine Reihe von Bewegungen der Gelenke. Die Lerneinheit erlernt Parameter derart, dass die Zykluszeit verbessert wird, während der Bewertungswert des Stromverbrauchs oder des Leistungsverbrauchs die Beschränkungsbedingung bei der Reihe von Bewegungen erfüllt, und sucht nach optimalen Parametern derart, dass die Zykluszeit minimiert wird.Next, the second embodiment of the present invention will be described with reference to FIG 13 and 14 described. In the second embodiment, the state variable acquisition unit 120A acquires an electric current value consumed in driving each joint as a state variable, and the evaluation unit calculates, as an evaluation value, electric current consumption or electric power consumption in driving for a series of movements of the joints. The learning unit learns parameters so that the cycle time is improved while the evaluation value of current consumption or power consumption satisfies the constraint condition in the series of movements, and searches for optimal parameters so that the cycle time is minimized.

<Vorrichtungskonfiguration zur Verwendung des Stromverbrauchs als eine Beschränkungsbedingung><Device configuration using power consumption as a constraint condition>

13 ist ein Blockdiagramm, das eine erste beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der zweiten Ausführungsform veranschaulicht. Komponenten in 13, welche die gleichen Funktionen wie jene der in 8 veranschaulichten Parameterberechnungsvorrichtung 100B gemäß der ersten Ausführungsform erzielen, sind mit den gleichen Bezugszeichen gekennzeichnet und auf deren redundante Beschreibungen wird verzichtet. 13 14 is a block diagram illustrating a first example configuration of the parameter calculation device according to the second embodiment. components in 13 , which has the same functions as those of in 8th Illustrated parameter calculation device 100B according to the first embodiment are denoted by the same reference numerals and redundant descriptions thereof are omitted.

Die Parameterberechnungsvorrichtung 100F berechnet einen elektrischen Stromverbrauch jeder Komponente bei einer Reihe von Bewegungen des Roboters. Ein Beispiel für eine Komponente des Roboters ist ein Gelenk, das mit einem Stellglied ausgestattet ist. Die Parameterberechnungsvorrichtung 100F berechnet den Stromverbrauch eines Stellglieds bei der Reihe von Bewegungen des Roboters als den Stromverbrauch einer Komponente des Roboters und erstellt Parameter derart, dass die Beschränkungsbedingung, die auf Grundlage der Obergrenze für den Stromverbrauch festgelegt ist, erfüllt wird. Es ist zu beachten, dass die Parameterberechnungsvorrichtung 100F dazu ausgelegt sein kann, den Stromverbrauch einer anderen Komponente oder anderer Komponenten als eines Stellglieds zu berechnen, mit der bzw. denen ein Roboter ausgestattet ist, und Parameter derart zu erstellen, dass die Beschränkungsbedingung, die auf Grundlage der Obergrenze für den Stromverbrauch festgelegt ist, erfüllt wird.The parameter calculation device 100F calculates electric power consumption of each component in a series of movements of the robot. An example of a component of the robot is a joint equipped with an actuator. The parameter calculation device 100F calculates the power consumption of an actuator in the series of movements of the robot as the power consumption of a component of the robot, and prepares parameters such that the restriction condition set based on the power consumption upper limit is satisfied. It should be noted that the parameter calculation device 100F may be configured to calculate the power consumption of a component or components other than an actuator that a robot is equipped with and to prepare parameters such that the constraint condition imposed on based on the upper limit for electricity consumption is met.

Im Vergleich zu der Parameterberechnungsvorrichtung 100B beinhaltet die Parameterberechnungsvorrichtung 100F eine Bewertungseinheit 130F anstelle der Bewertungseinheit 130B. Die Bewertungseinheit 130F beinhaltet eine Stromverbrauchsberechnungseinheit 134 und eine Beschränkungsbestimmungseinheit 135a.Compared to the parameter calculation device 100B, the parameter calculation device 100F includes an evaluation unit 130F instead of the evaluation unit 130B. The evaluation unit 130F includes a power consumption calculation unit 134 and a restriction determination unit 135a.

Die Stromverbrauchsberechnungseinheit 134 ist mit der Bewegungsprobeeinheit 122 und der Beschränkungsbestimmungseinheit 135a verbunden und die Beschränkungsbestimmungseinheit 135a ist mit der Einheit 140 zum maschinellen Lernen verbunden. Die Stromverbrauchsberechnungseinheit 134 berechnet den Stromverbrauch bei der Reihe von Bewegungen unter Verwendung des Stromverbrauchswerts des Stellglieds jedes Gelenks, der von der Zustandsvariablenerfassungseinheit 120A erfasst wird.The power consumption calculation unit 134 is connected to the motion probing unit 122 and the constraint determination unit 135 a , and the constraint determination unit 135 a is connected to the machine learning unit 140 . The power consumption calculation unit 134 calculates the power consumption in the series of movements using the power consumption value of the actuator of each joint detected by the state variable detection unit 120A.

Die Stromverbrauchsberechnungseinheit 134 berechnet einen Stromverbrauch für jeden Lernabschnitt und legt die Summe des Stromverbrauchs in den Lernabschnitten als einen Stromverbrauch fest, der mit der Reihe von Bewegungen assoziiert ist. Darüber hinaus kann die Stromverbrauchsberechnungseinheit 134 den Stromverbrauch, der mit der Reihe von Bewegungen assoziiert ist, unter Verwendung des Zeitpunkts, zu dem die gesamte Reihe von Bewegungen endet, für einen Stromverbrauchsberechnungszyklus, d. h. einen Berechnungszyklus für einen Stromverbrauch, berechnen.The power consumption calculation unit 134 calculates a power consumption for each session and sets the sum of the power consumption in the sessions as a power consumption associated with the series of movements. Furthermore, the power consumption calculation unit 134 can calculate the power consumption associated with the series of movements using the point in time at which the entire series of movements ends for one power consumption calculation cycle, i. H. a calculation cycle for a power consumption.

Die Stromverbrauchsberechnungseinheit 134 berechnet einen Wert I-i[k], bei dem es sich um einen Effektivwert handelt, der durch Umwandeln des durch die Zustandsvariablenerfassungseinheit 120A erfassten Stromwerts in jedem Steuerzyklus Δt (Einheit: Sekunde) des Roboters erhalten wird. Die Stromverbrauchsberechnungseinheit 134 berechnet den kumulierten Stromverbrauchswert Iacc_i[k] der i-ten Achse in dem Stromverbrauchsberechnungszyklus t2[k] = k × Δt unter Verwendung des folgenden Ausdrucks (16). Der kumulierte Stromverbrauchswert Iacc_i[k] ist ein kumulativer Wert des Stromverbrauchs, wenn das Stellglied angetrieben wird. Iacc_i [ k ] = Iacc_i [ k 1 ] + I_i [ k ] × Δ t , Iacc_i [ 0 ] = 0

Figure DE112019007404T5_0016
The power consumption calculation unit 134 calculates a value Ii[k], which is an effective value obtained by converting the current value detected by the state variable detection unit 120A in each control cycle Δt (unit: second) of the robot. The power consumption calculation unit 134 calculates the cumulative power consumption value Iacc_i[k] of the i-th axis in the power consumption calculation cycle t2[k]=k×Δt using the following expression (16). The cumulative power consumption value Iacc_i[k] is a cumulative value of power consumption when the actuator is driven. Iacc_i [ k ] = Iacc_i [ k 1 ] + I_i [ k ] × Δ t , Iacc_i [ 0 ] = 0
Figure DE112019007404T5_0016

Die Beschränkungsbestimmungseinheit 135a bestimmt, ob eine Kombination von Parametern, die aus der Parameterspeichereinheit 110 ausgelesen wird, die Beschränkungsbedingung für die Reihe von Bewegungen erfüllt oder nicht, unter Verwendung eines Bestimmungsausdrucks, der auf dem Stromverbrauch bei der Reihe von Bewegungen, der durch die Stromverbrauchsberechnungseinheit 134 berechnet wird, und der Obergrenze für den Stromverbrauch beruht. Unter der Annahme, dass der kumulierte Stromverbrauchswert Iacc_i[k] der i-ten Achse in der gesamten Reihe von Bewegungen Ic_i ist und die Obergrenze für den Stromverbrauch der i-ten Achse Is_i ist, kann die Beschränkungsbedingung, dass der kumulierte Stromverbrauchswert Iacc_i[k] der i-ten Achse die Obergrenze für den Stromverbrauch der i-ten Achse nicht überschreiten sollte, durch den folgenden Ausdruck (17) ausgedrückt werden. In diesem Fall kann als die Obergrenze für den Stromverbrauch Is_i der Wert der Obergrenze für den Stromverbrauch, der für die Verwendung des Roboters im tatsächlichen Produktionsprozess erforderlich ist, festgelegt werden. Alternativ dazu kann der obere Grenzwert für den Stromverbrauch, der durch den Benutzer über eine Schnittstelle festgelegt wird, wenn der Benutzer die Reihe von Bewegungen des Roboters ausgestaltet, als Is_i angewandt werden. Ic _ i Is _ i

Figure DE112019007404T5_0017
The restriction determination unit 135a determines whether a combination of parameters read out from the parameter storage unit 110 satisfies the restriction condition for the Series of motions satisfied or not, using a determination expression based on the power consumption in the series of motions calculated by the power consumption calculation unit 134 and the power consumption upper limit. Assuming that the cumulative power consumption value Iacc_i[k] of the i-th axis in the entire series of movements is Ic_i and the upper limit of the power consumption of the ith axis is Is_i, the constraint condition that the cumulative power consumption value Iacc_i[k ] of the i-th axis should not exceed the upper limit current consumption of the i-th axis can be expressed by the following expression (17). In this case, as the power consumption upper limit Is_i, the value of the power consumption upper limit required for using the robot in the actual production process can be set. Alternatively, the power consumption upper limit set by the user via an interface when the user designs the series of movements of the robot may be applied as Is_i. IC _ i is _ i
Figure DE112019007404T5_0017

<Vorrichtungskonfiguration im Fall der Verwendung eines Leistungsverbrauchs als eine Beschränkungsbedingung><Device configuration in case of using power consumption as a constraint condition>

14 ist ein Blockdiagramm, das eine zweite beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der zweiten Ausführungsform veranschaulicht. Komponenten in 14, welche die gleichen Funktionen wie jene der in 13 veranschaulichten Parameterberechnungsvorrichtung 100F erzielen, sind mit den gleichen Bezugszeichen gekennzeichnet und auf deren redundante Beschreibungen wird verzichtet. 14 14 is a block diagram illustrating a second example configuration of the parameter calculation device according to the second embodiment. components in 14 , which has the same functions as those of in 13 The parameter calculation device 100F illustrated are denoted by the same reference numerals, and redundant descriptions thereof are omitted.

Die Parameterberechnungsvorrichtung 100G berechnet den Leistungsverbrauch des Stellglieds jedes Gelenks bei der Reihe von Bewegungen des Roboters und erstellt Parameter derart, dass die Beschränkungsbedingung, die auf Grundlage der Obergrenze für den Leistungsverbrauch festgelegt ist, erfüllt wird. Es ist zu beachten, dass die Parameterberechnungsvorrichtung 100G dazu ausgelegt sein kann, einen elektrischen Leistungsverbrauch einer anderen Komponente oder anderer Komponenten als eines Stellglieds zu berechnen, mit der bzw. denen ein Roboter ausgestattet ist, und Parameter derart zu erstellen, dass die Beschränkungsbedingung, die auf Grundlage der Obergrenze für den Leistungsverbrauch festgelegt ist, erfüllt wird.The parameter calculation device 100G calculates the power consumption of the actuator of each joint in the series of movements of the robot, and sets parameters such that the constraint condition set based on the upper limit of the power consumption is satisfied. It should be noted that the parameter calculation device 100G may be configured to calculate electric power consumption of a component or components other than an actuator that a robot is equipped with and to prepare parameters such that the constraint condition that based on the power consumption upper limit is satisfied.

Im Vergleich zu der Parameterberechnungsvorrichtung 100G beinhaltet die Parameterberechnungsvorrichtung 100F eine Bewertungseinheit 130G anstelle der Bewertungseinheit 130F. Die Bewertungseinheit 130G beinhaltet eine Leistungsverbrauchsberechnungseinheit 136 und eine Beschränkungsbestimmungseinheit 137a.Compared to the parameter calculation device 100G, the parameter calculation device 100F includes an evaluation unit 130G instead of the evaluation unit 130F. The evaluation unit 130G includes a power consumption calculation unit 136 and a restriction determination unit 137a.

Die Leistungsverbrauchsberechnungseinheit 136 ist mit der Bewegungsprobeeinheit 122 und der Beschränkungsbestimmungseinheit 137a verbunden und die Beschränkungsbestimmungseinheit 137a ist mit der Einheit 140 zum maschinellen Lernen verbunden. Die Leistungsverbrauchsberechnungseinheit 136 berechnet den Leistungsverbrauch bei der Reihe von Bewegungen unter Verwendung des Leistungsverbrauchswerts des Stellglieds jedes Gelenks, der von der Zustandsvariablenerfassungseinheit 120A erfasst wird.The power consumption calculation unit 136 is connected to the motion probing unit 122 and the constraint determination unit 137a, and the constraint determination unit 137a is connected to the machine learning unit 140. The power consumption calculation unit 136 calculates the power consumption in the series of movements using the power consumption value of the actuator of each joint detected by the state variable detection unit 120A.

Die Leistungsverbrauchsberechnungseinheit 136 berechnet den kumulierten Stromverbrauchswert Iacc_i[k] auf die gleiche Weise wie die Stromverbrauchsberechnungseinheit 134. Ferner berechnet die Leistungsverbrauchsberechnungseinheit 136 den kumulierten Leistungsverbrauchswert Wacc_i[k] unter Verwendung des mit dem Ausdruck (16) berechneten kumulierten Stromverbrauchswert Iacc_i[k] und einer Nennspannung V i. Das heißt, die Leistungsverbrauchsberechnungseinheit 136 berechnet den kumulierten Leistungsverbrauchswert Wacc_i[k] unter Verwendung des folgenden Ausdrucks (18). Der kumulierte Leistungsverbrauchswert Wacc_i[k] ist ein kumulierter Wert des Leistungsverbrauchs, wenn das Stellglied angetrieben wird. Wacc_i [ k ] = Iacc_i [ k ] × V _ i

Figure DE112019007404T5_0018
The power consumption calculation unit 136 calculates the cumulative power consumption value Iacc_i[k] in the same manner as the power consumption calculation unit 134. Further, the power consumption calculation unit 136 calculates the cumulative power consumption value Wacc_i[k] using the cumulative power consumption value Iacc_i[k] calculated with Expression (16) and a Nominal voltage V i. That is, the power consumption calculation unit 136 calculates the cumulative power consumption value Wacc_i[k] using the following expression (18). The cumulative power consumption value Wacc_i[k] is a cumulative value of power consumption when the actuator is driven. Wacc_i [ k ] = Iacc_i [ k ] × V _ i
Figure DE112019007404T5_0018

Die Beschränkungsbestimmungseinheit 137a bestimmt, ob eine Kombination von Parametern, die aus der Parameterspeichereinheit 110 ausgelesen wird, die Beschränkungsbedingung für die Reihe von Bewegungen erfüllt oder nicht, unter Verwendung eines Bestimmungsausdrucks, der auf dem Leistungsverbrauch bei der Reihe von Bewegungen beruht, der durch die Leistungsverbrauchsberechnungseinheit 136 und die Obergrenze für den Leistungsverbrauch beruht. Unter der Annahme, dass der kumulierte Leistungsverbrauchswert Wacc_i[k] der i-ten Achse in der gesamten Reihe von Bewegungen Wc_i ist und die Obergrenze für den Leistungsverbrauch der i-ten Achse Ws_i ist, kann die Beschränkungsbedingung, dass der kumulierte Leistungsverbrauchswert Wacc_i[k] der i-ten Achse die Obergrenze für den Leistungsverbrauch der i-ten Achse nicht überschreiten sollte, durch den folgenden Ausdruck (19) ausgedrückt werden. In diesem Fall kann als die Obergrenze für den Leistungsverbrauch Ws_i der Wert einer Obergrenze für den Leistungsverbrauch, der für die Verwendung des Roboters im tatsächlichen Produktionsprozess erforderlich ist, festgelegt werden. Alternativ dazu kann der obere Grenzwert für einen Leistungsverbrauch, der durch den Benutzer über eine Schnittstelle festgelegt wird, wenn der Benutzer die Reihe von Bewegungen des Roboters ausgestaltet, als Ws_i angewandt werden. Wc _ i Ws _ i

Figure DE112019007404T5_0019
The restriction determination unit 137a determines whether or not a combination of parameters read from the parameter storage unit 110 satisfies the restriction condition for the series of movements using a determination expression based on the power consumption in the series of movements calculated by the power consumption calculation unit 136 and the upper limit for power consumption is based. Assuming that the cumulative power consumption value Wacc_i[k] of the i-th axis in the entire series of movements is Wc_i and the upper limit of the power consumption of the ith axis is Ws_i, the constraint condition that the cumulative power consumption value Wacc_i[k ] of the i-th axis should not exceed the upper limit of the power consumption of the i-th axis can be expressed by the following expression (19). In this case, as the upper limit power consumption Ws_i, the value of an upper limit power consumption required for using the robot in the actual production process can be set. Alternatively, can the upper limit of power consumption set by the user via an interface when the user designs the series of movements of the robot can be applied as Ws_i. WC _ i Ws _ i
Figure DE112019007404T5_0019

Wie oben beschrieben, kann in dem Fall, in dem ein elektrischer Leistungsverbrauch als die Beschränkungsbedingung verwendet wird, die Parameterberechnungsvorrichtung 100G unter Verwendung des Ausdrucks (19) in der Beschränkungsbestimmungseinheit 137a anstelle des Ausdrucks (17) in der Beschränkungsbestimmungseinheit 135a bestimmen, ob die Beschränkungsbedingung erfüllt ist oder nicht.As described above, in the case where electric power consumption is used as the constraint condition, the parameter calculation device 100G can determine whether the constraint condition is satisfied using Expression (19) in the constraint determination unit 137a instead of Expression (17) in the constraint determination unit 135a is or not.

Die Einheit 140 zum maschinellen Lernen gemäß der vorliegenden Ausführungsform sucht nach einer Kombination von Parametern derart, dass die Zykluszeit soweit minimiert wird, dass die durch den Ausdruck (17) wiedergegebene Strombeschränkungsbedingung oder die durch den Ausdruck (19) wiedergegebene Leistungsbeschränkungsbedingung erfüllt ist. Das heißt, der durch die Einheit 140 zum maschinellen Lernen vorzunehmende Vorgang besteht darin, nach einer Kombination von Parametern zu suchen, welche die Zykluszeit soweit minimiert, dass die Strombeschränkungsbedingung des Ausdrucks (17) oder die Leistungsbeschränkungsbedingung des Ausdrucks (19) erfüllt ist, anstatt nach einer Kombination von Parametern zu suchen, welche die Zykluszeit soweit minimiert, dass die Lebensdauerbeschränkung des Ausdrucks (12) erfüllt ist. Die Einheit 140 zum maschinellen Lernen führt die gleiche Verarbeitung wie bei der ersten Ausführungsform mit Ausnahme dieser Suchverarbeitung aus.The machine learning unit 140 according to the present embodiment searches for a combination of parameters such that the cycle time is minimized to the extent that the current constraint condition represented by expression (17) or the power constraint condition represented by expression (19) is satisfied. That is, the operation to be performed by the machine learning unit 140 is to search for a combination of parameters that minimizes the cycle time to the extent that the current constraint condition of expression (17) or the power constraint condition of expression (19) is met, rather than search for a combination of parameters that minimizes the cycle time enough to satisfy the lifetime constraint of expression (12). The machine learning unit 140 performs the same processing as in the first embodiment except for this search processing.

Die Einheit 140 zum maschinellen Lernen kann einen Lernabschnitt, in dem Parameter eingestellt werden sollen, auf Grundlage des kumulierten Stromverbrauchswerts Iacc_i[k], der für jeden Lernabschnitt durch die Stromverbrauchsberechnungseinheit 134 berechnet wird, oder des kumulierten Werts der Leistungsverbrauchsmenge, der für jeden Lernabschnitt durch die Leistungsverbrauchsberechnungseinheit 136 berechnet wird, für die Kombination von einzustellenden Parametern auswählen. In diesem Fall wählt die Einheit 140 zum maschinellen Lernen einen Lernabschnitt, der einen großen kumulierten Stromverbrauchswert Iacc_i[k] oder einen großen kumulierten Wert der Leistungsverbrauchsmenge aufweist, als ein Parametereinstellungsziel aus. Folglich kann die Einheit 140 zum maschinellen Lernen den Parametersuchbereich begrenzen.The machine learning unit 140 can set a session in which to set parameters based on the cumulative power consumption value Iacc_i[k] calculated for each session by the power consumption calculation unit 134, or the cumulative value of the power consumption amount calculated for each session by the power consumption calculation unit 136 is calculated for the combination of parameters to be set. In this case, the machine learning unit 140 selects a learning portion that has a large cumulative power consumption value Iacc_i[k] or a large cumulative value of power consumption amount as a parameter setting target. Consequently, the machine learning unit 140 can limit the parameter search range.

Darüber hinaus kann, um die Suchzeit zu verringern, indem die Anzahl von einzustellenden Parametern verringert wird, die Einheit 140 zum maschinellen Lernen nur die Bewegung in einem höherrangigen Lernabschnitt mit einem höheren Stromverbrauch oder Leistungsverbrauch bei der Reihe von Bewegungen als ein Einstellungsziel festlegen. Die Einheit 140 zum maschinellen Lernen kann eine Zielbewegung auf Grundlage des Verhältnisses in jedem Lernabschnitt zwischen dem Stromverbrauch oder Leistungsverbrauch der Bewegung und der Bewegungszeitdauer bestimmen.Moreover, in order to reduce the search time by reducing the number of parameters to be set, the machine learning unit 140 can set only the movement in a higher-level learning section with higher power consumption in the series of movements as a setting target. The machine learning unit 140 may determine a target movement based on the relationship in each learning period between the current consumption or power consumption of the movement and the movement time period.

Darüber hinaus kann, selbst wenn sämtliche Lernabschnitte eingestellt werden sollen, die Einheit 140 zum maschinellen Lernen als die Ausgangswerte einer Kombination von Parametern Parameter festlegen, die in dem Fall erhalten werden, in dem nur die Parameter eines höherrangigen Lernabschnitts mit einem höheren Stromverbrauch oder Leistungsverbrauch bei der Reihe von Bewegungen eingestellt werden. Überdies kann die Einheit 140 zum maschinellen Lernen einen Lernabschnitt, der mit Ausgangswerten eingestellt werden soll, auf Grundlage des Verhältnisses zwischen dem Stromverbrauch oder Leistungsverbrauch jeder Bewegung und der Bewegungszeitdauer jeder Bewegung auswählen.In addition, even if all the sessions are to be set, the machine learning unit 140 can set as the initial values of a combination of parameters parameters obtained in the case where only the parameters of a higher-level session with a higher current consumption or power consumption are included the series of movements. Moreover, the machine learning unit 140 can select a learning period to be set with initial values based on the relationship between the current consumption or power consumption of each movement and the movement time period of each movement.

Wie oben beschrieben, sucht in der zweiten Ausführungsform die Einheit 140 zum maschinellen Lernen nach einer Kombination von Parametern derart, dass die Zykluszeit der Reihe von Bewegungen soweit minimiert wird, dass die Beschränkungsbedingung für den Stromverbrauch oder Leistungsverbrauch bei der Reihe von Bewegungen erfüllt wird. Daher kann die Parameterberechnungsvorrichtung 100F eine Erhöhung der Zykluszeit verhindern, während sie die Beschränkungsbedingung für den Stromverbrauch für die gesamte Reihe von Bewegungen des Roboters erfüllt. Darüber hinaus kann die Parameterberechnungsvorrichtung 100G eine Erhöhung der Zykluszeit verhindern, während sie die Beschränkungsbedingung für den Leistungsverbrauch für die gesamte Reihe von Bewegungen des Roboters erfüllt.As described above, in the second embodiment, the machine learning unit 140 searches for a combination of parameters such that the cycle time of the series of movements is minimized to the extent that the constraint condition on current consumption or power consumption in the series of movements is satisfied. Therefore, the parameter calculation device 100F can prevent an increase in the cycle time while satisfying the power consumption restriction condition for the entire series of movements of the robot. In addition, the parameter calculation device 100G can prevent an increase in the cycle time while satisfying the power consumption constraint condition for the entire series of movements of the robot.

Darüber hinaus verwendet die Parameterberechnungsvorrichtung 100F einen bestimmten Lernabschnitt als ein Parametereinstellungsziel. Daher ist es möglich, eine Kombination von Parametern zu erstellen, die eine Erhöhung der Zykluszeit verhindern kann, während sie die Beschränkungsbedingung für die Obergrenze des Stromverbrauchs bei der Reihe von Bewegungen des Roboters mit einer kleineren Anzahl von Probeläufen im Vergleich zum Fall umfassender Probeläufe von Kombinationen von Parametern auf Grundlage aller Parameter, die für jeden Lernabschnitt festgelegt wurden, erfüllt.In addition, the parameter calculation device 100F uses a specific learning section as a parameter setting target. Therefore, it is possible to create a combination of parameters that can prevent an increase in the cycle time while satisfying the constraint condition for the upper limit of power consumption in the series of movements of the robot with a smaller number of trial runs compared to the case of extensive trial runs of combinations of parameters based on all parameters set for each session.

Darüber hinaus kann die Parameterberechnungsvorrichtung 100G eine Kombination von Parametern erstellen, die eine Erhöhung der Zykluszeit verhindern kann, während die Beschränkungsbedingung für die Obergrenze des Leistungsverbrauchs bei der Reihe von Bewegungen des Roboters mit einer kleineren Anzahl von Probeläufen im Vergleich zu dem Fall mit umfangreichen Probeläufen von Kombinationen von Parametern auf Grundlage aller Parameter, die für jeden Lernabschnitt festgelegt wurden, erfüllt wird.In addition, the parameter calculation device 100G may use a combination of Para meters that can prevent an increase in cycle time while satisfying the upper limit power consumption constraint condition in the series of movements of the robot with a smaller number of trial runs compared to the case with extensive trial runs of combinations of parameters based on all parameters that set for each session is met.

Dritte Ausführungsform.Third embodiment.

Als Nächstes wird die dritte Ausführungsform der vorliegenden Erfindung unter Bezugnahme auf 15 beschrieben. In der dritten Ausführungsform berechnet die Bewertungseinheit als Bewertungswerte zwei oder mehr von der vorhergesagten Lebensdauer, dem Stromverbrauch und dem Leistungsverbrauch bei einer Reihe von Bewegungen. Die Lerneinheit erlernt Parameter, welche die Zykluszeit verbessern, während sie bewirkt, dass die Bewertungswerte von zwei oder mehr von der vorhergesagten Lebensdauer, dem Stromverbrauch und dem Leistungsverbrauch die Beschränkungsbedingungen bei der Reihe von Bewegungen erfüllen, und sucht nach optimalen Parametern, welche die Zykluszeit minimieren.Next, the third embodiment of the present invention will be explained with reference to FIG 15 described. In the third embodiment, the evaluation unit calculates, as evaluation values, two or more of the predicted lifetime, the power consumption, and the power consumption in a series of movements. The learning unit learns parameters that improve the cycle time while making the evaluation values of two or more of the predicted lifetime, power consumption, and power consumption meet the constraint conditions in the series of movements, and searches for optimal parameters that minimize the cycle time .

<Vorrichtungskonfiguration im Fall der Verwendung von zwei oder mehr von der vorhergesagten Lebensdauer, dem Strom und der Leistung als Beschränkungsbedingungen><Device Configuration in Case of Using Two or More of Predicted Life, Current and Power as Restriction Conditions>

15 ist ein Blockdiagramm, das eine beispielhafte Konfiguration der Parameterberechnungsvorrichtung gemäß der dritten Ausführungsform veranschaulicht. Komponenten in 15, welche die gleichen Funktionen wie jene der Parameterberechnungsvorrichtung 100B, 100F oder 100G erzielen, sind mit den gleichen Bezugszeichen gekennzeichnet und auf deren redundante Beschreibungen wird verzichtet. 15 14 is a block diagram illustrating an example configuration of the parameter calculation device according to the third embodiment. components in 15 , which achieve the same functions as those of the parameter calculation device 100B, 100F, or 100G are denoted by the same reference numerals, and redundant descriptions thereof are omitted.

Die Parameterberechnungsvorrichtung 100H erstellt Parameter derart, dass zwei oder mehr von einer Beschränkungsbedingung, die auf der Auslegungslebensdauer beruht, einer Beschränkungsbedingung, die auf der Obergrenze für den Stromverbrauch beruht, und einer Beschränkungsbedingung, die auf der Obergrenze für den Leistungsverbrauch beruht, bei einer Reihe von Bewegungen des Roboters erfüllt sind.The parameter calculation device 100H creates parameters such that two or more of a constraint condition based on the design life, a constraint condition based on the upper limit on power consumption, and a constraint condition based on the upper limit on power consumption in a series of movements of the robot are fulfilled.

Im Vergleich zu der Parameterberechnungsvorrichtung 100B beinhaltet die Parameterberechnungsvorrichtung 100H eine Bewertungseinheit 130H anstelle der Bewertungseinheit 130B. Die Bewertungseinheit 130H legt zwei oder mehr von einer Beschränkungsbedingung, die auf der Auslegungslebensdauer beruht, einer Beschränkungsbedingung, die auf der Obergrenze für den Stromverbrauch beruht, und einer Beschränkungsbedingung, die auf der Obergrenze für den Leistungsverbrauch beruht, fest. Die Bewertungseinheit 130H beinhaltet eine Beschränkungsauswahleinheit 138, die Kinetikberechnungseinheit 131, die Beschädigungsmaßberechnungseinheit 132, die Stromverbrauchsberechnungseinheit 134, die Leistungsverbrauchsberechnungseinheit 136 und eine Beschränkungsbestimmungseinheit 139.Compared to the parameter calculation device 100B, the parameter calculation device 100H includes an evaluation unit 130H instead of the evaluation unit 130B. The evaluation unit 130H sets two or more of a design life-based restriction condition, an upper-limit power consumption-based restriction condition, and an upper-limit power consumption-based restriction condition. The evaluation unit 130H includes a restriction selection unit 138, the kinetics calculation unit 131, the damage amount calculation unit 132, the power consumption calculation unit 134, the power consumption calculation unit 136, and a restriction determination unit 139.

Die Beschränkungsauswahleinheit 138 ist mit der Parameterspeichereinheit 110, der Zustandsvariablenerfassungseinheit 120A, der Kinetikberechnungseinheit 131, der Stromverbrauchsberechnungseinheit 134 und der Leistungsverbrauchsberechnungseinheit 136 verbunden. Die Kinetikberechnungseinheit 131 ist mit der Beschädigungsmaßberechnungseinheit 132 verbunden. Die Beschränkungsbestimmungseinheit 139 ist mit der Beschädigungsmaßberechnungseinheit 132, der Stromverbrauchsberechnungseinheit 134, der Leistungsverbrauchsberechnungseinheit 136 und der Einheit 140 zum maschinellen Lernen verbunden.The constraint selection unit 138 is connected to the parameter storage unit 110 , the state variable acquisition unit 120</b>A, the kinetic calculation unit 131 , the power consumption calculation unit 134 , and the power consumption calculation unit 136 . The kinetic calculation unit 131 is connected to the damage amount calculation unit 132 . The restriction determination unit 139 is connected to the damage amount calculation unit 132 , the power consumption calculation unit 134 , the power consumption calculation unit 136 and the machine learning unit 140 .

Wenn die Beschränkungsbedingung, die auf der Auslegungslebensdauer beruht, durch den Benutzer ausgewählt wird, erfasst die Zustandsvariablenerfassungseinheit 120A Zustandsvariablen (Werte von Verschiebung, Geschwindigkeit und Beschleunigung jedes Gelenks) in Bezug auf eine vorhergesagte Lebensdauer. Darüber hinaus erfasst die Zustandsvariablenerfassungseinheit 120A, wenn die Beschränkungsbedingung, die auf einer Obergrenze für den Stromverbrauch oder einer Obergrenze für den Leistungsverbrauch beruht, durch den Benutzer ausgewählt wird, Zustandsvariablen (Stromverbrauchswert des Stellglieds jedes Gelenks) in Bezug auf einen Stromverbrauch oder einen Leistungsverbrauch.When the constraint condition based on the design life is selected by the user, the state variable acquisition unit 120A acquires state variables (values of displacement, velocity, and acceleration of each joint) related to a predicted life. In addition, when the restriction condition based on a power consumption upper limit or a power consumption upper limit is selected by the user, the state variable acquisition unit 120A acquires state variables (power consumption value of the actuator of each joint) related to power consumption or power consumption.

Die Beschränkungsauswahleinheit 138 wählt die Art einer festzulegenden Beschränkungsbedingung aus den Beschränkungsbedingungen, die auf der Auslegungslebensdauer, der Obergrenze für den Stromverbrauch und der Obergrenze für den Leistungsverbrauch beruhen, gemäß einer Anweisung von dem Benutzer aus. Wenn die Beschränkungsbedingung, die auf der Auslegungslebensdauer beruht, durch den Benutzer ausgewählt wird, sendet die Beschränkungsauswahleinheit 138 Zustandsvariablen an die Kinetikberechnungseinheit 131. Demnach berechnet die Kinetikberechnungseinheit 131 das auf das Gelenk ausgeübte Lastdrehmoment und berechnet die Beschädigungsmaßberechnungseinheit 132 die vorhergesagte Lebensdauer, die mit Wiederholungen der Reihe von Bewegungen assoziiert ist. Die Beschädigungsmaßberechnungseinheit 132 sendet die vorhergesagte Lebensdauer an die Beschränkungsbestimmungseinheit 139.The restriction selection unit 138 selects the type of restriction condition to be set from restriction conditions based on the design life, the power consumption upper limit, and the power consumption upper limit according to an instruction from the user. When the constraint condition based on the design life is selected by the user, the constraint selection unit 138 sends state variables to the kinetics calculation unit 131. Accordingly, the kinetics calculation unit 131 calculates the load torque applied to the joint and the damage amount calculation unit 132 calculates the predicted life associated with repetitions of the set of movements is associated. The damage amount calculation unit 132 sends the predicted one lifetime to the constraint determination unit 139.

Darüber hinaus sendet, wenn die Beschränkungsbedingung, die auf einer Obergrenze für den Stromverbrauch beruht, durch den Benutzer ausgewählt wird, die Beschränkungsauswahleinheit 138 Zustandsvariablen an die Stromverbrauchsberechnungseinheit 134. Demnach berechnet die Stromverbrauchsberechnungseinheit 134 den kumulierten Stromverbrauchswert Ic_i bei der Reihe von Bewegungen unter Verwendung der Zustandsvariablen. Die Stromverbrauchsberechnungseinheit 134 sendet den kumulierten Stromverbrauchswert Ic_i an die Beschränkungsbestimmungseinheit 139.In addition, when the restriction condition based on an upper limit of power consumption is selected by the user, the restriction selection unit 138 sends state variables to the power consumption calculation unit 134. Thus, the power consumption calculation unit 134 calculates the cumulative power consumption value Ic_i in the series of movements using the state variables . The power consumption calculation unit 134 sends the cumulative power consumption value Ic_i to the restriction determination unit 139.

Darüber hinaus sendet, wenn die Beschränkungsbedingung, die auf einer Obergrenze für den Leistungsverbrauch beruht, durch den Benutzer ausgewählt wird, die Beschränkungsauswahleinheit 138 die Zustandsvariablen an die Leistungsverbrauchsberechnungseinheit 136. Demnach berechnet die Leistungsverbrauchsberechnungseinheit 136 den kumulierten Leistungsverbrauchswert Wc_i bei der Reihe von Bewegungen unter Verwendung der Zustandsvariablen. Die Leistungsverbrauchsberechnungseinheit 136 sendet den kumulierten Leistungsverbrauchswert Wc_i an die Beschränkungsbestimmungseinheit 139.In addition, when the restriction condition based on an upper limit of power consumption is selected by the user, the restriction selection unit 138 sends the state variables to the power consumption calculation unit 136. Accordingly, the power consumption calculation unit 136 calculates the cumulative power consumption value Wc_i in the series of movements using the state variables. The power consumption calculation unit 136 sends the cumulative power consumption value Wc_i to the restriction determination unit 139.

Wenn die Beschränkungsbedingung, die auf einer Auslegungslebensdauer beruht, durch den Benutzer ausgewählt wird, bestimmt die Beschränkungsbestimmungseinheit 139, ob die Beschränkungsbedingung erfüllt ist oder nicht, unter Verwendung des Ausdrucks (12). Wenn die Beschränkungsbedingung, die auf einer Obergrenze für den Stromverbrauch beruht, durch den Benutzer ausgewählt wird, bestimmt die Beschränkungsbestimmungseinheit 139, ob die Beschränkungsbedingung erfüllt ist oder nicht, unter Verwendung des Ausdrucks (17). Wenn die Beschränkungsbedingung, die auf einer Obergrenze für den Leistungsverbrauch beruht, durch den Benutzer ausgewählt wird, bestimmt die Beschränkungsbestimmungseinheit 139, ob die Beschränkungsbedingung erfüllt ist oder nicht, unter Verwendung des Ausdrucks (19).When the constraint condition based on a design lifetime is selected by the user, the constraint determination unit 139 determines whether or not the constraint condition is satisfied using expression (12). When the restriction condition based on an upper limit of power consumption is selected by the user, the restriction determination unit 139 determines whether or not the restriction condition is satisfied using expression (17). When the constraint condition based on an upper limit of power consumption is selected by the user, the constraint determination unit 139 determines whether or not the constraint condition is satisfied using expression (19).

Wenn die Bewertungswerte sämtliche der durch den Benutzer ausgewählten Beschränkungsbedingungen erfüllen, bestimmt die Beschränkungsbestimmungseinheit 139, dass die Beschränkungsbedingungen zu der Reihe von Bewegungen erfüllt sind. Die Einheit 140 zum maschinellen Lernen erlernt die Parameter auf die gleiche Weise wie bei der ersten und der zweiten Ausführungsform.When the evaluation values satisfy all of the restriction conditions selected by the user, the restriction determination unit 139 determines that the restriction conditions on the series of movements are satisfied. The machine learning unit 140 learns the parameters in the same manner as in the first and second embodiments.

Wie oben beschrieben, sucht in der dritten Ausführungsform die Einheit 140 zum maschinellen Lernen nach einer Kombination von Parametern, welche die Zykluszeit der Reihe von Bewegungen soweit minimiert, dass zwei oder mehr von einer Lebensdauer, einem Stromverbrauch und einem Leistungsverbrauch die Beschränkungsbedingungen erfüllen. Daher kann die Parameterberechnungsvorrichtung 100H eine Erhöhung der Zykluszeit verhindern, während sie die Beschränkungsbedingungen von zwei oder mehr von der Lebensdauer, dem Stromverbrauch und dem Leistungsverbrauch für die gesamte Reihe von Bewegungen des Roboters erfüllt.As described above, in the third embodiment, the machine learning unit 140 searches for a combination of parameters that minimizes the cycle time of the series of movements to the extent that two or more of a lifetime, a power consumption, and a power consumption satisfy the constraint conditions. Therefore, the parameter calculation device 100H can prevent an increase in the cycle time while satisfying the constraint conditions of two or more of the lifespan, power consumption, and power consumption for the entire series of movements of the robot.

Vierte Ausführungsform.Fourth embodiment.

Als Nächstes wird die vierte Ausführungsform der vorliegenden Erfindung unter Bezugnahme auf 15 beschrieben. In der vierten Ausführungsform erstellt die Parameterberechnungsvorrichtung eine Kombination von Parametern, die den Bewertungswert des Beschädigungsmaßes, des Stromverbrauchs oder des Leistungsverbrauchs bei einer Reihe von Bewegungen verbessern kann, während sie die Beschränkungsbedingung für die Zykluszeit erfüllt. Das heißt, die Bewertungseinheit berechnet das Beschädigungsmaß, den Stromverbrauch oder den Leistungsverbrauch bei der Reihe von Bewegungen als einen Bewertungswert. Die Lerneinheit erlernt die Parameter, durch die das Beschädigungsmaß, der Stromverbrauch oder der Leistungsverbrauch bei der Reihe von Bewegungen verbessert werden, während sie bewirkt, dass die Zykluszeit die Beschränkungsbedingung erfüllt, und sucht nach Parametern, durch die das Beschädigungsmaß, der Stromverbrauch oder der Leistungsverbrauch bei der Reihe von Bewegungen optimiert werden.Next, the fourth embodiment of the present invention will be explained with reference to FIG 15 described. In the fourth embodiment, the parameter calculation device creates a combination of parameters that can improve the evaluation value of the damage amount, power consumption, or power consumption in a series of movements while satisfying the cycle time constraint condition. That is, the evaluation unit calculates the damage amount, power consumption, or power consumption in the series of movements as an evaluation value. The learning unit learns the parameters that improve the damage level, power consumption, or power consumption in the series of moves while making the cycle time meet the constraint condition, and searches for parameters that improve the damage level, power consumption, or power consumption be optimized in the series of movements.

Die Verbesserung des Bewertungswerts des Beschädigungsmaßes wird durch Verringern eines Beschädigungsmaßes erreicht, wird die Verbesserung des Bewertungswerts des Stromverbrauchs wird durch Verringern eines Stromverbrauchs erreicht und wird die Verbesserung des Bewertungswerts des Leistungsverbrauchs durch Verringern eines Leistungsverbrauchs erreicht. In der vierten Ausführungsform lautet die durch die Zykluszeit zu erfüllende spezifische Bedingung, dass die Beschränkungsbedingung (innerhalb eines bestimmten Zeitraums) erfüllt werden sollte, und lautet die durch den Bewertungswert zu erfüllende spezifische Bedingung, dass der Bewertungswert verbessert werden sollte. Das heißt, das Verbessern des Bewertungswerts entspricht dem, dass bewirkt wird, dass der Bewertungswert eine erste Bedingung erfüllt, und das Bewirken, dass die Zykluszeit die Beschränkungsbedingung erfüllt, entspricht dem, dass bewirkt wird, dass die Zykluszeit eine zweite Bedingung erfüllt.The improvement in the evaluation value of the degree of damage is achieved by decreasing a degree of damage, the improvement in the evaluation value of power consumption is achieved by decreasing power consumption, and the improvement in the evaluation value of power consumption is achieved by decreasing power consumption. In the fourth embodiment, the specific condition to be satisfied by the cycle time is that the constraint condition should be satisfied (within a certain period of time), and the specific condition to be satisfied by the evaluation value is that the evaluation value should be improved. That is, improving the evaluation value corresponds to causing the evaluation value to satisfy a first condition, and making the cycle time satisfy the constraint condition corresponds to causing the cycle time to satisfy a second condition.

<Fall des Verlängerns einer vorhergesagten Lebensdauer mit der Zykluszeit als eine Beschränkungsbedingung><Case of extending a predicted lifetime with the cycle time as a constraint condition>

In der vorliegenden Ausführungsform wird eine beliebige der Parameterberechnungsvorrichtungen 100B, 100F und 100G verwendet. Die Parameterberechnungsvorrichtung 100B, 100F oder 100G findet eine Kombination von Parametern, die das Beschädigungsmaß, den Stromverbrauch oder den Leistungsverbrauch bei der Reihe von Bewegungen minimiert, während sie die Beschränkungsbedingung erfüllt, die auf der Zykluszeit beruht.In the present embodiment, any one of the parameter calculation devices 100B, 100F, and 100G is used. The parameter calculation device 100B, 100F, or 100G finds a combination of parameters that minimizes the damage amount, power consumption, or power consumption in the series of movements while satisfying the constraint condition based on the cycle time.

Die Beschränkungsbestimmungseinheit 133a, 135a oder 137a bestimmt, ob die auf Grundlage der Zykluszeit festgelegte Beschränkungsbedingung erfüllt ist oder nicht, und die Einheit 140 zum maschinellen Lernen findet eine Kombination von Parametern, die das Beschädigungsmaß, den Stromverbrauch oder den Leistungsverbrauch minimiert. Das Minimieren des Beschädigungsmaßes ist synonym mit dem Maximieren der vorhergesagten Lebensdauer.The constraint determining unit 133a, 135a, or 137a determines whether or not the constraint condition set based on the cycle time is satisfied, and the machine learning unit 140 finds a combination of parameters that minimizes the damage amount, power consumption, or power consumption. Minimizing the damage level is synonymous with maximizing the predicted lifetime.

Nachfolgend wird eine Betriebsverarbeitung der Parameterberechnungsvorrichtung gemäß der vierten Ausführungsform beschrieben. Im Fall des Verringerns eines Beschädigungsmaßes (der vorhergesagten Lebensdauer) wird die Parameterberechnungsvorrichtung 100B verwendet. Im Fall des Verringerns eines Stromverbrauchs wird die Parameterberechnungsvorrichtung 100F verwendet. Im Fall des Verringerns eines Leistungsverbrauchs wird die Parameterberechnungsvorrichtung 100G verwendet.Operational processing of the parameter calculation device according to the fourth embodiment will be described below. In the case of decreasing a damage amount (predicted life), the parameter calculation device 100B is used. In the case of reducing power consumption, the parameter calculation device 100F is used. In the case of reducing power consumption, the parameter calculation device 100G is used.

Es ist zu beachten, dass die Betriebsverarbeitung der Parameterberechnungsvorrichtung 100B, 100F oder 100G in der vierten Ausführungsform, die der Betriebsverarbeitung der Parameterberechnungsvorrichtung 100B, 100F oder 100G in der ersten bis dritten Ausführungsform ähnlich ist, nicht beschrieben wird. In der vierten Ausführungsform führen die Beschränkungsbestimmungseinheiten 133a, 135a und 137a im Wesentlichen die gleiche Verarbeitung durch und wird somit hier die Verarbeitung der Beschränkungsbestimmungseinheit 133a beschrieben. Ebenso führen in der vierten Ausführungsform die Bewertungseinheiten 130B, 130F und 130G im Wesentlichen die gleiche Verarbeitung durch und wird somit hier die Verarbeitung der Bewertungseinheit 130B beschrieben.Note that the operation processing of the parameter calculation device 100B, 100F, or 100G in the fourth embodiment that is similar to the operation processing of the parameter calculation device 100B, 100F, or 100G in the first to third embodiments will not be described. In the fourth embodiment, the restriction determination units 133a, 135a, and 137a perform substantially the same processing, and thus the processing of the restriction determination unit 133a will be described here. Also, in the fourth embodiment, the judging units 130B, 130F, and 130G perform substantially the same processing, and thus the processing of the judging unit 130B will be described here.

In der Beschränkungsbestimmungseinheit 133a wird ein Zykluszeitreferenzwert ts als eine Obergrenze für die zulässige Verzögerung für die Reihe von Bewegungen festgelegt. Der Zykluszeitreferenzwert ts ist die Beschränkungsbedingung einer Zykluszeit und ist die längste Zykluszeit, die bei Ausführung der Reihe von Bewegungen erlaubt ist. Wenn die durch die Bewertungseinheit 130B berechnete Zykluszeit tc den folgenden Ausdruck (20) erfüllt, bestimmt die Beschränkungsbestimmungseinheit 133a, dass die Beschränkungsbedingung der Zykluszeit bei der Reihe von Bewegungen erfüllt ist. tc ts

Figure DE112019007404T5_0020
In the restriction determination unit 133a, a cycle time reference value ts is set as an upper limit of the allowable deceleration for the series of movements. The cycle time reference value ts is the constraint condition of a cycle time and is the longest cycle time allowed in executing the series of moves. When the cycle time tc calculated by the evaluation unit 130B satisfies the following expression (20), the constraint determination unit 133a determines that the constraint condition of the cycle time in the series of movements is satisfied. etc ts
Figure DE112019007404T5_0020

Beispielsweise ist der Zykluszeitreferenzwert ts auf 90 % der Zykluszeit festgelegt, die in dem Fall umgesetzt wird, in dem die Geschwindigkeit und Beschleunigung mit der gleichen Rate verringert werden, bis die Auslegungslebensdauer in jedem Lernabschnitt erfüllt ist. Alternativ dazu kann der Zykluszeitreferenzwert ts auf den Wert einer Zykluszeit festgelegt werden, die zum Ausgestalten der Bewegungen des Roboters bei dem tatsächlichen Produktionsprozess erforderlich ist.For example, the cycle time reference value ts is set to 90% of the cycle time implemented in the case where the speed and acceleration are reduced at the same rate until the design life is satisfied in each learning period. Alternatively, the cycle time reference value ts can be set to the value of a cycle time required for designing the movements of the robot in the actual production process.

Die Einheit 140 zum maschinellen Lernen sucht nach einer Kombination von Parametern, welche das Beschädigungsmaß, den Stromverbrauch oder den Leistungsverbrauch, die mit der durch die Bewertungseinheit 130B berechneten Reihe von Bewegungen assoziiert sind, soweit minimiert, dass die Beschränkungsbedingung des Ausdrucks (20) erfüllt ist. Mit anderen Worten sucht die Einheit 140 zum maschinellen Lernen nach einer Kombination von Parametern, durch die der durch die Bewertungseinheit 130B berechnete Bewertungswert soweit verbessert wird, dass die Beschränkungsbedingung des Ausdrucks (20) erfüllt ist. Die Einheit 140 zum maschinellen Lernen aktualisiert die Kombination von Parametern, die in der Parameterspeichereinheit 110 gespeichert sind, mit der gefundenen Kombination von Parametern.The machine learning unit 140 searches for a combination of parameters that minimizes the degree of damage, power consumption, or power consumption associated with the series of movements calculated by the evaluation unit 130B to the extent that the constraint condition of expression (20) is satisfied . In other words, the machine learning unit 140 searches for a combination of parameters by which the evaluation value calculated by the evaluation unit 130B is improved to satisfy the constraint condition of the expression (20). The machine learning unit 140 updates the combination of parameters stored in the parameter storage unit 110 with the found combination of parameters.

In einem Fall, in dem die Parameterberechnungsvorrichtung 100B verwendet wird, sucht die Einheit 140 zum maschinellen Lernen nach einer Kombination von Parametern, welche das Beschädigungsmaß, das mit der Reihe von Bewegungen assoziiert ist, soweit minimiert, dass die Beschränkungsbedingung des Ausdrucks (20) erfüllt ist.In a case where the parameter calculation device 100B is used, the machine learning unit 140 searches for a combination of parameters that minimizes the degree of damage associated with the series of movements to the extent that the constraint condition of expression (20) is satisfied is.

In einem Fall, in dem die Parameterberechnungsvorrichtung 100F verwendet wird, sucht die Einheit 140 zum maschinellen Lernen nach einer Kombination von Parametern, die den Stromverbrauch, der mit der Reihe von Bewegungen assoziiert ist, soweit minimiert, dass die Beschränkungsbedingung des Ausdrucks (20) erfüllt ist.In a case where the parameter calculation device 100F is used, the machine learning unit 140 searches for a combination of parameters that minimizes the power consumption associated with the series of movements to the extent that the constraint condition of expression (20) is satisfied is.

In einem Fall, in dem die Parameterberechnungsvorrichtung 100G verwendet wird, sucht die Einheit 140 zum maschinellen Lernen nach einer Kombination von Parametern, die den Leistungsverbrauch, der mit der Reihe von Bewegungen assoziiert ist, soweit minimiert, dass die Beschränkungsbedingung des Ausdrucks (20) erfüllt ist.In a case where the parameter calculation device 100G is used, the machine learning unit 140 searches for a combination of parameters that reflects the power consumption associated with the series of movements is minimized to the extent that the constraint condition of expression (20) is satisfied.

Es ist zu beachten, dass die in der vierten Ausführungsform beschriebene Verarbeitung auf die Parameterberechnungsvorrichtung 100H angewandt werden kann.Note that the processing described in the fourth embodiment can be applied to the parameter calculation device 100H.

Es ist zu beachten, dass die Parameterberechnungsvorrichtung 100H gemäß der dritten Ausführungsform eine Kombination von Parametern erstellen kann, die mindestens einen der Bewertungswerte für das Beschädigungsmaß, den Stromverbrauch und den Leistungsverbrauch bei der Reihe von Bewegungen verbessern kann, während sie die Beschränkungsbedingung der Zykluszeit erfüllt. In diesem Fall wählt die Beschränkungsauswahleinheit 138 mindestens ein Optimierungsziel aus dem Beschädigungsmaß, dem Stromverbrauch und dem Leistungsverbrauch aus.Note that the parameter calculation device 100H according to the third embodiment can create a combination of parameters that can improve at least one of the evaluation values of the damage amount, power consumption, and power consumption in the series of movements while satisfying the cycle time constraint condition. In this case, the constraint selection unit 138 selects at least one optimization target from the damage amount, power consumption, and power consumption.

Wie oben beschrieben, sucht in der vierten Ausführungsform die Einheit 140 zum maschinellen Lernen nach einer Kombination von Parametern derart, dass mindestens eines von der Lebensdauer, dem Stromverbrauch und dem Leistungsverbrauch bei der Reihe von Bewegungen derart verbessert wird, dass die Beschränkungsbedingung der Zykluszeit, die mit Wiederholungen der Reihe von Bewegungen assoziiert ist, erfüllt wird. Daher kann die Einheit 140 zum maschinellen Lernen einen Bewegungsbefehl für die Reihe von Bewegungen erstellen, wobei der Bewegungsbefehl die Verlängerung der vorhergesagten Lebensdauer, Verringerung des Stromverbrauchs oder Verringerung des Leistungsverbrauchs ermöglicht, während die Zykluszeit erfüllt wird, die für die Reihe von Bewegungen des Roboters zulässig ist. Das heißt, die Einheit 140 zum maschinellen Lernen kann eine Erhöhung der Zykluszeit unter Berücksichtigung der vorhergesagten Lebensdauer, des Stromverbrauchs oder des Leistungsverbrauchs bei der Reihe von Bewegungen verhindern.As described above, in the fourth embodiment, the machine learning unit 140 searches for a combination of parameters such that at least one of the lifespan, power consumption, and power consumption in the series of movements is improved such that the constraint condition of the cycle time that associated with repetitions of the series of movements is fulfilled. Therefore, the machine learning unit 140 can create a motion command for the series of motions, the motion command enabling the extension of the predicted lifetime, reduction of power consumption, or reduction of power consumption while meeting the cycle time allowed for the series of motions of the robot is. That is, the machine learning unit 140 can prevent the cycle time from increasing in consideration of the predicted lifetime, power consumption, or power consumption in the series of movements.

Fünfte Ausführungsform.Fifth embodiment.

Als Nächstes wird die fünfte Ausführungsform der vorliegenden Erfindung unter Bezugnahme auf 16 beschrieben. In der fünften Ausführungsform wird eine Zustandsvariable von einem tatsächlichen Roboter erfasst.Next, the fifth embodiment of the present invention will be explained with reference to FIG 16 described. In the fifth embodiment, a state variable is detected from an actual robot.

<Vorrichtungskonfiguration im Fall des Erfassens von Zustandsvariablen von einem tatsächlichen Roboter><Device Configuration in Case of Acquiring State Variables from an Actual Robot>

16 ist ein Blockdiagramm, das eine beispielhafte Konfiguration eines Robotersystems veranschaulicht, das eine Parameterberechnungsvorrichtung gemäß der fünften Ausführungsform beinhaltet. Komponenten in 16, welche die gleichen Funktionen wie jene der Parameterberechnungsvorrichtung 100 erzielen, sind mit den gleichen Bezugszeichen gekennzeichnet und auf deren redundante Beschreibungen wird verzichtet. 16 14 is a block diagram illustrating an example configuration of a robot system including a parameter calculation device according to the fifth embodiment. components in 16 , which achieve the same functions as those of the parameter calculation device 100 are denoted by the same reference numerals, and redundant descriptions thereof are omitted.

Das Robotersystem 700 beinhaltet ein Robotersteuersystem 600 und den Roboter 300. Das Robotersteuersystem 600 ist ein System, das den Roboter 300 steuert, und beinhaltet eine Parameterberechnungsvorrichtung 1001 und die Robotersteuerung 200.The robot system 700 includes a robot control system 600 and the robot 300. The robot control system 600 is a system that controls the robot 300, and includes a parameter calculation device 1001 and the robot controller 200.

Die Parameterberechnungsvorrichtung 1001 führt eine Kommunikation mit einem mit dem tatsächlichen Roboter 300 verbundenen Sensor 400 aus und erfasst Zustandsvariablen von dem Roboter 300. Die Parameterberechnungsvorrichtung 1001 beinhaltet die Parameterspeichereinheit 110, eine Zustandsvariablenerfassungseinheit 120B, die Bewertungseinheit 130, die Einheit 140 zum maschinellen Lernen und die Beendigungsbedingungsbestimmungseinheit 150.The parameter calculation device 1001 communicates with a sensor 400 connected to the actual robot 300 and acquires state variables from the robot 300. The parameter calculation device 1001 includes the parameter storage unit 110, a state variable acquisition unit 120B, the evaluation unit 130, the machine learning unit 140, and the termination condition determination unit 150

Das heißt, im Vergleich zu der Parameterberechnungsvorrichtung 100 beinhaltet die Parameterberechnungsvorrichtung 1001 die Zustandsvariablenerfassungseinheit 120B anstelle der Zustandsvariablenerfassungseinheit 120.That is, compared to the parameter calculation device 100, the parameter calculation device 1001 includes the state variable acquisition unit 120B instead of the state variable acquisition unit 120.

Die Zustandsvariablenerfassungseinheit 120B beinhaltet eine Parameterübertragungseinheit 123 und eine Zustandsvariablenempfangseinheit 124. Die Parameterübertragungseinheit 123 ist mit der Parameterspeichereinheit 110, der Beendigungsbedingungsbestimmungseinheit 150 und der Robotersteuerung 200 verbunden und die Zustandsvariablenempfangseinheit 124 ist mit dem Sensor 400 und der Bewertungseinheit 130 verbunden.The state variable acquisition unit 120B includes a parameter transmission unit 123 and a state variable reception unit 124. The parameter transmission unit 123 is connected to the parameter storage unit 110, the termination condition determination unit 150 and the robot controller 200, and the state variable reception unit 124 is connected to the sensor 400 and the evaluation unit 130.

Die Parameterübertragungseinheit 123 überträgt einen Parameter, der in der Parameterspeichereinheit 110 gespeichert ist, an die Robotersteuerung 200. Die Zustandsvariablenempfangseinheit 124 empfängt von dem Sensor 400 eine Zustandsvariable, die erhalten wird, wenn der Roboter 300 betrieben wird.The parameter transmission unit 123 transmits a parameter stored in the parameter storage unit 110 to the robot controller 200. The state variable receiving unit 124 receives from the sensor 400 a state variable obtained when the robot 300 is operated.

Die Robotersteuerung 200 ist eine Vorrichtung, die dazu ausgelegt ist, den Roboter 300 unter Verwendung von Parametern zu steuern, die durch die Parameterberechnungsvorrichtung 1001 berechnet werden. Die Robotersteuerung 200 beinhaltet eine Befehlserstellungseinheit 201.The robot controller 200 is a device configured to control the robot 300 using parameters calculated by the parameter calculation device 1001 . The robot controller 200 includes a command generation unit 201.

Die Befehlserstellungseinheit 201 empfängt einen oder mehrere Parameter von der Parameterübertragungseinheit 123 und erstellt einen oder mehrere Bewegungsbefehlswerte für den Roboter 300 auf Grundlage der Parameter. Die Befehlserstellungseinheit 201 überträgt den erstellten Bewegungsbefehlswert an den Roboter 300. Der Roboter 300 führt eine Reihe von Bewegungen auf Grundlage der durch die Befehlserstellungseinheit 201 erstellten Bewegungsbefehlswerte aus.The command creation unit 201 receives one or more parameters from the parameter transmission unit 123 and creates one or more movement command values for the robot 300 based on the parameters. The command maker Processing unit 201 transmits the created motion command value to robot 300. Robot 300 performs a series of motions based on the motion command values created by command creating unit 201.

Der Sensor 400 erfasst eine oder mehrere Zustandsvariablen jedes Gelenks des Roboters 300 bei der Reihe von Bewegungen und überträgt die Zustandsvariablen an die Zustandsvariablenempfangseinheit 124. Der Sensor 400 kann innerhalb des Roboters 300 platziert sein oder kann außerhalb des Roboters 300 platziert sein. Darüber hinaus kann der Sensor 400 innerhalb des Robotersystems 700 platziert sein oder kann außerhalb des Robotersystems 700 platziert sein.The sensor 400 detects one or more state variables of each joint of the robot 300 in the series of movements and transmits the state variables to the state variable receiving unit 124. The sensor 400 may be placed inside the robot 300 or may be placed outside the robot 300. Furthermore, the sensor 400 can be placed inside the robotic system 700 or can be placed outside of the robotic system 700 .

In dem Robotersystem 700 erstellt die Befehlserstellungseinheit 201 als Reaktion darauf, dass die Parameterübertragungseinheit 123 einen oder mehrere Parameter, die in der Parameterspeichereinheit 110 gespeichert sind, an die Befehlserstellungseinheit 201 überträgt, Bewegungsbefehlswerte für den Roboter 300 auf Grundlage der Parameter. Der Roboter 300 führt eine Reihe von Bewegungen auf Grundlage der Bewegungsbefehlswerte aus und der Sensor 400 erfasst eine oder mehrere Zustandsvariablen jedes Gelenks des Roboters 300 bei der Reihe von Bewegungen und überträgt die Zustandsvariablen an die Zustandsvariablenempfangseinheit 124.In the robot system 700, in response to the parameter transmission unit 123 transmitting one or more parameters stored in the parameter storage unit 110 to the command generation unit 201, the command creation unit 201 creates movement command values for the robot 300 based on the parameters. The robot 300 performs a series of movements based on the movement command values, and the sensor 400 detects one or more state variables of each joint of the robot 300 in the series of movements and transmits the state variables to the state variable receiving unit 124.

Demnach empfängt die Zustandsvariablenempfangseinheit 124 von dem Sensor 400 die Zustandsvariablen, die erhalten werden, wenn der Roboter 300 auf Grundlage der durch die Befehlserstellungseinheit 201 erstellten Bewegungsbefehlswerte betrieben wird. Auf diese Weise erfasst die Parameterberechnungsvorrichtung 1001 eine oder mehrere Zustandsvariablen anhand des Ergebnisses des Betriebs des tatsächlichen Roboters 300. Die Zustandsvariablenempfangseinheit 124 überträgt die empfangenen Zustandsvariablen an die Bewertungseinheit 130.Thus, the state variable receiving unit 124 receives from the sensor 400 the state variables obtained when the robot 300 operates based on the movement command values prepared by the command preparing unit 201 . In this way, the parameter calculation device 1001 acquires one or more state variables based on the result of the operation of the actual robot 300. The state variable receiving unit 124 transmits the received state variables to the evaluating unit 130.

Die Bewertungseinheit 130, die Einheit 140 zum maschinellen Lernen und die Beendigungsbedingungsbestimmungseinheit 150 führen eine Verarbeitung aus, die ähnlich der in der ersten Ausführungsform beschriebenen ist. Folglich erstellt die Parameterberechnungsvorrichtung 1001 Parameter, die eine Erhöhung der Zykluszeit verhindern können, während sie die Beschränkungsbedingung für die Auslegungslebensdauer für die gesamte Reihe von Bewegungen des Roboters 300 erfüllen.The evaluation unit 130, the machine learning unit 140, and the termination condition determination unit 150 perform processing similar to that described in the first embodiment. Consequently, the parameter calculation device 1001 prepares parameters that can prevent an increase in the cycle time while satisfying the design life constraint condition for the entire series of movements of the robot 300 .

Es ist zu beachten, dass die Parameterberechnungsvorrichtung 100I innerhalb der Robotersteuerung 200 platziert werden kann. In diesem Fall beinhaltet die Robotersteuerung 200 eine Lernpunkteingabeeinheit ein, die einen oder mehrere Lernpunkte empfängt und die Lernpunkte in die Parameterberechnungsvorrichtung 100I eingibt, und eine Parameterausgabeeinheit, die einen oder mehrere Parameter ausgibt, die durch die Parameterberechnungsvorrichtung 100I erstellt werden. Darüber hinaus kann die Zustandsvariablenerfassungseinheit 120B auf die Parameterberechnungsvorrichtungen 100A bis 100H angewandt werden.Note that the parameter calculation device 100I can be placed inside the robot controller 200 . In this case, the robot controller 200 includes a learning point input unit that receives one or more learning points and inputs the learning points to the parameter calculation device 100I, and a parameter output unit that outputs one or more parameters prepared by the parameter calculation device 100I. In addition, the state variable acquisition unit 120B can be applied to the parameter calculation devices 100A to 100H.

Wie oben beschrieben, kann die Parameterberechnungsvorrichtung 100I gemäß der fünften Ausführungsform eine optimale Kombination von Parametern unter der Beschränkungsbedingung zu der Reihe von Bewegungen unter Verwendung der von dem tatsächlichen Roboter 300 erfassten Zustandsvariablen finden.As described above, the parameter calculation device 100I according to the fifth embodiment can find an optimal combination of parameters under the constraint condition on the series of movements using the state variables detected from the actual robot 300. FIG.

Hier wird die Hardwarekonfiguration der Parameterberechnungsvorrichtungen 100 und 100A bis 100I beschrieben. 17 ist eine Darstellung, die eine beispielhafte Hardwarekonfiguration der Parameterberechnungsvorrichtung gemäß jeder der ersten bis fünften Ausführungsform veranschaulicht. Da die Parameterberechnungsvorrichtungen 100 und 100A bis 100I die gleiche Hardwarekonfiguration aufweisen, wird hier die Hardwarekonfiguration der Parameterberechnungsvorrichtung 100 beschrieben.Here, the hardware configuration of the parameter calculation devices 100 and 100A to 100I will be described. 17 12 is a diagram illustrating an example hardware configuration of the parameter calculation device according to each of the first to fifth embodiments. Since the parameter calculation devices 100 and 100A to 100I have the same hardware configuration, the hardware configuration of the parameter calculation device 100 will be described here.

Die Parameterberechnungsvorrichtung 100 kann durch die in 17 veranschaulichte Steuerschaltung, d. h. einen Prozessor 301 und einen Speicher 302, umgesetzt werden. Der Prozessor 301 wird durch eine CPU (auch als zentrale Verarbeitungseinheit, zentrale Verarbeitungsvorrichtung, Verarbeitungsvorrichtung, Rechenvorrichtung, Mikroprozessor, Mikrocomputer, Prozessor oder DSP (digitaler Signalprozessor) bezeichnet) oder eine hochsystemintegrierte (Large Scale Integration - LSI) verdeutlicht. Der Speicher 302 wird durch einen Direktzugriffsspeicher (RAM) oder einen Festwertspeicher (ROM) verdeutlicht.The parameter calculation device 100 can be configured by the in 17 illustrated control circuit, ie a processor 301 and a memory 302, can be implemented. The processor 301 is exemplified by a CPU (also referred to as a central processing unit, central processing device, processing device, computing device, microprocessor, microcomputer, processor, or DSP (digital signal processor)) or a large scale integration (LSI). Memory 302 is represented by random access memory (RAM) or read only memory (ROM).

Die Parameterberechnungsvorrichtung 100 wird dadurch umgesetzt, dass der Prozessor 301 ein in dem Speicher 302 gespeichertes Programm zum Ausführen des Betriebs der Parameterberechnungsvorrichtung 100 liest und ausführt. Es kann auch gesagt werden, dass dieses Programm einen Computer dazu veranlasst, die Prozedur oder das Verfahren für die Parameterberechnungsvorrichtung 100 auszuführen. Der Speicher 302 wird zudem als ein temporärer Speicher verwendet, wenn der Prozessor 301 verschiedene Arten von Prozessen durchführt.The parameter calculation device 100 is implemented by the processor 301 reading and executing a program stored in the memory 302 for executing the operation of the parameter calculation device 100 . It can also be said that this program causes a computer to execute the procedure or method for the parameter calculation device 100 . The memory 302 is also used as a temporary storage when the processor 301 performs various types of processes.

Es ist zu beachten, dass einige der Funktionen der Parameterberechnungsvorrichtung 100 durch dedizierte Hardware umgesetzt werden können und einige andere davon durch Software oder Firmware umgesetzt werden können.It should be noted that some of the functions of the parameter calculation device 100 can be implemented by dedicated hardware n and some others can be implemented by software or firmware.

Sechste Ausführungsform.Sixth embodiment.

Als Nächstes wird eine Ausführungsform zum Einstellen von Parametern zum Bestimmen des Layouts der Arbeitsumgebung des Roboters 300, der eine Reihe von Bewegungen ausführt, beschrieben. Parameter zum Bestimmen des Layouts der Arbeitsumgebung des Roboters 300 sind Parameter zum Bestimmen der Bewegungsroute (Steuerabschnitte) des Roboters 300. Das heißt, die vorliegende Ausführungsform richtet sich auf eine Beschreibung eines Falls, in dem Bewegungsparameter als Parameter dienen, die dazu vorgesehen sind, die Bewegungsroute des Roboters zu bestimmen.Next, an embodiment for setting parameters for determining the layout of the working environment of the robot 300 performing a series of movements will be described. Parameters for determining the layout of the work environment of the robot 300 are parameters for determining the movement route (control sections) of the robot 300. That is, the present embodiment is directed to a description of a case where movement parameters serve as parameters intended to to determine the movement route of the robot.

Als die Parameterberechnungsvorrichtung gemäß der vorliegenden Ausführungsform kann eine beliebige der in der ersten bis fünften Ausführungsform beschriebenen Parameterberechnungsvorrichtungen 100 und 100A bis 100I verwendet werden. Das heißt, eine beliebige der Parameterberechnungsvorrichtungen 100 und 100A bis 100I kann die Parameter zum Bestimmen des Layouts der Arbeitsumgebung des Roboters 300 einstellen.Any of the parameter calculation devices 100 and 100A to 100I described in the first to fifth embodiments can be used as the parameter calculation device according to the present embodiment. That is, any one of the parameter calculation devices 100 and 100A to 100I can set the parameters for determining the layout of the work environment of the robot 300.

Die vorliegende Ausführungsform richtet sich auf die Beschreibung eines Falls, in dem die Parameterberechnungsvorrichtung 100 die Parameter zum Bestimmen des Layouts der Arbeitsumgebung einstellt. Im Besonderen stellt die Parameterberechnungsvorrichtung 100 die Parameter zum Bestimmen des Layouts der Arbeitsumgebung ein, indem sie die Funktion einer beliebigen der Parameterberechnungsvorrichtungen 100 und 100A bis 100I unter Verwendung der Parameterspeichereinheit 110, der Zustandsvariablenerfassungseinheit 120, der Bewertungseinheit 130, der Einheit 140 zum maschinellen Lernen und der Beendigungsbedingungsbestimmungseinheit 150 ausführt.The present embodiment is directed to the description of a case where the parameter calculation device 100 sets the parameters for determining the layout of the work environment. In particular, the parameter calculation device 100 sets the parameters for determining the layout of the working environment by using the function of any one of the parameter calculation devices 100 and 100A to 100I using the parameter storage unit 110, the state variable acquisition unit 120, the evaluation unit 130, the machine learning unit 140 and of the termination condition determination unit 150 executes.

Unter Bezugnahme auf die 18 und 19 werden der Prozess zum Einstellen des Layouts der Arbeitsumgebung mit dem Roboter 300 und die Wirkungen der Einstellung beschrieben. 18 ist eine Darstellung, die Steuerabschnitte veranschaulicht, bevor die Parameterberechnungsvorrichtung gemäß der sechsten Ausführungsform das Layout der Arbeitsumgebung einstellt. 19 ist eine Darstellung, die Steuerabschnitte veranschaulicht, nachdem die Parameterberechnungsvorrichtung gemäß der sechsten Ausführungsform die Parameterberechnungsvorrichtung gemäß der sechsten Ausführungsform das Layout der Arbeitsumgebung eingestellt hat. In diesem Beispiel betrachten wir die Reihe von Bewegungen, die in der schematischen Darstellung eines Layouts A0 in 18 veranschaulicht ist, bei dem sich der Roboter 300, der an einem Roboterbasisursprung O1 installiert ist, zunächst von dem Lernpunkt P1, d. h. der Ausgangsposition der Armspitze, zu dem Lernpunkt P2 an einer Teilezuführeinrichtung 800 bewegt, sich dann von dem Lernpunkt P2 zu dem Lernpunkt P3 an einem Montagetisch 801 bewegt und schließlich von dem Lernpunkt P3 zu dem Lernpunkt P1 zurückkehrt.Referring to the 18 and 19 the process of adjusting the layout of the work environment with the robot 300 and the effects of the adjustment will be described. 18 14 is a diagram illustrating control sections before the parameter calculation device according to the sixth embodiment adjusts the layout of the working environment. 19 14 is a diagram illustrating control sections after the parameter calculation device according to the sixth embodiment sets the layout of the working environment. In this example we consider the series of movements shown in the schematic representation of a layout A0 in 18 is illustrated in which the robot 300 installed at a robot base origin O1 first moves from the learning point P1, that is, the home position of the arm tip, to the learning point P2 on a parts feeder 800, then moves from the learning point P2 to the learning point P3 on a assembling table 801 and finally returns from the learning point P3 to the learning point P1.

Die schematische Darstellung eines Layouts A1 in 19 zeigt, dass Änderungen von dem Roboterbasisursprung O1 und den Lernpunkten P1, P2 und P3 zu einem Roboterbasisursprung O1' bzw. den Lernpunkten P1', P2' und P3' zu Änderungen in der Haltung des Roboters 300 und des Bewegungsgrades jedes Gelenks des Roboters in den Lernabschnitten (Steuerabschnitten) P1'-P2', P2'-P3' und P3'-P1' führen, welche die Reihe von Bewegungen bilden.The schematic representation of a layout A1 in 19 shows that changes from the robot base origin O1 and the learning points P1, P2 and P3 to a robot base origin O1' and the learning points P1', P2' and P3' lead to changes in the posture of the robot 300 and the degree of movement of each joint of the robot in the Lead sessions (control sessions) P1'-P2', P2'-P3' and P3'-P1' which make up the series of movements.

Änderungen der Installationsposition des Roboters 300 und der Anordnung der Teilezuführeinrichtung 800 und des Montagetisches 801, die Elemente zum Bestimmen des Layouts der Arbeitsumgebung sind, führen zu Veränderungen der Haltung des Roboters 300 und des Bewegungsgrades jedes Gelenks des Roboters in jedem der Steuerabschnitte, welche die Reihe von Bewegungen bilden. Dies führt daher zu einer Änderung des Bewertungswerts der in der Bewertungseinheit 130 berechneten Reihe von Bewegungen, die in der Parameterberechnungsvorrichtung 100 enthalten ist, gemäß der in einer beliebigen der ersten bis fünften Ausführungsform beschriebenen Weise. Auf Grundlage dieses Bewertungswerts berechnet die Einheit 140 zum maschinellen Lernen Parameter zum Bestimmen des Layouts der Arbeitsumgebung unter Verwendung der in einer beliebigen der ersten bis fünften Ausführungsform beschriebenen Weise.Changes in the installation position of the robot 300 and the arrangement of the parts feeder 800 and the assembly table 801, which are elements for determining the layout of the work environment, lead to changes in the posture of the robot 300 and the degree of movement of each joint of the robot in each of the control sections that make up the row form of movements. Therefore, this results in changing the evaluation value of the series of movements calculated in the evaluation unit 130 included in the parameter calculation device 100 according to the manner described in any one of the first to fifth embodiments. Based on this evaluation value, the machine learning unit 140 calculates parameters for determining the layout of the work environment using the manner described in any one of the first to fifth embodiments.

Beispiele von Parametern zum Bestimmen des Layouts der Arbeitsumgebung sind die dreidimensionalen Koordinaten (x, y, z) des Roboterbasisursprungs O1 und der Lernpunkte P1, P2 und P3. Die Parameterspeichereinheit 110 speichert diese dreidimensionalen Koordinaten als einzustellende Parameter. Die Einheit 140 zum maschinellen Lernen berechnet eine Kombination von dreidimensionalen Koordinaten unter Verwendung der Zykluszeit und des Bewertungswerts der durch die Bewertungseinheit 130 berechneten Reihe von Bewegungen, z. B. mittels PSO, bei der die dreidimensionale Koordinate (x, y, z) jedes Lernpunkts als Positionsvektor eines Partikels festgelegt wird.Examples of parameters for determining the layout of the work environment are the three-dimensional coordinates (x, y, z) of the robot base origin O1 and the learning points P1, P2, and P3. The parameter storage unit 110 stores these three-dimensional coordinates as parameters to be set. The machine learning unit 140 calculates a combination of three-dimensional coordinates using the cycle time and the evaluation value of the series of movements calculated by the evaluation unit 130, e.g. B. using PSO, in which the three-dimensional coordinate (x, y, z) of each learning point is defined as a position vector of a particle.

Um den Roboter 300 dazu zu veranlassen, Arbeit mit dem Layout der optimalen Parameter durchzuführen, die durch die Parameterberechnungsvorrichtung 100 ausgegeben werden, kann der Benutzer die Positionen von Installationen, wie etwa der Teilezuführeinrichtung 800 und des Montagetisches 801, bewegen. Alternativ dazu kann der Benutzer einen Punkt, an dem der Roboter 300 ein Objekt aufnimmt, auf einer Installation, wie etwa einem Förderband, bewegen, dessen Position fixiert wurde.In order to make the robot 300 perform work on the layout of the optimal parameters output by the parameter calculation device 100, it can be used the user moves the positions of installations such as the parts feeder 800 and the mounting table 801. Alternatively, the user can move a point where the robot 300 picks up an object on an installation, such as a conveyor belt, whose position has been fixed.

Die Einheit 140 zum maschinellen Lernen kann den Parametersuchbereich gemäß der in einer beliebigen der ersten bis fünften Ausführungsform beschriebenen Weise einstellen. Beispielsweise kann beim Layout A0 in 18 die Einheit 140 zum maschinellen Lernen die Anordnungspositionen der Teilezuführeinrichtung 800 und des Montagetisches 801 fixieren, um nur die Koordinaten des Roboterbasisursprungs O1 und des Lernpunkts P1 einzustellen, ohne die Koordinaten der Lernpunkte P2 und P3 einzustellen.The machine learning unit 140 can set the parameter search range according to the manner described in any one of the first to fifth embodiments. For example, with layout A0 in 18 the machine learning unit 140 fixes the arrangement positions of the parts feeder 800 and the assembly table 801 to set only the coordinates of the robot base origin O1 and the learning point P1 without setting the coordinates of the learning points P2 and P3.

Ferner kann die Parameterberechnungsvorrichtung 100 gemäß der vorliegenden Ausführungsform Parameter für jeden Steuerabschnitt der in einer beliebigen der ersten bis fünften Ausführungsform beschriebenen Reihe von Bewegungen zusammen mit den Parametern zum Bestimmen des Layouts der Arbeitsumgebung berechnen. Beispielsweise kann die Parameterberechnungsvorrichtung 100 dazu ausgelegt sein, die dreidimensionalen Koordinaten der in der Reihe von Bewegungen als Parameter enthaltenen dreidimensionalen Koordinaten zu berechnen und als Parameter die Geschwindigkeit und Beschleunigung im Steuerabschnitt zu berechnen, der bis zum nächsten Lernpunkt verläuft. Alternativ dazu kann die Parameterberechnungsvorrichtung 100 nur Parameter zum Bestimmen des Layouts der Arbeitsumgebung berechnen, ohne Parameter für jeden Steuerabschnitt der in einer der ersten bis fünften Ausführungsform beschriebenen Reihe von Bewegungen zu berechnen.Further, the parameter calculation device 100 according to the present embodiment can calculate parameters for each control portion of the series of movements described in any one of the first to fifth embodiments together with the parameters for determining the layout of the working environment. For example, the parameter calculation device 100 may be configured to calculate the three-dimensional coordinates of the three-dimensional coordinates included in the series of movements as parameters, and to calculate, as parameters, the speed and acceleration in the control section going to the next learning point. Alternatively, the parameter calculation device 100 may only calculate parameters for determining the layout of the work environment, without calculating parameters for each control portion of the series of movements described in any one of the first to fifth embodiments.

Wie oben beschrieben, beinhalten in der vorliegenden Ausführungsform Parameter zum Steuern der Bewegungen des Roboters 300 zwangsläufig Parameter zum Bestimmen des Layouts der Arbeitsumgebung, in welcher der Roboter 300 die Reihe von Bewegungen ausführt. Dahingegen sind in der vorliegenden Ausführungsform Parameter zum Steuern des Betriebs des Roboters 300, die in einer der ersten bis fünften Ausführungsform beschrieben sind, nicht erforderlich, um als in der Parameterspeichereinheit 110 gespeicherten Parameter oder als durch die Einheit 140 zum maschinellen Lernen erlernten Parameter zu dienen.As described above, in the present embodiment, parameters for controlling the movements of the robot 300 inevitably include parameters for determining the layout of the work environment in which the robot 300 performs the series of movements. On the other hand, in the present embodiment, parameters for controlling the operation of the robot 300 described in any one of the first to fifth embodiments are not required to serve as parameters stored in the parameter storage unit 110 or parameters learned by the machine learning unit 140 .

Wie oben beschrieben, ist es gemäß der sechsten Ausführungsform möglich, das Layout der Arbeitsumgebung zu bestimmen, das dazu beiträgt, eine Erhöhung der Zykluszeit zu verhindern, während die Beschränkungsbedingung der Reihe von Bewegungen erfüllt wird.As described above, according to the sixth embodiment, it is possible to determine the layout of the working environment that contributes to preventing the cycle time from increasing while satisfying the restriction condition of the series of movements.

Die Konfigurationen, die in den vorstehenden Ausführungsformen beschrieben sind, sind Beispiele für den Inhalt der vorliegenden Erfindung und können mit anderen öffentlich bekannten Techniken kombiniert und teilweise weggelassen und/oder modifiziert werden, ohne vom Umfang der vorliegenden Erfindung abzuweichen.The configurations described in the above embodiments are examples of the contents of the present invention, and can be combined with other publicly known techniques and partially omitted and/or modified without departing from the scope of the present invention.

Bezugszeichenlistereference list

100, 100A bis 100I100, 100A to 100I
Parameterberechnungsvorrichtung;parameter calculation device;
110110
Parameterspeichereinheit;parameter storage unit;
120, 120A, 120B120, 120A, 120B
Zustandsvariablenerfassungseinheit;state variable detection unit;
121, 201121, 201
Befehlserstellungseinheit;command generation unit;
122122
Bewegungsprobeeinheit;movement test unit;
123123
Parameterübertragungseinheit;parameter transmission unit;
124124
Zustandsvariablenempfangseinheit;state variable receiving unit;
130, 130B, 130F, 130G, 130H130, 130B, 130F, 130G, 130H
Bewertungseinheit;evaluation unit;
131131
Kinetikberechnungseinheit;kinetics calculation unit;
132132
Beschädigungsmaßberechnungseinheit;damage measure calculation unit;
133a, 135a, 137a, 139133a, 135a, 137a, 139
Beschränkungsbestimmungseinheit;restriction determination unit;
134134
Stromverbrauchsberechnungseinheit;power consumption calculation unit;
136136
Leistungsverbrauchsberechnungseinheit;power consumption calculation unit;
138138
Beschränkungsauswahleinheit;constraint selection unit;
140140
Einheit zum maschinellen Lernen;machine learning unit;
150150
Beendigungsbedingungsbestimmungseinheit;termination condition determination unit;
160160
Einstellabschnittspeichereinheit;setting section storage unit;
170170
Lernfortschrittsvisualisierungseinheit;learning progress visualization unit;
180180
Programmerstellungseinheit;programming unit;
200200
Robotersteuerung;robot controller;
300300
Roboter;Robot;
301301
Prozessor;Processor;
302302
Speicher;Storage;
310310
distales Ende;distal end;
400400
Sensor;Sensor;
500500
Schnittstellenbildschirm;interface screen;
600600
Robotersteuersystem;robot control system;
700700
Robotersystem;robotic system;
800800
Teilezuführeinrichtung;parts feeder;
801801
Montagetisch,assembly table,
O1, O1'O1, O1'
Roboterbasisursprung;robot base origin;
P1, P1', P2, P2', P3, P3'P1, P1', P2, P2', P3, P3'
Lernpunkt.learning point.

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN 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 cited by the applicant was 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 PatentliteraturPatent Literature Cited

  • JP 2013144349 [0004]JP 2013144349 [0004]

Claims (19)

Parameterberechnungsvorrichtung, umfassend: eine Parameterspeichereinheit, um einen oder mehrere Parameter zum Steuern einer oder mehrerer Bewegungen eines Roboters für jeden Steuerabschnitt mit einer Geschwindigkeit von null als eine Grenze zu speichern; eine Zustandsvariablenerfassungseinheit, um auf Grundlage der Parameter eine oder mehrere Zustandsvariablen zu erfassen, die einen Zustand des Roboters bei einer Reihe von Bewegungen angeben, die aus einer Vielzahl von Steuerabschnitten gebildet ist; eine Bewertungseinheit, um auf Grundlage der Zustandsvariablen einen Bewertungswert zum Bewerten der Reihe von Bewegungen und einer Zykluszeit der Reihe von Bewegungen zu berechnen; und eine Einheit zum maschinellen Lernen, um durch Lernen mittels mehrkriterieller Optimierung einen oder mehrere Parameter zu berechnen, die bewirken, dass der Bewertungswert eine erste Bedingung erfüllt und die Zykluszeit eine zweite Bedingung erfüllt, und um die Parameterspeichereinheit dazu zu veranlassen, die berechneten Parameter zu speichern.Parameter calculation device, comprising: a parameter storage unit to store one or more parameters for controlling one or more movements of a robot for each control section with a speed of zero as a limit; a state variable acquiring unit for acquiring, based on the parameters, one or more state variables indicative of a state of the robot in a series of movements, made up of a plurality of control sections; an evaluation unit to calculate an evaluation value for evaluating the series of movements and a cycle time of the series of movements based on the state variable; and a machine learning unit to calculate one or more parameters that cause the evaluation value to meet a first condition and the cycle time to meet a second condition through learning using multi-criteria optimization, and to cause the parameter storage unit to store the calculated parameters . Parameterberechnungsvorrichtung nach Anspruch 1, wobei die Parameter einen Parameter beinhalten, der eine Geschwindigkeit des Roboters bestimmt.Parameter calculation device according to claim 1 , where the parameters include a parameter that determines a speed of the robot. Parameterberechnungsvorrichtung nach Anspruch 1, wobei die Parameter einen Parameter beinhalten, der ein Layout einer Arbeitsumgebung bestimmt, in welcher der Roboter die Reihe von Bewegungen ausführt.Parameter calculation device according to claim 1 , wherein the parameters include a parameter that determines a layout of a work environment in which the robot performs the series of motions. Parameterberechnungsvorrichtung nach einem der Ansprüche 1 bis 3, wobei der Bewertungswert mindestens eines von einer vorhergesagten Lebensdauer einer Komponente des Roboters, die mit Wiederholungen der Reihe von Bewegungen assoziiert ist, einem Stromverbrauch der Komponente bei der Reihe von Bewegungen und einem Leistungsverbrauch der Komponente bei der Reihe von Bewegungen ist.Parameter calculation device according to one of Claims 1 until 3 , wherein the rating value is at least one of a predicted lifetime of a component of the robot associated with repetitions of the series of movements, a power consumption of the component in the series of movements, and a power consumption of the component in the series of movements. Parameterberechnungsvorrichtung nach einem der Ansprüche 1 bis 4, wobei die Einheit zum maschinellen Lernen, durch Lernen, einen oder mehrere Parameter derart berechnet, dass die Zykluszeit verkürzt wird, während der Bewertungswert eine Beschränkungsbedingung erfüllt.Parameter calculation device according to one of Claims 1 until 4 , wherein the machine learning unit calculates, through learning, one or more parameters such that the cycle time is shortened while the evaluation value satisfies a constraint condition. Parameterberechnungsvorrichtung nach einem der Ansprüche 1 bis 4, wobei die Einheit zum maschinellen Lernen, durch Lernen, einen oder mehrere Parameter derart berechnet, dass der Bewertungswert verbessert wird, während die Zykluszeit eine Beschränkungsbedingung erfüllt.Parameter calculation device according to one of Claims 1 until 4 , wherein the machine learning unit calculates, through learning, one or more parameters such that the score is improved while the cycle time satisfies a constraint condition. Parameterberechnungsvorrichtung nach Anspruch 4, wobei wenn einer der Bewertungswerte die vorhergesagte Lebensdauer ist, die Zustandsvariablen eine Verschiebung eines Gelenks des Roboters, eine Geschwindigkeit des Gelenks und eine Beschleunigung des Gelenks bei der Reihe von Bewegungen beinhalten, und die Bewertungseinheit ein Lastdrehmoment, das auf das Gelenk ausgeübt wird, unter Verwendung der Verschiebung, der Geschwindigkeit und der Beschleunigung berechnet, ein Beschädigungsmaß der Komponente bei der Reihe von Bewegungen auf Grundlage des Lastdrehmoments und eines Bewegungsgrads des Gelenks berechnet und die vorhergesagte Lebensdauer auf Grundlage des Beschädigungsmaßes berechnet.Parameter calculation device according to claim 4 , wherein when one of the evaluation values is the predicted lifetime, the state variables include a displacement of a joint of the robot, a speed of the joint and an acceleration of the joint in the series of movements, and the evaluation unit includes a load torque applied to the joint calculated using the displacement, the velocity and the acceleration, calculated a damage amount of the component in the series of movements based on the load torque and a movement degree of the joint, and calculated the predicted life based on the damage amount. Parameterberechnungsvorrichtung nach Anspruch 4, wobei wenn einer der Bewertungswerte der Stromverbrauch ist, die Zustandsvariablen eine Geschwindigkeit eines Gelenks des Roboters, eine Beschleunigung des Gelenks und einen Stromwert zum Antreiben des Gelenks bei der Reihe von Bewegungen beinhalten, und die Bewertungseinheit den Stromverbrauch unter Verwendung des Stromwerts berechnet.Parameter calculation device according to claim 4 , wherein when one of the evaluation values is power consumption, the state variables include a speed of a joint of the robot, an acceleration of the joint, and a current value for driving the joint in the series of movements, and the evaluation unit calculates power consumption using the current value. Parameterberechnungsvorrichtung nach Anspruch 4, wobei wenn einer der Bewertungswerte der Leistungsverbrauch ist, die Zustandsvariablen eine Geschwindigkeit eines Gelenks des Roboters, eine Beschleunigung des Gelenks und einen Stromwert zum Antreiben des Gelenks bei der Reihe von Bewegungen beinhalten, und die Bewertungseinheit den Leistungsverbrauch unter Verwendung des Stromwerts berechnet.Parameter calculation device according to claim 4 , wherein when one of the evaluation values is power consumption, the state variables include a speed of a joint of the robot, an acceleration of the joint, and a current value for driving the joint in the series of movements, and the evaluation unit calculates the power consumption using the current value. Parameterberechnungsvorrichtung nach einem der Ansprüche 1 bis 9, wobei die Einheit zum maschinellen Lernen einen Ausgangswert eines zu erlernenden Parameters auf Grundlage eines Bewertungswerts, der für jeden der Steuerabschnitte berechnet wird, einstellt.Parameter calculation device according to one of Claims 1 until 9 , wherein the machine learning unit sets an initial value of a parameter to be learned based on an evaluation value calculated for each of the control sections. Parameterberechnungsvorrichtung nach einem der Ansprüche 1 bis 10, wobei die Einheit zum maschinellen Lernen einen Steuerabschnitt, in dem das Lernen durchgeführt werden soll, auf Grundlage eines Bewertungswerts, der für jeden der Steuerabschnitte berechnet wird, auswählt.Parameter calculation device according to one of Claims 1 until 10 , wherein the machine learning unit selects a control section in which learning is to be performed based on an evaluation value calculated for each of the control sections. Parameterberechnungsvorrichtung nach einem der Ansprüche 1 bis 10, wobei die Einheit zum maschinellen Lernen für jeden der Steuerabschnitte ein Verhältnis zwischen einer Bewegungszeit und dem Bewertungswert in dem Steuerabschnitt berechnet und einen Steuerabschnitt, in dem das Lernen durchgeführt werden soll, auf Grundlage des Verhältnisses auswählt.Parameter calculation device according to one of Claims 1 until 10 , where the unit for machine learning, calculates a ratio between a moving time and the evaluation value in the control section for each of the control sections, and selects a control section in which the learning is to be performed based on the ratio. Parameterberechnungsvorrichtung nach einem der Ansprüche 1 bis 12, wobei die Zustandsvariablenerfassungseinheit die Zustandsvariablen aus einem Simulationsergebnis erfasst, das durch einen Simulator bereitgestellt wird, der Bewegungen des Roboters simuliert.Parameter calculation device according to one of Claims 1 until 12 , wherein the state variable acquisition unit acquires the state variables from a simulation result provided by a simulator that simulates movements of the robot. Parameterberechnungsvorrichtung nach einem der Ansprüche 1 bis 12, wobei die Zustandsvariablenerfassungseinheit die Zustandsvariable auf Grundlage eines Betriebsergebnisses erfasst, das durch den tatsächlichen Betrieb des Roboters erhalten wird.Parameter calculation device according to one of Claims 1 until 12 , wherein the state variable acquisition unit acquires the state variable based on an operational result obtained through actual operation of the robot. Parameterberechnungsvorrichtung nach einem der Ansprüche 1 bis 10, ferner umfassend eine Abschnittspeichereinheit, um einen Steuerabschnitt zu speichern, bei dem die Einheit zum maschinellen Lernen den Parameter erlernt, wobei die Abschnittspeichereinheit einen durch einen Benutzer vorgegebenen Steuerabschnitt speichert, und die Einheit zum maschinellen Lernen den Parameter für den in der Abschnittspeichereinheit gespeicherten Steuerabschnitt erlernt.Parameter calculation device according to one of Claims 1 until 10 , further comprising a section storage unit for storing a control section in which the machine learning unit learns the parameter, the section storage unit storing a control section specified by a user, and the machine learning unit learning the parameter for the control section stored in the section storage unit . Parameterberechnungsvorrichtung nach einem der Ansprüche 1 bis 15, ferner umfassend eine Lernfortschrittvisualisierungseinheit, um Informationen zu erstellen, die mindestens eines von einem Wert des Parameters, der in der Parameterspeichereinheit gespeichert ist, einer durch die Bewertungseinheit berechneten Zykluszeit und einem durch die Bewertungseinheit berechneten Bewertungswert visualisiert, während die Einheit zum maschinellen Lernen gerade den Parameter erlernt.Parameter calculation device according to one of Claims 1 until 15 , further comprising a learning progress visualization unit to create information that visualizes at least one of a value of the parameter stored in the parameter storage unit, a cycle time calculated by the evaluation unit, and an evaluation value calculated by the evaluation unit while the machine learning unit is doing the parameters learned. Parameterberechnungsvorrichtung nach einem der Ansprüche 1 bis 16, ferner umfassend eine Programmerstellungseinheit, um ein Programm zu erstellen, das dazu ausgelegt ist, den Roboter auf Grundlage eines Parameters zu betreiben, der durch die Einheit zum maschinellen Lernen berechnet wird.Parameter calculation device according to one of Claims 1 until 16 , further comprising a program creation unit to create a program configured to operate the robot based on a parameter calculated by the machine learning unit. Robotersteuersystem, umfassend: die Parameterberechnungsvorrichtung nach einem der Ansprüche 1 bis 17; und eine Robotersteuerung, um eine Bewegung des Roboters auf Grundlage eines durch die Parameterberechnungsvorrichtung berechneten Parameters zu steuern.A robot control system comprising: the parameter calculation device according to any one of Claims 1 until 17 ; and a robot controller for controlling a movement of the robot based on a parameter calculated by the parameter calculation device. Robotersystem, umfassend: das Robotersteuersystem nach Anspruch 18; und den durch das Robotersteuersystem gesteuerten Roboter.A robot system comprising: the robot control system according to Claim 18 ; and the robot controlled by the robot control system.
DE112019007404.0T 2019-06-06 2019-12-03 PARAMETER CALCULATION DEVICE, ROBOT CONTROL SYSTEM AND ROBOT SYSTEM Pending DE112019007404T5 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/JP2019/022635 WO2020246005A1 (en) 2019-06-06 2019-06-06 Parameter calculation device, robot control system, and robot system
JPPCT/JP2019/022635 2019-06-06
PCT/JP2019/047280 WO2020246059A1 (en) 2019-06-06 2019-12-03 Parameter calculation device, robot control system, and robot system

Publications (1)

Publication Number Publication Date
DE112019007404T5 true DE112019007404T5 (en) 2022-02-24

Family

ID=73653155

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112019007404.0T Pending DE112019007404T5 (en) 2019-06-06 2019-12-03 PARAMETER CALCULATION DEVICE, ROBOT CONTROL SYSTEM AND ROBOT SYSTEM

Country Status (4)

Country Link
JP (1) JP6833115B1 (en)
CN (1) CN113950393B (en)
DE (1) DE112019007404T5 (en)
WO (2) WO2020246005A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022107392A1 (en) 2022-03-29 2023-10-05 Gerhard Schubert Gesellschaft mit beschränkter Haftung Method for accelerating a handling machine
DE102021103126B4 (en) 2021-02-10 2023-10-12 Gerhard Schubert Gesellschaft mit beschränkter Haftung Method for accelerating a handling machine

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112020007693T5 (en) * 2020-10-12 2023-08-10 Mitsubishi Electric Corporation PARAMETER ADJUSTMENT DEVICE AND PARAMETER ADJUSTMENT METHOD
JP7385948B1 (en) 2022-05-11 2023-11-24 オリエンタル技研工業株式会社 Proposed device
WO2024089873A1 (en) * 2022-10-28 2024-05-02 Smc株式会社 Parameter determination device and parameter determination method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013144349A (en) 2011-12-13 2013-07-25 Fanuc Ltd Simulator for estimating life of robot speed reducer

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3040906B2 (en) * 1994-01-19 2000-05-15 本田技研工業株式会社 Robot operation time evaluation method and apparatus
JP2004020388A (en) * 2002-06-17 2004-01-22 Mitsubishi Electric Corp Lifetime evaluating device
JP4096743B2 (en) * 2003-01-17 2008-06-04 富士電機システムズ株式会社 Cycle time display method, cycle time display device, and cycle time display program
JP4111044B2 (en) * 2003-04-21 2008-07-02 株式会社安川電機 Robot controller
JP2006215807A (en) * 2005-02-03 2006-08-17 Yaskawa Electric Corp Robot control device and control method
US9108316B2 (en) * 2008-12-10 2015-08-18 Abb Research Ltd. Method and system for in-production optimization of the parameters of a robot used for assembly
JP5890477B2 (en) * 2014-07-09 2016-03-22 ファナック株式会社 Robot program correction system
JP6219897B2 (en) * 2015-09-28 2017-10-25 ファナック株式会社 Machine tools that generate optimal acceleration / deceleration
JP6010204B1 (en) * 2015-10-26 2016-10-19 ファナック株式会社 Machine learning apparatus and method for learning predicted life of power element, life prediction apparatus and motor driving apparatus equipped with machine learning apparatus
JP2017199077A (en) * 2016-04-25 2017-11-02 ファナック株式会社 Cell controller optimizing operation of production system having plurality of industrial machines
JP6514171B2 (en) * 2016-09-27 2019-05-15 ファナック株式会社 Machine learning apparatus and method for learning an optimal article gripping path
JP6457473B2 (en) * 2016-12-16 2019-01-23 ファナック株式会社 Machine learning apparatus, robot system, and machine learning method for learning operation of robot and laser scanner
JP2018126798A (en) * 2017-02-06 2018-08-16 セイコーエプソン株式会社 Control device, robot, and robot system
JP2018126796A (en) * 2017-02-06 2018-08-16 セイコーエプソン株式会社 Control device, robot, and robot system
JP6514260B2 (en) * 2017-04-13 2019-05-15 ファナック株式会社 Control device and machine learning device
JP6680731B2 (en) * 2017-08-23 2020-04-15 ファナック株式会社 Processing time prediction system
JP6659652B2 (en) * 2017-10-31 2020-03-04 ファナック株式会社 Processing condition adjustment device and machine learning device
WO2019098044A1 (en) * 2017-11-14 2019-05-23 三菱電機株式会社 Robot motion adjustment device, motion control system, and robot system
JP6877324B2 (en) * 2017-11-27 2021-05-26 川崎重工業株式会社 Robot control device and robot system equipped with it

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013144349A (en) 2011-12-13 2013-07-25 Fanuc Ltd Simulator for estimating life of robot speed reducer

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021103126B4 (en) 2021-02-10 2023-10-12 Gerhard Schubert Gesellschaft mit beschränkter Haftung Method for accelerating a handling machine
DE102022107392A1 (en) 2022-03-29 2023-10-05 Gerhard Schubert Gesellschaft mit beschränkter Haftung Method for accelerating a handling machine

Also Published As

Publication number Publication date
CN113950393A (en) 2022-01-18
WO2020246059A1 (en) 2020-12-10
CN113950393B (en) 2023-11-17
WO2020246005A1 (en) 2020-12-10
JP6833115B1 (en) 2021-02-24
JPWO2020246059A1 (en) 2021-09-13

Similar Documents

Publication Publication Date Title
DE112019007404T5 (en) PARAMETER CALCULATION DEVICE, ROBOT CONTROL SYSTEM AND ROBOT SYSTEM
DE102017000955B4 (en) Production control system and integrated production control system
DE102018204740B4 (en) Action information learning device, robot control system and action information learning method
DE102016008994B4 (en) MACHINE TOOL, SIMULATION DEVICE AND MACHINE LEARNING DEVICE
DE112017002498B4 (en) ROBOT OPERATION EVALUATION DEVICE, ROBOT OPERATION EVALUATION METHOD AND ROBOT SYSTEM
DE102015004932B4 (en) Simulation device for several robots
DE102019001948B4 (en) Control and machine learning device
DE102010021604B4 (en) Apparatus for estimating an energy consumption
DE102013008523B4 (en) Robot program changing device
DE102018006946A1 (en) CONTROL AND MECHANICAL LEARNING DEVICE
DE102017002996A1 (en) MACHINE LEARNING DEVICE FOR LEARNING THROUGH THE USE OF A SIMULATION RESULT, MACHINE SYSTEM, MANUFACTURING SYSTEM AND MACHINE LEARNING PROCESS
DE102019106729A1 (en) Drive device and machine learning device
DE112017003961B4 (en) Control for parallel link mechanism
DE102019204861A1 (en) MACHINE LEARNING DEVICE; CONTROL DEVICE AND MACHINE LEARNING
DE102018209951A1 (en) MACHINE TOOL, SERVO CONTROLLER, SERVO CONTROLLER AND MACHINE LEARNING
DE102018200794A1 (en) ACTION INFORMATION ALIGNMENT DEVICE, ACTION INFORMATION OPTIMIZATION SYSTEM AND ACTION INFORMATION PROGRAM
DE102018003769A1 (en) Machine learning device, servo control system and machine learning method
DE102018001028B4 (en) Numerical control
DE102019204949A1 (en) MACHINE LEARNING DEVICE, CONTROL DEVICE AND MACHINE LEARNING
DE102019006725A1 (en) Control device and control system
DE102019209104A1 (en) Output device, control device and output method for an evaluation function value
DE102020124734A1 (en) SIMULATION DEVICE
DE112018001318T5 (en) WIND POWER GENERATION SYSTEM
EP4121825A1 (en) Computer-implemented method for creating control data sets, cad-cam system and production system
DE102011075337A1 (en) Method for controlling system, involves carrying out action to control system by obtaining control information from data of system, where another action or operation is determined according to data to control system

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R084 Declaration of willingness to licence