JP6940425B2 - Control device and machine learning device - Google Patents

Control device and machine learning device Download PDF

Info

Publication number
JP6940425B2
JP6940425B2 JP2018021040A JP2018021040A JP6940425B2 JP 6940425 B2 JP6940425 B2 JP 6940425B2 JP 2018021040 A JP2018021040 A JP 2018021040A JP 2018021040 A JP2018021040 A JP 2018021040A JP 6940425 B2 JP6940425 B2 JP 6940425B2
Authority
JP
Japan
Prior art keywords
motor
robot
temperature
movement command
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018021040A
Other languages
Japanese (ja)
Other versions
JP2019136807A (en
Inventor
支鈔
和臣 前田
和臣 前田
嘉孝 久保
嘉孝 久保
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2018021040A priority Critical patent/JP6940425B2/en
Publication of JP2019136807A publication Critical patent/JP2019136807A/en
Application granted granted Critical
Publication of JP6940425B2 publication Critical patent/JP6940425B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、制御装置及び機械学習装置に関する。 The present invention relates to a control device and a machine learning device.

工場で工作機械へのワークの投入やコンベア上の製品の仕分けを行うためにロボットを投入する場合、従来から6軸多関節ロボットが使用されてきた。6軸多関節ロボットは、ロボットハンドの先端位置に応じて各軸の位置が全て一意に定まるようになっている。しかし、移動元から移動先に稼動する経路は自由に選べる。一方、6軸多関節ロボットにさらに1軸を付加した7軸多関節ロボットも一般に用いられている(図8,特許文献1等)。7軸多関節ロボットは、ロボットハンドの先端位置に対して、各軸の位置が一意に定まるわけではなく、ロボットの動作自由度に余裕があることが特徴である。 Conventionally, a 6-axis articulated robot has been used when a robot is used to load a work into a machine tool or sort products on a conveyor at a factory. In the 6-axis articulated robot, the positions of all the axes are uniquely determined according to the tip position of the robot hand. However, the route from the source to the destination can be freely selected. On the other hand, a 7-axis articulated robot in which one axis is further added to the 6-axis articulated robot is also generally used (FIG. 8, Patent Document 1, etc.). The 7-axis articulated robot is characterized in that the position of each axis is not uniquely determined with respect to the tip position of the robot hand, and the robot has a sufficient degree of freedom in operation.

図9は、7軸多関節ロボットを用いて、コンベア上を流れてくる製品の中の不良品を不良品箱へと仕分けする様子を示す図である。図9に例示されるように、7軸多関節ロボットは、J1〜J7の軸を持ち、それぞれの軸を動作させることによりロボットハンドの先端を所望の位置へと移動させることができる。例えば、図9において、7軸多関節ロボットによりコンベア上の製品の中から不良品を不良品箱へと移す場合、例えばJ4,J5軸を駆動させてコンベア上の製品を不良品箱へと移すこともできるし(経路1)、J2,J3軸を駆動させてコンベア上の製品を不良品箱へと移すこともできる(経路2)。また、これ以外の軸の組み合わせで、コンベア上の製品を不良品箱へと移すことも可能である。 FIG. 9 is a diagram showing how a 7-axis articulated robot is used to sort defective products among products flowing on a conveyor into defective product boxes. As illustrated in FIG. 9, the 7-axis articulated robot has axes J1 to J7, and the tip of the robot hand can be moved to a desired position by operating each axis. For example, in FIG. 9, when a defective product is transferred from the products on the conveyor to the defective product box by a 7-axis articulated robot, for example, the J4 and J5 axes are driven to transfer the product on the conveyor to the defective product box. This can be done (path 1), or the products on the conveyor can be moved to the defective box by driving the J2 and J3 axes (path 2). It is also possible to transfer the product on the conveyor to the defective product box by combining other shafts.

特開2011−011263号公報Japanese Unexamined Patent Publication No. 2011-011263

この様に、7軸多関節ロボットをはじめ複数軸多関節ロボットを用いる場合、1つの動作を実現するための軸の組み合わせが複数存在するが、一般的には、同じ動作ができる軸の組み合わせの中から高速で動作させることが可能な軸の組み合わせが選択される。しかしながら、同じ軸ばかりを使用していると、当該軸を駆動するモータの稼動温度が上昇する。そして、モータを高温領域で使い続けると、当該モータの寿命が加速度的に短くなるという問題が生じる。また、追加の課題として、各モータに関連する減速器についても同様に、高温領域で使い続けると寿命が短くなるという問題がある。 In this way, when a multi-axis articulated robot such as a 7-axis articulated robot is used, there are a plurality of combinations of axes for realizing one motion, but in general, a combination of axes capable of performing the same motion. A combination of axes that can be operated at high speed is selected from the inside. However, if only the same shaft is used, the operating temperature of the motor that drives the shaft rises. Then, if the motor is continuously used in a high temperature region, there arises a problem that the life of the motor is shortened at an accelerating rate. Further, as an additional problem, the speed reducer related to each motor also has a problem that the life is shortened if it is continuously used in a high temperature region.

そこで本発明の目的は、各モータの温度を考慮して、各モータをできる限り低温領域に稼働して、モータの稼働寿命を延ばすことが可能な制御装置及び機械学習装置を提供することである。 Therefore, an object of the present invention is to provide a control device and a machine learning device capable of extending the operating life of each motor by operating each motor in a low temperature region as much as possible in consideration of the temperature of each motor. ..

本発明では、機械学習技術を用いて、各モータの温度を考慮して、各モータをできる限り低温領域で稼働して、モータの稼働寿命を延ばせるようにロボットの動作を行う際に駆動させる軸の組み合わせを選択したり、移動速度と距離を変更することで、上記課題を解決する。 In the present invention, using machine learning technology, a shaft that is driven when each motor is operated in a low temperature region as much as possible in consideration of the temperature of each motor and the robot is operated so as to extend the operating life of the motor. The above problem is solved by selecting the combination of the above and changing the moving speed and the distance.

そして、本発明の一態様は、ロボットの各軸を駆動するモータの寿命を延ばすように制御する制御装置であって、前記ロボットの動作環境に対する前記モータの移動指令を学習する機械学習装置を備え、前記機械学習装置は、前記モータの移動指令を示す移動指令データ、前記ロボットの先端の移動元及び移動先の位置姿勢を示す基準位置姿勢データ、及び前記モータの温度乃至推定温度を示すモータ温度データを、環境の現在状態を表す状態変数として観測する状態観測部と、前記モータの温度乃至推定温度の適否判定結果を示すモータ温度判定データを、判定データとして取得する判定データ取得部と、前記状態変数と前記判定データとを用いて、前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度と、前記モータの移動指令とを関連付けて学習する学習部と、を備える制御装置である。 Then, one aspect of the present invention is a control device that controls to extend the life of the motor that drives each axis of the robot, and includes a machine learning device that learns a movement command of the motor with respect to the operating environment of the robot. The machine learning device includes movement command data indicating a movement command of the motor, reference position / orientation data indicating the position / orientation of the moving source and moving destination of the tip of the robot, and a motor temperature indicating the temperature or estimated temperature of the motor. A state observation unit that observes data as a state variable representing the current state of the environment, a judgment data acquisition unit that acquires motor temperature judgment data indicating the suitability judgment result of the motor temperature or the estimated temperature as judgment data, and the above. Using the state variable and the determination data, a learning unit that learns by associating the position / orientation of the movement source / destination of the tip of the robot, the temperature or the estimated temperature of the motor, and the movement command of the motor with each other. It is a control device provided.

本発明の他の態様は、ロボットの各軸を駆動するモータの寿命を延ばすように制御する制御装置であって、前記ロボットの動作環境に対する前記モータの移動指令を学習した機械学習装置を備え、前記機械学習装置は、前記モータの移動指令を示す移動指令データ、前記ロボットの先端の移動元及び移動先の位置姿勢を示す基準位置姿勢データ、及び前記モータの温度乃至推定温度を示すモータ温度データを、環境の現在状態を表す状態変数として観測する状態観測部と、前記モータの温度乃至推定温度の適否判定結果を示すモータ温度判定データを、判定データとして取得する判定データ取得部と、前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度と、前記モータの移動指令とを関連付けて学習した学習部と、前記状態観測部が観測した状態変数と、前記学習部による学習結果に基づいて、前記ロボットの各軸を駆動するモータの移動指令を出力する意思決定部と、を備える制御装置である。 Another aspect of the present invention is a control device that controls to extend the life of a motor that drives each axis of the robot, and includes a machine learning device that learns a movement command of the motor with respect to the operating environment of the robot. The machine learning device has movement command data indicating a movement command of the motor, reference position / orientation data indicating the position / orientation of the moving source and moving destination of the tip of the robot, and motor temperature data indicating the temperature or estimated temperature of the motor. A state observation unit that observes the current state of the environment as a state variable, a judgment data acquisition unit that acquires motor temperature judgment data indicating the suitability judgment result of the motor temperature or the estimated temperature as judgment data, and the robot. A learning unit that learns by associating the position and orientation of the movement source / destination of the tip of the tip, the temperature or estimated temperature of the motor, and the movement command of the motor, the state variables observed by the state observation unit, and the learning unit. This is a control device including a decision-making unit that outputs a movement command of a motor that drives each axis of the robot based on the learning result of the above.

本発明の他の態様は、ロボットの各軸を駆動するモータの寿命を延ばすように制御する制御装置であって、前記ロボットの動作環境に対する前記モータの移動指令を学習する機械学習装置を備え、前記機械学習装置は、前記ロボットの先端の移動元及び移動先の位置姿勢を示す基準位置姿勢データ、及び前記モータの温度乃至推定温度を示すモータ温度データを、環境の現在状態を表す状態変数として観測する状態観測部と、前記モータの移動指令を示す移動指令データを、ラベルデータとして取得するラベルデータ取得部と、前記状態変数と前記ラベルデータとを用いて、前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度と、前記モータの移動指令とを関連付けて学習する学習部と、を備える制御装置である。 Another aspect of the present invention is a control device that controls to extend the life of a motor that drives each axis of the robot, and includes a machine learning device that learns a movement command of the motor with respect to the operating environment of the robot. The machine learning device uses reference position / orientation data indicating the position / orientation of the moving source and moving destination of the tip of the robot and motor temperature data indicating the temperature or estimated temperature of the motor as state variables representing the current state of the environment. Using the state observation unit to be observed, the label data acquisition unit that acquires the movement command data indicating the movement command of the motor as label data, the state variable, and the label data, the movement source of the tip of the robot It is a control device including a learning unit that learns by associating a position / orientation of a moving destination, a temperature or an estimated temperature of the motor, and a movement command of the motor.

本発明の他の態様は、ロボットの各軸を駆動するモータの寿命を延ばすように制御する制御装置であって、前記ロボットの動作環境に対する前記モータの移動指令を学習した機械学習装置を備え、前記機械学習装置は、前記ロボットの先端の移動元及び移動先の位置姿勢を示す基準位置姿勢データ、及び前記モータの温度乃至推定温度を示すモータ温度データを、環境の現在状態を表す状態変数として観測する状態観測部と、前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度と、前記モータの移動指令とを関連付けて学習した学習部と、前記状態観測部が観測した状態変数と、前記学習部による学習結果に基づいて、前記ロボットの各軸を駆動するモータの移動指令を推定して出力する推定結果出力部と、を備える制御装置である。 Another aspect of the present invention is a control device that controls to extend the life of a motor that drives each axis of the robot, and includes a machine learning device that learns a movement command of the motor with respect to the operating environment of the robot. The machine learning device uses reference position / orientation data indicating the position / orientation of the moving source and moving destination of the tip of the robot and motor temperature data indicating the temperature or estimated temperature of the motor as state variables representing the current state of the environment. The state observing unit to be observed, the learning unit learned by associating the position / orientation of the moving source / destination of the tip of the robot, the temperature or estimated temperature of the motor, and the movement command of the motor, and the state observing unit It is a control device including an observed state variable and an estimation result output unit that estimates and outputs a movement command of a motor that drives each axis of the robot based on the learning result by the learning unit.

本発明の他の態様は、ロボットの各軸を駆動するモータの寿命を延ばすように制御するために、前記ロボットの動作環境に対する前記モータの移動指令を学習する機械学習装置であって、前記モータの移動指令を示す移動指令データ、前記ロボットの先端の移動元及び移動先の位置姿勢を示す基準位置姿勢データ、及び前記モータの温度乃至推定温度を示すモータ温度データを、環境の現在状態を表す状態変数として観測する状態観測部と、前記モータの温度乃至推定温度の適否判定結果を示すモータ温度判定データを、判定データとして取得する判定データ取得部と、前記状態変数と前記判定データとを用いて、前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度と、前記モータの移動指令とを関連付けて学習する学習部と、を備える機械学習装置である。 Another aspect of the present invention is a machine learning device that learns a movement command of the motor with respect to the operating environment of the robot in order to control so as to extend the life of the motor that drives each axis of the robot. The movement command data indicating the movement command of the robot, the reference position / attitude data indicating the position / orientation of the moving source and the moving destination of the tip of the robot, and the motor temperature data indicating the temperature or the estimated temperature of the motor represent the current state of the environment. Using the state observation unit for observing as a state variable, the judgment data acquisition unit for acquiring the motor temperature judgment data indicating the suitability judgment result of the motor temperature or the estimated temperature as judgment data, and the state variable and the judgment data. The machine learning device includes a learning unit that learns by associating the position / orientation of the movement source / destination of the tip of the robot, the temperature or the estimated temperature of the motor, and the movement command of the motor.

本発明の他の態様は、ロボットの各軸を駆動するモータの寿命を延ばすように制御するために、前記ロボットの動作環境に対する前記モータの移動指令を学習した機械学習装置であって、前記モータの移動指令を示す移動指令データ、前記ロボットの先端の移動元及び移動先の位置姿勢を示す基準位置姿勢データ、及び前記モータの温度乃至推定温度を示すモータ温度データを、環境の現在状態を表す状態変数として観測する状態観測部と、前記モータの温度乃至推定温度の適否判定結果を示すモータ温度判定データを、判定データとして取得する判定データ取得部と、前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度と、前記モータの移動指令とを関連付けて学習した学習部と、前記状態観測部が観測した状態変数と、前記学習部による学習結果に基づいて、前記ロボットの各軸を駆動するモータの移動指令を出力する意思決定部と、を備える機械学習装置である。 Another aspect of the present invention is a machine learning device that learns a movement command of the motor with respect to the operating environment of the robot in order to control so as to extend the life of the motor that drives each axis of the robot. The movement command data indicating the movement command of the robot, the reference position / attitude data indicating the position / orientation of the moving source and the moving destination of the tip of the robot, and the motor temperature data indicating the temperature or the estimated temperature of the motor represent the current state of the environment. A state observation unit that observes as a state variable, a judgment data acquisition unit that acquires motor temperature judgment data indicating the suitability judgment result of the motor temperature or the estimated temperature as judgment data, and a movement source / destination of the tip of the robot. Based on the learning unit learned by associating the position / orientation of the motor, the temperature or estimated temperature of the motor, and the movement command of the motor, the state variables observed by the state observation unit, and the learning result by the learning unit. It is a machine learning device including a decision-making unit that outputs a movement command of a motor that drives each axis of the robot.

本発明により、機械学習を応用してロボットの各軸を駆動するモータの移動指令を算出することで、ロボットの各軸を駆動するモータの稼動寿命を延ばすようにロボットを制御することができるようになる。 According to the present invention, the robot can be controlled so as to extend the operating life of the motor that drives each axis of the robot by calculating the movement command of the motor that drives each axis of the robot by applying machine learning. become.

第1の実施形態による制御装置の概略的なハードウェア構成図である。It is the schematic hardware block diagram of the control device by 1st Embodiment. 第1の実施形態による制御装置の概略的な機能ブロック図である。It is a schematic functional block diagram of the control device by 1st Embodiment. 制御装置の一形態を示す概略的な機能ブロック図である。It is a schematic functional block diagram which shows one form of a control device. 機械学習方法の一形態を示す概略的なフローチャートである。It is a schematic flowchart which shows one form of the machine learning method. ニューロンを説明する図である。It is a figure explaining a neuron. ニューラルネットワークを説明する図である。It is a figure explaining a neural network. 第2の実施形態による制御装置の概略的な機能ブロック図である。It is a schematic functional block diagram of the control device by 2nd Embodiment. 制御装置を組み込んだシステムの一形態を示す概略的な機能ブロック図である。It is a schematic functional block diagram which shows one form of the system which incorporated the control device. 7軸多関節ロボットの例を示す図である。It is a figure which shows the example of a 7-axis articulated robot. 7軸多関節ロボットの動作について説明する図である。It is a figure explaining the operation of a 7-axis articulated robot.

以下、本発明の実施形態を図面と共に説明する。
図1は第1の実施形態による制御装置の要部を示す概略的なハードウェア構成図である。制御装置1は、例えばロボット等の製造機械を制御する制御装置として実装することができる。また、制御装置1は、例えばロボット等の製造機械を制御する制御装置に併設されたパソコンや、制御装置に有線/無線のネットワークを介して接続されたセルコンピュータ、ホストコンピュータ、エッジサーバ、クラウドサーバ等のコンピュータとして実装することができる。本実施形態では、制御装置1を、ロボットを制御する制御装置として実装した場合の例を示す。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a schematic hardware configuration diagram showing a main part of the control device according to the first embodiment. The control device 1 can be implemented as a control device that controls a manufacturing machine such as a robot. Further, the control device 1 includes a personal computer attached to a control device that controls a manufacturing machine such as a robot, a cell computer connected to the control device via a wired / wireless network, a host computer, an edge server, and a cloud server. It can be implemented as a computer such as. In this embodiment, an example in which the control device 1 is mounted as a control device for controlling a robot is shown.

本実施形態による制御装置1が備えるCPU11は、制御装置1を全体的に制御するプロセッサである。CPU11は、ROM12に格納されたシステム・プログラムをバス20を介して読み出し、該システム・プログラムに従って制御装置1の全体を制御する。RAM13には一時的な計算データや表示データ、図示しない入力部を介してオペレータが入力した各種データ等が一時的に格納される。 The CPU 11 included in the control device 1 according to the present embodiment is a processor that controls the control device 1 as a whole. The CPU 11 reads the system program stored in the ROM 12 via the bus 20 and controls the entire control device 1 according to the system program. Temporary calculation data, display data, various data input by the operator via an input unit (not shown), and the like are temporarily stored in the RAM 13.

不揮発性メモリ14は、例えば図示しないバッテリでバックアップされるなどして、制御装置1の電源がオフされても記憶状態が保持されるメモリとして構成される。不揮発性メモリ14には、インタフェース15を介して外部機器72から読み込まれたプログラムや表示器/MDIユニット70を介して入力されたプログラム、制御装置1の各部やロボットから取得された各種データ(例えば、ロボットの位置姿勢(各軸位置)、ロボットの各軸を駆動するモータの温度等)が記憶されている。不揮発性メモリ14に記憶されたプログラムや各種データは、実行時/利用時にはRAM13に展開されても良い。また、ROM12には、公知の解析プログラムなどの各種のシステム・プログラム(後述する機械学習装置100とのやりとりを制御するためのシステム・プログラムを含む)があらかじめ書き込まれている。 The non-volatile memory 14 is configured as a memory in which the storage state is maintained even when the power of the control device 1 is turned off, for example, by backing up with a battery (not shown). In the non-volatile memory 14, a program read from the external device 72 via the interface 15, a program input via the display / MDI unit 70, various data acquired from each part of the control device 1 and the robot (for example,). , The position and orientation of the robot (position of each axis), the temperature of the motor that drives each axis of the robot, etc.) are stored. The program and various data stored in the non-volatile memory 14 may be expanded in the RAM 13 at the time of execution / use. Further, various system programs such as a known analysis program (including a system program for controlling interaction with the machine learning device 100, which will be described later) are written in the ROM 12 in advance.

インタフェース15は、制御装置1とアダプタ等の外部機器72と接続するためのインタフェースである。外部機器72側からはプログラムや各種パラメータ等が読み込まれる。また、制御装置1内で編集したプログラムや各種パラメータ等は、外部機器72を介して外部記憶手段に記憶させることができる。PMC(プログラマブル・マシン・コントローラ)16は、制御装置1に内蔵されたシーケンス・プログラムでロボット及び該ロボットの周辺装置にI/Oユニット17を介して信号を出力し制御する。また、ロボットの本体に配備された操作盤の各種スイッチ等の信号を受け、必要な信号処理をした後、CPU11に渡す。 The interface 15 is an interface for connecting the control device 1 and an external device 72 such as an adapter. Programs, various parameters, etc. are read from the external device 72 side. Further, the programs and various parameters edited in the control device 1 can be stored in the external storage means via the external device 72. The PMC (programmable machine controller) 16 is a sequence program built in the control device 1 and outputs a signal to the robot and peripheral devices of the robot via the I / O unit 17 to control the robot. In addition, it receives signals from various switches on the operation panel installed in the main body of the robot, performs necessary signal processing, and then passes them to the CPU 11.

表示器/MDIユニット70はディスプレイやキーボード等を備えた手動データ入力装置であり、インタフェース18は表示器/MDIユニット70のキーボードからの指令,データを受けてCPU11に渡す。インタフェース19は各軸を手動で駆動させる際に用いる手動パルス発生器等を備えた操作盤71に接続されている。 The display / MDI unit 70 is a manual data input device including a display, a keyboard, and the like, and the interface 18 receives commands and data from the keyboard of the display / MDI unit 70 and passes them to the CPU 11. The interface 19 is connected to an operation panel 71 provided with a manual pulse generator or the like used when manually driving each axis.

ロボットの関節を動かす各軸を制御するための軸制御回路30はCPU11からの軸の移動指令量を受けて、軸の指令をサーボアンプ40に出力する。サーボアンプ40はこの指令を受けて、ロボットが備える軸を移動させるサーボモータ50を駆動する。軸のサーボモータ50は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路30にフィードバックし、位置・速度のフィードバック制御を行う。なお、図1のハードウェア構成図では軸制御回路30、サーボアンプ40、サーボモータ50は1つずつしか示されていないが、実際には制御対象となるロボットに備えられた軸の数(例えば、7軸ロボットであれば7つ)だけ用意される。 The axis control circuit 30 for controlling each axis that moves the joints of the robot receives the axis movement command amount from the CPU 11 and outputs the axis command to the servo amplifier 40. In response to this command, the servo amplifier 40 drives the servomotor 50 that moves the shaft included in the robot. The shaft servomotor 50 has a built-in position / speed detector, feeds back the position / speed feedback signal from the position / speed detector to the shaft control circuit 30, and performs position / speed feedback control. In the hardware configuration diagram of FIG. 1, only one axis control circuit 30, servo amplifier 40, and servo motor 50 are shown, but in reality, the number of axes provided in the robot to be controlled (for example). , If it is a 7-axis robot, only 7) will be prepared.

インタフェース21は、制御装置1と機械学習装置100とを接続するためのインタフェースである。機械学習装置100は、機械学習装置100全体を統御するプロセッサ101と、システム・プログラム等を記憶したROM102、機械学習に係る各処理における一時的な記憶を行うためのRAM103、及び学習モデル等の記憶に用いられる不揮発性メモリ104を備える。機械学習装置100は、インタフェース21を介して制御装置1で取得可能な各情報(例えば、ロボットの位置姿勢(各軸位置)、ロボットの各軸を駆動するモータの温度等)を観測することができる。また、制御装置1は、機械学習装置100から出力される、各軸の移動量を受けて、ロボットの各軸の移動を制御する。 The interface 21 is an interface for connecting the control device 1 and the machine learning device 100. The machine learning device 100 stores a processor 101 that controls the entire machine learning device 100, a ROM 102 that stores a system program and the like, a RAM 103 that temporarily stores each process related to machine learning, a learning model, and the like. The non-volatile memory 104 used in the above is provided. The machine learning device 100 can observe each information that can be acquired by the control device 1 via the interface 21 (for example, the position and orientation of the robot (each axis position), the temperature of the motor that drives each axis of the robot, and the like). can. Further, the control device 1 receives the movement amount of each axis output from the machine learning device 100 and controls the movement of each axis of the robot.

図2は、第1の実施形態による制御装置1と機械学習装置100の概略的な機能ブロック図である。図2に示した各機能ブロックは、図1に示した制御装置1が備えるCPU11、及び機械学習装置100のプロセッサ101が、それぞれのシステム・プログラムを実行し、制御装置1及び機械学習装置100の各部の動作を制御することにより実現される。 FIG. 2 is a schematic functional block diagram of the control device 1 and the machine learning device 100 according to the first embodiment. In each functional block shown in FIG. 2, the CPU 11 included in the control device 1 shown in FIG. 1 and the processor 101 of the machine learning device 100 execute their respective system programs, and the control device 1 and the machine learning device 100 It is realized by controlling the operation of each part.

本実施形態の制御装置1は、機械学習装置100から出力されたロボット2の各軸を駆動するモータの移動指令に基づいてロボット2を制御する制御部34を備える。制御部34は、一般にプログラム等により指定されたロボット2のロボットハンドの先端の移動先の位置姿勢に従ってロボットの動作を制御するが、その際に、機械学習装置100から該移動先へとロボット2のロボットハンドの先端を移動させる際の各軸を駆動するモータの移動指令が出力されると、前記プログラム等により指令された位置姿勢へとロボット2のロボットハンドの先端を移動させるための移動を、機械学習装置100から出力された移動指令の通りとなるように制御する。 The control device 1 of the present embodiment includes a control unit 34 that controls the robot 2 based on a movement command of a motor that drives each axis of the robot 2 output from the machine learning device 100. The control unit 34 generally controls the operation of the robot according to the position and orientation of the moving destination of the tip of the robot hand of the robot 2 designated by a program or the like. At that time, the robot 2 moves from the machine learning device 100 to the moving destination. When the movement command of the motor that drives each axis when moving the tip of the robot hand of the robot 2 is output, the movement for moving the tip of the robot hand of the robot 2 to the position and orientation commanded by the program or the like is performed. , The movement command output from the machine learning device 100 is controlled.

一方、制御装置1が備える機械学習装置100は、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度に対するロボット2の各軸を駆動するモータの移動指令を、いわゆる機械学習により自ら学習するためのソフトウェア(学習アルゴリズム等)及びハードウェア(プロセッサ101等)を含む。制御装置1が備える機械学習装置100が学習するものは、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度と、ロボット2の各軸を駆動するモータの移動指令との、相関性を表すモデル構造に相当する。 On the other hand, the machine learning device 100 included in the control device 1 drives each axis of the robot 2 with respect to the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2 and the temperature of the motor that drives each axis of the robot 2. It includes software (learning algorithm, etc.) and hardware (processor 101, etc.) for self-learning a movement command of a motor by so-called machine learning. What the machine learning device 100 included in the control device 1 learns is the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2, the temperature of the motor that drives each axis of the robot 2, and each axis of the robot 2. It corresponds to a model structure that expresses the correlation with the movement command of the motor that drives the robot.

図2に機能ブロックで示すように、制御装置1が備える機械学習装置100は、ロボット2の各軸を駆動するモータの移動指令を示す移動指令データS1、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢を示す基準位置姿勢データS2、及びロボット2の各軸を駆動するモータの温度を示すモータ温度データS3を含む環境の現在状態を表す状態変数Sとして観測する状態観測部106と、決定されたロボット2の各軸を駆動するモータの移動指令に基づいて為されたロボット2のロボットハンドの先端の移動によるモータ温度の変化状態を判定するためのモータ温度判定データD1を含む判定データDを取得する判定データ取得部108と、状態変数Sと判定データDとを用いて、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度と、ロボット2の各軸を駆動するモータの移動指令を関連付けて学習する学習部110とを備える。 As shown by the functional blocks in FIG. 2, the machine learning device 100 included in the control device 1 has movement command data S1 indicating a movement command of a motor for driving each axis of the robot 2, and a movement source of the tip of the robot hand of the robot 2. A state observation unit 106 that observes as a state variable S that represents the current state of the environment including the reference position / orientation data S2 that indicates the position / orientation of the destination and the motor temperature data S3 that indicates the temperature of the motor that drives each axis of the robot 2. And the motor temperature determination data D1 for determining the change state of the motor temperature due to the movement of the tip of the robot hand of the robot 2 made based on the movement command of the motor driving each axis of the robot 2 determined. Using the judgment data acquisition unit 108 for acquiring the judgment data D, the state variable S, and the judgment data D, the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2 and each axis of the robot 2 are driven. It includes a learning unit 110 that learns by associating the temperature of the motor with the movement command of the motor that drives each axis of the robot 2.

状態観測部106が観測する状態変数Sのうち、移動指令データS1は、ロボット2の各軸を駆動するモータの移動指令として取得することができる。ロボット2の各軸を駆動するモータの移動指令としては、例えばロボット2の各軸を駆動するモータに対して出力される移動量(正負の符号を含む)の配列等が例示される。 Of the state variables S observed by the state observation unit 106, the movement command data S1 can be acquired as a movement command of the motor that drives each axis of the robot 2. Examples of the movement command of the motor that drives each axis of the robot 2 include an array of movement amounts (including positive and negative codes) output to the motor that drives each axis of the robot 2.

移動指令データS1は、機械学習装置100が学習部110の学習結果に基づいて1つ前の学習周期におけるロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度に対して、当該学習周期において決定したロボット2の各軸を駆動するモータの移動指令をそのまま用いることができる。このような手法を取る場合には、機械学習装置100はロボット2の各軸を駆動するモータの移動指令を学習周期毎にRAM103に一時的に記憶しておき、状態観測部106は、RAM103から1つ前の学習周期におけるロボット2の各軸を駆動するモータの移動指令を今回の学習周期の移動指令データS1として取得するようにしても良い。 Based on the learning result of the learning unit 110, the movement command data S1 determines the position and orientation of the tip of the robot hand of the robot 2 and each axis of the robot 2 in the previous learning cycle. With respect to the temperature of the driving motor, the movement command of the motor driving each axis of the robot 2 determined in the learning cycle can be used as it is. When such a method is adopted, the machine learning device 100 temporarily stores the movement command of the motor driving each axis of the robot 2 in the RAM 103 for each learning cycle, and the state observing unit 106 temporarily stores the movement command from the RAM 103. The movement command of the motor that drives each axis of the robot 2 in the previous learning cycle may be acquired as the movement command data S1 of the current learning cycle.

状態観測部106が観測する状態変数Sのうち、基準位置姿勢データS2は、ロボット2から取得された又は制御装置1によるロボット2の制御に用いられるプログラムから取得されたロボット2のロボットハンドの先端の現在の位置姿勢(移動元の位置姿勢)、及び、制御装置1によるロボット2の制御に用いられるプログラムから取得されたロボット2のロボットハンドの先端の移動先の位置姿勢として取得することができる。なお、移動元の位置姿勢については、ロボット2の各軸の位置により示すようにしても良いが、移動先の位置姿勢については、ロボット2の各軸の位置により示す必要は無く、ロボット2のロボットハンドの先端の位置と向きにより示すようにしても良い。 Of the state variables S observed by the state observation unit 106, the reference position / orientation data S2 is the tip of the robot hand of the robot 2 acquired from the robot 2 or from a program used for controlling the robot 2 by the control device 1. Can be acquired as the current position / orientation (position / orientation of the movement source) and the position / orientation of the movement destination of the tip of the robot hand of the robot 2 acquired from the program used for controlling the robot 2 by the control device 1. .. The position and orientation of the movement source may be indicated by the position of each axis of the robot 2, but the position and orientation of the movement destination need not be indicated by the position of each axis of the robot 2. It may be indicated by the position and orientation of the tip of the robot hand.

状態観測部106が観測する状態変数Sのうち、モータ温度データS3は、ロボット2の各軸を駆動するモータの温度として取得することができる。ロボット2の各軸を駆動するモータの温度は、モータに温度センサが取り付けられている場合には、該温度センサの検出値を利用することができる。また、ロボット2の各軸を駆動するモータの温度は、モータに温度センサが取り付けられていない場合であっても、各モータの駆動履歴やモータ(の巻き線)に流れる電流の抵抗値等に基づいて推定することができる。なお、本明細書では、特に断りの無い場合、モータの温度には推定されたモータの温度を含む。 Among the state variables S observed by the state observation unit 106, the motor temperature data S3 can be acquired as the temperature of the motor that drives each axis of the robot 2. For the temperature of the motor that drives each axis of the robot 2, when a temperature sensor is attached to the motor, the detection value of the temperature sensor can be used. Further, the temperature of the motor that drives each axis of the robot 2 is based on the drive history of each motor, the resistance value of the current flowing through the motor (winding), and the like even when the temperature sensor is not attached to the motor. It can be estimated based on. In the present specification, unless otherwise specified, the temperature of the motor includes the estimated temperature of the motor.

判定データ取得部108は、モータ温度判定データD1として、決定されたロボット2の各軸を駆動するモータの移動指令に基づいて為されたロボット2のロボットハンドの先端の移動後のモータ温度の判定結果を用いることができる。判定データ取得部108が用いるモータ温度判定データD1としては、例えば決定されたロボット2の各軸を駆動するモータの移動指令に基づいて実際にロボット2が動作した後に取得された各モータの温度が予め定めた所定の閾値以内であるか(適)、該閾値を超えた(否)といったような、適宜設定された判定基準により判定された結果を用いればよい。モータ温度判定データD1としては、例えば予め定めた評価用の関数を用いてロボット2の各軸を駆動するモータの温度に基づく評価値を算出し、その評価値を用いるようにしても良い。 The determination data acquisition unit 108 determines the motor temperature after the tip of the robot hand of the robot 2 is moved, which is performed as the motor temperature determination data D1 based on the movement command of the motor that drives each axis of the robot 2. The results can be used. The motor temperature determination data D1 used by the determination data acquisition unit 108 includes, for example, the temperature of each motor acquired after the robot 2 actually operates based on the determined movement command of the motor that drives each axis of the robot 2. You may use the result judged by the judgment criteria set appropriately, such as whether it is within a predetermined predetermined threshold (appropriate) or exceeds the threshold (no). As the motor temperature determination data D1, for example, an evaluation value based on the temperature of the motor that drives each axis of the robot 2 may be calculated using a predetermined evaluation function, and the evaluation value may be used.

なお、判定データ取得部108は、学習部110による学習の段階では必須の構成となるが、学習部110によるロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度とロボット2の各軸を駆動するモータの移動指令とを関連付けた学習が完了した後には必ずしも必須の構成ではない。例えば、学習が完了した機械学習装置100を顧客に出荷する場合等には、判定データ取得部108を取り外して出荷するようにしても良い。 The determination data acquisition unit 108 has an indispensable configuration at the stage of learning by the learning unit 110, but the position and orientation of the moving source / destination of the tip of the robot hand of the robot 2 by the learning unit 110 and each axis of the robot 2. It is not always an indispensable configuration after the learning relating the temperature of the motor for driving the robot 2 and the movement command of the motor for driving each axis of the robot 2 is completed. For example, when the machine learning device 100 for which learning has been completed is shipped to the customer, the determination data acquisition unit 108 may be removed before shipping.

学習部110に対して同時に入力される状態変数Sは、学習部110による学習周期で考えた場合、判定データDが取得された1学習周期前のデータに基づくものとなる。このように、制御装置1が備える機械学習装置100が学習を進める間、環境においては、基準位置姿勢データS2及びモータ温度データS3の取得、取得した各データに基づいて決定された移動指令データS1に基づいたロボット2の各軸の移動、判定データDの取得が繰り返し実施される。 The state variable S simultaneously input to the learning unit 110 is based on the data one learning cycle before the determination data D was acquired, when considered in the learning cycle by the learning unit 110. In this way, while the machine learning device 100 included in the control device 1 advances learning, in the environment, the reference position / orientation data S2 and the motor temperature data S3 are acquired, and the movement command data S1 determined based on the acquired data is obtained. The movement of each axis of the robot 2 and the acquisition of the determination data D are repeatedly carried out based on the above.

学習部110は、機械学習と総称される任意の学習アルゴリズムに従い、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度に対する、ロボット2の各軸を駆動するモータの移動指令を学習する。学習部110は、前述した状態変数Sと判定データDとを含むデータ集合に基づく学習を反復実行することができる。ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度に対する、ロボット2の各軸を駆動するモータの移動指令の学習サイクルの反復中、状態変数Sは、上記したように1学習周期前におけるロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度、及び1学習周期前において決定されたロボット2の各軸を駆動するモータの移動指令から取得し、また判定データDは、決定されたロボット2の各軸を駆動するモータの移動指令に基づいて制御されるロボット2の動作後のモータ温度の適否判定結果とする。 The learning unit 110 follows the arbitrary learning algorithm collectively called machine learning, and the robot 2 has a movement source / destination position and orientation with respect to the position and orientation of the tip of the robot hand of the robot 2 and the temperature of the motor driving each axis of the robot 2. Learn the movement command of the motor that drives each axis. The learning unit 110 can iteratively execute learning based on the data set including the state variable S and the determination data D described above. The state during the repetition of the learning cycle of the movement command of the motor that drives each axis of the robot 2 with respect to the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2 and the temperature of the motor that drives each axis of the robot 2. As described above, the variable S is determined by the position and orientation of the moving source / destination of the tip of the robot hand of the robot 2 before one learning cycle, the temperature of the motor driving each axis of the robot 2, and one learning cycle before. The determination data D is acquired from the movement command of the motor that drives each axis of the robot 2 and is controlled based on the movement command of the motor that drives each axis of the determined robot 2 after the operation of the robot 2. It is the result of determining the suitability of the motor temperature.

このような学習サイクルを繰り返すことにより、学習部110は、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度と、ロボット2の各軸を駆動するモータの移動指令との相関性を暗示する特徴を識別することができるようになる。学習アルゴリズムの開始時にはロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度と、ロボット2の各軸を駆動するモータの移動指令の相関性は実質的に未知であるが、学習部110は、学習を進めるに従い徐々に特徴を識別して相関性を解釈する。ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度と、ロボット2の各軸を駆動するモータの移動指令との相関性が、ある程度信頼できる水準まで解釈されると、学習部110が反復出力する学習結果は、現在状態(つまりロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度)に対して、ロボット2の各軸を駆動するモータの移動指令をどう決定するべきかという行動の選択(つまり意思決定)を行うために使用できるものとなる。つまり学習部110は、学習アルゴリズムの進行に伴い、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度に対してロボット2の各軸を駆動するモータの移動指令をどのように設定するべきかという行動との、相関性を最適解に徐々に近づけることができる。 By repeating such a learning cycle, the learning unit 110 determines the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2, the temperature of the motor that drives each axis of the robot 2, and each axis of the robot 2. It becomes possible to identify features that imply a correlation with the movement command of the motor that drives the robot. At the start of the learning algorithm, the correlation between the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2 and the temperature of the motor driving each axis of the robot 2 and the movement command of the motor driving each axis of the robot 2. Is substantially unknown, but the learning unit 110 gradually identifies the features and interprets the correlation as the learning progresses. The correlation between the position and orientation of the tip of the robot hand of the robot 2 and the temperature of the motor driving each axis of the robot 2 and the movement command of the motor driving each axis of the robot 2 is reliable to some extent. When interpreted to a level that can be interpreted, the learning result repeatedly output by the learning unit 110 is the current state (that is, the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2 and the position and orientation of the motor that drives each axis of the robot 2). It can be used to select an action (that is, make a decision) as to how to determine a movement command of a motor that drives each axis of the robot 2 with respect to the temperature). That is, as the learning algorithm progresses, the learning unit 110 sets each axis of the robot 2 with respect to the position and orientation of the moving source / destination of the tip of the robot hand of the robot 2 and the temperature of the motor driving each axis of the robot 2. The correlation with the behavior of how to set the movement command of the driving motor can be gradually approached to the optimum solution.

意思決定部122は、学習部110が学習した結果に基づいて、ロボット2の各軸を駆動するモータの移動指令を決定し、決定したロボット2の各軸を駆動するモータの移動指令を制御部34へと出力する。意思決定部122は、学習部110による学習が完了した状態において、機械学習装置100にロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度が入力されると、ロボット2の各軸を駆動するモータの移動指令を出力する。意思決定部が決定するロボット2の各軸を駆動するモータの移動指令は、基準位置姿勢データS2に含まれる、ロボット2のロボットハンドの先端の移動元の位置姿勢から、ロボット2のロボットハンドの先端の移動先の位置指令へと移動させることができる移動指令であり、ロボット2の各軸を駆動するモータの移動量の組合せとして表現される。基準位置姿勢データS2に含まれる、ロボット2のロボットハンドの先端の移動先の位置姿勢を実現することが可能なモータの位置の組み合わせは複数存在し得るので、意思決定部122は、状態変数Sと学習部110が学習した結果に基づいて、適切なロボット2の各軸を駆動するモータの移動指令を決定する。 The decision-making unit 122 determines the movement command of the motor that drives each axis of the robot 2 based on the result learned by the learning unit 110, and controls the movement command of the motor that drives each of the determined axes of the robot 2. Output to 34. In the state where the learning by the learning unit 110 is completed, the decision-making unit 122 tells the machine learning device 100 the position and orientation of the moving source / destination of the tip of the robot hand of the robot 2 and the temperature of the motor that drives each axis of the robot 2. Is input, a movement command of the motor that drives each axis of the robot 2 is output. The movement command of the motor that drives each axis of the robot 2 determined by the decision-making unit is obtained from the position / orientation of the movement source of the tip of the robot hand of the robot 2 included in the reference position / orientation data S2. It is a movement command that can be moved to the position command of the movement destination of the tip, and is expressed as a combination of the movement amounts of the motors that drive each axis of the robot 2. Since there can be a plurality of combinations of motor positions that can realize the position and orientation of the moving destination of the tip of the robot hand of the robot 2 included in the reference position and orientation data S2, the decision-making unit 122 sets the state variable S. Based on the result learned by the learning unit 110, the movement command of the motor that drives each axis of the appropriate robot 2 is determined.

上記したように、制御装置1が備える機械学習装置100は、状態観測部106が観測した状態変数Sと判定データ取得部108が取得した判定データDとを用いて、学習部110が機械学習アルゴリズムに従い、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度に対するロボット2の各軸を駆動するモータの移動指令を学習するものである。状態変数Sは、移動指令データS1、基準位置姿勢データS2、及びモータ温度データS3といったデータで構成され、また判定データDは、制御装置1がロボット2から取得した情報を解析することで一義的に求められる。したがって、制御装置1が備える機械学習装置100によれば、学習部110の学習結果を用いることで、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度に応じた、ロボット2の各軸を駆動するモータの移動指令を、自動的かつ正確に行うことが可能となる。 As described above, the machine learning device 100 included in the control device 1 uses the state variable S observed by the state observation unit 106 and the judgment data D acquired by the judgment data acquisition unit 108, and the learning unit 110 uses the machine learning algorithm. According to this, the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2 and the movement command of the motor driving each axis of the robot 2 with respect to the temperature of the motor driving each axis of the robot 2 are learned. The state variable S is composed of data such as movement command data S1, reference position / orientation data S2, and motor temperature data S3, and the determination data D is unique by analyzing the information acquired from the robot 2 by the control device 1. Is required. Therefore, according to the machine learning device 100 included in the control device 1, the learning result of the learning unit 110 is used to drive the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2 and each axis of the robot 2. It is possible to automatically and accurately issue a movement command of the motor that drives each axis of the robot 2 according to the temperature of the motor.

そして、ロボット2の各軸を駆動するモータの移動指令の決定を、自動的に行うことができれば、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢(基準位置姿勢データS2)及びロボット2の各軸を駆動するモータの温度(モータ温度データS3)を把握するだけで、ロボット2の各軸を駆動するモータの移動指令の適切な値を迅速に決定することができる。したがって、ロボット2の各軸を駆動するモータの移動指令の決定を効率よく行うことができる。 Then, if the movement command of the motor that drives each axis of the robot 2 can be automatically determined, the position / orientation (reference position / orientation data S2) of the movement source / destination of the tip of the robot hand of the robot 2 and By simply grasping the temperature of the motor that drives each axis of the robot 2 (motor temperature data S3), it is possible to quickly determine an appropriate value of the movement command of the motor that drives each axis of the robot 2. Therefore, it is possible to efficiently determine the movement command of the motor that drives each axis of the robot 2.

本実施形態の制御装置1が備える機械学習装置100の一変形例として、状態観測部106は、移動指令データS1、基準位置姿勢データS2、及びモータ温度データS3に加えて、更に環境温度を含む環境データS4を観測するようにしても良い。環境温度は、ロボット2の近傍に設置された温度センサで検出した値や、作業者が温度計等を見て得た環境温度を表示器/MDIユニット70を介して入力した値を用いることができる。 As a modification of the machine learning device 100 included in the control device 1 of the present embodiment, the state observation unit 106 further includes an environmental temperature in addition to the movement command data S1, the reference position / orientation data S2, and the motor temperature data S3. Environmental data S4 may be observed. For the ambient temperature, a value detected by a temperature sensor installed near the robot 2 or a value obtained by the operator looking at a thermometer or the like and input via the display / MDI unit 70 can be used. can.

上記変形例によれば、機械学習装置100は、環境データS4として観測した環境温度を考慮して、ロボット2の各軸を駆動するモータの移動指令の学習及び決定をすることができるので、環境温度が低い場合には、一部の高速に動作するモータに多少の負荷を掛けるように移送指令を決定する等といったような、環境温度に応じた適切なロボット2の各軸を駆動するモータの移動指令を決定できるようになる。 According to the above modification, the machine learning device 100 can learn and determine the movement command of the motor that drives each axis of the robot 2 in consideration of the environmental temperature observed as the environmental data S4. When the temperature is low, the motor that drives each axis of the robot 2 that is appropriate according to the environmental temperature, such as determining a transfer command so as to apply a slight load to some high-speed moving motors. You will be able to determine the movement command.

本実施形態の制御装置1が備える機械学習装置100の他の変形例として、判定データ取得部108がロボット2の動作の適否を判定するための判定データDとして、ロボット2の動作のサイクルタイムを示すサイクルタイムデータD2を用いることもできる。判定データ取得部108は、ロボット2の動作のサイクルタイムとして、ロボット2の各軸を駆動するモータの移動指令に基づく移動の開始から終了までに係る時間を用いることができる。 As another modification of the machine learning device 100 included in the control device 1 of the present embodiment, the cycle time of the operation of the robot 2 is set as the determination data D for the determination data acquisition unit 108 to determine the suitability of the operation of the robot 2. The cycle time data D2 shown can also be used. The determination data acquisition unit 108 can use the time from the start to the end of the movement based on the movement command of the motor that drives each axis of the robot 2 as the cycle time of the operation of the robot 2.

上記変形例によれば、機械学習装置100は、ロボット2が動作した後の各モータの温度と、ロボット2の動作のサイクルタイムとのトレードオフを考慮しながら、適切なロボット2の各軸を駆動するモータの移動指令を決定できるようになる。なお、サイクルタイムデータD2を導入する場合には、ロボット2が動作した際に各モータの温度が上昇しすぎない範囲で、ロボット2の動作のサイクルタイムを短くするように判断させるようにすると良い。 According to the above modification, the machine learning device 100 determines the appropriate axes of the robot 2 while considering the trade-off between the temperature of each motor after the robot 2 operates and the cycle time of the operation of the robot 2. It becomes possible to determine the movement command of the driving motor. When the cycle time data D2 is introduced, it is preferable to make a judgment to shorten the cycle time of the operation of the robot 2 within a range in which the temperature of each motor does not rise too much when the robot 2 operates. ..

本実施形態の制御装置1が備える機械学習装置100の他の変形例として、状態観測部106は、状態変数Sとして、移動指令データS1、基準位置姿勢データS2、及びモータ温度データS3に加えて、更にロボット2の各軸を駆動するモータに設置された減速機の温度を示す減速機温度データS5を観測するようにしても良い。また、その際に、判定データ取得部108は、判定データDとして、モータ温度判定データD1に加えて、決定されたロボット2の各軸を駆動するモータの移動指令に基づいて為されたロボット2のロボットハンドの先端の移動による減速機の温度の適否を判定した減速機温度判定データD3を取得するようにしても良い。モータに設置された減速機の温度は、減速機の近傍に設置された温度センサで検出した値を用いることができる。 As another modification of the machine learning device 100 included in the control device 1 of the present embodiment, the state observation unit 106 adds the movement command data S1, the reference position / orientation data S2, and the motor temperature data S3 as state variables S. Further, the speed reducer temperature data S5 indicating the temperature of the speed reducer installed in the motor for driving each axis of the robot 2 may be observed. At that time, the determination data acquisition unit 108 uses the determination data D as the determination data D based on the movement command of the motor that drives each axis of the determined robot 2 in addition to the motor temperature determination data D1. The speed reducer temperature determination data D3 that determines the suitability of the speed reducer temperature due to the movement of the tip of the robot hand may be acquired. As the temperature of the speed reducer installed in the motor, a value detected by a temperature sensor installed in the vicinity of the speed reducer can be used.

上記変形例によれば、機械学習装置100は、減速機温度データS5、減速機温度判定データD3を用いることで、ロボット2の各軸を駆動するモータに設置された減速機の温度を考慮して、ロボット2の各軸を駆動するモータの移動指令の学習及び決定をすることができるようになるので、減速機の温度状態に応じた適切なロボット2の各軸を駆動するモータの移動指令を決定できるようになる。 According to the above modification, the machine learning device 100 considers the temperature of the speed reducer installed in the motor that drives each axis of the robot 2 by using the speed reducer temperature data S5 and the speed reducer temperature determination data D3. Therefore, it becomes possible to learn and determine the movement command of the motor that drives each axis of the robot 2, so that the movement command of the motor that drives each axis of the robot 2 is appropriate according to the temperature state of the reducer. Will be able to decide.

上記構成を有する機械学習装置100では、学習部110が実行する学習アルゴリズムは特に限定されず、機械学習として公知の学習アルゴリズムを採用できる。図3は、図2に示す制御装置1の一形態であって、学習アルゴリズムの一例として強化学習を実行する学習部110を備えた構成を示す。強化学習は、学習対象が存在する環境の現在状態(つまり入力)を観測するとともに現在状態で所定の行動(つまり出力)を実行し、その行動に対し何らかの報酬を与えるというサイクルを試行錯誤的に反復して、報酬の総計が最大化されるような方策(本願の機械学習装置ではロボット2の各軸を駆動するモータの移動指令)を最適解として学習する手法である。 In the machine learning device 100 having the above configuration, the learning algorithm executed by the learning unit 110 is not particularly limited, and a learning algorithm known as machine learning can be adopted. FIG. 3 is a form of the control device 1 shown in FIG. 2, and shows a configuration including a learning unit 110 that executes reinforcement learning as an example of a learning algorithm. Reinforcement learning is a trial-and-error cycle of observing the current state (that is, input) of the environment in which the learning target exists, executing a predetermined action (that is, output) in the current state, and giving some reward to that action. It is a method of repeatedly learning a measure that maximizes the total reward (in the machine learning device of the present application, a movement command of a motor that drives each axis of the robot 2) as an optimum solution.

図3に示す制御装置1が備える機械学習装置100において、学習部110は、状態変数Sに基づいてロボット2の各軸を駆動するモータの移動指令の決定がされ、決定されたロボット2の各軸を駆動するモータの移動指令に基づくロボット2の動作が為された場合におけるロボット2の該動作の適否判定結果(状態変数Sが取得された次の学習周期で用いられる判定データDに相当)に関連する報酬Rを求める報酬計算部112と、報酬Rを用いて、ロボット2の各軸を駆動するモータの移動指令の価値を表す関数Qを更新する価値関数更新部114とを備える。学習部110は、価値関数更新部114が関数Qの更新を繰り返すことによってロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度に対するロボット2の各軸を駆動するモータの移動指令を学習する。 In the machine learning device 100 included in the control device 1 shown in FIG. 3, the learning unit 110 determines the movement command of the motor that drives each axis of the robot 2 based on the state variable S, and each of the determined robots 2. When the robot 2 operates based on the movement command of the motor that drives the axis, the suitability determination result of the operation of the robot 2 (corresponding to the determination data D used in the next learning cycle in which the state variable S is acquired). A reward calculation unit 112 that obtains a reward R related to the robot 2 and a value function update unit 114 that updates a function Q representing the value of a movement command of a motor that drives each axis of the robot 2 by using the reward R are provided. In the learning unit 110, the value function updating unit 114 repeatedly updates the function Q, so that the robot 2 has a position and orientation of the tip of the robot hand of the robot 2 and the temperature of the motor that drives each axis of the robot 2. Learn the movement command of the motor that drives each axis of.

学習部110が実行する強化学習のアルゴリズムの一例を説明する。この例によるアルゴリズムは、Q学習(Q−learning)として知られるものであって、行動主体の状態sと、その状態sで行動主体が選択し得る行動aとを独立変数として、状態sで行動aを選択した場合の行動の価値を表す関数Q(s,a)を学習する手法である。状態sで価値関数Qが最も高くなる行動aを選択することが最適解となる。状態sと行動aとの相関性が未知の状態でQ学習を開始し、任意の状態sで種々の行動aを選択する試行錯誤を繰り返すことで、価値関数Qを反復して更新し、最適解に近付ける。ここで、状態sで行動aを選択した結果として環境(つまり状態s)が変化したときに、その変化に応じた報酬(つまり行動aの重み付け)rが得られるように構成し、より高い報酬rが得られる行動aを選択するように学習を誘導することで、価値関数Qを比較的短時間で最適解に近付けることができる。 An example of the reinforcement learning algorithm executed by the learning unit 110 will be described. The algorithm according to this example is known as Q-learning, and acts in the state s with the state s of the action subject and the action a that the action subject can select in the state s as independent variables. This is a method of learning a function Q (s, a) that represents the value of an action when a is selected. The optimum solution is to select the action a having the highest value function Q in the state s. By starting Q-learning in a state where the correlation between the state s and the action a is unknown and repeating trial and error to select various actions a in an arbitrary state s, the value function Q is repeatedly updated and optimized. Get closer to the solution. Here, when the environment (that is, the state s) changes as a result of selecting the action a in the state s, a reward (that is, a weighting of the action a) r corresponding to the change is obtained, and a higher reward is obtained. By inducing learning to select the action a in which r is obtained, the value function Q can be approached to the optimum solution in a relatively short time.

価値関数Qの更新式は、一般に下記の数2式のように表すことができる。数2式において、st及びatはそれぞれ時刻tにおける状態及び行動であり、行動atにより状態はst+1に変化する。rt+1は、状態がstからst+1に変化したことで得られる報酬である。maxQの項は、時刻t+1で最大の価値Qになる(と時刻tで考えられている)行動aを行ったときのQを意味する。α及びγはそれぞれ学習係数及び割引率であり、0<α≦1、0<γ≦1で任意設定される。 The update formula of the value function Q can be generally expressed as the following equation (2). In Equation 2, s t and a t is a state and behavior at each time t, the state by action a t is changed to s t + 1. r t + 1 is a reward obtained by the state changes from s t in s t + 1. The term of maxQ means the Q when the action a which becomes the maximum value Q at the time t + 1 (which is considered at the time t) is performed. α and γ are learning coefficients and discount rates, respectively, and are arbitrarily set with 0 <α ≦ 1 and 0 <γ ≦ 1.

Figure 0006940425
Figure 0006940425

学習部110がQ学習を実行する場合、状態観測部106が観測した状態変数S及び判定データ取得部108が取得した判定データDは、更新式の状態sに該当し、現在状態(つまり、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度)に対するロボット2の各軸を駆動するモータの移動指令をどのように決定するべきかという行動は、更新式の行動aに該当し、報酬計算部112が求める報酬Rは、更新式の報酬rに該当する。よって価値関数更新部114は、現在状態に対するロボット2の各軸を駆動するモータの移動指令の価値を表す関数Qを、報酬Rを用いたQ学習により繰り返し更新する。 When the learning unit 110 executes Q learning, the state variable S observed by the state observation unit 106 and the judgment data D acquired by the judgment data acquisition unit 108 correspond to the update type state s, and correspond to the current state (that is, the robot). How to determine the movement command of the motor that drives each axis of the robot 2 with respect to the position and orientation of the movement source / destination of the tip of the robot hand 2 and the temperature of the motor that drives each axis of the robot 2. The action corresponds to the renewal type action a, and the reward R required by the reward calculation unit 112 corresponds to the renewal type reward r. Therefore, the value function update unit 114 repeatedly updates the function Q representing the value of the movement command of the motor driving each axis of the robot 2 with respect to the current state by Q learning using the reward R.

報酬計算部112が求める報酬Rは、例えば、ロボット2の各軸を駆動するモータの移動指令を決定した後に、決定されたロボット2の各軸を駆動するモータの移動指令に基づくロボット2の動作の適否判定結果が「適」と判定される場合(例えば、ロボット2の動作後に各モータ毎に定められたモータ温度の閾値を超えなかった場合、動作のサイクルタイムが縮んだ場合、各減速機毎に定められたモータ温度の閾値を超えなかった場合等)に正(プラス)の報酬Rとし、ロボット2の各軸を駆動するモータの移動指令を決定した後に、決定されたロボット2の各軸を駆動するモータの移動指令に基づくロボット2の動作の適否判定結果が「否」と判定される場合(例えば、ロボット2の動作後に各モータ毎に定められたモータ温度の閾値を超えた場合、各減速機毎に定められたモータ温度の閾値を超えた場合等)に負(マイナス)の報酬Rとすることができる。正負の報酬Rの絶対値は、互いに同一であってもよいし異なっていてもよい。また、判定の条件として、判定データDに含まれる複数の値を組み合わせて判定するようにしても良い。 The reward R obtained by the reward calculation unit 112 is, for example, the operation of the robot 2 based on the movement command of the motor that drives each axis of the robot 2 after determining the movement command of the motor that drives each axis of the robot 2. When the suitability judgment result is judged to be "suitable" (for example, when the motor temperature threshold set for each motor is not exceeded after the operation of the robot 2, the cycle time of the operation is shortened, each speed reducer A positive (plus) reward R is set when the motor temperature threshold is not exceeded (for example, when the motor temperature threshold is not exceeded), and after determining the movement command of the motor that drives each axis of the robot 2, each of the determined robots 2 When the suitability determination result of the operation of the robot 2 based on the movement command of the motor driving the shaft is determined to be "No" (for example, when the motor temperature threshold set for each motor is exceeded after the operation of the robot 2). , When the motor temperature threshold set for each speed reducer is exceeded, etc.), a negative (minus) reward R can be set. The absolute values of the positive and negative rewards R may be the same or different from each other. Further, as a judgment condition, a plurality of values included in the judgment data D may be combined for judgment.

また、設定されたロボット2の各軸を駆動するモータの移動指令に基づくロボット2の動作の適否判定結果を、「適」及び「否」の二通りだけでなく複数段階に設定することができる。例として、ロボット2の軸を駆動するモータの温度の閾値がTmaxである場合、ロボット2の動作後のモータの温度Tが、0≦T<Tmax/5のときは報酬R=5を与え、Tmax/5≦T<Tmax/2のときは報酬R=3を与え、Tmax/2≦T<Tmaxのときは報酬R=1を、Tmax≦Tのときは報酬R=−3(マイナスの報酬)を与えるような構成とすることができる。 Further, the suitability determination result of the operation of the robot 2 based on the movement command of the motor that drives each axis of the set robot 2 can be set not only in two ways of "suitable" and "bad" but also in a plurality of stages. .. As an example, when the threshold value of the temperature of the motor that drives the axis of the robot 2 is T max , and the temperature T of the motor after the operation of the robot 2 is 0 ≦ T <T max / 5, the reward R = 5 is given. When T max / 5 ≤ T <T max / 2, the reward R = 3 is given, when T max / 2 ≤ T <T max , the reward R = 1, and when T max ≤ T, the reward R = 3. It can be configured to give = -3 (negative reward).

また、設定されたロボット2の各軸を駆動するモータの移動指令に基づくロボット2の動作の適否判定結果として、モータ毎に重みを変えた報酬を設定することもできる。モータは、その種類毎に巻き線やベアリング、グリス、構造等に違いがあり、その耐久性も異なってくる。そこで、耐久力が低いモータの温度の上昇に対してはよりマイナスが大きくなるような報酬を与えるようにする、等といったように、モータ毎に報酬の重みを変えて設定することで、ロボット2の構成を考慮した学習をすることが可能となる。 Further, as a result of determining the suitability of the operation of the robot 2 based on the movement command of the motor that drives each axis of the set robot 2, it is possible to set a reward with a different weight for each motor. Motors have different windings, bearings, grease, structures, etc. for each type, and their durability also differs. Therefore, the robot 2 can be set by changing the weight of the reward for each motor, such as giving a reward so that the minus becomes larger when the temperature of the motor having low durability rises. It is possible to study in consideration of the structure of.

更に、学習の初期段階は判定に用いる閾値を比較的大きく設定し、学習が進行するにつれて判定に用いる閾値を縮小する構成とすることもできる。 Further, the threshold value used for the determination may be set relatively large in the initial stage of learning, and the threshold value used for the determination may be reduced as the learning progresses.

価値関数更新部114は、状態変数Sと判定データDと報酬Rとを、関数Qで表される行動価値(例えば数値)と関連付けて整理した行動価値テーブルを持つことができる。この場合、価値関数更新部114が関数Qを更新するという行為は、価値関数更新部114が行動価値テーブルを更新するという行為と同義である。Q学習の開始時には環境の現在状態とロボット2の各軸を駆動するモータの移動指令との相関性は未知であるから、行動価値テーブルにおいては、種々の状態変数Sと判定データDと報酬Rとが、無作為に定めた行動価値の値(関数Q)と関連付けた形態で用意されている。なお報酬計算部112は、判定データDが分かれば、これに対応する報酬Rを直ちに算出でき、算出した値Rが行動価値テーブルに書き込まれる。 The value function update unit 114 can have an action value table in which the state variable S, the determination data D, and the reward R are arranged in association with the action value (for example, a numerical value) represented by the function Q. In this case, the act of updating the function Q by the value function updating unit 114 is synonymous with the act of updating the action value table by the value function updating unit 114. At the start of Q-learning, the correlation between the current state of the environment and the movement command of the motor that drives each axis of the robot 2 is unknown. Therefore, in the action value table, various state variables S, judgment data D, and reward R are used. Is prepared in a form associated with a randomly determined action value value (function Q). If the determination data D is known, the reward calculation unit 112 can immediately calculate the reward R corresponding to the determination data D, and the calculated value R is written in the action value table.

ロボット2の動作の適否判定結果に応じた報酬Rを用いてQ学習を進めると、より高い報酬Rが得られる行動を選択する方向へ学習が誘導され、選択した行動を現在状態で実行した結果として変化する環境の状態(つまり状態変数S及び判定データD)に応じて、現在状態で行う行動についての行動価値の値(関数Q)が書き換えられて行動価値テーブルが更新される。この更新を繰り返すことにより、行動価値テーブルに表示される行動価値の値(関数Q)は、適正な行動(本発明の場合、ロボット2の各軸を駆動するモータの温度が高温にならないようにロボット2を動作させる行動)であるほど大きな値となるように書き換えられる。このようにして、未知であった環境の現在状態(ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度)とそれに対する行動(ロボット2の各軸を駆動するモータの移動指令)との相関性が徐々に明らかになる。つまり行動価値テーブルの更新により、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度と、ロボット2の各軸を駆動するモータの移動指令との関係が最適解に徐々に近づけられる。 When Q-learning is advanced using the reward R according to the suitability judgment result of the operation of the robot 2, the learning is guided in the direction of selecting the action that obtains a higher reward R, and the result of executing the selected action in the current state. The action value value (function Q) for the action performed in the current state is rewritten and the action value table is updated according to the state of the environment (that is, the state variable S and the determination data D) that changes as. By repeating this update, the value of the action value (function Q) displayed in the action value table is set to the proper action (in the case of the present invention, the temperature of the motor driving each axis of the robot 2 does not become high). It is rewritten so that the larger the value is, the larger the value is (the action of operating the robot 2). In this way, the current state of the unknown environment (the position and orientation of the moving source / destination of the tip of the robot hand of the robot 2 and the temperature of the motor driving each axis of the robot 2) and the action for it (robot 2). The correlation with the movement command of the motor that drives each axis) is gradually clarified. That is, by updating the action value table, the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2, the temperature of the motor that drives each axis of the robot 2, and the movement command of the motor that drives each axis of the robot 2 The relationship with is gradually brought closer to the optimal solution.

図4を参照して、学習部110が実行する上記したQ学習のフロー(つまり機械学習方法の一形態)をさらに説明する。まずステップSA01で、価値関数更新部114は、その時点での行動価値テーブルを参照しながら、状態観測部106が観測した状態変数Sが示す現在状態で行う行動としてロボット2の各軸を駆動するモータの移動指令を無作為に選択する。次に価値関数更新部114は、ステップSA02で、状態観測部106が観測している現在状態の状態変数Sを取り込み、ステップSA03で、判定データ取得部108が取得している現在状態の判定データDを取り込む。次に価値関数更新部114は、ステップSA04で、判定データDに基づき、ロボット2の各軸を駆動するモータの移動指令が適当であったか否かを判断し、適当であった場合、ステップSA05で、報酬計算部112が求めた正の報酬Rを関数Qの更新式に適用し、次いでステップSA06で、現在状態における状態変数S及び判定データDと報酬Rと行動価値の値(更新後の関数Q)とを用いて行動価値テーブルを更新する。ステップSA04で、ロボット2の各軸を駆動するモータの移動指令が適当でなかったと判断した場合、ステップSA07で、報酬計算部112が求めた負の報酬Rを関数Qの更新式に適用し、次いでステップSA06で、現在状態における状態変数S及び判定データDと報酬Rと行動価値の値(更新後の関数Q)とを用いて行動価値テーブルを更新する。学習部110は、ステップSA01〜SA07を繰り返すことで行動価値テーブルを反復して更新し、ロボット2の各軸を駆動するモータの移動指令の学習を進行させる。なお、ステップSA04からステップSA07までの報酬Rを求める処理及び価値関数の更新処理は、判定データDに含まれるそれぞれのデータについて実行される。 With reference to FIG. 4, the above-mentioned Q-learning flow (that is, one form of the machine learning method) executed by the learning unit 110 will be further described. First, in step SA01, the value function update unit 114 drives each axis of the robot 2 as an action to be performed in the current state indicated by the state variable S observed by the state observation unit 106 while referring to the action value table at that time. Randomly select the movement command of the motor. Next, the value function update unit 114 takes in the state variable S of the current state observed by the state observation unit 106 in step SA02, and determines the current state acquired by the determination data acquisition unit 108 in step SA03. Capture D. Next, the value function update unit 114 determines in step SA04 whether or not the movement command of the motor driving each axis of the robot 2 is appropriate based on the determination data D, and if it is appropriate, in step SA05. , The positive reward R obtained by the reward calculation unit 112 is applied to the update formula of the function Q, and then in step SA06, the state variable S in the current state, the judgment data D, the reward R, and the value of the action value (the updated function). Update the action value table using Q) and. When it is determined in step SA04 that the movement command of the motor driving each axis of the robot 2 is not appropriate, the negative reward R obtained by the reward calculation unit 112 is applied to the update formula of the function Q in step SA07. Next, in step SA06, the action value table is updated using the state variable S in the current state, the judgment data D, the reward R, and the action value value (updated function Q). The learning unit 110 iteratively updates the action value table by repeating steps SA01 to SA07, and advances learning of the movement command of the motor that drives each axis of the robot 2. The process of obtaining the reward R and the process of updating the value function from step SA04 to step SA07 are executed for each data included in the determination data D.

前述した強化学習を進める際に、例えばニューラルネットワークを応用することができる。図5Aは、ニューロンのモデルを模式的に示す。図5Bは、図5Aに示すニューロンを組み合わせて構成した三層のニューラルネットワークのモデルを模式的に示す。ニューラルネットワークは、例えば、ニューロンのモデルを模した演算装置や記憶装置等によって構成できる。 For example, a neural network can be applied when advancing the reinforcement learning described above. FIG. 5A schematically shows a neuron model. FIG. 5B schematically shows a model of a three-layer neural network constructed by combining the neurons shown in FIG. 5A. The neural network can be configured by, for example, an arithmetic unit or a storage device that imitates a neuron model.

図5Aに示すニューロンは、複数の入力x(ここでは一例として、入力x1〜入力x3)に対する結果yを出力するものである。各入力x1〜x3には、この入力xに対応する重みw(w1〜w3)が掛けられる。これにより、ニューロンは、次の数3式により表現される出力yを出力する。なお、数3式において、入力x、出力y及び重みwは、すべてベクトルである。また、θはバイアスであり、fkは活性化関数である。 The neuron shown in FIG. 5A outputs the result y for a plurality of inputs x (here, as an example, inputs x 1 to inputs x 3). Each input x 1 ~x 3, the weight w corresponding to the input x (w 1 ~w 3) is multiplied. As a result, the neuron outputs the output y expressed by the following equation (3). In addition, in the equation 3, the input x, the output y, and the weight w are all vectors. Further, θ is a bias and f k is an activation function.

Figure 0006940425
Figure 0006940425

図5Bに示す三層のニューラルネットワークは、左側から複数の入力x(ここでは一例として、入力x1〜入力x3)が入力され、右側から結果y(ここでは一例として、結果y1〜結果y3)が出力される。図示の例では、入力x1、x2、x3のそれぞれに対応の重み(総称してw1で表す)が乗算されて、個々の入力x1、x2、x3がいずれも3つのニューロンN11、N12、N13に入力されている。 In the three-layer neural network shown in FIG. 5B, a plurality of inputs x (here, as an example, inputs x1 to input x3) are input from the left side, and a result y (here, as an example, result y1 to result y3) is input from the right side. It is output. In the illustrated example, each of the inputs x1, x2, x3 is multiplied by the corresponding weight (collectively represented by w1), and the individual inputs x1, x2, x3 are all three neurons N11, N12, N13. It has been entered.

図5Bでは、ニューロンN11〜N13の各々の出力を、総称してz1で表す。z1は、入カベクトルの特徴量を抽出した特徴ベクトルと見なすことができる。図示の例では、特徴ベクトルz1のそれぞれに対応の重み(総称してw2で表す)が乗算されて、個々の特徴ベクトルz1がいずれも2つのニューロンN21、N22に入力されている。特徴ベクトルz1は、重みw1と重みw2との間の特徴を表す。 In FIG. 5B, the outputs of neurons N11 to N13 are collectively represented by z1. z1 can be regarded as a feature vector obtained by extracting the feature amount of the input vector. In the illustrated example, each of the feature vectors z1 is multiplied by a corresponding weight (collectively represented by w2), and each of the individual feature vectors z1 is input to the two neurons N21 and N22. The feature vector z1 represents a feature between the weights w1 and w2.

図5Bでは、ニューロンN21〜N22の各々の出力を、総称してz2で表す。z2は、特徴ベクトルz1の特徴量を抽出した特徴ベクトルと見なすことができる。図示の例では、特徴ベクトルz2のそれぞれに対応の重み(総称してw3で表す)が乗算されて、個々の特徴ベクトルz2がいずれも3つのニューロンN31、N32、N33に入力されている。特徴ベクトルz2は、重みw2と重みw3との間の特徴を表す。最後にニューロンN31〜N33は、それぞれ結果y1〜y3を出力する。
なお、三層以上の層を為すニューラルネットワークを用いた、いわゆるディープラーニングの手法を用いることも可能である。
In FIG. 5B, the outputs of neurons N21 to N22 are collectively represented by z2. z2 can be regarded as a feature vector obtained by extracting the feature amount of the feature vector z1. In the illustrated example, each of the feature vectors z2 is multiplied by a corresponding weight (collectively represented by w3), and each of the individual feature vectors z2 is input to the three neurons N31, N32, and N33. The feature vector z2 represents a feature between the weights w2 and w3. Finally, the neurons N31 to N33 output the results y1 to y3, respectively.
It is also possible to use a so-called deep learning method using a neural network consisting of three or more layers.

制御装置1が備える機械学習装置100においては、ニューラルネットワークをQ学習における価値関数として用い、状態変数Sと行動aとを入力xとして、学習部110が上記したニューラルネットワークに従う多層構造の演算を行うことで、当該状態における当該行動の価値(結果y)を出力することもできる。なお、ニューラルネットワークの動作モードには、学習モードと価値予測モードとがあり、例えば学習モードで学習データセットを用いて重みwを学習し、学習した重みwを用いて価値予測モードで行動の価値判断を行うことができる。なお価値予測モードでは、検出、分類、推論等を行うこともできる。 In the machine learning device 100 included in the control device 1, the neural network is used as a value function in Q-learning, the state variable S and the action a are input x, and the learning unit 110 performs a multi-layered structure calculation according to the above-mentioned neural network. Therefore, the value (result y) of the action in the state can be output. The operation mode of the neural network includes a learning mode and a value prediction mode. For example, the weight w is learned using the learning data set in the learning mode, and the value of the action is used in the value prediction mode using the learned weight w. You can make a judgment. In the value prediction mode, detection, classification, inference, and the like can also be performed.

上記した制御装置1の構成は、プロセッサ101が実行する機械学習方法(或いはソフトウェア)として記述できる。この機械学習方法は、ロボット2の各軸を駆動するモータの移動指令を学習する機械学習方法であって、コンピュータのCPUが、移動指令データS1、基準位置姿勢データS2、及びモータ温度データS3を、ロボット2が動作する環境の現在状態を表す状態変数Sとして観測するステップと、決定されたロボット2の各軸を駆動するモータの移動指令に基づくロボット2の動作の適否判定結果を示す判定データDを取得するステップと、状態変数Sと判定データDとを用いて、基準位置姿勢データS2、モータ温度データS3と、ロボット2の各軸を駆動するモータの移動指令とを関連付けて学習するステップとを有する。 The configuration of the control device 1 described above can be described as a machine learning method (or software) executed by the processor 101. This machine learning method is a machine learning method for learning a movement command of a motor that drives each axis of the robot 2, and a computer CPU obtains movement command data S1, reference position / orientation data S2, and motor temperature data S3. , The step of observing as a state variable S representing the current state of the environment in which the robot 2 operates, and the determination data indicating the suitability determination result of the operation of the robot 2 based on the movement command of the motor that drives each axis of the determined robot 2. A step of acquiring D, and a step of learning by associating the reference position / orientation data S2 and the motor temperature data S3 with the movement command of the motor driving each axis of the robot 2 by using the state variable S and the determination data D. And have.

図6は、第2の実施形態による制御装置1と機械学習装置100の概略的な機能ブロック図であって、学習アルゴリズムの他の例として教師あり学習を実行する学習部110を備えた構成を示したものである。教師あり学習は、入力とそれに対応する出力との既知のデータセット(教師データと称する)が与えられ、それら教師データから入力と出力との相関性を暗示する特徴を識別することで、新たな入力に対する所要の出力を推定するための相関性モデルを学習する手法である。 FIG. 6 is a schematic functional block diagram of the control device 1 and the machine learning device 100 according to the second embodiment, and has a configuration including a learning unit 110 that executes supervised learning as another example of the learning algorithm. It is shown. Supervised learning is new by being given a known dataset of inputs and their corresponding outputs (called supervised data) and identifying features from those teacher data that imply a correlation between inputs and outputs. It is a method of learning a correlation model for estimating the required output for an input.

本実施形態の制御装置1が備える機械学習装置100は、判定データ取得部108に代えて、環境の状態に対して適切に行われたロボット2の各軸を駆動するモータの移動指令を示す移動指令データL1を含むラベルデータLを取得するラベルデータ取得部109を備える。ラベルデータ取得部109は、ある状態において適切であるとされるロボット2の各軸を駆動するモータの移動指令を移動指令データL1として取得する。この移動指令データL1は、過去に行われたロボット2の動作時に、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢(基準位置姿勢データS2)、ロボット2の各軸を駆動するモータの温度(モータ温度データS3)、及び、ロボット2の各軸を駆動するモータの移動指令をログデータとして記録しておき、該ログデータを解析し、ロボット2の各軸を駆動するモータの温度を必要以上に高温にすることなくロボット2を動作させることができた移動指令のデータを、適切な移動指令のデータ(移動指令データL1)として取得するようにすれば良い。何を以って適切な移動指令のデータであるとするかは、第1の実施形態における判定データDに対する判定と同様に考えればよい。 The machine learning device 100 included in the control device 1 of the present embodiment is a movement indicating a movement command of a motor for driving each axis of the robot 2, which is appropriately performed for the state of the environment, instead of the determination data acquisition unit 108. A label data acquisition unit 109 for acquiring label data L including command data L1 is provided. The label data acquisition unit 109 acquires the movement command of the motor that drives each axis of the robot 2, which is considered to be appropriate in a certain state, as the movement command data L1. This movement command data L1 drives the position / orientation (reference position / orientation data S2) of the movement source / destination of the tip of the robot hand of the robot 2 and each axis of the robot 2 during the operation of the robot 2 performed in the past. The temperature of the motor (motor temperature data S3) and the movement command of the motor that drives each axis of the robot 2 are recorded as log data, and the log data is analyzed to drive the motor that drives each axis of the robot 2. The movement command data in which the robot 2 can be operated without raising the temperature to an unnecessarily high temperature may be acquired as appropriate movement command data (movement command data L1). What constitutes the appropriate movement command data may be considered in the same manner as the determination for the determination data D in the first embodiment.

本実施形態の状態観測部106は、移動指令データS1を観測する必要は無い。また、ラベルデータ取得部109は、判定データ取得部108と同様に、学習部110による学習の段階では必須の構成となるが、学習部110によるロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度とロボット2の各軸を駆動するモータの移動指令とを関連付けた学習が完了した後には必ずしも必須の構成ではない。 The state observing unit 106 of the present embodiment does not need to observe the movement command data S1. Further, the label data acquisition unit 109, like the determination data acquisition unit 108, has an indispensable configuration at the stage of learning by the learning unit 110, but the movement source / movement destination of the tip of the robot hand of the robot 2 by the learning unit 110. It is not always an indispensable configuration after learning related to the position / orientation of the robot 2 and the temperature of the motor driving each axis of the robot 2 and the movement command of the motor driving each axis of the robot 2 is completed.

図6に示す制御装置1が備える機械学習装置100において、学習部110は、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度からロボット2の各軸を駆動するモータの移動指令を推定する相関性モデルMと過去に取得されたロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度及び適切なロボット2の各軸を駆動するモータの移動指令の結果から得られた教師データTから識別される相関性特徴との誤差Eを計算する誤差計算部116と、誤差Eを縮小するように相関性モデルMを更新するモデル更新部118とを備える。学習部110は、モデル更新部118が相関性モデルMの更新を繰り返すことによってロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度からのロボット2の各軸を駆動するモータの移動指令の推定を学習する。 In the machine learning device 100 included in the control device 1 shown in FIG. 6, the learning unit 110 determines the robot from the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2 and the temperature of the motor that drives each axis of the robot 2. Correlation model M that estimates the movement command of the motor that drives each axis of 2 and the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2 acquired in the past and the motor that drives each axis of the robot 2. The error calculation unit 116 that calculates the error E with the correlation feature identified from the teacher data T obtained from the result of the movement command of the motor that drives each axis of the robot 2 and the temperature of the robot 2, and the error calculation unit 116 that reduces the error E. It is provided with a model update unit 118 that updates the correlation model M so as to do so. In the learning unit 110, the model updating unit 118 repeatedly updates the correlation model M to obtain the position and orientation of the tip of the robot hand of the robot 2 from the moving source and the moving destination and the temperature of the motor driving each axis of the robot 2. Learn to estimate the movement command of the motor that drives each axis of the robot 2.

相関性モデルMの初期値は、例えば、状態変数SとラベルデータLとの相関性を単純化して(例えばN次関数で)表現したものであり、教師あり学習の開始前に学習部110に与えられる。教師データTは、本発明では上述したように過去に取得されたロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度とそれに対して適切に指令されたロボット2の各軸を駆動するモータの移動指令のデータとを利用することができ、制御装置1の運用時に随時学習部110に与えられる。誤差計算部116は、学習部110に随時与えられた教師データTにより、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度とロボット2の各軸を駆動するモータの移動指令との相関性を暗示する相関性特徴を識別し、この相関性特徴と、現在状態における状態変数S及びラベルデータLに対応する相関性モデルMとの誤差Eを求める。モデル更新部118は、例えば予め定めた更新ルールに従い、誤差Eが小さくなる方向へ相関性モデルMを更新する。 The initial value of the correlation model M is, for example, a simplified representation (for example, by an Nth-order function) of the correlation between the state variable S and the label data L, and is sent to the learning unit 110 before the start of supervised learning. Given. In the present invention, the teacher data T is appropriate for the position and orientation of the moving source / moving destination of the tip of the robot hand of the robot 2 and the temperature of the motor driving each axis of the robot 2 acquired in the past as described above. It is possible to use the data of the movement command of the motor that drives each axis of the robot 2 commanded to the above, and it is given to the learning unit 110 at any time when the control device 1 is operated. The error calculation unit 116 uses the teacher data T given to the learning unit 110 at any time to determine the position and orientation of the movement source / destination of the tip of the robot hand of the robot 2 and the temperature of the motor that drives each axis of the robot 2 and the robot 2. The correlation feature that implies the correlation with the movement command of the motor that drives each axis of the above is identified, and the error between this correlation feature and the correlation model M corresponding to the state variable S and the label data L in the current state. Find E. The model update unit 118 updates the correlation model M in a direction in which the error E becomes smaller, for example, according to a predetermined update rule.

次の学習サイクルでは、誤差計算部116は、更新後の相関性モデルMに従って状態変数Sを用いてロボット2の各軸を駆動するモータの移動指令の推定が行われ、該推定の結果と実際に取得されたラベルデータLの誤差Eを求め、モデル更新部118が再び相関性モデルMを更新する。このようにして、未知であった環境の現在状態とそれに対する推定との相関性が徐々に明らかになる。学習部110による学習が完了した時点で、意思決定部122は学習部110が学習した結果を用いて、状態観測部106が観測したロボット2のロボットハンドの先端の移動元・移動先の位置姿勢(基準位置姿勢データS2)、ロボット2の各軸を駆動するモータの温度(モータ温度データS3)に基づいて、ロボット2の各軸を駆動する適切なモータの移動指令を推定して出力することができるようになる。なお、第2の実施形態においても、第1の実施形態と同様に、状態変数Sとして、様々なものを観測するようにできる。 In the next learning cycle, the error calculation unit 116 estimates the movement command of the motor that drives each axis of the robot 2 using the state variable S according to the updated correlation model M, and the estimation result and the actual state. The error E of the label data L acquired in the above is obtained, and the model update unit 118 updates the correlation model M again. In this way, the correlation between the current state of the unknown environment and the estimation for it gradually becomes clear. When the learning by the learning unit 110 is completed, the decision-making unit 122 uses the learning result of the learning unit 110 to determine the position and orientation of the tip of the robot hand of the robot 2 observed by the state observation unit 106. Based on (reference position / orientation data S2) and the temperature of the motor driving each axis of the robot 2 (motor temperature data S3), an appropriate movement command of the motor driving each axis of the robot 2 is estimated and output. Will be able to. In the second embodiment as well, as in the first embodiment, various state variables S can be observed.

図7は、制御装置1を備えた第3の実施形態によるシステム170を示す。システム170は、セルコンピュータやホストコンピュータ、クラウドサーバ等のコンピュータの一部として実装された少なくとも1台の制御装置1と、制御の対象となる複数のロボット2と、制御装置1、ロボット2を互いに接続する有線/無線のネットワーク172とを備える。 FIG. 7 shows a system 170 according to a third embodiment including the control device 1. The system 170 uses at least one control device 1 mounted as a part of a computer such as a cell computer, a host computer, or a cloud server, a plurality of robots 2 to be controlled, and the control device 1 and the robot 2 with each other. It is provided with a wired / wireless network 172 to be connected.

上記構成を有するシステム170は、機械学習装置100を備える制御装置1が、学習部110の学習結果を用いて、ロボット2のロボットハンドの先端の移動元・移動先の位置姿勢及びロボット2の各軸を駆動するモータの温度に対するロボット2の各軸を駆動するモータの移動指令を、それぞれのロボット2毎に自動的かつ正確に求めることができる。また、制御装置1の機械学習装置100が、複数のロボット2のそれぞれについて得られた状態変数S及び判定データDに基づき、全てのロボット2に共通するロボット2の各軸を駆動するモータの移動指令を学習し、その学習結果を全てのロボット2の動作において共有するように構成できる。したがってシステム170によれば、より多様なデータ集合(状態変数S及び判定データDを含む)を入力として、ロボット2の各軸を駆動するモータの移動指令の学習の速度や信頼性を向上させることができる。 In the system 170 having the above configuration, the control device 1 including the machine learning device 100 uses the learning result of the learning unit 110 to determine the position and orientation of the moving source / destination of the tip of the robot hand of the robot 2 and each of the robots 2. The movement command of the motor that drives each axis of the robot 2 with respect to the temperature of the motor that drives the shaft can be automatically and accurately obtained for each robot 2. Further, the machine learning device 100 of the control device 1 moves a motor that drives each axis of the robot 2 that is common to all the robots 2 based on the state variables S and the determination data D obtained for each of the plurality of robots 2. It can be configured to learn a command and share the learning result in all the actions of the robot 2. Therefore, according to the system 170, it is possible to improve the speed and reliability of learning the movement command of the motor that drives each axis of the robot 2 by inputting a more diverse data set (including the state variable S and the determination data D). Can be done.

以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。 Although the embodiments of the present invention have been described above, the present invention is not limited to the examples of the above-described embodiments, and can be implemented in various embodiments by making appropriate changes.

例えば、機械学習装置100が実行する学習アルゴリズムや演算アルゴリズム、制御装置1が実行する制御アルゴリズム等は、上述したものに限定されず、様々なアルゴリズムを採用できる。 For example, the learning algorithm and the calculation algorithm executed by the machine learning device 100, the control algorithm executed by the control device 1, and the like are not limited to those described above, and various algorithms can be adopted.

また、上記した実施形態では制御装置1と機械学習装置100が異なるCPUを有する装置として説明しているが、機械学習装置100は制御装置1が備えるCPU11と、ROM12に記憶されるシステム・プログラムにより実現するようにしても良い。 Further, in the above-described embodiment, the control device 1 and the machine learning device 100 are described as devices having different CPUs, but the machine learning device 100 is based on the CPU 11 included in the control device 1 and the system program stored in the ROM 12. It may be realized.

1 制御装置
2 ロボット
11 CPU
12 ROM
13 RAM
14 不揮発性メモリ
15,18,19 インタフェース
17 I/Oユニット
20 バス
21 インタフェース
30 軸制御回路
34 制御部
40 サーボアンプ
50 サーボモータ
70 表示器/MDIユニット
71 操作盤
72 外部機器
100 機械学習装置
101 プロセッサ
102 ROM
103 RAM
104 不揮発性メモリ
106 状態観測部
108 判定データ取得部
109 ラベルデータ取得部
110 学習部
112 報酬計算部
114 価値関数更新部
116 誤差計算部
118 モデル更新部
122 意思決定部
170 システム
172 ネットワーク
1 Control device 2 Robot 11 CPU
12 ROM
13 RAM
14 Non-volatile memory 15, 18, 19 Interface 17 I / O unit 20 Bus 21 Interface 30 Axis control circuit 34 Control unit 40 Servo amplifier 50 Servo motor 70 Display / MDI unit 71 Operation panel 72 External device 100 Machine learning device 101 Processor 102 ROM
103 RAM
104 Non-volatile memory 106 State observation unit 108 Judgment data acquisition unit 109 Label data acquisition unit 110 Learning unit 112 Reward calculation unit 114 Value function update unit 116 Error calculation unit 118 Model update unit 122 Decision-making unit 170 System 172 Network

Claims (11)

ロボットの各軸を駆動するモータの寿命を延ばすように制御する制御装置であって、
前記ロボットの動作環境に対する前記モータの移動指令を学習する機械学習装置を備え、
前記機械学習装置は、
前記モータの移動指令を示す移動指令データ、前記ロボットの先端の移動元及び移動先の位置姿勢を示す基準位置姿勢データ、及び前記モータの温度乃至推定温度を示すモータ温度データを、環境の現在状態を表す状態変数として観測する状態観測部と、
前記モータの温度乃至推定温度の適否判定結果を示すモータ温度判定データを、判定データとして取得する判定データ取得部と、
前記状態変数と前記判定データとを用いて、前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度と、前記モータの移動指令とを関連付けて学習する学習部と、
を備える制御装置。
A control device that controls to extend the life of the motor that drives each axis of the robot.
A machine learning device for learning a movement command of the motor with respect to the operating environment of the robot is provided.
The machine learning device
The movement command data indicating the movement command of the motor, the reference position / orientation data indicating the position / orientation of the moving source and the moving destination of the tip of the robot, and the motor temperature data indicating the temperature to the estimated temperature of the motor are displayed in the current state of the environment. The state observation unit that observes as a state variable representing
A judgment data acquisition unit that acquires motor temperature judgment data indicating the suitability judgment result of the motor temperature or the estimated temperature as judgment data, and a judgment data acquisition unit.
Using the state variables and the determination data, a learning unit that learns by associating the position and orientation of the moving source / destination of the tip of the robot, the temperature or estimated temperature of the motor, and the movement command of the motor with each other.
A control device comprising.
前記状態観測部は、前記状態変数として、前記モータに設置された減速機の温度乃至推定温度を示す減速機温度データを更に観測し、
前記判定データ取得部は、前記判定データとして、前記減速機の温度乃至推定温度の適否判定結果を示す減速機温度判定データを更に取得し、
前記学習部は、前記状態変数と前記判定データとを用いて、前記ロボットの先端の移動元・移動先の位置姿勢,前記モータの温度乃至推定温度及び前記減速機の温度乃至推定温度と、前記モータの移動指令とを関連付けて学習する、
請求項1に記載の制御装置。
The state observing unit further observes the speed reducer temperature data indicating the temperature or the estimated temperature of the speed reducer installed in the motor as the state variable.
The determination data acquisition unit further acquires the reducer temperature determination data indicating the suitability determination result of the temperature of the reducer or the estimated temperature as the determination data.
The learning unit uses the state variable and the determination data to determine the position / orientation of the moving source / destination of the tip of the robot, the temperature or estimated temperature of the motor, the temperature or estimated temperature of the speed reducer, and the above. Learn by associating with the movement command of the motor,
The control device according to claim 1.
前記学習部は、
前記適否判定結果に関連する報酬を求める報酬計算部と、
前記報酬を用いて、前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度に対するロボットの各軸を駆動するモータの移動指令の価値を表す関数を更新する価値関数更新部と、
を備え、
前記報酬計算部は、前記モータの温度乃至推定温度を低く維持できる程高い報酬を与える、
請求項1または2に記載の制御装置。
The learning unit
The remuneration calculation unit that obtains the remuneration related to the suitability judgment result,
Using the reward, the value function update that updates the function representing the position and orientation of the movement source / destination of the tip of the robot and the value of the movement command of the motor that drives each axis of the robot with respect to the temperature or the estimated temperature of the motor. Department and
With
The reward calculation unit gives a reward high enough to keep the temperature or estimated temperature of the motor low.
The control device according to claim 1 or 2.
前記学習部は、前記状態変数と前記判定データとを多層構造で演算する、
請求項1〜3のいずれか1つに記載の制御装置。
The learning unit calculates the state variable and the determination data in a multi-layer structure.
The control device according to any one of claims 1 to 3.
ロボットの各軸を駆動するモータの寿命を延ばすように制御する制御装置であって、
前記ロボットの動作環境に対する前記モータの移動指令を学習した機械学習装置を備え、
前記機械学習装置は、
前記モータの移動指令を示す移動指令データ、前記ロボットの先端の移動元及び移動先の位置姿勢を示す基準位置姿勢データ、及び前記モータの温度乃至推定温度を示すモータ温度データを、環境の現在状態を表す状態変数として観測する状態観測部と、
前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度と、前記モータの移動指令とを関連付けて学習した学習部と、
前記状態観測部が観測した状態変数と、前記学習部による学習結果に基づいて、前記ロボットの各軸を駆動するモータの移動指令を出力する意思決定部と、
を備える制御装置。
A control device that controls to extend the life of the motor that drives each axis of the robot.
A machine learning device that learns the movement command of the motor with respect to the operating environment of the robot is provided.
The machine learning device
The movement command data indicating the movement command of the motor, the reference position / orientation data indicating the position / orientation of the moving source and the moving destination of the tip of the robot, and the motor temperature data indicating the temperature to the estimated temperature of the motor are displayed in the current state of the environment. The state observation unit that observes as a state variable representing
A learning unit that learns by associating the position and orientation of the movement source / destination of the tip of the robot, the temperature or estimated temperature of the motor, and the movement command of the motor.
A decision-making unit that outputs a movement command of a motor that drives each axis of the robot based on the state variables observed by the state observation unit and the learning result of the learning unit.
A control device comprising.
前記機械学習装置は、クラウドサーバに存在する、
請求項1〜5のいずれか1つに記載の制御装置。
The machine learning device exists in the cloud server.
The control device according to any one of claims 1 to 5.
ロボットの各軸を駆動するモータの寿命を延ばすように制御する制御装置であって、
前記ロボットの動作環境に対する前記モータの移動指令を学習する機械学習装置を備え、
前記機械学習装置は、
前記ロボットの先端の移動元及び移動先の位置姿勢を示す基準位置姿勢データ、及び前記モータの温度乃至推定温度を示すモータ温度データを、環境の現在状態を表す状態変数として観測する状態観測部と、
前記モータの移動指令を示す移動指令データを、ラベルデータとして取得するラベルデータ取得部と、
前記状態変数と前記ラベルデータとを用いて、前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度と、前記モータの移動指令とを関連付けて学習する学習部と、
を備える制御装置。
A control device that controls to extend the life of the motor that drives each axis of the robot.
A machine learning device for learning a movement command of the motor with respect to the operating environment of the robot is provided.
The machine learning device
A state observing unit that observes reference position / orientation data indicating the position / orientation of the moving source and moving destination of the tip of the robot and motor temperature data indicating the temperature or estimated temperature of the motor as state variables representing the current state of the environment. ,
A label data acquisition unit that acquires movement command data indicating the movement command of the motor as label data, and
Using the state variables and the label data, a learning unit that learns by associating the position and orientation of the moving source / destination of the tip of the robot, the temperature or estimated temperature of the motor, and the moving command of the motor with each other.
A control device comprising.
前記学習部は、
前記状態変数から前記モータの移動指令を推定する相関性モデルと、予め用意された教師データから識別される相関性特徴との誤差を計算する誤差計算部と、
前記誤差を縮小するように前記相関性モデルを更新するモデル更新部とを備える、
請求項7に記載の制御装置。
The learning unit
An error calculation unit that calculates an error between a correlation model that estimates the movement command of the motor from the state variable and a correlation feature that is identified from the teacher data prepared in advance.
A model update unit that updates the correlation model so as to reduce the error is provided.
The control device according to claim 7.
ロボットの各軸を駆動するモータの寿命を延ばすように制御する制御装置であって、
前記ロボットの動作環境に対する前記モータの移動指令を学習した機械学習装置を備え、
前記機械学習装置は、
前記ロボットの先端の移動元及び移動先の位置姿勢を示す基準位置姿勢データ、及び前記モータの温度乃至推定温度を示すモータ温度データを、環境の現在状態を表す状態変数として観測する状態観測部と、
前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度と、前記モータの移動指令とを関連付けて学習した学習部と、
前記状態観測部が観測した状態変数と、前記学習部による学習結果に基づいて、前記ロボットの各軸を駆動するモータの移動指令を出力する意思決定部部と、
を備える制御装置。
A control device that controls to extend the life of the motor that drives each axis of the robot.
A machine learning device that learns the movement command of the motor with respect to the operating environment of the robot is provided.
The machine learning device
A state observing unit that observes reference position / orientation data indicating the position / orientation of the moving source and moving destination of the tip of the robot and motor temperature data indicating the temperature or estimated temperature of the motor as state variables representing the current state of the environment. ,
A learning unit that learns by associating the position and orientation of the movement source / destination of the tip of the robot, the temperature or estimated temperature of the motor, and the movement command of the motor.
A decision-making unit that outputs a movement command of a motor that drives each axis of the robot based on the state variables observed by the state observation unit and the learning result of the learning unit.
A control device comprising.
ロボットの各軸を駆動するモータの寿命を延ばすように制御するために、前記ロボットの動作環境に対する前記モータの移動指令を学習する機械学習装置であって、
前記モータの移動指令を示す移動指令データ、前記ロボットの先端の移動元及び移動先の位置姿勢を示す基準位置姿勢データ、及び前記モータの温度乃至推定温度を示すモータ温度データを、環境の現在状態を表す状態変数として観測する状態観測部と、
前記モータの温度乃至推定温度の適否判定結果を示すモータ温度判定データを、判定データとして取得する判定データ取得部と、
前記状態変数と前記判定データとを用いて、前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度と、前記モータの移動指令とを関連付けて学習する学習部と、
を備える機械学習装置。
A machine learning device that learns movement commands of the motor with respect to the operating environment of the robot in order to control so as to extend the life of the motor that drives each axis of the robot.
The movement command data indicating the movement command of the motor, the reference position / orientation data indicating the position / orientation of the moving source and the moving destination of the tip of the robot, and the motor temperature data indicating the temperature to the estimated temperature of the motor are displayed in the current state of the environment. The state observation unit that observes as a state variable representing
A judgment data acquisition unit that acquires motor temperature judgment data indicating the suitability judgment result of the motor temperature or the estimated temperature as judgment data, and a judgment data acquisition unit.
Using the state variables and the determination data, a learning unit that learns by associating the position and orientation of the moving source / destination of the tip of the robot, the temperature or estimated temperature of the motor, and the movement command of the motor with each other.
A machine learning device equipped with.
ロボットの各軸を駆動するモータの寿命を延ばすように制御するために、前記ロボットの動作環境に対する前記モータの移動指令を学習した機械学習装置であって、
前記モータの移動指令を示す移動指令データ、前記ロボットの先端の移動元及び移動先の位置姿勢を示す基準位置姿勢データ、及び前記モータの温度乃至推定温度を示すモータ温度データを、環境の現在状態を表す状態変数として観測する状態観測部と、
前記ロボットの先端の移動元・移動先の位置姿勢及び前記モータの温度乃至推定温度と、前記モータの移動指令とを関連付けて学習した学習部と、
前記状態観測部が観測した状態変数と、前記学習部による学習結果に基づいて、前記ロボットの各軸を駆動するモータの移動指令を出力する意思決定部と、
を備える機械学習装置。
A machine learning device that learns a movement command of the motor with respect to the operating environment of the robot in order to control so as to extend the life of the motor that drives each axis of the robot.
The movement command data indicating the movement command of the motor, the reference position / orientation data indicating the position / orientation of the moving source and the moving destination of the tip of the robot, and the motor temperature data indicating the temperature to the estimated temperature of the motor are displayed in the current state of the environment. The state observation unit that observes as a state variable representing
A learning unit that learns by associating the position and orientation of the movement source / destination of the tip of the robot, the temperature or estimated temperature of the motor, and the movement command of the motor.
A decision-making unit that outputs a movement command of a motor that drives each axis of the robot based on the state variables observed by the state observation unit and the learning result of the learning unit.
A machine learning device equipped with.
JP2018021040A 2018-02-08 2018-02-08 Control device and machine learning device Active JP6940425B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018021040A JP6940425B2 (en) 2018-02-08 2018-02-08 Control device and machine learning device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018021040A JP6940425B2 (en) 2018-02-08 2018-02-08 Control device and machine learning device

Publications (2)

Publication Number Publication Date
JP2019136807A JP2019136807A (en) 2019-08-22
JP6940425B2 true JP6940425B2 (en) 2021-09-29

Family

ID=67692779

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018021040A Active JP6940425B2 (en) 2018-02-08 2018-02-08 Control device and machine learning device

Country Status (1)

Country Link
JP (1) JP6940425B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022076572A (en) * 2020-11-10 2022-05-20 株式会社日立製作所 Robot control system, robot control method and program

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006181648A (en) * 2004-12-24 2006-07-13 Toyota Motor Corp Robot arm driving device
JP6089695B2 (en) * 2012-12-27 2017-03-08 セイコーエプソン株式会社 robot
US9205560B1 (en) * 2013-06-24 2015-12-08 Redwood Robotics, Inc. System and method for failure detection of a robot actuator
JP6438366B2 (en) * 2015-08-28 2018-12-12 ファナック株式会社 Machine learning method and machine learning device for learning operation command for electric motor, control device and electric motor device provided with the machine learning device
JP6063016B1 (en) * 2015-09-29 2017-01-18 ファナック株式会社 Machine learning method and machine learning device for learning operation command for electric motor, and machine tool provided with the machine learning device

Also Published As

Publication number Publication date
JP2019136807A (en) 2019-08-22

Similar Documents

Publication Publication Date Title
CN109960219B (en) Control device and machine learning device
CN109002012B (en) Control device and machine learning device
JP6652549B2 (en) Chip removal device and information processing device
JP6619192B2 (en) Wire electrical discharge machine with function to warn of abnormal load on moving axis
JP6577522B2 (en) Control device and machine learning device
JP6557285B2 (en) Control device and machine learning device
JP2019162712A (en) Control device, machine learning device and system
JP6923484B2 (en) Machining condition adjustment device and machine learning device
CN109794657B (en) Control device and machine learning device
JP2019185125A (en) Control device and machine learning device
JP6767416B2 (en) Machining condition adjustment device and machine learning device
JP6841852B2 (en) Control device and control method
US11897066B2 (en) Simulation apparatus
JP6781242B2 (en) Controls, machine learning devices and systems
US9952574B2 (en) Machine learning device, motor control system, and machine learning method for learning cleaning interval of fan motor
CN110171159A (en) Control device and machine learning device
JP2019168973A (en) Drive device and machine learning device
CN108687766B (en) Robot control device, machine learning device, and machine learning method
JP6940425B2 (en) Control device and machine learning device
CN110125955B (en) Control device and machine learning device
JP6829271B2 (en) Measurement operation parameter adjustment device, machine learning device and system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200909

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210629

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210803

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210902

R150 Certificate of patent or registration of utility model

Ref document number: 6940425

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150