JP2023028327A - 制御装置、制御方法、及びプログラム - Google Patents

制御装置、制御方法、及びプログラム Download PDF

Info

Publication number
JP2023028327A
JP2023028327A JP2021133960A JP2021133960A JP2023028327A JP 2023028327 A JP2023028327 A JP 2023028327A JP 2021133960 A JP2021133960 A JP 2021133960A JP 2021133960 A JP2021133960 A JP 2021133960A JP 2023028327 A JP2023028327 A JP 2023028327A
Authority
JP
Japan
Prior art keywords
control
manipulated variable
calculation
model
target deviation
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
JP2021133960A
Other languages
English (en)
Other versions
JP7014330B1 (ja
Inventor
吉雄 丹下
Yoshio Tange
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP2021133960A priority Critical patent/JP7014330B1/ja
Application granted granted Critical
Publication of JP7014330B1 publication Critical patent/JP7014330B1/ja
Publication of JP2023028327A publication Critical patent/JP2023028327A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】エッジデバイス上でモデル予測制御を実現しつつ、モデル予測制御に必要な制御パラメータも自動調整すること。【解決手段】制御対象の制御量を目標値に追従させる制御装置であって、プラント応答関数のモデルパラメータの推定値を算出するモデルパラメータ推定部と、前記プラント応答関数と、現在に至るまでの過去の操作量の変化量とに基づいて、先読み長経過後における制御量の予測値により目標偏差を補正した補正目標偏差を算出する補正目標偏差算出部と、操作量の変化量と、現在の操作量とを加算して新たな操作量を算出する操作量算出部と、を有し、操作量算出部による前記新たな操作量の算出とを所定の制御周期毎に逐次的に繰り返すと共に、前記モデルパラメータ推定部による前記モデルパラメータの推定値の算出と、前記制御パラメータ算出部による前記制御パラメータの算出とを所定の調整周期毎に逐次的に繰り返す。【選択図】図1

Description

本発明は、制御装置、制御方法、及びプログラムに関する。
温調制御装置やPLC(Programmable Logic Controller)、DCS(Distributed Control System)等の制御装置、パーソナルコンピュータや組み込み制御機器上で実装される制御装置等が産業上広く利用されている。
また、制御対象の制御量を目標値に追従させることを目的とする制御方式として、PID(Proportional-Integral-Differential)制御、モデル予測制御、内部モデル制御、LQG(Linear-Quadratic-Gaussian)制御、H2制御、H∞制御等の各種の制御方式が知られている。
モデル予測制御は、制御対象の状態空間モデルや将来の時間応答モデルを用いた最適化計算を逐次的に行うことで望ましい応答を得る方式であり、産業界で広く用いられている(例えば、非特許文献1)。例えば、オンラインで数値最適化アルゴリズムを実行する標準的なモデル予測制御の産業応用として、空調システムの制御等への応用が知られている(例えば、特許文献1)。
また、現在に至るまでの過去の操作量の変化に応じた制御量の予測値と、目標値との差である補正目標偏差に基づいて新たな操作量を決定する制御装置が提案されている(例えば、特許文献2、特許文献3)。目標偏差の現在値と、操作量の変化量との関係を示す制御用論理式が成立する領域をグラフ上に表示する設計支援装置も提案されている(例えば、特許文献4)。
また、線形予測モデルに対してパラメータ同定を行う手法として、逐次最小2乗法、すなわち、RLS(Recursive Least Squares)法やカルマンフィルタ法等が知られている(例えば、非特許文献2、非特許文献3)。
更に、セルフチューニング方式によりPID制御のパラメータを決定する技術が知られている(例えば、非特許文献4、非特許文献5)。
特開2015-108499号公報 国際公開第2016/092872号 特開2020-21411号公報 国際公開第2015/060149号
ヤン M. マチエヨフスキー,「モデル予測制御 制約のもとでの最適制御」,東京電機大学出版局,2005 足立 修一,「MATLABによる制御のためのシステム同定」,東京電機大学出版局,1996 足立 修一,「MATLABによる制御のための上級システム同定」,東京電機大学出版局,2004 山本 透,藤井 憲三,「実用化に向けたセルフチューニング制御系の設計」,電気学会論文誌D,123巻9号(2003) 山本 透,「セルフチューニング方式の新展開 一般化最小分散制御とPID制御」,計測と制御,40巻10号(2001)
非特許文献4、非特許文献5に記載されている技術は、比較的計算資源が乏しいエッジデバイス(例えば、PLC等の制御装置)上でパラメータのチューニングを実現し得る技術として有望であるが、以下のような課題がある。
(1)PID制御では3つのパラメータしか自由度がないため理想的な応答にマッチングできない場合がある。
(2)一般化最小分散制御を用いる場合、予めプラント時定数を十分考慮した参照モデル関数を所与とする必要がある。
(3)PID制御は微分信号を用いるためノイズに弱い。
(4)PID制御ではむだ時間が長いプラントや逆応答を有するプラントの制御を十分に実現することができない。
一方で、モデル予測制御は、プラント応答モデルに比較的自由度が高く、PID制御が苦手とするむだ時間の長いプラントや逆応答を有するプラントにも対応し得る。
しかしながら、モデル予測制御の制御パラメータ(例えば、制御ゲイン等)を決定するためには、モデルに基づくシミュレーションやデータ解析といった事前のオフライン調整作業(この作業はエンジニアリングとも呼ばれる。)が必要である。しかも、このエンジニアリングは、一般に、それに関する技能を有する者が専用のソフトウェアを用いて行う必要がある。
加えて、モデル予測制御はモデルに基づく制御方式であるため制御対象のモデルを予め同定する必要があり、このモデル同定と上記のエンジニアリングとをエッジデバイス上で実行することは困難である。
本発明の一実施形態は、上記の点に鑑みてなされたもので、エッジデバイス上でモデル予測制御を実現しつつ、モデル予測制御に必要な制御パラメータも自動調整することを目的とする。
上記目的を達成するため、一実施形態に係る制御装置は、制御対象に対する操作量を出力し、前記制御対象の制御量を目標値に追従させる制御装置であって、前記制御量と、前記操作量とに基づいて、前記制御対象のプラント応答モデルを表す関数であって、かつ、モデルパラメータが含まれる関数であるプラント応答関数の前記モデルパラメータの推定値を算出するモデルパラメータ推定部と、前記プラント応答関数に基づいて、制御ゲインと先読み長とを含む制御パラメータを算出する制御パラメータ算出部と、前記目標値と、現在の制御量との差である目標偏差を算出する目標偏差算出部と、前記プラント応答関数と、現在に至るまでの過去の前記操作量の変化量とに基づいて、前記先読み長経過後における前記制御量の予測値により前記目標偏差を補正した補正目標偏差を算出する補正目標偏差算出部と、前記補正目標偏差に対して前記制御ゲインを乗じて前記操作量の変化量を算出する操作変化量算出部と、前記操作量の変化量と、前記現在の操作量とを加算して新たな操作量を算出する操作量算出部と、を有し、前記目標偏差算出部による前記目標偏差の算出と、前記補正目標偏差算出部による前記補正目標偏差の算出と、前記操作量算出部による前記新たな操作量の算出とを所定の制御周期毎に逐次的に繰り返すと共に、前記モデルパラメータ推定部による前記モデルパラメータの推定値の算出と、前記制御パラメータ算出部による前記制御パラメータの算出とを所定の調整周期毎に逐次的に繰り返す。
エッジデバイス上でモデル予測制御を実現しつつ、モデル予測制御に必要な制御パラメータも自動調整することができる。
本実施形態に係る制御装置の全体構成の一例を示す図である。 プラント応答関数の動作の一例を説明するための図である。 プラント応答関数の計算処理の一例を説明するためのフローチャートである。 モデルパラメータの推定処理の一例を説明するためのフローチャートである。 先読み応答補正部の動作の一例を説明するための図である。 操作変化量計算の動作の一例を説明するための図である。 制御パラメータの計算処理の一例を説明するためのフローチャートである。 先読み長の計算概要の一例を説明するための図である。 先読み長の計算詳細の一例を説明するためのフローチャートである。 リミットサイクル制御器の動作の一例を説明するための図(その1)である。 リミットサイクル制御器の動作の一例を説明するための図(その2)である。 本実施形態に係る制御装置のハードウェア構成の一例を しめす図である。 実施例を説明するための図である。 実施例におけるモデルパラメータ推定結果を説明するための図(その1)である。 実施例における制御パラメータ計算結果を説明するための図(その1)である。 実施例における制御応答及び操作量を説明するための図(その1)である。 実施例におけるモデルパラメータ推定結果を説明するための図(その2)である。 実施例における制御パラメータ計算結果を説明するための図(その2)である。 実施例における制御応答及び操作量を説明するための図(その2)である。
以下、本発明の一実施形態について、図面を参照しながら詳細に説明する。以降では、PID制御が苦手とするむだ時間の長いプラントや逆応答を有するプラントを制御対象として、その目標値が与えられた場合に、モデル予測制御により制御量を目標値に追従させるための操作量を計算すると共に、モデル更新のためのモデルパラメータの推定とモデル予測制御に必要な制御パラメータの計算とを行う制御装置10について説明する。なお、本実施形態に係る制御装置10は、例えば、PC(パーソナルコンピュータ)等と比較して計算資源が乏しいエッジデバイス(PLCやDCS等)であるものとする。
本実施形態に係る制御装置10は、任意の目標値rや制御対象プラント20の状態等を示す制御量y、制御対象プラント20のプラント応答モデル等に基づいて、当該制御対象プラント20に対する操作量uを計算すると共に、モデルパラメータの推定と制御パラメータの計算とを行う。そして、制御装置10は、この操作量uに応じた制御対象プラント20の制御量yを計測し、目標値rや制御量y、プラント応答モデル等に基づいて次の操作量uを計算すると共に、新たなモデルパラメータの推定と新たな制御パラメータの計算とを行う。このように、本実施形態に係る制御装置10は、制御量yを目標値rに追従させるための操作量uの計算と、プラント応答モデルのモデルパラメータの推定と、制御パラメータの計算とをオンライン実行中(つまり、制御対象プラント20の制御中)に繰り返し実行する。すなわち、本実施形態に係る制御装置10は、毎回のオンライン最適化計算を必要とせずにモデル予測制御を実現すると共に、それに必要な制御パラメータも自動で調整する。
これにより、本実施形態に係る制御装置10は、比較的乏しい計算資源でもモデル予測制御による高い制御性能を実現しつつ、制御パラメータの調整に必要な作業を不要とすることができる。また、制御パラメータの調整作業(例えば、オフラインにおけるデータ解析やシミュレーション等のモデル予測制御に関するエンジニアリング作業)が不要となることで、それに要する時間・コストを削減することができる。
また、制御対象プラント20の運用開始後は、プラント特性の季節変動や経年劣化等の継時的変化に追従したモデルパラメータを推定しつつ制御パラメータも自動で調整されるため、制御性能を安定して維持することができる。
更に、事前に調整された参照モデル関数が不要で、PID制御が苦手とするプラント(むだ時間の長いプラントや逆応答を有するプラント)にも対応し得るモデル予測制御を実現することができる。
なお、制御量yとしては、例えば、制御対象プラント20の温度、目標値rとしては、例えば、設定温度等が挙げられる。ただし、制御量y及び目標値rは、温度及び設定温度に限られず、制御対象プラント20における任意の制御量及び当該制御量の目標となる目標値を用いることができる。
<制御装置10の全体構成>
まず、本実施形態に係る制御装置10の全体構成について、図1を参照しながら説明する。図1は、本実施形態に係る制御装置10の全体構成の一例を示す図である。
図1に示すように、本実施形態に係る制御装置10は、モデルパラメータ推定部101と、計測部102と、差分器103と、操作量更新部104と、制御パラメータ計算部105と、第1のタイマ106と、第2のタイマ107と、リミットサイクル制御器108と、切替器109とを有する。これらは、例えば、制御装置10にインストールされた1以上のプログラムが、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)等のプロセッサに実行させる処理により実現される。
計測部102は、制御周期T毎に、制御対象プラント20の制御量yを計測(観測)する。そして、計測部102は、計測した制御量yの最新の値を、制御量現在値yとして出力する。なお、制御対象プラント20の制御量yは、操作量uと外乱vとに応じて決定される。外乱vとしては、例えば、制御量yが温度である場合には外気温の低下又は上昇等が挙げられる。また、上述したように、制御対象プラント20としては、むだ時間の長いプラントや逆応答を有するプラントを想定する。
また、計測部102は、操作量更新部104から出力された操作量uを取得(観測)し、取得した操作量uの最新の値を、操作量現在値uとして出力する。
差分器103は、目標値rと、制御量現在値yとの差(偏差)を目標偏差eとして出力する。時刻tにおける目標偏差e(t)は、e(t)=r(t)-y(t)で計算される。なお、本実施形態では、目標値は一定、すなわち、r(t)=定数であるとする。
操作量更新部104は、制御周期T毎に、制御対象プラント20に対する操作量uを出力する。ここで、操作量更新部104には、先読み応答補正部111と、操作変化量計算部112と、加算器113とが含まれる。
先読み応答補正部111は、プラント応答関数{Sθ(t)}と、目標偏差e(t)と、過去の操作量uの変化量duの時系列データである操作変化量時系列{du(t)}と、先読み長Tとに基づいて、目標偏差e(t)を補正した補正目標偏差e(t)を計算する。
操作変化量計算部112は、補正目標偏差e(t)と制御ゲインkとに基づいて、操作変化量du(t)を計算する。操作変化量計算部112は、例えば、du(t-3T)、du(t-2T)、du(t-T)という順序で操作変化量du(t)を算出し、出力する。なお、操作変化量duは、制御周期T毎に操作量uが変化した量である。
加算器113は、計測部102から出力された操作量現在値uと、操作変化量計算部112から出力された操作変化量duとを加算して、新たな操作量uを算出する。そして、加算器113は、この新たな操作量uを制御対象プラント20に出力する。新たな操作量uは、u(t)=u+du(t)=u(t-T)+du(t)で算出される。
モデルパラメータ推定部101は、調整周期T毎に、制御量現在値y(t)と操作量現在値u(t)とを入力し、プラント応答関数{Sθ(t)}のモデルパラメータの推定値θestを算出し、出力する。プラント応答関数{Sθ(t)}とはモデルパラメータθを含む関数であり、制御対象プラント20のプラント応答モデルである。以降では、プラント応答関数{Sθ(t)}に設定されているモデルパラメータθを「モデルパラメータ設定値θ」ともいう。なお、モデルパラメータの推定値θestを算出する際に、モデルパラメータの初期値θが入力されてもよい。
制御パラメータ計算部105は、調整周期T毎に、プラント応答関数{Sθ(t)}と、調整係数α,βとを入力し、制御パラメータとして制御ゲインkと先読み長Tとを計算し、操作変化量計算部112と先読み応答補正部111とにそれぞれ出力する。
第1のタイマ106は、制御周期T毎に、計測部102と操作量更新部104とを動作させる。制御周期Tは、制御対象プラント20を制御する周期のことであり、その値は予め設定される。
第2のタイマ107は、調整周期T毎に、モデルパラメータ推定部101と制御パラメータ計算部105とを動作させる。調整周期Tは、モデルパラメータの推定と制御パラメータの計算とを行う周期のことであり、その値は予め設定される。ただし、T≧Tであるものとする。なお、nを予め決められた任意の自然数として、T=nTと設定されることが好ましい。調整周期Tを制御周期Tよりも長くすることで、モデルパラメータと制御パラメータの計算量を削減することができると共に、制御対象プラント20の時定数が長い場合であってもプラント応答モデルの同定精度(つまり、モデルパラメータの同定精度)を向上させることが可能となる。
リミットサイクル制御器108は、操作量更新部104とは別の制御器であり、リミットサイクル法により制御対象プラント20を制御する制御器である。リミットサイクル制御器108は、目標偏差eを入力して、操作量uを出力する。
切替器109は、操作量更新部104から出力される操作量と、リミットサイクル制御器108から出力される操作量とのいずれの操作量を制御対象プラント20に出力するかを切り替える。以下では、操作量更新部104から出力される操作量をu、リミットサイクル制御器108から出力される操作量をuとも表す。このとき、切替器109は、操作量uと操作量uとのいずれかを操作量uとして制御対象プラント20に出力する。操作量uと操作量uとのいずれを操作量uとして制御対象プラント20に出力するかの切り替えは、例えば、ユーザの操作等によって行われてもよいし、所定の期間経過後に自動的に行われてもよいし、モデルパラメータが十分に更新されたタイミングで自動的に行われてもよい。なお、モデルパラメータが十分に更新されたタイミングとは、例えば、モデルパラメータが収束したタイミング、つまりモデルパラメータ設定値を更新する際における更新前後の変化量が所定の値以下となったタイミング等のことである。これにより、本実施形態に係る制御装置10は、例えば、初期段階ではリミットサイクル制御器108により制御対象プラント20に対する操作量を出力し、モデルパラメータの更新と制御パラメータの計算とを行い、モデルパラメータが十分に更新されたタイミングでモデル予測制御に切り替える、といったことが可能になる。
なお、本実施形態に係る制御装置10は、例えば、調整周期T毎に計算されたモデルパラメータや制御パラメータ(制御ゲイン、先読み長)をディスプレイ等の表示装置に逐次表示する表示部を有していてもよいし、これらのモデルパラメータや制御パラメータを通信ネットワークにより接続されるPC等といった端末の表示装置上に逐次表示させる表示制御部を有していてもよい。これにより、制御装置10のユーザや管理者(以降、「ユーザ等」とも表す。)は、モデルパラメータや制御パラメータのトレンドを知ることが可能となり、プラント応答モデルの同定具合や制御パラメータの調整具合を確認することができるようになる。また、プラント応答モデルに急激な変動が起きる場合にその兆候を発見することも可能となる。
<プラント応答関数{Sθ(t)}の動作>
次に、プラント応答関数{Sθ(t)}の動作について、図2を参照しながら説明する。図2は、プラント応答関数{Sθ(t)}の動作の一例を説明するための図である。
図2に示すように、プラント応答関数{Sθ(t)}は、モデルパラメータ設定値θと時刻tとが入力されると、初期時刻0から時間t経過後の時刻tにおける単位ステップ応答Sθ(t)を出力する。なお、単位ステップ応答とは、操作量uを単位ステップ入力とした場合における応答(つまり、制御対象プラント20のプラント応答モデルの出力)のことである。
<プラント応答関数{Sθ(t)}の計算>
次に、プラント応答関数{Sθ(t)}の単位ステップ応答Sθ(t)を計算する処理について、図3を参照しながら説明する。図3は、プラント応答関数{Sθ(t)}の計算処理の一例を説明するためのフローチャートである。なお、図3では、モデルパラメータ設定値θと時刻tとが入力されたものとする。
ここで、本実施形態では、プラント応答関数Sθ(t)の計算モデルとして、制御量yについては過去N点の自己回帰、操作量uについては現在値と過去M点の移動平均を用いたARMA(autoregressive moving average)モデルを採用した場合について説明する。なお、N及びMは、例えば、ユーザ等によって予め設定される。ただし、これは一例であって、例えば、ARMAXモデル等の他のモデルを採用してもよい。
このとき、モデルパラメータ設定値θを
Figure 2023028327000002
とする。モデルパラメータ設定値θの各要素は、以下の数2に示すARMAモデルの係数である。
Figure 2023028327000003
ここで、kはインデックスである。ただし、これは一例であって、例えば、過去L点(Lは予め設定された1以上の整数)の外乱vを考慮したモデルが用いられてもよい。
ステップS11:操作量更新部104は、時刻を表す変数をτ、インデックスkにおける状態ベクトルをφ(k)として、時刻τと状態ベクトルφ(0)とを初期化する。また、操作量更新部104は、インデックスkをk=0に初期化する。
ここで、状態ベクトルφ(k)は、
Figure 2023028327000004
と表される。
なお、例えば、過去L点の外乱vを考慮する場合には、状態ベクトルφ(k)を、y(k)及びu(k)に加えてL個の外乱v(k)を要素として持つ状態ベクトルに拡大すればよい。
操作量更新部104は、例えば、τ=0と初期化すると共に、
Figure 2023028327000005
と初期化する。すなわち、φ(0)はu(k)に相当する要素のみ1、他の要素は0に初期化される。これは、単位ステップ応答を模擬する際の初期値として設定していることを意味する。
ステップS12:次に、操作量更新部104は、モデルパラメータ設定値θと状態ベクトルφ(k)とに基づいて制御量予測値y(k)を計算する。操作量更新部104は、例えば、y(k)=φ(k)Τθにより制御量予測値y(k)を計算する。ここで、Τは転置を表す。
ステップS13:次に、操作量更新部104は、制御量予測値y(k)と状態ベクトルφ(k)とに基づいて、次のインデックス(つまり、k+1)における状態ベクトルφ(k+1)を更新する。操作量更新部104は、例えば、以下により状態ベクトルφ(k+1)を更新する。
Figure 2023028327000006
ここで、y(k)には上記のステップS12で計算した制御量予測値を設定し、u(k+1)には1を設定する。また、y(k-1),・・・,y(k-N+1)及びu(k),・・・,u(k-M+1)には、状態ベクトルφ(k)と同じ値を設定する(すなわち、状態ベクトルφ(k)に含まれるy(k-1),・・・,y(k-N+1)及びu(k),・・・,u(k-M+1)をそれぞれ設定する。)。
ステップS14:次に、操作量更新部104は、時刻τをτ+ΔTに更新すると共に、インデックスkをk+1に更新する。ここで、ΔTはARMAモデルの1ステップの時間幅を表す。プラント応答関数の時間刻みΔTは、調整周期Tと制御周期Tに応じて変更することができる。例えば、T=4[sec]、T=1[sec]であるとする。このとき、モデルパラメータは4[sec]周期のサンプリングに基づくARMAモデル(又はARMAXモデル)で更新されるため、制御周期1[set]で見たときに4倍のサンプリングで計算されることとなる。このため、例えば制御周期単位でt=40[sec]先を予測したい場合、調整周期では10サンプル分の計算に相当するため、時間刻みΔTを4に設定すればよい。このように、T=nTと表現される場合には、ΔT=nと設定すればよい。これにより、n倍分の時間補正を行って制御量予測値が計算されることになる。
ステップS15:次に、操作量更新部104は、τ≧tであるか否かを判定する。そして、τ≧tであると判定されなかった場合(ステップS15でNO)、操作量更新部104は、ステップS12に戻る。これにより、τ≧tとなるまで、ステップS12~ステップS14が繰り返し実行される。
一方で、τ≧tであると判定された場合(ステップS15でYES)、操作量更新部104は、処理を終了する。これにより、最終的に計算されたy(k)が単位ステップ応答Sθ(t)として得られる(つまり、Sθ(t)=y(k)が、ステップ応答関数{Sθ(t)}の時刻tにおける単位ステップ応答として計算される。)。
<モデルパラメータθの推定>
次に、プラント応答関数{Sθ(t)}のモデルパラメータθを推定する処理(つまり、モデルパラメータ推定値θestを算出する処理)について、図4を参照しながら説明する。図4は、モデルパラメータθの推定処理の一例を説明するためのフローチャートである。なお、図4では、制御量現在値yと操作量現在値uとが入力されたものとして、或るインデックスkにおけるモデルパラメータ推定値θestを算出する場合について説明する。なお、このインデックスkは、図3でプラント応答関数の計算に用いたインデックスkとは独立した値であり、モデルパラメータ推定処理の実行時インデックスを表す。
ステップS21:モデルパラメータ推定部101は、モデルパラメータ推定値θest(k)と共分散行列P(k)とを初期化するか否かを判定する。ここで、初期化すると判定される場合としては、例えば、モデルパラメータ推定値θestを初めて算出する場合(つまり、モデルパラメータ推定値θestの初回算出時)、ユーザ等により初期化指示が行われた場合等が挙げられる。
モデルパラメータ推定値θest(k)と共分散行列P(k)とを初期化すると判定した場合(ステップS21でYES)、モデルパラメータ推定部101は、ステップS22に進む。一方で、モデルパラメータ推定値θest(k)と共分散行列P(k)とを初期化すると判定しなかった場合(ステップS21でNO)、モデルパラメータ推定部101は、ステップS23に進む。
ステップS22:上記のステップS21でモデルパラメータ推定値θest(k)と共分散行列P(k)とを初期化すると判定された場合、モデルパラメータ推定部101は、θest(0)=θ及びP(0)=Iと初期化し、更に制御量前回値y-1←yと初期化すると共に、k←0と初期化する。ここで、θとしては、既にプラント応答関数{Sθ(t)}に設定されているモデルパラメータ設定値θを用いてもよいし、ユーザ等が事前に想定した初期値を用いてもよいし、全ての要素が0のベクトル等の固定の初期値を用いてもよい。また、Iとしては、単位行列としてもよいし、予め決められた任意の行列としてもよい。
ステップS23:モデルパラメータ推定部101は、状態ベクトルφ(k-1)と操作量現在値uと制御量前回値y-1とに基づいて、状態ベクトルφ(k)を更新する。すなわち、モデルパラメータ推定部101は、以下により状態ベクトルφ(k)を更新する。
Figure 2023028327000007
ここで、y(k-1)にはy-1を設定し、u(k)にはuを設定する。また、y(k-2),・・・,y(k-N)及びu(k-1),・・・,u(k-M)には、状態ベクトルφ(k-1)と同じ値を設定する(すなわち、状態ベクトルφ(k-1)に含まれるy(k-2),・・・,y(k-N)及びu(k-1),・・・,u(k-M)をそれぞれ設定する。)。更に、モデルパラメータ推定部101は、制御量前回値y-1←yと更新する。
なお、例えば、過去L点の外乱vを考慮する場合には、上述したように、状態ベクトルφ(k)を、y(k)及びu(k)に加えてL個の外乱v(k)を要素として持つ状態ベクトルに拡大し、外乱に対する共分散行列とモデルパラメータの推定とを行うようにすればよい。
ステップS24:次に、モデルパラメータ推定部101は、モデルパラメータ推定値θest(k-1)と状態ベクトルφ(k)と制御量現在値yとに基づいて、予測誤差ε(k)を計算する。なお、モデルパラメータ推定値θest(k-1)は前回(つまり、k-1のとき)推定したモデルパラメータθの推定値である。
モデルパラメータ推定部101は、例えば、以下により予測誤差ε(k)を計算する。
y(k)=y
ε(k)=y(k)-φ(k)Τθest(k-1)
ステップS25:次に、モデルパラメータ推定部101は、共分散行列P(k)を更新する。モデルパラメータ推定部101は、例えば、以下により共分散行列P(k)を更新する。
Figure 2023028327000008
ここで、P(k-1)は前回(つまり、k-1のとき)得られた共分散行列である。また、λは0<λ≦1を取る忘却係数であり、予め設定された値である。忘却係数λは過去データを忘却するための係数であり、0に近いほど急激に過去データの影響が減少し、1に近いほど過去データの影響が保持される。
ステップS26:次に、モデルパラメータ推定部101は、モデルパラメータ推定値θestを更新するか否かを判定する。ここで、モデルパラメータ推定値θestを更新すると判定される場合としては、例えば、上記のステップS22での初期化時から所定の期間が経過するまでモデルパラメータ推定値θestが更新されなかった場合、ユーザ等により更新指示が行われた場合等が挙げられる。
モデルパラメータ推定値θestを更新すると判定した場合(ステップS26でYES)、モデルパラメータ推定部101は、ステップS27に進む。一方で、モデルパラメータ推定値θestを更新すると判定しなかった場合(ステップS26でNO)、モデルパラメータ推定部101は、ステップS27を実行せずに終了する。
ステップS27:上記のステップS26でモデルパラメータ推定値θestを更新すると判定された場合、モデルパラメータ推定部101は、モデルパラメータ推定値θest(k)を更新する。モデルパラメータ推定部101は、例えば、以下によりモデルパラメータ推定値θest(k)を更新する。
Figure 2023028327000009
ステップS28:そして、モデルパラメータ推定部101は、モデルパラメータ推定処理の実行時インデックスkをk+1に更新する。
<先読み応答補正部111の動作>
次に、先読み応答補正部111の動作について、図5を参照しながら説明する。図5は、先読み応答補正部111の動作の一例を説明するための図である。
図5に示すように、先読み応答補正部111は、プラント応答関数{Sθ(t)}と、目標偏差e(t)と、操作変化量時系列{du(t)}とが入力されると、制御量が過去の操作変化量によって現在時刻tからT経過後に変化すると予測される値を先読み応答補正値y(t)として算出する。なお、先読み長Tは制御パラメータ計算部105により計算される。
そして、先読み応答補正部111は、先読み応答補正値y(t)により目標偏差e(t)を補正した補正目標偏差e(t)を出力する。ここで、補正目標偏差e(t)は、e(t)=r(t)-(y(t)+y(t))=e(t)-y(t)で計算される。なお、先読み応答補正値y(t)は、例えば、上記の特許文献2や特許文献3に記載されている手法により算出することができる。
<操作変化量計算部112の動作>
次に、操作変化量計算部112の動作について、図6を参照しながら説明する。図6は、操作変化量計算部112の動作の一例を説明するための図である。
図6に示すように、操作変化量計算部112は、補正目標偏差e(t)が入力されると、この補正目標偏差e(t)に対して、制御パラメータ計算部105で計算された制御ゲインkを乗じて操作変化量du(t)を出力する。すなわち、操作変化量du(t)は、du(t)=k×e(t)で算出される。
ただし、補正目標偏差e(t)に対して制御ゲインkを乗じた結果が上限値dumaxを超える場合、操作変化量計算部112は、dumaxを操作変化量du(t)とする。同様に、補正目標偏差e(t)に対して制御ゲインkを乗じた結果が下限値duminを下回る場合、操作変化量計算部112は、duminを操作変化量du(t)とする。これにより、上下限範囲に対するリミッターを設けることができる。なお、操作量現在値uと操作変化量duとが加算器113によって加算された後の操作量uが所定の上下限範囲を逸脱しないように、dumax及びduminを都度設定してもよい。
<制御パラメータの計算>
次に、制御パラメータとして制御ゲインkと先読み長Tを計算する処理について、図7を参照しながら説明する。図7は、制御パラメータの計算処理の一例を説明するためのフローチャートである。なお、図7では、プラント応答関数{Sθ(t)}と調整係数α,βとが入力されたものとする。
ステップS31:制御パラメータ計算部105は、プラント応答関数{Sθ(t)}と調整係数βとに基づいて、先読み長Tを計算する。制御パラメータ計算部105は、プラント応答関数{Sθ(t)}を用いて、十分長い値として予め設定された最終時刻Tmaxのプラント応答関数値Sθ(Tmax)に対して調整係数βを乗じた値にプラント応答関数値が等しくなる時点を先読み長T時点とする。すなわち、制御パラメータ計算部105は、以下により先読み長Tを計算する。
Find T,where Sθ(T)=β×Sθ(Tmax
ここで、βは、0<β≦1であることが好ましい。なお、閉ループの応答が遅い場合には、調整係数βをより小さい値とすることで応答の早さを調整することができる。
また、制御パラメータ計算部105は、先読み長T時点でのゲインgを以下により計算する。
=Sθ(T
このように、先読み長Tに基づいて制御ゲインgを計算する。これにより、例えば、むだ時間と時定数が長い場合であっても、より早く応答させることが可能となる。
なお、Tmaxは、プラント応答関数が収束するのに十分な値としてもよいし、メモリ上の制約等から定めた値であってもよい。又は、先読み応答補正部111で予測可能な期間の最大値をTmaxとしてもよい。
ステップS32:そして、制御パラメータ計算部105は、先読み長T時点でのゲインgと調整係数αとに基づいて、制御ゲインkを計算する。制御パラメータ計算部105は、以下により制御ゲインkを計算する。
Figure 2023028327000010
すなわち、先読み長T時点でのゲインgに非負の微小値εを加えた値の逆数に対して調整係数αを乗じた値を制御ゲインkとする。ここで、αは、0<α≦1であることが好ましい。また、εはゲインが大きくなりすぎるのを回避するための微小な非負の値である。なお、閉ループの応答でのオーバーシュートが多い場合には、調整係数αをより小さい値とすることでオーバーシュートの多さを調整することができる。
<先読み長Tの計算概要>
次に、上記のステップS31における先読み長Tの計算概要について、図8を参照しながら説明する。図8は、先読み長Tの計算概要の一例を説明するための図である。
図8に示すように、プラント応答関数Sθ(t)の値が時刻0からTmaxまで徐々に変化していくが、或る時刻TにおいてSθ(T)=β×Sθ(Tmax)が成り立つ。そこで、このような時刻Tを先読み長とする。これにより、先読み長T時点におけるプラントの挙動が最終的なプラントの挙動と連動するため、無駄な操作量の変化を抑制することが可能となり、オーバーシュートやアンダーシュートの発生を抑制することができる。また、それに加えて、むだ時間や逆応答が生じる応答初期の期間を回避した先読み長を決定することが可能となる。
なお、従来技術として公知のPID制御においては、むだ時間の大きさに応じて微分ゲインを大きくする必要があり、ノイズに対して弱いという欠点がある。例えば、Ziegler-Nicholsのステップ応答法による制御則では、k=1.2/(RL)、T=2L、T=0.5L、R=g/Tが用いられており、むだ時間Lに比例して微分時間Tが長く、微分強度が大きくなるため、結果的にノイズやインパルス状の外乱に脆弱な制御となってしまう。これに対して、本実施形態では、観測値の微分信号を用いないため、ノイズやむだ時間に対してロバストな制御を実現することができる。
<先読み長Tの計算詳細>
次に、上記のステップS31における先読み長Tの計算詳細について、図9を参照しながら説明する。図9は、先読み長Tの計算詳細の一例を説明するためのフローチャートである。
ステップS41:まず、制御パラメータ計算部105は、先読み長Tを探索するための変数をTとして、T←0とする。
ステップS42:次に、制御パラメータ計算部105は、T≧Tmaxであるか否かを判定する。
≧Tmaxであると判定した場合(ステップS42でYES)、制御パラメータ計算部105は、ステップS46に進む。一方で、T≧Tmaxであると判定しなかった場合(ステップS42でNO)、制御パラメータ計算部105は、ステップS43に進む。
ステップS43:制御パラメータ計算部105は、Sθ(T)≧β×Sθ(Tmax)を満たすか否かを判定する。
θ(T)≧β×Sθ(Tmax)を満たすと判定した場合(ステップS43でYES)、制御パラメータ計算部105は、ステップS45に進む。一方で、Sθ(T)≧β×Sθ(Tmax)を満たすと判定しなかった場合(ステップS43でNO)、制御パラメータ計算部105は、ステップS44に進む。
ステップS44:制御パラメータ計算部105は、T←T+ΔTと更新し、ステップS42に戻る。これにより、T≧Tmax又はSθ(T)≧β×Sθ(Tmax)のいずれかを満たすまで、ステップS44が繰り返し実行される。
ステップS45:Sθ(T)≧β×Sθ(Tmax)を満たすと判定した場合、制御パラメータ計算部105は、T←Tとする。すなわち、制御パラメータ計算部105は、Sθ(T)≧β×Sθ(Tmax)を満たすTを先読み長Tとする。
ステップS46:T≧Tmaxであると判定しなかった場合、制御パラメータ計算部105は、T←γ×Tmaxとする。ここで、0<γ<1である。すなわち、Sθ(T)≧β×Sθ(Tmax)を満たすTが探索できなかった場合は、Tmaxに対してγを乗じた値を先読み長Tとする。
<リミットサイクル制御器108の動作>
次に、リミットサイクル制御器108の動作について、図10及び図11を参照しながら説明する。図10及び図11は、リミットサイクル制御器108の動作の一例を説明するための図(その1)である。
図10に示すように、リミットサイクル制御器108は、目標偏差e(t)が入力されると、e(t)≧0の場合は所定の値MVHを操作量u(t)として出力し、e(t)<0の場合は所定の値MVLを操作量u(t)として出力する。なお、図10に示す例では、制御対象プラント20が正動作する(つまり、操作量の上昇が制御量の上昇の方向に動作する)と仮定し、MVH>MVLとなっているが、制御対象プラント20が逆動作する場合には条件判定の符号を反転(つまり、e(t)≦0の場合はMVHを操作量u(t)として出力し、e(t)>0の場合はMVLを操作量u(t)として出力)する必要がある。
図11に示すように、リミットサイクル制御器108を閉ループ制御に用いることで、一定周期の振動(リミットサイクル)を引き起こすことができる。
<制御装置10のハードウェア構成>
次に、本実施形態に係る制御装置10のハードウェア構成について、図12を参照しながら説明する。図12は、本実施形態に係る制御装置10のハードウェア構成の一例を示す図である。
図12に示すように、本実施形態に係る制御装置10は、入力装置201と、表示装置202と、外部I/F203と、通信I/F204と、プロセッサ205と、メモリ装置206とを有する。これらの各ハードウェアは、それぞれがバス207により通信可能に接続される。
入力装置201は、例えば、タッチパネルや各種ボタン等である。表示装置202は、例えば、表示パネル等である。なお、制御装置10は、入力装置201及び表示装置202のうちの少なくとも一方を有していなくてもよい。
外部I/F203は、記録媒体203a等の外部装置とのインタフェースである。記録媒体203aとしては、例えば、SDメモリカード(Secure Digital memory card)やUSB(Universal Serial Bus)メモリカード等が挙げられる。
通信I/F204は、制御装置10を通信ネットワークに接続するためのインタフェースである。プロセッサ205は、例えば、CPUやMPU等の各種演算装置である。メモリ装置206は、例えば、SSD(Solid State Drive)、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ等の各種記憶装置である。
なお、図12に示すハードウェア構成は一例であって、制御装置10は、他のハードウェア構成を有していてもよい。例えば、制御装置10は、図示したハードウェア以外にも種々のハードウェアを有していてもよい。
<実施例>
次に、実施例について説明する。本実施例では、上記の実施形態に係る制御装置10によって制御対象プラント20を制御する場合について説明する。
本実施形態における制御装置10と制御対象プラント20とで構成される制御系全体を図13に示す。図13に示すように、金属ブロックにヒーターと熱電対とが取り付けられており、ヒーターはAC電源と制御装置10(PLC)のDOモジュールに接続され、熱電対は制御装置10のAIモジュールに接続されている。このとき、制御量は熱電対から検知される金属ブロックの温度、操作量は制御装置10のDOモジュールによるPWM変調のデューティー比(ON時間/PWM周期の割合[%])であるものとする。
また、制御対象プラント20の真のプラント応答は、ΔTを時間メッシュとして、
Figure 2023028327000011
と表されるものとする。ここで、δ(t)はノイズを表す。
一方で、プラント応答関数は、モデルパラメータθを持つ以下の2次のARMAモデルとする。
Figure 2023028327000012
よって、状態ベクトルは、
Figure 2023028327000013
となり、モデルパラメータ推定値は、
Figure 2023028327000014
となり、モデルパラメータの真値は、
Figure 2023028327000015
となる。また、制御量推定値は、yest(k)=φ(k)Τθ(k-1)で計算される。
第1のタイマ106と第2のタイマ107には異なる値が設定されており、制御周期Tは5[sec]、調整周期Tは20[sec]とした。すなわち、調整周期Tは制御周期Tの4倍であり、制御周期の4回に1回の頻度でモデルパラメータ推定部101と制御パラメータ計算部105が動作する。よって、プラント応答関数の時間刻みΔTは4である。このように、調整の頻度を抑制することで、制御装置10(PLC)の計算負荷を低減している。
また、操作量の上限を90、下限を0とした。調整係数はα=0.9,β=0.3とした。忘却係数はλ=0.95とした。リミットサイクルのパラメータはMVH=60、MVL=40とした。
このとき、リミットサイクル制御器108を用いない場合の制御動作例について説明する。時刻0から操作量更新部104による制御を開始、時刻1000まで制御したときのモデルパラメータ推定結果を図14、制御パラメータ計算結果を図15、制御応答及び操作量を図16にそれぞれ示す。
図14に示すように、モデルパラメータθの推定値の初期値は0であるが、制御開始の時刻0から値が変化し、およそ時刻50付近で最終値に近い値となっている。図15に示すように、制御パラメータは時刻0での変化が大きく、制御ゲインkと先読み長Tが大きな値となるが、すぐに低い値へと変化している。図16に示すように、制御応答を見ると、時刻0付近で比較的大きな振動が生じているものの、すぐに制御量yが目標値rへと収束している。また、目標値rが51→49→51→49→51と変化するたびに、徐々にオーバーシュートが減少し、より追従性が向上している。これは、モデルパラメータ推定部101によるモデル更新と制御パラメータ計算部105による制御パラメータの計算とによって、制御中に自動的に調整が行われ、制御性能が向上していくためである。
このように、モデルパラメータの初期値や制御パラメータの初期値に事前の情報を用いたり、一般化分散制御のような規範モデル(参照モデル関数)を指定したりしなくとも、本実施形態に係る制御装置10では、完全な初期状態から制御対象プラント20を制御しつつ、制御運転中に自動的に制御パラメータをチューニングすると共に制御性能を自動的に向上させることができる。
次に、リミットサイクル制御器108を用いた場合の制御動作例について説明する。時刻0から時刻50までリミットサイクル制御器108による制御を行い、その後、時刻50から操作量更新部104による制御を開始し、時刻1000まで制御したときのモデルパラメータ推定結果を図17、制御パラメータ計算結果を図18、制御応答及び操作量を図19にそれぞれ示す。
図17に示すように、モデルパラメータθの推定値の初期値は0であるが、制御開始の時刻0から値が変化し、およそ時刻50付近で最終値に近い値となっている。図18に示すように、制御パラメータ計算部105は、リミットサイクル制御器108による制御が終了する時刻50から制御パラメータを計算している。図15と比較すると、制御パラメータ計算部105で計算された制御パラメータは比較的安定しており、リミットサイクル制御時(つまり、時刻0から時刻50までの制御時)に推定されたモデルパラメータを用いることで安定化を実現できていることがわかる。図19に示すように、時刻0付近での制御量yと操作量uの振れ幅が軽減されており、プラントに与える影響を比較的抑制できていることがわかる。また、リミットサイクル制御器108による制御から操作量更新部104による制御に切り替えた後の応答では、図18と同様に、目標値rが51→49→51→49→51と変化するたびに、徐々にオーバーシュートが減少し、より追従性が向上している。
このように、リミットサイクル制御器108を用いることで、モデルパラメータや制御パラメータを比較的早期に安定化させることが可能となり、初期の変動を抑制することができる。なお、例えば、事前の検討によりモデルパラメータが予め推定できる場合には、その値を初期値として設定することもできる。
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更、既知の技術との組み合わせ等が可能である。
10 制御装置
20 制御対象プラント
101 モデルパラメータ推定部
102 計測部
103 差分器
104 操作量更新部
105 制御パラメータ計算部
106 第1のタイマ
107 第2のタイマ
108 リミットサイクル制御器
109 切替器
111 先読み応答補正部
112 操作変化量計算部
113 加算器
201 入力装置
202 表示装置
203 外部I/F
203a 記録媒体
204 通信I/F
205 プロセッサ
206 メモリ装置
207 バス

Claims (12)

  1. 制御対象に対する操作量を出力し、前記制御対象の制御量を目標値に追従させる制御装置であって、
    前記制御量と、前記操作量とに基づいて、前記制御対象のプラント応答モデルを表す関数であって、かつ、モデルパラメータが含まれる関数であるプラント応答関数の前記モデルパラメータの推定値を算出するモデルパラメータ推定部と、
    前記プラント応答関数に基づいて、制御ゲインと先読み長とを含む制御パラメータを算出する制御パラメータ算出部と、
    前記目標値と、現在の制御量との差である目標偏差を算出する目標偏差算出部と、
    前記プラント応答関数と、現在に至るまでの過去の前記操作量の変化量とに基づいて、前記先読み長経過後における前記制御量の予測値により前記目標偏差を補正した補正目標偏差を算出する補正目標偏差算出部と、
    前記補正目標偏差に対して前記制御ゲインを乗じて前記操作量の変化量を算出する操作変化量算出部と、
    前記操作量の変化量と、前記現在の操作量とを加算して新たな操作量を算出する操作量算出部と、
    を有し、
    前記目標偏差算出部による前記目標偏差の算出と、前記補正目標偏差算出部による前記補正目標偏差の算出と、前記操作量算出部による前記新たな操作量の算出とを所定の制御周期毎に逐次的に繰り返すと共に、前記モデルパラメータ推定部による前記モデルパラメータの推定値の算出と、前記制御パラメータ算出部による前記制御パラメータの算出とを所定の調整周期毎に逐次的に繰り返す、制御装置。
  2. 前記モデルパラメータ推定部は、前記調整周期毎に、前記モデルパラメータの推定値により前記プラント応答関数に含まれるモデルパラメータを更新する、請求項1に記載の制御装置。
  3. 前記調整周期は、前記制御周期に対して所定の自然数nを乗じた値であり、
    前記補正目標偏差算出部は、
    前記自然数n倍分の時間補正を行って、前記制御量の予測値を算出する、請求項1又は2に記載の制御装置。
  4. 前記目標偏差に基づいてリミットサイクルにより操作量を出力するリミットサイクル制御部と、
    前記リミットサイクル制御部から出力された操作量と、前記操作量算出部で算出された操作量とのいずれを前記制御対象に出力するかを切り替える切替部と、を有し、
    前記モデルパラメータ推定部は、
    前記制御量と、前記制御対象に出力された操作量に基づいて、前記モデルパラメータの推定値を算出する、請求項1乃至3の何れか一項に記載の制御装置。
  5. 前記切替部は、
    所定の初期期間においては前記リミットサイクル制御部から出力された操作量を前記制御対象に出力し、前記初期期間経過後においては前記操作量算出部で算出された操作量を前記制御対象に出力する、請求項4に記載の制御装置。
  6. 前記制御パラメータ算出部は、
    前記先読み長を、前記先読み長時点における前記プラント応答関数値と、前記制御対象の最終時点における前記プラント応答関数値に対して所定の調整係数βを乗じた値とが一致する時点までの時間幅として算出する、請求項1乃至5の何れか一項に記載の制御装置。
  7. 前記制御パラメータ算出部は、
    前記制御ゲインを、前記先読み長時点における前記プラント応答関数値に所定の非負値を加算した値の逆数に対して所定の調整係数αを乗じた値として算出する、請求項1乃至6の何れか一項に記載の制御装置。
  8. 前記プラント応答関数は、ARMAモデル又はARMAXモデルであり、
    前記モデルパラメータ推定部は、
    前記ARMAモデル又はARMAXモデルの係数を前記モデルパラメータとして前記推定値を算出する、請求項1乃至7の何れか一項に記載の制御装置。
  9. 前記モデルパラメータ推定部は、
    忘却要素を含む逐次最小2乗法に基づいて、共分散行列の推定と前記モデルパラメータの推定とを行うことで、前記モデルパラメータの推定値を算出する、請求項1乃至8の何れか一項に記載の制御装置。
  10. 前記モデルパラメータ推定部により推定された前記モデルパラメータの推定値と、前記制御パラメータ算出部により算出された前記制御パラメータとの少なくとも一方を前記調整周期毎に所定の表示装置に逐次的に出力する表示制御部を有する、請求項1乃至9の何れか一項に記載の制御装置。
  11. 制御対象に対する操作量を出力し、前記制御対象の制御量を目標値に追従させる制御装置が、
    前記制御量と、前記操作量とに基づいて、前記制御対象のプラント応答モデルを表す関数であって、かつ、モデルパラメータが含まれる関数であるプラント応答関数の前記モデルパラメータの推定値を算出するモデルパラメータ推定手順と、
    前記プラント応答関数に基づいて、制御ゲインと先読み長とを含む制御パラメータを算出する制御パラメータ算出手順と、
    前記目標値と、現在の制御量との差である目標偏差を算出する目標偏差算出手順と、
    前記プラント応答関数と、現在に至るまでの過去の前記操作量の変化量とに基づいて、前記先読み長経過後における前記制御量の予測値により前記目標偏差を補正した補正目標偏差を算出する補正目標偏差算出手順と、
    前記補正目標偏差に対して前記制御ゲインを乗じて前記操作量の変化量を算出する操作変化量算出手順と、
    前記操作量の変化量と、前記現在の操作量とを加算して新たな操作量を算出する操作量算出手順と、
    を実行し、
    前記目標偏差算出手順による前記目標偏差の算出と、前記補正目標偏差算出手順による前記補正目標偏差の算出と、前記操作量算出手順による前記新たな操作量の算出とを所定の制御周期毎に逐次的に繰り返すと共に、前記モデルパラメータ推定手順による前記モデルパラメータの推定値の算出と、前記制御パラメータ算出手順による前記制御パラメータの算出とを所定の調整周期毎に逐次的に繰り返す、制御方法。
  12. 制御対象に対する操作量を出力し、前記制御対象の制御量を目標値に追従させる制御装置が、
    前記制御量と、前記操作量とに基づいて、前記制御対象のプラント応答モデルを表す関数であって、かつ、モデルパラメータが含まれる関数であるプラント応答関数の前記モデルパラメータの推定値を算出するモデルパラメータ推定手順と、
    前記プラント応答関数に基づいて、制御ゲインと先読み長とを含む制御パラメータを算出する制御パラメータ算出手順と、
    前記目標値と、現在の制御量との差である目標偏差を算出する目標偏差算出手順と、
    前記プラント応答関数と、現在に至るまでの過去の前記操作量の変化量とに基づいて、前記先読み長経過後における前記制御量の予測値により前記目標偏差を補正した補正目標偏差を算出する補正目標偏差算出手順と、
    前記補正目標偏差に対して前記制御ゲインを乗じて前記操作量の変化量を算出する操作変化量算出手順と、
    前記操作量の変化量と、前記現在の操作量とを加算して新たな操作量を算出する操作量算出手順と、
    を実行させ、
    前記目標偏差算出手順による前記目標偏差の算出と、前記補正目標偏差算出手順による前記補正目標偏差の算出と、前記操作量算出手順による前記新たな操作量の算出とを所定の制御周期毎に逐次的に繰り返すと共に、前記モデルパラメータ推定手順による前記モデルパラメータの推定値の算出と、前記制御パラメータ算出手順による前記制御パラメータの算出とを所定の調整周期毎に逐次的に繰り返す、プログラム。
JP2021133960A 2021-08-19 2021-08-19 制御装置、制御方法、及びプログラム Active JP7014330B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021133960A JP7014330B1 (ja) 2021-08-19 2021-08-19 制御装置、制御方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021133960A JP7014330B1 (ja) 2021-08-19 2021-08-19 制御装置、制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP7014330B1 JP7014330B1 (ja) 2022-02-01
JP2023028327A true JP2023028327A (ja) 2023-03-03

Family

ID=80774224

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021133960A Active JP7014330B1 (ja) 2021-08-19 2021-08-19 制御装置、制御方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP7014330B1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7115654B1 (ja) 2022-02-04 2022-08-09 富士電機株式会社 制御装置、制御方法及びプログラム
JP7115656B1 (ja) * 2022-04-15 2022-08-09 富士電機株式会社 制御装置、制御方法及びプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09200910A (ja) * 1996-01-12 1997-07-31 Toshiba Corp 自動列車運転装置
JPH11353006A (ja) * 1998-06-04 1999-12-24 Yamaha Motor Co Ltd オンライン学習方法
JP2010049307A (ja) * 2008-08-19 2010-03-04 Yaskawa Electric Corp むだ時間同定装置
JP6901037B1 (ja) * 2020-12-18 2021-07-14 富士電機株式会社 制御装置、制御方法及びプログラム
JP6927446B1 (ja) * 2021-02-05 2021-09-01 富士電機株式会社 制御装置、制御方法及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09200910A (ja) * 1996-01-12 1997-07-31 Toshiba Corp 自動列車運転装置
JPH11353006A (ja) * 1998-06-04 1999-12-24 Yamaha Motor Co Ltd オンライン学習方法
JP2010049307A (ja) * 2008-08-19 2010-03-04 Yaskawa Electric Corp むだ時間同定装置
JP6901037B1 (ja) * 2020-12-18 2021-07-14 富士電機株式会社 制御装置、制御方法及びプログラム
JP6927446B1 (ja) * 2021-02-05 2021-09-01 富士電機株式会社 制御装置、制御方法及びプログラム

Also Published As

Publication number Publication date
JP7014330B1 (ja) 2022-02-01

Similar Documents

Publication Publication Date Title
Van den Broeck et al. A model predictive control approach for time optimal point-to-point motion control
JP6927446B1 (ja) 制御装置、制御方法及びプログラム
Bobal et al. Adaptive predictive control of time-delay systems
Liu et al. Codesign of event trigger and feedback policy in robust model predictive control
Huang et al. Practical solutions to multivariate feedback control performance assessment problem: reduced a priori knowledge of interactor matrices
JP7014330B1 (ja) 制御装置、制御方法、及びプログラム
Du et al. A gap metric based weighting method for multimodel predictive control of MIMO nonlinear systems
JP7206874B2 (ja) 制御装置、制御方法及びプログラム
JP6901037B1 (ja) 制御装置、制御方法及びプログラム
JP6380552B2 (ja) 制御装置、そのプログラム、プラント制御方法
Jeng et al. Disturbance-rejection-based tuning of proportional–integral–derivative controllers by exploiting closed-loop plant data
Formentin et al. Virtual reference feedback tuning for linear parameter-varying systems
Arora et al. Design of PID controller for unstable system
Begum et al. Performance assessment of control loops involving unstable systems for set point tracking and disturbance rejection
JP7115654B1 (ja) 制御装置、制御方法及びプログラム
Van den Broeck et al. Model predictive control for time-optimal point-to-point motion control
Grimble et al. Restricted structure predictive control for linear and nonlinear systems
Menées et al. Fuzzy model predictive control for nonlinear processes
JP7283095B2 (ja) 制御装置、制御方法及びプログラム
Xu et al. Data-driven plant-model mismatch quantification for MIMO MPC systems with feedforward control path
JP7276633B1 (ja) 制御装置、制御方法、及びプログラム
JP7275492B2 (ja) 制御装置、制御方法及びプログラム
JP7283646B1 (ja) 制御装置、制御方法、及びプログラム
JP7115656B1 (ja) 制御装置、制御方法及びプログラム
JP7484504B2 (ja) 制御装置、制御方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210819

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210819

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211207

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220103

R150 Certificate of patent or registration of utility model

Ref document number: 7014330

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150