JP2018180764A - 調整装置及び調整方法 - Google Patents
調整装置及び調整方法 Download PDFInfo
- Publication number
- JP2018180764A JP2018180764A JP2017076706A JP2017076706A JP2018180764A JP 2018180764 A JP2018180764 A JP 2018180764A JP 2017076706 A JP2017076706 A JP 2017076706A JP 2017076706 A JP2017076706 A JP 2017076706A JP 2018180764 A JP2018180764 A JP 2018180764A
- Authority
- JP
- Japan
- Prior art keywords
- machine learning
- control
- feedback information
- adjustment
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/414—Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
- G05B19/4142—Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by the use of a microprocessor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4093—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
- G05B19/40937—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine concerning programming of machining or material parameters, pocket machining
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B15/00—Systems controlled by a computer
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31103—Configure parameters of controlled devices
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34013—Servocontroller
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/41—Servomotor, servo controller till figures
- G05B2219/41437—Feedforward of speed
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Manufacturing & Machinery (AREA)
- General Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Geometry (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Numerical Control (AREA)
- Feedback Control In General (AREA)
Abstract
【解決手段】少なくとも2軸以上を駆動するモータを制御する制御装置100、100A、110、120、130と、制御装置に対して機械学習を行う機械学習装置200、210、220とを制御する調整装置300、320、330であって、機械学習装置を起動させる起動指示を出力する起動指示出力部304と、制御装置で実行される評価用プログラムに基づいて得られるフィードバック情報を制御装置から取得するフィードバック情報取得部308と、取得した前記フィードバック情報を機械学習装置に送信するフィードバック情報送信部301と、フィードバック情報を用いた機械学習により得られた制御パラメータ設定情報を機械学習装置から取得するパラメータ設定情報取得部302と、取得した制御パラメータ設定情報を制御装置に送信するパラメータ設定情報送信部309と、を備える。
【選択図】図1
Description
そのため、工作機械の精度評価のために、加工プログラムとは別に評価用プログラムを用いることが望ましい。
前記機械学習装置を起動させる起動指示を出力する起動指示出力部(例えば、後述の起動指示出力部304)と、
前記制御装置で実行される評価用プログラムに基づいて得られるフィードバック情報を前記制御装置から取得するフィードバック情報取得部(例えば、後述のフィードバック情報取得部308)と、
取得した前記フィードバック情報を前記機械学習装置に送信するフィードバック情報送信部(例えば、後述のフィードバック情報送信部301)と、
前記フィードバック情報を用いた機械学習により得られた制御パラメータ設定情報を前記機械学習装置から取得するパラメータ設定情報取得部(例えば、後述のパラメータ設定情報取得部302)と、
取得した前記制御パラメータ設定情報を前記制御装置に送信するパラメータ設定情報送信部(例えば、後述のパラメータ設定情報送信部309)と、を備えた調整装置である。
前記フィードバック情報取得部は前記制御装置から状態情報として前記フィードバック情報を取得し、
前記機械学習装置から得られた制御パラメータ修正情報を行動情報として前記制御装置に送るパラメータ修正情報送信部(例えば、後述のパラメータ修正情報送信部310)を備えてもよい。
前記機械学習装置を起動させ、
前記制御装置で実行される評価用プログラムに基づいて得られるフィードバック情報を前記制御装置から取得し、
取得した前記フィードバック情報を前記機械学習装置に送信し、
前記フィードバック情報を用いた機械学習により得られた制御パラメータ設定情報を前記機械学習装置から取得し、
取得した前記制御パラメータ設定情報を前記制御装置に送信する調整方法である。
(第1の実施形態)
図1は本発明の第1の実施形態の調整システムを示すブロック図である。本実施形態の調整システム10は、図1に示すように、n台のCNC(Computerized Numerical Control)装置100−1〜100−n、n台の機械学習装置200−1〜200−n、調整装置300、及びネットワーク400を備えている。なお、nは任意の自然数である。CNC装置は制御装置に対応し、数値制御(Numerical Control)装置の一つである。
調整装置300とCNC装置100−1〜100−n、及び調整装置300と機械学習装置200−1〜200−nとは、それぞれ接続インターフェースを介して直接に接続、又はそれぞれネットワークを介して接続されており、相互に通信を行うことが可能である。なお、ネットワークは、例えば、工場内に構築されたLAN(Local Area Network)や、インターネット、公衆電話網、或いは、これらの組み合わせである。ネットワークにおける具体的な通信方式や、有線接続および無線接続のいずれであるか等については、特に限定されない。
図2に示すように、調整装置300は、CNC装置100において、学習時に実行する評価用プログラムを送信し、機械学習装置200に起動指示を送信する。
次に、調整装置300はCNC装置100に対して評価用プログラムの実行指示を送信する。CNC装置100は評価用プログラムを実行し、実行される評価用プログラムに基づいて得られるフィードバック情報を調整装置300に送信する。調整装置300は取得したフィードバック情報を機械学習装置200に送信する。
次に、機械学習装置200はフィードバック情報を用いて機械学習を行い、機械学習により得られたパラメータ設定情報を調整装置300に送信する。調整装置300は取得したパラメータ設定情報をCNC装置100に送信する。こうして、CNC装置100は適正な制御パラメータに設定される。
なお、CNC装置100と機械学習装置200とは、接続インターフェースを介して直接に接続、又はそれぞれネットワークを介して接続して、図2に示した調整装置300を介した信号の一部を、調整装置300を介さずCNC装置100と機械学習装置200との間で送受信してもよい。また、オペレータがCNC装置100で評価用プログラムを実行させる場合には、調整装置300からCNC装置100へ評価用プログラムの実行指示を送信しなくともよい。
<CNC装置100>
図3はCNC装置の一構成例を示すブロック図である。説明の便宜上、図3において、調整装置300及び機械学習装置200も示している。
図3に示すように、CNC装置100は、制御対象500のサーボモータ600を制御する。サーボモータ600は、制御される軸が少なくとも2軸以上ある場合は軸の数分設けられる。本実施形態では評価用プログラムが少なくとも2軸動作させるので、サーボモータの数は少なくとも2つ設けられる。ここではモータとしてサーボモータを示しているが、スピンドルモータ等の他のモータを用いてもよい。制御対象500は例えばサーボモータ、サーボモータを含む工作機械,ロボット,産業機械等である。CNC装置100は工作機械、ロボット、又は産業機械等の一部として設けられてもよい。以下、制御対象500がサーボモータを含む工作機械である場合を例にとって説明する。
図3に示すように、CNC装置100は、数値制御情報処理部1011、記憶部1012、減算器1013、位置制御部1014、加算器1015、減算器1016、速度制御部1017、加算器1018、積分器1019、位置フィードフォワード計算部1020、及び速度フィードフォワード計算部1021を備えている。数値制御情報処理部1011と記憶部1012を除くCNC装置100の各構成部はサーボモータごとに設けられる。
記憶部1012は評価用プログラムを記憶しており、この評価プログラムは、機械学習装置200による学習時にCNC装置100で用いられる加工プログラムである。評価用プログラムは、実際の切削加工等の加工時に用いられる加工プログラムとは別に設けられる。評価用プログラムは後述の調整装置300から数値制御情報処理部1011に送信され、数値制御情報処理部1011は評価用プログラムを記憶部1012に記憶する。
減算器1013は数値制御情報処理部1011から位置指令値を受け、位置指令値と位置フィードバックされた検出位置との差を求め、その差を位置偏差として位置制御部1014に出力するとともに後述の調整装置300に対して送信する。
以上のように、CNC装置100は構成される。
例えば、評価用プログラムは、学習時の加工形状により軸方向の移動距離、送り速度等を指定する。学習時の加工形状は、例えば、円、四角、及び角R付き四角(a square with quarter arc)等である。
図4Bは、加工形状が円形で、位置A1で、テーブルをY軸方向に移動するサーボモータの回転方向が反転しようとした時の惰走により生ずる軌跡誤差を示す説明図である。
図4Bに示すように、テーブルをY軸方向に移動するサーボモータの回転方向が位置A1で反転しようとした時に、反転遅れが生じ、半径方向に軌跡誤差が拡大し、軌跡誤差の拡大表示を行うと軌跡誤差が突起として見える。
以上説明した、評価用プログラムにより指定される加工形状により、回転方向が反転したり、回転状態から停止したりする場合に生ずる惰走(惰性で動作する)を評価し、位置偏差に対する影響を調べることができる。
より具体的には、機械学習装置200は、制御パラメータai、bj(i,j≧0)の値、並びに評価用プログラムを実行することで取得されるCNC装置100の位置偏差情報を含む、指令及びフィードバック等のサーボ状態を状態sとして、当該状態sに係る制御パラメータai、bjの調整を行動aとする、Q学習(Q−learning)を行う。当業者にとって周知のように、Q学習では、或る状態sのとき、取り得る行動aのなかから、価値Q(s,a)の最も高い行動aを最適な行動として選択することを目的とする。
上述した数式2は、試行atの結果、返ってきた報酬rt+1を元に、状態stにおける行動atの価値Q(st,at)を更新する方法を表している。
ここで、報酬rを次のように設定する。
行動情報aにより状態情報sが状態情報s´に修正された場合、状態情報s´に係る修正後の制御パラメータai、bjに基づいて動作したCNC装置100の位置偏差の値が、行動情報aにより修正される前の状態情報sに係る修正前の制御パラメータai、bjに基づいて動作したCNC装置100の位置偏差の値よりも大きくなった場合に、報酬の値を負の値とする。
Q学習では、機械学習装置200は、例えば、将来にわたっての報酬rの合計が最大になる最適な行動aを試行錯誤的に探索する。そうすることで、機械学習装置200は、制御パラメータai、bjに基づいて、予め設定された評価用プログラムを実行することで取得されるCNC装置100の位置偏差情報を含む指令、フィードバック等のサーボ状態を含む状態sに対して、最適な行動a(すなわち、最適な制御パラメータai、bj)を選択することが可能となる。
上述した強化学習を行うために、図5に示すように、機械学習装置200は、状態情報取得部201、学習部202、行動情報出力部203、価値関数記憶部204、及び最適化行動情報出力部205を備える。学習部202は報酬出力部2021、価値関数更新部2022、及び行動情報生成部2023を備える。
状態情報取得部201は、取得した状態情報sを学習部202に対して出力する。
なお、最初にQ学習を開始する時点での制御パラメータai、bjは、予めユーザの指定により後述の調整装置300が生成する。本実施形態では、後述の調整装置300が作成した制御パラメータai、bjの初期設定値を、強化学習により最適なものに調整する。制御パラメータai、bjは例えば、初期設定値として、a0=1、a1=0、b0=0、b1=制御対象のイナーシャ値とする。また、係数ai、bjの次元m、nを予め設定する。
すなわち、aiについては0≦i≦m bjについては0≦j≦nとする。
なお、価値関数Qの更新は、オンライン学習で行ってもよく、バッチ学習で行ってもよく、ミニバッチ学習で行ってもよい。オンライン学習、バッチ学習、ミニバッチ学習のいずれかの選択は調整装置300が行うことができる。
オンライン学習とは、或る行動aを現在の状態sに適用することにより、状態sが新たな状態s´に遷移する都度、即座に価値関数Qの更新を行うという学習方法である。また、バッチ学習とは、或る行動aを現在の状態sに適用することにより、状態sが新たな状態s´に遷移することを繰り返すことにより、学習用のデータを収集し、収集した全ての学習用データを用いて、価値関数Qの更新を行うという学習方法である。更に、ミニバッチ学習とは、オンライン学習と、バッチ学習の中間的な、ある程度学習用データが溜まるたびに価値関数Qの更新を行うという学習方法である。
この最適化行動情報には、行動情報出力部203がQ学習の過程において出力する行動情報と同様に、制御パラメータai、bjを修正する情報が含まれる。この制御パラメータai、bjを修正する情報が、機械学習により得られたパラメータ設定情報となる。
以上のように、本発明に係る機械学習装置200を利用することで、CNC装置100の速度フィードフォワード計算部1021の制御パラメータ調整を簡易化することができる。
次に、第1の実施形態における調整装置300について説明する。
図6は調整装置300の一構成例を示すブロック図である。調整装置300は、フィードバック情報送信部301、パラメータ設定情報取得部302、パラメータ修正情報取得部303、起動指示出力部304、評価用プログラム記憶部305、評価用プログラム出力部306、評価用プログラム実行指示出力部307、フィードバック情報取得部308、パラメータ設定情報送信部309、パラメータ修正情報送信部310、パラメータ初期設定送信部311、及び制御部312を備えている。制御部312は各構成部の動作を制御する。
図7Aは調整システムの起動動作のフローを示す図である。
調整装置300の制御部312は、まずステップS41において、パラメータ初期設定送信部311を介して、CNC装置100に制御パラメータ初期設定を指示する。具体的には、調整装置300の制御部312は、速度フィードフォワード計算部1021に対して、係数ai、bjを、例えば、初期設定値として、数式1のa0=1、a1=0、b0=0、b1=制御対象のイナーシャ値とし、係数ai、bjの次元m、nを設定するように指示する。CNC装置100はステップS61において、調整装置300からの指示に基づいて、速度フィードフォワード計算部1021の係数ai、bjの値と次元を設定する。
次に、図7Bを用いて調整システム10の学習動作について説明する。
図7Bは調整システム10の学習動作を説明するフローチャートである。
調整装置300の制御部312は、ステップS44において、評価用プログラム実行指示出力部307を介して、CNC装置100の数値制御情報処理部1011に対して評価用プログラムの実行を指示する。
調整装置300の制御部312は、ステップS45で、フィードバック情報をフィードバック情報取得部308を介して取得し、フィードバック情報送信部301を介して機械学習装置200に送信する。機械学習装置200はステップS32でフィードバック情報を受信する。
調整装置300の制御部312は、評価用プログラムによる一連の加工の終了通知を受けると、評価用プログラムの終了通知を受けた回数を記録、更新する。そして、調整装置300の制御部312は、ステップS46において、その回数が所定の回数を超えたか、あるいは所定の学習期間を過ぎたかを判断し、機械学習を終了させるか否かの判断を行う。機械学習を終了させない場合には(ステップS46のNO)、ステップS47に移行する。機械学習を終了させる場合には(ステップS46のYES)、ステップS49に移行する。
調整装置300は、ステップS47において、機械学習装置200に対して、報酬計算、価値関数更新を指示する。
機械学習装置200は、ステップS36において、制御パラメータ修正情報を生成して、制御パラメータ修正情報を調整装置300に送信する。ここで、制御パラメータ修正情報とは、例えば、状態sに含まれる速度フィードフォワード計算部の各係数に対して行動aに含まれる、速度フィードフォワード計算部の各係数ai、bjをインクレメンタル(例えば0.01程度)に加算又は減算させる情報である。
こうすることで、CNC装置は、修正後の制御パラメータai、bjに基づいて、評価用プログラムによる一連の加工を繰り返す。
図7Cに示すように、調整装置300の制御部312は、ステップS49において、機械学習装置200に対して、制御パラメータ設定情報の出力指示を送信する。
機械学習装置200は、ステップS37において、最適化行動情報となる制御パラメータ設定情報の出力指示を受信すると、最後の機械学習に対応する報酬を計算し、価値関数を更新する。
機械学習装置200(最適化行動情報出力部205)は、ステップS38において、価値関数記憶部204に記憶している価値関数Qを取得し、取得した価値関数Qに基づいて、例えば、初期状態s0に対して最適化行動情報となる制御パラメータ設定情報を生成し、生成した制御パラメータ設定情報を調整装置300に対して出力する。
調整装置300は、ステップS50において、制御パラメータ設定情報を取得すると、CNC装置100に対して出力する。
CNC装置100は、ステップS67において、調整装置300から受信した制御パラメータ設定情報に基づいて速度フィードフォワード計算部1021の係数ai、bjを最適な値に設定する。
調整装置300は、ステップS51において、学習終了指示をCNC装置100及び機械学習装置200に対して送信し、学習を終了する。CNC装置100及び機械学習装置200は調整装置300から学習終了指示を受けると、学習を終了する。
これらの機能を実現するために、CNC装置100、機械学習装置200及び調整装置300のそれぞれは、CPU(Central Processing Unit)等の演算処理装置を備える。また、CNC装置100、機械学習装置200及び調整装置300のそれぞれは、アプリケーションソフトウェアやOS(Operating System)等の各種の制御用プログラムを格納したHDD(Hard Disk Drive)等の補助記憶装置や、演算処理装置がプログラムを実行する上で一時的に必要とされるデータを格納するためのRAM(Random Access Memory)といった主記憶装置も備える。
例えば、CNC装置100の速度フィードフォワード計算部1021において、制御パラメータを予め初期設定しておいてもよい。この場合には図6のパラメータ初期設定送信部311、及び図7Aの調整装置300のステップS41とCNC装置100のステップS61は設けなくてよい。
図8は本発明の第2の実施形態の調整システムを示すブロック図である。本実施形態のCNC装置及び機械学習装置は図2、図3、及び図5に示したCNC装置100及び機械学習装置200と同一構成なので同一番号を付して説明を省略する。本実施形態の調整システム11は調整装置320が機械学習装置200を含んでいる。調整装置320の構成は機械学習装置200を除くと図6に示した調整装置300と同じである。調整装置320とCNC装置100とが、接続インターフェースを介して直接に接続、又はネットワークを介して接続されており、相互に通信を行うことが可能である。ネットワークは、例えば、工場内に構築されたLAN(Local Area Network)や、インターネット、公衆電話網、或いは、これらの組み合わせである。ネットワークにおける具体的な通信方式や、有線接続および無線接続のいずれであるか等については、特に限定されない。
図9は本発明の第3の実施形態の調整システムを示すブロック図である。本実施形態のCNC装置及び調整装置は図2、図3、及び図6に示したCNC装置100及び調整装置300と同一構成なので同一番号を付して説明を省略する。本実施形態の調整システム12は機械学習装置210が調整装置300を含んでいる。機械学習装置210の構成は調整装置300を除くと図5に示した機械学習装置200と同じである。CNC装置100と機械学習装置210とが、接続インターフェースを介して直接に接続、又はネットワークを介して接続されており、相互に通信を行うことが可能である。ネットワークは、例えば、工場内に構築されたLAN(Local Area Network)や、インターネット、公衆電話網、或いは、これらの組み合わせである。ネットワークにおける具体的な通信方式や、有線接続および無線接続のいずれであるか等については、特に限定されない。
図10は本発明の第4の実施形態の調整システムを示すブロック図である。本実施形態の機械学習装置及び調整装置は図2、図5、及び図6に示した機械学習装置200及び調整装置300と同一構成なので同一番号を付して説明を省略する。本実施形態の調整システム13はCNC装置110が機械学習装置200を含んでいる。CNC装置110の構成は機械学習装置200を除くと図3に示したCNC装置100と同じである。CNC装置110と調整装置300とが、接続インターフェースを介して直接に接続、又はネットワークを介して接続されており、相互に通信を行うことが可能である。
図11は本発明の第5の実施形態のCNC装置を示すブロック図である。本実施形態のCNC装置120は調整装置330を含み、さらに調整装置330が機械学習装置200を含んでいる。CNC装置120の構成は、機械学習装置230を含む調整装置330を除くと図3に示したCNC装置100と同じであり、CNC装置100と同一の構成の制御部を備えている。本実施形態ではCNC装置120のオペーレーションシステム上で、機械学習装置200の機能を含む調整装置330の機能を実行するアプリケーションソフトを実行することができる。
図12は本発明の第6の実施形態のCNC装置を示すブロック図である。本実施形態のCNC装置130は機械学習装置220を含み、さらに機械学習装置220が調整装置300を含んでいる。CNC装置130の構成は、調整装置300を含む機械学習装置220を除くと図3に示したCNC装置100と同じであり、CNC装置100と同一の構成の制御部を備えている。本実施形態ではCNC装置130のオペーレーションシステム上で、調整装置300を含む機械学習装置220の機能を実行するアプリケーションソフトを実行することができる。
図13は本実施形態のCNC装置の他の構成例を示すブロック図である。図13に示すCNC装置100Aと図3に示すCNC装置100との違いは、図13に示すCNC装置100Aが減算器1022、電流制御部1023、加算器1024、及び電流フィードフォワード計算部1025をさらに含み、電流フィードバックを行う構成としている点である。
速度フィードフォワード計算部1021における機械学習に限定されない。例えば、速度フィードフォワード計算部1021に加えて、又は速度フィードフォワード計算部1021に換えて、位置フィードフォワード計算部1020及び/又は電流フィードフォワード計算部1025の伝達関数の係数(制御パラメータ)について機械学習(強化学習)を行ってもよい。
また、上述した各実施形態の機械学習装置200、210、220は強化学習に関する例について説明したが、その他の手法、例えば、「教師あり学習」、「教師なし学習」に本発明を適用してもよい。
上述した図1及び2に示した実施形態では、CNC装置100と機械学習装置200とが1対1の組として通信可能に接続されているが、例えば1台の機械学習装置200が複数のCNC装置100とネットワーク400を介して通信可能に接続され、各CNC装置100の機械学習を実施するようにしてもよい。
その際、機械学習装置200の各機能を、適宜複数のサーバに分散する、分散処理システムとしてもよい。また、クラウド上で仮想サーバ機能等を利用して、機械学習装置200の各機能を実現してもよい。
また、図8及び図10に示す第2及び第4の実施形態では、1台の調整装置が1台のCNC装置に対して設けられているが、1台の調整装置が複数台のCNC装置に対して設けられてもよい。さらに、図9に示す第3の実施形態では、1台の機械学習装置が1台のCNC装置に対して設けられているが、1台の調整装置が複数台のCNC装置に対して設けられてもよい。
100、110、120、130 CNC装置
200、210 機械学習装置
300、310、 調整装置
301 フィードバック情報送信部
302 パラメータ設定情報取得部
303 パラメータ修正情報取得部
304 起動指示出力部
305 評価用プログラム記憶部
306 評価用プログラム出力部
307 評価用プログラム実行指示出力部
308 フィードバック情報取得部
309 パラメータ設定情報送信部
310 パラメータ修正情報送信部
311 パラメータ初期設定送信部
312 制御部
Claims (16)
- 少なくとも2軸以上を駆動するモータを制御する制御装置と、前記制御装置に対して機械学習を行う機械学習装置とを制御する調整装置であって、
前記機械学習装置を起動させる起動指示を出力する起動指示出力部と、
前記制御装置で実行される評価用プログラムに基づいて得られるフィードバック情報を前記制御装置から取得するフィードバック情報取得部と、
取得した前記フィードバック情報を前記機械学習装置に送信するフィードバック情報送信部と、
前記フィードバック情報を用いた機械学習により得られた制御パラメータ設定情報を前記機械学習装置から取得するパラメータ設定情報取得部と、
取得した前記制御パラメータ設定情報を前記制御装置に送信するパラメータ設定情報送信部と、を備えた調整装置。 - 前記評価用プログラムを記憶する記憶部と、前記評価用プログラムを前記制御装置に出力する評価用プログラム出力部とを、備えた請求項1に記載の調整装置。
- 前記評価用プログラムを実行させる実行指示を前記制御装置に送る評価用プログラム実行指示出力部を備えた請求項1又は2に記載の調整装置。
- 前記モータで2軸以上を駆動したときに、前記フィードバック情報取得部は前記制御装置から前記フィードバック情報を取得して前記機械学習装置に送る請求項1から3のいずれか1項に記載の調整装置。
- 前記フィードバック情報は、位置指令、位置フィードバック、及び位置偏差のうちの少なくとも1つを含む請求項1から4のいずれか1項に記載の調整装置。
- 前記フィードバック情報は、さらに、速度指令、速度フィードバック、及び速度偏差のうちの少なくとも1つを含む請求項5に記載の調整装置。
- 前記フィードバック情報は、さらに、電流指令、電流フィードバック、及び電流偏差のうちの少なくとも1つを含む請求項5に記載の調整装置。
- 前記機械学習は強化学習であって、
前記フィードバック情報取得部は前記制御装置から状態情報として前記フィードバック情報を取得し、
前記機械学習装置から得られた制御パラメータ修正情報を行動情報として前記制御装置に送るパラメータ修正情報送信部を備えた請求項1から7のいずれか1項に記載の調整装置。 - 前記制御装置は位置フィードフォワード計算部、速度フィードフォワード計算部、及び電流フィードフォワード計算部のうちの少なくとも1つを備え、前記位置フィードフォワード計算部、前記速度フィードフォワード計算部、及び前記電流フィードフォワード計算部のうちの少なくとも1つは前記制御パラメータ設定情報により制御パラメータの設定がされる請求項1から8のいずれか1項に記載の調整装置。
- 前記制御装置は前記評価用プログラムを記憶している請求項1及び3から9のいずれか1項に記載の調整装置。
- 前記機械学習装置を含んでいる請求項1から10のいずれか1項に記載の調整装置。
- 前記機械学習装置に含まれている請求項1から10のいずれか1項に記載の調整装置。
- 前記制御装置は、前記機械学習装置を含んでいる請求項1から10のいずれか1項に記載の調整装置。
- 前記制御装置に含まれ且つ前記機械学習装置を含んでいる請求項1から10のいずれか1項に記載の調整装置。
- 前記調整装置は前記機械学習装置に含まれ、該機械学習装置は前記制御装置に含まれている請求項1から10のいずれか1項に記載の調整装置。
- 少なくとも2軸以上を駆動するモータを制御する制御装置と、前記制御装置に対して機械学習を行う機械学習装置とを制御する調整装置の調整方法であって、
前記機械学習装置を起動させ、
前記制御装置で実行される評価用プログラムに基づいて得られるフィードバック情報を前記制御装置から取得し、
取得した前記フィードバック情報を前記機械学習装置に送信し、
前記フィードバック情報を用いた機械学習により得られた制御パラメータ設定情報を前記機械学習装置から取得し、
取得した前記制御パラメータ設定情報を前記制御装置に送信する調整方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017076706A JP6474449B2 (ja) | 2017-04-07 | 2017-04-07 | 調整装置及び調整方法 |
CN201810282626.4A CN108693834B (zh) | 2017-04-07 | 2018-04-02 | 调整装置以及调整方法 |
US15/944,308 US10444733B2 (en) | 2017-04-07 | 2018-04-03 | Adjustment device and adjustment method |
DE102018205015.5A DE102018205015B4 (de) | 2017-04-07 | 2018-04-04 | Einstellvorrichtung und Einstellverfahren |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017076706A JP6474449B2 (ja) | 2017-04-07 | 2017-04-07 | 調整装置及び調整方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018180764A true JP2018180764A (ja) | 2018-11-15 |
JP6474449B2 JP6474449B2 (ja) | 2019-02-27 |
Family
ID=63587756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017076706A Active JP6474449B2 (ja) | 2017-04-07 | 2017-04-07 | 調整装置及び調整方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10444733B2 (ja) |
JP (1) | JP6474449B2 (ja) |
CN (1) | CN108693834B (ja) |
DE (1) | DE102018205015B4 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019185539A (ja) * | 2018-04-13 | 2019-10-24 | ファナック株式会社 | 調整装置及び調整方法 |
WO2020261473A1 (ja) * | 2019-06-27 | 2020-12-30 | 三菱電機株式会社 | 数値制御装置、機械学習装置、及び数値制御方法 |
JP6843314B1 (ja) * | 2019-09-11 | 2021-03-17 | 三菱電機株式会社 | 数値制御装置、数値制御方法および機械学習装置 |
US11507885B2 (en) | 2019-02-12 | 2022-11-22 | Fanuc Corporation | Machine learning device, control device, and machine learning search range setting method |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6474449B2 (ja) * | 2017-04-07 | 2019-02-27 | ファナック株式会社 | 調整装置及び調整方法 |
JP6748135B2 (ja) * | 2018-03-19 | 2020-08-26 | ファナック株式会社 | 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 |
JP6860541B2 (ja) * | 2018-10-29 | 2021-04-14 | ファナック株式会社 | 出力装置、制御装置、及び評価関数値の出力方法 |
JP6799047B2 (ja) * | 2018-11-19 | 2020-12-09 | ファナック株式会社 | 暖機運転評価装置、暖機運転評価方法及び暖機運転評価プログラム |
US11461162B2 (en) * | 2020-07-06 | 2022-10-04 | Ringcentral, Inc. | Maze-driven self-diagnostics using reinforcement learning |
CN112202370B (zh) * | 2020-09-28 | 2022-04-15 | 北京科技大学 | 一种同轴双电机模型预测直接转矩控制方法 |
CN113638808B (zh) * | 2021-08-17 | 2022-11-22 | 中国联合重型燃气轮机技术有限公司 | 燃料阀冗余伺服控制方法、装置及系统 |
US20230205180A1 (en) * | 2021-12-23 | 2023-06-29 | Ats Corporation | Methods and systems for controlling computer numerical control machines |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03259303A (ja) * | 1990-03-09 | 1991-11-19 | Hitachi Ltd | 学習制御装置 |
JPH04324507A (ja) * | 1991-04-25 | 1992-11-13 | Hitachi Ltd | 駆動装置の加減速制御方法及びロボットシステム |
CN102467113A (zh) * | 2010-11-10 | 2012-05-23 | 新代科技股份有限公司 | 机械装置的具有参数学习的控制器及其参数学习方法 |
JP2018152012A (ja) * | 2017-03-15 | 2018-09-27 | ファナック株式会社 | 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6063016A (ja) | 1984-07-31 | 1985-04-11 | 松下電器産業株式会社 | ミル付コ−ヒ−沸し器 |
JPH07501643A (ja) * | 1991-12-09 | 1995-02-16 | シーメンス アクチエンゲゼルシヤフト | 制御パラメータに依存する実際値特性を有するシステムに対する制御パラメータの最適化方法 |
JP4745798B2 (ja) * | 2005-11-11 | 2011-08-10 | 株式会社日立産機システム | 電動機制御装置の自動調整法および装置 |
CN102374038B (zh) * | 2011-09-06 | 2013-09-11 | 天津大学 | 自学习的前馈和主动抗扰反馈结合的vvt控制方法 |
WO2015021016A1 (en) * | 2013-08-05 | 2015-02-12 | Board Of Trustees Of The University Of Alabama | Systems, methods and devices for vector control of permanent magnet synchronous machines using artificial neural networks |
US9533413B2 (en) * | 2014-03-13 | 2017-01-03 | Brain Corporation | Trainable modular robotic apparatus and methods |
US9364950B2 (en) * | 2014-03-13 | 2016-06-14 | Brain Corporation | Trainable modular robotic methods |
JP6063016B1 (ja) | 2015-09-29 | 2017-01-18 | ファナック株式会社 | 電動機に対する動作指令を学習する機械学習方法および機械学習装置並びに該機械学習装置を備えた工作機械 |
JP6193961B2 (ja) * | 2015-11-30 | 2017-09-06 | ファナック株式会社 | 機械の送り軸の送りの滑らかさを最適化する機械学習装置および方法ならびに該機械学習装置を備えたモータ制御装置 |
US11259742B2 (en) * | 2016-08-19 | 2022-03-01 | Curiato Inc. | System, method, and computer readable medium for dynamic pressure damage risk assessment and response |
JP6744208B2 (ja) * | 2016-12-27 | 2020-08-19 | 株式会社日立製作所 | 制御装置及び制御方法 |
JP6457563B2 (ja) * | 2017-01-24 | 2019-01-23 | ファナック株式会社 | 数値制御装置及び機械学習装置 |
JP2018126796A (ja) * | 2017-02-06 | 2018-08-16 | セイコーエプソン株式会社 | 制御装置、ロボットおよびロボットシステム |
JP2018126799A (ja) * | 2017-02-06 | 2018-08-16 | セイコーエプソン株式会社 | 制御装置、ロボットおよびロボットシステム |
JP6474449B2 (ja) * | 2017-04-07 | 2019-02-27 | ファナック株式会社 | 調整装置及び調整方法 |
JP6557285B2 (ja) * | 2017-05-26 | 2019-08-07 | ファナック株式会社 | 制御装置及び機械学習装置 |
JP6499720B2 (ja) * | 2017-06-22 | 2019-04-10 | ファナック株式会社 | 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 |
JP6538766B2 (ja) * | 2017-07-18 | 2019-07-03 | ファナック株式会社 | 機械学習装置、サーボモータ制御装置、サーボモータ制御システム、及び機械学習方法 |
JP6698603B2 (ja) * | 2017-09-29 | 2020-05-27 | ファナック株式会社 | 数値制御システム、及び運転状態異常検知方法 |
JP2019086928A (ja) * | 2017-11-06 | 2019-06-06 | ファナック株式会社 | 制御装置及び機械学習装置 |
JP6680748B2 (ja) * | 2017-11-17 | 2020-04-15 | ファナック株式会社 | 制御装置及び機械学習装置 |
JP6680756B2 (ja) * | 2017-12-26 | 2020-04-15 | ファナック株式会社 | 制御装置及び機械学習装置 |
-
2017
- 2017-04-07 JP JP2017076706A patent/JP6474449B2/ja active Active
-
2018
- 2018-04-02 CN CN201810282626.4A patent/CN108693834B/zh active Active
- 2018-04-03 US US15/944,308 patent/US10444733B2/en active Active
- 2018-04-04 DE DE102018205015.5A patent/DE102018205015B4/de active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03259303A (ja) * | 1990-03-09 | 1991-11-19 | Hitachi Ltd | 学習制御装置 |
JPH04324507A (ja) * | 1991-04-25 | 1992-11-13 | Hitachi Ltd | 駆動装置の加減速制御方法及びロボットシステム |
CN102467113A (zh) * | 2010-11-10 | 2012-05-23 | 新代科技股份有限公司 | 机械装置的具有参数学习的控制器及其参数学习方法 |
JP2018152012A (ja) * | 2017-03-15 | 2018-09-27 | ファナック株式会社 | 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019185539A (ja) * | 2018-04-13 | 2019-10-24 | ファナック株式会社 | 調整装置及び調整方法 |
US11507885B2 (en) | 2019-02-12 | 2022-11-22 | Fanuc Corporation | Machine learning device, control device, and machine learning search range setting method |
WO2020261473A1 (ja) * | 2019-06-27 | 2020-12-30 | 三菱電機株式会社 | 数値制御装置、機械学習装置、及び数値制御方法 |
JP6813129B1 (ja) * | 2019-06-27 | 2021-01-13 | 三菱電機株式会社 | 数値制御装置、機械学習装置、及び数値制御方法 |
JP6843314B1 (ja) * | 2019-09-11 | 2021-03-17 | 三菱電機株式会社 | 数値制御装置、数値制御方法および機械学習装置 |
WO2021048959A1 (ja) * | 2019-09-11 | 2021-03-18 | 三菱電機株式会社 | 数値制御装置、数値制御方法および機械学習装置 |
CN114424130A (zh) * | 2019-09-11 | 2022-04-29 | 三菱电机株式会社 | 数控装置、数控方法及机器学习装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108693834B (zh) | 2019-12-03 |
DE102018205015A1 (de) | 2018-10-11 |
DE102018205015B4 (de) | 2020-08-13 |
CN108693834A (zh) | 2018-10-23 |
US20180292808A1 (en) | 2018-10-11 |
US10444733B2 (en) | 2019-10-15 |
JP6474449B2 (ja) | 2019-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6474449B2 (ja) | 調整装置及び調整方法 | |
CN108628355B (zh) | 伺服控制装置及系统、机器学习装置及方法 | |
CN109116811B (zh) | 机器学习装置和方法、伺服控制装置、伺服控制系统 | |
CN109274314B (zh) | 机器学习装置、伺服电动机控制装置、伺服电动机控制系统以及机器学习方法 | |
CN110376969B (zh) | 调整装置以及调整方法 | |
JP6740277B2 (ja) | 機械学習装置、制御装置、及び機械学習方法 | |
US10481566B2 (en) | Machine learning device, servo control device, servo control system and machine learning method | |
JP6748135B2 (ja) | 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 | |
JP6740278B2 (ja) | 機械学習装置、制御装置、及び機械学習方法 | |
JP6784722B2 (ja) | 出力装置、制御装置、及び評価関数値の出力方法 | |
JP6474456B2 (ja) | 機械学習装置、サーボ制御システム及び機械学習方法 | |
US11592789B2 (en) | Output device, control device, and method for outputting evaluation functions and machine learning results | |
US11914333B2 (en) | Machine learning device, servo control device, servo control system, and machine learning method | |
JP6806746B2 (ja) | モータ制御装置 | |
JP6860541B2 (ja) | 出力装置、制御装置、及び評価関数値の出力方法 | |
JP6740263B2 (ja) | 機械学習装置、サーボモータ制御装置、サーボモータ制御システム、及び機械学習方法 | |
JP6740290B2 (ja) | 機械学習装置、制御装置、及び機械学習方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20180913 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181217 |
|
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: 20190108 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190129 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6474449 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |