JP2018041149A - モデル予測制御装置、モデル予測制御装置の制御方法、情報処理プログラム、および記録媒体 - Google Patents

モデル予測制御装置、モデル予測制御装置の制御方法、情報処理プログラム、および記録媒体 Download PDF

Info

Publication number
JP2018041149A
JP2018041149A JP2016172850A JP2016172850A JP2018041149A JP 2018041149 A JP2018041149 A JP 2018041149A JP 2016172850 A JP2016172850 A JP 2016172850A JP 2016172850 A JP2016172850 A JP 2016172850A JP 2018041149 A JP2018041149 A JP 2018041149A
Authority
JP
Japan
Prior art keywords
value
prediction error
model
control
time
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
JP2016172850A
Other languages
English (en)
Other versions
JP6859633B2 (ja
Inventor
正樹 浪江
Masaki Namie
正樹 浪江
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2016172850A priority Critical patent/JP6859633B2/ja
Priority to CN201710092421.5A priority patent/CN107797446B/zh
Priority to EP17157324.9A priority patent/EP3291031A1/en
Priority to US15/439,918 priority patent/US10394197B2/en
Publication of JP2018041149A publication Critical patent/JP2018041149A/ja
Application granted granted Critical
Publication of JP6859633B2 publication Critical patent/JP6859633B2/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
    • 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/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/048Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
    • 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

Landscapes

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

Abstract

【課題】外乱のモデルを必要とせずに、幅広い機械および装置に対して、より簡単に外乱補償を適用する。【解決手段】コントローラ(10)は、制御量の実測値と予測値との誤差である予測誤差の時間変化の周期である予測誤差変動周期について、或る予測誤差変動周期の1つ前の予測誤差変動周期における予測誤差を用いて、或る予測誤差変動周期における予測値を補正する。【選択図】図1

Description

本発明は、制御対象のモデルを用いて制御量を予測するモデル予測制御装置等に関する。
従来、例えば、加工機械において、ツールおよびテーブルの加減速により励起される振動、周辺の他の機械から受ける震動などの外乱が発生した場合に、制御性能を維持するための様々な試みが知られている。
例えば、下掲の特許文献1には、フィードバックループに付加され、フィードバックループに加わる外乱を、制御対象の測定値を用いて除去するように内部モデル原理を用いて設計されているプラグイン外乱除去制御器を含むプロセス制御装置が記載されている。
特開2008−198064号公報(2008年8月28日公開)
しかしながら、上述のような従来技術は、外乱発生器のモデル式を予め準備する必要がある。一般に、外乱のモデル化は、制御対象のモデル化よりも困難であるため、上述のような従来技術は、高度なモデル作成能力を必要とし、また、適用できる機械および装置が限定されるといった問題がある。
本発明は、前記の問題点に鑑みてなされたものであり、その目的は、外乱のモデルを必要とせずに、幅広い機械および装置に対して、より簡単に外乱補償を適用できるモデル予測制御装置等を提供することにある。
上記の課題を解決するために、本発明の一態様に係るモデル予測制御装置は、目標軌道から制御周期ごとに生成された指令値に対応する制御対象の制御量を、前記制御対象のモデルを用いて予測するモデル予測制御装置であって、前記制御対象の制御量の実測値と前記モデルを用いて予測した制御量の予測値との誤差であるモデル予測誤差の時間変化について周期性の有無を判定する判定部と、前記判定部により前記モデル予測誤差の時間変化について周期性が有ると判定されると、前記モデル予測誤差の時間変化の周期である予測誤差変動周期について、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する予測値補正部と、を備えることを特徴としている。
前記の構成によれば、前記予測値補正部は、モデル予測誤差の時間変化について周期性が有ると判定されると、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する。
なお、予測値補正部が、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて補正する、「前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値」は、「現在における予測値」と言い換えてもよい。
したがって、前記モデル予測制御装置は、前記或る予測誤差変動周期における前記制御量の予測値が周期性を有する外乱によって乱れる場合、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記予測値を補正することができるという効果を奏する。前記モデル予測制御装置は、外乱のモデルを必要とせずに、幅広い機械および装置に対して、より簡単に外乱補償を適用できるという効果を奏する。
好ましくは、前記モデル予測制御装置は、連続する複数の前記制御周期の各々について、前記モデル予測誤差を算出する算出部と、前記算出部により各々算出された、連続する複数の前記モデル予測誤差の時間変化から、前記モデル予測誤差の極大値および極小値を検出する極値検出部と、をさらに備え、前記判定部は、前記極値検出部により前記極大値および前記極小値の各々が検出された時刻から、前記モデル予測誤差の時間変化について周期性の有無を判定する。
前記の構成によれば、前記判定部は、連続する複数の前記制御周期の各々について算出された前記モデル予測誤差の時間変化から検出された前記極大値および前記極小値の各々の検出時刻から、前記モデル予測誤差の時間変化について周期性の有無を判定する。
したがって、前記モデル予測制御装置は、前記モデル予測誤差の時間変化の前記極大値および前記極小値の各々の検出時刻から、前記モデル予測誤差の時間変化について周期性が有ると判定すると、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正することができるという効果を奏する。
好ましくは、前記モデル予測制御装置において、前記判定部は、前記極値検出部により複数の前記極大値の各々が検出された時刻の間隔と、前記極値検出部により複数の前記極小値の各々が検出された時刻の間隔との差に基づいて、前記モデル予測誤差の時間変化について周期性の有無を判定する。
前記の構成によれば、前記判定部は、前記極値検出部により複数の前記極大値の各々が検出された時刻の間隔と、前記極値検出部により複数の前記極小値の各々が検出された時刻の間隔との差に基づいて、前記モデル予測誤差の時間変化について周期性の有無を判定する。
したがって、前記モデル予測制御装置は、複数の前記極大値の各々が検出された時刻の間隔と、複数の前記極小値の各々が検出された時刻の間隔との差との差に基づいて、前記モデル予測誤差の時間変化について周期性の有無を判定し、前記周期性が有ると判定すると、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正することができるという効果を奏する。
例えば、前記判定部は、前記極値検出部により複数の前記極大値の各々が検出された時刻の間隔と、前記極値検出部により複数の前記極小値の各々が検出された時刻の間隔との差が所定の値よりも小さいと、前記モデル予測誤差の時間変化について周期性が有ると判定する。
したがって、前記モデル予測制御装置は、複数の前記極大値の各々が検出された時刻の間隔と、複数の前記極小値の各々が検出された時刻の間隔との差が所定の値よりも小さいと、前記モデル予測誤差の時間変化について周期性が有ると判定し、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正することができるという効果を奏する。
好ましくは、前記モデル予測制御装置において、前記極値検出部は、前記連続する複数の前記モデル予測誤差の時間変化における前記モデル予測誤差の極大値および極小値のうち、前記極大値と前記極小値との差が所定値よりも大きな前記極大値および前記極小値のみを検出する。
前記の構成によれば、前記極値検出部は、前記連続する複数の前記モデル予測誤差の時間変化における前記モデル予測誤差の極大値および極小値のうち、前記極大値と前記極小値との差が所定値よりも大きな前記極大値および前記極小値のみを検出する。
ここで、前記モデル予測誤差は、前記算出部により、前記制御対象の制御量の実測値と前記モデルを用いて予測した制御量の予測値との誤差として算出されるのであり、前記実測値は計測ノイズを含み得る。また、例えば静止摩擦による停止状態での微小な振動が、前記実測値に影響し得る。つまり、前記算出部により算出される前記モデル予測誤差は、前記実測値の含み得る計測ノイズ等に影響を受け得る。
前記極値検出部は、前記連続する複数の前記モデル予測誤差の時間変化における前記モデル予測誤差の極大値および極小値のうち、前記極大値と前記極小値との差が所定値よりも大きな前記極大値および前記極小値のみを検出することにより、前記計測ノイズ等に影響された前記モデル予測誤差を誤って極値(極大値または極小値)として検出してしまうことを防ぐことができる。
したがって、前記モデル予測制御装置は、高精度で検出した極値の検出時刻を用いて、前記モデル予測誤差の時間変化について周期性の有無を判定することができるという効果を奏する。
好ましくは、前記モデル予測制御装置において、前記極値検出部は、(1)複数の前記極大値の間の検出時刻の間隔が所定の周期よりも長くなるように、複数の前記極大値の各々を検出し、(2)複数の前記極小値の間の検出時刻の間隔が所定の周期よりも長くなるように、複数の前記極小値の各々を検出する。
前記の構成によれば、前記極値検出部は、複数の前記極大値(前記極小値)の間の検出時刻の間隔が所定の周期よりも長くなるように、複数の前記極大値(前記極小値)の各々を検出する。つまり、前記極値検出部は、極大値(極小値)間の検出時刻の差(間隔)が所定の周期よりも短いときは、その極値を確定しない(つまり、極大値(極小値)とはみなさない)。前記極値検出部は、例えば、直前に確定した極大値(極小値)との検出時間差が所定の周期に満たない山(谷)は、極大値(極小値)ではないとみなしてもよい。
ここで、例えば前記モデル予測誤差の時間変化を示す曲線が、大きな周期曲線中に小さな周期曲線を含むようなものである場合、前記モデル予測誤差の時間変化の周期性を判定する際に用いるべき周期は、前記大きな周期曲線の周期である。
したがって、前記モデル予測制御装置は、前記複数の前記極値(極大値たは極小値)が検出された時刻の間隔であって、所定の周期よりも長い間隔を、前記周期性の有無を判定する際に用いるので、前記モデル予測誤差の時間変化について周期性の有無を正しく判定することができるという効果を奏する。
好ましくは、前記モデル予測制御装置は、周期下限値を指定するユーザ操作を受け付ける受付部をさらに備え、前記判定部は、(1)前記極値検出部により複数の極大値が検出されると、前記複数の極大値の間の検出時刻の間隔のうち、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極大値が検出された時刻の間隔として用い、(2)前記極値検出部により複数の極小値が検出されると、前記複数の極小値の間の検出時刻のうち、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極小値が検出された時刻の間隔として用いる。
前記の構成によれば、前記判定部は、(1)前記極値検出部により検出された複数の前記極大値の間の検出時刻の間隔のうち、前記前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極大値が検出された時刻の間隔として用い、(2)前記極値検出部により検出された複数の前記極小値の間の検出時刻の間隔のうち、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極小値が検出された時刻の間隔として用いる。
ここで、例えば前記モデル予測誤差の時間変化を示す曲線が、大きな周期曲線中に小さな周期曲線を含むようなものである場合、前記モデル予測誤差の時間変化の周期性を判定する際に用いるべき周期は、前記大きな周期曲線の周期である。
したがって、前記モデル予測制御装置は、前記複数の前記極値(極大値たは極小値)が検出された時刻の間隔であって、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いるので、前記モデル予測誤差の時間変化について周期性の有無を正しく判定することができるという効果を奏する。
好ましくは、前記モデル予測制御装置は、前記モデル予測誤差の時間変化をユーザに表示する表示制御部をさらに備えている。
前記の構成によれば、前記表示制御部は、前記モデル予測誤差の経時変化をユーザに表示する。
したがって、前記モデル予測制御装置は、前記モデル予測誤差の経時変化をユーザに表示するので、ユーザが、前記モデル予測制御装置によって表示された前記モデル予測誤差の経時変化(いわゆる、トレンドグラフ)に現れる波形から、外乱の様子を近似的に把握することができるという効果を奏する。
好ましくは、前記モデル予測制御装置は、前記指令値に、前記予測値補正部により補正された前記予測値が追従するのに必要なトルクを算出するトルク算出部と、前記トルク算出部により算出されたトルクを、前記制御対象にモーション制御を行う制御系に、前記制御対象のトルク制御に係る指令値として出力するトルク指令部と、をさらに備えている。
前記の構成によれば、前記トルク算出部は、前記予測値補正部により補正された前記予測値が前記指令値に追従するのに必要なトルクを算出し、前記トルク指令部は、前記トルク算出部により算出されたトルクを、前記制御系に、前記制御対象のトルク制御に係る指令値として出力する。
したがって、前記モデル予測制御装置は、前記外乱による制御量の変化を操作量に変換するための演算処理を実行せずに、前記指令値に前記制御対象の制御量が追従するためのトルクを、前記制御系に出力することができるという効果を奏する。
好ましくは、前記モデル予測制御装置は、前記指令値に、前記予測値補正部により補正された前記予測値が追従するよう、前記指令値を補正する指令値補正部と、前記指令値補正部により補正された前記指令値である補正後指令値を、前記制御対象にモーション制御を行う制御系に、前記制御対象の位置制御に係る指令値として出力する位置指令部と、をさらに備えている。
前記の構成によれば、前記指令値補正部は、前記予測値補正部により補正された前記予測値が前記指令値に追従するよう前記指令値を補正し、前記位置指令部は、前記指令値補正部により補正された前記指令値である補正後指令値を、前記制御対象にモーション制御を行う制御系に、前記制御対象の位置制御に係る指令値として出力する。
したがって、前記モデル予測制御装置は、前記外乱による制御量の変化を操作量に変換するための演算処理を実行せずに、前記指令値に前記制御対象の制御量が追従するように補正された前記指令値を、前記制御系に出力することができるという効果を奏する。
また、上記の課題を解決するために、本発明の一態様に係る制御方法は、目標軌道から制御周期ごとに生成された指令値に対応する制御対象の制御量を、前記制御対象のモデルを用いて予測するモデル予測制御装置の制御方法であって、前記制御対象の制御量の実測値と前記モデルを用いて予測した制御量の予測値との誤差であるモデル予測誤差の時間変化について周期性の有無を判定する判定ステップと、前記判定ステップにて前記モデル予測誤差の時間変化について周期性が有ると判定すると、前記モデル予測誤差の時間変化の周期である予測誤差変動周期について、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する予測値補正ステップと、を含むことを特徴としている。
前記の制御方法によれば、前記予測値補正ステップは、モデル予測誤差の時間変化について周期性が有ると判定されると、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する。
なお、予測値補正ステップが、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて補正する、「前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値」は、「現在における予測値」と言い換えてもよい。
したがって、前記制御方法は、前記或る予測誤差変動周期における前記制御量の予測値が周期性を有する外乱によって乱れる場合、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記予測値を補正することができるという効果を奏する。前記制御方法は、外乱のモデルを必要とせずに、幅広い機械および装置に対して、より簡単に外乱補償を適用できるという効果を奏する。
本発明は、外乱のモデルを必要とせずに、幅広い機械および装置に対して、より簡単に外乱補償を適用できるという効果を奏する。
本発明の実施形態1に係るコントローラの要部構成を示すブロック図である。 図1のコントローラを含む制御システムの概要を示す図である。 図1のコントローラが実行するモデル予測制御の概要を説明するための図である。 図1のコントローラの実行する外乱補償処理の一例を示すフロー図である。 図1のコントローラがモデル予測誤差の時間変化について周期性の有無を判定する方法を説明するための図である。 図1のコントローラが予測値を補正する方法を説明するための図である。 図1のコントローラが外乱補償処理を実行した場合の効果を説明するための図である。 図1のコントローラが周期下限値を用いてモデル予測誤差の周期性の有無を判定する、複雑な外乱を説明するための図である。 図1のコントローラが周期下限値を用いた外乱補償処理を実行した場合の効果を説明するための図である。 図1のコントローラが表示する予測誤差のトレンドグラフの一例を示す図である。 図1のコントローラが補償したトルク外乱波形を示す図である。 本発明の実施形態2に係るコントローラの要部構成を示すブロック図である。 図12のコントローラを含む制御システムの概要を示す図である。
〔実施形態1〕
以下、本発明の実施形態1について、図1から図11に基づいて詳細に説明する。図中同一または相当部分には同一符号を付してその説明は繰返さない。本発明の一態様に係るコントローラ10(モデル予測制御装置)についての理解を容易にするため、先ず、コントローラ10を含む制御システム1の概要を、図2を用いて説明する。
(制御システムの概要)
図2は、コントローラ10を含む制御システム1の概要を示す図である。制御システム1は、周期性を有する外乱による制御量の乱れを迅速に抑制しようとするものである。制御システム1のコントローラ10は、外乱のモデルを用いずに外乱補償を行なうことができるため、幅広い機械および装置に対して、より簡単に外乱補償を適用できるという効果を奏する。コントローラ10は、サイクル(動作周期)のある動作の制御にも、サイクルのない、連続動作の制御にも適用することができる。コントローラ10が実行する外乱補償は、動作サイクルを用いないため、連続的な不規則動作が続くような動作の制御においても適用可能である。
コントローラ10は、例えばモデル予測制御(MPC、Model Predictive Control)などの予測機構を備える制御装置(上位コントローラ)である。コントローラ10は、予測誤差の変動に係る周期性の有無を判定し、周期性があると判定した場合、前記予測誤差の時間変化の周期である予測誤差変動周期について、1周期(1予測誤差変動周期)前の予測誤差データを用いて、制御量の予測を補正する。例えば、加工機械において、ツールおよびテーブルの加減速により励起される振動、周辺の他の機械から受ける震動など、周期性のある外乱が発生した場合に、コントローラ10は制御性能を維持することができる。コントローラ10は、また、制御性能を維持することにより、例えば製造物の品質を維持することができる。
制御システム1は、(1)例えばプログラマブルコントローラ(PLC、Programmable Logic Controller)であるコントローラ10と、(2)上位コントローラであるコントローラ10により制御される下位コントローラとしてのサーボドライバ20と、(3)サーボドライバ20によって制御される制御対象30(例えば、モータおよびメカ)と、を含んでいる。制御システム1において、コントローラ10が、位置/速度制御を実行し、予測制御によりサーボドライバ20へのトルク指令値を出力する。
コントローラ10は、モデル予測制御機構を備えるコントローラであって、サーボドライバ20に対し、操作量としてのトルク指令値を出力する。コントローラ10は、例えば、ユーザ等の外部から目標軌道データ(目標軌道)を受け付け(軌道生成)、受け付けた目標軌道データから制御周期ごとに指令値(指令位置)を生成する。コントローラ10は、また、制御対象30から、「制御対象30の出力である制御量(制御量の実測値)」を、フィードバック情報として取得する。すなわち、コントローラ10は、フィードバック速度およびフィードバック位置(フィードバック速度およびフィードバック位置の少なくとも一方)として、制御対象30が出力した速度および位置(速度および位置の少なくとも一方)を取得する。
コントローラ10は、制御対象30(およびサーボドライバ20)のモデルを内部モデルとして有し、この内部モデルを用いて、生成した指令位置と、「制御対象30の出力である制御量」と、に基づいて、サーボドライバ20に対し、操作量としてのトルク指令値を出力する。ここで、コントローラ10は、制御対象(つまり、制御対象30およびサーボドライバ20)のモデルを用いて制御量を予測するとともに、予測誤差を推定して外乱補償を行う。コントローラ10は、外乱パターンを制御量の次元のままで記憶して利用するため、外乱を推定するための演算を、制御量の算出のための演算とは別途用意する必要がない(ただし、より正確には、コントローラ10が記憶するのは、「外乱パターン」ではなく、外乱の情報を含む予測誤差パターンである)。したがって、コントローラ10は、制御量の算出のための演算に加えて、外乱を推定するための演算を別途行う装置に比べて演算負荷が小さく、高速制御周期が必要となるモーション制御においては、重要なメリットとなる。
サーボドライバ20は、コントローラ10からのトルク指令値に従って、制御対象30についてトルク制御を実行する。
(コントローラの概要)
これまで図2を用いて概要を説明してきた制御システム1に含まれるコントローラ10について、次に、その構成および処理の内容等を、図1等を用いて説明していく。図1を参照して詳細を説明する前に、コントローラ10についての理解を容易にするため、その概要について以下のように整理しておく。
コントローラ10(モデル予測制御装置)は、目標軌道から制御周期ごとに生成された指令値に対応する制御対象30の制御量を、制御対象30のモデルを用いて予測するモデル予測制御装置であって、制御対象30の制御量の実測値と前記モデルを用いて予測した制御量の予測値との誤差であるモデル予測誤差の時間変化について周期性の有無を判定する判定部106と、判定部106により前記モデル予測誤差の時間変化について周期性が有ると判定されると、前記モデル予測誤差の時間変化の周期である予測誤差変動周期について、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する予測値補正部107と、を備えている。
前記の構成によれば、予測値補正部107は、モデル予測誤差の時間変化について周期性が有ると判定されると、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する。
なお、予測値補正部107が、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて補正する、「前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値」は、「現在における予測値」と言い換えてもよい。
したがって、コントローラ10は、前記或る予測誤差変動周期における前記制御量の予測値が周期性を有する外乱によって乱れる場合、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記予測値を補正することができるという効果を奏する。コントローラ10は、外乱のモデルを必要とせずに、幅広い機械および装置に対して、より簡単に外乱補償を適用できるという効果を奏する。
コントローラ10は、連続する複数の前記制御周期の各々について、前記モデル予測誤差を算出する算出部104と、算出部104により各々算出された、連続する複数の前記モデル予測誤差の時間変化から、前記モデル予測誤差の極大値および極小値を検出する極値検出部105と、をさらに備え、判定部106は、極値検出部105により前記極大値および前記極小値の各々が検出された時刻から、前記モデル予測誤差の時間変化について周期性の有無を判定する。
前記の構成によれば、判定部106は、連続する複数の前記制御周期の各々について算出された前記モデル予測誤差の時間変化から検出された前記極大値および前記極小値の各々の検出時刻から、前記モデル予測誤差の時間変化について周期性の有無を判定する。
したがって、コントローラ10は、前記モデル予測誤差の時間変化の前記極大値および前記極小値の各々の検出時刻から、前記モデル予測誤差の時間変化について周期性が有ると判定すると、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正することができるという効果を奏する。
コントローラ10は、前記指令値に、予測値補正部107により補正された前記予測値が追従するのに必要なトルクを算出するトルク算出部102と、トルク算出部102により算出されたトルクを、サーボドライバ20(制御対象30にモーション制御を行う制御系)に、制御対象30のトルク制御に係る指令値として出力するトルク指令部103と、をさらに備えている。
前記の構成によれば、トルク算出部102は、予測値補正部107により補正された前記予測値が前記指令値に追従するのに必要なトルクを算出し、トルク指令部103は、トルク算出部102により算出されたトルクを、サーボドライバ20に、制御対象30のトルク制御に係る指令値として出力する。
したがって、コントローラ10は、前記外乱による制御量の変化を操作量に変換するための演算処理を実行せずに、前記指令値に制御対象30の制御量が追従するためのトルクを、サーボドライバ20に出力することができるという効果を奏する。
(制御周期と予測誤差変動周期との関係について)
制御システム1における制御周期と予測誤差変動周期との関係(区別)について、以下の点に注意する必要がある。すなわち、制御システム1において、「制御周期」とは、コントローラ10が制御動作を繰り返し実行する周期のことであり、例えば、0.25ms、1msなどの非常に短い時間(周期)である。これに対して、「予測誤差変動周期」とは、コントローラ10(トルク算出部102)の算出した制御量の予測値と、制御対象30からのフィードバック制御量(制御対象30の制御量の実測値)と、の誤差であるモデル予測誤差の時間変化の時間(周期)である。モデル予測誤差の時間変化に周期性がある場合の周期(予測誤差変動周期)は、制御周期に比べて長く、例えば、50msとか、1sといったレンジである。
コントローラ10は、「制御周期」ごとに、制御対象30(およびサーボドライバ20)のモデルを用いて予測した制御量の予測値と、制御対象30からのフィードバック制御量(制御対象30の制御量の実測値)と、の誤差であるモデル予測誤差を算出する。コントローラ10は、連続する複数のモデル予測誤差を時系列に並べて、モデル予測誤差の時間変化について周期性の有無を判定する。コントローラ10は、モデル予測誤差の時間変化に周期性が有ると判定すると、モデル予測誤差の時間変化の周期である「予測誤差変動周期」を算出する。そして、コントローラ10は、前記「予測誤差変動周期」について、或る「予測誤差変動周期」の1つ前の「予測誤差変動周期」における前記モデル予測誤差を用いて、前記或る「予測誤差変動周期」における制御量の予測値を補正する。
なお、前記「或る予測誤差変動周期」は、指定できるものではなく、現時刻で確定しているものでもない。確定しているのは現在より前(過去)の変動周期(つまり、或る「予測誤差変動周期」の1つ前の「予測誤差変動周期」)だけである。コントローラ10は、「現在より前(過去)の変動周期」を用いて、現時刻において予測する、(未来の)制御量の予測値(つまり、或る「予測誤差変動周期」における制御量の予測値)を補正する。
(コントローラの詳細)
前述の通り、コントローラ10は、制御対象30(およびサーボドライバ20)のモデルを用いて予測した制御量の予測値と、制御対象30からのフィードバック制御量(制御対象30の制御量の実測値)と、の誤差であるモデル予測誤差の時間変化から、外乱の周期性の有無を判定する。そして、周期性が有ると判定すると、コントローラ10は、予測誤差変動周期(前記モデル予測誤差の時間変化の周期)について、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する。以上に概要を説明したコントローラ10について、次に、その構成の詳細を、図1を用いて説明する。
なお、前述の通り、前記「或る予測誤差変動周期」は、指定できるものではなく、現時刻で確定しているものでもない。確定しているのは現在より前(過去)の変動周期(つまり、或る「予測誤差変動周期」の1つ前の「予測誤差変動周期」)だけである。コントローラ10は、或る「予測誤差変動周期」の1つ前の「予測誤差変動周期」(つまり、「現在より前(過去)の変動周期」)を用いて、或る「予測誤差変動周期」における制御量の予測値(つまり、「現時刻において予測する、(未来の)制御量の予測値」)を補正する。
図1は、本発明の実施形態1に係るコントローラ10の要部構成を示すブロック図である。図1に示すコントローラ10は、指令値生成部101と、トルク算出部102と、トルク指令部103と、算出部104と、極値検出部105と、判定部106と、予測値補正部107と、受付部108と、表示制御部109と、記憶部110と、を備える構成である。なお、記載の簡潔性を担保するため、本実施の形態に直接関係のない構成は、説明およびブロック図から省略している。ただし、実施の実情に則して、コントローラ10は、当該省略された構成を備えてもよい。上述の指令値生成部101、トルク算出部102、トルク指令部103、算出部104、極値検出部105、判定部106、予測値補正部107、受付部108、表示制御部109などの各機能ブロックは、例えば、CPU(central processing unit)などが、ROM(read only memory)、NVRAM(non-Volatile random access memory)等で実現された記憶装置(記憶部110)に記憶されているプログラムを不図示のRAM(random access memory)等に読み出して実行することで実現できる。以下、コントローラ10における各機能ブロックについて説明する。
指令値生成部101は、外部(例えば、ユーザ)から目標軌道データ(目標軌道)を受け付け(軌道生成)、受け付けた目標軌道データから制御周期ごとに指令値(指令位置)を生成する。指令値生成部101は、生成した指令値(指令位置)を、トルク算出部102に送信する。
トルク算出部102は、モデル予測制御(MPC、Model Predictive Control)を実行し、具体的には、制御対象30の内部モデルを用いて未来の状態を予測し、制御対象30の未来の出力(制御量の予測値)ができる限り目標値(指令値、つまり指令位置)に近づくように操作量を決定する。つまり、トルク算出部102は、前記内部モデルに基づいて未来の出力(制御量)の変化を予測し、出力と目標値とができるだけ近づくように入力(操作量)を決定するものである。
トルク算出部102は、制御対象30の挙動をモデル化した前記内部モデルを含み、前記内部モデルを用いて、各制御周期において制御対象30が出力する制御量を予測する。すなわち、トルク算出部102は、前記内部モデルを用いて、各制御周期における予測値(制御量の予測値)を算出する。トルク算出部102は、算出した予測値(予測制御量)を算出部104に通知する。
トルク算出部102が制御対象30の制御量の予測値を算出し、操作量を決定するために用いる前記内部モデルは、制御対象30のモデルだけでなく、サーボドライバ20のモデルを含んでいる。すなわち、トルク算出部102は、制御対象30およびサーボドライバ20の内部モデルを用いて、制御対象30の制御量の予測値を算出し、予測値が指令値(つまり、指令位置)に近づくように操作量を決定する。
ここで、コントローラ10から見た制御対象(すなわち、サーボドライバ20および制御対象30の全体。コントローラ出力からコントローラ入力までの範囲)の特性が、むだ時間を含む場合、コントローラ10による外乱推定の精度が低下し、むだ時間が大きくなると十分な補償効果が得られなくなるという問題がある。コントローラ10から見た制御対象がむだ時間を含む例としては、コントローラ10とサーボドライバ20などの出力機器とが通信で接続されるシステムを挙げることができる。コントローラ10から見れば、サーボドライバ20および制御対象30の全体が制御する対象(制御対象)となるため、前記内部モデルは、サーボドライバ20のモデルを含むのが基本である。ただし、サーボドライバ20によるトルク制御部の特性は、一般に、制御対象30の特性に比べて十分に高速であるため、サーボドライバ20の特性を無視してもよい(つまり、伝達関数を「1」と見なしてもよい)。
トルク算出部102は、また、予測値補正部107から取得する予測補正値(補正後予測値)が、つまり、予測値補正部107により補正された予測値(制御量の予測値)が、指令値(指令位置)に追従するのに必要なトルクを、前記内部モデルを用いて算出する。トルク算出部102は、算出したトルクを指令トルク(操作量)としてトルク指令部103に通知する。
トルク指令部103は、トルク算出部102から通知された指令トルク(操作量)を、サーボドライバ20(制御対象30にモーション制御を行う制御系)に、制御対象30のトルク制御に係る指令値として出力する。
算出部104は、制御周期毎に、或る制御周期における制御対象30の出力(制御量の実測値)と、前記或る制御周期における制御量の予測値(予測制御量)との誤差であるモデル予測誤差を算出する。すなわち、算出部104は、トルク算出部102から通知された「或る制御周期における制御量の予測値(予測制御量)」と、「前記或る制御周期における制御対象30の出力(制御量の実測値)」との誤差(前記或る制御周期におけるモデル予測誤差)を算出する。
算出部104は、制御周期毎に算出した「前記或る動作周期におけるモデル予測誤差」を、極値検出部105に通知する。算出部104は、記憶部110に誤差データ1101として格納してもよい。算出部104は、また、算出した「前記或る動作周期におけるモデル予測誤差」を、表示制御部109に通知する。
極値検出部105は、制御周期毎に、算出部104により算出されたモデル予測誤差(記憶部110に誤差データ1101として格納されたモデル予測誤差)の時間変化から、前記モデル予測誤差の(前記モデル予測誤差の時間変化の)極大値および極小値を検出する。すなわち、極値検出部105は、例えば、制御周期毎に算出部104から通知されるモデル予測誤差の時間変化を示す予測誤差変動波形を得る。そして、極値検出部105は、予測誤差変動波形において、モデル予測誤差の時間変化についての極値を検出する(確定する)。極値検出部105は、制御周期毎に、検出した極値を、当該極値が発生したタイミング(検出時刻)とともに、判定部106に通知する。極値検出部105は、検出した極値を、当該極値が発生したタイミング(検出時刻)とともに、記憶部110に極値データ1102として格納してもよい。
極値検出部105は、また、受付部108から、受付部108が受け付けたユーザ操作において指定された周期下限値を取得してもよい。極値検出部105は、例えば、予測誤差変動波形からモデル予測誤差の時間変化における極大値および極小値の少なくとも一方を確定する際に、直前に確定した極大値(極小値)との検出時刻の差(間隔)が周期下限値に満たない山(谷)は、極大値(極小値)ではないとみなしてもよい。すなわち、極値検出部105は、極大値(極小値)間の検出時刻差が周期下限値よりも短いときは、その極値を確定しない(つまり、極大値(極小値)とはみなさない)。
極値検出部105は、(1)複数の前記極大値の間の検出時刻の間隔が所定の周期よりも長くなるように、複数の前記極大値の各々を検出し、(2)複数の前記極小値の間の検出時刻の間隔が所定の周期よりも長くなるように、複数の前記極小値の各々を検出する。
判定部106は、制御周期毎に、制御対象30の制御量の実測値と前記モデルを用いて予測した制御量の予測値との誤差であるモデル予測誤差の時間変化について周期性の有無を判定する。判定部106による判定方法について、詳細は図5および図8等を用いて後述するが、判定部106は、例えば、極値検出部105により前記極大値および前記極小値の各々が検出された時刻から、前記モデル予測誤差の時間変化について周期性の有無を判定する。すなわち、判定部106は、記憶部110に格納されている極値データ1102を参照して、複数の極値の各々が発生したタイミング(検出時刻)の差(時間間隔)を算出する。そして、判定部106は、算出した複数の時間間隔が互いに近似しているかを判定することにより、モデル予測誤差の時間変化について周期性の有無を判定してもよい。
判定部106は、また、受付部108から、受付部108が受け付けたユーザ操作において指定された周期下限値を取得する。判定部106は、(1)極値検出部105により複数の極大値が検出されると、前記複数の極大値の間の検出時刻の間隔のうち、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極大値が検出された時刻の間隔として用い、(2)極値検出部105により複数の極小値が検出されると、前記複数の極小値の間の検出時刻のうち、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極小値が検出された時刻の間隔として用いる。
なお、算出部104、極値検出部105、および判定部106は、各々の処理を制御周期毎に実行する。すなわち、算出部104は制御周期毎に予測誤差を算出し、極値検出部105は制御周期毎に極値(極大値および極小値)を検出する。判定部106は制御周期毎に、算出部104が検出した極大値間(極小値間)の時間間隔(検出時刻の差)を用いて、モデル予測誤差の時間変化について周期性の有無を判定する。ただし、後述する表示制御部109は、前記モデル予測誤差の経時変化を、動作周期毎のバッチ処理によって、ユーザに表示してもよい。制御周期ごとに前記モデル予測誤差の経時変化を表示しようとしても、処理量が大きいため、表示制御部109は、動作周期毎に、前記モデル予測誤差の経時変化を表示してもよい。
予測値補正部107は、判定部106により前記モデル予測誤差の時間変化について周期性が有ると判定されると、前記モデル予測誤差の時間変化の周期である予測誤差変動周期について、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する。そして、予測値補正部107は、補正した予測値(制御量の予測値、つまり予測制御量)を、つまり、予測補正値(補正後予測値)を、トルク算出部102に通知する。
受付部108は、周期下限値を指定するユーザ操作を受け付ける。受付部108は、ユーザ操作において指定された周期下限値を、判定部106(および極値検出部105)に通知する。
受付部108は、また、判定部がモデル予測誤差の時間変化について周期性の有無を判定するのに用いる基準値(後述するEPS1の値)を指定するユーザ操作を受け付けてもよい。
受付部108は、さらに、極値検出部105が極値を検出する(確定する)のに用いる閾値を指定するユーザ操作を受け付けてもよい。極値検出部105は、例えば、予測誤差変動波形の山と谷とから極値(山である極大値と谷である極小値と)を検出する(確定する)のに際して、山と谷との差が、ユーザによって指定された閾値を超える場合にのみ、当該山(谷)を極大値(極小値)として確定するようにしてもよい。
表示制御部109は、前記モデル予測誤差の経時変化をユーザに表示する。表示制御部109は、例えば、算出部104から、算出部104が算出した前記「或る動作周期」におけるモデル予測誤差を取得して、取得したモデル予測誤差を利用して、前記モデル予測誤差の経時変化をユーザに表示してもよい。表示制御部109は、また、記憶部110に格納されている誤差データ1101を参照して、前記モデル予測誤差の経時変化をユーザに表示してもよい。
記憶部110は、コントローラ10が使用する各種データを格納する記憶装置である。なお、記憶部110は、コントローラ10が実行する(1)制御プログラム、(2)OSプログラム、(3)コントローラ10が有する各種機能を実行するためのアプリケーションプログラム、および、(4)該アプリケーションプログラムを実行するときに読み出す各種データを非一時的に記憶してもよい。上記の(1)〜(4)のデータは、例えば、ROM(read only memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)、HDD(Hard Disc Drive)等の不揮発性記憶装置に記憶される。
コントローラ10は、図示しない一時記憶部を備えていてもよい。一時記憶部は、コントローラ10が実行する各種処理の過程で、演算に使用するデータおよび演算結果等を一時的に記憶するいわゆるワーキングメモリであり、RAM(Random Access Memory)などの揮発性記憶装置で構成される。
どのデータをどの記憶装置に記憶するのかについては、コントローラ10の使用目的、利便性、コスト、または、物理的な制約などから適宜決定される。記憶部110はさらに、誤差データ1101と、極値データ1102とを格納している。
誤差データ1101は、算出部104が算出した前記「(或る動作周期における)モデル予測誤差」の情報であり、算出部104によって記憶部110に格納される。
極値データ1102は、極値検出部105によってモデル予測誤差の時間変化から検出されたモデル予測誤差の時間変化における極値についての情報であり、極値検出部105によって記憶部110に格納される。
(モデル予測制御について)
図3は、コントローラ10が実行するモデル予測制御の概要を説明するための図である。モデル予測制御は、制御対象(制御システム1においては、制御対象30(およびサーボドライバ20))のモデルを使って、参照軌道(制御システム1においては、目標軌道)上のターゲットポイントに制御量を一致させるための未来の操作量(制御システム1においては、サーボドライバ20に与えるトルク指令値)を決定し、この処理を毎周期繰り返すものである。
コントローラ10は、図3に示すように、現時刻nにおいて制御量PV(n)を測定し、現時刻の制御量PV(n)を始点として設定値SPに徐々に近づく破線で示す参照軌道を計算する。ここでは、簡単のために、制御ホライズンHuは「1」とする。
コントローラ10は、次に、内部モデル(制御対象30(およびサーボドライバ20)のモデル)を用いて、予測ホライズンH後の制御量PVの予測値PV(n+H)が参照軌道に一致するように、現在の時刻nの操作量MV(n)を決定する。
コントローラ10は、得られた操作量MV(n)を実際にサーボドライバ20に加え、次のサンプリング時刻n+1まではその値を保持する。
時刻n+1において制御量PV(n+1)が測定されると、コントローラ10は、改めて時刻t+1を現時刻とみなし、未来の予測値と参照軌道とが、予測ホライズンH後に一致するように操作量を決定し、次のサンプリング時刻までその操作量をサーボドライバ20に加える。以下、この手順を繰り返す。
次に、制御システム1におけるコントローラ10が実行する予測制御について、詳細に説明する。
コントローラ10は、上述のように内部モデルを用いて予測制御を行なうものであり、制御システム1において、内部モデルは、サンプリング時間で離散化した次式で表されるN次のARXモデルとしている。なお、制御対象(制御システム1においては、制御対象30(およびサーボドライバ20))のモデルは、ARXモデルに限らず、ステップ応答モデルやその他のモデルを用いてもよい。
Figure 2018041149
ここで、
Y(n):時刻nの内部モデル出力値
U(n):時刻nの操作量
a1〜aN,b1〜bM:内部モデルの係数
N,M:内部モデル次数
である。
このARXモデルの決定は、例えば、制御対象(制御システム1においては、制御対象30(およびサーボドライバ20))に対する入出力の時系列データ、すなわち、操作量MVおよび制御量PVの時系列データを予め計測し、最小二乗法等を用いて行われる。
制御システム1においては、図3の破線で示される参照軌道として、現時刻nでの偏差を、時定数Trで指数関数的に0に近づける軌道を用いている。
すなわち、予測ホライズンH後の参照軌道上の目標値R(n+H)は、次式で求めることができる。
R(n+H)=SP(n+H)−λH*{SP(n)−PV(n)},
λ=exp(−Tc/Tr)
ここで、
PV(n):時刻nの制御量
SP(n),SP(n+H):時刻n,n+Hの目標値
R(n+H):予測ホライズンH先の参照軌道上の目標値
Tc:サンプリング時間
である。
したがって、現時刻nにおける制御量PV(n)からの増分、すなわち、予測ホライズンH後に、制御量PVを、参照軌道上の目標値R(n+H)に一致させるために必要な制御量PVの増分(偏差)ΔP(n+H)は、
Figure 2018041149
となる。
次に、操作量MVの計算について説明する。
線形の制御対象の場合、モデル出力の挙動は、次の2つの加算により求めることができる。
(1)自由応答
現在の状態を初期値として、未来の操作量MVとして0が継続する場合の、予測ホライズンH後のモデル出力Yf(n+H)を、上述のARXモデルの式から繰り返し計算により求める。
Figure 2018041149
(2)ステップ応答
初期状態を0として、MV=1(100%)のステップ応答における、時刻Hのモデル出力S(H)を求める。
Figure 2018041149
MV=1(100%)ではなく、一般にMV(n)とすると、時刻Hのステップ応答出力はMV(n)*S(H)となる。
ここで、
MV(n):時刻nの操作量
Yf(n+H):予測ホライズンH後のモデルの自由応答出力
S(H):時刻Hのモデルのステップ応答出力
である。
前項より、時刻n以降、操作量MV(n)を継続した場合、時刻n+H時点のモデル出力(制御量の予測値)は次式となる。
Y(n+H)=Yf(n+H)+MV(n)*S(H)
ここで、Y(n)からの増分、すなわち、予測ホライズンH後に期待されるモデル出力の増分ΔM(n+H)は、
ΔM(n+H)=Yf(n+H)+MV(n)*S(H)−Y(n)
となる。
したがって、予測ホライズンH後に期待されるモデル出力の増分ΔM(n+H)が、制御量PVを予測ホライズンH後に参照軌道上の目標値とするための上述の制御量PVの増分ΔP(n+H)と等しくなるように操作量MVを求めればよい。すなわち、
ΔM(n+H)=ΔP(n+H)
となる操作量MVを求めればよい。
ここで、予測補正量CH(n)を考慮すると、
ΔM(n+H)+CH(n)=ΔP(n+H)
より、
Figure 2018041149
MV(n)について解くと、
Figure 2018041149
むだ時間を内部モデルに含めない場合は、前項のMVの算出式を、むだ時間dを考慮したものに修正する必要がある。
そこで、実際のプロセスデータについて、時刻nの代わりに時刻n+dとする。
Figure 2018041149
ここで、PV(n+d)の予測値が必要となり、合理的な近似として通常は次の計算式で求める。
PV(n+d)=PV(n)+Y(n)−Y(n−d)
ここでも、むだ時間d間の予測補正量Cd(n)を考慮すると、
PV(n+d)=PV(n)+Y(n)−Y(n−d)+Cd(n)
より
Figure 2018041149
なお、時刻nの操作量MV(n)を計算した後に、次回計算のために、次のモデル出力Y(n+1)を求めておく。
Figure 2018041149
ただし、MV(n)は操作量リミット処理後の値を使用する。
(外乱補償処理の一例)
図4は、コントローラ10の実行する外乱補償処理の一例を示すフロー図である。図4に示すように、コントローラ10は、モデル予測誤差を記憶し(S10)、モデル予測誤差を時系列に並べたデータから、モデル予測誤差の極値を検出する(S20)。そして、コントローラ10は、検出した極値を用いてモデル予測誤差の時間変化について周期性の有無を判定する(S30)。コントローラ10は、モデル予測誤差の時間変化に周期性があると判定した場合(S30でYes)、1周期(1予測誤差変動周期)前の予測誤差を利用して予測値の補正を行って、補正した予測値を用いて予測制御を実行する(S40)。コントローラ10は、モデル予測誤差の時間変化に周期性がないと判定した場合(S30でNo)、予測値の補正をせずに、予測制御を実行する(S50)。以下、詳細を説明していく。
なお、以下の説明においては、「PE(n)」は「サイクル内時刻nの予測誤差」を意味し、「PV(n)」は「サイクル内時刻nの制御量(制御対象30が出力する制御量の実測値。例えば、フィードバック位置)」を意味している。また、「Y(n−d)」は「時刻(n−d)におけるモデル予測値(トルク算出部102が、制御対象(つまり、制御対象30およびサーボドライバ20)の挙動をモデル化した内部モデルを用いて算出したサイクル内時刻(n−d)における制御量の予測値)」を意味し、「d」は「むだ時間」を意味している。むだ時間dは、コントローラ10の制御周期の整数倍である。
算出部104は、制御周期毎に、1サイクル分の予測誤差データを算出し、算出したモデル予測誤差を、極値検出部105に通知するとともに、記憶部110に誤差データ1101として格納する(S10)。算出部104は、以下の式によりモデル予測誤差PE(n)を算出し、算出したモデル予測誤差PE(n)を、極値検出部105に通知するとともに、記憶部110に誤差データ1101として格納する。
PE(n)=PV(n)−Y(n−d)
極値検出部105は、制御周期毎に、算出部104により各々算出された、連続する複数の前記モデル予測誤差の時間変化から、前記モデル予測誤差の極大値および極小値を検出する。すなわち、極値検出部105は、例えば、制御周期毎に算出部104から通知されるモデル予測誤差の時間変化を示す曲線(直線)から、モデル予測誤差の極大値および極小値を、制御周期毎に検出する。そして、極値検出部105は、制御周期毎に、検出した極値(極大値および極小値)の値を、検出した時刻(検出時刻)と共に判定部106に通知する。極値検出部105は、検出した極値を、当該極値が発生したタイミング(検出時刻)とともに、記憶部110に極値データ1102として格納してもよい(S20)。
判定部106は、制御周期毎に、極値検出部105によって複数の極値が検出されたら、極値間の検出時刻の差(検出時刻差)を算出して、周期性の有無を判断する(S30)。判定部106がモデル予測誤差の時間変化について周期性があると判断した場合(S30でYes)、予測値補正部107は、現在より前(過去)の変動周期(つまり、或る「予測誤差変動周期」の1つ前の「予測誤差変動周期」)の予測誤差を用いて、現時刻において予測する、(未来の)制御量の予測値(つまり、或る「予測誤差変動周期」における制御量の予測値)を補正する。そして、トルク算出部102は、予測値補正部107により補正された予測値(制御量の予測値)が、指令値(指令位置)に追従するのに必要なトルクを、内部モデルを用いて算出する。トルク指令部103は、トルク算出部102が算出したトルクを、指令トルク(操作量)として、サーボドライバ20に出力する(S40)。
判定部106がモデル予測誤差の時間変化について周期性がないと判断した場合(S30でNo)、予測値補正部107は予測の補正を行わない。そして、トルク算出部102は、予測値補正部107により補正されなかった予測値(制御量の予測値)が、指令値(指令位置)に追従するのに必要なトルクを、内部モデルを用いて算出する。トルク指令部103は、トルク算出部102が算出したトルクを、指令トルク(操作量)として、サーボドライバ20に出力する(S50)。
図4を参照して説明してきたコントローラ10の実行する処理(制御方法)は、以下のように整理することができる。すなわち、コントローラ10の実行する処理(制御方法)は、目標軌道から制御周期ごとに生成された指令値に対応する制御対象30の制御量を、制御対象30(およびサーボドライバ20)のモデルを用いて予測するモデル予測制御装置の制御方法であって、制御対象30の制御量の実測値と前記モデルを用いて予測した制御量の予測値との誤差であるモデル予測誤差の時間変化について周期性の有無を判定する判定ステップ(S30)と、前記判定ステップにて前記モデル予測誤差の時間変化について周期性が有ると判定すると、前記モデル予測誤差の時間変化の周期である予測誤差変動周期について、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する予測値補正ステップ(S40)と、を含んでいる。
前記の制御方法によれば、前記予測値補正ステップは、モデル予測誤差の時間変化について周期性が有ると判定されると、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する。
なお、予測値補正ステップ(40)が、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて補正する、「前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値」は、「現在における予測値」と言い換えてもよい。
したがって、前記制御方法は、前記或る予測誤差変動周期における前記制御量の予測値が周期性を有する外乱によって乱れる場合、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記予測値を補正することができるという効果を奏する。前記制御方法は、外乱のモデルを必要とせずに、幅広い機械および装置に対して、より簡単に外乱補償を適用できるという効果を奏する。
(周期性の判定方法−予測誤差の極値検出と記憶)
図5は、コントローラ10がモデル予測誤差の時間変化について周期性の有無を判定する方法を説明するための図である。図4を用いて説明したように、算出部104は制御周期毎にモデル予測誤差をチェックし(算出し)、算出したモデル予測誤差を記憶部110に誤差データ1101として格納する。そして、極値検出部105は、算出部104により算出されたモデル予測誤差を時系列に並べ、モデル予測誤差の時間変化から、モデル予測誤差の極大値および極小値を検出する。
ここで、図5の中段に例示している「モデル予測誤差」は、算出部104が算出した(記憶部110に誤差データ1101として格納されている)モデル予測誤差を時系列に並べた曲線(直線)を示している。なお、以下の説明においては、「モデル予測誤差を時系列に並べた曲線(直線)」を、「予測誤差変動波形」とも称する。
極値検出部105は、図5の中段に例示している「モデル予測誤差」の曲線(予測誤差変動波形)から、丸で囲んだ極大値および極小値を順に確定していく。そして、極値検出部105は、確定した極値の情報として、「P(j):j番目の極値」および「Ptime(j):j番目の極値の出現時刻(検出時刻)」を、極値データ1102として記憶部110に格納する。
極値検出部105は、図5の中段に例示している「モデル予測誤差」の曲線(予測誤差変動波形)において、極大値と極小値とを交互に確定して行く。ここで、判定部106は、極値検出部105が、極大値と極小値とを合計4以上確定すれば、次の要領で周期性の有無を判定する。すなわち、極値検出部105が最後に確定した極値がP(K)として、次の条件を満たす場合に、判定部106は、モデル予測誤差の時間変化について、周期性ありと判定する。
Figure 2018041149
ここで、EPS1は、「0」〜「1」の範囲で予め決めておけばよい。例えば、「EPS1=0.2」などに設定しておく。EPS1の値を「1」に近い値に設定しておくほど、判定部106による「モデル予測誤差の時間変化に係る周期性の有無の判定」は甘くなる。なお、EPS1は、ユーザが「0」〜「1」の範囲で設定することができるようにしておいてもよい。
すなわち、コントローラ10において、判定部106は、極値検出部105により複数の前記極大値の各々が検出された時刻の間隔と、極値検出部105により複数の前記極小値の各々が検出された時刻の間隔との差に基づいて、前記モデル予測誤差の時間変化について周期性の有無を判定する。
前記の構成によれば、判定部106は、極値検出部105により複数の前記極大値の各々が検出された時刻の間隔と、極値検出部105により複数の前記極小値の各々が検出された時刻の間隔との差に基づいて、前記モデル予測誤差の時間変化について周期性の有無を判定する。
したがって、コントローラ10は、複数の前記極大値の各々が検出された時刻の間隔と、複数の前記極小値の各々が検出された時刻の間隔との差との差に基づいて、前記モデル予測誤差の時間変化について周期性の有無を判定し、前記周期性が有ると判定すると、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正することができるという効果を奏する。
例えば、判定部106は、極値検出部105により複数の前記極大値の各々が検出された時刻の間隔と、極値検出部105により複数の前記極小値の各々が検出された時刻の間隔との差が所定の値(前述のEPS1)よりも小さいと、前記モデル予測誤差の時間変化について周期性が有ると判定する。
したがって、コントローラ10は、複数の前記極大値の各々が検出された時刻の間隔と、複数の前記極小値の各々が検出された時刻の間隔との差が所定の値よりも小さいと、前記モデル予測誤差の時間変化について周期性が有ると判定し、前記或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正することができるという効果を奏する。
なお、前述の通り、EPS1は、ユーザが「0」〜「1」の範囲で設定できるようにしておいてもよく、EPS1の値を「1」に近い値に設定しておくほど、判定部106による「モデル予測誤差の時間変化に係る周期性の有無の判定」は甘くなる。
また、上述の例では、判定部106が、
Figure 2018041149
を、
Figure 2018041149
で割って、モデル予測誤差の時間変化について、周期性の有無を判定する例を説明した。
しかしながら、判定部106が、モデル予測誤差の時間変化の周期性の有無を判定するのに、
Figure 2018041149
を、
Figure 2018041149
で割ることは必須ではない。
判定部106は、極値検出部105により複数の前記極大値の各々が検出された時刻の間隔と、極値検出部105により複数の前記極小値の各々が検出された時刻の間隔との差に基づいて、前記モデル予測誤差の時間変化について周期性の有無を判定すればよい。すなわち、判定部106は、
Figure 2018041149
がEPS1よりも小さい(つまり、「0」に近い)場合に、モデル予測誤差の時間変化に周期性があると判定してもよい。
さらに、上述の例では、極値検出部105が、予測誤差変動波形(モデル予測誤差を時系列に並べた曲線)から、極大値と極小値とを各々2つずつ検出し、判定部106が、2つの極大値の各々が検出された時刻の間隔と、2つの極小値の各々が検出された時刻の間隔との差に基づいて、モデル予測誤差の時間変化について周期性の有無を判定していた。
しかしながら、極値検出部105が予測誤差変動波形から極値を3つ検出し、判定部106が、隣り合う2つの極値の各々が検出された時刻の間隔を求め、最初の間隔と次の間隔との差に基づいて、モデル予測誤差の時間変化について周期性の有無を判定してもよい。すなわち、1番目の極値(例えば、極大値)が検出された時刻と2番目の極値(例えば、極小値)が検出された時刻との間隔(最初の間隔)と、2番目の極値(例えば、極小値)が検出された時刻と3番目の極値(例えば、極大値)が検出された時刻との間隔(次の間隔)との差に基づいて、判定部106は、モデル予測誤差の時間変化について周期性の有無を判定してもよい。
また、図5における極値の検出において、計測ノイズによる誤検出を防ぎ、また、静止摩擦による停止状態での微小な振動を誤検出することを防ぐために、極値検出部105は、極大値と極小値との差が或る閾値を超える場合にのみ極値を確定するようにしてもよい。すなわち、コントローラ10において、極値検出部105は、前記連続する複数の前記モデル予測誤差の時間変化における前記モデル予測誤差の極大値および極小値のうち、前記極大値と前記極小値との差が所定値よりも大きな前記極大値および前記極小値のみを検出する。
前記の構成によれば、極値検出部105は、前記連続する複数の前記モデル予測誤差の時間変化における前記モデル予測誤差の極大値および極小値のうち、前記極大値と前記極小値との差が所定値よりも大きな前記極大値および前記極小値のみを検出する。
ここで、前記モデル予測誤差は、算出部104により、制御対象30の制御量の実測値と前記モデルを用いて予測した制御量の予測値との誤差として算出されるのであり、前記実測値は計測ノイズを含み得る。また、例えば静止摩擦による停止状態での微小な振動が、前記実測値に影響し得る。つまり、算出部104により算出される前記モデル予測誤差は、前記実測値の含み得る計測ノイズ等に影響を受け得る。
極値検出部105は、前記連続する複数の前記モデル予測誤差の時間変化における前記モデル予測誤差の極大値および極小値のうち、前記極大値と前記極小値との差が所定値よりも大きな前記極大値および前記極小値のみを検出することにより、前記計測ノイズ等に影響された前記モデル予測誤差を誤って極値(極大値または極小値)として検出してしまうことを防ぐことができる。
したがって、コントローラ10は、高精度で検出した極値の検出時刻を用いて、前記モデル予測誤差の時間変化について周期性の有無を判定することができるという効果を奏する。
(予測値の補正方法−1周期前の予測誤差を使用して予測を補正)
図6は、コントローラ10が予測値を補正する方法を説明するための図である。判定部106が、モデル予測誤差の時間変化について周期性ありと判定した場合、予測値補正部107は、以下に示す方法により予測補正量を算出する。
予測値補正部107は、先ず、時刻n時点で、最後に確定した極値時刻から現時刻までの経過時間である経過時間「n−Ptime(k)」を求める。
予測値補正部107は、次に、現時刻から1周期前の時刻を次式で求め、これを予測の起点とする。すなわち、
Ptime(k−2)+n−Ptime(k)
そして、予測値補正部107は、上の式から求めた時刻から、むだ時間d区間、および予測ホライズンH区間における、予測誤差の変化量を、予測補正量Cd(n)、CH(n)として求める。すなわち、
Figure 2018041149
なお、前述の通り、「PE(n)」は「時刻nの予測誤差」を意味しており、算出部104は、以下の式によりモデル予測誤差PE(n)を算出し、算出したモデル予測誤差PE(n)を記憶部110に誤差データ1101として格納している。
PE(n)=PV(n)−Y(n−d)
(外乱補償の効果の実証)
コントローラ10は、制御対象30の制御量の実測値と、制御対象30(およびサーボドライバ20)のモデルを用いて予測した制御量の予測値との誤差であるモデル予測誤差の時間変化について周期性の有無を判定する。そして、モデル予測誤差の時間変化について周期性が有ると判定すると、コントローラ10は、予測誤差変動周期について、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する。コントローラ10が実行する上記外乱補償処理の奏する効果について、以下、「単純な(一般的な)外乱」と「複雑な外乱」の各々について、説明していく。
なお、「単純な(一般的な)外乱」とは、例えば、その大きさの時間変化を示す変動波形(予測誤差変動波形)が1つの周期しかもたない外乱をいう。また、「複雑な外乱」とは、例えば、その大きさの時間変化を示す変動波形(予測誤差変動波形)が複数の周期を持つような外乱をいう。
(単純な外乱の補償)
図7は、コントローラ10が外乱補償処理を実行した場合の効果を説明するための図である。すなわち、図7に示す例は、「100msで60mm移動し、その後100ms間停止する」目標軌道データ(目標軌道)の制御に対し、「最大振幅10%、周波数100Hzの正弦波状の外乱」を印加した場合について、コントローラ10が外乱補償処理を実行した場合の効果を説明するための図である。
図7に示すように、時刻40ms辺りで、コントローラ10が周期性外乱補償機能を実行し、時刻40ms以降の位置偏差は小さく抑制できている。すなわち、時刻40ms以降は、前記外乱の制御への影響は抑制されている。例えば、時刻40ms以降における位置偏差は、時刻40msよりも前における位置偏差と異なり、ほとんど「0」で推移している。また、時刻40ms以降におけるトルクは、時刻40msよりも前におけるトルクに比べて変化が穏やかなものとなっており、時刻40msよりも前におけるような乱高下が無くなっている。つまり、コントローラ10は、外乱に周期性があると判定すると、外乱の周期(つまり、予測誤差変動周期)について、現在より前(過去)において算出したモデル予測誤差を用いて、現在(現時刻)の制御量予測値を補正することで、前記外乱の制御への影響を抑制している。
ここで、位置偏差および位置の振動波形の少なくとも一方を用いて外乱の周期性を判断する方法では、外乱補償が働き出すと、周期性の正しい判定ができなくなる。外乱補償によって外乱が補償され、つまり、位置偏差および位置の振動波形が外乱補償によって変形されるため、外乱を(外乱の周期性を)正確に把握することができなくなるからである。
これに対して、コントローラ10においては、コントローラ10が外乱補償によって位置偏差の振動を抑制している間も、予測誤差には外乱の振動波形が残る。したがって、コントローラ10は、継続的に外乱を補償することができる。コントローラ10は、予測誤差を用いて外乱の周期性を判断するので、外乱補償を実行した後であっても、予測誤差において外乱の振動波形を検出することができるので、コントローラ10は、外乱の周期性を正確に判断することができるという効果を奏する。
(複雑な外乱の補償)
図7に示す例において、コントローラ10は、予測誤差変動波形が1つの周期しかもたない「単純な(一般的な)外乱」を補償していた。これに対し、予測誤差変動波形が複数の周期を持つ「複雑な外乱」を補償する際には、コントローラ10は、周期下限(値)を利用することにより、モデル予測誤差の時間変化の周期である予測誤差変動周期を正確に把握することができる。以下、図8および図9を用いて説明していく。
図8は、コントローラ10が周期下限値を用いてモデル予測誤差の周期性の有無を判定する、「複雑な外乱」を説明するための図である。図7に例示した「単純な(一般的な)外乱」の変動波形(予測誤差変動波形)が単一周期であったのに対して、図8に例示する「複雑な外乱」の変動波形(予測誤差変動波形)は、複数の周期を持っている。
図8において、捉えたいのは周期(A)であり、周期(B)は無視しなければならない。そこで、周期(B)よりも長く、周期(A)よりも短い時間を、周期下限値として設定することで、コントローラ10において、判定部106は、周期(B)を無視することができる。例えば、極値検出部105は、予測誤差変動波形からモデル予測誤差の時間変化における極大値および極小値の少なくとも一方を確定する際に、直前に確定した極大値(極小値)との時間差が周期下限値に満たないものは、極小値(極大値)ではないとみなす。すなわち、周期下限値を設定し、極値検出部105は、極大値(極小値)間の検出時刻の差が周期下限値よりも短いときは、その極値を確定しない(つまり、極大値(極小値)とはみなさない)。極値検出部105は、(1)複数の前記極大値の間の検出時刻の間隔が周期下限値よりも長くなるように、複数の前記極大値の各々を検出し、(2)複数の前記極小値の間の検出時刻の間隔が周期下限値よりも長くなるように、複数の前記極小値の各々を検出する。
判定部106は、検出時刻の差が周期下限値以上である複数の前記極大値(極小値)を用いて(より正確には、複数の前記極大値(極小値)の検出時刻の間隔を用いて)、モデル予測誤差の時間変化の周期性の有無を判断する。
また、極値検出部105が周期下限値を用いて検出する(確定する)極値の精度を向上させるのに代えて、判定部106が周期下限値を用いることによって、モデル予測誤差の時間変化についての、周期性の有無の判定精度を向上させてもよい。すなわち、判定部106が、(1)極値検出部105によって検出された複数の極大値の間の検出時刻の間隔のうち、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極大値が検出された時刻の間隔として用い、(2)極値検出部105によって検出された複数の極小値の間の検出時刻のうち、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極小値が検出された時刻の間隔として用いてもよい。
判定部106および極値検出部105の少なくとも一方が周期下限値を用いることにより、図8に例示する予測誤差変動波形において、判定部106は周期(B)ではなく周期(A)について、モデル予測誤差の時間変化について周期性の有無を判定する。そして、判定部106によりモデル予測誤差の時間変化について周期性が有ると判定されると、予測値補正部107は、モデル予測誤差の時間変化である予測誤差変動周期(つまり、周期(A))について、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する。
次に、コントローラ10が、以上に説明したように、予測誤差変動波形が複数の周期を持つ「複雑な外乱」を、周期下限値を用いて補償した場合の効果について、図9を用いて説明していく。
図9は、コントローラ10が周期下限値を用いた外乱補償処理を実行した場合の効果を説明するための図である。すなわち、図9に示す例は、「100msで60mm移動し、その後100ms間停止する」目標軌道データ(目標軌道)の制御に対し、複数の周期の予測誤差変動波形で示される「複雑な外乱」を印加した場合について、コントローラ10が外乱補償処理を実行した場合の効果を説明するための図である。
コントローラ10が実行する処理は、図7に例示した場合と比べて、図9に例示する場合は、周期下限値を用いた点のみである。すなわち、図9に例示する場合において、コントローラ10(極値検出部105)は、図7に例示した場合における処理に、「周期下限値に満たない時間では極値を確定しない」という処理を追加しただけの処理を実行する。
図9の差異下段に例示しているモデル予測誤差は、予測誤差変動波形が複数の周期を有している。図8を用いて説明したように、予測誤差変動波形が複数の周期を持つ場合には、最も長い周期だけを検出する必要がある。
コントローラ10において、極値検出部105は、周期下限値を用いて検出する(確定する)極値の精度を向上させる。すなわち、コントローラ10は、周期の下限値(周期下限値)を予め設定しておき、この下限値に満たない周期は無視することによって、最も長い周期の予測誤差変動を検出することができる。
図9の真ん中の列には、予測誤差変動波形が複数の周期を持つ「複雑な外乱」に対し、コントローラ10が、通常の外乱補償(つまり、「周期下限値を用いない」外乱補償処理)を実行した場合の位置偏差およびトルク等の軌跡が示されている。
図8を用いて説明したように、予測誤差変動波形が複数の周期を持つ「複雑な外乱」は、モデル予測誤差の時間変化について周期性を正しく判定することが困難であり、また、モデル予測誤差の時間変化の周期を正しく算定することが困難である。
したがって、「複雑な外乱」に対し、コントローラ10が、「周期下限値を用いない」で外乱補償処理を実行した場合の位置偏差およびトルク等の軌跡は、図9の真ん中の列に示すように、外乱補償処理を実行しない場合の位置偏差およびトルク等の軌跡(図9の左側の列に示す位置偏差およびトルク等の軌跡)に類似している。つまり、コントローラ10は、「周期下限値を用いない」場合、「複雑な外乱」による制御の乱れを抑制することができず、例えば、位置偏差変動を抑制できない。
これに対して、図9の右側の列に示すように、予測誤差変動波形が複数の周期を持つ「複雑な外乱」に対し、コントローラ10は、周期下限値を用いた外乱補償処理を実行することにより、位置偏差変動を良好に抑制できている。また、トルクの変化についても、穏やかなものとすることができている。
すなわち、コントローラ10は、周期下限値を用いることにより、予測誤差変動波形が複数の周期を持つ「複雑な外乱」について、その時間変化に係る周期性の有無を正確に判定し、かつ、前記「複雑な外乱」の時間変化の周期(つまり、モデル予測誤差の時間変化の周期)を正しく算定することができる。そして、コントローラ10は、外乱に周期性があると判定すると、外乱の周期(つまり、予測誤差変動周期)について、現在より前(過去)において算出したモデル予測誤差を用いて、現在(現時刻)の制御量予測値を補正することで、前記外乱の制御への影響を抑制している。
すなわち、コントローラ10において、極値検出部105は、(1)複数の前記極大値の間の検出時刻の間隔が所定の周期よりも長くなるように、複数の前記極大値の各々を検出し、(2)複数の前記極小値の間の検出時刻の間隔が所定の周期よりも長くなるように、複数の前記極小値の各々を検出する。
前記の構成によれば、極値検出部105は、複数の前記極大値(前記極小値)の間の検出時刻の間隔が所定の周期よりも長くなるように、複数の前記極大値(前記極小値)の各々を検出する。つまり、極値検出部105は、極大値(極小値)間の検出時刻の差(間隔)が所定の周期よりも短いときは、その極値を確定しない(つまり、極大値(極小値)とは見做さない)。極値検出部105は、例えば、直前に確定した極大値(極小値)との時間差が周期下限値に満たない山(谷)は、極大値(極小値)ではないとみなしてもよい。
ここで、例えば前記モデル予測誤差の時間変化を示す曲線が、大きな周期曲線中に小さな周期曲線を含むようなものである場合、前記モデル予測誤差の時間変化の周期性を判定する際に用いるべき周期は、前記大きな周期曲線の周期である。
したがって、コントローラ10は、前記複数の前記極値(極大値たは極小値)が検出された時刻の間隔であって、所定の周期(周期下限値)よりも長い間隔を、前記周期性の有無を判定する際に用いるので、前記モデル予測誤差の時間変化について周期性の有無を正しく判定することができるという効果を奏する。
(ユーザの指定する周期下限値を利用した周期性判定精度の向上)
なお、判定部106がモデル予測誤差の時間変化について周期性の有無を判定する際に用いる上記周期下限値は、ユーザが指定するものであってもよい。すなわち、コントローラ10の受付部108は、周期下限値を指定するユーザ操作を受け付ける。そして、判定部106は、(1)極値検出部105により複数の極大値が検出されると、前記複数の極大値の間の検出時刻の間隔のうち、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極大値が検出された時刻の間隔として用い、(2)極値検出部105により複数の極小値が検出されると、前記複数の極小値の間の検出時刻のうち、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極小値が検出された時刻の間隔として用いる。
前記の構成によれば、判定部106は、(1)極値検出部105により検出された複数の前記極大値の間の検出時刻の間隔のうち、前記前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極大値が検出された時刻の間隔として用い、(2)極値検出部105により検出された複数の前記極小値の間の検出時刻の間隔のうち、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極小値が検出された時刻の間隔として用いる。
ここで、例えば前記モデル予測誤差の時間変化を示す曲線が、大きな周期曲線中に小さな周期曲線を含むようなものである場合、前記モデル予測誤差の時間変化の周期性を判定する際に用いるべき周期は、前記大きな周期曲線の周期である。
したがって、コントローラ10は、前記複数の前記極値(極大値たは極小値)が検出された時刻の間隔であって、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いるので、前記モデル予測誤差の時間変化について周期性の有無を正しく判定することができるという効果を奏する。
(表示画面の一例)
図10は、コントローラ10が表示する予測誤差のトレンドグラフの一例を示す図である。図10に示すように、コントローラ10の表示制御部109は、モデル予測誤差(算出部104が算出し、記憶部110に格納されている誤差データ1101)の経時変化をユーザに表示する。
前記の構成によれば、表示制御部109は、前記モデル予測誤差の経時変化をユーザに表示する。したがって、コントローラ10は、前記モデル予測誤差の経時変化をユーザに表示するので、ユーザが、コントローラ10によって表示された前記モデル予測誤差の経時変化(いわゆる、トレンドグラフ)に現れる波形から、外乱の様子を近似的に把握することができるという効果を奏する。
表示制御部109が予測誤差(モデル予測誤差)のトレンドグラフを表示することにより、ユーザは、外乱が発生するタイミング、および発生した外乱がどのように変化するかを確認することができる。特に、外乱補償が有効に働いている場合には、ユーザは、制御偏差(例えば、位置偏差)の乱れのみによって、外乱発生の様子を確認することは困難である。表示制御部109が予測誤差のトレンドグラフを表示するので、ユーザは、外乱が発生している時点(タイミング)、および、外乱の経時変化を容易に確認することができる。
図11は、コントローラ10が補償したトルク外乱波形を示す図である。なお、図11の(A)は、図7に示した例においてコントローラ10が外乱補償処理を実行したトルク外乱波形(単一周期の予測誤差変動波形で示される「単純な(一般的な)外乱」)を示している。また、図11の(B)は、図9に示した例においてコントローラ10が外乱補償処理を実行したトルク外乱波形(複数の周期の予測誤差変動波形で示される「複雑な外乱」)を示している。
〔実施形態2〕
本発明の他の実施形態について、図12および図13に基づいて説明すれば、以下のとおりである。なお記載の簡潔性を担保するため、実施形態1とは異なる構成(処理の手順及び処理の内容)のみについて説明する。すなわち、実施形態1で記載された構成等は、本実施形態にもすべて含まれ得る。また、実施形態1で記載した用語の定義も同じである。
(制御システムの概要)
図13は、コントローラ100を含む制御システム2の概要を示す図である。制御システム2は、コントローラ10が、位置/速度制御を実行し、予測制御によりサーボドライバ20へのトルク指令値を出力する制御システム1と異なり、コントローラ100は予測制御によりサーボドライバ120への指令位置を補正し、サーボドライバ120が位置/速度制御を実行する。すなわち、制御システム1においてコントローラ10はサーボドライバ20にトルク指令値を出力していたのに対し、制御システム2においてコントローラ100はサーボドライバ120に指令位置を出力する。
コントローラ100は、モデル予測制御機構を備えるコントローラであって、サーボドライバ120に対し、操作量としての指令位置を出力する。コントローラ100は、例えば、ユーザ等の外部から目標軌道データ(目標軌道)を受け付け(軌道生成)、受け付けた目標軌道データから制御周期ごとに指令値(指令位置)を生成する。コントローラ100は、また、制御対象30から、「制御対象30の出力である制御量(制御量の実測値)」を、フィードバック情報として取得する。すなわち、コントローラ100は、フィードバック位置として、制御対象30が出力した位置を取得する。
ここで、コントローラ100は、制御対象30のモデルを内部モデルとして有し、この内部モデルを用いて、生成した指令位置と、「制御対象30の出力であるフィードバック位置(制御量の実測値)」と、に基づいて、サーボドライバ120に対し、操作量としての指令位置を出力する。コントローラ100が用いる内部モデルは、サーボドライバ120および制御対象30のモデルである。制御システム2では、サーボドライバ120の特性を無視できないため、制御対象30のみのモデルでは不十分であり、コントローラ100は、内部モデルとして、サーボドライバ120および制御対象30のモデルを必要とする。
コントローラ100は、前記内部モデルを用いて制御対象30の出力する制御量(フィードバック位置)を予測するとともに、予測誤差を推定して外乱補償を行い、つまり、予測した制御量(予測値)を、予め記憶しておいたモデル予測誤差(1つ前の予測誤差変動周期におけるモデル予測誤差)を用いて補正する。そして、コントローラ100は、モデル予測誤差を用いて補正した予測値である予測補正値(補正後予測値)を用いて、サーボドライバ120に出力する補正後指令位置(操作量)を算出する。
サーボドライバ120は、制御対象30について位置/速度制御を実行する。すなわち、サーボドライバ120は、コントローラ100から、指令位置(補正後指令位置)を取得する。サーボドライバ120は、また、制御対象30から、「制御対象30の出力である制御量(制御量の実測値)」を、フィードバック情報として取得する。すなわち、サーボドライバ120は、フィードバック速度およびフィードバック位置(フィードバック速度およびフィードバック位置の少なくとも一方)として、制御対象30が出力した速度および位置(速度および位置の少なくとも一方)を取得する。
サーボドライバ120は、コントローラ100から取得した指令位置(補正後指令位置)と、制御対象30から取得したフィードバック速度およびフィードバック位置の少なくとも一方と、を用いて、制御対象30について位置/速度制御を実行する。
(コントローラの概要)
これまで図13を用いて概要を説明してきた制御システム2に含まれるコントローラ100について、次に、その構成および処理の内容等を、図12を用いて説明していく。図12を参照して詳細を説明する前に、コントローラ100についての理解を容易にするため、その概要について以下のように整理しておく。
コントローラ100は、前記指令値に、予測値補正部107により補正された前記予測値が追従するよう、前記指令値を補正する指令値補正部112と、指令値補正部112により補正された前記指令値である補正後指令値を、サーボドライバ120(制御対象30にモーション制御を行う制御系)に、制御対象30の位置制御に係る指令値として出力する位置指令部113と、をさらに備えている。
前記の構成によれば、指令値補正部112は、予測値補正部107により補正された前記予測値が前記指令値に追従するよう前記指令値を補正し、位置指令部113は、指令値補正部112により補正された前記指令値である補正後指令値を、サーボドライバ120に、制御対象30の位置制御に係る指令値として出力する。
したがって、コントローラ10は、前記外乱による制御量の変化を操作量に変換するための演算処理を実行せずに、前記指令値に制御対象30の制御量が追従するように補正された前記指令値を、サーボドライバ120に出力することができるという効果を奏する。
(コントローラの詳細)
以上に概要を説明したコントローラ100について、次に、その構成の詳細を、図12を用いて説明する。
図12は、本発明の実施形態2に係るコントローラ100の要部構成を示すブロック図である。図12に示すコントローラ100は、図1に示すコントローラ10のトルク算出部102およびトルク指令部103に代えて、指令値補正部112および位置指令部113を備えている。コントローラ100のトルク算出部102およびトルク指令部103以外の構成については、コントローラ10のトルク算出部102およびトルク指令部103以外の構成と同様なので、詳細は略記する。
指令値補正部112は、モデル予測制御を実行し、具体的には、制御対象(つまり、サーボドライバ120および制御対象30)の内部モデルを用いて未来の状態を予測し、制御対象30の未来の出力(制御量の予測値)ができる限り目標値(指令値、つまり指令位置)に近づくように操作量(指令位置)を決定する。つまり、指令値補正部112は、前記内部モデルに基づいて未来の出力(制御量)の変化を予測し、出力と目標値とができるだけ近づくように入力(操作量、つまり指令位置)を決定するものである。
指令値補正部112は、制御対象(つまり、制御対象30)の挙動をモデル化した前記内部モデルを含み、前記内部モデルを用いて、各制御周期において制御対象30が出力する制御量を予測する。すなわち、指令値補正部112は、前記内部モデルを用いて、各制御周期における予測値(制御量の予測値)を算出する。指令値補正部112は、算出した予測値(予測制御量)を算出部104に通知する。
指令値補正部112は、また、予測値補正部107から取得する予測補正値(補正後予測値)が、つまり、予測値補正部107により補正された予測値(制御量の予測値)が、指令値(指令位置)に追従するのに必要な操作量(補正後指令位置)を、前記内部モデルを用いて算出する。指令値補正部112は、算出した補正後指令位置を操作量として位置指令部113に通知する。
位置指令部113は、指令値補正部112から通知された補正後指令位置(操作量)を、サーボドライバ120(制御対象30にモーション制御を行う制御系)に、制御対象30の位置/速度制御に係る指令値として出力する。
〔ソフトウェアによる実現例〕
コントローラ10および100の制御ブロック(特に、指令値生成部101、トルク算出部102、トルク指令部103、算出部104、極値検出部105、判定部106、予測値補正部107、受付部108、表示制御部109、指令値補正部112、および位置指令部113)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
後者の場合、コントローラ10および100は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
10 コントローラ(モデル予測制御装置)
30 制御対象
100 コントローラ(モデル予測制御装置)
102 トルク算出部
103 トルク指令部
104 算出部
105 極値検出部
106 判定部
107 予測値補正部
108 受付部
109 表示制御部
112 指令値補正部
113 位置指令部
1101 誤差データ(モデル予測誤差)
1102 極値データ(モデル予測誤差の極大値および極小値)
S30 判定ステップ
S40 予測値補正ステップ

Claims (12)

  1. 目標軌道から制御周期ごとに生成された指令値に対応する制御対象の制御量を、前記制御対象のモデルを用いて予測するモデル予測制御装置であって、
    前記制御対象の制御量の実測値と前記モデルを用いて予測した制御量の予測値との誤差であるモデル予測誤差の時間変化について周期性の有無を判定する判定部と、
    前記判定部により前記モデル予測誤差の時間変化について周期性が有ると判定されると、前記モデル予測誤差の時間変化の周期である予測誤差変動周期について、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する予測値補正部と、を備えることを特徴とするモデル予測制御装置。
  2. 連続する複数の前記制御周期の各々について、前記モデル予測誤差を算出する算出部と、
    前記算出部により各々算出された、連続する複数の前記モデル予測誤差の時間変化から、前記モデル予測誤差の極大値および極小値を検出する極値検出部と、をさらに備え、
    前記判定部は、前記極値検出部により前記極大値および前記極小値の各々が検出された時刻から、前記モデル予測誤差の時間変化について周期性の有無を判定することを特徴とする請求項1に記載のモデル予測制御装置。
  3. 前記判定部は、前記極値検出部により複数の前記極大値の各々が検出された時刻の間隔と、前記極値検出部により複数の前記極小値の各々が検出された時刻の間隔との差に基づいて、前記モデル予測誤差の時間変化について周期性の有無を判定することを特徴とする請求項2に記載のモデル予測制御装置。
  4. 前記極値検出部は、前記連続する複数の前記モデル予測誤差の時間変化における前記モデル予測誤差の極大値および極小値のうち、前記極大値と前記極小値との差が所定値よりも大きな前記極大値および前記極小値のみを検出することを特徴とする請求項2または3に記載のモデル予測制御装置。
  5. 前記極値検出部は、
    複数の前記極大値の間の検出時刻の間隔が所定の周期よりも長くなるように、複数の前記極大値の各々を検出し、
    複数の前記極小値の間の検出時刻の間隔が所定の周期よりも長くなるように、複数の前記極小値の各々を検出することを特徴とする請求項3または4に記載のモデル予測制御装置。
  6. 周期下限値を指定するユーザ操作を受け付ける受付部をさらに備え、
    前記判定部は、
    前記極値検出部により複数の極大値が検出されると、前記複数の極大値の間の検出時刻の間隔のうち、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極大値が検出された時刻の間隔として用い、
    前記極値検出部により複数の極小値が検出されると、前記複数の極小値の間の検出時刻のうち、前記周期下限値よりも長い間隔を、前記周期性の有無を判定する際に用いる前記極小値が検出された時刻の間隔として用いることを特徴とする請求項3から5のいずれか1項に記載のモデル予測制御装置。
  7. 前記モデル予測誤差の時間変化をユーザに表示する表示制御部をさらに備えることを特徴とする請求項1から6のいずれか1項に記載のモデル予測制御装置。
  8. 前記指令値に、前記予測値補正部により補正された前記予測値が追従するのに必要なトルクを算出するトルク算出部と、
    前記トルク算出部により算出されたトルクを、前記制御対象にモーション制御を行う制御系に、前記制御対象のトルク制御に係る指令値として出力するトルク指令部と、をさらに備えることを特徴とする請求項1から7のいずれか1項に記載のモデル予測制御装置。
  9. 前記指令値に、前記予測値補正部により補正された前記予測値が追従するよう、前記指令値を補正する指令値補正部と、
    前記指令値補正部により補正された前記指令値である補正後指令値を、前記制御対象にモーション制御を行う制御系に、前記制御対象の位置制御に係る指令値として出力する位置指令部と、をさらに備えることを特徴とする請求項1から7のいずれか1項に記載のモデル予測制御装置。
  10. 目標軌道から制御周期ごとに生成された指令値に対応する制御対象の制御量を、前記制御対象のモデルを用いて予測するモデル予測制御装置の制御方法であって、
    前記制御対象の制御量の実測値と前記モデルを用いて予測した制御量の予測値との誤差であるモデル予測誤差の時間変化について周期性の有無を判定する判定ステップと、
    前記判定ステップにて前記モデル予測誤差の時間変化について周期性が有ると判定すると、前記モデル予測誤差の時間変化の周期である予測誤差変動周期について、或る予測誤差変動周期の1つ前の予測誤差変動周期における前記モデル予測誤差を用いて、前記或る予測誤差変動周期における前記モデルを用いて予測した制御量の予測値を補正する予測値補正ステップと、を含むことを特徴とする制御方法。
  11. 請求項1から9のいずれか1項に記載のモデル予測制御装置としてコンピュータを機能させるための情報処理プログラムであって、前記各部としてコンピュータを機能させるための情報処理プログラム。
  12. 請求項11に記載の情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2016172850A 2016-09-05 2016-09-05 モデル予測制御装置、モデル予測制御装置の制御方法、情報処理プログラム、および記録媒体 Active JP6859633B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2016172850A JP6859633B2 (ja) 2016-09-05 2016-09-05 モデル予測制御装置、モデル予測制御装置の制御方法、情報処理プログラム、および記録媒体
CN201710092421.5A CN107797446B (zh) 2016-09-05 2017-02-21 模型预测控制装置、控制方法及记录介质
EP17157324.9A EP3291031A1 (en) 2016-09-05 2017-02-22 Model predictive control device, control method of model predictive device, information processing program and recording medium
US15/439,918 US10394197B2 (en) 2016-09-05 2017-02-22 Model predictive control device, control method of model predictive control device, information processing program and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016172850A JP6859633B2 (ja) 2016-09-05 2016-09-05 モデル予測制御装置、モデル予測制御装置の制御方法、情報処理プログラム、および記録媒体

Publications (2)

Publication Number Publication Date
JP2018041149A true JP2018041149A (ja) 2018-03-15
JP6859633B2 JP6859633B2 (ja) 2021-04-14

Family

ID=58314070

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016172850A Active JP6859633B2 (ja) 2016-09-05 2016-09-05 モデル予測制御装置、モデル予測制御装置の制御方法、情報処理プログラム、および記録媒体

Country Status (4)

Country Link
US (1) US10394197B2 (ja)
EP (1) EP3291031A1 (ja)
JP (1) JP6859633B2 (ja)
CN (1) CN107797446B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102475484B1 (ko) * 2021-06-10 2022-12-09 주식회사 원프레딕트 회전 기기에서 진동을 예측하는 방법 및 이러한 방법을 수행하는 장치

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6935775B2 (ja) * 2018-03-15 2021-09-15 トヨタ自動車株式会社 プラント制御装置
WO2020125901A1 (en) * 2018-12-21 2020-06-25 Vestas Wind Systems A/S Wind turbine control based on optimising and non-optimising controller routines
JP7151547B2 (ja) * 2019-02-25 2022-10-12 オムロン株式会社 予測制御開発装置、予測制御開発方法、及び予測制御開発プログラム
JP7143796B2 (ja) * 2019-03-20 2022-09-29 オムロン株式会社 制御装置、制御方法および制御プログラム
CN110187637B (zh) * 2019-06-03 2021-12-10 重庆大学 在控制方向和期望轨迹不确定下的机器人系统控制方法
CN110458423B (zh) * 2019-07-23 2022-12-06 南京国睿信维软件有限公司 基于bom跟踪的产品寿终预算方法
CN111984866B (zh) * 2020-08-20 2023-09-05 北京奇艺世纪科技有限公司 一种数据的排行榜生成方法及装置
CN113189868B (zh) * 2021-03-26 2022-07-26 哈尔滨工大航博科技有限公司 伺服系统动态误差的精确补偿方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0538176A (ja) * 1991-07-24 1993-02-12 Mitsubishi Electric Corp 電動機速度制御装置
JP2000148207A (ja) * 1998-11-13 2000-05-26 Sumitomo Heavy Ind Ltd 位置制御装置
JP2009193192A (ja) * 2008-02-13 2009-08-27 Omron Corp モデル予測制御方法およびモデル予測制御装置
JP2014164340A (ja) * 2013-02-21 2014-09-08 Toyota Motor Corp 制御装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005339241A (ja) * 2004-05-27 2005-12-08 Nissan Motor Co Ltd モデル予測制御装置および車両用推奨操作量生成装置
US7536232B2 (en) * 2004-08-27 2009-05-19 Alstom Technology Ltd Model predictive control of air pollution control processes
JP5012075B2 (ja) 2007-02-15 2012-08-29 横河電機株式会社 プロセス制御装置
US8594828B2 (en) * 2008-09-30 2013-11-26 Rockwell Automation Technologies, Inc. System and method for optimizing a paper manufacturing process
JP5835378B2 (ja) * 2014-03-12 2015-12-24 株式会社豊田自動織機 周期検出モード制御装置及び方法
CN103984242B (zh) * 2014-05-19 2017-02-15 上海交通大学 基于模型预测控制的分层预测控制系统及其控制方法
JP2015225635A (ja) * 2014-05-30 2015-12-14 アズビル株式会社 最適化装置および方法
CN104047748B (zh) * 2014-06-16 2016-08-17 天津大学 一种基于主动扰动观测的燃油压力控制器及其控制方法
US9897984B2 (en) * 2014-08-05 2018-02-20 Mitsubishi Electric Research Laboratories, Inc. Model predictive control with uncertainties
JP7086600B2 (ja) * 2014-08-13 2022-06-20 フィッシャー-ローズマウント システムズ,インコーポレイテッド プロセス制御器、プロセス制御方法、プロセス制御デバイス、及び多重速度制御器
EP3206094B1 (en) * 2014-10-10 2021-06-09 Japan Science and Technology Agency Predicted value modification system, control system, predicted value modification method, control method, and predicted value modification program
US10386796B2 (en) * 2014-12-11 2019-08-20 University Of New Brunswick Model predictive controller and method with correction parameter to compensate for time lag
US10281897B2 (en) * 2015-06-02 2019-05-07 Mitsubishi Electric Research Laboratories, Inc. Model predictive control with uncertainties
CN105071678B (zh) * 2015-07-17 2017-12-15 苏州大学 一种有限开关状态模型预测控制方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0538176A (ja) * 1991-07-24 1993-02-12 Mitsubishi Electric Corp 電動機速度制御装置
JP2000148207A (ja) * 1998-11-13 2000-05-26 Sumitomo Heavy Ind Ltd 位置制御装置
JP2009193192A (ja) * 2008-02-13 2009-08-27 Omron Corp モデル予測制御方法およびモデル予測制御装置
JP2014164340A (ja) * 2013-02-21 2014-09-08 Toyota Motor Corp 制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102475484B1 (ko) * 2021-06-10 2022-12-09 주식회사 원프레딕트 회전 기기에서 진동을 예측하는 방법 및 이러한 방법을 수행하는 장치

Also Published As

Publication number Publication date
US10394197B2 (en) 2019-08-27
EP3291031A1 (en) 2018-03-07
JP6859633B2 (ja) 2021-04-14
CN107797446B (zh) 2021-04-30
US20180067461A1 (en) 2018-03-08
CN107797446A (zh) 2018-03-13

Similar Documents

Publication Publication Date Title
JP2018041149A (ja) モデル予測制御装置、モデル予測制御装置の制御方法、情報処理プログラム、および記録媒体
CN106873506B (zh) 校正装置、校正装置的控制方法、信息处理程序及记录介质
CN107797447B (zh) 模型预测控制装置、控制方法及记录介质
US10126718B2 (en) Control device, control program, and recording medium
Kiss et al. Operational stability prediction in milling based on impact tests
WO2015092853A1 (ja) 数値制御装置およびロギング方法
EP3379349A1 (en) Control device, control program, and control system
JP6888564B2 (ja) モデル予測制御装置、モデル予測制御装置の制御方法、情報処理プログラム、および記録媒体
RU2477887C1 (ru) Цифровое прогнозирующее устройство
JP6339602B2 (ja) サイクルタイムが比較可能な波形表示装置
US11598693B2 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium
CN104239199A (zh) 虚拟机器人的生成方法、自动化测试方法及相关装置
JP7024742B2 (ja) 制御装置、モデル作成方法および制御プログラム
WO2015177912A1 (ja) 指令生成装置および方法
CN113383281A (zh) 控制装置以及控制程序
US20230409909A1 (en) Data analysis system, data analysis method, and non-transitory computer-readable recording medium
US20210373508A1 (en) Waveform controller to operate machine
US20210325837A1 (en) Information processing apparatus, information processing method and computer program product
WO2020003839A1 (ja) 制御装置、制御装置の制御方法、情報処理プログラム、および記録媒体
JP2015028783A (ja) 自律学習型制御器
JP2020184336A (ja) 連続プロセスのための予測分析を実装する方法および装置
JPWO2014167761A1 (ja) 性能予測装置、性能予測方法および性能予測プログラム
JP2009303429A (ja) 発振成分抽出装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190705

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200804

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210309

R150 Certificate of patent or registration of utility model

Ref document number: 6859633

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150