JP7047794B2 - 制御装置および制御プログラム - Google Patents

制御装置および制御プログラム Download PDF

Info

Publication number
JP7047794B2
JP7047794B2 JP2019021905A JP2019021905A JP7047794B2 JP 7047794 B2 JP7047794 B2 JP 7047794B2 JP 2019021905 A JP2019021905 A JP 2019021905A JP 2019021905 A JP2019021905 A JP 2019021905A JP 7047794 B2 JP7047794 B2 JP 7047794B2
Authority
JP
Japan
Prior art keywords
control
model
dynamic characteristic
controlled object
target
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
JP2019021905A
Other languages
English (en)
Other versions
JP2020129291A (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.)
Omron Corp
Original Assignee
Omron 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 Omron Corp filed Critical Omron Corp
Priority to JP2019021905A priority Critical patent/JP7047794B2/ja
Priority to PCT/JP2020/002258 priority patent/WO2020162200A1/ja
Priority to EP20752283.0A priority patent/EP3923091B1/en
Priority to CN202080010406.1A priority patent/CN113383281B/zh
Priority to US17/424,609 priority patent/US11754992B2/en
Priority to KR1020217022518A priority patent/KR102524687B1/ko
Publication of JP2020129291A publication Critical patent/JP2020129291A/ja
Application granted granted Critical
Publication of JP7047794B2 publication Critical patent/JP7047794B2/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/042Adaptive 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 in which a parameter or coefficient is automatically adjusted to optimise the performance
    • 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/19Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • G05B19/27Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an absolute digital measuring device
    • G05B19/29Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an absolute digital measuring device for point-to-point control
    • G05B19/291Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an absolute digital measuring device for point-to-point control the positional error is used to control continuously the servomotor according to its magnitude
    • G05B19/298Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an absolute digital measuring device for point-to-point control the positional error is used to control continuously the servomotor according to its magnitude with a combination of feedback covered by G05B19/293 - G05B19/296
    • 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/19Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • 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/401Numerical 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 measuring, e.g. calibration and initialisation, measuring workpiece for machining purposes
    • 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
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32189Compare between original solid model and measured manufactured object
    • 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/42044Adapt model as function of difference between real and calculated position
    • 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/42077Position, speed or current, combined with vibration feedback
    • 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/42155Model

Landscapes

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

Description

本技術は、制御装置および制御プログラムに関する。
特開2004-120963号公報(特許文献1)は、内部制御情報をサンプリングして振動の周期と振幅とを検出する振動検出部と、安定な振動収束性を与える周期制御部からなる振動制御装置とを備えるサーボ制御装置を開示している。
特開2004-120963号公報 特開2018-120327号公報
特許文献1に開示のサーボ制御装置では、振動周波数変動に伴って振動が発生する場合、振動検出部によって振動の周期と振幅とが検出されてから、振動抑制のための制御が実行される。従って、一定時間振動状態を許容する必要があり、振動抑制のための制御開始が遅くなる。特に、位置決め時の残留振動を抑制したい場合、移動中に振動を検出することが困難であり、停止後に振動を検出することになるため、振動抑制のための制御開始が遅くなる。
特許文献1に開示のサーボ制御装置は、上記の内部制御情報としてトルク指令値を用いている。トルク指令値が振動する原因は、制御対象からフィードバックされる計測位置である。ただし、計測位置を計測する計測センサの性能によっては、制御対象の可動範囲の全ての位置を計測できない場合があり得る。しかしながら、特許文献1には、制御対象の可動範囲のうちの一部しか計測位置が得られない場合について考慮されていない。
本発明は、上記の問題に鑑みてなされたものであり、その目的は、制御対象の可動範囲のうちの一部しか計測位置が得られない場合であっても、位置決め時の制振性を向上させる制御装置および制御プログラムを提供することである。
本開示の一例によれば、制御装置は、制御対象を駆動するサーボ機構に接続され、制御対象の制御量が目標軌道に追従するようにサーボ機構に操作量を出力する。制御装置は、制御対象の位置を計測する計測センサから計測値を取得するための取得部と、制御周期毎に、操作量と制御対象の位置との関係を示す動特性モデルを用いたモデル予測制御を行なうことにより、サーボ機構に出力する操作量を生成する制御部とを備える。計測センサは、制御対象の停止位置を含む所定範囲において制御対象の位置を計測可能である。制御部は、制御対象の位置が所定範囲内である場合に、今回の制御周期における制御量として計測値を用いる第1モードに従ったモデル予測制御を実行する。制御部は、制御対象の位置が所定範囲外である場合に、今回の制御周期における制御量として動特性モデルの出力値を用いる第2モードに従ったモデル予測制御を実行する。
この開示によれば、制御対象の位置が計測可能範囲外であっても、第2モードに従ったモデル予測制御により操作量が生成される。そのため、制振性および目標軌道への追従性を高めることができる。さらに、制御対象の位置が計測可能範囲(制御対象の停止位置を含む)内である場合には、計測値を用いた第1モードのモデル予測制御により、制振性および目標軌道への追従性を高めることができる。このことから、制御対象の可動範囲のうちの一部しか計測位置が得られない場合であっても、位置決め時の制振性を向上させることができる。
上述の開示において、制御部は、第1モードにおいて、計測値を用いて動特性モデルの出力値を演算する。モデル予測制御では、動特性モデルの出力値が適宜演算される。この開示によれば、制御対象の状態が動特性モデルから変動した場合であっても、計測値を用いてモデル出力値が演算されることにより、制御対象の状態の変動に対するロバスト性を向上させることができる。
上述の開示において、制御部は、第1モードにおいて、今回の制御周期における計測値と今回の制御周期における動特性モデルの出力値との差分だけ、今回の制御周期までに演算された動特性モデルの出力値を補正する。
この開示によれば、計測値にノイズ成分が含まれる場合であっても、既に演算された動特性モデルの出力値を補正する際に、ノイズ成分が増幅されることを抑制できる。
上述の開示において、制御部は、制御対象の位置が所定範囲外から所定範囲内に変化した場合にN個の制御周期だけ第3モードに従った制御を行なう。Nは2以上の整数である。制御部は、第3モードにおいて、第1モードに従ったモデル予測制御によって生成される第1操作量と第2モードに従ったモデル予測制御によって生成される第2操作量との差分をN個の制御周期の間に解消するように、サーボ機構に出力する操作量を生成する。
この開示によれば、第2モードから第1モードへ切り替わる際のトルク変動を抑制することができる。
上述の開示において、サーボ機構は、制御対象を移動させるためのサーボモータと、サーボモータを駆動するサーボドライバとを含む。動特性モデルは、操作量とサーボモータの位置との関係を示す第1動特性モデルと、サーボモータの位置と制御対象の位置との関係を示す第2動特性モデルとを含む。第2動特性モデルは、制御対象の振動波形から得られる波形パラメータを用いて生成される。波形パラメータは、振動周波数および振動波形において連続する2つの波の振幅比のうち少なくとも振動周波数を含む。
この開示によれば、動特性モデルを第1動特性モデルおよび第2動特性モデルを用いて容易に作成することができる。
本開示の一例によれば、制御対象を駆動するサーボ機構に接続され、制御対象の制御量が目標値に追従するようにサーボ機構に操作量を出力する制御装置を実現するための制御プログラムは、コンピュータに、制御対象の位置を計測する計測センサから計測値を取得するステップと、制御周期毎に、操作量と制御対象の位置との関係を示す動特性モデルを用いたモデル予測制御を行なうことにより、サーボ機構に出力する操作量を生成するステップとを実行させる。計測センサは、制御対象の停止位置を含む所定範囲において制御対象の位置を計測可能である。操作量を生成するステップは、制御対象の位置が所定範囲内である場合に、今回の制御周期における制御量として計測値を用いる第1モードに従ったモデル予測制御を実行するステップと、制御対象の位置が所定範囲外である場合に、今回の制御周期における制御量として動特性モデルの出力値を用いる第2モードに従ったモデル予測制御を実行するステップとを含む。
この開示によっても、制御対象の可動範囲のうちの一部しか計測位置が得られない場合であっても、位置決め時の制振性を向上させることができる。
本発明によれば、制御対象の可動範囲のうちの一部しか計測位置が得られない場合であっても、位置決め時の制振性を向上させることができる。
本実施の形態に従う制御装置が適用される制御システムの構成例を示す模式図である。 本実施の形態に従う制御装置のハードウェア構成の一例を示す模式図である。 本実施の形態に係る制御装置の機能構成を示す模式図である。 第1動特性モデルを作成するために実行されるチューニングを説明する図である。 振動波形の一例を示す図である。 第1動特性モデルおよび第2動特性モデルを用いたモデル出力値の演算方法を示す図である。 本実施の形態に従う制御システムによるモータ制御の処理手順を示すフローチャートである。 モータ制御のシミュレーション結果の一例を示す図である。 モータ制御のシミュレーション結果の別の例を示す図である。
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
§1 適用例
まず、図1を参照して、本発明が適用される場面の一例について説明する。図1は、本実施の形態に従う制御装置が適用される制御システムの構成例を示す模式図である。図1に示す例の制御システム1は、負荷となる制御対象2と、制御対象2の位置を計測するための計測センサ20と、1または複数のサーボ機構と、制御装置100とを含む。
図1に示す例の制御対象2は、ワークが置載されるワーキングプレート3を互いに直交する二方向にそれぞれ移動させることができるXYステージである。なお、制御対象2は、XYステージに限定されるものではなく、指定された位置(停止位置)に位置決めされる装置であればよい。
制御対象2は、ワーキングプレート3の他に、第1ベースプレート4と、第2ベースプレート7とを有する。
第1ベースプレート4には、ワーキングプレート3をX方向に沿って任意に移動させるボールネジ6が配置されている。ボールネジ6は、ワーキングプレート3に含まれるナットと係合されている。
さらに、第2ベースプレート7は、ワーキングプレート3および第1ベースプレート4をY方向に沿って任意に移動させるボールネジ9が配置されている。ボールネジ9は、第1ベースプレート4に含まれるナットと係合されている。
1または複数のサーボ機構は、ワーキングプレート3を移動させるための1または複数のサーボモータ300と、サーボモータ300を駆動する1または複数のサーボドライバ200とから構成される。
1または複数のサーボモータ300は、制御対象2のワーキングプレート3を移動させるためのモータであり、図1に示す例では、2つのサーボモータ300X,300Yを含む。サーボモータ300Xは、ボールネジ6の一端に連結される。サーボモータ300Xが回転駆動することで、ワーキングプレート3に含まれるナットとボールネジ6とが相対回転し、その結果、ワーキングプレート3がX方向に沿って移動することになる。サーボモータ300Yは、ボールネジ9の一端に連結される。サーボモータ300Yが回転駆動することで、第1ベースプレート4に含まれるナットとボールネジ9とが相対回転し、その結果、ワーキングプレート3および第1ベースプレート4がY方向に沿って移動することになる。
1または複数のサーボドライバ200は、図1に示す例では、2つのサーボドライバ200X,200Yを含む。2つのサーボドライバ200X,200Yは、サーボモータ300X,300Yをそれぞれ駆動する。
サーボドライバ200は、制御装置100からの指令値(指令位置または指令速度)と、対応するサーボモータ300からのフィードバック値とに基づいて、対応するサーボモータ300に対する駆動信号を生成する。サーボドライバ200は、生成した動作信号をサーボモータ300に出力することにより、サーボモータ300を駆動する。
例えば、サーボドライバ200は、対応するサーボモータ300の回転軸に結合されたエンコーダからの出力信号をフィードバック値として受ける。フィードバック値により、サーボモータ300の位置、回転位相、回転速度、累積回転数などを検出できる。
計測センサ20は、制御対象2の位置としてのワーキングプレート3の位置を計測する。計測センサ20は、計測した位置(以下、「計測位置」という。)を示す計測値を制御装置100に送信する。図1に示す例では、計測センサ20は、2つの計測センサ20X,20Yを含む。計測センサ20X,20Yは、例えばレーザ変位計などの変位センサによって構成される。
計測センサ20Xは、ワーキングプレート3におけるX方向の位置を計測する。具体的には、計測センサ20Xは、ワーキングプレート3におけるX方向に直交する端面の変位を計測する。
計測センサ20Yは、ワーキングプレート3におけるY方向の位置を計測する。具体的には、計測センサ20Yは、ワーキングプレート3におけるY方向に直交する端面の変位を計測する。
一般に、計測センサ20の計測可能範囲を広げると計測分解能が低下する。従って、高い計測分解能を維持しながら、制御対象2(ここではワーキングプレート3)の可動範囲の全域を計測するためには高価な計測センサを準備する必要がある。制御対象2の振動のうち特に抑制が必要とされる振動は、位置決め時における停止後の残留振動である。そのため、比較的安価な計測センサ20を用いる場合、計測センサ20は、制御対象2の可動範囲のうち停止位置を含む所定範囲(以下、「計測対象範囲」とも称する。)において制御対象2の位置を計測可能なように設置される。
制御装置100は、1または複数のサーボ機構に接続され、制御対象2の制御量(ここでは、ワーキングプレート3の位置)が目標軌道に追従するようにサーボ機構に操作量を出力する。制御装置100は、サーボドライバ200と計測センサ20とに接続され、計測センサ20からの計測値に応じた操作量をサーボドライバ200に出力して、制御対象2のワーキングプレート3の位置制御を行なう。制御装置100とサーボドライバ200との間では、操作量を含むデータの遣り取りが可能になっている。制御装置100と計測センサ20との間では、計測値を含むデータの遣り取りが可能になっている。
図1には、制御装置100とサーボドライバ200との間がフィールドバス101aを介して接続され、制御装置100と計測センサ20との間がフィールドバス101bを介して接続されている構成例を示す。但し、このような構成例に限らず、任意の通信手段を採用することができる。あるいは、制御装置100とサーボドライバ200および計測センサ20との間を直接信号線で接続するようにしてもよい。さらに、制御装置100とサーボドライバ200とを一体化した構成を採用してもよい。以下に説明するような、アルゴリズムが実現されるものであれば、どのような実装形態を採用してもよい。
制御装置100は、制御周期毎に、操作量と制御対象2の位置との関係を示す動特性モデルを用いたモデル予測制御を行なうことによりサーボドライバ200に出力する操作量を生成する。制御装置100は、生成した操作量を指令値(指令位置または指令速度)としてサーボドライバ200に出力する。
動特性モデルは、サーボドライバ200、サーボモータ300および制御対象2のモデルであり、入力値である操作量と制御対象2の位置との関係を表す伝達関数によって規定される。制御対象2の位置は、図1に示す例ではワーキングプレート3の位置である。モデル予測制御は、目標位置と制御対象2の位置との偏差が最小となるように入力値を決定する制御手法である。
計測センサ20の計測対象範囲が制御対象2の可動範囲の一部であるため、制御対象2の位置によって、計測値が得られる場合と、計測値が得られない場合とが存在する。そのため、制御装置100は、制御対象2の位置が計測対象範囲内である場合に、今回の制御周期における制御対象2の制御量として計測値を用いる第1モードに従ったモデル予測制御を実行する。一方、制御装置100は、制御対象2の位置が計測対象範囲外である場合に、今回の制御周期における制御対象2の制御量として計測値の代わりに動特性モデルの出力値(以下、「モデル出力値」と称する。)を用いる第2モードに従ったモデル予測制御を実行する。このように、制御対象2の位置が計測対象範囲内および計測対象範囲外のいずれであっても、モデル予測制御により操作量MVが生成される。そのため、制振性および目標軌道への追従性を高めることができる。
さらに、第1モードでは、計測値を用いてモデル出力値を計算してもよい。これにより、制御対象2の実際の状態(例えば振動周波数)が動特性モデルから変動した場合であっても、高い制振性を維持でき、制御対象2の状態の変動に対するロバスト性を向上させることができる。
第2モードでは、今回の制御周期における制御対象2の制御量として計測値の代わりにモデル出力値を用いる。第2モードに従ったモデル予測制御でも、モデル出力値を用いて操作量が生成されるため、制振性および目標軌道への追従性を高めることができる。ただし、第1モードに従ったモデル予測制御に比べるとそれらの精度は低くなる。しかしながら、制御対象2の位置が計測対象範囲外である場合、制御対象2は、停止位置に向かって移動中の状態である。そのため、制振性および目標軌道への追従性の精度の低下は問題とならない。
このように、本実施の形態によれば、制御対象2の位置が計測対象範囲内か否かに応じて第1モードおよび第2モードが切り替えられる。そのため、制御対象の可動範囲のうちの一部しか計測値が得られない場合であっても、位置決め時の制振性を向上させることができる。
§2 具体例
次に、本実施の形態に係る制御装置100の具体例について説明する。
<A.制御装置のハードウェア構成例>
本実施の形態に従う制御装置100は、一例として、PLC(プログラマブルコントローラ)を用いて実装されてもよい。制御装置100は、予め格納された制御プログラム(後述するような、システムプログラムおよびユーザプログラムを含む)をプロセッサが実行することで、後述するような処理が実現されてもよい。
図2は、本実施の形態に従う制御装置100のハードウェア構成の一例を示す模式図である。図2に示されるように、制御装置100は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などのプロセッサ102と、チップセット104と、メインメモリ106と、フラッシュメモリ108と、外部ネットワークコントローラ116と、メモリカードインターフェイス118と、フィールドバスコントローラ122,124と、外部ネットワークコントローラ116と、メモリカードインターフェイス118とを含む。
プロセッサ102は、フラッシュメモリ108に格納されたシステムプログラム110およびユーザプログラム112を読み出して、メインメモリ106に展開して実行することで、制御対象に対する任意の制御を実現する。プロセッサ102がシステムプログラム110およびユーザプログラム112を実行することで、後述するような、サーボドライバ200への操作量の出力、フィールドバスを介したデータ通信に係る処理などを実行する。
システムプログラム110は、データの入出力処理や実行タイミング制御などの、制御装置100の基本的な機能を提供するための命令コードを含む。システムプログラム110は、その一部として、モデル作成ライブラリ110Aおよびモデル予測制御ライブラリ110Bを含む。これらのライブラリは、一種のプログラムモジュールであり、本実施の形態に従う処理および機能を実現するための命令コードを含む。ユーザプログラム112は、制御対象に応じて任意に設計され、シーケンス制御を実行するためのシーケンスプログラム112Aおよびモーション制御を実行するためのモーションプログラム112Bを含む。ユーザプログラム112において、モデル作成ライブラリ110Aおよびモデル予測制御ライブラリ110Bをそれぞれ利用するモデル作成ファンクションブロックおよびモデル予測制御ファンクションブロックが定義されることで、本実施の形態に従う処理および機能が実現される。ファンクションブロックは、制御装置100で実行されるプログラムのコンポーネントであり、複数回使用するプログラムエレメントをモジュール化したものを意味する。
チップセット104は、各コンポーネントを制御することで、制御装置100全体としての処理を実現する。
フィールドバスコントローラ122は、制御装置100とフィールドバスを通じて連結される各種デバイスとデータを遣り取りするインターフェイスである。このようなデバイスの一例として、計測センサ20が接続されている。
フィールドバスコントローラ124は、制御装置100とフィールドバスを通じて連結される各種デバイスとデータを遣り取りするインターフェイスである。このようなデバイスの一例として、サーボドライバ200が接続されている。
フィールドバスコントローラ122,124は、接続されているデバイスに対して任意の指令を与えることができるとともに、デバイスが管理している任意のデータを取得することができる。
外部ネットワークコントローラ116は、各種の有線/無線ネットワークを通じたデータの遣り取りを制御する。メモリカードインターフェイス118は、メモリカード120を着脱可能に構成されており、メモリカード120に対してデータを書込み、メモリカード120からデータを読出すことが可能になっている。
<B.サーボドライバ>
本実施の形態に従う制御装置100に接続されるサーボドライバ200の動作について説明する。サーボドライバ200は、制御装置100から出力された操作量を指令値(指令位置または指令速度)として受けるとともに、サーボモータ300に結合されたエンコーダからの出力信号をフィードバック値として受ける。サーボドライバ200は、指令値およびフィードバック値を用いて、例えばモデル追従制御系の制御ループに従う制御演算を実行する。
サーボドライバ200は、指令値として指令位置を受ける場合、位置制御ループおよび速度制御ループに従う制御演算を実行する。サーボドライバ200は、指令値として指令速度を受ける場合、速度制御ループに従う制御演算を実行する。
サーボドライバ200は、位置制御ループに従う制御演算を実行することにより、フィードバック値により得られるサーボモータ300の計測位置と制御装置100から与えられる指令位置との位置偏差に応じた指令速度を演算する。
サーボドライバ200は、速度制御ループに従う制御演算を実行することにより、指令速度とフィードバック値から得られるサーボモータ300の計測速度との速度偏差に応じたトルクを演算する。サーボドライバ200は、演算されたトルクをサーボモータ300に発生させるための電流指令を示す動作信号を出力する。
<C.制御装置の機能構成例>
図3は、本実施の形態に係る制御装置の機能構成を示す模式図である。図3に示されるように、制御装置100は、モデル作成モジュール130と、軌道生成モジュール140と、モデル予測制御モジュール150とからなる制御ユニット160を備える。図中においては、モデル予測制御を「MPC(Model Predictive Control)」と記す。なお、制御装置100は、サーボドライバ200X,200Yにそれぞれ対応する2つの制御ユニット160を備えている。ただし、図3には簡略化のため2つの制御ユニット160のうち一方のみが描かれている。
モデル作成モジュール130は、典型的には、ユーザプログラム112において、モデル作成ファンクションブロックが規定されることにより、モデル作成ライブラリ110Aがコールされて実現される。すなわち、モデル作成モジュール130は、ユーザプログラム112に規定されるファンクションブロックによって機能化される。
モデル作成モジュール130は、サーボドライバ200およびサーボモータ300からなるモデル対象400の動特性を示す動特性モデル(以下、「動特性モデルP」と称する。)を作成する。モデル作成モジュール130は、作成した動特性モデルPを規定する特性パラメータをモデル予測制御モジュール150へ与える。
軌道生成モジュール140は、予め指定された目標軌道に沿って、制御対象2の目標位置を示す目標値SPの時系列データを生成し、各制御周期に対応する目標値SPを当該時系列データから順次読出し、モデル予測制御モジュール150へ入力する。具体的には、軌道生成モジュール140は、目標値SPの時系列データから、現時刻から将来の一定期間である予測ホライズン終了までの複数の目標値SPを抽出し、モデル予測制御モジュール150へ入力する。
なお、制御装置100は、目標軌道を規定する目標値SPの時系列データを予め記憶しておいてもよい。この場合には、軌道生成モジュール140は、予め記憶された目標値SPの時系列データへアクセスする。このように、目標軌道を規定する制御周期毎の目標値SPは、時系列データの形で予め格納されていてもよいし、予め定められた計算式に従って各制御周期についての目標値SPを逐次計算するようにしてもよい。
モデル予測制御モジュール150は、典型的には、ユーザプログラム112において、モデル予測制御ファンクションブロックが規定されることにより、モデル予測制御ライブラリ110Bがコールされて実現される。すなわち、モデル予測制御モジュール150は、ユーザプログラム112に規定されるファンクションブロックによって機能化される。
モデル予測制御モジュール150は、制御周期毎に、動特性モデルPを用いたモデル予測制御を行なうことによりサーボドライバ200に出力する操作量MVを生成する。モデル予測制御モジュール150は、生成した操作量MVを指令値としてサーボドライバ200に出力する。
モデル予測制御モジュール150は、制御対象2の位置が計測センサ20の計測対象範囲内である場合に、今回の制御周期における制御対象2の制御量として計測値PVLを用いる第1モードに従ったモデル予測制御を実行する。モデル予測制御モジュール150は、制御対象2の位置が計測対象範囲外である場合に、今回の制御周期における制御量として計測値PVLの代わりにモデル出力値を用いる第2モードに従ったモデル予測制御を実行する。モデル予測制御の具体例については後述する。
モデル予測制御モジュール150は、今回の制御周期に対応する目標値SPが計測対象範囲内である場合に、制御対象2の位置が計測対象範囲内であると判断すればよい。もしくは、モデル予測制御モジュール150は、今回の制御周期におけるモデル出力値が計測対象範囲内である場合に、制御対象2の位置が計測対象範囲内であると判断してもよい。もしくは、計測対象までの距離が計測不可能な範囲であるときに計測センサ20がエラー信号を出力する場合に、モデル予測制御モジュール150は、計測センサ20からエラー信号を受けている間、制御対象2の位置が計測対象範囲外であると判断してもよい。
もしくは、計測センサ20は、下限値から上限値までの計測値を出力し、計測対象までの実際の距離が下限値以下の場合に下限値を出力し、計測対象までの実際の距離が上限値以上の場合に上限値を出力してもよい。モデル予測制御モジュール150は、このような計測センサ20からの計測値が上限値または下限値である場合に、制御対象2の位置が計測対象範囲外であると判断し、そうでない場合に、制御対象2の位置が計測対象範囲内であると判断してもよい。
<D.動特性モデルP>
動特性モデルPは、事前のチューニングにより作成される。制御対象2の可動範囲の全域において制御対象2の位置が計測可能であれば、事前にチューニングにおいて得られた操作量と制御対象2の計測位置とに基づいて動特性モデルPが作成される。例えば、制御対象2の可動範囲の可動範囲の全域において制御対象2の位置を計測可能な計測センサを準備することにより動作モデルPが作成される。
動特性モデルPは、例えば以下の関数P(z-1)で示される。関数P(z-1)は、むだ時間要素と、n次遅れ要素とを組み合わせた離散時間伝達関数である。関数P(z-1)で示される動特性モデルにおいては、むだ時間要素のむだ時間dならびにn次遅れ要素の変数a~aおよび変数b~bが特性パラメータとして決定される。むだ時間とは、入力値が与えられてから、それに応じた出力が現れるまでの時間(つまり、入力から出力までの遅れ時間)である。なお、次数nおよび次数mについても最適な値が決定されてもよい。
Figure 0007047794000001
このような特性パラメータの作成処理(すなわち、システム同定)は、最小二乗法などにより実行されてもよい。
具体的には、y=P(z-1)*uの変数uに操作量(例えば指令位置)を与えたときの出力yが、制御対象2の計測位置と一致するように(すなわち、誤差が最小になるように)、特性パラメータの各々の値が決定される。
このとき、むだ時間dを先に決定した上で、制御対象2の計測位置を当該決定したむだ時間dだけ進めた補正後の時間波形を生成し、その補正後の時間波形に基づいて、むだ時間要素を除いた残りの伝達関数の要素を決定してもよい。
制御対象2の可動範囲の全域を計測できない場合には、操作量とサーボモータ300の位置(以下、「モータ位置」と称する。)との関係を示す第1動特性モデルPCMと、モータ位置と制御対象2の位置との関係を示す第2動特性モデルPMLとを組み合わせて、動特性モデルPを作成すればよい。すなわち、P=PCM*PMLに従って、動特性モデルPが作成される。
第1動特性モデルPCMは、サーボドライバ200およびサーボモータ300のモデルであり、入力値である操作量と出力値であるモータ位置との関係を表す伝達関数によって規定される。通常、サーボモータ300にはエンコーダが設置され、エンコーダからのフィードバック値によりモータ位置が連続かつ高精度に計測される。そのため、モータ位置の計測値に基づいて第1動特性モデルが作成される。
第2動特性モデルPMLは、制御対象2のモデルであり、入力値であるモータ位置と出力値である制御対象2の位置との関係を表す伝達関数によって規定される。モータ位置と制御対象2の位置との関係は、制御対象2の振動に依存する。そのため、第2動特性モデルPMLは、制御対象2の振動波形から抽出された波形パラメータを用いて作成される。波形パラメータは、制御対象2の振動周波数(典型的には固有振動周波数)および振動波形において連続する2つの波の振幅比のうち少なくとも振動周波数を含む。制御対象2の振動波形は、計測センサ20の計測結果から容易に得られる。
<D-1.第1動特性モデルPCMの作成>
第1動特性モデルPCMの作成手法について説明する。第1動特性モデルPCMは、例えば特開2018-120327(特許文献2)に開示の手法を用いて作成される。第1動特性モデルPCMは、モデル予測制御を実行する前のチューニングにより作成される。
図4は、第1動特性モデルPCMを作成するために実行されるチューニングを説明する図である。図4に示されるように、制御装置100のモデル作成モジュール130は、チューニング用に予め設定された複数の操作量(例えば指令位置)を順にサーボドライバ200に出力し、サーボモータ300の計測位置を取得する。サーボモータ300の計測位置は、サーボモータ300の回転軸に結合されたエンコーダから出力されるフィードバック値から特定される。モデル作成モジュール130は、操作量およびサーボモータ300の計測位置をそれぞれ同定入力および同定出力とし、同定入力に対する同定出力の関係を用いてシステム同定手法を適用することで、第1動特性モデルPCMを作成できる。
第1動特性モデルPCMは、例えば以下の関数PCM(z-1)で示される。関数PCM(z-1)は、むだ時間要素と、n次遅れ要素とを組み合わせた離散時間伝達関数である。関数PCM(z-1)で示される第1動特性モデルにおいては、むだ時間要素のむだ時間dならびにn次遅れ要素の変数aCM1~aCMnおよび変数bCM1~bCMmが特性パラメータとして決定される。なお、次数nおよび次数mについても最適な値が決定されてもよい。
Figure 0007047794000002
このような特性パラメータの作成処理(すなわち、システム同定)は、同定入力および同定出力を用いて、最小二乗法などにより実行されてもよい。
具体的には、y=PCM(z-1)*uの変数uに同定入力として選択された操作量を与えたときの出力yが、同定出力として選択されたサーボモータ300の計測位置と一致するように(すなわち、誤差が最小になるように)、特性パラメータの各々の値が決定される。
このとき、むだ時間dを先に決定した上で、同定出力を当該決定したむだ時間dだけ進めた補正後の時間波形を生成し、その補正後の時間波形に基づいて、むだ時間要素を除いた残りの伝達関数の要素を決定してもよい。
次数nおよび次数mを異ならせて、複数の第1動特性モデルを算出するようにしてもよい。この場合、1または複数の評価基準に基づいて、最適な第1動特性モデルPCMが作成される。評価基準としては、同定の信頼性を示す度合い(FIT率)やむだ時間の妥当性などが含まれる。また、定位系モデルの場合には、評価基準として、定常ゲインの妥当性を採用してもよい。
FIT率は、算出された特性パラメータによって規定される関数PCM(z-1)に対して、同定入力を与えたときに算出される出力と、実際に収集された同定出力との間の一致率を示す値である。このようなFIT率については、誤差を算出する公知の計算式を用いることができる。基本的には、FIT率が最大(すなわち、一致率が最大/誤差が最小)であるものを選択すればよい。
また、第1動特性モデルの評価に際しては、特異的な挙動を示すものを除外するようにしてもよい。例えば、制御対象の本来の特性に含まれない特異な挙動を示す場合には、本来の制御対象の本来の特性を示すものではないと考えられるので、問題がある動特性モデルとして除外するようにしてもよい。
このように、第1動特性モデルPCMの算出過程においては、特性パラメータを異ならせた複数の第1動特性モデルを算出するようにしてもよい。この場合、上記のFIT率を用いて、複数の第1動特性モデルのうち1つの第1動特性モデルが作成されるようにしてもよい。
<D-2.第2動特性モデルPMLの作成>
次に、第2動特性モデルPMLの作成手法について説明する。第2動特性モデルPMLは、モデル予測制御を実行する前のチューニングにおいて取得された制御対象2の振動波形を用いて作成される。例えば、第1動特性モデルPCMを作成するために実行されるチューニングにおいて、計測センサ20は、サーボモータ300の回転を停止した直後のワーキングプレート3の振動波形を計測する。
図5は、振動波形の一例を示す図である。図5には、横軸を時間とし、縦軸を制御対象2の位置(図中、「負荷位置」と記す)とするグラフが示される。サーボモータ300の回転が停止したとしても、制御対象2のワーキングプレート3は振動する。ワーキングプレート3は、制御対象2に応じた固有振動周波数に従って振動する。そこで、制御装置100のモデル作成モジュール130は、振動波形から振動周期T’を抽出し、f=1/T’に従って振動周波数fを算出する。もしくは、モデル作成モジュール130は、減衰の影響を考慮して、以下の[数2]に従って振動周波数fを算出してもよい。ζは振動の減衰比を示す。
Figure 0007047794000003
モデル作成モジュール130は、算出した振動周波数fを用いて第2動特性モデルPMLを作成する。第2動特性モデルPMLは、例えば以下の[数4]の関数PML(s)で示される。関数PML(s)において、ωは、制御対象2の振動角周波数であり、ω=2πfで示される。モデル作成モジュール130は、算出した振動周波数fを用いて、[数4]で示される関数PML(s)を作成できる。
Figure 0007047794000004
第2動特性モデルPMLは、以下の[数5]または「数6]の関数PML(s)で示されてもよい。
Figure 0007047794000005
Figure 0007047794000006
ζは、対数減衰率δを用いて、ζ=δ/(δ+4π1/2で示される。対数減衰率δは、振動波形において連続する2つの波の振幅比Adrと自然対数lnとを用いて、δ=ln(1/Adr)で示される。振幅比Adrは、図6に示す振動波形において連続する2つの波の振幅A,An+1の比An+1/Aで示される。そのため、モデル作成モジュール130は、振動波形から振幅比Adrおよび振動周波数fを抽出し、抽出した振幅比Adrおよび振動周波数fを用いて、[数5]または「数6]の関数PML(s)を作成できる。
モデル作成モジュール130は、[数4]~[数6]の関数PML(s)を離散時間形式に変換(Z変換)し、変換された関数PML(z-1)で示される第2動特性モデルPMLを作成すればよい。
<E.モデル予測制御の処理例>
<E-1.モデル予測制御の全体>
モデル予測制御モジュール150は、上記の[数1]の関数P(z-1)で示される動特性モデルPに、今回の制御周期kまでに生成した操作量MV,・・・,MVk-m+1を入力することにより、制御周期k+d+1におけるモデル出力値YLk+d+1を演算する。ここで、mは、上記のように、動特性モデルPで規定される次数である。また、制御周期k+d+1は、今回の制御周期kから動特性モデルに規定されるむだ時間d+1だけ経過した未来の制御周期である。
上記のようにして求められたモデル出力値YLk+d+1は、次回の制御周期における操作量MVを生成するために使用される。このとき、次回の制御周期に備えて、演算されたデータが1制御周期分だけシフトされる。例えば、上記のようにして求められたモデル出力値YLk+d+1は、次回の制御周期においてモデル出力値YLk+dとして使用される。言い換えると、今回の制御周期kでは、前回の制御周期において演算されたモデル出力値YLk+d+1がモデル出力値YLk+dとして使用される。モデル予測制御モジュール150は、前回の制御周期で演算済みの当該モデル出力値YLk+dと動特性モデルPとを用いたモデル予測制御により、今回の制御周期kにおいてサーボドライバ200に出力する操作量MVを生成する。
モデル予測制御モジュール150は、例えば以下のような演算方法に従って、今回の制御周期kにおいてサーボドライバ200に出力する操作量MVを生成する。
モデル予測制御モジュール150は、動特性モデルPが作成されると、ステップ応答計算とランプ応答計算とを行なう。
ステップ応答計算とは、出力が0である初期状態において最大の入力(ステップ入力)を継続したときの動特性モデルPの出力(以下、「ステップ出力Ys」とも称する。)を求める計算である。以下の説明では、ステップ入力の入力開始からの経過時間i(>むだ時間d)におけるステップ出力YsをYs(i)とする。
ランプ応答計算とは、出力が0である初期状態において制御周期毎に1段階ずつ増加させた入力(ランプ入力)を行なったときの動特性モデルPの出力(以下、「ランプ出力Yr」とも称する。)を求める計算である。以下の説明では、ランプ入力の入力開始からの経過時間i(>むだ時間d)におけるランプ出力YrをYr(i)とする。
さらに、モデル予測制御モジュール150は、モデル出力値YLk+dを指定状態とした自由応答計算を行なう。自由応答計算とは、制御周期k+dにおいて指定状態にある動特性モデルPにおいて、今回の制御周期k以降の入力を0としたときの、制御周期k+dより後の制御周期k+d+Hにおける動特性モデルの出力Yf(k+d+H)を求める計算である。
モデル予測制御モジュール150は、ステップ出力およびランプ出力の大きさをそれぞれksおよびkrとして、制御周期k+dより後の制御周期k+d+Hにおける動特性モデルPの出力MHk+d+Hを以下の式に従って演算する。
MHk+d+H=ks*Ys(H)+kr*Yr(H)+Yf(k+d+H)
モデル予測制御モジュール150は、MHk+d+Hとモデル出力値YLk+dとの差分ΔMHと、制御周期k+d+Hにおける参照軌道上の位置RHk+d+Hと今回の制御周期kにおける制御対象2の制御量PV(ここでは、ワーキングプレート3の位置)との差分ΔPHとが一致するように、ksおよびkrを求める。参照軌道は、制御周期k+d+Hにおける目標値SPk+d+Hと今回の制御周期kにおける目標値SPおよび制御量PVと予め定められる参照軌道時定数Trとによって特定される。2つの変数ksおよびkrを求めるため、Hとして2つの値が設定される。Hとして設定される2つの値は、制御対象2の振動周期よりも短い時間であり、例えば振動周期の1/8および振動周期の1/4である。そして、当該2つの値のそれぞれの式からなる連立方程式を解くことにより、変数ks,krが演算される。
モデル予測制御モジュール150は、上記のようにして求めたksとステップ入力との積を、今回の制御周期kにおいてサーボドライバ200に出力する操作量MVとして生成すればよい。
<E-2.第1モードおよび第2モードに従ったモデル予測制御の演算方法>
上述したように、モデル予測制御モジュール150は、ΔMHとΔPHとが一致するように、ksおよびkrを求める。ksおよびkrを求めるためには、今回の制御周期kにおける制御対象2の制御量PVを特定する必要がある。
制御対象2の位置が計測対象範囲内である場合、制御装置100は、制御対象2の計測位置を示す計測値PVLを計測センサ20から取得している。そのため、モデル予測制御モジュール150は、今回の制御周期kにおける制御対象2の制御量PVとして計測値PVLを用いる第1モードに従ったモデル予測制御を実行する。
一方、制御対象2の位置が計測対象範囲外である場合、制御装置100は、計測センサ20からの計測値PVLを用いることができない。そのため、モデル予測制御モジュール150は、今回の制御周期kにおける制御対象2の制御量PVとして計測値PVLの代わりにモデル出力値YLを用いる第2モードに従ったモデル予測制御を実行する。
さらに、上述したように、モデル予測制御モジュール150は、上記の[数1]の関数P(z-1)で示される動特性モデルPに、今回の制御周期kまでに生成した操作量MV,・・・,MVk-m+1を入力することにより、制御周期k+d+1におけるモデル出力値YLk+d+1を演算する。当該モデル出力値YLk+d+1は、次回の制御周期において操作量MVを生成するために使用される。すなわち、モデル予測制御モジュール150は、次回の制御周期における操作量MVを生成するために、今回の制御周期から動特性モデルに規定されるむだ時間だけ経過した未来の制御周期におけるモデル出力値YLk+d+1を演算する。
ある制御周期におけるモデル出力値YLk+d+1を演算するとき、モデル予測制御モジュール150は、当該制御周期より前の制御周期における制御対象2の位置を動特性モデルPに入力する必要がある。第1モードに従ったモデル予測制御では、制御装置100は計測センサ20から計測値PVLを取得している。そのため、モデル予測制御モジュール150は、計測センサ20から取得した計測値PVLを用いてモデル出力値YLk+d+1を演算する。すなわち、第1モードに従ったモデル予測制御は、リセットモデル型を適用する。
一方、第2モードに従ったモデル予測制御では、制御装置100は計測センサ20から計測値PVLを取得できない。そのため、モデル予測制御モジュール150は、これまでの制御周期において演算されたモデル出力値YLを用いてモデル出力値YLk+d+1を演算する。すなわち、第2モードに従ったモデル予測制御は、独立モデル型を適用する。
以下、リセットモデル型および独立モデル型の演算方法の一例について説明する。なお、以下では、動特性モデルPが以下の[数7]で示される関数P(z-1)で示される場合の例について説明する。
Figure 0007047794000007
<E-2-1.独立モデル型に従ったモデル出力値YLk+d+1の演算例>
独立モデル型では、モデル予測制御モジュール150は、前回の制御周期において演算されたモデル出力値YLk+dと今回の制御周期kに生成した操作量MVとを動特性モデルPに入力することにより、以下の式に従って、制御周期k+d+1におけるモデル出力値YLk+d+1を演算すればよい。
YLk+d+1=-aYLk+d+bMV
<E-2-2.リセットモデル型に従ったモデル出力値YLk+d+1の第1の演算例>
リセットモデル型では、計測センサ20から今回の制御周期kにおける制御対象2の計測位置を示す計測値PVLがフィードバックされる。モデル予測制御モジュール150は、計測値PVLを今回の制御周期kにおける制御対象2の制御量PVとして用いて、以下の式に従って、次回の制御周期k+1のモデル出力値YLk+1を更新する。
YLk+1=-aPVL+bMVk-d
MVk-dは、過去の制御周期k-dにおいて生成された操作量である。
次回の制御周期k+1以降の計測位置がまだ計測されていないため、モデル予測制御モジュール150は、演算済みのモデル出力値YLを用いて、以下の式に従って、制御周期k+dまでのモデル出力値YLを更新する。
YLk+2=-aYLk+1+bMVk-d+1
・・・
YLk+d=-aYLk+d-1+bMVk-1
モデル予測制御モジュール150は、上記の式に従って更新されたモデル出力値YLk+dと今回の制御周期kに生成した操作量MVとを動特性モデルPに入力することにより、以下の式に従って、制御周期k+d+1におけるモデル出力値YLk+d+1を演算すればよい。
YLk+d+1=-aYLk+d+bMV
<E-2-3.リセットモデル型に従ったモデル出力値YLk+d+1の第2の演算例>
第1の演算例では、計測値PVLにノイズ成分が含まれる場合、モデル出力値YLk+1~YLk+dを更新するときに当該ノイズ成分が増幅されてしまう。そのため、モデル予測制御モジュール150は、計測時のノイズ成分の増幅を抑制するために、以下の演算方法により、モデル出力値YL~YLk+dを更新してもよい。
モデル予測制御モジュール150は、今回の制御周期kにおけるモデル出力値YLと計測値PVLとの差分値を補正量CLとして演算する。すなわち、補正量CLは、
CL=PVL-YL
で表される。
次に、モデル予測制御モジュール150は、モデル出力値YLを計測値PVLに更新するとともに、補正量CLを用いて以下の式に従って、制御周期k+dまでのモデル出力値YLを更新する。
YLk+1←YLk+1+CL
・・・
YLk+d←YLk+d+CL
なお、モデル出力値YLk+1~YLk+dは、過去の制御周期k-d~制御周期k-1においてそれぞれ演算されている。すなわち、モデル予測制御モジュール150は、補正量CLだけ、前回の制御周期までに演算したモデル出力値YLk+1~YLk+dを補正する。
モデル予測制御モジュール150は、上記の式に従って補正されたモデル出力値YLk+dと動特性モデルPとを用いることにより、制御周期k+d+1におけるモデル出力値YLk+d+1を演算する。具体的には、モデル予測制御モジュール150は、モデル出力値YLk+dと今回の制御周期kに生成された操作量MVとを動特性モデルPに入力することにより、以下の式に従って、制御周期k+d+1におけるモデル出力値YLk+d+1を演算すればよい。
YLk+d+1=-aYLk+d+bMV
<E-3.第1動特性モデルPCMおよび第2動特性モデルPMLを用いたモデル出力の演算方法>
動特性モデルPが第1動特性モデルPCMと第2動特性モデルPMLとに分割される場合には、第1動特性モデルPCMおよび第2動特性モデルPMLを用いて動特性モデルPの出力が演算されてもよい。
図6は、第1動特性モデルPCMおよび第2動特性モデルPMLを用いたモデル出力値YLの演算方法の例を示す図である。図6に示されるように、モデル予測制御モジュール150は、操作量MVを第1動特性モデルPCMに入力することにより、当該操作量MVに応じたサーボモータ300の位置の予測値YMを演算できる。モデル予測制御モジュール150は、演算された予測値YMを第2動特性モデルPMLに入力することにより、当該予測値YMに応じたモデル出力値YLを演算できる。
モデル予測制御モジュール150は、モデル出力値YLの予測精度を上げるために、サーボモータ300からフィードバックされるサーボモータ300の計測位置を示す計測値PVMを受け、計測値PVMを用いて予測値YMを補正してもよい。
例えば、モデル予測制御モジュール150は、今回の制御周期kにおける予測値YMと計測値PVMとの差分値を補正量CMとして演算する。すなわち、補正量CMは、
CM=PVM-YM
で表される。なお、今回の制御周期kにおける予測値YMは、過去の制御周期k-d-1において演算されている。
次に、モデル予測制御モジュール150は、予測値YMを計測値PVMに補正するとともに、補正量CMを用いて以下の式に従って、制御周期k+dまでの予測値YMを更新する。
YMk+1←YMk+1+CM
・・・
YMk+d←YMk+d+CM
なお、予測値YMk+1~YMk+dは、過去の制御周期k-d~制御周期k-1においてそれぞれ演算されている。
モデル予測制御モジュール150は、更新後の予測値YMk+dと今回の制御周期kに生成された操作量MVと第1動特性モデルPCMとを用いて、制御周期k+d+1におけるモータ位置の予測値YMk+d+1を演算すればよい。例えば、第1動特性モデルPCMが以下の[数8]の関数PCM(z-1)で示されるとする。
Figure 0007047794000008
第1動特性モデルPCMが[数8]の関数PCM(z-1)で示される場合、モデル予測制御モジュール150は、
YMk+d+1=-aCM1YMk+d+bCM1MV
に従って、予測値YMk+d+1を演算すればよい。
以上のようにして、モデル予測制御モジュール150は、予測値YMを補正する。なお、モデル予測制御モジュール150による予測値YMの補正方法は、上記の補正方法に限定されず、他の演算方法を用いてもよい。
モデル予測制御モジュール150は、補正後の予測値YMと第2動特性モデルPMLとを用いて、モデル出力値YLを演算する。例えば、第2動特性モデルPMLが以下の[数9]の関数PML(z-1)で示されるとする。
Figure 0007047794000009

第2動特性モデルPMLが[数9]の関数PML(z-1)で示される場合、モデル予測制御モジュール150は、
YLk+d+1=-aML1YLk+d-aML2YLk+d-1+bML1YMk+d+1+bML2YMk+d
に従って、制御周期k+d+1におけるモデル出力値YLk+d+1を演算すればよい。
<F.処理手順>
次に、本実施の形態に従う制御装置100によるモータ制御の処理手順の概要について説明する。図7は、本実施の形態に従う制御システムによるモータ制御の処理手順を示すフローチャートである。図7に示すステップは、制御装置100のプロセッサ102が制御プログラム(図2に示すシステムプログラム110およびユーザプログラム112を含む)を実行することで実現されてもよい。
まず、制御装置100は、サーボドライバ200に対してチューニングを実行させ、チューニングにより得られた同定入力および同定出力に基づいて、第1動特性モデルPCMを作成する(ステップS1)。次に、制御装置100は、チューニングの際に得られた制御対象2の振動波形から得られた波形パラメータ(振動周波数および振幅比)を用いて第2動特性モデルPMLを作成する(ステップS2)。なお、ステップS1およびS2の代わりに、チューニングの際に得られた操作量および制御対象2の位置の計測値をそれぞれ同定入力および同定出力とし、動特性モデルPが作成されてもよい。
次に、制御装置100は、制御対象2の位置が計測センサ20の計測対象範囲内であるか否かを判断する(ステップS3)。当該判断方法の例は<C.制御装置の機能構成例>で説明した通りである。
制御対象2の位置が計測対象範囲外である場合(ステップS3でNO)、制御装置100は、第2モードに従ったモデル予測制御を行なうことにより、操作量MVを生成する(ステップS4)。すなわち、今回の制御周期kにおける制御対象2の制御量PVとしてモデル出力値YLを用いてモデル予測制御が実行される。
ステップS4の後、制御装置100は、独立モデル型に従って、今回の制御周期kからむだ時間d+1だけ経過した制御周期k+d+1におけるモデル出力値YLk+d+1を演算する(ステップS5)。すなわち、制御装置100は、前回の制御周期までに演算されたモデル出力値YLを用いて、モデル出力値YLk+d+1を演算する。
制御対象2の位置が計測対象範囲内である場合(ステップS3でYES)、制御装置100は、第1モードに従ったモデル予測制御を行なうことにより、操作量MVを生成する(ステップS6)。すなわち、今回の制御周期kにおける制御対象2の制御量PVとして計測センサ20からの計測値PVLを用いてモデル予測制御が実行される。
ステップS6の後、制御装置100は、リセットモデル型に従って、今回の制御周期kからむだ時間d+1だけ経過した制御周期k+d+1におけるモデル出力値YLk+d+1を演算する(ステップS7)。すなわち、制御装置100は、計測センサ20からフィードバックされた計測値PVLを用いて、モデル出力値YLk+d+1を演算する。
ステップS5またはステップS7で演算されたモデル出力値YLk+d+1は、次回の制御周期において操作量MVを生成する際に、モデル出力値YLk+dとして利用される。
続いて、制御装置100は、目標軌道の終点に到達したか否かを判断する(ステップS8)。目標軌道の終点に到達していない場合(ステップS8においてNO)、次回の制御周期において、ステップS3~S7の処理が繰り返される。
目標軌道の終点に到達している場合(ステップS8においてYES)、モータ制御の処理は終了する。以上のような処理手順によって、本実施の形態に従う制御装置100のモータ制御が実現される。なお、ステップS1~S8の処理は、指定されたサーボドライバ200の各々について実施される。そのため、複数のサーボドライバ200のそれぞれについてのステップS1~S8の処理が並列的に実行されることもある。
<G.第3モードに従った制御>
上述したように、計測センサ20は、制御対象2の停止位置を含む所定範囲(計測対象範囲)を計測可能なように設置される。そのため、制御対象2を停止位置に位置決めするとき、制御対象2の位置は、通常、計測対象範囲外から計測可能範囲内に移動する。従って、制御装置100において実行されるモデル予測制御は、第2モードに従ったモデル予測制御から第1モードに従ったモデル予測制御に切り替わる。第2モードに従ったモデル予測制御から第1モードに従ったモデル予測制御に切り替わったとき、サーボドライバ200に出力される操作量MVに急激な変動が生じ、サーボモータ300のトルクが大きく変動する可能性がある。そのため、制御装置100は、このようなトルクの変動を抑制するために、第2モードに従ったモデル予測制御から第1モードに従ったモデル予測制御に切り替わるときに、以下の第3モードに従った制御を行なうことが好ましい。
第3モードに従った制御は、予め定められたN個の制御周期だけ実行される。Nは2以上の整数である。
第3モードにおいて、モデル予測制御モジュール150は、第1モードに従ったモデル予測制御によって生成される操作量(以下、「第1操作量MV1」という)と第2モードに従ったモデル予測制御によって生成される操作量(以下、「第2操作量MV2」という)との差分ΔMV(ΔMV=MV1-MV2)を求める。
モデル予測制御モジュール150は、差分ΔMVをN個の制御周期の間に解消するように、サーボドライバ200に出力する操作量MVを生成する。
例えば、モデル予測制御モジュール150は、差分ΔMVをN個の分割量(=ΔMV/N)に分割する。モデル予測制御モジュール150は、第3モードのn番目(nは1~Nの整数)の制御周期において、分割量ΔMV/NにN-nを乗じた量(=(N-n)×ΔMV/N)だけ第1操作量MV1から減算した量を、サーボドライバ200に出力する操作量MVとして生成する。
これにより、第2モードに従ったモデル予測制御から第1モードに従ったモデル予測制御に切り替わるときに、サーボドライバ200に出力される操作量MVの急激な変動が抑制され、サーボモータ300のトルク変動を抑制できる。
<H.シミュレーション結果>
本実施の形態に係る制御装置100の効果を検証するためのシミュレーションを行なった。
図8は、モータ制御のシミュレーション結果の一例を示す図である。図8には、以下の条件下でのシミュレーション結果が示される。
・振動周波数9.2Hzとしたときの第2動特性モデルPMLを用いた。
・制御対象の固有振動周波数を9.2Hzとした。
・目標軌道を400msで制御対象を100mm移動させる軌道とした。
・サーボドライバの位置制御方式をモデル追従型2自由度制御方式とし、モデル追従型2自由度制御方式の制御パラメータをいずれのシミュレーションにおいても同一の値とした。
図9は、モータ制御のシミュレーション結果の別の例を示す図である。図9には、制御対象の固有振動周波数を9.2Hzから-10%変動させた8.28Hzとした点を除いて図8と同じ条件下でのシミュレーション結果が示される。
図8および図9において、最左列の(a)には、常時、計測値PVLを使用しない第2モードに従ったモデル予測制御を行なうときのシミュレーション結果が示される。図8および図9において、左から2列目の(b)には、常時、計測値PVLを使用する第1モードに従ったモデル予測制御を行なうときのシミュレーション結果が示される。図8および図9において、左から3列目の(c)には、停止位置から±2mmの範囲においてのみ第1モードに従ったモデル予測制御を行ない、当該範囲外では第2モードに従ったモデル予測制御を行なったときのシミュレーション結果が示される。図9において、最右列の(d)には、停止位置から±2mmの範囲においてのみ第1モードに従ったモデル予測制御を行ない、当該範囲外では第2モードに従ったモデル予測制御を行ない。かつ、第2モードから第1モードに切り替わる際に第3モードに従った制御を行なったときのシミュレーション結果が示される。なお、第3モードに従った制御を行なう制御周期の個数を33とした。
図8および図9において、各列の1段目には、目標位置の時間変化つまり目標軌道が示される。目標軌道は5次軌道である。2段目には、目標位置と制御対象の位置(負荷位置)との時間変化が示される。3段目には、目標位置と負荷位置との偏差の時間変化が示される。4段目には、サーボモータに加えられるトルクの時間変化が示される。1段目から3段目までのグラフの横軸の目盛りは、4段目のグラフの横軸の目盛りと同じである。
図8に示されるように、第2動特性モデルPMLにおける振動周波数と同じ周波数で制御対象が振動する場合、第1モードおよび第2モードのいずれを用いても、高い制振性を示すことが確認された。なお、制御対象の移動中(すなわち、0~400msまでの期間)において、(a)および(c)における目標軌道に対する追従性が(b)における目標軌道に対する追従性よりも劣っている。これは、動特性モデルにおけるモデル誤差に起因する予測誤差を計測位置により修正することができないためであると考えられる。
図9に示されるように、第2動特性モデルPMLにおける振動周波数から変動した周波数で制御対象が振動する場合、制御対象の計測位置を用いない第2モードのみのモデル予測制御では、停止後に振動することが確認された(図9(a)参照)。これは、動特性モデルが制御対象を精度良くモデリングされていないためである。
しかしながら、図9(b)に示されるように、制御対象の計測位置を用いる第1モードのモデル予測制御を行なうことにより、停止後の振動が抑制される。これは、動特性モデルと実際の制御対象との差が制御対象の計測位置によって適宜修正されるためである。
図9(c)に示されるように、停止位置の近傍の範囲のみ第1モードのモデル予測制御を行なったとしても、図9(b)と同様に停止後の振動が抑制されている。この結果から、停止位置を含む所定範囲において制御対象の位置を計測可能とする計測センサ20を用いることにより、高い制振性および目標軌道への追従性を維持できるとともに、制御対象の振動周波数の変動に対するロバスト性の向上が確認された。
ただし、図9(c)では、第2モードから第1モードへの切り替わりのときにトルクが大きく変動している。しかしながら、図9(d)に示されるように、第2モードから第1モードへの切り替わりのときに第3モードに従った制御を行なうことにより、トルクの変動幅を十分に抑制できることが確認された。
<I.利点>
以上のように、本実施の形態に係る制御装置100は、制御対象2を駆動するサーボ機構に接続され、制御対象2の制御量が目標軌道に追従するようにサーボ機構に操作量MVを出力する。制御装置100は、制御対象2の位置を計測する計測センサ20からの計測値PVLを取得するための取得部であるフィールドバスコントローラ122と、プロセッサ102とを備える。プロセッサ102は、操作量MVと制御対象2の位置との関係を示す動特性モデルPを用いたモデル予測制御を行なうことによりサーボドライバ200に出力する操作量MVを生成する。計測センサ20は、制御対象2の停止位置を含む所定範囲(計測対象範囲)において制御対象2の位置を計測可能である。プロセッサ102は、制御対象2の位置が計測対象範囲内である場合に、今回の制御周期における制御量PVとして計測値PVLを用いる第1モードに従ったモデル予測制御を実行する。プロセッサ102は、制御対象2の位置が計測対象範囲外である場合に、今回の制御周期における制御量PVとして計測値PVLの代わりにモデル出力値YLを用いる第2モードに従ったモデル予測制御を実行する。
上記の構成によれば、制御対象2の位置が計測対象範囲内および計測対象範囲外のいずれであっても、モデル予測制御により操作量MVが生成される。そのため、制振性および目標軌道への追従性を高めることができる。
さらに、制御対象2の位置が計測対象範囲内である場合(すなわち第1モードの場合)、計測値PVLを用いてモデル出力値YLが演算される。これにより、制御対象2の状態が動特性モデルから変動した場合であっても、高い制振性を維持でき、制御対象2の状態の変動に対するロバスト性を向上させることができる。
このように、本実施の形態によれば、制御対象2の可動範囲のうちの一部しか計測位置が得られない場合であっても、位置決め時の制振性を向上させることができる。
<J.付記>
以上のように、本実施の形態および変形例は以下のような開示を含む。
(構成1)
制御対象(2)を駆動するサーボ機構(200,300)に接続され、制御対象(2)の制御量が目標軌道に追従するように前記サーボ機構(200,300)に操作量を出力する制御装置(100)であって、
前記制御対象(2)の位置を計測する計測センサ(20)から計測値を取得するための取得部(122)と、
制御周期毎に、前記操作量と前記制御対象(2)の位置との関係を示す動特性モデルを用いたモデル予測制御を行なうことにより前記サーボ機構(200,300)に出力する前記操作量を生成する制御部(102,150)とを備え、
前記計測センサ(20)は、前記制御対象(2)の停止位置を含む所定範囲において前記制御対象(2)の位置を計測可能であり、
前記制御部(102,150)は、
前記制御対象(2)の位置が前記所定範囲内である場合に、今回の制御周期における前記制御量として前記計測値を用いる第1モードに従ったモデル予測制御を実行し、
前記制御対象(2)の位置が前記所定範囲外である場合に、前記今回の制御周期における前記制御量として前記動特性モデルの出力値を用いる第2モードに従ったモデル予測制御を実行する、制御装置(100)。
(構成2)
前記制御部(102,150)は、前記第1モードにおいて、前記計測値を用いて前記動特性モデルの出力値を演算する、構成1に記載の制御装置(100)。
(構成3)
前記制御部(102,150)は、前記第1モードにおいて、前記今回の制御周期における前記計測値と前記今回の制御周期における前記モデル出力値との差分だけ、前記今回の制御周期までに演算された前記モデル出力値を補正する、構成2に記載の制御装置(100)。
(構成4)
前記制御部(102,150)は、前記制御対象(2)の位置が前記所定範囲外から前記所定範囲内に変化した場合にN個の前記制御周期だけ第3モードに従った制御を行ない、
Nは2以上の整数であり、
前記制御部(102,150)は、
前記第3モードにおいて、前記第1モードに従ったモデル予測制御によって生成される第1操作量と前記第2モードに従ったモデル予測制御によって生成される第2操作量との差分を前記N個の制御周期の間に解消するように、前記サーボ機構に出力する前記操作量を生成する、構成1から3のいずれかに記載の制御装置(100)。
(構成5)
前記サーボ機構(200,300)は、前記制御対象(2)を移動させるためのサーボモータ(300)と、前記サーボモータ(300)を駆動するサーボドライバ(200)とを含み、
前記動特性モデルは、前記操作量と前記サーボモータ(300)の位置との関係を示す第1動特性モデルと、前記サーボモータ(300)の位置と前記制御対象(2)の位置との関係を示す第2動特性モデルとを含み、
前記第2動特性モデルは、前記制御対象(2)の振動波形から得られる波形パラメータを用いて生成され、
前記波形パラメータは、振動周波数および前記振動波形において連続する2つの波の振幅比のうち少なくとも前記振動周波数を含む、構成1から4のいずれかに記載の制御装置(100)。
(構成6)
制御対象(2)を駆動するサーボ機構(200,300)に接続され、制御対象(2)の制御量が目標軌道に追従するように前記サーボ機構(200,300)に操作量を出力する制御装置(100)を実現するための制御プログラム(110,112)であって、
前記制御プログラム(110,112)は、コンピュータに、
前記制御対象(2)の位置を計測する計測センサ(20)から計測値を取得するステップと、
制御周期毎に、前記操作量と前記制御対象(2)の位置との関係を示す動特性モデルを用いたモデル予測制御を行なうことにより、前記サーボ機構(200,300)に出力する前記操作量を生成するステップとを実行させ、
前記計測センサ(20)は、前記制御対象(2)の停止位置を含む所定範囲において前記制御対象の位置を計測可能であり、
前記モデル出力値を演算するステップは、
前記制御対象(2)の位置が前記所定範囲内である場合に、今回の制御周期における前記制御量として前記計測値を用いる第1モードに従ったモデル予測制御を実行するステップと、
前記制御対象(2)の位置が前記所定範囲外である場合に、前記今回の制御周期における前記制御量として前記動特性モデルの出力値を用いる第2モードに従ったモデル予測制御を実行するステップとを含む、制御プログラム(110,112)。
本発明の実施の形態について説明したが、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 制御システム、2 制御対象、3 ワーキングプレート、4 第1ベースプレート、6,9 ボールネジ、7 第2ベースプレート、20,20X,20Y 計測センサ、100 制御装置、101a,101b フィールドバス、102 プロセッサ、104 チップセット、106 メインメモリ、108 フラッシュメモリ、110 システムプログラム、110A モデル作成ライブラリ、110B モデル予測制御ライブラリ、112 ユーザプログラム、112A シーケンスプログラム、112B モーションプログラム、116 外部ネットワークコントローラ、118 メモリカードインターフェイス、120 メモリカード、122,124 フィールドバスコントローラ、130 モデル作成モジュール、140 軌道生成モジュール、150 モデル予測制御モジュール、160 制御ユニット、200,200X,200Y サーボドライバ、300,300X,300Y サーボモータ、400 モデル対象。

Claims (6)

  1. 制御対象を駆動するサーボ機構に接続され、制御対象の制御量が目標軌道に追従するように前記サーボ機構に操作量を出力する制御装置であって、
    前記制御対象の位置を計測する計測センサから計測値を取得するための取得部と、
    制御周期毎に、前記操作量と前記制御対象の位置との関係を示す動特性モデルを用いたモデル予測制御を行なうことにより、前記サーボ機構に出力する前記操作量を生成する制御部とを備え、
    前記計測センサは、前記制御対象の停止位置を含む所定範囲において前記制御対象の位置を計測可能であり、
    前記制御部は、
    前記制御対象の位置が前記所定範囲内である場合に、今回の制御周期における前記制御量として前記計測値を用いる第1モードに従ったモデル予測制御を実行し、
    前記制御対象の位置が前記所定範囲外である場合に、前記今回の制御周期における前記制御量として前記動特性モデルの出力値を用いる第2モードに従ったモデル予測制御を実行する、制御装置。
  2. 前記制御部は、前記第1モードにおいて、前記計測値を用いて前記動特性モデルの出力値を演算する、請求項1に記載の制御装置。
  3. 前記制御部は、前記第1モードにおいて、前記今回の制御周期における前記計測値と前記今回の制御周期における前記動特性モデルの出力値との差分だけ、前記今回の制御周期までに演算された前記動特性モデルの出力値を補正する、請求項2に記載の制御装置。
  4. 前記制御部は、前記制御対象の位置が前記所定範囲外から前記所定範囲内に変化した場合にN個の制御周期だけ第3モードに従った制御を行ない、
    Nは2以上の整数であり、
    前記制御部は、
    前記第3モードにおいて、前記第1モードに従ったモデル予測制御によって生成される第1操作量と前記第2モードに従ったモデル予測制御によって生成される第2操作量との差分を前記N個の制御周期の間に解消するように、前記サーボ機構に出力する前記操作量を生成する、請求項1から3のいずれか1項に記載の制御装置。
  5. 前記サーボ機構は、前記制御対象を移動させるためのサーボモータと、前記サーボモータを駆動するサーボドライバとを含み、
    前記動特性モデルは、前記操作量と前記サーボモータの位置との関係を示す第1動特性モデルと、前記サーボモータの位置と前記制御対象の位置との関係を示す第2動特性モデルとを含み、
    前記第2動特性モデルは、前記制御対象の振動波形から得られる波形パラメータを用いて生成され、
    前記波形パラメータは、振動周波数および前記振動波形において連続する2つの波の振幅比のうち少なくとも前記振動周波数を含む、請求項1から4のいずれか1項に記載の制御装置。
  6. 制御対象を駆動するサーボ機構に接続され、前記制御対象の制御量が目標値に追従するように前記サーボ機構に操作量を出力する制御装置を実現するための制御プログラムであって、
    前記制御プログラムは、コンピュータに、
    前記制御対象の位置を計測する計測センサから計測値を取得するステップと、
    制御周期毎に、前記操作量と前記制御対象の位置との関係を示す動特性モデルを用いたモデル予測制御を行なうことにより、前記サーボ機構に出力する前記操作量を生成するステップとを実行させ、
    前記計測センサは、前記制御対象の停止位置を含む所定範囲において前記制御対象の位置を計測可能であり、
    前記操作量を生成するステップは、
    前記制御対象の位置が前記所定範囲内である場合に、今回の制御周期における前記制御量として前記計測値を用いる第1モードに従ったモデル予測制御を実行するステップと、
    前記制御対象の位置が前記所定範囲外である場合に、前記今回の制御周期における前記制御量として前記動特性モデルの出力値を用いる第2モードに従ったモデル予測制御を実行するステップとを含む、制御プログラム。
JP2019021905A 2019-02-08 2019-02-08 制御装置および制御プログラム Active JP7047794B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2019021905A JP7047794B2 (ja) 2019-02-08 2019-02-08 制御装置および制御プログラム
PCT/JP2020/002258 WO2020162200A1 (ja) 2019-02-08 2020-01-23 制御装置および制御プログラム
EP20752283.0A EP3923091B1 (en) 2019-02-08 2020-01-23 Control device and control program
CN202080010406.1A CN113383281B (zh) 2019-02-08 2020-01-23 控制装置以及存储介质
US17/424,609 US11754992B2 (en) 2019-02-08 2020-01-23 Control device and control program
KR1020217022518A KR102524687B1 (ko) 2019-02-08 2020-01-23 제어 장치 및 제어 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019021905A JP7047794B2 (ja) 2019-02-08 2019-02-08 制御装置および制御プログラム

Publications (2)

Publication Number Publication Date
JP2020129291A JP2020129291A (ja) 2020-08-27
JP7047794B2 true JP7047794B2 (ja) 2022-04-05

Family

ID=71947600

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019021905A Active JP7047794B2 (ja) 2019-02-08 2019-02-08 制御装置および制御プログラム

Country Status (6)

Country Link
US (1) US11754992B2 (ja)
EP (1) EP3923091B1 (ja)
JP (1) JP7047794B2 (ja)
KR (1) KR102524687B1 (ja)
CN (1) CN113383281B (ja)
WO (1) WO2020162200A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102390568B1 (ko) * 2022-01-04 2022-04-27 승화프린팅(주) 라벨용 포장필름 ,그의 제조방법 및 그를 부착한 포장필름

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018151899A (ja) 2017-03-14 2018-09-27 オムロン株式会社 制御装置、制御プログラムおよび制御システム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3687958B2 (ja) * 2001-03-30 2005-08-24 東芝機械株式会社 位置制御装置および位置制御方法
JP3906480B2 (ja) * 2001-07-19 2007-04-18 株式会社安川電機 外乱の内部モデルを用いた位置決め制御装置
JP4081336B2 (ja) 2002-09-27 2008-04-23 オークマ株式会社 サーボ制御装置
JP2006072700A (ja) * 2004-09-02 2006-03-16 Fujitsu Ten Ltd モデル予測制御装置及びモデル予測制御方法
JP5196379B2 (ja) * 2009-06-24 2013-05-15 株式会社日立製作所 制御装置、制御モデル調整装置及び制御モデル調整方法
JP5312688B2 (ja) * 2010-04-26 2013-10-09 三菱電機株式会社 サーボ制御装置
JP2017022933A (ja) 2015-07-14 2017-01-26 株式会社ミツトヨ フィードバック制御装置
JP2017102619A (ja) * 2015-11-30 2017-06-08 オムロン株式会社 制御パラメータ調整装置、制御パラメータ調整方法、制御パラメータ調整プログラム
JP2018041150A (ja) * 2016-09-05 2018-03-15 オムロン株式会社 モデル予測制御装置、モデル予測制御装置の制御方法、情報処理プログラム、および記録媒体
JP2018120327A (ja) * 2017-01-24 2018-08-02 オムロン株式会社 制御装置、制御プログラムおよび制御システム
CN107014579A (zh) * 2017-06-02 2017-08-04 上海华龙测试仪器股份有限公司 一种电液伺服模拟地震振动台

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018151899A (ja) 2017-03-14 2018-09-27 オムロン株式会社 制御装置、制御プログラムおよび制御システム

Also Published As

Publication number Publication date
CN113383281B (zh) 2024-07-26
US11754992B2 (en) 2023-09-12
KR20210106505A (ko) 2021-08-30
US20220100164A1 (en) 2022-03-31
WO2020162200A1 (ja) 2020-08-13
EP3923091A4 (en) 2022-11-02
CN113383281A (zh) 2021-09-10
EP3923091B1 (en) 2024-02-28
EP3923091A1 (en) 2021-12-15
JP2020129291A (ja) 2020-08-27
KR102524687B1 (ko) 2023-04-25

Similar Documents

Publication Publication Date Title
CN108572609B (zh) 控制装置、记录媒体以及控制系统
JP6469065B2 (ja) 機械学習装置及び加工時間予測装置
JP6519457B2 (ja) 補正装置、補正装置の制御方法、情報処理プログラム、および記録媒体
US7863851B2 (en) Closed loop stepper motor control
JP6669715B2 (ja) 振動抑制装置
US20180210407A1 (en) Control device, control program, and control system
JP2016130908A (ja) 加工条件に応じてパラメータを調整するパラメータ自動調整装置
CN109562518B (zh) 并联连杆机构的控制装置
JP2017102624A (ja) 制御装置
JP6333915B2 (ja) 数値制御装置
JP2006146572A (ja) サーボ制御装置および方法
JP7047794B2 (ja) 制御装置および制御プログラム
US20190361421A1 (en) Servo control device
JP7024742B2 (ja) 制御装置、モデル作成方法および制御プログラム
JP7031624B2 (ja) 制御装置および制御プログラム
JP7059957B2 (ja) 制御装置および制御プログラム
KR102598906B1 (ko) 모터 드라이버 제어를 위해 모션 컨트롤러의 출력에 기반하여 반진동 제어를 수행하는 반진동 필터 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201215

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220307

R150 Certificate of patent or registration of utility model

Ref document number: 7047794

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150