Nothing Special   »   [go: up one dir, main page]

JP6469320B1 - サーボ制御装置 - Google Patents

サーボ制御装置 Download PDF

Info

Publication number
JP6469320B1
JP6469320B1 JP2018525798A JP2018525798A JP6469320B1 JP 6469320 B1 JP6469320 B1 JP 6469320B1 JP 2018525798 A JP2018525798 A JP 2018525798A JP 2018525798 A JP2018525798 A JP 2018525798A JP 6469320 B1 JP6469320 B1 JP 6469320B1
Authority
JP
Japan
Prior art keywords
servo control
correction
unit
servo
control cycle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018525798A
Other languages
English (en)
Other versions
JPWO2019092852A1 (ja
Inventor
剛志 津田
剛志 津田
佐藤 剛
剛 佐藤
慎哉 西野
慎哉 西野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6469320B1 publication Critical patent/JP6469320B1/ja
Publication of JPWO2019092852A1 publication Critical patent/JPWO2019092852A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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/404Numerical 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 control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • 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
    • G05B13/027Adaptive 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 using neural networks only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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/32Operator till task planning
    • G05B2219/32335Use of ann, neural network
    • 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/33027Artificial neural network 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/41Servomotor, servo controller till figures
    • G05B2219/41177Repetitive control, adaptive, previous error during actual positioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Feedback Control In General (AREA)
  • Numerical Control (AREA)
  • Control Of Position Or Direction (AREA)
  • Control Of Electric Motors In General (AREA)

Abstract

本発明は、指令位置に基づいてサーボモータを制御するサーボ制御装置(1)であって、ネットワークの構造を表すパラメータに基づいて処理を行う第1のニューラルネットワークを使用して指令位置を補正する補正部(13)と、補正部(13)から出力される補正後の指令位置に基づいてサーボモータ(3)を制御するサーボアンプ(11)と、を備え、補正部(13)は、補正後の指令位置およびサーボモータの実際の位置に基づいて前記指令位置を補正する。

Description

本発明は、工作機械等の制御対象を駆動するモータを駆動制御するサーボ制御装置に関する。
一般に、工作機械を駆動するモータを駆動制御するサーボ制御装置では、NC(Numerical Control:数値制御)装置、モーションコントローラなどの指令値生成装置から指令された位置、速度を実現するようにモータへの駆動電流の制御が行われている。特に、加工プログラムにて指示された移動軌跡上を加工工具が移動する場合、位置を精緻に管理しながらモータの駆動制御が行われる。モータの駆動制御においてはモータの回転方向が反転する際の摩擦外乱の影響で軌跡誤差が発生する問題がある。この軌跡誤差は、象限突起、ロストモーションと呼ばれ、これまで、軌跡誤差を抑制するための様々な方式が提案されている。
例えば、特許文献1に開示されている発明では、繰り返し動作を行う制御対象に対して、事前に動作させた際に発生した軌跡誤差の誤差量を記憶し、以降の同一プログラムを実行する際の補正量として扱い指令値を補正している。
また、特許文献2に開示されている発明では、トルクフィードバックループの中にニューラルネットワーク(NN:Neural Network)を配置し、NNの構成を時々刻々変化させることで、バックラッシにより生じる誤差を補正するよう構成している。
特許文献3に開示されている発明では、ロボットの手先振動を抑制するためにNNを用いて手先加速度の推定を行い、トルク指令を補正するよう構成している。
特開2004−234327号公報 米国特許第7080055号明細書 特開平6−35525号公報
特許文献1に記載の発明は、誤差の補正量を計算する目的で少なくとも1回は事前に加工プログラムを実行する必要がある。すなわち、新たな加工プログラムを実行する場合は、初回運転から高精度な制御を行うことができない問題があった。また、事前動作を行うことにより機械が占有され、生産性が低下するという問題があった。さらに、加工プログラムの長さに応じた補正データが必要となるため、長時間加工を行うプログラムの場合には膨大な補正データを蓄積しておく必要があった。
特許文献2に記載の発明は、補正量計算に加えてNN構成の更新処理を行うため、学習対象(バックラッシなど)の挙動がより複雑な構成となる場合などNNの構成を複雑にする必要が出てきた場合に、補正量計算での処理負荷以上に高くなることが考えられる。これにより、NN処理以外のモータを制御するための処理にも影響を及ぼし、所定周期でのモータ制御ができなくなる問題が生じる。特許文献2に記載の発明では、制御ブロックの一部としてNNを構成しているため、処理の分散化を行うことが難しいといった問題があった。
特許文献3に記載の発明では、NNでの推定結果を用いたトルク補正を実行すると、NNが学習対象としている制御対象(ロボットの手先)の特性が変化することになり、過去の測定データや学習結果に基づいて決定したパラメータを持つNNを継続して補正処理に使用することが出来なくなる、又はNNを継続して補正処理に使用したとしても補正精度が低下してしまう。また、NNでの推定結果を用いたトルク補正を実行している間、加速度センサを外してしまうため学習を継続できる構成になっていない。仮に、加速度センサを取り付けたままNNの学習を継続しようとしても、NNを用いたトルク補正の実行の有無によって制御対象(ロボットの手先)の挙動が異なることになる。すなわち、NNを用いたトルク補正の実行の有無によって制御対象の特性が変化することになるため、過去の測定データおよび学習結果を活用することができない。そのため、NNでの補正と、NNの学習を同時に継続的に行うことができない問題があった。
本発明は、上記に鑑みてなされたものであって、第1の目的は、NNを使用して補正処理をしても、補正精度を低下させずに過去の測定データおよび学習結果を活用したNNによる補正処理を継続可能なサーボ制御装置を得ることを目的とする。また、第2の目的は、NNでの補正と、NNの学習とを同時に継続的に行っても、NN処理以外のモータを制御するための処理に影響を及ぼさずに補正処理で使用するパラメータを更新することが可能なサーボ制御装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明では、予め決められた時間間隔である指令値生成制御周期で入力される指令位置に基づいて、予め決められた時間間隔であるサーボ制御周期でサーボモータを制御するサーボ制御装置であって、指令位置を補正する補正部と、補正部から出力される補正後の指令位置に基づいてサーボモータを制御するサーボアンプと、を備え、補正部は、ネットワークの構造を表すパラメータに基づいて処理を行う第1のニューラルネットワークを使用して前回のサーボ制御周期における補正後の指令位置および今回のサーボ制御周期におけるサーボモータの実際の位置に基づき1指令値生成制御周期以上先のサーボモータの実際の位置を予測し、予測結果に基づいて今回のサーボ制御周期における補正前の指令位置を補正することとした。
本発明にかかるサーボ制御装置は、NNを使用して補正処理をしても、過去の測定データおよび学習結果を活用したNNによる補正処理を継続することができる、という効果を奏する。
実施の形態1にかかるサーボ制御装置の構成例を示す図 実施の形態1にかかるサーボ制御装置の他の構成例を示す図 実施の形態2にかかるサーボ制御装置の構成例を示す図 実施の形態2にかかるサーボ制御装置の他の構成例を示す図 実施の形態3にかかる補正部の構成例を示す図 通信遅れが生じない場合の補正部の構成例を示す図 実施の形態3にかかる補正部の動作手順の一例を示すフローチャート 実施の形態1〜3にかかるサーボ制御装置を実現する処理回路を示す図
以下に、本発明の実施の形態にかかるサーボ制御装置を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、本発明の実施の形態1にかかるサーボ制御装置の構成例を示す図である。実施の形態1にかかるサーボ制御装置1は、指令値生成部2で生成される指令位置に基づいて、サーボモータ3を駆動するための電圧を生成し、サーボモータ3に印加する。指令位置は、サーボモータ3の位置を指令する指令値である。サーボ制御装置1は、サーボアンプ11、学習部12および補正部13を備える。
なお、指令値生成部2は、予め決められた時間間隔である指令値生成制御周期間隔でサーボモータ3への指令位置を出力する装置で構成される。指令値生成部2は、例えば数値制御装置で実現され、公知の技術を用いて位置指令を生成する。
サーボ制御装置1は、予め決められた時間間隔であるサーボ制御周期間隔でサーボモータ3の位置、速度および加速度を制御する装置であり、指令値生成部2で生成された指令位置にサーボモータ3の実際の位置が一致するように制御を行う。なお、サーボアンプ11は、実際には、後述する補正部13で補正が行われた後の指令位置にサーボモータ3の実際の位置が一致するよう、制御を行う。指令値生成部2が指令位置を生成する指令値生成制御周期と、サーボ制御装置1がサーボモータ3を制御するサーボ制御周期は、同一周期であってもよいし、異なる周期であってもよい。これらが異なる周期の場合には、周期の違いを補償する手段をサーボ制御装置1に設けてもよい。例えば、サーボ制御装置1は、指令値生成2から入力される最新の指令位置を保持する手段を備え、保持している指令位置すなわち最新の指令位置にサーボモータ3の実際の位置が一致するように制御を行う。以下、説明が煩雑化するのを防止するため、「サーボモータ3の実際の位置」を単に「サーボモータ3の位置」と表現する場合がある。
サーボモータ3は、図示しないボールねじなどの動力伝達機構を介して工作機械の駆動制御を行うための駆動装置であり、サーボアンプ11から電圧の印加を受けて回転する。サーボモータ3には、エンコーダ等の位置検出器が取り付けられており、位置検出器はサーボモータ3の位置を検出する。位置検出器は、検出した位置をサーボ制御装置1に出力する。位置検出器が検出した位置は、サーボ制御装置1内のサーボアンプ11、学習部12および補正部13に入力される。
サーボ制御装置1の学習部12には、サーボモータ3に取り付けられた位置検出器で検出された、サーボモータ3の位置の他に、補正部13で前回のサーボ制御周期において補正された後の指令位置が入力される。図1に示したように、補正部13で前回のサーボ制御周期において補正された後の指令位置はサーボアンプ11に入力される指令位置である。学習部12はニューラルネットワーク(以下、NNと記載する)を備え、入力された今回のサーボ制御周期におけるサーボモータ3の位置および前回のサーボ制御周期におけるにおいて補正された指令位置を用いて、予め定めておいた時刻である一定時刻先のサーボモータ3の位置を予測するための学習を実施する。具体的には、学習部12は、NNのネットワーク構造を表すパラメータを学習により決定し、学習結果として保存する。ネットワーク構造を表すパラメータとしては、重みパラメータ、バイアスパラメータなどが該当する。学習部12は誤差逆伝播法とも呼ばれるバックプロパゲーション等の公知の技術を用いて各パラメータを計算する。一般に、ネットワークの構成が複雑になると多くの計算時間を要する。学習部12は、上述した指令値生成制御周期およびサーボ制御周期のいずれとも異なる周期(以下、学習周期と称する)で各パラメータの計算を実行してもよい。学習周期は、指令値生成制御周期およびサーボ制御周期のいずれの周期よりも長いものとする。
サーボ制御装置1は、学習部12による学習結果であるNNのネットワーク構造を表すパラメータを、学習部12の内部、または、学習部12の外部の記憶領域に保存しておく。これにより、サーボ制御装置1でどのようなネットワーク構造が採用されているかの確認をユーザが行うことが可能となる。
なお、学習部12は、サーボモータ3の位置の代わりに、サーボモータ3の位置、速度または加速度、サーボモータ3に流れるモータ電流、サーボアンプ11の内部で計算されるモデル位置などを組み合わせて学習を行う構成であってもよい。
モデル位置は、計算により求めたサーボモータ3のおおよその位置であり、今回のサーボ制御周期におけるサーボモータ3の実際の位置を推定したものである。モデル位置は、前回のサーボ制御周期において補正された指令位置をサーボモータ3の構造を模擬したサーボモデルに通すことで推定することが可能である。このサーボモデルは、単純には、位置ループゲインに応じたカットオフ周波数を有する1次遅れフィルタとして定義されるものであり、一般には低域通過特性を有するフィルタとして扱うことができる。
計算により得られるモデル位置と今回のサーボ制御周期におけるサーボモータ3の実際の位置とを比較することで、サーボモデルでモデル化できない特徴であるモデル位置誤差を抽出することが可能となる。モデル位置誤差は、モデル位置と今回のサーボ制御周期におけるサーボモータ3の実際の位置との誤差である。
学習部12がモデル位置誤差を用いて学習を行う場合について説明する。この場合のサーボ制御装置の構成は図2に示したものとなる。図2は、実施の形態1にかかるサーボ制御装置の他の構成例を示す図である。図2に示したサーボ制御装置1aは、図1に示したサーボ制御装置1と同様に、サーボアンプ11、学習部12および補正部13を備える。ただし、サーボ制御装置1aでは、サーボアンプ11が、上述した方法でモデル位置誤差を計算して学習部12へ出力する。学習部12は、補正部13から入力される前回のサーボ制御周期において補正された指令位置と、サーボアンプ11から入力されるモデル位置誤差とを用いて、NNのネットワーク構造を表すパラメータを計算する。サーボ制御装置1とサーボ制御装置1aは異なる情報を用いてサーボモータ3を制御するものであるが、制御動作そのものは同様である。そのため、サーボ制御装置1aの詳細説明については省略する。
学習部12における学習結果は、予め設定された学習周期の間隔で補正部13に転送される。なお、学習部12での学習に必要な処理時間を踏まえて学習周期を設定するようにしても構わない。
補正部13は、学習部12と同様にNNを備え、学習部12での学習結果である、重みパラメータなどを使用し、一定時刻先のサーボモータ3の位置の予測を行う。このとき、補正部13は、サーボアンプ11に出力する前回のサーボ制御周期における補正後の指令位置と、今回のサーボ制御周期におけるサーボモータ3の実際の位置とに基づいてNN計算(推論処理)を行い、一定時刻先のサーボモータ3の位置を予測する。また、補正部13は、一定時刻先のサーボモータ3の位置の予測を行った後、一定時刻先のサーボモータ3の位置を用いて、サーボモータ3の位置が指令位置に一致するように今回のサーボ制御周期における補正前の指令位置の補正量を計算し、今回のサーボ制御周期における補正前の指令位置を補正する。なお、補正部13が備えるNNは第1のニューラルネットワークに該当し、学習部12が備えるNNは第2のニューラルネットワークに該当する。
また、上述したように、学習周期で学習部12が学習を行い、学習結果を補正部13に出力するため、補正部13は、学習部12から学習結果を受け取るごとに、すなわち学習周期ごとに、NNのネットワーク構造を表すパラメータを更新する。この結果、補正部13で用いるNNのネットワーク構造を表すパラメータと、学習部12が学習で使用したNNのネットワーク構造を表すパラメータとが同一となる。
補正部13は、例えば、摩擦外乱の影響を最小化するように、前回のサーボ制御周期における補正後の指令位置を入力とし、今回のサーボ制御周期におけるサーボモータ3の位置を出力とする伝達関数を計算し、その逆伝達関数への入力をサーボモータ3の位置の誤差とすることで補正量を求めることが可能である。サーボモータ3の位置の誤差とは、今回のサーボ制御周期におけるサーボモータ3の実際の位置と前回のサーボ制御周期における補正後の指令位置との誤差である。指令位置が高周波数成分を有する場合には、低域通過フィルタなどのフィルタを通して高周波成分を除去すればよい。このとき、サーボモータ3の位置の誤差と、サーボモータ3により駆動される工作機械の振動を低減する振動低減効果とはトレードオフの関係となる。そのため、補正部13は、制御対象の工作機械に応じて伝達関数の設定を変更すればよい。
以上のように、本実施の形態にかかる、図1に示したサーボ制御装置1は、NNを使用して指令位置を補正する補正部13と、補正後の指令位置に基づいてサーボモータ3を制御するサーボアンプ11と、前回のサーボ制御周期における補正後の指令位置および今回のサーボ制御周期におけるサーボモータ3の実際の位置に基づいて、補正部13を構成するNNの構造を表すパラメータを決定する学習部12とを備える。また、図2に示したサーボ制御装置1aの学習部12は、前回のサーボ制御周期における補正後の指令位置およびモデル位置誤差に基づいて、補正部13を構成するNNの構造を表すパラメータを決定する。これにより、補正部13が補正処理を実行中に、補正部13を構成するNNの構造を表すパラメータを変更し、補正処理の性能を向上させることができる。
図1および図2に示したサーボ制御装置1および1aでは、学習部12に対して前回のサーボ制御周期における補正後の指令位置を入力することで学習処理を行う構成としている。これより、補正部13を含まない範囲の挙動を学習することが可能なる。つまり、学習部12は、前回のサーボ制御周期における補正後の指令位置と今回のサーボ制御周期におけるサーボモータ3の実際の位置との関係を学習することができ、その範囲に補正部13の挙動が含まれないようにすることができる。これにより、指令位置の補正を停止している状態だけでなく、指令位置の補正を実行している間であっても、サーボモータ3の入出力関係を模擬したNNの構造を学習部12が学習することが可能となる。すなわち、サーボアンプ11への入力である前回のサーボ制御周期における補正後の指令位置と今回のサーボ制御周期におけるサーボモータ3の実際の位置との間の関係を監視してモデル化し、NNのネットワーク構造を表すパラメータを決定する制御に関わる処理が、補正部13へ指令位置が入力されてからサーボアンプ11がサーボモータ3に印加する電圧を生成するまでの処理の外側で行われるため、指令位置の補正処理の特性を変化させずに学習を継続することが可能となる。
また、ネットワーク構造をNNとしたことで、NNで機械特性を含むサーボ制御系の特性を学習することができ、類似の動作パターンも学習することとなる。これにより、過去に実行したことのない加工プログラムであっても、過去に実行したことがある加工プログラムのうち、類似性の高いものを参考に適切な補正量を得ることが可能となり、加工プログラムを実行後の初品加工から高精度に制御を行うことができる。よって、事前動作を行うことによる生産性の低下を防止することができるといった、格別な効果を奏することが可能となる。
また、これまでは人の手で行っていた、指令位置の補正処理用いる制御パラメータの調整が不要となる。
実施の形態2.
次に、実施の形態2にかかるサーボ制御装置について説明する。以下では、実施の形態1と異なる部分を中心に説明する。
実施の形態1では、予め設定された学習周期で学習を行い、指令位置の補正に用いるパラメータを更新するサーボ制御装置についての説明を行った。これに対して、本実施の形態にかかるサーボ制御装置では、経年劣化に伴う機械特性の変化、制御パラメータの変更などに伴い、学習を行うタイミングを自動判別する。
図3は、実施の形態2にかかるサーボ制御装置の構成例を示す図である。図3では、図1に示したサーボ制御装置1と同じ構成要素に同じ符号を付している。
実施の形態2にかかるサーボ制御装置1bは、サーボアンプ11、学習部12b、補正部13および判定部14を備える。すなわち、サーボ制御装置1bは、サーボ制御装置1の学習部12を学習部12bに置き換え、判定部14を追加した構成である。
学習部12bは、学習部12と同様のタイミングおよび同様の方法で学習を行い、判定部14から指示を受けた場合に、学習結果であるパラメータを補正部13に出力する。
判定部14には指令値生成部2が生成した指令位置と、今回のサーボモータ3の位置とが入力される。判定部14は、入力された指令位置およびサーボモータ3の位置に基づいて、学習部12bによる学習結果を補正部13に適用するタイミングか否か、すなわち、補正部13が備えるNNのネットワーク構造を表すパラメータを更新する必要があるか否かを判定する。具体的には、判定部14は、今回の判定周期におけるサーボモータ3の位置と今回の判定周期における指令位置との誤差が予め設定しておいたしきい値を超過したか否かを予め設定されている判定周期間隔で確認する。なお、判定周期間隔ではなく実施の形態1で説明したサーボ制御周期間隔でもよい。そして、判定部14は、上記誤差が上記しきい値を超過した場合、学習部12bに対して、学習結果を補正部13に出力するよう指示する。
これにより、サーボ制御装置1bは、サーボモータ3が駆動する機械の特性が経年変化した場合、サーボモータ3の位置と指令位置との誤差が拡大したことを検出し、最新の学習結果を使用することで最新の特性を加味した補正を行うことが可能となる。
また、判定部14は、学習部12bによる学習結果を補正部13に適用するか否かの判定を行うだけでなく、学習部12bが学習を行うか否かの判定を行うようにしてもよい。この場合、判定部14は、上記の誤差が上記のしきい値を超過した場合、学習部12bに対して、学習の実行を指示する。この指示を受けた学習部12bは、学習を実行し、学習結果を補正部13に出力する。この場合、学習部12bにおける計算負荷が低減されるため、効率的な運用を実現できる。
このように、学習部12bにおいて学習結果を逐次更新することで学習部12bの計算負荷および補正部13が学習結果を反映させるための処理負荷が高くなってしまう問題に対して、学習の実行頻度を下げることで、効率的に最新の学習結果を用いた補正を行うことが可能となる。
なお、判定部14は、サーボモータ3の位置と補正前の指令位置との誤差を監視するだけではなく、サーボモータ3を構成するパラメータ、具体的には位置ゲインおよび速度ゲインといったパラメータの変化を監視して、パラメータ変化後の状態における学習部12bの学習が完了するまで、補正部13での補正量の算出処理を停止させるようにしてもよい。これより、学習結果と制御特性のミスマッチを避けることができるようになる。
なお、図1に示したサーボ制御装置1に対して判定部14の追加などを行う場合の例を説明したが、図2に示したサーボ制御装置1aに対して判定部14の追加などを行ってもよい。この場合、図4に示した構成となる。図4に示したサーボ制御装置1cは、サーボ制御装置1aの学習部12を上述した学習部12bに置き換え、さらに、上述した判定部14を追加した構成である。
このように、本実施の形態にかかるサーボ制御装置1bおよび1cは、補正部13を構成するNNの構造を表すパラメータを更新する必要があるか否かを判定する判定部14を備える。これにより、学習部12bでの学習結果が適切、かつ、効率よく補正部13で使用されることを実現でき、位置指令の補正精度が劣化するのを防止できる。
実施の形態3.
本実施の形態では、実施の形態1,2で説明したサーボ制御装置が備えている補正部13の詳細について説明する。補正部13以外については実施の形態1,2と同様であるため、説明を省略する。
図5は、実施の形態3にかかる補正部の構成例を示す図である。図5に示したように、補正部13は、遅延器131、加算器132,134および推論器133を備える。詳細については後述するが、推論器133は補正量を算出する。また、推論器133への入力経路および出力経路では信号の遅延すなわち通信遅れが生じるものとする。このような通信遅れは、推論器133が、サーボ制御を実行する装置とは異なる装置、または、異なる処理回路で実現される場合に発生することが考えられる。ただし、通信遅れ時間は、一定の遅れ時間となるように構成されるものであり、遅れ時間が制御周期を超えて大きく変動するものではない。
遅延器131は、予め遅れ時間を指定することで信号の出力を遅らせることが可能な回路である。すなわち、遅延器131は、指令値生成部2が生成した指令位置が入力されると、これを予め決められた時間だけ遅延させてから加算器132へ出力する。遅延器131が指令位置に対して遅延を与えることにより、例えば、ある指令位置に対して補正量を加算して得られる補正後の指令位置が推論器133に届くタイミングとサーボアンプ11に補正後の指令位置が届くタイミングとの差を調整することが可能となる。遅延器131は、指令位置の更新周期と指令位置に与える遅延時間とに基づいて決まるサイズ以上の記憶領域を有する。
遅延器131が入力された指令位置に与える遅延時間は、外部から入力される指令位置が推論器133に入力する経路で発生する通信遅れ時間と、推論器133から加算器132までの経路で発生する通信遅れ時間と、に基づく値とする。
なお、遅延器131は、入力された指令位置を遅延させることなく出力する設定とすることも可能とする。この場合、補正部13は、図6に示した構成となる。図6は、通信遅れが生じない場合の補正部の構成例を示す図である。図6に示した補正部13dは、推論器133および加算器135を備える。推論器133は、図5に示した推論器133と同じものである。推論器133への信号の入力経路および推論器133からの信号の出力経路において通信遅れが発生しない、または、問題とならない場合、図6に示した構成の補正部13dとしてもよい。
図5の説明に戻り、加算器132は、遅延器131を介して入力された今回のサーボ制御周期における補正前の指令位置に対して推論器133から入力された補正量を加算し、今回のサーボ制御周期における補正前の指令位置を補正する。加算器132は、推論器133で計算された補正量を今回のサーボ制御周期における補正前の指令位置に加算することによりサーボアンプ11へ出力する今回のサーボ制御周期における補正後の指令位置を生成する第1の加算器である。加算器134は、入力された指令位置に対して推論器133から入力された補正量を加算し、指令位置を補正する。加算器134は、推論器133で計算された補正量を今回のサーボ制御周期における補正前の指令位置に加算することにより推論器133へ入力させる今回のサーボ制御周期における補正後の指令位置を生成する第2の加算器である。加算器132および134は、遅延器としての機能も有し、指令位置と補正量とを加算するタイミングを調整可能な構成であってもよい。
推論器133はNNで構成され、NNのネットワーク構造は学習部12,12bから受け取った学習結果に従う。
推論器133は、今回のサーボ制御周期におけるサーボモータ3の実際の位置と、加算器134を介して入力された前回のサーボ制御周期における補正後の指令位置とに基づいて、少なくとも1指令値生成周期以上先のサーボモータ3の位置を予測し、さらに、予測結果を用いて補正量を計算する。推論器133が行う補正量の計算は、実施の形態1でも説明したように、前回のサーボ制御周期における補正後の指令位置を入力とし、今回のサーボ制御周期におけるサーボモータ3の位置を出力とする伝達関数を使用するなど、公知の技術を用いて行う。1指令値生成制御周期以上先の時刻である先読み時間は、推論器133への入出力結果を得るまでの通信遅れを加味した時間とする。推論器133は、計算した補正量を加算器132および134に出力する。
図7は、実施の形態3にかかる補正部13の動作手順の一例を示すフローチャートである。補正部13は、図7に示した手順で処理を実行し、入力された指令位置を補正する。
まず、補正部13は、外部から受け取った指令位置を加算器134および遅延器131に入力する(ステップS1)。このとき、加算器134に到達するまでの通信経路では通信遅れが発生し、遅延器131に指令位置が入力されるタイミングよりも遅れて加算器134に指令位置が入力されることとなる。
次に、推論器133が、学習部12,12bから受け取った学習結果を用いて一定時刻先のサーボモータ3の位置の予測を行い、一定時刻先の補正量の計算を行う(ステップS2)。
次に、推論器133が、計算した補正量を加算器134および132に出力する(ステップS3)。
次に、加算器134が、次の時刻の指令位置に補正量を加算する。これは、推論器133に前回のサーボ制御周期における補正後の指令位置が入力されることに相当する。また、加算器132が、遅延器131で遅延が与えられた後の今回のサーボ制御周期における補正前の指令位置に補正量を加算することにより今回のサーボ制御周期における補正前の指令位置を補正する(ステップS4)。なお、加算器134から出力される指令位置と、加算器132から出力される指令位置は、出力されるタイミングが異なるものの、同じ値となるように構成されるものである。
このように、本実施の形態にかかるサーボ制御装置の補正部は、指令位置が入力されるタイミングに遅延を与え、指令位置に補正量が加算されるタイミングを調整する遅延器、を備える。これにより、指令位置が伝送される経路で遅延が発生する場合であっても、指令位置に補正量が加算されるタイミングを適切なタイミングに調整することが可能となる。
次に、各実施の形態で説明したサーボ制御装置の補正部、学習部および判定部を実現するハードウェアの構成について説明する。
実施の形態1〜3で説明した補正部13、学習部12,12bおよび判定部14は、図8に示した処理回路100で実現可能である。
処理回路100は、プロセッサ101、メモリ102、入力回路103および出力回路104を含んで構成されている。プロセッサ101は、CPU(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサ、DSPともいう)、システムLSI(Large Scale Integration)などである。メモリ102は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリー、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)等の、不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスクまたはDVD(Digital Versatile Disc)等である。
補正部13、学習部12,12bおよび判定部14は、それぞれに対応するプログラムをメモリ102から読み出してプロセッサ101が実行することにより実現できる。入力回路103は、プロセッサ101が処理する情報、メモリ102が記憶する情報などを外部から受け取る際に使用し、出力回路104は、プロセッサ101が生成した情報、メモリ102が記憶している情報を外部へ出力する際に使用する。
なお、補正部13と学習部12または12bとを別々の処理回路100で実現してもよい。この場合、補正部13は実施の形態3で説明した構成となり、処理回路100は図5に示した推論器133を実現される。すなわち、実施の形態3にかかる補正部13は、処理回路100に加えて、遅延器および加算器により実現される。
なお、サーボアンプ11は、外部から供給される電圧を変換してサーボモータ3に印加する電圧を生成する変換回路、変換回路を制御する制御回路などを含む専用の回路で実現される。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
1,1a,1b,1c サーボ制御装置、2 指令値生成部、3 サーボモータ、11 サーボアンプ、12,12b 学習部、13,13d 補正部、14 判定部、131 遅延器、132,134,135 加算器、133 推論器。

Claims (8)

  1. 予め決められた時間間隔である指令値生成制御周期で入力される指令位置に基づいて、予め決められた時間間隔であるサーボ制御周期でサーボモータを制御するサーボ制御装置であって、
    記指令位置を補正する補正部と、
    前記補正部から出力される補正後の指令位置に基づいて前記サーボモータを制御するサーボアンプと、
    を備え、
    前記補正部は、ネットワークの構造を表すパラメータに基づいて処理を行う第1のニューラルネットワークを使用して前回のサーボ制御周期における補正後の指令位置および今回のサーボ制御周期における前記サーボモータの実際の位置に基づき1指令値生成制御周期以上先のサーボモータの実際の位置を予測し、予測結果に基づいて今回のサーボ制御周期における補正前の指令位置を補正する
    ことを特徴とするサーボ制御装置。
  2. 前回のサーボ制御周期における補正後の指令位置および今回のサーボ制御周期における前記サーボモータの実際の位置に基づいて前記パラメータを決定する学習部、
    をさらに備えることを特徴とする請求項に記載のサーボ制御装置。
  3. 前記学習部は、第2のニューラルネットワークを使用して前記パラメータを決定する、
    ことを特徴とする請求項に記載のサーボ制御装置。
  4. 前記学習部は、前回のサーボ制御周期における補正後の指令位置と、前回のサーボ制御周期における補正後の指令位置を用いて計算した今回のサーボ制御周期における前記サーボモータの実際の位置を推定したものであるモデル位置と今回のサーボ制御周期における前記サーボモータの実際の位置との誤差を表すモデル位置誤差と、に基づいて前記パラメータを決定する、
    ことを特徴とする請求項に記載のサーボ制御装置。
  5. 前記学習部は、前記指令値生成制御周期および前記サーボ制御周期とは異なる予め設定された学習周期で前記パラメータを決定する、
    ことを特徴とする請求項からのいずれか一つに記載のサーボ制御装置。
  6. 前記学習部は、前記パラメータを決定した場合、決定した前記パラメータを前記補正部に適用する、
    ことを特徴とする請求項からのいずれか一つに記載のサーボ制御装置。
  7. 記学習部が決定した前記パラメータを前記補正部に適用するタイミングを予め設定された判定周期で判定する判定部、
    をさらに備え、
    前記判定部は、今回の判定周期における指令位置および今回の判定周期における前記サーボモータの実際の位置に基づいて、前記タイミングを判定し、
    前記学習部は、決定した前記パラメータを前記判定部での判定結果に従い前記補正部に適用する、
    ことを特徴とする請求項からのいずれか一つに記載のサーボ制御装置。
  8. 前記補正部は、
    前回のサーボ制御周期における補正後の指令位置および今回のサーボ制御周期における前記サーボモータの実際の位置に基づき1指令値生成制御周期以上先のサーボモータの実際の位置を予測し、予測結果に基づいて今回のサーボ制御周期における補正前の指令位置の補正量を計算する推論器と、
    今回のサーボ制御周期における補正前の指令位置を遅延させる遅延器と、
    前記推論器で計算された補正量を前記遅延器により遅延された今回のサーボ制御周期における補正前の指令位置に加算することにより今回のサーボ制御周期における補正後の指令位置を生成し、前記サーボアンプへ出力する第1の加算器と
    記推論器で計算された補正量を今回のサーボ制御周期における補正前の指令位置に加算することにより前回のサーボ制御周期における補正後の指令位置を生成し、前記推論器へ入力させる第2の加算器と、
    を備えることを特徴とする請求項1から7のいずれか一つに記載のサーボ制御装置。
JP2018525798A 2017-11-10 2017-11-10 サーボ制御装置 Active JP6469320B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/040610 WO2019092852A1 (ja) 2017-11-10 2017-11-10 サーボ制御装置

Publications (2)

Publication Number Publication Date
JP6469320B1 true JP6469320B1 (ja) 2019-02-13
JPWO2019092852A1 JPWO2019092852A1 (ja) 2019-11-21

Family

ID=65356122

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018525798A Active JP6469320B1 (ja) 2017-11-10 2017-11-10 サーボ制御装置

Country Status (5)

Country Link
US (1) US20190361421A1 (ja)
JP (1) JP6469320B1 (ja)
CN (1) CN110023857B (ja)
DE (1) DE112017001162B4 (ja)
WO (1) WO2019092852A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020217597A1 (ja) * 2019-04-22 2020-10-29 三菱電機株式会社 サーボ制御装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6856591B2 (ja) * 2018-09-11 2021-04-07 ファナック株式会社 制御装置、cnc装置及び制御装置の制御方法
WO2021106237A1 (ja) * 2019-11-25 2021-06-03 三菱電機株式会社 制御装置及びロボットシステム
JP7563250B2 (ja) 2021-03-11 2024-10-08 オムロン株式会社 制御システム、予測モデル生成装置、及びコンピュータプログラム

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01211102A (ja) * 1988-02-19 1989-08-24 Tokico Ltd ロボットの制御装置
JPH03259303A (ja) * 1990-03-09 1991-11-19 Hitachi Ltd 学習制御装置
JPH0484303A (ja) * 1990-07-27 1992-03-17 Hitachi Ltd サーボ制御装置
JPH04362703A (ja) * 1991-06-10 1992-12-15 Okuma Mach Works Ltd ロストモーション補正機能を有する数値制御装置
JPH0699373A (ja) * 1992-09-21 1994-04-12 Toyoda Mach Works Ltd ロボット制御装置
JPH06131006A (ja) * 1992-10-19 1994-05-13 Toshiba Corp サーボ制御装置
JPH06274228A (ja) * 1993-03-18 1994-09-30 Mitsubishi Electric Corp 数値制御装置
JPH075904A (ja) * 1991-07-16 1995-01-10 Toshiba Corp ニューラルネットワーク制御装置
JP2003044102A (ja) * 2001-08-01 2003-02-14 Yaskawa Electric Corp 学習制御方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0635525A (ja) 1992-07-16 1994-02-10 Tsubakimoto Chain Co ロボットアームの制御方法
JPH0643944A (ja) * 1992-07-23 1994-02-18 Tsubakimoto Chain Co 防振制御方法
EP0589394A1 (en) 1992-09-21 1994-03-30 Toyoda Koki Kabushiki Kaisha Method and apparatus for controlling a robot using a neural network
US6611823B1 (en) * 2000-04-20 2003-08-26 Board Of Regents, The University Of Texas System Backlash compensation using neural network
US7080055B2 (en) 2000-10-03 2006-07-18 Board Of Regents, The University Of Texas System Backlash compensation with filtered prediction in discrete time nonlinear systems by dynamic inversion using neural networks
JP4183057B2 (ja) * 2001-03-01 2008-11-19 三菱電機株式会社 数値制御システム
JP3805309B2 (ja) * 2003-01-30 2006-08-02 ファナック株式会社 サーボモータ駆動制御装置
JP4741637B2 (ja) * 2008-06-30 2011-08-03 ファナック株式会社 サーボモータの駆動制御装置及び駆動制御方法
JP6193961B2 (ja) 2015-11-30 2017-09-06 ファナック株式会社 機械の送り軸の送りの滑らかさを最適化する機械学習装置および方法ならびに該機械学習装置を備えたモータ制御装置
CN105652666B (zh) * 2016-03-09 2018-09-11 中南大学 基于bp神经网络的大型模锻压机上横梁速度预测控制方法
JP6542713B2 (ja) * 2016-06-09 2019-07-10 ファナック株式会社 異常負荷検出の閾値を学習する機械学習器,数値制御装置および機械学習方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01211102A (ja) * 1988-02-19 1989-08-24 Tokico Ltd ロボットの制御装置
JPH03259303A (ja) * 1990-03-09 1991-11-19 Hitachi Ltd 学習制御装置
JPH0484303A (ja) * 1990-07-27 1992-03-17 Hitachi Ltd サーボ制御装置
JPH04362703A (ja) * 1991-06-10 1992-12-15 Okuma Mach Works Ltd ロストモーション補正機能を有する数値制御装置
JPH075904A (ja) * 1991-07-16 1995-01-10 Toshiba Corp ニューラルネットワーク制御装置
JPH0699373A (ja) * 1992-09-21 1994-04-12 Toyoda Mach Works Ltd ロボット制御装置
JPH06131006A (ja) * 1992-10-19 1994-05-13 Toshiba Corp サーボ制御装置
JPH06274228A (ja) * 1993-03-18 1994-09-30 Mitsubishi Electric Corp 数値制御装置
JP2003044102A (ja) * 2001-08-01 2003-02-14 Yaskawa Electric Corp 学習制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020217597A1 (ja) * 2019-04-22 2020-10-29 三菱電機株式会社 サーボ制御装置
JPWO2020217597A1 (ja) * 2019-04-22 2021-10-28 三菱電機株式会社 サーボ制御装置
JP7034383B2 (ja) 2019-04-22 2022-03-11 三菱電機株式会社 サーボ制御装置

Also Published As

Publication number Publication date
US20190361421A1 (en) 2019-11-28
CN110023857B (zh) 2020-06-16
CN110023857A (zh) 2019-07-16
DE112017001162T5 (de) 2019-08-14
DE112017001162B4 (de) 2022-06-15
JPWO2019092852A1 (ja) 2019-11-21
WO2019092852A1 (ja) 2019-05-16

Similar Documents

Publication Publication Date Title
JP6469320B1 (ja) サーボ制御装置
US10481566B2 (en) Machine learning device, servo control device, servo control system and machine learning method
JP4575508B1 (ja) デュアル位置フィードバック制御を行うサーボ制御装置
JP6514257B2 (ja) 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法
JP5791815B2 (ja) 工作機械の送り軸制御方法および送り軸制御装置
JP2017102617A (ja) 補正装置、補正装置の制御方法、情報処理プログラム、および記録媒体
JP4235210B2 (ja) サーボモータの制御装置
JP2004227163A (ja) サーボ制御装置
JP6740279B2 (ja) 調整装置及び調整方法
JP6457569B2 (ja) サーボモータ制御装置、サーボモータ制御方法、及びサーボモータ制御用プログラム
CN108693829B (zh) 控制装置
US20190022861A1 (en) Control device, method of controlling control device, and recording medium
TWI733738B (zh) 結合多致動器的比例積分微分控制方法與系統
JP2018151889A (ja) 処理装置、パラメータ調整方法、及びパラメータ調整プログラム
JP6806746B2 (ja) モータ制御装置
JP6412071B2 (ja) モータ制御装置、モータ制御方法及びモータ制御用プログラム
JP2002091570A (ja) サーボ制御方法
CN107807519B (zh) 伺服电动机控制装置、伺服电动机控制方法以及记录介质
JP6930868B2 (ja) サーボ制御装置、サーボ制御方法及びシステム
JP2006018431A (ja) サーボ制御装置
US10354683B2 (en) Servo control method having first and second trajectory generation units
JP2014176291A (ja) 工作機械の送り軸制御方法および送り軸制御装置
CN117378139B (zh) 控制器、控制系统
WO2004077179A1 (ja) サーボ制御装置
JPH08171402A (ja) 適応型制御方法およびその装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180517

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180517

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180807

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181005

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190115

R150 Certificate of patent or registration of utility model

Ref document number: 6469320

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250