JP2019185742A - Controller and control method - Google Patents

Controller and control method Download PDF

Info

Publication number
JP2019185742A
JP2019185742A JP2019015507A JP2019015507A JP2019185742A JP 2019185742 A JP2019185742 A JP 2019185742A JP 2019015507 A JP2019015507 A JP 2019015507A JP 2019015507 A JP2019015507 A JP 2019015507A JP 2019185742 A JP2019185742 A JP 2019185742A
Authority
JP
Japan
Prior art keywords
model
learning
unit
coefficient
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019015507A
Other languages
Japanese (ja)
Other versions
JP6841852B2 (en
Inventor
鈔 支
Zhi Chao
鈔 支
文杰 陳
Wenjie Chen
文杰 陳
凱濛 王
Kaimeng Wang
凱濛 王
和臣 前田
Kazuomi Maeda
和臣 前田
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 DE102019002644.6A priority Critical patent/DE102019002644A1/en
Priority to US16/382,962 priority patent/US20190317472A1/en
Priority to CN201910308493.8A priority patent/CN110389556A/en
Publication of JP2019185742A publication Critical patent/JP2019185742A/en
Application granted granted Critical
Publication of JP6841852B2 publication Critical patent/JP6841852B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Numerical Control (AREA)
  • Feedback Control In General (AREA)

Abstract

To provide a controller and a control method capable of identifying a coefficient of a friction model.SOLUTION: A controller 1 which performs position control in view of friction for one or more axes of a machine includes: a data acquisition part 70 which acquires at least a position command and a position feedback; and a correction torque estimation part 80 which estimates, based on position deviation as a difference between the position command and the position feedback, a coefficient of a friction model upon performing the position control.SELECTED DRAWING: Figure 2

Description

本発明は、制御装置及び制御方法に関し、特に摩擦モデルの係数を同定することができる制御装置及び制御方法に関する。   The present invention relates to a control device and a control method, and more particularly to a control device and a control method capable of identifying a coefficient of a friction model.

工作機械、射出成形機、レーザ加工機、放電加工機、産業用ロボット等を含む産業用機械(以下、単に機械という)の制御においては、駆動機構に働く摩擦力を補償することにより、精密な制御性能を得ることができる。   In the control of industrial machines (hereinafter simply referred to as “machines”) including machine tools, injection molding machines, laser processing machines, electrical discharge machines, industrial robots, etc., precise compensation is achieved by compensating for frictional forces acting on the drive mechanism. Control performance can be obtained.

図11は、工作機械の駆動機構の一例である。サーボモータが駆動して、軸受により支持されたボールねじが回転することにより、ステージが移動する。このとき、例えば軸受とボールねじとの間、ボールねじとステージとの間には摩擦力が働く。つまりステージの挙動は摩擦力の影響を受ける。   FIG. 11 is an example of a drive mechanism of a machine tool. When the servo motor is driven and the ball screw supported by the bearing rotates, the stage moves. At this time, for example, a frictional force acts between the bearing and the ball screw and between the ball screw and the stage. In other words, the stage behavior is affected by the frictional force.

図12は、摩擦力と駆動機構の挙動との典型的な関係を示すグラフである。静止状態(速度=0)から運動状態へ、又は運動状態から静止状態への移行時には、摩擦力の変化は非線形となる。これをストライベック効果という。ストライベック効果により、機械には位置決め時間が長くなったり、反転時の軌跡誤差(象限突起)が発生する。   FIG. 12 is a graph showing a typical relationship between the frictional force and the behavior of the drive mechanism. At the time of transition from the stationary state (speed = 0) to the moving state or from the moving state to the stationary state, the change in the frictional force is nonlinear. This is called the Stribeck effect. Due to the Stribeck effect, the machine has a long positioning time and a trajectory error (quadrant projection) during reversal occurs.

このような非線形な摩擦の補償を考慮する際に有効な摩擦モデルとして、Lugreモデルが知られている。Lugreモデルにより、非線形な摩擦効果を抑えるための補正値(補正トルク)を求めることができる。図13に示すように、上記補正値を電流指令に加算することによって非線形な摩擦力が補償され、制御対象を精密に制御することができる。この補正処理は公知のフィードバック制御のなかで実施することが可能である。機械の制御装置は、位置指令と位置フィードバックとの偏差、及び速度指令と速度フィードバックとの偏差に基づいて電流指令を決定する。このとき制御装置は、Lugreモデルにより求められる補正トルクを電流指令に加算する。   The Lugre model is known as an effective friction model when considering such nonlinear friction compensation. With the Lugre model, a correction value (correction torque) for suppressing a non-linear friction effect can be obtained. As shown in FIG. 13, by adding the correction value to the current command, the nonlinear frictional force is compensated, and the controlled object can be precisely controlled. This correction processing can be performed in known feedback control. The machine control device determines the current command based on the deviation between the position command and the position feedback and the deviation between the speed command and the speed feedback. At this time, the control device adds the correction torque obtained from the Lugre model to the current command.

Lugreモデルを数1に示す。FはLugreモデルの出力となる補正トルクである。v,zは速度及び位置に関係する変数である。Fc,Fs,v0,σ0,σ1,σ2は駆動機構に特有の係数である。   The Lugre model is shown in Equation 1. F is a correction torque that is an output of the Lugre model. v and z are variables related to speed and position. Fc, Fs, v0, σ0, σ1, and σ2 are coefficients specific to the drive mechanism.

Figure 2019185742
Figure 2019185742

関連技術として、特許文献1には、摩擦モデルから補正データが得られることが開示されている。   As a related technique, Patent Document 1 discloses that correction data can be obtained from a friction model.

特開2004−234327号公報JP 2004-234327 A

しかしながら、Lugreモデルをはじめとする摩擦モデルの係数は機械や使用環境等により個々に異なるため、制御対象毎に個別に係数を同定しなければならなかった。また同定すべき係数の数が多いため、係数の同定作業に多くの手数を要していた。よって摩擦モデルの係数を手間なく同定できる手段が求められている。   However, since the coefficient of the friction model including the Lugre model differs depending on the machine, the usage environment, etc., the coefficient must be individually identified for each control target. In addition, since there are a large number of coefficients to be identified, much work is required for the coefficient identification work. Therefore, there is a demand for means that can identify the coefficient of the friction model without trouble.

そこで、摩擦モデルの係数を同定することができる制御装置及び制御方法が望まれている。   Therefore, a control device and a control method that can identify the coefficient of the friction model are desired.

本発明の一態様は、機械の1以上の軸について、摩擦を考慮した位置制御を行う制御装置であって、少なくとも位置指令及び位置フィードバックを取得するデータ取得部と、前記位置指令と前記位置フィードバックの差分である位置偏差に基づいて、前記位置制御を行う際の摩擦モデルの係数を推定する補正トルク推定部と、を備える制御装置である。   One aspect of the present invention is a control device that performs position control in consideration of friction with respect to one or more axes of a machine, and includes a data acquisition unit that acquires at least a position command and position feedback, the position command, and the position feedback. And a correction torque estimation unit that estimates a coefficient of a friction model when performing the position control based on a position deviation that is a difference between the two.

本発明の他の態様は、機械の1以上の軸について、摩擦を考慮した位置制御を行う制御方法であって、少なくとも位置指令及び位置フィードバックを取得するデータ取得ステップと、前記位置指令と前記位置フィードバックの差分である位置偏差に基づいて、前記位置制御を行う際の摩擦モデルの係数を推定する補正トルク推定ステップと、を備える制御方法である。   Another aspect of the present invention is a control method for performing position control in consideration of friction with respect to one or more axes of a machine, a data acquisition step for acquiring at least a position command and position feedback, the position command and the position And a correction torque estimating step for estimating a coefficient of a friction model when performing the position control based on a position deviation which is a feedback difference.

本発明により、摩擦モデルの係数を同定することができる制御装置及び制御方法を提供することができる。   According to the present invention, it is possible to provide a control device and a control method capable of identifying a coefficient of a friction model.

第1の実施形態の制御装置1の概略的なハードウェア構成図である。It is a schematic hardware block diagram of the control apparatus 1 of 1st Embodiment. 第1の実施形態の制御装置1の概略的な機能ブロック図である。It is a schematic functional block diagram of the control apparatus 1 of 1st Embodiment. 第2,3の実施形態の制御装置1の概略的なハードウェア構成図である。It is a schematic hardware block diagram of the control apparatus 1 of 2nd, 3rd embodiment. 第2の実施形態の制御装置1の概略的な機能ブロック図である。It is a schematic functional block diagram of the control apparatus 1 of 2nd Embodiment. 第2の実施形態における学習部83の機能ブロック図である。It is a functional block diagram of the learning part 83 in 2nd Embodiment. 強化学習の一形態を示すフローチャートである。It is a flowchart which shows one form of reinforcement learning. ニューロンを説明する図である。It is a figure explaining a neuron. ニューラルネットワークを説明する図である。It is a figure explaining a neural network. 第3の実施形態の制御装置1と機械学習装置100の概略的な機能ブロック図である。It is a schematic functional block diagram of the control apparatus 1 and the machine learning apparatus 100 of 3rd Embodiment. 制御装置1を組み込んだシステムの一形態を示す概略的な機能ブロック図である。1 is a schematic functional block diagram showing one form of a system in which a control device 1 is incorporated. 機械学習装置120(又は100)を組み込んだシステムの他の形態を示す概略的な機能ブロック図である。It is a schematic functional block diagram which shows the other form of the system incorporating the machine learning apparatus 120 (or 100). 工作機械の駆動機構の一例を示す図である。It is a figure which shows an example of the drive mechanism of a machine tool. 摩擦力と駆動機構の挙動との関係を示すグラフである。It is a graph which shows the relationship between a frictional force and the behavior of a drive mechanism. 摩擦モデルを利用した非線形摩擦力の補正方法の一例を示す図である。It is a figure which shows an example of the correction method of the nonlinear frictional force using a friction model. 摩擦モデルを利用した非線形摩擦力の補正方法の他の例を示す図である。It is a figure which shows the other example of the correction method of the nonlinear frictional force using a friction model. 摩擦モデルを利用した非線形摩擦力の補正方法の他の例を示す図である。It is a figure which shows the other example of the correction method of the nonlinear frictional force using a friction model.

図1は、本発明の第1の実施形態による制御装置1と、制御装置1によって制御される産業用機械の要部とを示す概略的なハードウェア構成図である。制御装置1は、工作機械をはじめとする機械を制御する制御装置である。制御装置1は、CPU11、ROM12、RAM13、不揮発性メモリ14、インタフェース18、バス20、軸制御回路30、サーボアンプ40を有する。制御装置1には、サーボモータ50、操作盤60が接続される。   FIG. 1 is a schematic hardware configuration diagram showing a control device 1 according to the first embodiment of the present invention and main parts of an industrial machine controlled by the control device 1. The control device 1 is a control device that controls machines such as machine tools. The control device 1 includes a CPU 11, ROM 12, RAM 13, nonvolatile memory 14, interface 18, bus 20, axis control circuit 30, and servo amplifier 40. A servo motor 50 and an operation panel 60 are connected to the control device 1.

CPU11は、制御装置1を全体的に制御するプロセッサである。CPU11は、ROM12に格納されたシステム・プログラムをバス20を介して読み出し、システム・プログラムに従って制御装置1全体を制御する。   The CPU 11 is a processor that controls the control device 1 as a whole. The CPU 11 reads out the system program stored in the ROM 12 via the bus 20 and controls the entire control device 1 according to the system program.

ROM12は、機械の各種制御等を実行するためのシステム・プログラム(後述する機械学習装置100とのやりとりを制御するための通信プログラムを含む)を予め格納している。   The ROM 12 stores in advance a system program (including a communication program for controlling communication with the machine learning device 100 described later) for executing various machine controls.

RAM13は、一時的な計算データや表示データ、後述する操作盤60を介してオペレータが入力したデータ等を一時的に格納する。   The RAM 13 temporarily stores temporary calculation data and display data, data input by an operator via an operation panel 60 described later, and the like.

不揮発性メモリ14は、例えば図示しないバッテリでバックアップされており、制御装置1の電源が遮断されても記憶状態を保持する。不揮発性メモリ14は、操作盤60から入力されるデータや、図示しないインタフェースを介して入力された機械の制御用のプログラムやデータ等を格納する。不揮発性メモリ14に記憶されたプログラムやデータは、実行時及び利用時にはRAM13に展開されても良い。   The non-volatile memory 14 is backed up by a battery (not shown), for example, and retains the storage state even when the control device 1 is powered off. The nonvolatile memory 14 stores data input from the operation panel 60, machine control programs and data input via an interface (not shown), and the like. The program and data stored in the nonvolatile memory 14 may be expanded in the RAM 13 at the time of execution and use.

軸制御回路30は、機械が備える動作軸を制御する。軸制御回路30は、CPU11が出力する軸の移動指令量を受けて、軸の移動指令をサーボアンプ40に出力する。このとき軸制御回路30は、後述のフィードバック制御を行うほか、CPU11がLugreモデル等に基づき出力する補正トルクにより非線形摩擦力の補正を行う。あるいは、軸制御回路30がLugreモデル等に基づき計算した補正トルクにより非線形摩擦力の補正を行っても良い。CPU11で補正を行うより、軸制御回路30の中で補正を行う方が一般に高速である。   The axis control circuit 30 controls an operation axis included in the machine. The axis control circuit 30 receives an axis movement command amount output from the CPU 11 and outputs an axis movement command to the servo amplifier 40. At this time, the axis control circuit 30 performs the feedback control described later, and corrects the nonlinear frictional force by the correction torque output from the CPU 11 based on the Lugre model or the like. Alternatively, the nonlinear frictional force may be corrected by the correction torque calculated by the axis control circuit 30 based on the Lugre model or the like. The correction in the axis control circuit 30 is generally faster than the correction by the CPU 11.

サーボアンプ40は、軸制御回路30が出力する軸の移動指令を受けて、サーボモータ50を駆動する。   The servo amplifier 40 drives the servo motor 50 in response to an axis movement command output from the axis control circuit 30.

サーボモータ50は、サーボアンプ40により駆動されて機械が備える軸を移動させる。サーボモータ50は、典型的には位置・速度検出器を内蔵する。あるいは内蔵せずに機械側に位置検出器を設ける場合もある。位置・速度検出器は位置・速度フィードバック信号を出力し、この信号が軸制御回路30にフィードバックされることで、位置・速度のフィードバック制御が行われる。   The servo motor 50 is driven by the servo amplifier 40 to move a shaft included in the machine. The servo motor 50 typically includes a position / speed detector. Alternatively, a position detector may be provided on the machine side without being incorporated. The position / velocity detector outputs a position / velocity feedback signal, and this signal is fed back to the axis control circuit 30 to perform position / velocity feedback control.

なお、図1では軸制御回路30、サーボアンプ40、サーボモータ50は1つずつしか示されていないが、実際には制御対象となる機械に備えられた軸の数だけ用意される。例えば、6軸を備えた機械を制御する場合、それぞれの軸に対応する軸制御回路30、サーボアンプ40、サーボモータ50が合計6セット用意される。   In FIG. 1, only one axis control circuit 30, one servo amplifier 40, and one servo motor 50 are shown, but in reality, as many axes as the number of axes provided in the machine to be controlled are prepared. For example, when a machine having six axes is controlled, a total of six sets of the axis control circuit 30, servo amplifier 40, and servo motor 50 corresponding to each axis are prepared.

操作盤60は、ハードウェアキー等を備えたデータ入力装置である。その中には教示操作盤と呼ばれる、ディスプレイやハードウェアキー等を備えた手動データ入力装置もある。教示操作盤は、インタフェース18を介してCPU11から受けた情報をディスプレイに表示する。操作盤60は、ハードウェアキー等から入力されたパルス、指令、データ等をインタフェース18を介してCPU11に渡す。   The operation panel 60 is a data input device provided with hardware keys and the like. Among them, there is a manual data input device equipped with a display, hardware keys, etc., called a teaching operation panel. The teaching operation panel displays information received from the CPU 11 via the interface 18 on the display. The operation panel 60 passes pulses, commands, data, and the like input from hardware keys and the like to the CPU 11 via the interface 18.

図2は、第1の実施形態における制御装置1の概略的な機能ブロック図である。図2に示した各機能ブロックは、図1に示した制御装置1が備えるCPU11が、システム・プログラムを実行し、制御装置1の各部の動作を制御することにより実現される。   FIG. 2 is a schematic functional block diagram of the control device 1 according to the first embodiment. Each functional block illustrated in FIG. 2 is realized by the CPU 11 included in the control device 1 illustrated in FIG. 1 executing a system program and controlling the operation of each unit of the control device 1.

本実施形態の制御装置1は、データ取得部70、及び補正トルク推定部80を備える。補正トルク推定部80は、最適化部81及び補正トルク算出部82を備える。また、不揮発性メモリ14上には、データ取得部70が取得したデータが記憶される取得データ記憶部71が設けられている。   The control device 1 of the present embodiment includes a data acquisition unit 70 and a correction torque estimation unit 80. The correction torque estimation unit 80 includes an optimization unit 81 and a correction torque calculation unit 82. In addition, an acquisition data storage unit 71 in which data acquired by the data acquisition unit 70 is stored is provided on the nonvolatile memory 14.

データ取得部70は、CPU11、サーボモータ50、及び機械等から各種データを取得する機能手段である。データ取得部70は、例えば、位置指令、位置フィードバック、速度指令、及び速度フィードバックを取得し、取得データ記憶部71に記憶する。   The data acquisition unit 70 is a functional unit that acquires various data from the CPU 11, the servo motor 50, the machine, and the like. The data acquisition unit 70 acquires, for example, a position command, a position feedback, a speed command, and a speed feedback and stores them in the acquired data storage unit 71.

補正トルク推定部80は、取得データ記憶部71に記憶されているデータに基づいて、摩擦モデル(典型的にはLugreモデル)における最適な係数(LugreモデルであればFc,Fs,v0,σ0,σ1,σ2)を推定する機能手段である。本実施の形態では、最適化部81が、例えば位置指令と位置フィードバックとの偏差を最小化する最適化問題を解くことで、摩擦モデルの係数を推定する。典型的には、係数の組み合わせを網羅的に探索するグリッドサーチ、係数の組み合わせをランダムに試行するランダムサーチ、確率分布と獲得関数に基づいて最適な係数の組み合わせを探索するベイズ最適化等の手法により、位置指令と位置フィードバックとの偏差が最小となる係数の組み合わせを推定することができる。すなわち、最適化部81は、係数の組み合わせを様々に変更しつつ機械を動作させ、位置指令と位置フィードバックとの偏差を評価するサイクルを繰り返すことで、偏差が最小となる係数の組み合わせを発見する。   Based on the data stored in the acquired data storage unit 71, the correction torque estimation unit 80 uses Fc, Fs, v 0, σ 0, Fc, Fs, v 0, σ 0, friction coefficient (typically the Lugre model). This is a functional means for estimating σ1, σ2). In the present embodiment, the optimization unit 81 estimates the coefficient of the friction model by solving an optimization problem that minimizes the deviation between the position command and the position feedback, for example. Typically, grid search that exhaustively searches for coefficient combinations, random search that tries coefficient combinations randomly, and Bayesian optimization that searches for optimal coefficient combinations based on probability distribution and acquisition function Thus, a combination of coefficients that minimizes the deviation between the position command and the position feedback can be estimated. In other words, the optimization unit 81 operates the machine while changing the combination of coefficients in various ways, and repeats a cycle for evaluating the deviation between the position command and the position feedback, thereby finding a combination of coefficients that minimizes the deviation. .

補正トルク算出部82は、最適化部81が推定した結果(摩擦モデルの係数の最適な組み合わせ)を使用し、摩擦モデルに基づく補正トルクを算出、出力する。制御装置1は、補正トルク算出部82が出力した補正トルクを電流指令に加算する。   The correction torque calculation unit 82 calculates and outputs a correction torque based on the friction model using the result estimated by the optimization unit 81 (an optimal combination of the coefficients of the friction model). The control device 1 adds the correction torque output from the correction torque calculation unit 82 to the current command.

本実施の形態によれば、最適化部81が最適化問題を解くことによって摩擦モデルの係数を同定するので、様々な機械や使用環境等に応じた最適な係数も容易に求めることができるようになる。   According to the present embodiment, since the optimization unit 81 identifies the coefficient of the friction model by solving the optimization problem, it is possible to easily determine the optimal coefficient according to various machines, usage environments, and the like. become.

図3は、第2及び第3の実施形態における、機械学習装置100を備えた制御装置1の概略的なハードウェアブロック図である。本実施形態の制御装置1は、機械学習装置100にかかる構成を備えている点を除いて第1の実施形態と同様の構成をしている。本実施形態の制御装置1が備えるROM12には、機械学習装置100とのやりとりを制御するための通信プログラム等を含むシステム・プログラムが予め書き込まれている。   FIG. 3 is a schematic hardware block diagram of the control device 1 including the machine learning device 100 in the second and third embodiments. The control device 1 of the present embodiment has the same configuration as that of the first embodiment except that the configuration of the machine learning device 100 is provided. In the ROM 12 provided in the control device 1 of the present embodiment, a system program including a communication program for controlling the exchange with the machine learning device 100 is written in advance.

インタフェース21は、制御装置1と機械学習装置100とを接続するためのインタフェースである。機械学習装置100は、プロセッサ101、ROM102、RAM103、不揮発性メモリ104を有する。   The interface 21 is an interface for connecting the control device 1 and the machine learning device 100. The machine learning apparatus 100 includes a processor 101, a ROM 102, a RAM 103, and a nonvolatile memory 104.

プロセッサ101は、機械学習装置100全体を統御する。ROM102は、システム・プログラム等を格納する。RAM103は、機械学習に係る各処理における一時的な記憶を行う。不揮発性メモリ104は、学習モデル等を格納する。   The processor 101 controls the entire machine learning device 100. The ROM 102 stores system programs and the like. The RAM 103 performs temporary storage in each process related to machine learning. The nonvolatile memory 104 stores a learning model and the like.

機械学習装置100は、制御装置1が取得可能な各種情報(位置指令、速度指令、位置フィードバック等)をインタフェース21を介して観測する。機械学習装置100は、サーボモータ50を精密制御するための摩擦モデル(典型的にはLugreモデル)の係数を機械学習により学習及び推定し、補正トルクをインタフェース21を介して制御装置1に出力する。   The machine learning device 100 observes various information (position command, speed command, position feedback, etc.) that can be acquired by the control device 1 via the interface 21. The machine learning device 100 learns and estimates a coefficient of a friction model (typically a Lugre model) for precise control of the servo motor 50 by machine learning, and outputs a correction torque to the control device 1 via the interface 21. .

図4は、第2の実施形態による制御装置1と機械学習装置100の概略的な機能ブロック図である。図4に示される制御装置1は、機械学習装置100が学習を行う場合に必要とされる構成を備えている(学習モード)。図4に示した各機能ブロックは、図3に示した制御装置1が備えるCPU11、及び機械学習装置100のプロセッサ101が、それぞれのシステム・プログラムを実行し、制御装置1及び機械学習装置100の各部の動作を制御することにより実現される。   FIG. 4 is a schematic functional block diagram of the control device 1 and the machine learning device 100 according to the second embodiment. The control device 1 shown in FIG. 4 has a configuration required when the machine learning device 100 performs learning (learning mode). In each functional block shown in FIG. 4, the CPU 11 included in the control device 1 shown in FIG. 3 and the processor 101 of the machine learning device 100 execute the respective system programs, and the control device 1 and the machine learning device 100 This is realized by controlling the operation of each part.

本実施形態の制御装置1は、データ取得部70、及び機械学習装置100上に構成された補正トルク推定部80を備える。補正トルク推定部80は、学習部83を備える。また、不揮発性メモリ14上には、データ取得部70が取得したデータが記憶される取得データ記憶部71が設けられており、機械学習装置100の不揮発性メモリ104上には、学習部83による機械学習により構築された学習モデルを記憶する学習モデル記憶部84が設けられている。   The control device 1 of this embodiment includes a data acquisition unit 70 and a correction torque estimation unit 80 configured on the machine learning device 100. The correction torque estimation unit 80 includes a learning unit 83. Further, an acquisition data storage unit 71 for storing data acquired by the data acquisition unit 70 is provided on the nonvolatile memory 14, and a learning unit 83 is provided on the nonvolatile memory 104 of the machine learning device 100. A learning model storage unit 84 that stores a learning model constructed by machine learning is provided.

本実施形態におけるデータ取得部70の動作は、第1の実施形態と同様である。データ取得部70は、例えば、位置指令、位置フィードバック、速度指令、及び速度フィードバックを取得し、取得データ記憶部71に記憶する。また、データ取得部70は、制御装置1が現在非線形摩擦の補正に使用しているLugreモデルの係数のセット(Fc,Fs,v0,σ0,σ1,σ2)を取得し、取得データ記憶部71に記憶する。   The operation of the data acquisition unit 70 in this embodiment is the same as that in the first embodiment. The data acquisition unit 70 acquires, for example, a position command, a position feedback, a speed command, and a speed feedback and stores them in the acquired data storage unit 71. Further, the data acquisition unit 70 acquires a set of coefficients (Fc, Fs, v0, σ0, σ1, σ2) of the Lugre model that the control device 1 is currently using for correcting nonlinear friction, and acquires the data storage unit 71. To remember.

前処理部90は、データ取得部70が取得したデータに基づいて、機械学習装置100による機械学習に用いられる学習データを作成する。前処理部90は、各データを機械学習装置100において扱われる統一的な形式へと変換(数値化、サンプリング等)した学習データを作成する。前処理部90は、機械学習装置100が教師なし学習をする場合においては、該学習における所定の形式の状態データSを学習データとして作成し、機械学習装置100が教師あり学習をする場合においては、該学習における所定の形式の状態データS及びラベルデータLの組を学習データとして作成し、機械学習装置100が強化学習をする場合においては、該学習における所定の形式の状態データS及び判定データDの組を学習データとして作成する。   The preprocessing unit 90 creates learning data used for machine learning by the machine learning device 100 based on the data acquired by the data acquisition unit 70. The pre-processing unit 90 creates learning data obtained by converting each data into a unified format handled by the machine learning device 100 (numericalization, sampling, etc.). When the machine learning device 100 performs unsupervised learning, the preprocessing unit 90 creates state data S in a predetermined format in the learning as learning data, and when the machine learning device 100 performs supervised learning. When a set of state data S and label data L in a predetermined format in the learning is created as learning data, and the machine learning device 100 performs reinforcement learning, the state data S and determination data in the predetermined format in the learning A set of D is created as learning data.

学習部83は、前処理部90が作成した学習データを用いた機械学習を行う。学習部83は、教師なし学習、教師あり学習、強化学習等の公知の機械学習の手法により学習モデルを生成し、生成した学習モデルを学習モデル記憶部84に記憶する。学習部83が行う教師なし学習の手法としては、例えばautoencoder法、k−means法等が、教師あり学習の手法としては、例えばmultilayer perceptron法、recurrent neural network法、Long Short−Term Memory法、convolutional neural network法等が、強化学習の手法としては、例えばQ学習等が挙げられる。   The learning unit 83 performs machine learning using the learning data created by the preprocessing unit 90. The learning unit 83 generates a learning model by a known machine learning method such as unsupervised learning, supervised learning, and reinforcement learning, and stores the generated learning model in the learning model storage unit 84. As an unsupervised learning method performed by the learning unit 83, for example, the autoencoder method, the k-means method, and the like are used. Examples of the reinforcement learning method such as the neural network method include Q learning.

図5は、学習手法の一例として強化学習を実行する学習部83の内部機能構成を示す。強化学習は、学習対象が存在する環境の現在状態(つまり入力)を観測するとともに現在状態で所定の行動(つまり出力)を実行し、その行動に対し何らかの報酬を与えるというサイクルを試行錯誤的に反復して、報酬の総計が最大化されるような方策(本実施形態ではLugreモデルの係数の設定)を最適解として学習する手法である。   FIG. 5 shows an internal functional configuration of the learning unit 83 that executes reinforcement learning as an example of the learning method. Reinforcement learning is a trial-and-error cycle that observes the current state (ie, input) of the environment where the learning target exists, executes a predetermined action (ie, output) in the current state, and gives some reward to that action. This is a method of learning, as an optimal solution, a policy (in this embodiment, setting of a coefficient of the Lugre model) such that the total amount of reward is maximized by repetition.

学習部83は、状態観測部831、判定データ取得部832、強化学習部833を有する。図5に示した各機能ブロックは、図3に示した制御装置1が備えるCPU11、及び機械学習装置100のプロセッサ101が、それぞれのシステム・プログラムを実行し、制御装置1及び機械学習装置100の各部の動作を制御することにより実現される。   The learning unit 83 includes a state observation unit 831, a determination data acquisition unit 832, and a reinforcement learning unit 833. In each functional block shown in FIG. 5, the CPU 11 included in the control device 1 shown in FIG. 3 and the processor 101 of the machine learning device 100 execute the respective system programs, and the control device 1 and the machine learning device 100 This is realized by controlling the operation of each part.

状態観測部831は、環境の現在状態を表す状態変数Sを観測する。状態変数Sは、例えば現在のLugureモデルの係数S1、現在の位置指令S2、現在の速度指令S3、前サイクルにおける位置フィードバックS4を含む。   The state observation unit 831 observes a state variable S that represents the current state of the environment. The state variable S includes, for example, a current Slag model coefficient S1, a current position command S2, a current speed command S3, and a position feedback S4 in the previous cycle.

状態観測部831は、Lugreモデルの係数S1として、制御装置1が現在非線形摩擦の補正に使用しているLugreモデルの係数のセット(Fc,Fs,v0,σ0,σ1,σ2)を取得する。   The state observation unit 831 acquires a set of coefficients (Fc, Fs, v0, σ0, σ1, σ2) of the Lugre model currently used by the control device 1 for correcting the nonlinear friction as the coefficient S1 of the Lugre model.

状態観測部831は、現在の位置指令S2及び速度指令S3として、制御装置1が現在出力している位置指令及び速度指令を取得する。   The state observing unit 831 acquires the position command and speed command currently output by the control device 1 as the current position command S2 and speed command S3.

状態観測部831は、位置フィードバックS4として、制御装置1が1サイクル前に取得した位置フィードバック(現在の位置指令及び速度指令を生成するためにフィードバック制御において使用されたもの)を取得する。   The state observing unit 831 acquires, as the position feedback S4, the position feedback (used in the feedback control for generating the current position command and speed command) acquired by the control device 1 one cycle before.

判定データ取得部832は、状態変数Sの下で機械の制御を行った場合における結果を示す指標である判定データDを取得する。判定データDは、位置フィードバックD1を含む。   The determination data acquisition unit 832 acquires determination data D that is an index indicating a result when the machine is controlled under the state variable S. The determination data D includes position feedback D1.

判定データ取得部832は、位置フィードバックD1として、Lugreモデルの係数S1、位置指令S2及び速度指令S3に基づいて機械を制御した結果として得られる位置フィードバックを取得する。   The determination data acquisition unit 832 acquires, as the position feedback D1, position feedback obtained as a result of controlling the machine based on the Lugre model coefficient S1, the position command S2, and the speed command S3.

強化学習部833は、状態変数Sと判定データDとを用いて、Lugreモデルの係数S1と、位置指令S2、速度指令S3及び位置フィードバックS4との相関関係を学習する。すなわち強化学習部833は、状態変数Sの構成要素S1,S2,S3,S4の相関性を示すモデル構造を生成する。強化学習部833は、報酬計算部834、価値関数更新部835を有する。   The reinforcement learning unit 833 uses the state variable S and the determination data D to learn the correlation between the Lugre model coefficient S1, the position command S2, the speed command S3, and the position feedback S4. That is, the reinforcement learning unit 833 generates a model structure indicating the correlation between the constituent elements S1, S2, S3, and S4 of the state variable S. The reinforcement learning unit 833 includes a reward calculation unit 834 and a value function update unit 835.

報酬計算部834は、状態変数Sに基づいてLugreモデルの係数が設定された場合における位置制御の結果(状態変数Sが取得された次の学習周期で用いられる判定データDに相当)に関連する報酬Rを求める。   The reward calculation unit 834 relates to a result of position control when the coefficient of the Lugre model is set based on the state variable S (corresponding to the determination data D used in the next learning cycle in which the state variable S is acquired). Reward R is calculated.

価値関数更新部835は、報酬Rを用いて、Lugreモデルの係数の価値を表す関数Qを更新する。価値関数更新部835が関数Qの更新を繰り返すことにより、強化学習部833は、Lugreモデルの係数S1と、位置指令S2、速度指令S3及び位置フィードバックS4と、の相関関係を学習する。   The value function updating unit 835 updates the function Q representing the value of the coefficient of the Lugre model using the reward R. When the value function update unit 835 repeats the update of the function Q, the reinforcement learning unit 833 learns the correlation between the coefficient S1 of the Lugre model and the position command S2, the speed command S3, and the position feedback S4.

強化学習部833が実行する強化学習のアルゴリズムの一例を説明する。この例によるアルゴリズムは、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 an algorithm for reinforcement learning executed by the reinforcement learning unit 833 will be described. The algorithm according to this example is known as Q-learning (Q-learning), and the behavior s in the state s is defined as an independent variable with the behavior s state s and the behavior a that the behavior subject can select in the state s. This is a method for learning a function Q (s, a) representing the value of an action when a is selected. The optimal solution is to select the action a that has the highest value function Q in the state s. The value function Q is iteratively updated by repeating trial and error by starting Q learning in a state where the correlation between the state s and the action a is unknown, and selecting various actions a in an arbitrary state s. Approach 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, the weight of the action a) r corresponding to the change is obtained, and a higher reward By inducing learning to select an action a that gives r, the value function Q can be brought close to the optimal 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 updating formula of the value function Q can be generally expressed as the following formula 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 maxQ means Q when the action a having the maximum value Q at time t + 1 (and considered at time t) is performed. α and γ are a learning coefficient and a discount rate, respectively, and are arbitrarily set such that 0 <α ≦ 1 and 0 <γ ≦ 1.

Figure 2019185742
Figure 2019185742

強化学習部833がQ学習を実行する場合、状態観測部831が観測した状態変数S及び判定データ取得部832が取得した判定データDは、更新式の状態sに該当し、現在状態すなわち位置指令S2、速度指令S3及び位置フィードバックS4に対し、Lugreモデルの係数S1をどのように決定するべきかという行動は、更新式の行動aに該当し、報酬計算部834が求める報酬Rは、更新式の報酬rに該当する。よって価値関数更新部835は、現在状態に対するLugreモデルの係数の価値を表す関数Qを、報酬Rを用いたQ学習により繰り返し更新する。   When the reinforcement learning unit 833 executes Q-learning, the state variable S observed by the state observation unit 831 and the determination data D acquired by the determination data acquisition unit 832 correspond to the update state s, and the current state, that is, the position command The behavior of how to determine the coefficient S1 of the Lugre model for S2, the speed command S3 and the position feedback S4 corresponds to the behavior a of the update formula, and the reward R calculated by the reward calculation unit 834 is an update formula Corresponds to the reward r. Therefore, the value function updating unit 835 repeatedly updates the function Q representing the value of the coefficient of the Lugre model with respect to the current state by Q learning using the reward R.

報酬計算部834は、例えば、決定したLugreモデルの係数S1に基づく機械制御を行い、位置制御の結果が「適」と判定される場合に、報酬Rを正(プラス)の値とすることができる。一方、位置制御の結果が「否」と判定される場合に、報酬Rを負(マイナス)の値とすることができる。正負の報酬Rの絶対値は、互いに同一であっても良いし異なっていても良い。   The reward calculation unit 834 performs, for example, machine control based on the determined Lugre model coefficient S1, and when the result of the position control is determined to be “suitable”, the reward R may be set to a positive (plus) value. it can. On the other hand, when the result of the position control is determined as “No”, the reward R can be set to a negative (minus) value. The absolute values of the positive and negative rewards R may be the same or different.

位置制御の結果が「適」である場合とは、例えば位置フィードバックD1と位置指令S2との差が所定のしきい値以内である場合等である。位置制御の結果が「否」である場合とは、例えば位置フィードバックD1と位置指令S2との差が所定のしきい値を超える場合等である。すなわち位置指令S2に対し、位置制御が所定の基準以上に正確に実現されていれば「適」となり、そうでなければ「否」となる。   The case where the result of the position control is “appropriate” is, for example, a case where the difference between the position feedback D1 and the position command S2 is within a predetermined threshold. The case where the result of the position control is “No” is, for example, a case where the difference between the position feedback D1 and the position command S2 exceeds a predetermined threshold. In other words, the position command S2 is “appropriate” if the position control is accurately realized more than a predetermined standard, and “no” otherwise.

位置制御の結果を、「適」及び「否」の二通りだけでなく複数段階に設定することができる。例えば、報酬計算部834は、位置フィードバックD1と位置指令S2との差が小さくなるほど報酬が大きくなるよう、段階的な報酬を設定することができる。   The result of the position control can be set not only in two ways, “appropriate” and “not”, but in a plurality of stages. For example, the reward calculation unit 834 can set a stepwise reward so that the reward increases as the difference between the position feedback D1 and the position command S2 decreases.

価値関数更新部835は、状態変数Sと判定データDと報酬Rとを、関数Qで表される行動価値(例えば数値)と関連付けて整理した行動価値テーブルを持つことができる。この場合、価値関数更新部835が関数Qを更新するという行為は、価値関数更新部835が行動価値テーブルを更新するという行為と同義である。Q学習の開始時には、Lugreモデルの係数S1と、位置指令S2、速度指令S3及び位置フィードバックS4との相関関係は未知であるから、行動価値テーブルにおいては、種々の状態変数Sと判定データDと報酬Rとが、無作為に定めた行動価値の値(関数Q)と関連付けた形態で用意されている。報酬計算部834は、判定データDが分かればこれ対応する報酬Rを直ちに算出でき、算出した値Rが行動価値テーブルに書き込まれる。   The value function updating unit 835 can have an action value table in which the state variable S, the determination data D, and the reward R are associated with the action value (for example, a numerical value) represented by the function Q. In this case, the act of the value function updating unit 835 updating the function Q is synonymous with the act of the value function updating unit 835 updating the behavior value table. At the start of Q-learning, the correlation between the coefficient S1 of the Lugre model and the position command S2, the speed command S3, and the position feedback S4 is unknown, so in the action value table, various state variables S and determination data D A reward R is prepared in a form associated with a value (function Q) determined at random. The reward calculator 834 can immediately calculate the reward R corresponding to the determination data D, and the calculated value R is written in the behavior value table.

位置制御の結果に応じた報酬Rを用いてQ学習を進めると、より高い報酬Rが得られる行動を選択する方向へ学習が誘導され、選択した行動を現在状態で実行した結果として変化する環境の状態(つまり状態変数S及び判定データD)に応じて、現在状態で行う行動についての行動価値の値(関数Q)が書き換えられて行動価値テーブルが更新される。この更新を繰り返すことにより、行動価値テーブルに表示される行動価値の値(関数Q)は、適正な行動ほど大きな値となるように書き換えられる。このようにして、未知であった環境の現在状態すなわち位置指令S2、速度指令S3及び位置フィードバックS4と、それに対する行動すなわち設定されるLugreモデルの係数S1と、の相関性が徐々に明らかになる。つまり行動価値テーブルの更新により、Lugreモデルの係数S1と、位置指令S2、速度指令S3及び位置フィードバックS4と、の相関関係が徐々に最適解に近づけられる。   When Q learning is advanced using reward R according to the result of position control, learning is guided in a direction to select an action that can obtain higher reward R, and the environment changes as a result of executing the selected action in the current state In accordance with the state (that is, the state variable S and the determination data D), the action value value (function Q) for the action performed in the current state is rewritten, and the action value table is updated. By repeating this update, the value of the action value (function Q) displayed in the action value table is rewritten so that the more appropriate the action, the larger the value. In this way, the correlation between the current state of the unknown environment, that is, the position command S2, the speed command S3, and the position feedback S4, and the action corresponding thereto, that is, the coefficient S1 of the set Lugre model is gradually clarified. . That is, by updating the behavior value table, the correlation between the coefficient S1 of the Lugre model and the position command S2, the speed command S3, and the position feedback S4 is gradually brought closer to the optimal solution.

図6を参照して、強化学習部833が実行するQ学習のフロー(つまり機械学習方法の一形態)をさらに説明する。
ステップSA01:価値関数更新部835は、その時点での行動価値テーブルを参照しながら、状態観測部831が観測した状態変数Sが示す現在状態で行う行動として、Lugreモデルの係数S1を無作為に選択する。
ステップSA02:価値関数更新部835は、状態観測部831が観測している現在状態の状態変数Sを取り込む。
ステップSA03:価値関数更新部835は、判定データ取得部832が取得している現在状態の判定データDを取り込む。
ステップSA04:価値関数更新部835は、判定データDに基づき、Lugreモデルの係数S1が適当であったか否かを判断する。適当であった場合、ステップSA05に遷移する。適当でなかった場合、ステップSA07に遷移する。
ステップSA05:価値関数更新部835は、報酬計算部834が求めた正の報酬Rを関数Qの更新式に適用する。
ステップSA06:価値関数更新部835は、現在状態における状態変数S及び判定データDと報酬Rと行動価値の値(更新後の関数Q)とを用いて行動価値テーブルを更新する。
ステップSA07:価値関数更新部835は、報酬計算部834が求めた負の報酬Rを関数Qの更新式に適用する。
With reference to FIG. 6, the Q learning flow (that is, one form of the machine learning method) executed by the reinforcement learning unit 833 will be further described.
Step SA01: The value function updating unit 835 randomly selects the coefficient S1 of the Lugre model as an action to be performed in the current state indicated by the state variable S observed by the state observation unit 831 while referring to the action value table at that time. select.
Step SA02: The value function updating unit 835 takes in the state variable S of the current state that is being observed by the state observation unit 831.
Step SA03: The value function updating unit 835 takes in the determination data D in the current state acquired by the determination data acquisition unit 832.
Step SA04: The value function updating unit 835 determines whether the coefficient S1 of the Lugre model is appropriate based on the determination data D. If appropriate, the process proceeds to step SA05. If not, the process proceeds to step SA07.
Step SA05: The value function updating unit 835 applies the positive reward R obtained by the reward calculating unit 834 to the function Q update formula.
Step SA06: The value function updating unit 835 updates the action value table using the state variable S, the determination data D, the reward R, and the action value (updated function Q) in the current state.
Step SA07: The value function update unit 835 applies the negative reward R obtained by the reward calculation unit 834 to the update formula of the function Q.

強化学習部833は、ステップSA01乃至SA07を繰り返すことで行動価値テーブルを反復して更新し、学習を進行させる。なお、ステップSA04からステップSA07までの報酬Rを求める処理及び価値関数の更新処理は、判定データDに含まれるそれぞれのデータについて実行される。   Reinforcement learning unit 833 repeats steps SA01 to SA07 to repeatedly update the behavior value table, and advances learning. It should be noted that the processing for obtaining the reward R and the value function updating processing from step SA04 to step SA07 are executed for each data included in the determination data D.

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

図7Aに示すニューロンは、複数の入力x(ここでは一例として、入力x1〜入力x3)に対する結果yを出力するものである。各入力x1〜x3には、この入力xに対応する重みw(w1〜w3)が掛けられる。これにより、ニューロンは、次の数3式により表現される出力yを出力する。なお、数3式において、入力x、出力y及び重みwは、すべてベクトルである。また、θはバイアスであり、fkは活性化関数である。 The neuron shown in FIG. 7A outputs a result y for a plurality of inputs x (here, as an example, inputs x 1 to 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 an output y expressed by the following equation (3). In 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 2019185742
Figure 2019185742

図7Bに示す三層のニューラルネットワークは、左側から複数の入力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. 7B, a plurality of inputs x (in this example, inputs x1 to x3) are input from the left side, and a result y (in this case, results y1 to y3 as an example) are input from the right side. Is output. In the illustrated example, each of the inputs x1, x2, and x3 is multiplied by a corresponding weight (generically expressed as W1), and each of the inputs x1, x2, and x3 is assigned to three neurons N11, N12, and N13. Have been entered.

図7Bでは、ニューロンN11〜N13の各々の出力を、総称してz1で表す。z1は、入カベクトルの特徴量を抽出した特徴ベクトルと見なすことができる。図示の例では、特徴ベクトルz1のそれぞれに対応の重み(総称してW2で表す)が乗算されて、個々の特徴ベクトルz1がいずれも2つのニューロンN21、N22に入力されている。特徴ベクトルz1は、重みW1と重みW2との間の特徴を表す。   In FIG. 7B, the outputs of the 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 feature vector z1 is multiplied by a corresponding weight (generically represented by W2), and each feature vector z1 is input to two neurons N21 and N22. The feature vector z1 represents a feature between the weight W1 and the weight W2.

図7Bでは、ニューロンN21〜N22の各々の出力を、総称してz2で表す。z2は、特徴ベクトルz1の特徴量を抽出した特徴ベクトルと見なすことができる。図示の例では、特徴ベクトルz2のそれぞれに対応の重み(総称してW3で表す)が乗算されて、個々の特徴ベクトルz2がいずれも3つのニューロンN31、N32、N33に入力されている。特徴ベクトルz2は、重みW2と重みW3との間の特徴を表す。最後にニューロンN31〜N33は、それぞれ結果y1〜y3を出力する。
なお、三層以上の層を為すニューラルネットワークを用いた、いわゆるディープラーニングの手法を用いることも可能である。
In FIG. 7B, the outputs of the 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 feature vector z2 is multiplied by a corresponding weight (generically represented by W3), and each feature vector z2 is input to three neurons N31, N32, and N33. The feature vector z2 represents a feature between the weight W2 and the weight 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 having three or more layers.

このような学習サイクルを繰り返すことにより、強化学習部833は、Lugreモデルの係数S1と、位置指令S2、速度指令S3及び位置フィードバックS4との相関関係を暗示する特徴を自動的に識別することができるようになる。学習アルゴリズムの開始時には、Lugreモデルの係数S1と、位置指令S2、速度指令S3及び位置フィードバックS4との相関関係は実質的に未知であるが、強化学習部833は学習を進めるに従い徐々に特徴を識別して相関性を解釈する。Lugreモデルの係数S1と、位置指令S2、速度指令S3及び位置フィードバックS4との相関関係がある程度信頼できる水準まで解釈されると、強化学習部833が反復出力する学習結果は、現在状態すなわち位置指令S2、速度指令S3及び位置フィードバックS4に対して、どのようなLugreモデルの係数S1を設定すべきかという行動の選択(意思決定)を行うために使用できるものとなる。このようにして強化学習部833は、現在状態に対応する行動の最適解を出力できる学習モデルを生成する。   By repeating such a learning cycle, the reinforcement learning unit 833 can automatically identify a feature that implies a correlation between the coefficient S1 of the Lugre model and the position command S2, the speed command S3, and the position feedback S4. become able to. At the start of the learning algorithm, the correlation between the coefficient S1 of the Lugre model and the position command S2, the speed command S3, and the position feedback S4 is substantially unknown, but the reinforcement learning unit 833 gradually increases the characteristics as the learning proceeds. Identify and interpret correlations. When the correlation between the coefficient S1 of the Lugre model and the position command S2, the speed command S3, and the position feedback S4 is interpreted to a certain level of reliability, the learning result that the reinforcement learning unit 833 repeatedly outputs is the current state, that is, the position command. It can be used to select an action (decision decision) as to what kind of Lugre model coefficient S1 should be set for S2, speed command S3 and position feedback S4. In this way, the reinforcement learning unit 833 generates a learning model that can output an optimal solution of behavior corresponding to the current state.

図8は、第3の実施形態による制御装置1と機械学習装置100の概略的な機能ブロック図である。本実施形態の制御装置1は、機械学習装置100が推定を行う場合に必要とされる構成を備えている(推定モード)。図8に示した各機能ブロックは、図3に示した制御装置1が備えるCPU11、及び機械学習装置100のプロセッサ101が、それぞれのシステム・プログラムを実行し、制御装置1及び機械学習装置100の各部の動作を制御することにより実現される。   FIG. 8 is a schematic functional block diagram of the control device 1 and the machine learning device 100 according to the third embodiment. The control device 1 of the present embodiment has a configuration required when the machine learning device 100 performs estimation (estimation mode). In each functional block shown in FIG. 8, the CPU 11 included in the control device 1 shown in FIG. 3 and the processor 101 of the machine learning device 100 execute the respective system programs, and the control device 1 and the machine learning device 100 This is realized by controlling the operation of each part.

本実施形態の制御装置1は、第2の実施形態と同様に、データ取得部70、及び機械学習装置100上に構成された補正トルク推定部80を備える。補正トルク推定部80は、推定部85、及び補正トルク算出部82を備える。また、不揮発性メモリ14上には、データ取得部70が取得したデータが記憶される取得データ記憶部71が設けられており、機械学習装置100の不揮発性メモリ104上には、学習部83による機械学習により構築された学習モデルを記憶する学習モデル記憶部84が設けられている。   Similar to the second embodiment, the control device 1 of the present embodiment includes a data acquisition unit 70 and a correction torque estimation unit 80 configured on the machine learning device 100. The correction torque estimation unit 80 includes an estimation unit 85 and a correction torque calculation unit 82. Further, an acquisition data storage unit 71 for storing data acquired by the data acquisition unit 70 is provided on the nonvolatile memory 14, and a learning unit 83 is provided on the nonvolatile memory 104 of the machine learning device 100. A learning model storage unit 84 that stores a learning model constructed by machine learning is provided.

本実施形態によるデータ取得部70、及び前処理部90の動作は、第2の実施形態と同様である。データ取得部70が取得したデータは、前処理部90により、機械学習装置100において扱われる統一的な形式へと変換(数値化、サンプリング等)されて、状態データSが生成される。前処理部90が作成した状態データSは、機械学習装置100による推定に用いられる。   The operations of the data acquisition unit 70 and the preprocessing unit 90 according to the present embodiment are the same as those of the second embodiment. The data acquired by the data acquisition unit 70 is converted (numerized, sampled, etc.) into a unified format handled by the machine learning device 100 by the preprocessing unit 90, and the state data S is generated. The state data S created by the preprocessing unit 90 is used for estimation by the machine learning device 100.

推定部85は、前処理部90が作成した状態データSに基づいて、学習モデル記憶部84に記憶された学習モデルを用い、Lugreモデルの係数S1の推定を行う。本実施形態の推定部85は、学習部83により生成された(パラメータが決定された)学習モデルに対して、前処理部90から入力された状態データSを入力することで、Lugreモデルの係数S1を推定して出力する。   Based on the state data S created by the preprocessing unit 90, the estimation unit 85 uses the learning model stored in the learning model storage unit 84 to estimate the coefficient S1 of the Lugre model. The estimation unit 85 of the present embodiment inputs the state data S input from the preprocessing unit 90 to the learning model generated by the learning unit 83 (parameters are determined), so that the coefficient of the Lugre model S1 is estimated and output.

補正トルク算出部82は、推定部85が推定した結果(摩擦モデルの係数の組み合わせS1)を使用し、摩擦モデルに基づく補正トルクを算出、出力する。制御装置1は、補正トルク算出部82が出力した補正トルクを電流指令に加算する。   The correction torque calculation unit 82 calculates and outputs a correction torque based on the friction model using the result estimated by the estimation unit 85 (the combination S1 of friction model coefficients). The control device 1 adds the correction torque output from the correction torque calculation unit 82 to the current command.

実施の形態2及び3によれば、機械学習装置100が、Lugreモデルの係数S1と、位置指令S2、速度指令S3及び位置フィードバックS4との相関関係を示す学習モデルを生成し、当該学習モデルを利用することにより摩擦モデルの係数を推定するので、様々な機械や使用環境等に応じた最適な係数も容易に求めることができるようになる。   According to the second and third embodiments, the machine learning device 100 generates a learning model indicating the correlation between the coefficient S1 of the Lugre model and the position command S2, the speed command S3, and the position feedback S4, and the learning model is generated. Since the coefficient of the friction model is estimated by use, it is possible to easily obtain the optimum coefficient corresponding to various machines, usage environments, and the like.

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

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

また、機械学習装置100の変形例として、学習部83は、同種の複数の機械のそれぞれについて得られた状態変数S及び判定データDを用いて、それら機械に共通する適切なLugreモデルの係数を学習することができる。この構成によれば、一定時間で得られる状態変数Sと判定データDとを含むデータ集合の量を増加させ、より多様なデータ集合を入力できるので、学習の速度や信頼性を向上させることができる。また、こうして得られた学習モデルを初期値として使用し、機械ごとに追加学習を行なうことで、Lugreモデルを個々の機械にさらに最適化することもできる。   As a modification of the machine learning device 100, the learning unit 83 uses the state variable S and the determination data D obtained for each of a plurality of machines of the same type, and calculates an appropriate Lugre model coefficient common to those machines. Can learn. According to this configuration, the amount of the data set including the state variable S and the determination data D obtained in a certain time can be increased and more diverse data sets can be input, so that the learning speed and reliability can be improved. it can. Further, the Lugre model can be further optimized for each machine by using the learning model thus obtained as an initial value and performing additional learning for each machine.

図9は、制御装置1に複数の機械を加えたシステム170を示す。システム170は、複数の機械160及び機械160’を有する。全ての機械160と機械160’は、有線又は無線のネットワーク172により互いに接続される。   FIG. 9 shows a system 170 in which a plurality of machines are added to the control device 1. The system 170 includes a plurality of machines 160 and a machine 160 '. All machines 160 and 160 'are connected to each other by a wired or wireless network 172.

機械160及び機械160’は同種の機構を有する。一方、機械160は制御装置1を備えるが、機械160’は制御装置1を備えない。   Machine 160 and machine 160 'have the same type of mechanism. On the other hand, the machine 160 includes the control device 1, but the machine 160 ′ does not include the control device 1.

制御装置1を備えるほうの機械160では、推定部85が、学習部83の学習結果である学習モデルを用いて、位置指令S2、速度指令S3及び位置フィードバックS4に対応するLugreモデルの係数S1を推定することができる。また、少なくとも1つの機械160の制御装置1が、他の複数の機械160及び機械160’のそれぞれについて得られた状態変数S及び判定データDを利用し、全ての機械160及び機械160’に共通する位置制御を学習し、その学習結果を全ての機械160及び機械160’が共有するように構成できる。システム170によれば、より多様なデータ集合(状態変数S及び判定データDを含む)を入力として、位置制御の学習の速度や信頼性を向上させることができる。   In the machine 160 including the control device 1, the estimation unit 85 uses the learning model that is the learning result of the learning unit 83 to calculate the coefficient S1 of the Lugre model corresponding to the position command S2, the speed command S3, and the position feedback S4. Can be estimated. Further, the control device 1 of at least one machine 160 uses the state variable S and the determination data D obtained for each of the other machines 160 and 160 ′, and is common to all the machines 160 and 160 ′. The position control to be learned is learned, and the learning result can be shared by all the machines 160 and 160 ′. According to the system 170, it is possible to improve the speed and reliability of position control learning using a more diverse data set (including the state variable S and the determination data D) as an input.

図10は、複数の機械160’を備えたシステム170’を示す。システム170’は、同一の機械構成を有する複数の機械160’と、制御装置1から独立した機械学習装置120(又は制御装置1に含まれる機械学習装置100)と、を有する。複数の機械160’と機械学習装置120(又は機械学習装置100)とは、有線又は無線のネットワーク172により互いに接続される。   FIG. 10 shows a system 170 'comprising a plurality of machines 160'. The system 170 ′ includes a plurality of machines 160 ′ having the same machine configuration, and a machine learning device 120 independent of the control device 1 (or the machine learning device 100 included in the control device 1). The plurality of machines 160 ′ and the machine learning device 120 (or the machine learning device 100) are connected to each other by a wired or wireless network 172.

機械学習装置120(又は機械学習装置100)は、複数の機械160’のそれぞれについて得られた状態変数S及び判定データDに基づき、全ての機械160’に共通するLugreモデルの係数S1を学習する。機械学習装置120(又は機械学習装置100)は、その学習結果を用いて、位置指令S2、速度指令S3及び位置フィードバックS4に対応するLugreモデルの係数S1を推定することができる。   The machine learning device 120 (or the machine learning device 100) learns the Lugre model coefficient S1 common to all the machines 160 ′ based on the state variable S and the determination data D obtained for each of the plurality of machines 160 ′. . The machine learning device 120 (or machine learning device 100) can estimate the coefficient S1 of the Lugre model corresponding to the position command S2, the speed command S3, and the position feedback S4 using the learning result.

この構成によれば、複数の機械160’のそれぞれが存在する場所や時期に関わらず、必要なときに必要な数の機械160’を機械学習装置120(又は機械学習装置100)に接続することができる。   According to this configuration, the necessary number of machines 160 ′ are connected to the machine learning device 120 (or the machine learning device 100) when necessary regardless of the location and timing of each of the plurality of machines 160 ′. Can do.

上記した実施形態では、制御装置1や機械学習装置100(又は機械学習装置120)はローカルに設置された1つの情報処理装置であるものと想定しているが、本発明はこれに限定されるものではなく、例えば制御装置1や機械学習装置100(又は機械学習装置120)は、クラウドコンピューティング、フォグコンピューティング、エッジコンピューティング等と称される情報処理環境に実装されても良い。   In the above-described embodiment, it is assumed that the control device 1 and the machine learning device 100 (or the machine learning device 120) are one information processing device installed locally, but the present invention is limited to this. For example, the control device 1 or the machine learning device 100 (or the machine learning device 120) may be implemented in an information processing environment called cloud computing, fog computing, edge computing, or the like.

また、上述の実施の形態では摩擦モデルとして代表的なLugreモデルにおいて係数を決定する手法を示したが、本発明はこれに限定されるものでなく、Seven parameter model, State variable model, Karnopp model,LuGre model, Modified Dahl model, M2 model等の種々の摩擦モデルの係数の決定に適用することが可能である。   In the above-described embodiment, a method for determining a coefficient in a typical Lugre model as a friction model has been described. However, the present invention is not limited to this, and the Seven parameter model, the State variable model, the Karnopp model, The present invention can be applied to determination of coefficients of various friction models such as LuGre model, Modified Dahl model, and M2 model.

また、上述の実施の形態では、機械として主に加工機械を例示したが、本発明はこれに限定されるものでなく、摩擦が問題になるような駆動機構、典型的には位置決め機構を有する種々の機械(例えば医療ロボット、災害ロボット、建設ロボット等)に適用可能である。   In the above-described embodiment, the processing machine is mainly exemplified as the machine. However, the present invention is not limited to this, and has a drive mechanism, typically a positioning mechanism, in which friction becomes a problem. The present invention can be applied to various machines (for example, medical robots, disaster robots, construction robots, etc.).

また、上述の実施の形態は、図13に示す制御系に基づいて摩擦モデルの係数を求めるものであったが、本発明はこれに限定されず、これを変形した種々の制御系にも適用可能である。例えば図14に示すように、速度指令に代えて、位置指令の微分であるs=速度指令相当が摩擦モデルに入力される制御系を用いても良い。この場合、機械学習装置100の状態観測部831は、速度指令に代えて、速度指令相当のsを観測する。この構成によれば、位置指令だけで補正トルクを計算できるので、制御装置1側だけで補正トルクの計算を完結できるという利点がある。   In the above-described embodiment, the coefficient of the friction model is obtained based on the control system shown in FIG. 13, but the present invention is not limited to this, and can be applied to various control systems obtained by modifying the coefficient. Is possible. For example, as shown in FIG. 14, instead of the speed command, a control system in which s = speed command equivalent that is a derivative of the position command is input to the friction model may be used. In this case, the state observation unit 831 of the machine learning device 100 observes s corresponding to the speed command instead of the speed command. According to this configuration, since the correction torque can be calculated only by the position command, there is an advantage that the calculation of the correction torque can be completed only by the control device 1 side.

又は、図15に示すように、位置指令及び速度指令の代わりに、位置フィードバック及び速度フィードバックを摩擦モデルに入力する制御系を用いても良い。この場合、機械学習装置100の状態観測部831は、位置指令でなく位置フィードバックを、速度指令でなく速度フィードバックを観測する。この構成は軸制御回路30側で実現しやすい。高速な処理が可能であり、フィードバックを使用するため実摩擦力を推定しやすい。   Or as shown in FIG. 15, you may use the control system which inputs a position feedback and a speed feedback into a friction model instead of a position command and a speed command. In this case, the state observation unit 831 of the machine learning device 100 observes position feedback instead of position command and speed feedback instead of speed command. This configuration is easy to realize on the axis control circuit 30 side. High-speed processing is possible, and since the feedback is used, the actual friction force is easy to estimate.

1 制御装置
11 CPU
12 ROM
13 RAM
14 不揮発性メモリ
18,19,21,22 インタフェース
20 バス
30 軸制御回路
40 サーボアンプ
50 サーボモータ
60 操作盤
70 データ取得部
71 取得データ記憶部
80 補正トルク推定部
81 最適化部
82 補正トルク算出部
83 学習部
831 状態観測部
832 判定データ取得部
833 強化学習部
834 報酬計算部
835 価値関数更新部
84 学習モデル記憶部
85 推定部
100 機械学習装置(制御装置1に含まれる)
101 プロセッサ
102 ROM
103 RAM
104 不揮発性メモリ
120 機械学習装置(制御装置1から独立)
160,160’ 機械
170,170’ システム
172 ネットワーク
1 control device 11 CPU
12 ROM
13 RAM
DESCRIPTION OF SYMBOLS 14 Nonvolatile memory 18, 19, 21, 22 Interface 20 Bus 30 Axis control circuit 40 Servo amplifier 50 Servo motor 60 Operation panel 70 Data acquisition part 71 Acquisition data storage part 80 Correction torque estimation part 81 Optimization part 82 Correction torque calculation part 83 learning unit 831 state observation unit 832 determination data acquisition unit 833 reinforcement learning unit 834 reward calculation unit 835 value function update unit 84 learning model storage unit 85 estimation unit 100 machine learning device (included in the control device 1)
101 processor 102 ROM
103 RAM
104 Non-volatile memory 120 Machine learning device (independent of control device 1)
160, 160 'machine 170, 170' system 172 network

Claims (8)

機械の1以上の軸について、摩擦を考慮した位置制御を行う制御装置であって、
少なくとも位置指令及び位置フィードバックを取得するデータ取得部と、
前記位置指令と前記位置フィードバックの差分である位置偏差に基づいて、前記位置制御を行う際の摩擦モデルの係数を推定する補正トルク推定部と、を備える
制御装置。
A control device that performs position control in consideration of friction with respect to one or more shafts of a machine,
A data acquisition unit for acquiring at least a position command and position feedback;
And a correction torque estimating unit that estimates a coefficient of a friction model when performing the position control based on a position deviation that is a difference between the position command and the position feedback.
前記補正トルク推定部は、前記位置偏差を最小化する最適化問題を解くことにより摩擦モデルの係数を推定する最適化部を有する
請求項1記載の制御装置。
The control device according to claim 1, wherein the correction torque estimation unit includes an optimization unit that estimates a coefficient of a friction model by solving an optimization problem that minimizes the position deviation.
前記補正トルク推定部は、前記摩擦モデルの係数、位置指令及び位置フィードバック、並びに、速度指令又は速度フィードバックを含む状態変数を用いた機械学習を行い、学習モデルを生成する学習部を有する
請求項1記載の制御装置。
The correction torque estimation unit includes a learning unit that performs machine learning using a state variable including a coefficient of the friction model, a position command and position feedback, and a speed command or speed feedback to generate a learning model. The control device described.
前記学習部は、前記位置制御の結果を示す判定データに基づいて強化学習を行う
請求項3記載の制御装置。
The control device according to claim 3, wherein the learning unit performs reinforcement learning based on determination data indicating a result of the position control.
前記補正トルク推定部は、
前記摩擦モデルの係数、位置指令及び位置フィードバック、並びに、速度指令又は速度フィードバックを用いて機械学習した学習モデルを記憶する学習モデル記憶部と、
位置指令及び位置フィードバック、並びに、速度指令又は速度フィードバックに基づき、前記学習モデルを用いて、前記摩擦モデルの係数を推定する推定部を有する
請求項1記載の制御装置。
The correction torque estimating unit
A coefficient of the friction model, a position command and position feedback, and a learning model storage unit that stores a learning model that has been machine-learned using a speed command or speed feedback;
The control device according to claim 1, further comprising: an estimation unit configured to estimate a coefficient of the friction model using the learning model based on a position command and position feedback, and a speed command or speed feedback.
前記データ取得部は、複数の前記機械からデータを取得する
請求項1記載の制御装置。
The control device according to claim 1, wherein the data acquisition unit acquires data from a plurality of the machines.
前記摩擦モデルは、Lugre Model,Seven parameter model, State variable model, Karnopp model,LuGre model, Modified Dahl model, M2 modelのいずれかであることを特徴とする
請求項1記載の制御装置。
The friction model is a Lugre Model, a Seven parameter model, a State variable model, a Karnopp model, a LuGre model, or a Modified Dahl model, or an M2 model.
機械の1以上の軸について、摩擦を考慮した位置制御を行う制御方法であって、
少なくとも位置指令及び位置フィードバックを取得するデータ取得ステップと、
前記位置指令と前記位置フィードバックの差分である位置偏差に基づいて、前記位置制御を行う際の摩擦モデルの係数を推定する補正トルク推定ステップと、を備える
制御方法。
A control method for performing position control in consideration of friction with respect to one or more shafts of a machine,
A data acquisition step for acquiring at least a position command and position feedback;
And a correction torque estimation step of estimating a coefficient of a friction model when performing the position control based on a position deviation that is a difference between the position command and the position feedback.
JP2019015507A 2018-04-17 2019-01-31 Control device and control method Active JP6841852B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE102019002644.6A DE102019002644A1 (en) 2018-04-17 2019-04-10 Control and control procedures
US16/382,962 US20190317472A1 (en) 2018-04-17 2019-04-12 Controller and control method
CN201910308493.8A CN110389556A (en) 2018-04-17 2019-04-17 Control device and control method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018079450 2018-04-17
JP2018079450 2018-04-17

Publications (2)

Publication Number Publication Date
JP2019185742A true JP2019185742A (en) 2019-10-24
JP6841852B2 JP6841852B2 (en) 2021-03-10

Family

ID=68341001

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019015507A Active JP6841852B2 (en) 2018-04-17 2019-01-31 Control device and control method

Country Status (1)

Country Link
JP (1) JP6841852B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111415411A (en) * 2020-03-02 2020-07-14 重庆市勘测院 Three-dimensional model space coordinate correcting and encrypting method
JP2021139756A (en) * 2020-03-05 2021-09-16 トヨタ自動車株式会社 Torque estimation system, method for estimating torque, and program
CN114024477A (en) * 2021-11-29 2022-02-08 合肥工业大学 Low-speed variable load rotating speed control method for permanent magnet synchronous motor
JP2022046402A (en) * 2020-09-10 2022-03-23 株式会社東芝 Task execution agent system and method
JP7505695B2 (en) 2020-12-07 2024-06-25 三菱電機株式会社 Motor Control Device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016203614A1 (en) * 2015-06-18 2016-12-22 三菱電機株式会社 Control-parameter adjusting device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016203614A1 (en) * 2015-06-18 2016-12-22 三菱電機株式会社 Control-parameter adjusting device

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111415411A (en) * 2020-03-02 2020-07-14 重庆市勘测院 Three-dimensional model space coordinate correcting and encrypting method
JP2021139756A (en) * 2020-03-05 2021-09-16 トヨタ自動車株式会社 Torque estimation system, method for estimating torque, and program
JP7283421B2 (en) 2020-03-05 2023-05-30 トヨタ自動車株式会社 Torque estimation system, torque estimation method, and program
JP2022046402A (en) * 2020-09-10 2022-03-23 株式会社東芝 Task execution agent system and method
JP7225292B2 (en) 2020-09-10 2023-02-20 株式会社東芝 Task execution agent system and method
JP7505695B2 (en) 2020-12-07 2024-06-25 三菱電機株式会社 Motor Control Device
CN114024477A (en) * 2021-11-29 2022-02-08 合肥工业大学 Low-speed variable load rotating speed control method for permanent magnet synchronous motor
CN114024477B (en) * 2021-11-29 2023-04-07 合肥工业大学 Low-speed variable load rotating speed control method for permanent magnet synchronous motor

Also Published As

Publication number Publication date
JP6841852B2 (en) 2021-03-10

Similar Documents

Publication Publication Date Title
JP6542839B2 (en) Control device and machine learning device
JP6680756B2 (en) Control device and machine learning device
JP6841852B2 (en) Control device and control method
JP6219897B2 (en) Machine tools that generate optimal acceleration / deceleration
US10331104B2 (en) Machine tool, simulation apparatus, and machine learning device
JP6193961B2 (en) Machine learning device and method for optimizing the smoothness of feed of a machine feed shaft, and motor control device equipped with the machine learning device
CN108994818B (en) Control device and machine learning device
US10747193B2 (en) Machine learning apparatus, servo control apparatus, servo control system, and machine learning method
JP6457563B2 (en) Numerical control device and machine learning device
JP6680748B2 (en) Control device and machine learning device
JP6077617B1 (en) Machine tools that generate optimal speed distribution
JP6734318B2 (en) Drive device and machine learning device
JP6813532B2 (en) Simulation equipment
JP6557285B2 (en) Control device and machine learning device
JP2019185125A (en) Control device and machine learning device
JP2019162712A (en) Control device, machine learning device and system
US20190317472A1 (en) Controller and control method
JP2019141869A (en) Controller and machine learning device
JP2019166559A (en) Processing condition adjusting device and machine learning device
JP6703020B2 (en) Control device and machine learning device
JP6940425B2 (en) Control device and machine learning device
JP2019184575A (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: 20190911

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201221

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: 20210119

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210218

R150 Certificate of patent or registration of utility model

Ref document number: 6841852

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150