(57)【要約】【課題】モデル予測制御を用いてサーボ系を構築するにあたって、そのサーボ系の設計を容易にしつつ好適な過渡応答性を得られる制御装置を提供する。【解決手段】サーボ制御の実際の対象である実対象装置の出力を所定の指令に対して追従させるために、該実対象装置に対応する所定の制御対象に関するモデル予測制御を実行する制御装置であって、所定の指令とフィードバックされた該制御対象の出力との偏差が入力される積分器と、所定の状態変数と所定の制御対象への入力の相関を所定の状態方程式の形式で画定した予測モデルを有し、積分器の出力を入力として、所定時間幅の予測区間において所定の評価関数に従って該予測モデルに基づいたモデル予測制御を行うモデル予測制御部と、を備え、予測モデルは、所定の制御対象の出力と所定の指令との偏差と、所定の積分ゲインとの積で表される所定の積分項を含む。【選択図】図３
2019109890.tif 000002
【特許請求の範囲】
【請求項１】
サーボ制御の実際の対象である実対象装置の出力を所定の指令に対して追従させるために、該実対象装置に対応する所定の制御対象に関するモデル予測制御を実行する制御装置であって、
前記所定の指令と、前記所定の制御対象の出力との偏差が入力される積分器と、
前記所定の制御対象に関する所定の状態変数の値を取得する状態取得部と、
前記所定の状態変数と前記所定の制御対象への入力の相関を所定の状態方程式の形式で画定した予測モデルを有し、前記積分器の出力を入力として、所定時間幅の予測区間において所定の評価関数に従って該予測モデルに基づいた前記モデル予測制御を行い、少なくとも該予測区間の初期時刻での前記入力の値を、前記所定の指令に対応する該所定の制御対象への入力として出力するモデル予測制御部と、
を備え、
前記予測モデルは、前記所定の制御対象の出力と前記所定の指令との偏差と、所定の積分ゲインとの積で表される所定の積分項を含む、
制御装置。
【請求項２】
前記所定の制御対象は、前記実対象装置自体であって、
前記制御装置は、前記実対象装置の出力をフィードバックするフィードバック系を有し、
前記積分器には、前記所定の指令と前記フィードバック系によりフィードバックされた前記実対象装置の出力との偏差が入力され、
前記状態取得部は、前記実対象装置に関する前記所定の状態変数の値を取得し、
前記予測モデルは、前記所定の状態変数と前記実対象装置への入力の相関を画定するモデルであって、該予測モデルが含む前記所定の積分項は、前記実対象装置の出力と前記所定の指令との偏差と、前記所定の積分ゲインとの積で表される、
請求項１に記載の制御装置。
【請求項３】
前記実対象装置をモデル化したモデルであって前記所定の制御対象である実対象モデルを有し、該実対象モデルを用いて該実対象装置の出力をシミュレーションして出力する実対象モデル制御部を、更に備え、
前記実対象モデル制御部の出力は、前記実対象装置側へ供給されるように構成され、
前記積分器には、前記所定の指令と前記実対象モデル制御部の出力との偏差が入力され、
前記状態取得部は、前記実対象モデル制御部が有する前記実対象モデルに関する前記所定の状態変数の値を取得し、
前記予測モデルは、前記所定の状態変数と前記実対象モデル制御部への入力の相関を画定するモデルであって、該予測モデルが含む前記所定の積分項は、前記実対象制御モデルの出力と前記所定の指令との偏差と、前記所定の積分ゲインとの積で表される、
請求項１に記載の制御装置。
【請求項４】
前記偏差の大きさが小さくなるに従い前記所定の積分ゲインが大きくなるように、該所定の積分ゲインを調整するゲイン調整部を、更に備える、
請求項１から請求項３の何れか１項に記載の制御装置。
【請求項５】
前記ゲイン調整部は、前記偏差の値が零を含む所定の第１範囲内に属するときは該偏差の大きさが小さくなるに従い前記所定の積分ゲインを大きく調整し、該偏差の値が該所定の第１範囲に属さないときは前記所定の積分ゲインを零とする、
請求項４に記載の制御装置。
【請求項６】
前記所定の制御対象は、２次元の出力を有し、
前記所定の第１範囲は、下に凸な関数ｆ（ｘ）で定義され、
前記所定の積分ゲインは、α（｜ｆ（ｘ）｜−ｆ（ｘ））の関数（ただし、αは所定の係数）で表される、
請求項５に記載の制御装置。
【請求項７】
前記所定の制御対象は、２次元の出力を有し、
前記所定の第１範囲は、上に凸な関数ｆ（ｘ）で定義され、
前記所定の積分ゲインは、α（｜ｆ（ｘ）｜＋ｆ（ｘ））の関数（ただし、αは所定の係数）で表される、
請求項５に記載の制御装置。
【請求項８】
前記所定の制御対象は、複数の制御軸を有し、
前記所定の制御対象への指令、及び該所定の制御対象への入力及び該所定の制御対象の出力は、前記複数の制御軸のそれぞれに対応付けられ、
前記予測モデルは、前記複数の制御軸のそれぞれに対応して前記所定の状態方程式により画定され、且つ、該複数の制御軸のそれぞれに対応した、複数の前記所定の積分項を含む、
請求項４から請求項７の何れか１項に記載の制御装置。
【請求項９】
前記ゲイン調整部は、前記複数の制御軸のそれぞれに対応する前記所定の積分ゲインを、該複数の制御軸のそれぞれに対応する前記偏差の大きさに応じて調整し、
前記ゲイン調整部は、前記複数の制御軸における各制御軸に対応する前記偏差の相対的な大きさが大きいほど、対応する前記所定の積分ゲインが大きくなるように調整する、
請求項８に記載の制御装置。
【請求項１０】
前記所定の制御対象において、前記複数の制御軸に基づいて所定の作業座標系が設定され、
前記ゲイン調整部は、前記複数の制御軸のそれぞれに対応する前記所定の積分ゲインを、該複数の制御軸のそれぞれに対応する前記偏差の、前記所定の作業座標系における大きさに応じて調整し、
前記ゲイン調整部は、前記複数の制御軸における各制御軸に対応する、前記所定の作業座標系に換算された前記偏差の相対的な大きさが大きいほど、対応する前記所定の積分ゲインが大きくなるように調整する、
請求項８に記載の制御装置。
【請求項１１】
前記ゲイン調整部は、前記偏差に基づき微分可能なゲイン設定関数に従って前記所定の積分ゲインを算出する、
請求項４から請求項１０の何れか１項に記載の制御装置。
【請求項１２】
前記ゲイン調整部は、前記所定の積分ゲインを算出するための、前記偏差に関するゲイン設定関数を含み、
前記ゲイン調整部は、
前記ゲイン設定関数が前記偏差に基づき微分可能である場合には、該ゲイン設定関数に従って前記所定の積分ゲインを算出し、
前記ゲイン設定関数が前記偏差に基づき微分可能でない場合には、前記モデル予測制御部による前記モデル予測制御の演算処理を安定化させる所定の安定化処理を行った上で、該ゲイン設定関数に従って前記所定の積分ゲインを算出する、
請求項４から請求項１０の何れか1項に記載の制御装置。
【請求項１３】
前記予測モデルは、前記所定の積分ゲインを１とする前記所定の積分項に加えて、前記偏差に対するハイパスフィルタリング処理に関連付けられた所定のフィルタリングゲインと、前記積分器の出力との積で表されるＨＰＦ処理項を含み、
前記所定のフィルタリングゲインは、前記偏差の値が、零を含む所定の第２範囲の外にある場合には、前記ハイパスフィルタリング処理において該偏差の大きさが該所定の第２範囲の境界に近づく値であるほどカットオフ周波数が低くなるように設定され、
前記所定のフィルタリングゲインは、該偏差の値が該所定の第２範囲内に属する場合には、零とされる、
請求項１から請求項３の何れか１項に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御対象をサーボ制御する制御装置に関する。
【背景技術】
【０００２】
制御対象を指令軌道に追従させて動かすために、一般的にはフィードバック制御が利用されている。例えば多関節ロボットにおいては、ロボットの制御装置により、フィードバック制御を用いてロボットの手先部の位置を予め設定（教示）された指令軌道に追従させるように、各関節軸のサーボモータの制御が行われる。ところが、一般的なフィードバック制御では、どうしても各サーボモータに応答遅れが生ずるため、ロボットの実際の軌跡が指令軌道からずれる問題がある。このような指令軌道に対するずれを抑制するために、モデル予測制御に関する技術が利用されている。
【０００３】
ここで、フィードバック制御によりサーボ系を構成する場合、未知の外乱が存在するとその制御系に定常偏差が生じてしまう。また、モデル予測制御を利用する場合でも、追従制御のように指令に対する目標軌道が時々刻々変化していくときには、定常偏差が発生し得る。そこで、モデル予測制御を用いてサーボ系を構成する場合、その補償器に積分器をシリアルに接続することで定常偏差の解消を図ることが考えられる。また、想定される外乱を新たな状態とみなしてモデルに組み込むことで原理的には除去することができる。例えば、非特許文献１や非特許文献２では、外乱オブザーバを構築し、そこで推定された外乱を用いて定常偏差をキャンセルする手法が提案されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Yuta Sakurai and Toshiyuki Ohtsuka: Offset Compensation of Continuous Time Model Predictive Control By Disturbance Estimation;システム制御情報学会論文誌, Vol.25, No. 7, pp.10-18(2012)
【非特許文献２】U.Maeder and M.Morari: Linear offset-free model predictive control; Automatica, Vol. 45, No. 10, pp.2214-2222(2009)
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述したように、モデル予測制御を用いてサーボ系を構成しその補償器に積分器をシリアルに接続すると、制御対象の出力がオーバーシュートする等してその過渡応答の劣化が顕著となってしまう。そのため、一般には、モデル予測制御を用いる場合には、積分器を組み込んでサーボ系を構築するのは敬遠される。
【０００６】
また、上記のように外乱オブザーバを構築する場合では、外乱を新たな状態とみなすことでモデル予測制御に組み込まれる状態変数が増加し、モデル予測制御に関連する計算負荷が大きくなる。一般にモデル予測制御を利用する場合は、その計算負荷の大きいことが知られているところであるが、外乱オブザーバを利用すると更にその計算負荷が大きくなり、また外乱の影響を的確に打ち消すための外乱オブザーバの設計自体も困難であり、実用的なサーボ系の構築は容易ではなくなる。
【０００７】
本発明は、このような問題に鑑みてなされたものであり、モデル予測制御を用いてサーボ系を構築するにあたって、そのサーボ系の設計を容易にしつつ好適な過渡応答性を得られる制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明においては、上記課題を解決するために、モデル予測制御のための予測モデルに、制御対象への指令とその出力との偏差に所定の積分ゲインを乗じた積分項を含ませる構成を採用した。詳細には、本発明は、サーボ制御の実際の対象である実対象装置の出力を所定の指令に対して追従させるために、該実対象装置に対応する所定の制御対象に関するモデル予測制御を実行する制御装置であって、前記所定の指令と、前記所定の制御対象の出力との偏差が入力される積分器と、前記所定の制御対象に関する所定の状態変数の値を取得する状態取得部と、前記所定の状態変数と前記所定の制御対象への入力の相関を所定の状態方程式の形式で画定した予測モデルを有し、前記積分器の出力を入力として、所定時間幅の予測区間において所定の評価関数に従って該予測モデルに基づいた前記モデル予測制御を行い、少なくとも該予測区間の初期時刻での前記入力の値を、前記所定の指令に対応する該所定の制御対象への入力として出力するモデル予測制御部と、を備える。そして、前記予測モデルは、前記所定の制御対象の出力と前記所定の指令との偏差と、所定の積分ゲインとの積で表される所定の積分項を含む。
【０００９】
本発明の制御装置では、積分器による積分処理が行われるとともに、モデル予測制御部が有する予測モデルを用いてモデル予測制御が行われる。当該モデル予測制御では、各制御タイミングで、所定時間幅の予測区間が設定され、その予測区間において所定の評価関数に従った制御が行われ、少なくともその予測区間での初期時刻の、算出された入力値が制御対象への入力として提供される。そして、その入力の結果、得られた制御対象の状態を表す状態変数の値が状態取得部によって取得され、次のモデル予測制御に供されることになる。したがって、当該モデル予測制御では、予測区間が制御時間の経過とともに移動していくことになり、いわゆるReceding Horizon制御を実行することになる。
【００１０】
ここで、上記制御装置では、予測モデルに制御対象の出力と指令との偏差と、所定の積分ゲインとの積で表される所定の積分項が含まれるように、モデル予測制御部が形成されている。このような構成を採用することで、偏差に基づいたモデル予測制御が行われることになり、且つ、当該モデル予測制御は、モデル予測制御部の外部における演算処理、すなわち積分器での積分処理に対して並列に行われることになる。そのため、サーボ制御において過渡応答をいたずらに劣化させることなく、定常偏差を効果的に解消することができる。また、上記制御装置は、予測モデルに所定の積分項を含ませることで定常偏差の解消を図るものであって、従来技術のように定常偏差の要因となる外乱を推定するオブザーバ等の、計算負荷が比較的大きくなる処理を採用するものではない。このような外乱オブザーバは、目標軌跡が時々刻々変化していく場合には該オブザーバが有する外乱モデルを拡張する必要があり、また、制御系の安定性を考慮して外乱オブザーバのゲイン設計を行う必要があり、実用状況に応じた外乱オブザーバの設計は容易ではない。そのため、本発明の制御装置では、制御系の設計に要する負荷を大きく軽減でき、所定の制御対象の好適なサーボ制御が可能となる。
【００１１】
ここで、上記制御装置について、例示として、以下の２つの具体的な形態が挙げられる。第１の形態では、前記所定の制御対象が、前記実対象装置自体であってもよい。この場合、前記制御装置は、前記実対象装置の出力をフィードバックするフィードバック系を有し、前記積分器には、前記所定の指令と前記フィードバック系によりフィードバックされた前記実対象装置の出力との偏差が入力され、前記状態取得部は、前記実対象装置に関する前記所定の状態変数の値を取得し、前記予測モデルは、前記所定の状態変数と前記実対象装置への入力の相関を画定するモデルであって、該予測モデルが含む前記所定の積分項は、前記実対象装置の出力と前記所定の指令との偏差と、前記所定の積分ゲインとの積で表される。すなわち、第１の形態では、実対象装置に関連する状態変数を用いて、上述の所定の積分項を含む予測モデルを利用したモデル予測制御が行われる。この場合、実対象装置を含むフィードバック系でモデル予測制御が行われ、実対象装置の出力追従性を好適
なものとなる。
【００１２】
また、第２の形態では、前記所定の制御対象は、前記実対象装置をモデル化した実対象モデルであってもよい。この場合、前記制御装置は、該実対象モデルを用いて該実対象装置の出力をシミュレーションして出力する実対象モデル制御部を、更に備え、前記実対象モデル制御部の出力は、前記実対象装置側へ供給されるように構成され、前記積分器には、前記所定の指令と前記実対象モデル制御部の出力との偏差が入力され、前記状態取得部は、前記実対象モデル制御部が有する前記実対象モデルに関する前記所定の状態変数の値を取得し、前記予測モデルは、前記所定の状態変数と前記実対象モデル制御部への入力の相関を画定するモデルであって、該予測モデルが含む前記所定の積分項は、前記実対象制御モデルの出力と前記所定の指令との偏差と、前記所定の積分ゲインとの積で表される。すなわち、第２の形態では、実対象装置をモデル化した実対象モデルに関連する状態変数を用いて、上述の所定の積分項を含む予測モデルを利用したモデル予測制御が行われる。この場合、実対象装置を含むフィードバック系でモデル予測制御は行われないものの、実対象モデルを含む系でモデル予測制御が行われているため、最終的に実対象装置には、その出力の好適な追従性を担保する、モデル予測制御部の出力が供給されることになる。
【００１３】
ここで、上記の制御装置は、前記偏差の大きさが小さくなるに従い前記所定の積分ゲインが大きくなるように、該所定の積分ゲインを調整するゲイン調整部を、更に備えてもよい。当該偏差の大きさは、例えば、偏差の絶対値で表すことができ、又は、その大きさに相関を有する別の形態（例えば、偏差の二乗値）でも表すことができる。このようにゲイン調整部が所定の積分ゲインを調整することで、偏差の大きさが大きいとき、すなわち、所定の制御対象の出力が指令に対して大きくずれている場合には、所定の積分ゲインは小さく調整され、その結果、モデル予測制御における積分量が過度に溜まらないように調整される。また、偏差の大きさが小さくなると、所定の積分ゲインは大きく調整されモデル予測制御において積分量に基づいたサーボ制御が促進されることになる。この結果、制御装置においては、過渡応答時のオーバーシュートを効果的に抑制しながら所定の制御対象のサーボ制御を好適に実現できる。
【００１４】
また、上記の制御装置において、前記ゲイン調整部は、前記偏差の値が零を含む所定の第１範囲内に属するときは該偏差の大きさが小さくなるに従い前記所定の積分ゲインを大きく調整し、該偏差の値が該所定の第１範囲に属さないときは前記所定の積分ゲインを零としてもよい。このようにモデル予測制御における積分量に基づいたサーボ制御が行われるのを偏差の値が所定の第１範囲内に属する場合に限定することで、過渡応答時のオーバーシュートがより好適に抑制され得る。なお、所定の第１範囲は、サーボ制御による所定の指令への追従性や許容し得るオーバーシュート量等を考慮して適宜設定することができる。
【００１５】
ここで、上述の制御装置に関し、前記所定の制御対象は、複数の制御軸を有し、その場合、前記所定の制御対象への指令、及び該所定の制御対象への入力及び該所定の制御対象の出力は、前記複数の制御軸のそれぞれに対応付けられ、また、前記予測モデルは、前記複数の制御軸のそれぞれに対応して前記所定の状態方程式により画定され、且つ、該複数の制御軸のそれぞれに対応した、複数の前記所定の積分項を含んでもよい。このように制御装置が所定の制御対象の複数の制御軸においてサーボ制御を行う場合でも、各制御軸に対応して予測モデルを構築するとともに、その予測モデルに各制御軸に応じた所定の積分項を含ませることで、所定の制御対象の全制御軸において好適なサーボ制御を実現することができる。
【００１６】
ここで、所定の制御対象が複数の制御軸を有する上記の場合において、前記ゲイン調整部は、前記複数の制御軸のそれぞれに対応する前記所定の積分ゲインを、該複数の制御軸
のそれぞれに対応する前記偏差の大きさに応じて調整してもよい。また、前記ゲイン調整部は、前記複数の制御軸における各制御軸に対応する前記偏差の相対的な大きさが大きいほど、対応する前記所定の積分ゲインが大きくなるように調整してもよい。このようにモデル予測制御に従った各制御軸のサーボ制御において、各制御軸の積分ゲインの大きさが、各制御軸に対応する偏差の相対的な大きさに基づいて調整されることで、各制御軸における指令への追従性を揃えることができる。
【００１７】
また、別法として、所定の制御対象が複数の制御軸を有する上記の場合であって、前記所定の制御対象において、前記複数の制御軸に基づいて所定の作業座標系が設定される場合、前記ゲイン調整部は、前記複数の制御軸のそれぞれに対応する前記所定の積分ゲインを、該複数の制御軸のそれぞれに対応する前記偏差の、前記所定の作業座標系における大きさに応じて調整してもよい。また、前記ゲイン調整部は、前記複数の制御軸における各制御軸に対応する、前記所定の作業座標系に換算された前記偏差の相対的な大きさが大きいほど、対応する前記所定の積分ゲインが大きくなるように調整してもよい。このように各制御軸に対応する、所定の作業座標系に換算された偏差の相対的な大きさを利用しても、各制御軸における指令への追従性を揃えることができる。特に、所定の作業座標系を考慮して各制御軸の積分ゲインを調整することで、所定の作業座標系における所定の制御対象の出力を好適に指令に追従させることができる。
【００１８】
ここで、上述までの制御装置において、前記ゲイン調整部は、前記偏差に基づき微分可能なゲイン設定関数に従って前記所定の積分ゲインを算出してもよい。これにより、モデル予測制御における演算処理を安定して行うことができる。また、別法として、前記ゲイン調整部は、前記所定の積分ゲインを算出するための、前記偏差に関するゲイン設定関数を含む場合、前記ゲイン調整部は、前記ゲイン設定関数が前記偏差に基づき微分可能である場合には、該ゲイン設定関数に従って前記所定の積分ゲインを算出してもよい。また、前記ゲイン設定関数が前記偏差に基づき微分可能でない場合には、前記モデル予測制御部による前記モデル予測制御の演算処理を安定化させる所定の安定化処理を行った上で、該ゲイン設定関数に従って前記所定の積分ゲインを算出してもよい。このように安定化処理を行うことで、ゲイン設定関数が偏差に基づき微分不可能な場合でも、モデル予測制御における演算処理を安定して行うことができる。
【００１９】
また、上述までの制御装置において、前記予測モデルは、前記所定の積分ゲインを１とする前記所定の積分項に加えて、前記偏差に対するハイパスフィルタリング処理に関連付けられた所定のフィルタリングゲインと、前記積分器の出力との積で表されるＨＰＦ処理項を含んでもよい。その場合、前記所定のフィルタリングゲインは、前記偏差の値が、零を含む所定の第２範囲の外にある場合には、前記ハイパスフィルタリング処理において該偏差の大きさが該所定の第２範囲の境界に近づく値であるほどカットオフ周波数が低くなるように設定されてもよく、更に、前記所定のフィルタリングゲインは、該偏差の値が該所定の第２範囲内に属する場合には、零とされてもよい。
【００２０】
上記の制御装置では、偏差の値が所定の第２範囲内にある場合には、所定の積分ゲインを１とした場合のモデル予測制御における積分量に基づいたサーボ制御が行われる。一方で、偏差の値が所定の第２範囲の外にある場合には、ＨＰＦ処理項により所定のハイパスフィルタリング処理が偏差に施されることで、相対的に古い偏差の影響を緩和させることになる。この結果、偏差の積分量が溜まることに起因するオーバーシュートが抑制され得る。また、ハイパスフィルタリング処理に関連付けられたフィルタリングゲインが、上記のようにハイパスフィルタリング処理におけるカットオフ周波数の設定を介して、積分処理が行われる所定の第２範囲との距離に関連付けられることで、偏差の値が当該領域から離れるほど積分量の溜まりを抑制でき、オーバーシュートの抑制に寄与し得る。なお、所定の第２範囲は、サーボ制御による所定の指令への追従性や許容し得るオーバーシュート
量等を考慮して適宜設定することができる。
【発明の効果】
【００２１】
モデル予測制御を用いてサーボ系を構築するにあたって、そのサーボ系の設計を容易にしつつ好適な過渡応答性を得られる制御装置を提供することができる。
【図面の簡単な説明】
【００２２】
【図１】本発明に係る制御装置を含んで構成される制御システムの概略構成を示す図である。
【図２】図１に示す制御システムに含まれるサーボドライバの制御構造を示す第１の図である。
【図３】偏差と所定の積分ゲインの相関を示す第１の図である。
【図４】偏差と所定の積分ゲインの相関を示す第２の図である。
【図５】偏差と所定の積分ゲインの相関を示す第３の図である。
【図６】プラントに作業座標系を設定した状態を示す図である。
【図７】図１に示す制御システムに含まれるサーボドライバによって２つの制御軸をサーボ制御した場合の追従性の結果を示す第１の図である。
【図８】図１に示す制御システムに含まれるサーボドライバによって２つの制御軸をサーボ制御した場合の追従性の結果を示す第２の図である。
【図９】図１に示す制御システムに含まれるサーボドライバによって２つの制御軸をサーボ制御した場合の追従性の結果を示す第３の図である。
【図１０】図１に示す制御システムに含まれるサーボドライバによって２つの制御軸をサーボ制御した場合の追従性の結果を示す第４の図である。
【図１１】図１に示す制御システムに含まれるサーボドライバの制御構造を示す第２の図である。
【図１２】図１１に示すサーボドライバによって２つの制御軸をサーボ制御した場合の追従性の結果を示す図である。
【図１３】図１に示す制御システムに含まれる標準ＰＬＣの制御構造を示す図である。
【発明を実施するための形態】
【００２３】
＜実施例１＞
図１は、本発明の実施の形態に係る制御装置であるサーボドライバ４を含む制御システムの概略構成図である。制御システムは、ネットワーク１と、サーボドライバ４と、標準ＰＬＣ(Programmable Logic Controller)５とを備える。サーボドライバ４は、モータ２と負荷装置３とを含んでなるプラント６をサーボ制御するための制御装置である。当該制御システムでは、標準ＰＬＣ５で生成される指令信号にプラント６を追従させるように、サーボドライバ４がプラント６をサーボ制御する。ここで、プラント６を構成する負荷装置３としては、各種の機械装置（例えば、産業用ロボットのアームや搬送装置）が例示でき、モータ２はその負荷装置３を駆動するアクチュエータとして負荷装置３内に組み込まれている。例えば、モータ２は、ＡＣサーボモータである。なお、モータ２には図示しないエンコーダが取り付けられており、当該エンコーダによりモータ２の動作に関するパラメータ信号（位置信号、速度信号等）がサーボドライバ４にフィードバック送信されている。
【００２４】
標準ＰＬＣ５は、プラント６の動作（モーション）に関する指令信号を生成し、サーボドライバ４へ送信する。サーボドライバ４は、ネットワーク１を介して標準ＰＬＣ５から当該指令信号を受けるとともに、モータ２に接続されているエンコーダから出力されたフィードバック信号を受ける。そして、サーボドライバ４は、当該指令信号とエンコーダからのフィードバック信号に基づいて、プラント６の駆動に関するサーボ制御、すなわち、
プラント６の出力がその指令に追従するように、モータ２に駆動電流を供給する。この供給電流は、交流電源７からサーボドライバ４に対して送られる交流電力が利用される。本実施例では、サーボドライバ４は三相交流を受けるタイプのものであるが、単相交流を受けるタイプのものでもよい。なお、サーボドライバ４によるサーボ制御については、図２に示すようにモデル予測制御部４３によるモデル予測制御が実行される。
【００２５】
ここで、図２に基づいて、サーボドライバ４における制御構造について説明する。サーボドライバ４は、積分器４１、状態取得部４２、モデル予測制御部４３、ゲイン調整部４４を有している。標準ＰＬＣ５から送信された指令ｒと、フィードバック系４５によってフィードバックされたプラント６の出力ｙとの偏差ｅ（ｅ＝ｒ−ｙ）が、積分器４１に入力される。そして、その積分器４１の出力ｚは、状態取得部４２を経てモデル予測制御部４３に入力される。
【００２６】
ここで、状態取得部４２は、モデル予測制御部４３によって行われるモデル予測制御に供される、プラント６に関する状態ｘに含まれる状態変数の値を取得する。例えば、状態取得部４２は、プラント６に含まれるモータ２に接続されたエンコーダの出力信号から生成される所定の情報を、状態ｘに含まれる状態変数として取得することができる。また、プラント６に含まれる負荷装置３に関連する所定のパラメータ（例えば、負荷装置３の出力部の位置等）を状態ｘに含まれる状態変数として取得してもよい。更に、本実施例では、状態取得部４２は、積分器４１の出力であるｚも状態ｘに含まれる状態変数として取得する。そして、モデル予測制御部４３は、状態取得部４２が取得するプラント６に関する状態ｘと、自身の出力するプラント６への入力ｕとを用いて、モデル予測制御(Receding Horizon制御)を実行する。
【００２７】
詳細には、モデル予測制御部４３は、プラント６に関する状態ｘと、プラント６への入力ｕとの相関を、下記の状態方程式（式１）で画定した予測モデルを有している。なお、下記式１は、非線形の状態方程式である。
【数１】
2019109890.tif 000003
・・・（式１）
【００２８】
ここで、モデル予測制御部４３は、プラント６に関する状態ｘとプラント６への入力ｕとを入力として、所定の時間幅Ｔを有する予測区間において下記の式２に示す評価関数に従って、式１で表す予測モデルに基づいたモデル予測制御を行う。
【数２】
2019109890.tif 000004
・・・（式２）
モデル予測制御において算出された、予測区間の初期時刻ｔでの入力ｕの値が、その時刻ｔでの、指令ｒに対応するプラント６への入力uとして出力される。そして、モデル予測制御では、その制御タイミングにおいて、都度、所定の時間幅Ｔの予測区間が設定されるとともに、式２の評価関数に従って当該制御タイミングでのプラント６への入力ｕが算出され、プラント６へ送られることになる。式２のような形の評価関数Ｊの値を最良とする操作量を求める問題は、最適制御問題として広く知られている問題であり、その数値解
を算出するアルゴリズムが公知技術として開示されている。そのような技術として連続変形法が例示でき、例えば、公知の文献である「連続変形法とGMRES法を組み合わせた非線形Receding horizon制御の高速アルゴリズム（A continuation /GMRES method for fast computation of nonlinear receding horizon control）」{大塚敏之（T. Ohtsuka）, オートマティカ（ Automatica）, 第４０巻, ｐ563〜574, ２００４. }に詳細が開示されている。
【００２９】
連続変形法では、下記の式３に示す、入力Ｕ（ｔ）に関する連立１次方程式を解くことでモデル予測制御における入力Ｕ（ｔ）が算出される。具体的には、式３を解き、dU/dtを数値積分して、入力Ｕ（ｔ）を更新していく。このように連続変形法では、反復計算を行わないため、各時刻での入力Ｕ（ｔ）を算出するための計算負荷を可及的に抑制することができる。
【数３】
2019109890.tif 000005
・・・（式３）
ただし、Ｆ、Ｕ（ｔ）は、以下の式４で表される。
【数４】
2019109890.tif 000006
・・・（式４）
ただし、Ｈはハミルトニアン、λは共状態、μは拘束条件Ｃ＝０のラグランジュ乗数である。
【００３０】
ここで、本実施例では、図２に示すように、指令ｒとプラント６の出力ｙとの偏差ｅが積分器４１に入力され、更にその出力ｚが状態取得部４２を経てモデル予測制御部４３に入力されることで、上記のモデル予測制御が行われる。このように積分器４１を含む制御構造を踏まえ、モデル予測制御部４３が有する予測モデルは、例えば、下記の式５に示すように形成されている。なお、式５には、プラント６が有する所定の物理的特徴が反映されている。
【数５】
2019109890.tif 000007
・・・（式５）
【００３１】
式５における添え字の「１」は、サーボドライバ４で制御される制御軸の番号を表しており、本実施例では制御軸が１つであるため、式５に示す予測モデルにおける各変数の添え字は「１」とされる。そして、状態ｘにおける変数ｘ１は、プラント６の出力位置を表し、プラント６の出力ｙとしてフィードバックされるパラメータでもある。また、上記ｘｆ１は、その制御軸への位置指令ｒを表している。したがって、上記予測モデルにおける（ｘｆ１−ｘ１）は偏差ｅを表している。そして、上記予測モデルには、偏差ｅ（＝ｘｆ１−ｘ１）と、所定の積分ゲインＫｉ１との積で表される積分項が含まれていることが理解できる。このように予測モデル内に上記の積分項を含ませることで、サーボドライバ４において、積分器４１とは別の仮想的な積分器を並列して接続した制御構造を得ることができる。これにより、モデル予測制御を用いたサーボドライバ４によるサーボ制御において、その駆動源となる積分量を調整しやすくなり、従来のように外乱モデルの拡張やオブザーバゲインの設計等、容易ではない調整が必要な外乱オブザーバを利用することなく、オーバーシュートを抑制したサーボ制御の実現が容易となる。
【００３２】
更に、サーボドライバ４の制御構造には、ゲイン調整部４４が含まれている。ゲイン調整部４４は、式５に示す予測モデルに含まれている積分項の所定の積分ゲインＫｉ１を、偏差ｅに基づいて調整する機能部である。具体的には、図３に示すように、ゲイン調整部４４は、偏差ｅの大きさが小さくなるに従い、所定の積分ゲインＫｉ１の値が大きくなるように、該所定の積分ゲインＫｉ１を調整する。特に、図３においては、偏差eの大きさがｅ０以上となる場合には、所定の積分ゲインＫｉ１は０となり、偏差ｅの大きさがｅ０未満の範囲で所定の積分ゲインＫｉ１に０より大きく１以下の値が設定されることになる。また、偏差ｅの大きさが０に近づくほど、所定の積分ゲインＫｉ１の値が急峻に１に近づき、偏差ｅの大きさが０である場合には所定の積分ゲインＫｉ１は１となるように所定の積分ゲインＫｉ１の推移が設定されている。このように、ゲイン調整部４４により所定の積分ゲインＫｉ１が偏差ｅの大きさに基づいて調整可能とされることで、プラント６の出力ｙ（ｘ１）が指令ｘｆ１と比較的乖離している場合には、所定の積分ゲインＫｉ１の値は小さく調整され、以て、サーボ制御のための積分量が不要に溜まらないように調整されることになる。また、プラント６の出力ｙ（ｘ１）と指令ｘｆ１と乖離量が少なくなると、すなわち偏差ｅの大きさが小さくなると、ゲイン調整部４４により所定の積分ゲインＫｉ１の値が大きく調整されるため、サーボ制御における追従性を効果的に高めることができる。このように所定の積分ゲインＫｉ１の値を変動させることで、オーバーシュートの抑制とサーボ制御の追従性向上の両立を図ることができる。
【００３３】
なお、ゲイン調整部４４による所定の積分ゲインＫｉ１の調整について、図３に示す偏差ｅと所定の積分ゲインＫｉ１との相関に関するデータは、サーボドライバ４のメモリ内に格納されてもよく、その場合は、ゲイン調整部４４は当該データにアクセスすることで
上述の所定の積分ゲインＫｉ１の調整を行う。また、別法として、ゲイン調整部４４は、下記の式６に示す所定の積分ゲインＫｉ１を算出するための関数に従って、所定の積分ゲインＫｉ１を算出してもよい。
【数６】
2019109890.tif 000008
・・・（式６）
式６において、定数Ｃ１は、偏差ｅに対する所定の積分ゲインＫｉ１の値の算出感度を設定するための係数である。例えば、図４に示すように、定数Ｃ１の値が小さくなると、偏差ｅの大きさの変化に対する所定の積分ゲインＫｉ１の値の変化が緩やかになる。このことは、定数Ｃ１の値が小さくなるほど、偏差eのより広い範囲に対応して所定の積分ゲインＫｉ１が設定されることを意味する。プラント６の制御特性等を踏まえて定数Ｃ１は適宜設定することができ、例えば、プラント６がオーバーシュートが生じやすい場合には、その抑制のために積分量が溜まりにくくするために定数Ｃ１の値をより大きく設定するのが好ましい。また、式６に示す算出関数は、偏差ｅに基づき微分可能な関数であり、これにより所定の積分ゲインＫｉ１を含む上記予測モデルを利用したモデル予測制御を安定して行うことができる。
【００３４】
更に別法として、ゲイン調整部４４による所定の積分ゲインＫｉ１の調整について、偏差ｅと所定の積分ゲインＫｉ１の相関を図５に示すように設定してもよい。図５の上段（ａ）に示す相関に基づけば、所定の積分ゲインＫｉ１は偏差ｅの大きさが０のときに１となり、偏差ｅがｅ０に至るまで直線的に所定の積分ゲインＫｉ１は０まで減少していき、偏差ｅがｅ０以上となると所定の積分ゲインＫｉ１は０となるように調整される。また、図５の下段（ｂ）に示す相関に基づけば、所定の積分ゲインＫｉ１は偏差ｅの大きさが０のときに１となり、偏差ｅがｅ０に至るまで反比例的に所定の積分ゲインＫｉ１は０まで減少していき、偏差ｅがｅ０以上となると所定の積分ゲインＫｉ１は０となるように調整される。図５に示す両相関に示す所定の積分ゲインＫｉ１の推移では、所定の積分ゲインＫｉ１は偏差ｅが０の近傍にあるときに微分可能となっていない。このような場合には、モデル予測制御部４３による演算処理が不安定とならないように公知の対策、例えば、所定の積分ゲインＫｉ１の値を１とするとともにδH/δx＝０とする等、ハミルトニアンＨの偏微分値が急変しないための対策を施すのが好ましい。
【００３５】
＜変形例＞
ここで、図１に示す制御システムにおいて、サーボドライバ４の直接の制御対象はモータ２である。指令に追従させたいプラント６の出力が、モータ２の回転角ではなく、モータ２で駆動される負荷装置３の出力部の位置である場合には、モータ２の回転軸に関する座標系と、負荷装置３の出力部に関する座標系、すなわち作業座標系とは一致しない。このような場合、モデル予測制御部４３が有する予測モデルを上記作業座標系に基づいて定義することで、プラント６の出力のサーボ制御のための調整、特に、予測モデルに含まれる所定の積分ゲインの調整を直感的に行えることが好ましい。
【００３６】
例えば、図６に示すように、モータ２の回転駆動により棒状の負荷装置３が回転駆動され、その先端の横軸方向の位置がプラント６の出力とされる場合、負荷装置３に関する運動方程式は、以下の式７のように表すことができる。なお、この負荷装置３の先端位置が状態ｘに含まれる状態変数としてモデル予測制御部４３にフィードバックされるものとする。本変形例では、この先端位置を便宜上、「ｘ１」で表す。
【数７】
2019109890.tif 000009
・・・（式７）
ただし、Ｕｑは、負荷装置３を回転駆動するための駆動トルクである。そして、以下の式８に、モータ２の回転角θと負荷装置３の先端位置ｘ１との相関を示す。
【数８】
2019109890.tif 000010
・・・（式８）
ただし、Ｊは、ヤコビ行列を表す。なお、図６に示すケースでは、ヤコビ行列は、以下の式９で表される。
【数９】
2019109890.tif 000011
・・・（式９）
そして、式７〜式９を踏まえると、下記の式１０が得られる。
【数１０】
2019109890.tif 000012
・・・（式１０）
以上より、式１０及び偏差と所定の積分ゲインとの積で表される上記の積分項を考慮して、本変形例での予測モデルは、以下の式１１のように表すことができる。
【数１１】
2019109890.tif 000013
・・・（式１１）
ただし、Ｋｒは、式６における定数Ｃ１に相当する定数である。
【００３７】
＜実施例２＞
図１に示す制御システムではプラント６に１つの制御軸が含まれているが、更に他の制御軸を加えサーボドライバ４が複数の制御軸を含むプラント６をサーボ制御の対象とするように構成されてもよい。このような場合、モデル予測制御部４３が有する予測モデルは、下記の式１２で表すことができる。なお、式１２で表される予測モデルは、プラント６に２つの制御軸が含まれる場合に対応する。
【数１２】
2019109890.tif 000014
・・・（式１２）
式１２における添え字は、式５と同じように、制御軸に対応するものである。状態ｘにおける変数ｘ１、ｘ２は、プラント６の第１の制御軸と第２の制御軸の出力位置を表し、プラント６の出力ｙとしてフィードバックされるパラメータでもある。また、上記ｘｆ１、ｘｆ２は、その制御軸への位置指令ｒを表している。したがって、上記予測モデルにおける（ｘｆ１−ｘ１）、（ｘｆ２−ｘ２）は各制御軸の偏差ｅを表している。そして、上記予測モデルには、各制御軸に応じた、偏差ｅと所定の積分ゲインＫｉ１、Ｋｉ２との積で表される積分項が含まれていることが理解できる。このように予測モデル内に上記の積分項を含ませることで、サーボドライバ４において、各制御軸に応じて、積分器４１とは
別の仮想的な積分器を並列して接続した制御構造を得ることができる。これにより、モデル予測制御を用いたサーボドライバ４によるサーボ制御において、その駆動源となる積分量を調整しやすくなり、オーバーシュートを抑制したサーボ制御の実現が容易となる。
【００３８】
このように構成されるサーボドライバ４によって、２つの制御軸で構成されるロボットアームを９０度に折り曲げる動作をサーボ制御した場合の、アームの軌跡をトレースした図を図７に示す。図７の上段（ａ）は、従来技術によるロボットアームの折り曲げ動作制御の結果を表しており、従来技術においてモデル予測制御を行う場合、一般には、オーバーシュート等の過渡応答の劣化を回避するためにサーボドライバはレギュレータ構成とされる。そのため、持続的な外乱が生じるとその影響を受けて定常偏差が生じやすい。一方で、図７の下段（ｂ）に示す本実施例のサーボドライバ４によるサーボ制御では、定常偏差を効果的に解消し、オーバーシュートを発生させることなく指令に対する追従性の向上が図られている。
【００３９】
ここで、サーボドライバ４が複数の制御軸のサーボ制御を行う場合、各制御軸に対応するモデル予測制御においてゲイン調整部４４により調整される上記の所定の積分ゲインは、各制御軸での指令に対する追従性を考慮して調整されるのが好ましい。このように制御軸間での追従性のバランスを考慮することで、プラント６全体の出力を好適なものとすることができる。そこで、以下に、制御軸間での追従性のバランスを考慮した所定の積分ゲインの調整手法について、以下の２つの形態を示す。なお、本実施例では、サーボドライバ４のサーボ制御の対象となる制御軸数は２つとする。
【００４０】
＜第１のゲイン調整形態＞
モデル予測制御部４３が有する予測モデルは、式１２に示す通りとすると、第１の制御軸に対応する所定の積分ゲインＫｉ１と、第２の制御軸に対応する所定の積分ゲインＫｉ２は、以下の式１３に基づいて算出される。
【数１３】
2019109890.tif 000015
・・・（式１３）
【００４１】
式１３に従った、所定の積分ゲインＫｉ１、Ｋｉ２の調整は、各制御軸に対応する偏差ｅの大きさに応じた調整であることを意味し、具体的には、一方の制御軸における偏差が他方の制御軸における偏差に対して相対的に大きくなると、その相対的な比率に応じて所定の積分ゲインＫｉ１、Ｋｉ２の値が決定される。すなわち、相対的な偏差の大きさが大きくなるほど、対応する所定の積分ゲインの値が大きくなるように調整される。このことは、偏差が大きい制御軸ほど所定の積分ゲインが大きく設定され、それにより積分量を溜めることで指令に対する追従性が高められることを意味する。この結果、最終的に制御軸間の指令に対する追従性を揃えることが可能となる。
【００４２】
また、別法として、第１の制御軸に対応する所定の積分ゲインＫｉ１と、第２の制御軸に対応する所定の積分ゲインＫｉ２を、以下の式１４に基づいて算出することもできる。
【数１４】
2019109890.tif 000016
・・・（式１４）
なお、式１４におけるｘｓ１、ｘｓ２は、各制御軸の目標位置であり、式１４は、各制御軸に対応する目標との偏差割合の大きさに応じて、所定の積分ゲインＫｉ１、Ｋｉ２の調整を行うための算出式である。したがって、式１４に従うことでも、各制御軸において、相対的な偏差の大きさが大きくなるほど、対応する所定の積分ゲインの値が大きくなるように調整されることになり、以て、最終的に制御軸間の指令に対する追従性を揃えることが可能となる。
【００４３】
＜第２のゲイン調整形態＞
モデル予測制御部４３が有する予測モデルは、式１２に示す通りとする。第２のゲイン調整形態では、プラント６において、第１の制御軸と第２の制御軸に基づいた所定の作業座標系が設定される。そして、その作業座標系における各制御軸の偏差に基づいて、その各制御軸に対応する所定の積分ゲインＫｉ１、Ｋｉ２の調整が行われる。具体的には、第１の制御軸に対応する所定の積分ゲインＫｉ１と、第２の制御軸に対応する所定の積分ゲインＫｉ２は、以下の式１５に基づいて算出される。
【数１５】
2019109890.tif 000017
・・・（式１５）
ただし、Ｅｗｒｋは、作業座標系における偏差を表し、Ｅｒａｔｉｏ１、Ｅｒａｔｉｏ２は、各制御軸の相対的な誤差率を表し、Ｋｒは、式６における定数Ｃ１に相当する定数である。式１５における所定の積分ゲインの算出自体は、上記の式６に倣うものである。
【００４４】
図８に、第１の制御軸の出力を横軸とし第２の制御軸の出力を縦軸として設定される作業座標系において、指令の軌跡を線Ｌ１、Ｌ３で表し、サーボドライバ４によるサーボ制御の結果のプラント６の出力の軌跡を線Ｌ２、Ｌ４で表している。なお、図８の上段（ａ）は、式１５に従って算出された各制御軸の所定の積分ゲインを用いてサーボ制御を行った場合に対応し、下段（ｂ）は、各制御軸の積分ゲインの算出に当たり、作業座標系における各制御軸の偏差を考慮せずに下記の式１６に従って算出された各制御軸の所定の積分ゲインを用いてサーボ制御を行った場合に対応する。上段（ａ）の線Ｌ１と下段（ｂ）の線Ｌ３は、同一の軌跡となっている。
【数１６】
2019109890.tif 000018
・・・（式１６）
【００４５】
図８（ａ）に示すように、作業座標系における各制御軸の偏差の相関を考慮して、各制御軸の所定の積分ゲインを調整することで、図８（ｂ）に示す場合と比べて、作業座標系におけるプラント６の出力（出力位置）を指令に対して好適に追従させることができる。その結果、図８（ａ）に示す場合の方が、作業座標系におけるプラント６の出力と指令とが比較的早期に一致することとなる。
【００４６】
＜実施例３＞
サーボドライバ４が有するゲイン調整部４４による所定の積分ゲインＫｉの調整の別の態様について説明する。本実施例においても上記実施例と同じように、ゲイン調整部４４は、偏差ｅの大きさが小さくなるに従い所定の積分ゲインＫｉの値が大きくなるように、該所定の積分ゲインＫｉを調整するが、その所定の積分ゲインＫｉを用いた積分処理は、所定の条件が満たされる場合に限って行われる。
【００４７】
本実施例において、上記の所定の条件は、偏差ｅの値が零を含む所定の第１範囲内に属するときは、ゲイン調整部４４による所定の積分ゲインＫｉの調整を行い、その調整された所定の積分ゲインＫｉに従って積分処理が行われる。一方で、偏差ｅの値が所定の第１範囲に属さないときは所定の積分ゲインＫｉを零とすることで、積分処理が実質的に行われないことになる。一例として、プラント６の出力が２次元である場合、所定の第１範囲は下に凸な関数ｆ（ｘ）で定義できる。このような場合、上述した所定の積分ゲインＫｉは、下記のように設定することで、本実施例におけるゲイン調整部４４による所定の積分ゲインＫｉの調整が実現される。
Ｋｉ＝α（｜ｆ（ｘ）｜−ｆ（ｘ））
なお、αは、所定の係数である。
このように所定の積分ゲインＫｉを関数で表すことで、上述した連続変形法によるモデル予測制御でのプログラム処理において、条件判断処理を行わずに所定の積分ゲインＫｉの数値を調整する（例えば、Ｋｉ＝０とする）ことが可能になり、上記式３及び式４に従ったモデル予測制御のためのプログラム生成が簡便となる。
また、所定の第１範囲は上に凸な関数ｆ（ｘ）で定義することもできる。このような場合には、所定の積分ゲインＫｉは下記のように設定することができる。
Ｋｉ＝α（｜ｆ（ｘ）｜＋ｆ（ｘ））
【００４８】
ここで、プラント６の出力が２次元の場合、所定の第１範囲を、プラント６の出力の目標位置を中心とした所定半径（ｒ）の円内とすると、所定の積分ゲインＫｉは、一例として下記の式１７に従って設定することができる。
【数１７】
2019109890.tif 000019
・・・（式１７）
式１７に従うことで、プラント６の出力（ｘ１，ｘ２）が目標位置（ｘｆ１，ｘｆ２）を中心とした所定半径ｒの円内にあるときに、すなわち偏差ｅが所定の第１範囲内にあるときに、所定の積分ゲインＫｉが設定される一方で、プラント６の出力が当該円の外にあるときに、すなわち偏差ｅが所定の第１範囲の外にあるときに、所定の積分ゲインＫｉが零となる。この結果、モデル予測制御における積分処理が、限定された領域で行われることになる。
【００４９】
そして、モデル予測制御部４３が有する予測モデルが、上記の式１２で表される場合のプラント６の出力の軌跡を図９の上段（ａ）に示す。当該図では、積分処理が行われる所
定の第１範囲として、目標位置を中心とした所定半径ｒの円が示されている。また、比較例として、積分処理が行われる領域が限定されずに全領域で積分処理が行われる形態（全領域において所定の積分ゲインＫｉ＝１とされる形態）でのプラント６の出力の軌跡を図９の下段（ｂ）に示す。両者を比較することで明らかなように、モデル予測制御における積分処理が行われる領域が限定されない場合、目標位置に到達する前にそれまでに溜まった偏差の影響を受けて比較的大きなオーバーシュートが発生している。一方で、モデル予測制御における積分処理が行われる領域が所定の第１範囲内に限られることで、過度な偏差の蓄積を抑制し、以てオーバーシュートの発生を好適に回避できている。
【００５０】
＜変形例＞
指令ｒに追従するように制御されるプラント６の周囲に障害物が存在していると、プラント６には当該障害物との衝突を回避することが求められる。なお、当該障害物が移動しているか否かは問わない。そこでプラント６と障害物との衝突を回避させるために、プラント６の周囲において障害物が存在し得る確率を表す確率ポテンシャル場を算出し、それをモデル予測制御に反映させる。当該確率ポテンシャル場の算出そのものは公知の技術であるから、例えば特開２００３−２４１８３６号に記載の技術を利用して算出が可能である。具体的には、下記の式１８に従って、上記の確率ポテンシャル場を、モデル予測制御におけるステージコスト（上記式２の右辺の第２項がステージコストである）に反映させる。
【数１８】
2019109890.tif 000020
・・・（式１８）
なお、上記ＯＤは、障害物の位置（ｘｄ１，ｘｄ２）とプラント６の位置（ｘ１，ｘ２）との間の距離を表し、ＯＰは障害物による確率ポテンシャルを表し、Ｌはステージコストを表している。ステージコストＬにおいて、Ｑ及びＲは、それぞれステージコストにおける状態量の重みを表す係数（重み係数）、制御入力の重みを表す係数（重み係数）である。
【００５１】
そして、モデル予測制御部４３が有する予測モデルが上記の式１２で表され、且つモデル予測制御におけるステージコストが式１８で算出される場合のプラント６の出力の軌跡を図１０の上段（ａ）に示す。当該図では、積分処理が行われる所定の第１範囲として、目標位置を中心とした所定半径ｒの円が示されている。また、比較例として、積分処理が行われる領域が限定されずに全領域で積分処理が行われる形態（全領域において所定の積分ゲインＫｉ＝１とされる形態）でのプラント６の出力の軌跡を図１０の下段（ｂ）に示す。両者を比較することで明らかなように、モデル予測制御における積分処理が行われる領域が限定されない場合、障害物から受ける斥力や目標位置に到達するまでに溜まった偏差の影響を受けて比較的大きなオーバーシュートが発生している。一方で、モデル予測制御における積分処理が行われる領域が所定の第１範囲内に限られることで、オーバーシュートを可及的に小さく抑えることができる。
【００５２】
＜実施例４＞
本実施例では、サーボドライバ４における制御構造の別形態について、図１１に基づいて説明する。図１１に示す制御構造が図２に示す制御構造と相違する点は、ゲイン調整部４４が含まれない点と、偏差ｅがＨＰＦ処理部４８を通って積分器４１に入力される点である。また、積分器４１による積分処理は、所定の積分ゲインＫｉは１とされる。
【００５３】
そして、ＨＰＦ処理部４８は、偏差ｅに対してハイパスフィルタリング処理を行う。当該ハイパスフィルタリング処理では、偏差ｅの値が零を含む所定の第２範囲内に属するときは、そのカットオフ周波数は零とされ実質的に偏差ｅがそのまま積分器４１に入力される。一方で、偏差ｅの値が所定の第２範囲の外にあるときは、そのカットオフ周波数が偏差ｅに応じて調整される。具体的には、偏差ｅの値が所定の第２範囲の外にある場合には、偏差ｅの大きさが該所定の第２範囲の境界に近づく値であるほどカットオフ周波数が低くされ、境界到達時には零とされる。
【００５４】
このように構成されるＨＰＦ処理部の伝達関数は、下記の式１９で表される。
【数１９】
2019109890.tif 000021
・・・（式１９）
なお、上記のＫｊは、上記のハイパスフィルタリング処理に関連付けられた所定のフィルタリングゲインである。そして、この伝達関数に基づいて、下記の式２０が導出される。
【数２０】
2019109890.tif 000022
・・・（式２０）
そして、式２０を反映させて、２次元の出力（２つの制御軸）を有するプラント６に関する、モデル予測制御部４３が有する予測モデルは、下記の式２１で表すことができる。
【数２１】
2019109890.tif 000023
・・・（式２１）
なお、上記のｘ５は、第１の制御軸における積分器４１の出力であり、上記のｘ６は、第２の制御軸における積分器４１の出力であり、式２１における（ｘｆ１−ｘ１）−Ｋｊ１・ｘ５と、（ｘｆ２−ｘ２）−Ｋｊ２・ｘ６が、第１の制御軸と第２の制御軸のそれぞれに対応するＨＰＦ処理項に相当する。
【００５５】
ここで、プラント６の出力が２次元である場合、所定の第２範囲は下に凸な関数ｆ（ｘ）で定義できる。このような場合、上述した所定のフィルタリングゲインＫjは、下記のように設定することで、上述のハイパスフィルタリング処理が実現される。
Ｋj＝α（｜ｆ（ｘ）｜＋ｆ（ｘ））
なお、αは、所定の係数である。
このように所定のハイパスフィルタリングゲインＫjを関数で表すことで、上述した連続変形法によるモデル予測制御でのプログラム処理において、条件判断処理を行わずに所定の積分ゲインＫｉの数値を調整する（例えば、Ｋｉ＝０とする）ことが可能になり、上記式３及び式４に従ったモデル予測制御のためのプログラム生成が簡便となる。
また、所定の第２範囲は上に凸な関数ｆ（ｘ）で定義することもできる。このような場合には、所定のフィルタリングゲインＫjは下記のように設定することができる。
Ｋj＝α（｜ｆ（ｘ）｜−ｆ（ｘ））
【００５６】
ここで、プラント６の出力が２次元の場合、所定の第２範囲を、プラント６の出力の目標位置を中心とした所定半径（ｒ）の円内とすると、所定のフィルタリングゲインＫjは、一例として下記の式２２に従って設定することができる。
【数２２】
2019109890.tif 000024
・・・（式２２）
式２２に従うことで、プラント６の出力（ｘ１，ｘ２）が目標位置（ｘｆ１，ｘｆ２）を中心とした所定半径ｒの円内にあるときに、すなわち偏差ｅが所定の第２範囲内にあるときに、所定のフィルタリングゲインＫjが零とされた上で積分器４１による積分処理が行われる。一方で、プラント６の出力が当該円の外にあるときに、すなわち偏差ｅが所定の第２範囲の外にあるときに、所定のフィルタリングゲインＫjは、上述のハイパスフィルタリング処理を反映するように調整される。そして、当該ハイパスフィルタリング処理が偏差ｅに施されることで、相対的に古い偏差ｅの影響を緩和させることになる。
【００５７】
以上より、本実施例によれば、偏差ｅが比較的大きくなった場合に偏差の積分量が溜まることに起因するオーバーシュートが抑制され得る。また、ハイパスフィルタリング処理に関連付けられたフィルタリングゲインＫjが、上記のようにハイパスフィルタリング処理におけるカットオフ周波数の設定を介して、積分器４１による積分処理が行われる所定の第２範囲との距離に関連付けられることで、偏差ｅの値が当該領域から離れるほど積分量の溜まりを抑制でき、オーバーシュートの抑制に寄与し得る。なお、サーボドライバ４の制御構造において、積分器４１やＨＰＦ処理部４８以外の制御要素（例えば、所定のゲイン等）が含まれていても構わない。
【００５８】
そして、モデル予測制御部４３が有する予測モデルが、上記の式２１で表される場合のプラント６の出力の軌跡を図１２の上段（ａ）に示す。当該図では、積分器４１による積分処理（所定の積分ゲインＫｉ＝１）が行われる所定の第２範囲として、目標位置を中心とした所定半径ｒの円が「完全積分領域」と示されている。また、比較例として、積分器４１による積分処理（所定の積分ゲインＫｉ＝１）が行われる領域は図１２（ａ）と同一であるが制御構造に上記のＨＰＦ処理部４８が含まれていない形態でのプラント６の出力の軌跡を図１２の下段（ｂ）に示す。なお、これらの軌跡の算出に当たっては、式１８で示したステージコストを利用して障害物との衝突を回避させながら目標位置へのサーボ制御が行われている。両者を比較することで明らかなように、ＨＰＦ処理部４８が含まれていない場合、障害物からの斥力の影響を受けて目標位置に到達できていない。一方で、ＨＰＦ処理部４８が含まれることで、オーバーシュートを抑制しながら目標位置への到達を実現している。
【００５９】
＜実施例５＞
上記実施例では、サーボドライバ４に形成されたモデル予測制御部４３を含む制御構造について説明したが、本実施例では、モデル予測制御部４３に相当するモデル予測制御部５３を含んで標準ＰＬＣ５に形成される制御構造について、図１３に基づいて説明する。標準ＰＬＣ５は、指令生成部５０、積分器５１、状態取得部５２、モデル予測制御部５３、ゲイン調整部５４、プラントモデル５６を有している。積分器５１、状態取得部５２、モデル予測制御部５３、ゲイン調整部５４については、それぞれ図２に示す積分器４１、状態取得部４２、モデル予測制御部４３、ゲイン調整部４４に実質的に相当するものであるから、その詳細な説明は省略する。
【００６０】
指令生成部５０は、プラント６の出力を指示する指令ｒを生成する。本実施例では、この指令ｒは、標準ＰＬＣ５から直接サーボドライバ４に供給されるのではなく、モデル予測制御部５３によるモデル予測制御に供されることになる。また、プラントモデル５６は、プラント６をモデル化したプラントモデル（本願の実対象モデルに相当する）を有し、そのプラントモデルを用いてプラント６の出力をシミュレーションする。そのシミュレー
ション結果は、プラントモデル５６の出力ｙとされる。なお、プラントモデル５６の出力ｙは、フィードバック系５５によって積分器５１の入力側にフィードバックされる。
【００６１】
ここで、本実施例では、指令生成部５０によって生成された指令ｒと、フィードバック系５５によってフィードバックされたプラントモデル５６の出力ｙとの偏差ｅ（ｅ＝ｒ−ｙ）が、積分器５１に入力される。そして、その積分器５１の出力ｚは、状態取得部５２を経てモデル予測制御部５３に入力される。
【００６２】
ここで、状態取得部５２は、モデル予測制御部５３によって行われるモデル予測制御に供される、プラント６をモデル化した上記プラントモデルに関する状態ｘに含まれる状態変数の値ｘを取得する。例えば、プラントモデル５６によるシミュレーション処理において得られる所定のパラメータの値を、状態ｘに含まれる状態変数として取得することができる。更に、本実施例では、状態取得部５２は、積分器５１の出力であるｚも状態ｘに含まれる状態変数として取得する。そして、モデル予測制御部５３は、状態取得部５２が取得するプラントモデルに関する状態ｘと、自身の出力するプラントモデル５６への入力ｕとを用いて、モデル予測制御を実行する。モデル予測制御部５３によるモデル予測制御については、実施例１及び実施例２で示したモデル予測制御部４３によるモデル予測制御と同じように、そこで利用される予測モデルに、上記偏差ｅと、所定の積分ゲインとの積で表される積分項が含まれている。
【００６３】
このように形成された制御構造によって、図１３に示す標準ＰＬＣ５は、プラントモデル５６のシミュレーション結果である出力ｙを、プラント６の出力がオーバーシュート状態となるのを抑制しつつ指令ｒに好適に追従させる指令としてサーボドライバ４側に供給することができる。すなわち、上記標準ＰＬＣ５は、実際の制御対象であるプラント６の制御量は直接フィードバックされてはいないが、指令ｒによる目標軌道が時々刻々変化していく場合でも、モデル予測制御を行いながらプラント６の出力における定常偏差の発生を抑制することを可能とする。
【符号の説明】
【００６４】
１・・・・ネットワーク
２・・・・モータ
３・・・・負荷装置
４・・・・サーボドライバ
５・・・・標準ＰＬＣ
６・・・・プラント
【図１】
2019109890.tif 000025
【図２】
2019109890.tif 000026
【図３】
2019109890.tif 000027
【図４】
2019109890.tif 000028
【図５】
2019109890.tif 000029
【図６】
2019109890.tif 000030
【図７】
2019109890.tif 000031
【図８】
2019109890.tif 000032
【図９】
2019109890.tif 000033
【図１０】
2019109890.tif 000034
【図１１】
2019109890.tif 000035
【図１２】
2019109890.tif 000036
【図１３】
2019109890.tif 000037