JP2018169695A - 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 - Google Patents

機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 Download PDF

Info

Publication number
JP2018169695A
JP2018169695A JP2017065050A JP2017065050A JP2018169695A JP 2018169695 A JP2018169695 A JP 2018169695A JP 2017065050 A JP2017065050 A JP 2017065050A JP 2017065050 A JP2017065050 A JP 2017065050A JP 2018169695 A JP2018169695 A JP 2018169695A
Authority
JP
Japan
Prior art keywords
control
command
machine learning
learning
output
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
JP2017065050A
Other languages
English (en)
Other versions
JP6514257B2 (ja
Inventor
直人 園田
Naoto Sonoda
直人 園田
聡史 猪飼
Satoshi Igai
聡史 猪飼
亮太郎 恒木
Ryotaro Tsuneki
亮太郎 恒木
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 JP2017065050A priority Critical patent/JP6514257B2/ja
Priority to DE102018202654.8A priority patent/DE102018202654B4/de
Priority to US15/905,087 priority patent/US10935939B2/en
Priority to CN201810258645.3A priority patent/CN108693832B/zh
Publication of JP2018169695A publication Critical patent/JP2018169695A/ja
Application granted granted Critical
Publication of JP6514257B2 publication Critical patent/JP6514257B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4142Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by the use of a microprocessor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B6/00Internal feedback arrangements for obtaining particular characteristics, e.g. proportional, integral or differential
    • G05B6/02Internal feedback arrangements for obtaining particular characteristics, e.g. proportional, integral or differential electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33032Learn by changing input weights as function of position error
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34013Servocontroller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36411By coarse model of robot to modify commands, learned by feedforward controller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42151Learn dynamics of servomotor system by ann

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Feedback Control In General (AREA)

Abstract

【課題】フィードフォワード制御についての調整を簡便に行うと共に、指令追従性を向上させること。
【解決手段】機械学習送致が、サーボ制御装置が制御対象装置の駆動制御のために前記制御対象装置に対して出力する指令をラベルとして取得するラベル取得手段と、前記指令に基づいて駆動した制御対象装置の出力を入力データとして取得する入力データ取得手段と、前記ラベルと前記入力データとの組を教師データとして教師あり学習を行うことにより、前記指令を補正するためのフィードフォワード制御についての学習モデルを構築する学習手段と、を備える。
【選択図】図1

Description

本発明は、サーボ制御に関する機械学習を行う、機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法に関する。
従来、サーボ制御装置において、フィードフォワード制御を行うことにより、指令を補正するという技術が知られている。また、制御対象の前段に設置した補償器のパラメータを、ニューラルネットワーク等の機械学習を利用して決定する、という技術が知られている。
例えば、特許文献1には、フィードバック制御及びフィードフォワード制御を行うサーボ制御装置において、制御対象の出力と線形モデルの出力の差を機械学習により学習し、機械学習の学習結果に基づいて、制御対象の前段に設置した補償器のパラメータを決定するという構成が開示されている。
特開平7−210207号公報
上述した特許文献1に開示の技術は、線形モデルを規範モデルとして、この線形モデルの特性に一致するように、規範型適応制御を行うという構成である。この線形モデルは、例えば、非線形な制御対象を平衡点まわりで線形化したモデルである。ここで、特許文献1に開示の技術を利用するためには、ユーザが線形モデルを逐一用意する必要がある。
しかしながら、線形モデルを逐一用意することは、ユーザにとっては煩雑であり、より簡便にフィードフォワード制御についての調整を行う方法が望まれる。
そこで、本発明は、フィードフォワード制御についての調整を簡便に行うと共に、指令追従性を向上させることが可能な、機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法を提供することを目的とする。
(1)本発明の機械学習装置(例えば、後述の機械学習装置100)は、サーボ制御装置(例えば、後述のサーボ制御装置200)が制御対象装置(例えば、後述の制御対象装置300)の駆動制御のために前記制御対象装置に対して出力する指令をラベルとして取得するラベル取得手段(例えば、後述のラベル取得部102)と、前記指令に基づいて駆動した制御対象装置の出力を入力データとして取得する入力データ取得手段(例えば、後述の入力データ取得部101)と、前記ラベルと前記入力データとの組を教師データとして教師あり学習を行うことにより、前記指令を補正するためのフィードフォワード制御についての学習モデルを構築する学習手段(例えば、後述の学習部103)と、を備える。
(2) 上記(1)に記載の機械学習装置を、前記サーボ制御装置は前記指令を補正するためのフィードバック制御を行うサーボ制御装置であり、前記入力データ取得手段は、前記制御対象装置の出力として、前記フィードバック制御におけるフィードバックを取得するようにしてもよい。
(2) 上記(1)に記載の機械学習装置を、前記指令は、位置指令、速度指令、及び電流指令の何れか又はこれらの組み合わせであり、前記制御対象装置の出力は、位置フィードバック、速度フィードバック、及び電流フィードバックの何れか又はこれらの組み合わせであるようにしてもよい。
(3) 上記(2)に記載の機械学習装置を、前記指令は、位置指令、速度指令、及び電流指令の何れか又はこれらの組み合わせであり、前記制御対象装置の出力は、位置フィードバック、速度フィードバック、及び電流フィードバックの何れか又はこれらの組み合わせであるようにしてもよい。
(4) 上記(1)から(3)の何れかに記載の機械学習装置を、前記ラベル取得手段がラベルとして取得する前記指令には、前記制御対象装置に出力予定の指令を含むようにしてもよい。
(5) 上記(1)から(4)の何れかに記載の機械学習装置を、前記学習手段により構築された学習モデルに基づいて、前記フィードフォワード制御における補正値を生成するための関数を生成して出力する関数出力手段(例えば、後述の推定制御指令生成関数出力部105、推定電流指令生成関数出力部106、推定電圧指令生成関数出力部107)を更に備えるようにしてもよい。
(6) 本発明のサーボ制御システム(例えば、後述のサーボ制御システム1)は、上記(5)に記載の機械学習装置(例えば、後述の機械学習装置100)と、前記関数出力手段が出力する前記関数に基づいてフィードフォワード制御を行うフィードフォワード補償器(例えば、後述のフィードフォワード補償器11,フィードフォワード補償器21、フィードフォワード補償器31)を備えたサーボ制御装置(例えば、後述のサーボ制御装置200)と、を備える。
(7) 本発明のサーボ制御装置(例えば、後述のサーボ制御装置200)は、上記(1)から4に記載の機械学習装置(例えば、後述の機械学習装置100)と、前記学習手段により構築された学習モデルに基づいて、前記フィードフォワード制御における補正値を生成するための関数を生成して出力する関数出力手段(例えば、後述の推定制御指令生成関数出力部105、推定電流指令生成関数出力部106、推定電圧指令生成関数出力部107)と、前記関数出力手段が出力する前記関数に基づいてフィードフォワード制御を行うフィードフォワード補償器(例えば、後述のフィードフォワード補償器11,フィードフォワード補償器21、フィードフォワード補償器31)と、を備える。
(8) 本発明の機械学習方法は、コンピュータ(例えば、後述の機械学習装置100)が行う機械学習方法であって、サーボ制御装置が制御対象装置の駆動制御のために前記制御対象装置に対して出力する指令をラベルとして取得するラベル取得ステップと、前記指令により駆動した制御対象装置の出力を入力データとして取得する入力データ取得ステップと、前記ラベルと前記入力データとの組を教師データとして教師あり学習を行うことにより、前記指令を補正するためのフィードフォワード制御についての学習モデルを構築する学習ステップと、を備える。
本発明によれば、フィードフォワード制御についての調整を簡便に行うと共に、指令追従性を向上させることが可能となる。
本発明の各実施形態に共通する、実施形態全体の基本的構成を示す機能ブロック図である。 本発明の第1の実施形態における機械学習時の構成を示す機能ブロック図である。 本発明の第1の実施形態におけるフィードフォワード制御時の構成を示す機能ブロック図である。 本発明の第1の実施形態における機械学習装置の構成を示す機能ブロック図である。 本発明の各実施形態に共通する、実施形態全体の基本的動作を示すフローチャートである。 本発明の第2の実施形態における機械学習時の構成を示す機能ブロック図である。 本発明の第2の実施形態におけるフィードフォワード制御時の構成を示す機能ブロック図である。 本発明の第2の実施形態における機械学習装置の構成を示す機能ブロック図である。 本発明の第3の実施形態における機械学習時の構成を示す機能ブロック図である。 本発明の第3の実施形態におけるフィードフォワード制御時の構成を示す機能ブロック図である。 本発明の第3の実施形態における機械学習装置の構成を示す機能ブロック図である。
以下、本発明の実施形態について図面を用いて詳細に説明する。なお、以下では、3つの実施形態について説明をするが、その前提となる全体構成は、各実施形態で共通であるので、この各実施形態に共通の全体構成についてまず説明をする。
<各実施形態に共通の全体構成>
図1は各実施形態に共通の全体構成を示す機能ブロック図である。図1に示すように各実施形態であるサーボ制御システム1は、機械学習装置100、サーボ制御装置200及び制御対象装置300を含んで構成される。
機械学習装置100は、サーボ制御装置200によるフィードフォワード制御についての調整を行うための機械学習を行う装置である。機械学習装置100は、パーソナルコンピュータやサーバ装置あるいは数値制御装置(CNC:Computerized Numerical Control)等により実現できる。
サーボ制御装置200は、機械学習装置100が構築した学習モデルを用いたフィードフォワード制御と、フィードバック制御とを行うことによって、制御対象装置300の駆動を制御する装置である。
制御対象装置300は、サーボ制御装置200の制御により駆動する装置であり、例えばサーボモータ、サーボモータを含む工作機械、ロボット、産業機械等により実現できる。上記サーボ制御装置200は、単独の装置として実現してもよいが、これら工作機械、ロボット、産業機械等の一部として実現してもよい。
機械学習装置100及びサーボ制御装置200は通信可能に接続される。また、サーボ制御装置200及び制御対象装置300も通信可能に接続される。これら通信は、例えば、工場内に構築されたLAN(Local Area Network)により実現でき、有線通信及び無線通信の何れか又はその組み合わせであってもよく、その通信規格等に特に制限はない。また、これら通信は、インターネットや公衆電話網等のネットワーク(図示を省略する)を介したものでよく、この場合、各装置はそれぞれ近傍(例えば、同じ工場内)に設置されてもよいが、遠方の場所に別々に設置されてもよい。
なお、図中では、これら装置を1台ずつ図示するが、これら装置の台数に制限はなく、その接続も1対1のみならず、1対多や、多対多の接続であってよい。
<第1の実施形態>
次に、第1の実施形態の構成について図2A及び図2Bを参照して説明をする。ここで、本実施形態を含めた各実施形態では、「機械学習時」と「フィードフォワード制御時」とでそれぞれ稼働する部分が異なる。ここで、図2Aは、「機械学習時」に対応する図面であり、図2Bは、「フィードフォワード制御時」に対応する図面である。
図2A及び図2Bに示すように、本実施形態は、機械学習装置100a、フィードフォワード補償器11、減算器12、PI制御部13、加算器14、及び制御対象装置300を含んで構成される。ここで、フィードフォワード補償器11、減算器12、PI制御部13、及び加算器14は、サーボ制御装置200aの構成要素である。本実施形態では、フィードバック制御として、比例動作に積分動作を加えたPI制御を行う。なお、PI制御を行うサーボ制御装置の動作自体は、当業者にとってよく知られているので、この点についての詳細な説明は省略する。
本実施形態も含む各実施形態では、機械学習時には、フィードフォワード制御は行わない。そのため、図2Aでは、フィードフォワード制御を行うためのフィードフォワード補償器11と、フィードフォワード補償器11に接続される信号線とは機能しないという意味で、これらを破線で表す。一方で、フィードフォワード制御時には、機械学習は行わない。そのため、図2Bでは、機械学習装置100aに対して機械学習用の信号を送信する信号線は機能しないという意味で、これらを破線で表す。
次に、本実施形態における機械学習時の信号の流れについて図1Aを参照して説明をする。まず、サーボ制御装置200aに対して、図示を省略した上位装置(例えば数値制御装置)から制御対象装置300aの駆動を制御するための指令が入力される。入力された指令は、減算器12にてフィードバックにより減算されて、目標値である指令と出力値であるフィードバックとの偏差がPI制御部13に入力される。なお、上述のように、機械学習時には、フィードフォワード補償器11は機能していないので、指令が分岐してフィードフォワード補償器11に入力される点については説明を省略する。
PI制御部13では、積分ゲインをK1、比例ゲインをK2とした場合に「K1/s+K2」と表される伝達関数にて、入力された偏差から制御指令を生成し、生成した制御指令を制御対象装置300aに対して出力する。なお、上述のように、機械学習時には、フィードフォワード補償器11は機能していないので、加算器14にて制御指令が補正されることはない。
PI制御部13から出力された制御指令は、制御対象装置300aに対して入力される。そして、制御対象装置300aは入力された制御指令に基づいて動作をする。しかしながら、制御対象装置300aを駆動させるための負荷や外乱等の影響があることから、目標値である指令と、出力値との間には偏差が生じる。そこで、制御指令に基づいて駆動した制御対象装置300aの出力をフィードバックとして減算器12に対して出力する。そしてこのフィードバックに基づいて、偏差が減少するようにフィードバック制御が繰り返される。以上が、サーボ制御装置200aのフィードバック制御の流れである。
このフィードバック制御と並行して、PI制御部13から出力された制御指令は分岐することにより機械学習装置100aにも入力される。また、制御指令に基づいて駆動した制御対象装置300aの出力も機械学習装置100aに対して出力される。そして、機械学習装置100aは、これら2つの入力に基づいて機械学習を行う。この機械学習の内容について説明をするため、まず機械学習装置100aが備える機能ブロックについて図3を参照して説明をする。
図3に示すように、機械学習装置100aは、入力データ取得部101、ラベル取得部102、学習部103、学習モデル記憶部104、及び推定制御指令生成関数出力部105を含んで構成される。
入力データ取得部101は、制御指令に基づいて駆動した制御対象装置300aの出力を入力データ(特徴量とも呼ぶ。)として取得し、取得した入力データを学習部103に対して出力する部分である。
ラベル取得部102は、PI制御部13から出力された制御指令をラベルとして取得し、取得したラベルを学習部103に対して出力する部分である。
このようにして、入力データである出力と、ラベルである制御指令とが組となり、学習部103に入力される。この入力データとラベルの組は、機械学習における教師データに相当する。
学習部103は、このようにして入力された教師データに基づいて教師あり学習と呼ばれる機械学習を行うことにより、学習モデルを構築する。ここで、教師あり学習自体は当業者にとってよく知られているので詳細な説明を省略して、その概略を説明する。
教師あり学習は、例えば、パーセプトロンを組み合わせて構成したニューラルネットワークにより行う。具体的には、教師データに含まれる入力データとラベルの組をニューラルネットワークに与え、ニューラルネットワークの出力がラベルと同じとなるように、各パーセプトロンについての重み付けを変更しながら学習を繰り返す。
例えば、フォワードプロパゲーション(Forward−propagation)を行った後に、バックプロパゲーション(Back−propagation、誤差逆伝搬法とも呼ばれる。)という処理を行うことを繰り返すことにより各パーセプトロンの出力の誤差を小さくするように重み付け値を調整する。
このようにして、教師データの特徴を学習し、入力から結果を推定するための学習モデルを帰納的に獲得する。
ここで、教師あり学習は、上述したように重み付けの値を異ならせながら、ラベルと出力データとの誤差がなくなるようにするものである。そして、本実施形態のラベルは、制御対象装置300aに対する制御指令であり、入力は制御対象装置300aの出力である。そのため、学習部103が学習を繰り返すことにより構築された学習モデルは、理想的には、制御対象装置300aに対する制御指令の入力と制御対象装置300aの出力とを同等の値とするための逆関数に相当することとなる。
なお、学習部103が学習に用いるニューラルネットワークは三層であってもよいが、これ以上に更に層を増やすようにしてもよい。いわゆるディープラーニング(深層学習とも呼ばれる。)により学習を行うようにしてもよい。
学習部103が構築した学習モデルは、学習モデル記憶部204に対して出力される。
学習モデル記憶部204は、学習部103が構築して学習モデル記憶部204に対して出力した学習モデルを記憶する記憶部である。
推定制御指令生成関数出力部105は、フィードフォワード制御時に、学習モデル記憶部204から学習モデルを取得する。そして、推定制御指令生成関数出力部105は、取得した学習モデルに基づいて、出力をラベルと近似させる関数である推定制御指令生成関数を生成し、生成した推定制御指令生成関数をフィードフォワード補償器11に対して出力する。この推定制御指令生成関数は、後述のフィードフォワード制御時に、フィードフォワード補償器11により用いられる。
機械学習装置100aの機能ブロックについて説明した。これらの機能ブロックを実現するために、機械学習装置100aは、CPU(Central Processing Unit)等の演算処理装置を備える。また、機械学習装置100aは、各種の制御用プログラムを格納したHDD(Hard Disk Drive)等の補助記憶装置や、演算処理装置がプログラムを実行する上で一時的に必要とされるデータを格納するためのRAM(Random Access Memory)といった主記憶装置を備える。
そして、機械学習装置100aでは、演算処理装置が補助記憶装置からアプリケーションやOSを読み込み、読み込んだアプリケーションやOSを主記憶装置に展開させながら、これらのアプリケーションやOSに基づいた演算処理を行う。また、この演算結果に基づいて、各装置が備える各種のハードウェアを制御する。これにより、本実施形態における機械学習装置100aの機能ブロックは実現される。つまり、本実施形態は、ハードウェアとソフトウェアが協働することにより実現することができる。
具体例として、機械学習装置100aは、パーソナルコンピュータやサーバ装置あるいは数値制御装置(CNC:Computerized Numerical Control)等により実現できる。
ただし、機械学習装置100aについては機械学習に伴う演算量が多いため、例えば、パーソナルコンピュータにGPU(Graphics Processing Units)を搭載し、GPGPU(General−Purpose computing on Graphics Processing Units)と呼ばれる技術により、GPUを機械学習に伴う演算処理に利用するようにすると高速処理できるようになるのでよい。更には、より高速な処理を行うために、このようなGPUを搭載したコンピュータを複数台用いてコンピュータ・クラスターを構築し、このコンピュータ・クラスターに含まれる複数のコンピュータにて並列処理を行うようにしてもよい。
なお、後述の第2の実施形態における機械学習装置100b及び第3の実施形態における機械学習装置100cについても、本実施形態の機械学習装置100aと同じようにして実現することができる。
次に、このようにして機械学習が行われた後に行われるフィードフォワード制御時の信号の流れについて図2Bを参照して説明をする。
まず、機械学習時同様に、サーボ制御装置200aに対して、図示を省略した上位装置(例えば数値制御装置)から制御対象装置300aの駆動を制御するための指令が入力される。入力された指令は、減算器12にてフィードバックにより減算されて、目標値である指令と出力値であるフィードバックとの偏差がPI制御部13に入力される。また、フィードフォワード制御時には、フィードフォワード補償器11が機能するので、入力された指令は分岐してフィードフォワード補償器11に入力される。
そして、フィードフォワード補償器11は、上述した推定制御指令生成関数に基づいて、入力した指令から補正値を生成する。そして、生成した補正値は、加算器14に対して出力される。
ここで、上述したように、推定制御指令生成関数は、機械学習により、理想的には、制御対象装置300aに対する制御指令の入力と制御対象装置300aの出力とを同等の値とするための逆関数となっている。そのため、この補正値は、理想的には、指令と出力とを同等の値に補正することができる。
ただし、制御対象装置300aには外乱等の影響が発生するので、補正値による補正を行ったとしても、必ずしも指令と出力とを一致させることができない。そこで、本実施形態では、このフィードフォワード補償器11による補正に加えて、外乱等の影響を抑制するために図2Aを参照して説明したフィードバック制御を併用する。
このようにすることにより、本実施形態では、制御指令の値を適切なものとすることができ、指令追従性を向上させることが可能となる。また、この場合に、ユーザが規範モデルとなる線形モデル等を作成する必要はなく、ユーザにとっては、フィードフォワード制御についての調整を簡便に行うことができる。
なお、上述の実施形態では、PI制御を行う場合を想定したが、例えば更に微分の要素を組み合わせるPID制御を行うようにしてもよい。
次に、本実施形態における機械学習装置100aの動作について図4のフローチャートを参照して説明を行う。
ステップS11において、機械学習装置100aは、現在機械学習装置100aの動作モードが「機械学習モード」に設定されているか、それとも「フィードフォワード制御モード」に設定されているか(フローチャート上では、「機械学習モード」に設定されていないと表現する)を判定する。
ここで、現在機械学習装置100aの動作モードが「機械学習モード」に設定されている場合には、ステップS11においてYesと判定され、処理はステップS12に進む。一方で、現在機械学習装置100aの動作モードが「機械学習モード」に設定されていない場合には、ステップS11においてNoと判定され、処理はステップS14に進む。
ステップS12及びステップS13において、機械学習装置100aの入力データ取得部101及びラベル取得部102は入力データとラベルを取得する。これらのデータの具体的な内容は上述した通りである。
ステップS14において、機械学習装置100aの学習部103は、入力された教師データを用いて機械学習を実行する。この教師データを用いた機械学習の具体的な内容も上述した通りである。
ステップS15において、学習部103は、構築した学習モデルを学習モデル記憶部204に対して出力することにより、学習モデルを更新する。その後、処理は再度ステップS11に進む。
このようにステップS11からステップS15の処理を繰り返すことにより、学習が継続されていく。そして、この繰り返しの過程で動作モードがフィードフォワード制御モードに切り替えて設定された場合には、ステップS11においてNoと判定され、処理はステップS16に進む。なお、設定の切り替えは、例えば、ユーザにより行われてもよいし、学習モデルの出力とラベルとの誤差の値が所定値以下となった場合に行われてもよいし、予め定めておいた回数だけ機械学習を繰り返した場合に行われてもよい。
ステップS16において、推定制御指令生成関数出力部105が、学習モデル記憶部104が記憶している学習モデルを取得する。
ステップS17において、推定制御指令生成関数出力部105は、取得した学習モデルに基づいて、出力をラベルと近似させる関数である推定制御指令生成関数を生成し、生成した推定制御指令生成関数をフィードフォワード補償器11に対して出力する。
フィードフォワード制御時における、フィードフォワード補償器11を含んだサーボ制御装置200aの動作については上述した通りである。
以上、第1の実施形態について説明をした。次に、上述した第1の実施形態を変形した第2の実施形態について説明をする。
<第2の実施形態>
次に、第2の実施形態の構成について図5A及び図5Bを参照して説明をする。ここで、図5Aは、「機械学習時」に対応する図面であり、図5Bは、「フィードフォワード制御時」に対応する図面である。なお、第2の実施形態の基本的な機能及び構成は、上述した第1の実施形態と共通するので、以下では重複する説明は省略し、第1の実施形態と第2の実施形態にて相違する点について詳細に説明をする。
図5A及び図5Bに示すように、本実施形態は、機械学習装置100b、フィードフォワード補償器21、減算器22、位置制御部23、加算器24、減算器25、速度制御部26、加算器27、制御対象装置300b及び積分器29を含んで構成される。
ここで、フィードフォワード補償器21、減算器22、位置制御部23、加算器24、減算器25、速度制御部26、加算器27、及び積分器29は、サーボ制御装置200bの構成要素である。本実施形態では、フィードバック制御として、速度フィードバックと、速度フィードバックを積分して生成した位置フィードバックとによるフィードバック制御を行う。なお、第1の実施形態のPI制御を行うサーボ制御装置と同様に、速度フィードバック及び位置フィードバックによるフィードバック制御自体は、当業者にとってよく知られているので、この点についての詳細な説明は省略する。
第2の実施形態においても、第1の実施形態と同様に、機械学習時には、フィードフォワード制御は行わない。そのため、図5Aでは、フィードフォワード制御を行うためのフィードフォワード補償器21と、フィードフォワード補償器21に接続される信号線とは機能しないという意味で、これらを破線で表す。一方で、フィードフォワード制御時には、機械学習は行わない。そのため、図5Bでは、機械学習装置100bに対して機械学習用の信号を送信する信号線は機能しないという意味で、これらを破線で表す。
次に、本実施形態における機械学習時の信号の流れについて図5Aを参照して説明をする。まず、サーボ制御装置200bに対して、図示を省略した上位装置(例えば数値制御装置)から制御対象装置300bの駆動を制御するための位置指令が入力される。入力された位置指令は、減算器22にて位置フィードバックにより減算されて、位置指令と位置フィードバックとの偏差である位置偏差が位置制御部23に入力される。
位置制御部23は、この位置偏差を処理して速度指令を生成し、生成した速度指令を速度制御部26に対して出力する。なお、上述のように、機械学習時には、フィードフォワード補償器21は機能していないので、加算器24にて速度指令が補正されることはない。
位置制御部23が出力した速度指令は、減算器25にて速度フィードバックにより減算されて、速度指令と速度フィードバックとの偏差である速度偏差が速度制御部26に入力される。
速度制御部26は、速度偏差に基づいて、比例演算や積分演算を行うといった速度ループ処理により電流指令を生成し、生成した電流指令を制御対象装置300bに対して出力する。なお、上述のように、機械学習時には、フィードフォワード補償器21は機能していないので、加算器27にて電流指令が補正されることはない。
速度制御部26から出力された電流指令は、制御対象装置300bに対して入力される。そして、制御対象装置300bは入力された電流指令に基づいて動作をする。
制御対象装置300bの駆動部(サーボモータ)には、速度検出器が取り付けられており、この速度検出器が検出した速度フィードバックは分岐して減算器25と積分器29のそれぞれに対して出力される。減算器25では、上述したように速度フィードバックによる減算を行う。
また、積分器29では、速度フィードバックを積分することにより、位置フィードバックを生成し、生成した位置フィードバックを減算器22に対して出力する。減算器22では、上述したように位置フィードバックによる減算を行う。
上述したように、制御対象装置300bを駆動させるための負荷や外乱等の影響があることから、目標値である位置指令と、出力値である位置フィードバックとの間には位置偏差が生じる。そこで、上述したようにして、位置偏差が減少するようにフィードバック制御が繰り返される。以上が、サーボ制御装置200bのフィードバック制御の流れである。
このフィードバック制御と並行して、速度制御部26から出力された電流指令は分岐することにより機械学習装置100bにも入力される。また、制御指令に基づいて駆動した制御対象装置300bの出力した速度フィードバックを積分器29が積分して生成した位置フィードバックも機械学習装置100bに対して出力される。更に、信号線の図示を省略するが、位置制御部23から出力された速度指令は分岐することにより機械学習装置100bにも入力される。
そして、機械学習装置100bは、これらの入力に基づいて機械学習を行う。なお、各機能ブロックの機能自体は上述した機械学習装置100aと機械学習装置100bとで共通するので、重複する説明は省略する。
本実施形態では、入力データ取得部101は、積分器29が積分して生成した位置フィードバックを入力データ(特徴量とも呼ぶ。)として取得する。
また、ラベル取得部102は、速度制御部26から出力された電流指令及び位置制御部23から出力された速度指令をラベルとして取得する。つまり、本実施形態では、複数のラベルを用いたマルチラベル学習を行う。
このようにして、入力データである位置フィードバックと、ラベルである電流指令及び速度指令の組とが組となり、学習部103に入力される。この入力データとラベルの組は、機械学習における教師データに相当する。
学習部103は、このようにして入力された教師データに基づいて教師あり学習と呼ばれる機械学習を行うことにより、学習モデルを構築する。ここで、教師あり学習の内容については、第1の実施形態の説明の際に上述した通りである。なお、第2の実施形態では、推定制御指令生成関数出力部105が推定電流指令生成関数出力部106に置き換わっており、学習モデルに基づいて、推定電流指令生成関数を出力する。第2の実施形態のフィードフォワード補償器21は、この推定電流指令生成関数に基づいて、後述の第1補正と第2補正として2つの補正値を出力する。
次に、このようにして機械学習が行われた後に行われるフィードフォワード制御時の信号の流れについて図5Bを参照して説明をする。
まず、機械学習時同様に、サーボ制御装置200bに対して、図示を省略した上位装置(例えば数値制御装置)から制御対象装置300bの駆動を制御するための位置指令が入力される。フィードフォワード制御時には、フィードフォワード補償器21が機能するので、入力された位置指令は分岐してフィードフォワード補償器21に入力される。そして、フィードフォワード補償器21は、上述した推定制御電圧生成関数に基づいて、入力した指令から2つの補正値を生成する。そして、生成した補正値はそれぞれ、加算器24と、加算器27に対して出力される。
また、分岐した位置指令は、減算器22にて位置フィードバックが減算されて、位置偏差となって位置制御部23に入力される。
位置制御部23は、この位置偏差を処理して速度指令を生成し、生成した速度指令を速度制御部26に対して出力する。
位置制御部23が出力した速度指令は、加算器24にて、フィードフォワード補償器21が出力する第1補正(速度指令をラベルとした教師あり学習に対応する補正値)にて補正され、更に、減算器25にて速度フィードバックにより減算されて、速度制御部26に入力される。
速度制御部26は、この入力に基づいて、比例演算や積分演算を行うといった速度ループ処理により電流指令を生成し、生成した電流指令を制御対象装置300bに対して出力する。
速度制御部26が出力した電流指令は、フィードフォワード補償器21が出力する第2補正(電流指令をラベルとした教師あり学習に対応する補正値)にて補正されて、制御対象装置300bに対して出力される。制御対象装置300bは、この制御指令に基づいて駆動する。
このようにすることにより、本実施形態では、フィードフォワード補償器21による2つの補正に加えて、外乱等の影響を抑制するために図5Aを参照して説明した位置フィードバック及び速度フィードバックを併用する。
従って、第2の実施形態でも、上述の第1の実施形態同様に、各指令の値を適切なものとすることができ、指令追従性を向上させることが可能となる。また、この場合に、ユーザが規範モデルとなる線形モデル等を作成する必要はなく、ユーザにとっては、フィードフォワード制御についての調整を簡便に行うことができる。
なお、第2の実施形態における機械学習装置100bの動作は、図4を参照して説明した第1の実施形態における機械学習装置100aの動作と同様であるので、再度の説明を省略する。
以上、第2の実施形態について説明をした。次に、上述した第1の実施形態や第2の実施形態を変形した第3の実施形態について説明をする。
<第3の実施形態>
次に、第3の実施形態の構成について図7A及び図7Bを参照して説明をする。ここで、図7Aは、「機械学習時」に対応する図面であり、図7Bは、「フィードフォワード制御時」に対応する図面である。なお、第3の実施形態の基本的な機能及び構成は、上述した第1の実施形態及び第2の実施形態と共通するので、以下では重複する説明は省略し、第1の実施形態及び第2の実施形態とは相違する点について詳細に説明をする。
図7A及び図7Bに示すように、本実施形態は、機械学習装置100c、フィードフォワード補償器31、減算器32、位置制御部33、加算器34、減算器35、速度制御部36、加算器37、減算器38、電流制御部39、加算器40、アンプ41、制御対象装置300c及び積分器43を含んで構成される。
ここで、フィードフォワード補償器31、減算器32、位置制御部33、加算器34、減算器35、速度制御部36、加算器37、減算器38、電流制御部39、加算器40、アンプ41及び積分器43は、制御対象装置300cの構成要素である。本実施形態では、フィードバック制御として、電流フィードバックと、速度フィードバックと、速度フィードバックを積分して生成した位置フィードバックとによるフィードバック制御を行う。なお、第1の実施形態や第2の実施形態のサーボ制御装置と同様に、電流フィードバック、速度フィードバック及び速度フィードバックによるフィードバック制御自体は、当業者にとってよく知られているので、この点についての詳細な説明は省略する。
第3の実施形態においても、第1の実施形態と同様に、機械学習時には、フィードフォワード制御は行わない。そのため、図7Aでは、フィードフォワード制御を行うためのフィードフォワード補償器31と、フィードフォワード補償器31に接続される信号線とは機能しないという意味で、これらを破線で表す。一方で、フィードフォワード制御時には、機械学習は行わない。そのため、図7Bでは、機械学習装置100cに対して機械学習用の信号を送信する信号線は機能しないという意味で、これらを破線で表す。
次に、本実施形態における機械学習時の信号の流れについて図7Aを参照して説明をする。まず、サーボ制御装置200cに対して、図示を省略した上位装置(例えば数値制御装置)から制御対象装置300cの駆動を制御するための位置指令が入力される。入力された位置指令は、減算器32にて位置フィードバックにより減算されて、位置指令と位置フィードバックとの偏差である位置偏差が位置制御部33に入力される。
位置制御部33は、この位置偏差を処理して速度指令を生成し、生成した速度指令を速度制御部36に対して出力する。なお、上述のように、機械学習時には、フィードフォワード補償器31は機能していないので、加算器34にて速度指令が補正されることはない。
位置制御部33が出力した速度指令は、減算器35にて速度フィードバックにより減算されて、速度指令と速度フィードバックとの偏差である速度偏差が速度制御部36に入力される。
速度制御部36は、速度偏差に基づいて、比例演算や積分演算を行うといった速度ループ処理により電流指令を生成し、生成した電流指令を電流制御部39に対して出力する。なお、上述のように、機械学習時には、フィードフォワード補償器31は機能していないので、加算器37にて電流指令が補正されることはない。
速度制御部36から出力された電流指令は、減算器38にて電流フィードバックにより減算されて、電流指令と電流フィードバックとの偏差である電流偏差が電流制御部39に入力される。
電流制御部39は、この電流偏差を処理して電圧指令を生成し、生成した電圧指令をアンプ41に対して出力する。なお、上述のように、機械学習時には、フィードフォワード補償器31は機能していないので、加算器40にて電圧指令が補正されることはない。
アンプ41は、この電圧指令に基づいて、制御対象装置300cを駆動する駆動電流を生成し、生成した駆動電流を制御対象装置300cに対して出力する。
この駆動電流は制御対象装置300cに対して入力される。そして、制御対象装置300cは入力された駆動電流に基づいて動作をする。
制御対象装置300cの駆動部(サーボモータ)には、速度検出器が取り付けられており、この速度検出器が検出した速度フィードバックは分岐して減算器35と積分器43のそれぞれに対して出力される。減算器35では、上述したように速度フィードバックによる減算を行う。
また、積分器43では、速度フィードバックを積分することにより、位置フィードバックを生成し、生成した位置フィードバックを減算器32に対して出力する。減算器32では、上述したように位置フィードバックによる減算を行う。
上述したように、制御対象装置300cを駆動させるための負荷や外乱等の影響があることから、目標値である位置指令と、出力値である位置フィードバックとの間には位置偏差が生じる。そこで、上述したようにして、位置偏差が減少するようにフィードバック制御が繰り返される。以上が、制御対象装置300cのフィードバック制御の流れである。
このフィードバック制御と並行して、電流制御部39から出力された電圧指令は分岐することにより機械学習装置100cにも入力される。また、制御指令に基づいて駆動した制御対象装置300cの出力した速度フィードバックを積分器43が積分して生成した位置フィードバックも機械学習装置100cに対して出力される。更に、信号線の図示を省略するが、位置制御部33から出力された速度指令は分岐することにより機械学習装置100cにも入力される。同様に、信号線の図示を省略するが、速度制御部36から出力された電流指令は分岐することにより機械学習装置100cにも入力される。
そして、機械学習装置100cは、これらの入力に基づいて機械学習を行う。なお、各機能ブロックの機能自体は上述した機械学習装置100aと機械学習装置100cとで共通するので、重複する説明は省略する。
本実施形態では、入力データ取得部101は、積分器43が積分して生成した位置フィードバックを入力データ(特徴量とも呼ぶ。)として取得する。
また、ラベル取得部102は、電流制御部39から出力された電圧指令、位置制御部33から出力された速度指令、及び速度制御部36から出力された電流指令をラベルとして取得する。つまり、本実施形態では、複数のラベルを用いたマルチラベル学習を行う。
このようにして、入力データである位置フィードバックと、ラベルである電圧指令、電流指令及び速度指令の組とが組となり、学習部103に入力される。この入力データとラベルの組は、機械学習における教師データに相当する。
学習部103は、このようにして入力された教師データに基づいて教師あり学習と呼ばれる機械学習を行うことにより、学習モデルを構築する。ここで、教師あり学習の内容については、第1の実施形態の説明の際に上述した通りである。なお、第3の実施形態では、推定制御指令生成関数出力部105が推定電圧指令生成関数出力部107に置き換わっており、学習モデルに基づいて、推定電圧指令生成関数を出力する。第3の実施形態のフィードフォワード補償器31は、この推定電流指令生成関数に基づいて、後述の第1補正と第2補正と第3補正として3つの補正値を出力する。
次に、このようにして機械学習が行われた後に行われるフィードフォワード制御時の信号の流れについて図7Bを参照して説明をする。
まず、機械学習時同様に、サーボ制御装置200cに対して、図示を省略した上位装置(例えば数値制御装置)から制御対象装置300cの駆動を制御するための位置指令が入力される。
フィードフォワード制御時には、フィードフォワード補償器31が機能するので、入力された位置指令は分岐してフィードフォワード補償器31に入力される。そして、フィードフォワード補償器31は、上述した推定制御電圧生成関数に基づいて、入力した指令から3つの補正値を生成する。そして、生成した補正値はそれぞれ、加算器34と、加算器37と、加算器40とに対して出力される。
また、分岐した位置指令は、減算器32にて位置フィードバックが減算されて、位置偏差となって位置制御部33に入力される。
位置制御部33は、この位置偏差を処理して速度指令を生成し、生成した速度指令を速度制御部36に対して出力する。
位置制御部33が出力した速度指令は、加算器34にて、フィードフォワード補償器31が出力する第1補正(速度指令をラベルとした教師あり学習に対応する補正値)にて補正され、更に、減算器35にて速度フィードバックにより減算されて、速度制御部36に入力される。
速度制御部36は、この入力に基づいて、比例演算や積分演算を行うといった速度ループ処理により電流指令を生成し、生成した電流指令を電流制御部39に対して出力する。
速度制御部36が出力した電流指令は、フィードフォワード補償器31が出力する第2補正(電流指令をラベルとした教師あり学習に対応する補正値)にて補正されて、更に、減算器38にて電流フィードバックにより減算されて、電流制御部39に対して入力される。
電流制御部39は、この入力を処理して電圧指令を生成し、生成した電圧指令をアンプ41に対して出力する。
電流制御部39が出力した電圧指令は、フィードフォワード補償器31が出力する第3補正(電圧指令をラベルとした教師あり学習に対応する補正値)にて補正されて、アンプ41に対して入力される。
アンプ41は、この電圧指令に基づいて、制御対象装置300cを駆動する駆動電流を生成し、生成した駆動電流を制御対象装置300cに対して出力する。
この駆動電流は制御対象装置300cに対して入力される。そして、制御対象装置300cは入力された駆動電流に基づいて動作をする。
このようにすることにより、本実施形態では、フィードフォワード補償器31による3つの補正に加えて、外乱等の影響を抑制するために図7Aを参照して説明した位置フィードバック、速度フィードバック及び電流フィードバックを併用する。
従って、第3の実施形態でも、上述の第1の実施形態や第2の実施形態と同様に、各指令の値を適切なものとすることができ、指令追従性を向上させることが可能となる。また、この場合に、ユーザが規範モデルとなる線形モデル等を作成する必要はなく、ユーザにとっては、フィードフォワード制御についての調整を簡便に行うことができる。
なお、第3の実施形態における機械学習装置100cの動作は、図4を参照して説明した第1の実施形態における機械学習装置100aの動作と同様であるので、再度の説明を省略する。
以上、本発明の3つの実施形態について説明をした。上述した各実施形態は、本発明の好適な実施形態ではあるが、上述した各実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。例えば、以下に記載するような変更を施した形態での実施が可能である。
<サーボ制御装置が機械学習装置を備える変形例>
上述した実施形態では、機械学習装置100を、サーボ制御装置200とは別体の装置により構成したが、機械学習装置100の機能の一部又は全部をサーボ制御装置200により実現するようにしてもよい。
<システム構成の自由度>
上述した実施形態では、機械学習装置100とサーボ制御装置200とが1対1の組として通信可能に接続されているが、例えば1台の機械学習装置100が複数のサーボ制御装置200とが、直接又はネットワークを介して通信可能に接続され、各サーボ制御装置200の機械学習を実施するようにしてもよい。
その際、機械学習装置100の各機能を、適宜複数のサーバに分散する、分散処理システムとしてもよい。また、クラウド上で仮想サーバ機能等を利用して、機械学習装置100の各機能を実現してもよい。
また、複数の同じ型名、同一仕様、又は同一シリーズの複数のサーボ制御装置200とそれぞれ対応する複数の制御対象装置300があった場合に、各サーボ制御装置200における学習結果を共有するように構成するようにしてもよい。そうすることで、より最適なモデルを構築することが可能となる。
<オンライン学習、バッチ学習及びミニバッチ学習>
上述した学習部103における教師あり学習は、オンライン学習で行ってもよく、バッチ学習で行ってもよく、ミニバッチ学習で行ってもよい。
オンライン学習とは、制御対象装置300が駆動し、教師データが作成される都度、即座に教師あり学習を行うという学習方法である。また、バッチ学習とは、制御対象装置300が駆動し、教師データが作成されることが繰り返される間に、繰り返しに応じた複数の教師データを収集し、収集した全ての教師データを用いて、教師あり学習を行うという学習方法である。更に、ミニバッチ学習とは、オンライン学習と、バッチ学習の中間的な、ある程度教師データが溜まるたびに教師あり学習を行うという学習方法である。
<出力予定の指令>
各実施形態では、サーボ制御装置200に対して、図示を省略した上位装置(例えば数値制御装置)から制御対象装置300の駆動を制御するための指令が入力される。ここで、この指令は、上位装置(例えば数値制御装置)に組み込まれた加工プログラム等に基づいて生成されるものであり、通常はリアルタイムに出力するものであるが、加工プログラムを先読みすることにより、これから出力予定の指令の内容を先読みすることも可能である。そこで、この出力予定の指令、すなわち、未来の指令を教師あり学習における入力データとして利用するようにしてもよい。
<ラベル及び補正の選択>
上述の第2の実施形態及び第3の実施形態では、機械学習の効率が良いと考えられることからマルチラベル学習を行うこととしていた。しかしながら、各実施形態を実装する状況等に応じて、ラベルを1つのみとするようにしてもよい。例えば、第2の実施形態において電流指令のみをラベルとするようにしてもよい。また、例えば、第3の実施形態において電圧指令のみをラベルとするようにしてもよい。
更に、第2の実施形態では、図5Bに示すように、速度指令に対する補正値(第1補正)と、電流指令に対する補正値(第2補正)の2つが出力となるように機械学習を行ったが、何れかのみが出力となるように機械学習を行ってもよい。同様に、第3の実施形態では、図7Bに示すように、速度指令に対する補正値(第1補正)と、電流指令に対する補正値(第2補正)と、電圧指令に対する補正値(第3補正)との3つが出力となるように機械学習を行ったが、何れか2つ又は1つのみが出力となるように機械学習を行ってもよい。
また、以上説明した各実施形態は、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。ハードウェアで構成する場合、各実施形態の一部又は全部を、例えば、LSI(Large Scale Integrated circuit)、ASIC(Application Specific Integrated Circuit)、ゲートアレイ、FPGA(Field Programmable Gate Array)等の集積回路(IC)で構成することができる。
また、各実施形態の一部又は全部をソフトウェアとハードウェアの組み合わせで構成する場合、フローチャートで示されるサーボ制御装置の動作の全部又は一部を記述したプログラムを記憶した、ハードディスク、ROM等の記憶部、演算に必要なデータを記憶するDRAM、CPU、及び各部を接続するバスで構成されたコンピュータにおいて、演算に必要な情報をDRAMに記憶し、CPUで当該プログラムを動作させることで実現することができる。
プログラムは、様々なタイプのコンピュータ可読媒体(computer readable medium)を用いて格納され、コンピュータに供給することができる。コンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。コンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。
1 サーボ制御システム
11、21、31 フィードフォワード補償器
12、22、25、32、35、38 減算器
13 PI制御部
14、24、27、34、37、40 加算器
23、33 位置制御
26、36 速度制御
29、43 積分器
28 電流制御
41 アンプ
100 機械学習装置
101 入力データ取得部
102 ラベル取得部
103 学習部
104 学習モデル記憶部
105 推定制御指令生成関数出力部
106 推定電流指令生成関数出力部
107 推定電圧指令生成関数出力部
200 サーボ制御装置
300 制御対象装置

Claims (8)

  1. サーボ制御装置が制御対象装置の駆動制御のために前記制御対象装置に対して出力する指令をラベルとして取得するラベル取得手段と、
    前記指令に基づいて駆動した制御対象装置の出力を入力データとして取得する入力データ取得手段と、
    前記ラベルと前記入力データとの組を教師データとして教師あり学習を行うことにより、前記指令を補正するためのフィードフォワード制御についての学習モデルを構築する学習手段と、
    を備える機械学習装置。
  2. 前記サーボ制御装置は前記指令を補正するためのフィードバック制御を行うサーボ制御装置であり、
    前記入力データ取得手段は、前記制御対象装置の出力として、前記フィードバック制御におけるフィードバックを取得する請求項1に記載の機械学習装置。
  3. 前記指令は、位置指令、速度指令、及び電流指令の何れか又はこれらの組み合わせであり、
    前記制御対象装置の出力は、位置フィードバック、速度フィードバック、及び電流フィードバックの何れか又はこれらの組み合わせである請求項2に記載の機械学習装置。
  4. 前記ラベル取得手段がラベルとして取得する前記指令には、前記制御対象装置に出力予定の指令を含む請求項1から3の何れか1項に記載の機械学習装置。
  5. 前記学習手段により構築された学習モデルに基づいて、前記フィードフォワード制御における補正値を生成するための関数を生成して出力する関数出力手段を更に備えた請求項1から4の何れか1項に記載の機械学習装置。
  6. 請求項5に記載の機械学習装置と、
    前記関数出力手段が出力する前記関数に基づいてフィードフォワード制御を行うフィードフォワード補償器を備えたサーボ制御装置と、
    を備えるサーボ制御システム。
  7. 請求項1から4の何れか1項に記載の機械学習装置と、
    前記学習手段により構築された学習モデルに基づいて、前記フィードフォワード制御における補正値を生成するための関数を生成して出力する関数出力手段と、
    前記関数出力手段が出力する前記関数に基づいてフィードフォワード制御を行うフィードフォワード補償器と、
    を備えるサーボ制御装置。
  8. コンピュータが行う機械学習方法であって、
    サーボ制御装置が制御対象装置の駆動制御のために前記制御対象装置に対して出力する指令をラベルとして取得するラベル取得ステップと、
    前記指令により駆動した制御対象装置の出力を入力データとして取得する入力データ取得ステップと、
    前記ラベルと前記入力データとの組を教師データとして教師あり学習を行うことにより、前記指令を補正するためのフィードフォワード制御についての学習モデルを構築する学習モデル構築ステップと、
    を備える機械学習方法。
JP2017065050A 2017-03-29 2017-03-29 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 Active JP6514257B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017065050A JP6514257B2 (ja) 2017-03-29 2017-03-29 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法
DE102018202654.8A DE102018202654B4 (de) 2017-03-29 2018-02-22 Vorrichtung für maschinelles Lernen, Servoregeleinrichtung, Servoregelsystem und Verfahren für maschinelles Lernen
US15/905,087 US10935939B2 (en) 2017-03-29 2018-02-26 Machine learning device, servo control apparatus, servo control system, and machine learning method
CN201810258645.3A CN108693832B (zh) 2017-03-29 2018-03-27 机器学习装置及方法、伺服控制装置、伺服控制系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017065050A JP6514257B2 (ja) 2017-03-29 2017-03-29 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法

Publications (2)

Publication Number Publication Date
JP2018169695A true JP2018169695A (ja) 2018-11-01
JP6514257B2 JP6514257B2 (ja) 2019-05-15

Family

ID=63524571

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017065050A Active JP6514257B2 (ja) 2017-03-29 2017-03-29 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法

Country Status (4)

Country Link
US (1) US10935939B2 (ja)
JP (1) JP6514257B2 (ja)
CN (1) CN108693832B (ja)
DE (1) DE102018202654B4 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020039615A (ja) * 2018-09-11 2020-03-19 株式会社三洋物産 遊技機
JP2020039612A (ja) * 2018-09-11 2020-03-19 株式会社三洋物産 遊技機
JP2020039613A (ja) * 2018-09-11 2020-03-19 株式会社三洋物産 遊技機
JP2020039611A (ja) * 2018-09-11 2020-03-19 株式会社三洋物産 遊技機
WO2023053514A1 (ja) * 2021-09-28 2023-04-06 オムロン株式会社 制御装置、制御システム、および制御方法
WO2024181534A1 (ja) * 2023-03-02 2024-09-06 オムロン株式会社 制御対象に対するフィードフォワード制御に関する機械学習のための装置、教師データの生成プログラム、および教師データの生成方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6490131B2 (ja) * 2017-03-31 2019-03-27 ファナック株式会社 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法
JP6536978B1 (ja) * 2018-03-15 2019-07-03 オムロン株式会社 学習装置、学習方法、及びそのプログラム
JP6519896B1 (ja) * 2018-03-15 2019-05-29 オムロン株式会社 学習装置、学習方法、及びそのプログラム
CN109684727B (zh) * 2018-12-20 2023-04-25 华润电力技术研究院有限公司 孪生体模型构建方法、装置和计算机设备
JP7176645B2 (ja) * 2019-10-11 2022-11-22 株式会社タダノ 制御システムおよびクレーン
CN110703608B (zh) * 2019-11-18 2021-08-06 南京工业大学 一种液压伺服执行机构智能运动控制方法
US11880173B2 (en) * 2020-08-17 2024-01-23 5G3I Ltd Systems and methods for enhanced control of electronic circuits
US20220065135A1 (en) * 2020-08-25 2022-03-03 General Electric Company Gas turbine alignment assembly and method
US11886963B2 (en) * 2020-12-01 2024-01-30 OctoML, Inc. Optimizing machine learning models

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0484303A (ja) * 1990-07-27 1992-03-17 Hitachi Ltd サーボ制御装置
JP2010244256A (ja) * 2009-04-03 2010-10-28 Fanuc Ltd 干渉チェック機能を有する数値制御装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07210207A (ja) 1994-01-17 1995-08-11 Hitachi Ltd 適応制御装置
JP2004038428A (ja) 2002-07-02 2004-02-05 Yamatake Corp 制御対象モデル生成方法、制御パラメータ調整方法、制御対象モデル生成プログラムおよび制御パラメータ調整プログラム
US8868221B1 (en) 2008-08-22 2014-10-21 Marvell International Ltd. Adaptive neural net feed forward system and method for adaptive control of mechanical systems
CN102053628B (zh) 2009-10-27 2014-10-22 北京航空航天大学 基于神经网络的伺服控制系统及方法
JP5566469B2 (ja) 2010-10-27 2014-08-06 株式会社牧野フライス製作所 数値制御方法
JP5731933B2 (ja) 2011-08-30 2015-06-10 川崎重工業株式会社 適応制御装置および適応制御方法ならびに射出成形機の制御装置および制御方法
JP5646073B2 (ja) 2011-10-13 2014-12-24 三菱電機株式会社 サーボ制御装置
US10481565B2 (en) 2014-11-11 2019-11-19 Applied Brain Research Inc. Methods and systems for nonlinear adaptive control and filtering

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0484303A (ja) * 1990-07-27 1992-03-17 Hitachi Ltd サーボ制御装置
JP2010244256A (ja) * 2009-04-03 2010-10-28 Fanuc Ltd 干渉チェック機能を有する数値制御装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020039615A (ja) * 2018-09-11 2020-03-19 株式会社三洋物産 遊技機
JP2020039612A (ja) * 2018-09-11 2020-03-19 株式会社三洋物産 遊技機
JP2020039613A (ja) * 2018-09-11 2020-03-19 株式会社三洋物産 遊技機
JP2020039611A (ja) * 2018-09-11 2020-03-19 株式会社三洋物産 遊技機
WO2023053514A1 (ja) * 2021-09-28 2023-04-06 オムロン株式会社 制御装置、制御システム、および制御方法
TWI837636B (zh) * 2021-09-28 2024-04-01 日商歐姆龍股份有限公司 控制裝置、控制系統以及控制方法
WO2024181534A1 (ja) * 2023-03-02 2024-09-06 オムロン株式会社 制御対象に対するフィードフォワード制御に関する機械学習のための装置、教師データの生成プログラム、および教師データの生成方法

Also Published As

Publication number Publication date
CN108693832A (zh) 2018-10-23
DE102018202654B4 (de) 2024-07-04
US10935939B2 (en) 2021-03-02
US20180284703A1 (en) 2018-10-04
CN108693832B (zh) 2019-12-06
JP6514257B2 (ja) 2019-05-15
DE102018202654A1 (de) 2018-10-04

Similar Documents

Publication Publication Date Title
JP6514257B2 (ja) 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法
JP6490131B2 (ja) 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法
US10564619B2 (en) Machine learning device, servo control device, servo control system, and machine learning method
JP6474449B2 (ja) 調整装置及び調整方法
US10730182B2 (en) Action information learning device, robot control system and action information learning method
JP6538766B2 (ja) 機械学習装置、サーボモータ制御装置、サーボモータ制御システム、及び機械学習方法
JP6499720B2 (ja) 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法
US10824121B2 (en) Machine learning device, servo motor controller, servo motor control system, and machine learning method
JP6748135B2 (ja) 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法
CN108880399B (zh) 机器学习装置、伺服控制系统以及机器学习方法
JP6740279B2 (ja) 調整装置及び調整方法
JP2019185529A (ja) 機械学習装置、制御装置、及び機械学習方法
US11914333B2 (en) Machine learning device, servo control device, servo control system, and machine learning method
JP2009245420A (ja) システムを制御するための装置および方法
US20200005499A1 (en) Output device, control device, and evaluation function value output method
CN111033396B (zh) 用于模型预测控制的控制参数的设定方法
JP2018124929A (ja) 学習モデル構築装置、及び制御情報最適化装置
WO2021251226A1 (ja) 制御支援装置、制御装置及び制御支援方法
US10684594B2 (en) Machine learning device, servo motor controller, servo motor control system, and machine learning method
CN112975986B (zh) 基于径向基函数的机械臂点对点轨迹规划方法及装置
KR102570962B1 (ko) 로봇 제어 장치 및 이의 동작 방법
KR20200080976A (ko) Ai 기반 노치 필터의 파라미터 설정 장치 및 방법

Legal Events

Date Code Title Description
A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180731

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180820

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181127

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181219

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190411

R150 Certificate of patent or registration of utility model

Ref document number: 6514257

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150