(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-26
(45)【発行日】2024-09-03
(54)【発明の名称】制御装置および制御方法
(51)【国際特許分類】
G05B 11/32 20060101AFI20240827BHJP
【FI】
G05B11/32 F
(21)【出願番号】P 2020109322
(22)【出願日】2020-06-25
【審査請求日】2023-03-24
(73)【特許権者】
【識別番号】000006666
【氏名又は名称】アズビル株式会社
(74)【代理人】
【識別番号】100098394
【氏名又は名称】山川 茂樹
(74)【代理人】
【識別番号】100064621
【氏名又は名称】山川 政樹
(72)【発明者】
【氏名】田中 雅人
【審査官】松本 泰典
(56)【参考文献】
【文献】特開2004-220195(JP,A)
【文献】特開2000-227801(JP,A)
【文献】特開2015-22522(JP,A)
【文献】特開2021-124864(JP,A)
【文献】特開2020-21298(JP,A)
【文献】特開2021-131674(JP,A)
【文献】特開2022-6820(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 11/32
(57)【特許請求の範囲】
【請求項1】
設定値と制御量とを入力として第1の操作量を制御周期毎に算出するように構成された操作量算出部と、
外乱の印加前に有意の値となり外乱の印加後に非有意の値となるトリガー変数の入力に応じて、ステップ外乱の抑制に必要な第1のフィードフォワード量とインパルス外乱の抑制に必要な第2のフィードフォワード量との和を第3のフィードフォワード量として制御周期毎に算出するように構成されたフィードフォワード算出部と、
前記操作量算出部によって算出された前記第1の操作量に前記第3のフィードフォワード量を制御周期毎に加算するように構成されたフィードフォワード実行部と、
前記第1の操作量に前記第3のフィードフォワード量を加算した第2の操作量を制御対象に出力するように構成された操作量出力部と、
前記トリガー変数が有意の値になったときの外乱リカバリー応答前の整定時の前記第2の操作量と外乱リカバリーの整定後の前記第2の操作量の差を、前記第1のフィードフォワード量の算出のための第1のパラメータとして推定し、推定した第1のパラメータを第1の診断指標とするように構成された第1の推定部と、
前記第1の推定部によって推定された値と同じ前記第1のパラメータが前記フィードフォワード算出部に設定済みで前記トリガー変数が有意の値になったときに設定済みの前記第1のパラメータに基づいて前記第1のフィードフォワード量が出力されたと仮定したときの前記第2の操作量の整定までの前記第1のフィードフォワード量の各制御周期の積算値である総量を算出するように構成された総量算出部と、
前記トリガー変数が有意の値になった期間における前記第2の操作量の整定までの前記第2の操作量の各制御周期の変化量の積算値である総量から前記第1のフィードフォワード量の総量を減算し、前記制御周期に前記減算の結果を乗算した値を、前記第2のフィードフォワード量の算出のための第2のパラメータとして推定し、推定した第2のパラメータを第2の診断指標とするように構成された第2の推定部と、
前記トリガー変数が有意の値になった期間において前記第2の操作量の整定までに前記フィードフォワード算出部によって制御周期毎に算出された前記第2のフィードフォワード量のうち、前記第2の操作量が操作量上限値を上回る出力飽和または操作量下限値を下回る出力飽和のいずれかによって無効化された分の積算値である無効量を算出するように構成された無効量算出部と、
前記トリガー変数が有意の値になった期間において前記第2の操作量の整定までに前記フィードフォワード算出部によって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量と前記出力飽和によって無効化されなかった前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を前記無効量に基づいて算出し、前記出力飽和によって無効化されない前記第2の操作量の範囲内に前記無効量の相当分が配分されるように、前記比率を前記第2の診断指標に乗算した補正値を、前記第2のフィードフォワード量の補正のための値として推定し、推定した値を補正後の第2の診断指標とするように構成された補正部と、
前記第1の診断指標と前記補正後の第2の診断指標とを提示するように構成された診断指標提示部とを備えることを特徴とする制御装置。
【請求項2】
請求項1記載の制御装置において、
前記フィードフォワード算出部に設定されている前記第1のパラメータを前記第1の診断指標の値に修正し、前記フィードフォワード算出部に設定されている前記第2のパラメータ
を前記補正後の第2の診断指標の値に修正し、前記フィードフォワード算出部に設定されている、前記第2のフィードフォワード量を徐々に収束させる時間を規定する時定数を、時定数の補正値に修正するように構成された修正部をさらに備え
、
前記補正部は、前記補正後の第2の診断指標を算出すると共に、前記時定数に前記比率を乗算した値を前記時定数の補正値として算出することを特徴とする制御装置。
【請求項3】
請求項1または2記載の制御装置において、
前記第2のフィードフォワード量は、前記第2のパラメータをKx2、前記第2のフィードフォワード量を徐々に収束させる時間を規定する時定数をTf、前記時定数を調整する係数をA、前記トリガー変数をFF_X、ラプラス演算子をsとしたとき、[Kx2s/{(1+ATfs)(1+(2.0-A)Tfs)}]FF_Xにより算出されることを特徴とする制御装置。
【請求項4】
請求項3記載の制御装置において、
前記補正部は、前記無効量をFF_N、前記第1の操作量と前記第1、第2、第3のフィードフォワード量との算出周期である前記制御周期をdt、前記比率をRHとしたとき、前記比率RHをKx2/(Kx2-FF_N×dt)により算出し、前記補正後の第2の診断指標として、前記第2のパラメータKx2の補正値をKx2×RHにより算出
し、前記時定数Tfに前記比率RHを乗算した値Tf×RHを前記時定数Tfの補正値として算出することを特徴とする制御装置。
【請求項5】
請求項1乃至4のいずれか1項に記載の制御装置において、
前記第1のフィードフォワード量は、前記第1のパラメータをKx1、前記第1のフィードフォワード量を徐々に収束させる時間を規定する時定数をTf、前記時定数を調整する係数をA、前記トリガー変数をFF_X、ラプラス演算子をsとしたとき、[Kx1/{(1+ATfs)(1+(2.0-A)Tfs)}]FF_Xにより算出されることを特徴とする制御装置。
【請求項6】
請求項1乃至5のいずれか1項に記載の制御装置において、
前記無効量と、前記トリガー変数が有意の値になった期間において前記第2の操作量の整定までに前記フィードフォワード算出部によって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を、第3の診断指標として算出するように構成された指標比率算出部をさらに備え、
前記診断指標提示部は、前記第1の診断指標と前記補正後の第2の診断指標に加えて前記第3の診断指標を提示することを特徴とする制御装置。
【請求項7】
請求項1乃至5のいずれか1項に記載の制御装置において、
前記フィードフォワード実行部によって算出された第2の操作量を前記操作量下限値以上で前記操作量上限値以下の値に制限するリミット処理を行なうリミット処理部をさらに備え、
前記操作量出力部は、前記リミット処理された第2の操作量を制御対象に出力し、
前記第1の推定部と前記総量算出部と前記第2の推定部とは、前記リミット処理された第2の操作量を入力として処理を行い、
前記無効量算出部は、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記フィードフォワード算出部によって制御周期毎に算出された前記第2のフィードフォワード量のうち、前記リミット処理前の第2の操作量が前記操作量上限値を上回る出力飽和または前記操作量下限値を下回る出力飽和のいずれかによって無効化された分の積算値である
前記無効量を算出し、
前記補正部は、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記フィードフォワード算出部によって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量と前記出力飽和によって無効化されなかった前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を前記無効量に基づいて算出し、前記出力飽和によって無効化されない前記リミット処理前の第2の操作量の範囲内に前記無効量の相当分が配分されるように、前記比率を前記第2の診断指標に乗算した
前記補正値を、前記第2のフィードフォワード量の補正のための値として推定し、推定した値を補正後の第2の診断指標とすることを特徴とする制御装置。
【請求項8】
請求項6記載の制御装置において、
前記フィードフォワード実行部によって算出された第2の操作量を前記操作量下限値以上で前記操作量上限値以下の値に制限するリミット処理を行なうリミット処理部をさらに備え、
前記操作量出力部は、前記リミット処理された第2の操作量を制御対象に出力し、
前記第1の推定部と前記総量算出部と前記第2の推定部と前記指標比率算出部とは、前記リミット処理された第2の操作量を入力として処理を行い、
前記無効量算出部は、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記フィードフォワード算出部によって制御周期毎に算出された前記第2のフィードフォワード量のうち、前記リミット処理前の第2の操作量が前記操作量上限値を上回る出力飽和または前記操作量下限値を下回る出力飽和のいずれかによって無効化された分の積算値である
前記無効量を算出し、
前記補正部は、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記フィードフォワード算出部によって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量と前記出力飽和によって無効化されなかった前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を前記無効量に基づいて算出し、前記出力飽和によって無効化されない前記リミット処理前の第2の操作量の範囲内に前記無効量の相当分が配分されるように、前記比率を前記第2の診断指標に乗算した
前記補正値を、前記第2のフィードフォワード量の補正のための値として推定し、推定した値を補正後の第2の診断指標とすることを特徴とする制御装置。
【請求項9】
設定値と制御量とを入力として第1の操作量を制御周期毎に算出する第1のステップと、
外乱の印加前に有意の値となり外乱の印加後に非有意の値となるトリガー変数の入力に応じて、ステップ外乱の抑制に必要な第1のフィードフォワード量とインパルス外乱の抑制に必要な第2のフィードフォワード量との和を第3のフィードフォワード量として制御周期毎に算出する第2のステップと、
前記第1の操作量に前記第3のフィードフォワード量を制御周期毎に加算する第3のステップと、
前記第1の操作量に前記第3のフィードフォワード量を加算した第2の操作量を制御対象に出力する第4のステップと、
前記トリガー変数が有意の値になったときの外乱リカバリー応答前の整定時の前記第2の操作量と外乱リカバリーの整定後の前記第2の操作量の差を、前記第1のフィードフォワード量の算出のための第1のパラメータとして推定し、推定した第1のパラメータを第1の診断指標とする第5のステップと、
前記第5のステップで推定した値と同じ前記第1のパラメータが設定済みで前記トリガー変数が有意の値になったときに設定済みの前記第1のパラメータに基づいて前記第1のフィードフォワード量が出力されたと仮定したときの前記第2の操作量の整定までの前記第1のフィードフォワード量の各制御周期の積算値である総量を算出する第6のステップと、
前記トリガー変数が有意の値になった期間における前記第2の操作量の整定までの前記第2の操作量の各制御周期の変化量の積算値である総量から前記第1のフィードフォワード量の総量を減算し、前記制御周期に前記減算の結果を乗算した値を、前記第2のフィードフォワード量の算出のための第2のパラメータとして推定し、推定した第2のパラメータを第2の診断指標とする第7のステップと、
前記トリガー変数が有意の値になった期間において前記第2の操作量の整定までに前記第2のステップによって制御周期毎に算出された前記第2のフィードフォワード量のうち、前記第2の操作量が操作量上限値を上回る出力飽和または操作量下限値を下回る出力飽和のいずれかによって無効化された分の積算値である無効量を算出する第8のステップと、
前記トリガー変数が有意の値になった期間において前記第2の操作量の整定までに前記第2のステップによって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量と前記出力飽和によって無効化されなかった前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を前記無効量に基づいて算出し、前記出力飽和によって無効化されない前記第2の操作量の範囲内に前記無効量の相当分が配分されるように、前記比率を前記第2の診断指標に乗算した補正値を、前記第2のフィードフォワード量の補正のための値として推定し、推定した値を補正後の第2の診断指標とする第9のステップと、
前記第1の診断指標と前記補正後の第2の診断指標とを提示する第10のステップとを含むことを特徴とする制御方法。
【請求項10】
請求項9記載の制御方法において、
前記第2のステップにおいて前記第1のフィードフォワード量を算出するために設定されている前記第1のパラメータを前記第1の診断指標の値に修正し、前記第2のステップにおいて前記第2のフィードフォワード量を算出するために設定されている前記第2のパラメータ
を前記補正後の第2の診断指標の値に修正し、前記第2のステップにおいて前記第2のフィードフォワード量を算出するために設定されている、前記第2のフィードフォワード量を徐々に収束させる時間を規定する時定数を、時定数の補正値に修正する第11のステップをさらに含
み、
前記第9のステップは、前記補正後の第2の診断指標を算出すると共に、前記時定数に前記比率を乗算した値を前記時定数の補正値として算出するステップを含むことを特徴とする制御方法。
【請求項11】
請求項9または10記載の制御方法において、
前記第2のフィードフォワード量は、前記第2のパラメータをKx2、前記第2のフィードフォワード量を徐々に収束させる時間を規定する時定数をTf、前記時定数を調整する係数をA、前記トリガー変数をFF_X、ラプラス演算子をsとしたとき、[Kx2s/{(1+ATfs)(1+(2.0-A)Tfs)}]FF_Xにより算出されることを特徴とする制御方法。
【請求項12】
請求項11記載の制御方法において、
前記第9のステップは、前記無効量をFF_N、前記第1の操作量と前記第1、第2、第3のフィードフォワード量との算出周期である前記制御周期をdt、前記比率をRHとしたとき、前記比率RHをKx2/(Kx2-FF_N×dt)により算出し、前記補正後の第2の診断指標として、前記第2のパラメータKx2の補正値をKx2×RHにより算出
し、前記時定数Tfに前記比率RHを乗算した値Tf×RHを前記時定数Tfの補正値として算出するステップを含むことを特徴とする制御方法。
【請求項13】
請求項9乃至12のいずれか1項に記載の制御方法において、
前記第1のフィードフォワード量は、前記第1のパラメータをKx1、前記第1のフィードフォワード量を徐々に収束させる時間を規定する時定数をTf、前記時定数を調整する係数をA、前記トリガー変数をFF_X、ラプラス演算子をsとしたとき、[Kx1/{(1+ATfs)(1+(2.0-A)Tfs)}]FF_Xにより算出されることを特徴とする制御方法。
【請求項14】
請求項9乃至13のいずれか1項に記載の制御方法において、
前記無効量と、前記トリガー変数が有意の値になった期間において前記第2の操作量の整定までに前記第2のステップによって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を、第3の診断指標として算出する第12のステップと、
前記第3の診断指標を提示する第13のステップとをさらに含むことを特徴とする制御方法。
【請求項15】
請求項9乃至13のいずれか1項に記載の制御方法において、
前記第3のステップによって算出された第2の操作量を前記操作量下限値以上で前記操作量上限値以下の値に制限するリミット処理を行なう第12のステップをさらに含み、
前記第4のステップは、前記リミット処理された第2の操作量を制御対象に出力するステップを含み、
前記第5のステップと前記第6のステップと前記第7のステップとは、前記リミット処理された第2の操作量を入力として処理を行い、
前記第8のステップは、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記第2のステップによって制御周期毎に算出された前記第2のフィードフォワード量のうち、前記リミット処理前の第2の操作量が前記操作量上限値を上回る出力飽和または前記操作量下限値を下回る出力飽和のいずれかによって無効化された分の積算値である
前記無効量を算出するステップを含み、
前記第9のステップは、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記第2のステップによって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量と前記出力飽和によって無効化されなかった前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を前記無効量に基づいて算出し、前記出力飽和によって無効化されない前記リミット処理前の第2の操作量の範囲内に前記無効量の相当分が配分されるように、前記比率を前記第2の診断指標に乗算した
前記補正値を、前記第2のフィードフォワード量の補正のための値として推定し、推定した値を補正後の第2の診断指標とするステップを含むことを特徴とする制御方法。
【請求項16】
請求項14記載の制御方法において、
前記第3のステップによって算出された第2の操作量を前記操作量下限値以上で前記操作量上限値以下の値に制限するリミット処理を行なう第14のステップをさらに含み、
前記第4のステップは、前記リミット処理された第2の操作量を制御対象に出力するステップを含み、
前記第5のステップと前記第6のステップと前記第7のステップと前記第12のステップとは、前記リミット処理された第2の操作量を入力として処理を行い、
前記第8のステップは、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記第2のステップによって制御周期毎に算出された前記第2のフィードフォワード量のうち、前記リミット処理前の第2の操作量が前記操作量上限値を上回る出力飽和または前記操作量下限値を下回る出力飽和のいずれかによって無効化された分の積算値である
前記無効量を算出するステップを含み、
前記第9のステップは、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記第2のステップによって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量と前記出力飽和によって無効化されなかった前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を前記無効量に基づいて算出し、前記出力飽和によって無効化されない前記リミット処理前の第2の操作量の範囲内に前記無効量の相当分が配分されるように、前記比率を前記第2の診断指標に乗算した
前記補正値を、前記第2のフィードフォワード量の補正のための値として推定し、推定した値を補正後の第2の診断指標とするステップを含むことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、フィードバック制御とフィードフォワード制御とを併用する制御装置および制御方法に関するものである。
【背景技術】
【0002】
代表的なフィードバック(Feedback)制御であるPID制御に、フィードフォワード(Feedforward)分を加算する方法(以下、フィードフォワード+フィードバック制御とする)が提案されている(特許文献1参照)。
【0003】
発明者は、このようなフィードフォワード+フィードバック制御を特に
図17のような加熱装置に適用する場合において、実用性を向上させるために、操作量MVの下限値OL、上限値OHを通常値に漸近的に収束させる形式のフィードフォワード方法(特許文献2)と、フィードフォワード量MV_Pをゼロに漸近的に収束させる形式のフィードフォワード方法(特許文献3)とを提案した。
【0004】
図17の加熱装置は、処理対象のワークを加熱する熱処理炉100と、電気ヒータ101と、熱処理炉100内の温度を計測する温度センサ102と、熱処理炉100内の温度を制御する温調計103と、電力調整器104と、電力供給回路105と、加熱装置全体を制御するPLC(Programmable Logic Controller)106とから構成される。温調計103は、温度センサ102が計測した温度PV(制御量)が温度設定値SPと一致するように操作量MVを算出する。電力調整器104は、操作量MVに応じた電力を決定し、この決定した電力を電力供給回路105を通じて電気ヒータ101に供給する。
【0005】
発明者が特許文献3で提案したフィードフォワード+フィードバック制御は、典型的なフィードフォワード制御に近い。
図18の制御系のブロック線図を用いて、発明者が特許文献3で提案した技術について説明する。
図18のPは制御対象を示している。
【0006】
操作量算出部201は、設定値SPと制御量PVとを入力として、制御量PVが設定値SPと一致するように、例えば以下の伝達関数式のようなPID制御演算を行って操作量MV(本発明では、基本操作量MVとする)を算出する。
MV=(100/Pb){1+(1/Tis)+Tds}(SP-PV)
・・・(1)
Pbは比例帯、Tiは積分時間、Tdは微分時間、sはラプラス演算子である。
【0007】
加算量算出部204は、基本操作量MVに対するフィードフォワード分の加算量の目標値である操作量加算値FF_P(FF_P≠0)が入力されると、操作量加算値FF_Pに近づいた後にゼロ値へと徐々に収束する操作量加算量MV_Pを算出する。具体的には、加算量算出部204は、下記のような伝達関数式で操作量加算量MV_Pを算出する。
MV_P={Kxs/(1+Tfs)2}FF_P ・・・(2)
【0008】
式(2)のTfは、操作量加算量MV_Pを徐々に収束させる時間を規定するパラメータである。Kxはフィードフォワードの大きさを規定するパラメータである。操作量加算量MV_Pの変化の1例を
図19に示す。
図19の例では、操作量加算値FF_P=50%、パラメータTf=100sec.、パラメータKx=275としている。
【0009】
減算量算出部205は、基本操作量MVに対するフィードフォワード分の減算量の目標値である操作量減算値FF_M(FF_M≠0)が入力されると、操作量減算値FF_Mに近づいた後にゼロ値へと徐々に収束する操作量減算量MV_Mを算出する。具体的には、減算量算出部205は、下記のような伝達関数式で操作量減算量MV_Mを算出する。
MV_M={Kxs/(1+Tfs)2}FF_M ・・・(3)
【0010】
式(3)のTfは、操作量減算量MV_Mを徐々に収束させる時間を規定するパラメータである。操作量変更部206は、操作量算出部201で算出された基本操作量MVに、加算量算出部204によって算出された操作量加算量MV_Pを加算し、さらに減算量算出部205によって算出された操作量減算量MV_Mを減算した結果を操作量MV_F(本発明では、実操作量MV_Fとする)として算出する。
MV_F=MV+MV_P-MV_M ・・・(4)
【0011】
リミット処理部207は、操作量変更部206によって算出された実操作量MV_Fを所定の操作量下限値OL以上の値に制限する下限リミット処理と、実操作量MV_Fを所定の操作量上限値OH以下の値に制限する上限リミット処理とを行なう。このリミット処理部207でリミット処理された実操作量MV_F’が制御対象Pに出力される。
【0012】
特許文献3で提案した技術によれば、基本操作量MVにフィードフォワード分の変更を施して、一定時間経過後にフィードフォワード分を0%に戻すような不連続な制御で発生する不具合を低減することができる。
【0013】
ただし、制御技術の専門家ではない通常のオペレータ(制御技術ユーザ)が、フィードフォワード制御の実行結果を適切に評価できることはほとんどない。特にフィードフォワード分の操作量加算量(本発明では、特許文献3と区別するため、フィードフォワード量MV_Xとする)は、適切に診断しながら修正されなければならない。言うまでもなく、フィードフォワード量MV_Xに対し外乱が変化すれば、フィードフォワード制御の効果は劣化する。しかしながら、制御技術の専門家ではない通常のオペレータにとって、フィードフォワード量MV_Xを適切に修正して、フィードフォワード制御の効果を高めることは困難であった。
【先行技術文献】
【特許文献】
【0014】
【文献】特開2007-102816号公報
【文献】特開2019-101846号公報
【文献】特開2019-101847号公報
【発明の概要】
【発明が解決しようとする課題】
【0015】
本発明は、上記課題を解決するためになされたもので、フィードフォワード量の妥当性を合理的に診断することができる制御装置および制御方法を提供することを目的とする。
【課題を解決するための手段】
【0016】
本発明の制御装置は、設定値と制御量とを入力として第1の操作量を制御周期毎に算出するように構成された操作量算出部と、外乱の印加前に有意の値となり外乱の印加後に非有意の値となるトリガー変数の入力に応じて、ステップ外乱の抑制に必要な第1のフィードフォワード量とインパルス外乱の抑制に必要な第2のフィードフォワード量との和を第3のフィードフォワード量として制御周期毎に算出するように構成されたフィードフォワード算出部と、前記操作量算出部によって算出された前記第1の操作量に前記第3のフィードフォワード量を制御周期毎に加算するように構成されたフィードフォワード実行部と、前記第1の操作量に前記第3のフィードフォワード量を加算した第2の操作量を制御対象に出力するように構成された操作量出力部と、前記トリガー変数が有意の値になったときの外乱リカバリー応答前の整定時の前記第2の操作量と外乱リカバリーの整定後の前記第2の操作量の差を、前記第1のフィードフォワード量の算出のための第1のパラメータとして推定し、推定した第1のパラメータを第1の診断指標とするように構成された第1の推定部と、前記第1の推定部によって推定された値と同じ前記第1のパラメータが前記フィードフォワード算出部に設定済みで前記トリガー変数が有意の値になったときに設定済みの前記第1のパラメータに基づいて前記第1のフィードフォワード量が出力されたと仮定したときの前記第2の操作量の整定までの前記第1のフィードフォワード量の各制御周期の積算値である総量を算出するように構成された総量算出部と、前記トリガー変数が有意の値になった期間における前記第2の操作量の整定までの前記第2の操作量の各制御周期の変化量の積算値である総量から前記第1のフィードフォワード量の総量を減算し、前記制御周期に前記減算の結果を乗算した値を、前記第2のフィードフォワード量の算出のための第2のパラメータとして推定し、推定した第2のパラメータを第2の診断指標とするように構成された第2の推定部と、前記トリガー変数が有意の値になった期間において前記第2の操作量の整定までに前記フィードフォワード算出部によって制御周期毎に算出された前記第2のフィードフォワード量のうち、前記第2の操作量が操作量上限値を上回る出力飽和または操作量下限値を下回る出力飽和のいずれかによって無効化された分の積算値である無効量を算出するように構成された無効量算出部と、前記トリガー変数が有意の値になった期間において前記第2の操作量の整定までに前記フィードフォワード算出部によって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量と前記出力飽和によって無効化されなかった前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を前記無効量に基づいて算出し、前記出力飽和によって無効化されない前記第2の操作量の範囲内に前記無効量の相当分が配分されるように、前記比率を前記第2の診断指標に乗算した補正値を、前記第2のフィードフォワード量の補正のための値として推定し、推定した値を補正後の第2の診断指標とするように構成された補正部と、前記第1の診断指標と前記補正後の第2の診断指標とを提示するように構成された診断指標提示部とを備えることを特徴とするものである。
【0017】
また、本発明の制御装置の1構成例は、前記フィードフォワード算出部に設定されている前記第1のパラメータを前記第1の診断指標の値に修正し、前記フィードフォワード算出部に設定されている前記第2のパラメータを前記補正後の第2の診断指標の値に修正し、前記フィードフォワード算出部に設定されている、前記第2のフィードフォワード量を徐々に収束させる時間を規定する時定数を、時定数の補正値に修正するように構成された修正部をさらに備え、前記補正部は、前記補正後の第2の診断指標を算出すると共に、前記時定数に前記比率を乗算した値を前記時定数の補正値として算出することを特徴とするものである。
また、本発明の制御装置の1構成例において、前記第2のフィードフォワード量は、前記第2のパラメータをKx2、前記第2のフィードフォワード量を徐々に収束させる時間を規定する時定数をTf、前記時定数を調整する係数をA、前記トリガー変数をFF_X、ラプラス演算子をsとしたとき、[Kx2s/{(1+ATfs)(1+(2.0-A)Tfs)}]FF_Xにより算出されることを特徴とするものである。
また、本発明の制御装置の1構成例において、前記補正部は、前記無効量をFF_N、前記第1の操作量と前記第1、第2、第3のフィードフォワード量との算出周期である前記制御周期をdt、前記比率をRHとしたとき、前記比率RHをKx2/(Kx2-FF_N×dt)により算出し、前記補正後の第2の診断指標として、前記第2のパラメータKx2の補正値をKx2×RHにより算出し、前記時定数Tfに前記比率RHを乗算した値Tf×RHを前記時定数Tfの補正値として算出することを特徴とするものである。
また、本発明の制御装置の1構成例において、前記第1のフィードフォワード量は、前記第1のパラメータをKx1、前記第1のフィードフォワード量を徐々に収束させる時間を規定する時定数をTf、前記時定数を調整する係数をA、前記トリガー変数をFF_X、ラプラス演算子をsとしたとき、[Kx1/{(1+ATfs)(1+(2.0-A)Tfs)}]FF_Xにより算出されることを特徴とするものである。
【0018】
また、本発明の制御装置の1構成例は、前記無効量と、前記トリガー変数が有意の値になった期間において前記第2の操作量の整定までに前記フィードフォワード算出部によって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を、第3の診断指標として算出するように構成された指標比率算出部をさらに備え、前記診断指標提示部は、前記第1の診断指標と前記補正後の第2の診断指標に加えて前記第3の診断指標を提示することを特徴とするものである。
また、本発明の制御装置の1構成例は、前記フィードフォワード実行部によって算出された第2の操作量を前記操作量下限値以上で前記操作量上限値以下の値に制限するリミット処理を行なうリミット処理部をさらに備え、前記操作量出力部は、前記リミット処理された第2の操作量を制御対象に出力し、前記第1の推定部と前記総量算出部と前記第2の推定部とは、前記リミット処理された第2の操作量を入力として処理を行い、前記無効量算出部は、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記フィードフォワード算出部によって制御周期毎に算出された前記第2のフィードフォワード量のうち、前記リミット処理前の第2の操作量が前記操作量上限値を上回る出力飽和または前記操作量下限値を下回る出力飽和のいずれかによって無効化された分の積算値である前記無効量を算出し、前記補正部は、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記フィードフォワード算出部によって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量と前記出力飽和によって無効化されなかった前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を前記無効量に基づいて算出し、前記出力飽和によって無効化されない前記リミット処理前の第2の操作量の範囲内に前記無効量の相当分が配分されるように、前記比率を前記第2の診断指標に乗算した前記補正値を、前記第2のフィードフォワード量の補正のための値として推定し、推定した値を補正後の第2の診断指標とすることを特徴とするものである。
また、本発明の制御装置の1構成例は、前記フィードフォワード実行部によって算出された第2の操作量を前記操作量下限値以上で前記操作量上限値以下の値に制限するリミット処理を行なうリミット処理部をさらに備え、前記操作量出力部は、前記リミット処理された第2の操作量を制御対象に出力し、前記第1の推定部と前記総量算出部と前記第2の推定部と前記指標比率算出部とは、前記リミット処理された第2の操作量を入力として処理を行い、前記無効量算出部は、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記フィードフォワード算出部によって制御周期毎に算出された前記第2のフィードフォワード量のうち、前記リミット処理前の第2の操作量が前記操作量上限値を上回る出力飽和または前記操作量下限値を下回る出力飽和のいずれかによって無効化された分の積算値である前記無効量を算出し、前記補正部は、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記フィードフォワード算出部によって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量と前記出力飽和によって無効化されなかった前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を前記無効量に基づいて算出し、前記出力飽和によって無効化されない前記リミット処理前の第2の操作量の範囲内に前記無効量の相当分が配分されるように、前記比率を前記第2の診断指標に乗算した前記補正値を、前記第2のフィードフォワード量の補正のための値として推定し、推定した値を補正後の第2の診断指標とすることを特徴とするものである。
【0019】
また、本発明の制御方法は、設定値と制御量とを入力として第1の操作量を制御周期毎に算出する第1のステップと、外乱の印加前に有意の値となり外乱の印加後に非有意の値となるトリガー変数の入力に応じて、ステップ外乱の抑制に必要な第1のフィードフォワード量とインパルス外乱の抑制に必要な第2のフィードフォワード量との和を第3のフィードフォワード量として制御周期毎に算出する第2のステップと、前記第1の操作量に前記第3のフィードフォワード量を制御周期毎に加算する第3のステップと、前記第1の操作量に前記第3のフィードフォワード量を加算した第2の操作量を制御対象に出力する第4のステップと、前記トリガー変数が有意の値になったときの外乱リカバリー応答前の整定時の前記第2の操作量と外乱リカバリーの整定後の前記第2の操作量の差を、前記第1のフィードフォワード量の算出のための第1のパラメータとして推定し、推定した第1のパラメータを第1の診断指標とする第5のステップと、前記第5のステップで推定した値と同じ前記第1のパラメータが設定済みで前記トリガー変数が有意の値になったときに設定済みの前記第1のパラメータに基づいて前記第1のフィードフォワード量が出力されたと仮定したときの前記第2の操作量の整定までの前記第1のフィードフォワード量の各制御周期の積算値である総量を算出する第6のステップと、前記トリガー変数が有意の値になった期間における前記第2の操作量の整定までの前記第2の操作量の各制御周期の変化量の積算値である総量から前記第1のフィードフォワード量の総量を減算し、前記制御周期に前記減算の結果を乗算した値を、前記第2のフィードフォワード量の算出のための第2のパラメータとして推定し、推定した第2のパラメータを第2の診断指標とする第7のステップと、前記トリガー変数が有意の値になった期間において前記第2の操作量の整定までに前記第2のステップによって制御周期毎に算出された前記第2のフィードフォワード量のうち、前記第2の操作量が操作量上限値を上回る出力飽和または操作量下限値を下回る出力飽和のいずれかによって無効化された分の積算値である無効量を算出する第8のステップと、前記トリガー変数が有意の値になった期間において前記第2の操作量の整定までに前記第2のステップによって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量と前記出力飽和によって無効化されなかった前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を前記無効量に基づいて算出し、前記出力飽和によって無効化されない前記第2の操作量の範囲内に前記無効量の相当分が配分されるように、前記比率を前記第2の診断指標に乗算した補正値を、前記第2のフィードフォワード量の補正のための値として推定し、推定した値を補正後の第2の診断指標とする第9のステップと、前記第1の診断指標と前記補正後の第2の診断指標とを提示する第10のステップとを含むことを特徴とするものである。
【0020】
また、本発明の制御方法の1構成例は、前記第2のステップにおいて前記第1のフィードフォワード量を算出するために設定されている前記第1のパラメータを前記第1の診断指標の値に修正し、前記第2のステップにおいて前記第2のフィードフォワード量を算出するために設定されている前記第2のパラメータを前記補正後の第2の診断指標の値に修正し、前記第2のステップにおいて前記第2のフィードフォワード量を算出するために設定されている、前記第2のフィードフォワード量を徐々に収束させる時間を規定する時定数を、時定数の補正値に修正する第11のステップをさらに含み、前記第9のステップは、前記補正後の第2の診断指標を算出すると共に、前記時定数に前記比率を乗算した値を前記時定数の補正値として算出するステップを含むことを特徴とするものである。
また、本発明の制御方法の1構成例において、前記第2のフィードフォワード量は、前記第2のパラメータをKx2、前記第2のフィードフォワード量を徐々に収束させる時間を規定する時定数をTf、前記時定数を調整する係数をA、前記トリガー変数をFF_X、ラプラス演算子をsとしたとき、[Kx2s/{(1+ATfs)(1+(2.0-A)Tfs)}]FF_Xにより算出されることを特徴とするものである。
また、本発明の制御方法の1構成例において、前記第9のステップは、前記無効量をFF_N、前記第1の操作量と前記第1、第2、第3のフィードフォワード量との算出周期である前記制御周期をdt、前記比率をRHとしたとき、前記比率RHをKx2/(Kx2-FF_N×dt)により算出し、前記補正後の第2の診断指標として、前記第2のパラメータKx2の補正値をKx2×RHにより算出し、前記時定数Tfに前記比率RHを乗算した値Tf×RHを前記時定数Tfの補正値として算出するステップを含むことを特徴とするものである。
また、本発明の制御方法の1構成例において、前記第1のフィードフォワード量は、前記第1のパラメータをKx1、前記第1のフィードフォワード量を徐々に収束させる時間を規定する時定数をTf、前記時定数を調整する係数をA、前記トリガー変数をFF_X、ラプラス演算子をsとしたとき、[Kx1/{(1+ATfs)(1+(2.0-A)Tfs)}]FF_Xにより算出されることを特徴とするものである。
【0021】
また、本発明の制御方法の1構成例は、前記無効量と、前記トリガー変数が有意の値になった期間において前記第2の操作量の整定までに前記第2のステップによって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を、第3の診断指標として算出する第12のステップと、前記第3の診断指標を提示する第13のステップとをさらに含むことを特徴とするものである。
また、本発明の制御方法の1構成例は、前記第3のステップによって算出された第2の操作量を前記操作量下限値以上で前記操作量上限値以下の値に制限するリミット処理を行なう第12のステップをさらに含み、前記第4のステップは、前記リミット処理された第2の操作量を制御対象に出力するステップを含み、前記第5のステップと前記第6のステップと前記第7のステップとは、前記リミット処理された第2の操作量を入力として処理を行い、前記第8のステップは、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記第2のステップによって制御周期毎に算出された前記第2のフィードフォワード量のうち、前記リミット処理前の第2の操作量が前記操作量上限値を上回る出力飽和または前記操作量下限値を下回る出力飽和のいずれかによって無効化された分の積算値である前記無効量を算出するステップを含み、前記第9のステップは、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記第2のステップによって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量と前記出力飽和によって無効化されなかった前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を前記無効量に基づいて算出し、前記出力飽和によって無効化されない前記リミット処理前の第2の操作量の範囲内に前記無効量の相当分が配分されるように、前記比率を前記第2の診断指標に乗算した前記補正値を、前記第2のフィードフォワード量の補正のための値として推定し、推定した値を補正後の第2の診断指標とするステップを含むことを特徴とするものである。
また、本発明の制御方法の1構成例は、前記第3のステップによって算出された第2の操作量を前記操作量下限値以上で前記操作量上限値以下の値に制限するリミット処理を行なう第14のステップをさらに含み、前記第4のステップは、前記リミット処理された第2の操作量を制御対象に出力するステップを含み、前記第5のステップと前記第6のステップと前記第7のステップと前記第12のステップとは、前記リミット処理された第2の操作量を入力として処理を行い、前記第8のステップは、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記第2のステップによって制御周期毎に算出された前記第2のフィードフォワード量のうち、前記リミット処理前の第2の操作量が前記操作量上限値を上回る出力飽和または前記操作量下限値を下回る出力飽和のいずれかによって無効化された分の積算値である前記無効量を算出するステップを含み、前記第9のステップは、前記トリガー変数が有意の値になった期間において前記リミット処理された第2の操作量の整定までに前記第2のステップによって算出された前記第2のフィードフォワード量の各制御周期の積算値である総量と前記出力飽和によって無効化されなかった前記第2のフィードフォワード量の各制御周期の積算値である総量との比率を前記無効量に基づいて算出し、前記出力飽和によって無効化されない前記リミット処理前の第2の操作量の範囲内に前記無効量の相当分が配分されるように、前記比率を前記第2の診断指標に乗算した前記補正値を、前記第2のフィードフォワード量の補正のための値として推定し、推定した値を補正後の第2の診断指標とするステップを含むことを特徴とするものである。
【発明の効果】
【0022】
本発明によれば、第1の推定部と総量算出部と第2の推定部と無効量算出部と補正部と診断指標提示部とを設けることにより、外乱リカバリー制御の実行結果に基づいて、ステップ外乱の抑制に必要な第1のフィードフォワード量とインパルス外乱の抑制に必要な第2のフィードフォワード量の診断指標を得ることができ、第1のフィードフォワード量と第2のフィードフォワード量の妥当性を合理的に診断することができる。
【0023】
また、本発明では、修正部を設けることにより、適応的な再調整機能を実現することができる。
【図面の簡単な説明】
【0024】
【
図1】
図1は、本発明の第1の実施例に係る制御装置の構成を示すブロック図である。
【
図2】
図2は、本発明の第1の実施例に係る制御系のブロック線図である。
【
図3】
図3は、本発明の第1の実施例に係る制御装置の動作を説明するフローチャートである。
【
図4】
図4は、本発明の第1の実施例に係る制御装置の動作を説明するフローチャートである。
【
図5】
図5は、本発明の第1の実施例に係るフィードフォワード量の変化の1例を示す図である。
【
図6】
図6は、本発明の第1の実施例に係るフィードフォワード量の変化の1例を示す図である。
【
図7】
図7は、本発明の第1の実施例に係るフィードフォワード量の変化の1例を示す図である。
【
図8】
図8は、本発明の第1の実施例においてフィードフォワード制御を実行せずにフィードバック制御のみを実行した場合のシミュレーション結果を示す図である。
【
図9】
図9は、本発明の第1の実施例においてフィードフォワード制御とフィードバック制御を実行した場合のシミュレーション結果を示す図である。
【
図10】
図10は、本発明の第1の実施例においてフィードフォワード制御とフィードバック制御を実行した場合のフィードフォワード量のシミュレーション結果を示す図である。
【
図11】
図11は、本発明の第1の実施例においてフィードフォワード制御とフィードバック制御を実行した場合のシミュレーション結果を示す図である。
【
図12】
図12は、本発明の第1の実施例においてフィードフォワード制御とフィードバック制御を実行した場合のシミュレーション結果を示す図である。
【
図13】
図13は、本発明の第2の実施例に係る制御装置の構成を示すブロック図である。
【
図14】
図14は、本発明の第2の実施例に係る制御装置の動作を説明するフローチャートである。
【
図15】
図15は、本発明の第2の実施例における診断指標の提示例を示す図である。
【
図16】
図16は、本発明の第1、第2の実施例に係る制御装置を実現するコンピュータの構成例を示すブロック図である。
【
図18】
図18は、フィードバック+フィードフォワードの制御系のブロック線図である。
【
図19】
図19は、フィードバック+フィードフォワード制御における操作量加算量の変化の1例を示す図である。
【発明を実施するための形態】
【0025】
[発明の原理1]
本発明では、特許文献3で提案した技術などが特に適用対象とする外乱リカバリー応答を適用対象とする。適用対象の外乱には、大きく分けてインパルス外乱とステップ外乱の2種類がある。
【0026】
インパルス外乱は、外乱リカバリー応答の前後で整定時の実操作量MV_Fにほぼ変化が生じない外乱であり、一時的かつ衝撃のような外乱である。ステップ外乱は、外乱リカバリー応答の前後で整定時の実操作量MV_Fに顕著な変化が生じる外乱であり、整定状態という平衡点自体が変化する外乱である。なお、特許文献3で提案した技術は、インパルス外乱に特に適している。
【0027】
インパルス外乱のみであれば、フィードバック制御のみによる外乱リカバリー制御(制御量PVを設定値SPに復帰させる制御)での実操作量MV_Fの変化量総量ΔMV_impを目安にフィードフォワード量MV_Xを適正化できる。また、ステップ外乱のみであれば、フィードバック制御のみによる外乱リカバリー応答前後の実操作量差ΔMV_stpを目安にフィードフォワード量MV_Xを適正化できる。特に調整が難しいのは、インパルス外乱とステップ外乱の両方が同時に発生する外乱(本発明では混合外乱とする)である。
【0028】
発明者は、鋭意研究の結果、以下の(I)、(II)の手順でフィードフォワード量MV_Xを推定できることを突き止め、(I)、(II)の手順の制御方法を提案した(特願2020-016891)。
【0029】
(I)少なくともフィードバック制御による外乱リカバリー制御(またはフィードバック制御のみの外乱リカバリー制御)を実行し、外乱リカバリー応答前後の実操作量差ΔMV_stpを目安にステップ外乱に必要なフィードフォワード量MV_X1を推定する。
【0030】
(II)上記(I)で実行した外乱リカバリー制御において、実操作量MV_Fの変化量総量ΔMV_allを算出し、(I)で推定したステップ外乱に必要なフィードフォワード量MV_X1の総量MV_X1_allを減算した実操作量MV_Fの変化量総量ΔMV_impを目安にインパルス外乱に必要なフィードフォワード量MV_X2を推定する。
【0031】
上記の(I)、(II)の手順により、フィードフォワード量MV_Xの概ね適切な推定が可能である。ただし、
図19のようなフィードフォワード量は実操作量MV_Fを一時的に大きく変動させる動作になるので、実操作量MV_Fの上限値OHあるいは下限値OLを超える出力飽和に至る可能性が高い。出力飽和が生じた場合、想定されているフィードフォワード量が確保できなくなる。すなわち、特に診断が難しいのは、インパルス外乱に必要なフィードフォワード量が出力飽和による影響を受けてしまう場合である。
【0032】
発明者は、鋭意研究の結果、以下の(III)、(IV)、(V)の手順でフィードフォワード量MV_Xについてほぼ適正な監視・診断および再調整ができることを突き止めた。なお、本発明では、外乱印加のタイミングが既知であることにより、フィードフォワード動作を加えるタイミングを、自動決定できることを前提とする。また、本発明では、フィードバック制御として例えばPID制御を採用することにより、コントローラパラメータであるPIDパラメータに基づいて、フィードフォワード量MV_Xを収束させる時間のパラメータTfを、一意的に自動決定できることを前提とする。すなわち、本発明では、再現性が得られずに変化するのは外乱の極性および大きさのみとする。
【0033】
(III)ステップ外乱とインパルス外乱に対するフィードフォワード制御とフィードバック制御により外乱リカバリー制御を実行し、外乱リカバリー応答前後の実操作量差ΔMV_stpに基づきステップ外乱に必要なフィードフォワード量MV_X1の適正さを診断する指標を算出する。理論的には、適正なフィードフォワード量MV_X1は、実操作量差ΔMV_stpに比例する。
【0034】
(IV)上記(III)の手順で求めた診断指標に基づいて想定できるステップ外乱に必要なフィードフォワード量MV_X1の総量MV_X1_allを減算した実操作量MV_Fの変化量総量ΔMV_impに基づき、インパルス外乱に必要なフィードフォワード量MV_X2の適正さを診断する指標を算出する。理論的には、適正なフィードフォワード量MV_X2は、実操作量MV_Fの変化量総量ΔMV_impに概ね比例する。
【0035】
(V)上記(III)の手順で実行した外乱リカバリー制御において、出力飽和により無効化されたフィードフォワード量の総量(無効量FF_N)とインパルス外乱に対するフィードフォワード量MV_X2とにより算出される比率RHを目安に、出力飽和により無効化されない範囲内に無効量FF_Nの相当分が配分されるように、上記(IV)の手順で求めた診断指標であるフィードフォワード量MV_X2の補正量を補正後の診断指標として算出する。
【0036】
上記の(III)、(IV)、(V)の手順により、フィードフォワード量MV_X(MV_X1+MV_X2H)の妥当性を合理的に診断できる。実用上は、外乱リカバリー制御と監視を繰り返す中で、統計的に信頼性のある判定を行ない、必要に応じてフィードフォワード量MV_Xを適宜修正するのが好ましい。
【0037】
[発明の原理2]
上記のように汎用性を考えて出力飽和を想定した場合、ステップ外乱に必要なフィードフォワード量MV_X1とインパルス外乱に必要なフィードフォワード量MV_X2を個別に監視対象とするだけではなく、無効量FF_Nに関する比率RXも監視対象とするのが好ましい。これにより、フィードフォワード制御の有効性の変化も監視することができる。
【0038】
[第1の実施例]
以下、本発明の実施例について図面を参照して説明する。
図1は本発明の第1の実施例に係る制御装置の構成を示すブロック図である。本実施例は、上記発明の原理1に対応する例である。制御装置は、設定値SPと制御量PVとを入力として基本操作量MV(第1の操作量)をPID演算により算出する操作量算出部1と、外乱の印加前に有意の値となり外乱の印加後に非有意の値となるトリガー変数FF_Xの入力に応じて、ステップ外乱の抑制に必要なフィードフォワード量MV_X1(第1のフィードフォワード量)とインパルス外乱の抑制に必要なフィードフォワード量MV_X2(第2のフィードフォワード量)との和をフィードフォワード量MV_X(第3のフィードフォワード量)として算出するフィードフォワード算出部2と、操作量算出部1によって算出された基本操作量MVにフィードフォワード量MV_Xを加算して実操作量MV_F(第2の操作量)とするフィードフォワード実行部3とを備えている。
【0039】
また、制御装置は、トリガー変数FF_Xが有意の値になったときの外乱リカバリー応答前後の実操作量差ΔMV_stpに基づいて、フィードフォワード量MV_X1の算出のためのパラメータKx1(第1のパラメータ)を第1の診断指標として推定するステップ対応推定部4(第1の推定部)と、ステップ対応推定部4によって推定された値と同じパラメータKx1がフィードフォワード算出部2に設定済みでトリガー変数FF_Xが有意の値になったときに設定済みのパラメータKx1に基づいてフィードフォワード量MV_X1が出力されたと仮定したときのフィードフォワード量MV_X1の総量MV_X1_allを算出する総量算出部5と、トリガー変数FF_Xが有意の値になった期間における実操作量MV_Fの変化量総量ΔMV_allからフィードフォワード量MV_X1の総量MV_X1_allを減算した結果ΔMV_impに基づいて、フィードフォワード量MV_X2の算出のためのパラメータKx2(第2のパラメータ)を第2の診断指標として推定するインパルス対応推定部6(第2の推定部)とを備えている。
【0040】
さらに、制御装置は、トリガー変数FF_Xが有意の値になった期間においてフィードフォワード算出部2によって算出されたフィードフォワード量MV_X2のうち、実操作量MV_Fが操作量上限値OHを上回る出力飽和または操作量下限値OLを下回る出力飽和のいずれかによって無効化された総量である無効量FF_Nを算出する無効量算出部7と、トリガー変数FF_Xが有意の値になった期間においてフィードフォワード算出部2によって算出されたフィードフォワード量MV_X2の総量と出力飽和によって無効化されなかったフィードフォワード量MV_X2の総量との比率を無効量FF_Nに基づいて算出し、出力飽和によって無効化されない実操作量MV_Fの範囲内に無効量FF_Nの相当分が配分されるように、比率に基づいてフィードフォワード量MV_X2の補正のためのパラメータを補正後の第2の診断指標として推定するインパルス対応補正部8と、ステップ対応推定部4とインパルス対応補正部8の推定結果を出力する推定結果出力部9と、第1の診断指標と補正後の第2の診断指標をオペレータに対して提示する診断指標提示部10と、診断指標に基づきフィードフォワード算出部2の設定を修正する適応修正部11とを備えている。
【0041】
さらに、制御装置は、フィードフォワード実行部3で算出された実操作量MV_Fを操作量下限値OL以上で操作量上限値OH以下の値に制限するリミット処理を行なうリミット処理部12と、リミット処理された実操作量MV_F’(第2の操作量)を制御対象に出力する操作量出力部13とを備えている。
図2は本実施例の制御系のブロック線図である。
図2のPは制御対象を示している。
【0042】
次に、本実施例の制御装置の動作を
図3、
図4を参照して説明する。設定値SP(例えば温度設定値)は、制御装置のオペレータなどによって設定され、操作量算出部1に入力される(
図3ステップS100)。
【0043】
制御量PV(例えば温度計測値)は、図示しない計測器(例えば被加熱物の温度を計測する温度センサ)によって計測され、操作量算出部1に入力される(
図3ステップS101)。
【0044】
操作量算出部1は、設定値SPと制御量PVとを入力として、制御量PVが設定値SPと一致するように、例えば以下の伝達関数式のようなPID演算を行って基本操作量MVを算出する(
図3ステップS102)。
MV=(100/Pb){1+(1/Tis)+Tds}(SP-PV)
・・・(5)
Pbは比例帯、Tiは積分時間、Tdは微分時間、sはラプラス演算子である。
【0045】
フィードフォワード算出部2は、フィードフォワード制御の実行時にフィードフォワード量MV_Xを算出するが、外乱の印加前に1(有意の値)となり外乱の印加後に0(非有意の値)となるトリガー変数FF_Xが0の場合(
図3ステップS103においてNO)、フィードバック制御のみでフィードフォワード制御を実行しないものとして、フィードフォワード量MV_Xを0にする(
図3ステップS104)。
【0046】
フィードフォワード実行部3は、操作量算出部1によって算出された基本操作量MVに、フィードフォワード算出部2によって算出されたフィードフォワード量MV_Xを加算した結果を実操作量MV_Fとして算出する(
図3ステップS105)。
MV_F=MV+MV_X ・・・(6)
【0047】
ここでは、MV_X=0なので、MV_F=MVである。リミット処理部12は、フィードフォワード実行部3によって算出された実操作量MV_Fを所定の操作量下限値OL以上の値に制限する下限リミット処理と、実操作量MV_Fを所定の操作量上限値OH以下の値に制限する上限リミット処理とを行なう(
図3ステップS106)。
IF MV_F<OL THEN MV_F’=OL ・・・(7)
IF MV_F>OH THEN MV_F’=OH ・・・(8)
つまり、リミット処理部12は、実操作量MV_Fが操作量下限値OLより小さい場合、実操作量MV_F’=OLとし、実操作量MV_Fが操作量上限値OHより大きい場合、実操作量MV_F’=OHとする。
【0048】
操作量出力部13は、リミット処理部12でリミット処理された実操作量MV_F’を制御対象に出力する(
図3ステップS107)。実操作量MV_F’の出力先は、ヒータやバルブなどの操作部(不図示)である。ヒータの場合には、実操作量MV_F’の実際の出力先は、ヒータに電力を供給する電力調整器(不図示)となる。
【0049】
ステップ対応推定部4とインパルス対応推定部6とは、フィードフォワード実行部3によって算出されリミット処理部12によって処理された実操作量MV_F’を時刻と共に記憶する(
図3ステップS108)。
【0050】
制御装置は、
図3のステップS100~S108の処理を例えばオペレータの指示によって制御が終了するまで(
図3ステップS109においてYES)、制御周期毎に実行する。
【0051】
次に、トリガー変数FF_Xが1(有意の値)になったときの動作を説明する。本実施例では、外乱印加のタイミングが既知であることにより、フィードフォワード制御の実行のタイミングを自動決定できることを前提としており、本実施例の制御装置が適用されるシステムにおいて、制御中に想定される外乱を抑制するために、外部機器から制御装置に対して規定のタイミングでトリガー変数FF_X=1が自動的に入力される。
【0052】
例えば薬品の製造装置において、薬品製造の炉の扉が開くことによって炉内の温度が変動するという状況がある。この場合、炉の温度を制御する制御装置(外部機器)は、炉の扉が開くタイミング(外乱印加のタイミング)よりも前の時点で本実施例の制御装置に対してトリガー変数FF_X=1を送信する。
【0053】
同様に、設定値SP(温度設定値)が一定のリフロー炉において、はんだ付けの対象となるプリント基板が定期的に投入されることによって温度が変動するという状況がある。この場合、プリント基板の搬送を制御する制御装置(外部機器)は、リフロー炉にプリント基板が投入されるタイミング(外乱印加のタイミング)よりも前の時点で本実施例の制御装置に対してトリガー変数FF_X=1を送信する。
【0054】
また、外部機器は、外乱の印加が終了した時点から所定時間後にトリガー変数FF_Xを0(非有意の値)にする。このトリガー変数FF_Xを0にするタイミングは、外乱印加後に実操作量MV_F’が整定するタイミングよりも後のタイミングに設定する必要がある。
なお、外乱印加のタイミングに対してトリガー変数FF_Xを1にするタイミングをどの程度前にすべきかについては後述する。
【0055】
フィードフォワード算出部2は、トリガー変数FF_Xが0から1になったとき(ステップS103においてYES)、フィードフォワード+フィードバック制御を実行するため、下記の式(9)によりステップ外乱の抑制に必要なフィードフォワード量MV_X1を算出する(
図4ステップS110)。このフィードフォワード量MV_X1の算出と同時に、フィードフォワード算出部2は、下記の式(10)によりインパルス外乱の抑制に必要なフィードフォワード量MV_X2を算出する(
図4ステップS111)。
【0056】
ステップ外乱の抑制に必要なフィードフォワード量MV_X1の算出式は次式のようになる。
MV_X1
=[Kx1/{(1+ATfs)(1+(2.0-A)Tfs)}]FF_X
・・・(9)
【0057】
また、インパルス外乱の抑制に必要なフィードフォワード量MV_X2の算出式は次式のようになる。
MV_X2
=[Kx2s/{(1+ATfs)(1+(2.0-A)Tfs)}]FF_X
・・・(10)
【0058】
式(9)、式(10)において、Tfはフィードフォワード量MV_X1,MV_X2を徐々に収束させる時間を規定するパラメータ(時定数)である。時定数Tfは、フィードバック制御系などの情報に基づいて事前に設定しておくことができる。
【0059】
式(9)、式(10)のAは時定数Tfのバランスを調整する係数(Aは0より大きい実数)である。本実施例では、A=1.0としている。
パラメータKx1は、ステップ外乱の抑制に必要なフィードフォワード量MV_X1の算出のためのパラメータであり、基本操作量MVに対するフィードフォワード分の加減算量の実質的に目標値である。式(9)により、フィードフォワード量MV_X1は、ゼロ値からパラメータKx1の値へと徐々に収束する。
【0060】
また、式(10)のKx2は、インパルス外乱の抑制に必要なフィードフォワード量MV_X2の算出のためのパラメータであり、基本操作量MVに対するフィードフォワード分の加減算量の総量(各制御周期の加減算量の積算値)の実質的に目標値である。式(10)により、フィードフォワード量MV_X2は、その総量(各制御周期の積算値)がパラメータKx2の値に近づいた後に、フィードフォワード量MV_X2自体はゼロ値へと徐々に収束する。式(9)、式(10)は、フィードフォワード算出部2に記憶されている。
【0061】
次に、フィードフォワード量MV_X1,MV_X2の算出後、フィードフォワード算出部2は、次式のようにフィードフォワード量MV_X1とMV_X2とを加算したフィードフォワード量MV_Xを算出する(
図4ステップS112)。
MV_X=MV_X1+MV_X2 ・・・(11)
【0062】
なお、本実施例では、少なくともインパルス外乱対応のフィードフォワード制御とフィードバック制御で外乱リカバリー制御を実行すればよく、ステップ外乱対応のフィードフォワード制御を実行しなくてもよい。パラメータKx1が0で、パラメータKx2が0以外の値に設定されている場合、フィードフォワード量MV_X1が0になるので、外乱リカバリー制御として、インパルス外乱対応のフィードフォワード制御とフィードバック制御とが実行される。MV_X1=0とするかどうかは外乱に応じて適宜決定すればよい。
【0063】
図4のステップS113~S115の処理は、ステップS105~S107の処理と同じである。ステップ対応推定部4とインパルス対応推定部6と無効量算出部7とインパルス対応補正部8とは、フィードフォワード実行部3によって算出されリミット処理部12によって処理された実操作量MV_F’と、フィードフォワード算出部2によって算出されたフィードフォワード量MV_X2,MV_Xとを、時刻と共に記憶する(
図4ステップS116)。
こうして、制御装置は、トリガー変数FF_Xが1のときに、ステップS100~S102,S110~S116の処理を制御周期毎に実行する。
【0064】
次に、ステップ対応推定部4は、トリガー変数FF_Xが1になった外乱リカバリー制御において、実操作量MV_F’が整定したと判定した場合(
図4ステップS117においてYES)、外乱リカバリー応答前後の実操作量差ΔMV_stpを算出する(
図4ステップS118)。実操作量差ΔMV_stpは、ステップS117において整定したと判定したときの実操作量MV_F’の整定値と外乱印加前の実操作量MV_F’(トリガー変数FF_Xが1になる直前の実操作量MV_F’の整定値)との差である。
【0065】
そして、ステップ対応推定部4は、ステップ外乱の抑制に必要なフィードフォワード量MV_X1の算出のためのパラメータKx1の適正値を診断指標Kx1newとして推定する(
図4ステップS119)。
Kx1new=ΔMV_stp ・・・(12)
すなわち、本実施例では、ステップ対応推定部4は、実操作量差ΔMV_stpをそのまま診断指標Kx1newとする。
【0066】
推定結果出力部9は、ステップ対応推定部4によって推定された診断指標Kx1newの値を診断指標提示部10と適応修正部11とに出力する。診断指標提示部10は、ステップ対応推定部4によって推定された診断指標Kx1newの値をオペレータに対して提示する(
図4ステップS120)。
【0067】
適応修正部11は、フィードフォワード算出部2に設定されているパラメータKx1の値を、ステップ対応推定部4によって推定された診断指標Kx1newの値に修正する(
図4ステップS121)。
【0068】
ただし、適応修正部11によるパラメータKx1の自動修正は本発明において必須の構成要件ではない。例えば診断指標提示部10によって画面に表示された診断指標Kx1newの値をオペレータに確認させた上でオペレータが手動でパラメータKx1の値を修正してもよい。あるいは、統計的に信頼性のある判定を行なうために、パラメータKx1の修正自体は一旦保留してもよい。
【0069】
次に、総量算出部5は、ステップ対応推定部4によって推定された値と同じパラメータKx1がフィードフォワード算出部2に設定済みでトリガー変数FF_Xが1になったときに設定済みのパラメータKx1に基づいてフィードフォワード量MV_X1が出力されたと仮定したときの実操作量MV_F’の整定までのフィードフォワード量MV_X1の総量MV_X1_all(各制御周期の加減算量の積算値)を算出する(
図4ステップS122)。
【0070】
つまり、トリガー変数FF_Xが1になり、実操作量MV_F’が整定した後にステップ対応推定部4によって診断指標Kx1newが推定されるので、トリガー変数FF_Xが1になった時点では診断指標Kx1newと同じ値のパラメータKx1がフィードフォワード算出部2に設定されていない可能性がある。これに対して、総量算出部5は、トリガー変数FF_Xが1になる前に診断指標Kx1newと同じ値のパラメータKx1がフィードフォワード算出部2に設定されており、トリガー変数FF_Xが1になったときにステップS110の処理によりフィードフォワード量MV_X1が算出され出力されると仮定したときの実操作量MV_F’の整定までの総量MV_X1_allを算出する。
【0071】
インパルス対応推定部6は、外乱印加前の実操作量MV_F’(トリガー変数FF_Xが1になる直前の実操作量MV_F’の整定値)に対して、トリガー変数FF_Xが1になった外乱リカバリー制御における実操作量MV_F’の変化量総量ΔMV_all(各制御周期の変化量の積算値)を、記憶している実操作量MV_F’の時系列データに基づいて算出する(
図4ステップS123)。
【0072】
続いて、インパルス対応推定部6は、ステップS123で算出した実操作量MV_F’の変化量総量ΔMV_allから総量算出部5によって算出されたフィードフォワード量MV_X1の総量MV_X1_allを減算した変化量総量ΔMV_impを算出する(
図4ステップS124)。
ΔMV_imp=ΔMV_all-MV_X1_all ・・・(13)
【0073】
さらに、インパルス対応推定部6は、インパルス外乱の抑制に必要なフィードフォワード量MV_X2の算出のためのパラメータKx2の適正値を診断指標Kx2newとして推定する(
図4ステップS125)。
Kx2new=ΔMV_imp×dt ・・・(14)
【0074】
式(14)において、dtは制御周期(基本操作量MVとフィードフォワード量MV_X1,MV_X2,MV_Xの算出周期)であり、単位はsec.である。
次に、無効量算出部7は、トリガー変数FF_Xが1になった外乱リカバリー制御において、実操作量MV_F’が整定したときに、実操作量MV_F’の整定までにフィードフォワード算出部2によって算出されたフィードフォワード量MV_X2のうち、実操作量MV_Fが操作量上限値OHを上回る出力飽和または操作量下限値OLを下回る出力飽和のいずれかによって無効化された総量である無効量FF_Nを算出する(
図4ステップS126)。
【0075】
具体的には、無効量算出部7は、実操作量MV_Fが操作量上限値OHを上回る出力飽和の場合、制御周期毎に得られたフィードフォワード量MV_Xと操作量上限値OHとの差分MV_X-OHのうち正の差分の積算値を無効量FF_Nとすればよい。また、無効量算出部7は、実操作量MV_Fが操作量下限値OLを下回る出力飽和の場合、制御周期毎に得られたフィードフォワード量MV_Xと操作量上限値OHとの差分MV_X-OLのうち負の差分の積算値を無効量FF_Nとすればよい。
【0076】
なお、出力飽和においては、フィードフォワード量MV_X2だけでなく、基本操作量MVまたはフィードフォワード量MV_X1が部分的に無効化される場合が有り得る。しかしながら、本発明のフィードフォワード+フィードバック制御において出力飽和を生じる実操作量MV_Fの急峻な立ち上がりまたは急峻な立ち下がりの殆どはフィードフォワード量MV_Xによるものであり、さらにその殆どはフィードフォワード量MV_X2によるものである。基本操作量MVとフィードフォワード量MV_X1はフィードフォワード量MV_X2よりも遅れて変化する。したがって、上記のようにフィードフォワード量MV_Xと操作量上限値OH,OLの単純な比較によって無効量FF_Nを簡易的に算出して構わない。
【0077】
次に、インパルス対応補正部8は、実操作量MV_F’の整定までにフィードフォワード算出部2によって算出されたフィードフォワード量MV_X2の総量Kx2と総量Kx2のうち出力飽和によって無効化されなかったフィードフォワード量MV_X2の総量との比率RHを、無効量FF_Nに基づいて次式のように算出する(
図4ステップS127)。
RH=Kx2/(Kx2-FF_N×dt) ・・・(15)
【0078】
なお、フィードフォワード量MV_X2の総量はフィードフォワード算出部2に設定されているパラメータKx2と一致するので、式(15)の計算では、フィードフォワード量MV_X2の積算で計算するのではなく、Kx2を総量としている。
【0079】
そして、インパルス対応補正部8は、出力飽和により無効化されない実操作量MV_Fの範囲内に無効量FF_Nの相当分が配分されるように、フィードフォワード量MV_X2の補正量を補正後の診断指標として算出する。より具体的には、インパルス対応補正部8は、インパルス対応推定部6によって推定された診断指標Kx2newと比率RHとに基づいてパラメータKx2の補正値Kx2Hを式(16)により推定する。また、インパルス対応補正部8は、フィードフォワード算出部2に設定されている時定数Tfと比率RHとに基づいて時定数Tfの補正値TfHを式(17)により推定する(
図4ステップS128)。
Kx2H=Kx2new×RH ・・・(16)
TfH=Tf×RH ・・・(17)
【0080】
推定結果出力部9は、インパルス対応補正部8によって推定された補正後の診断指標Kx2H,TfHの値を診断指標提示部10と適応修正部11とに出力する。
診断指標提示部10は、インパルス対応補正部8によって推定された診断指標Kx2H,TfHの値をオペレータに対して提示する(
図4ステップS129)。
【0081】
適応修正部11は、フィードフォワード算出部2に設定されているパラメータKx2の値を、インパルス対応補正部8によって推定された診断指標Kx2Hに修正し、フィードフォワード算出部2に設定されている時定数Tfの値を、インパルス対応補正部8によって推定された診断指標TfHに修正する(
図4ステップS130)。
【0082】
パラメータKx1の場合と同様に、適応修正部11によるパラメータKx2と時定数Tfの自動修正は本発明において必須の構成要件ではない。例えば診断指標提示部10によって画面に表示された診断指標Kx2H,TfHの値をオペレータに確認させた上でオペレータが手動でパラメータKx2と時定数Tfの値を修正してもよい。あるいは、統計的に信頼性のある判定を行なうために、パラメータKx2と時定数Tfの修正自体は一旦保留してもよい。
なお、ステップS118~S130の処理は、実操作量MV_F’が整定したときに1回行えばよい。
【0083】
図5はフィードフォワード量MV_X1の変化の例を示す図、
図6はフィードフォワード量MV_X2の変化の例を示す図、
図7はフィードフォワード量MV_Xの変化の例を示す図である。
図5~
図7の例では、Kx1=20.0、Kx2=3304.0、Tf=15.0sec.としている。なお、前述の総量(各制御周期の積算値)とは、
図5~
図7における曲線により囲まれる面積に相当する量である。
【0084】
以下、シミュレーションにより本実施例の効果を検証する。以下の例では、制御対象を、プロセスゲイン10.0、プロセス時定数400.0sec.、プロセスむだ時間20.0sec.の1次遅れ伝達関数で近似できる制御系とする。すなわち、制御対象のモデル数式Gpは次式のように記述できる。
Gp=10.0exp(-20.0s)/(1+400.0s) ・・・(18)
【0085】
なお、フィーフォワード制御による出力飽和が発生するように、実操作量MV_Fの上限値OHを75%に設定しておく。すなわち、75%を超える分が無効化されるという意味になる。
また、操作量算出部1に設定されるPIDパラメータを、比例帯Pb=60%、積分時間Ti=120.0sec.、微分時間Td=10.0sec.とした。制御周期dtは1.0sec.である。
【0086】
フィードフォワード制御の開始タイミング、すなわちトリガー変数FF_Xを0から1にするタイミングは、微分時間Tdに基づいて設定できる。具体的には、外乱印加の時点よりαTd前(係数αは0より大きい実数であり、例えば0.7)であることが妥当である。微分時間Td=10.0sec.の場合、フィードフォワード制御の開始タイミングは、外乱印加の時点より7.0sec.前となる。ただし、係数αは、適宜微調整され得る値である。
【0087】
同様に、時定数Tfは、微分時間Tdに基づいて設定できる。具体的には、Tf=βTd(係数βは0より大きい実数であり、例えば0.4)であることが妥当である。微分時間Td=10.0sec.の場合、時定数Tf=4.0sec.となる。ただし、係数βは、適宜微調整され得る値である。
【0088】
図8は、フィードフォワード制御を実行せずにフィードバック制御のみで温度制御した場合の制御量PVと実操作量MV_F’(=操作量MV)の変化の例を示す図である。この
図8は、フィードフォワード制御を行なわない場合の参考例を示しており、100sec.の時点で混合外乱が印加された場合のフィードバック制御による外乱リカバリー応答のシミュレーション結果を示している。混合外乱はステップ外乱を含むため、外乱リカバリー応答の前後で整定時の実操作量MV_F’(=操作量MV)に顕著な変化が生じている。
【0089】
図9は、100sec.の時点で混合外乱が印加された場合のフィードフォワード制御とフィードバック制御による外乱リカバリー応答のシミュレーション結果を示し、
図10は、
図9の場合のフィードフォワード量MV_Xのシミュレーション結果を示している。
図9、
図10の例では、フィードフォワード算出部2にパラメータKx1=15.0、Kx2=870.5、時定数Tf=4.6sec.が予め設定されていた場合を示している。
【0090】
図9、
図10の例では、外乱印加前の実操作量MV_F’=30.0%に対して外乱リカバリー応答後の実操作量MV_F’の整定値が45.0%なので、実操作量差ΔMV_stp=15.0%となる。ステップ対応推定部4は、式(12)により診断指標Kx1new=15.0と推定する(
図4ステップS119)。
【0091】
また、
図9、
図10の例では、実操作量MV_F’の変化量総量ΔMV_allからフィードフォワード量MV_X1の総量を減算した変化量総量ΔMV_imp=752.4%となる。インパルス対応推定部6は、式(14)により診断指標Kx2new=752.4と推定する(
図4ステップS125)。無効量算出部7は、無効量FF_N=118.1%と算出する(
図4ステップS126)。
【0092】
インパルス対応補正部8は、式(15)により比率RH=870.5/(870.5-118.1×1.0)=1.157と算出する(
図4ステップS127)。さらに、インパルス対応補正部8は、式(16)により補正後の診断指標Kx2H=752.4×1.157=870.5と推定し、式(17)により補正後の診断指標TfH=4.0×1.157=4.6sec.と推定する(
図4ステップS128)。
【0093】
図9、
図10の例では、フィードフォワード算出部2に予め設定されていたパラメータKx1,Kx2,Tfの値と推定した診断指標Kx1new,Kx2H,TfHの値とが等しい。このため、オペレータは、フィードフォワード量MV_Xが適正と診断することができる。
【0094】
図11は、100sec.の時点で
図9、
図10の場合よりも印加量の多い混合外乱が印加された場合のフィードフォワード制御とフィードバック制御による外乱リカバリー応答のシミュレーション結果を示している。
図9、
図10と同様に、
図11の例では、フィードフォワード算出部2にパラメータKx1=15.0、Kx2=870.5、時定数Tf=4.6sec.が予め設定されていた場合を示している。
図9、
図10の場合よりも外乱印加量が増加しており、かつ外乱印加前の整定時の実操作量MV_F’も高いので、制御結果も
図9とは異なる。
【0095】
図11の例では、外乱印加前の実操作量MV_F’=35.0%に対して外乱リカバリー応答後の実操作量MV_F’の整定値が55.0%なので、実操作量差ΔMV_stp=20.0%となる。ステップ対応推定部4は、式(12)により診断指標Kx1new=20.0と推定する(
図4ステップS119)。
【0096】
また、
図11の例では、実操作量MV_F’の変化量総量ΔMV_allからフィードフォワード量MV_X1の総量を減算した変化量総量ΔMV_imp=768.3%となる。インパルス対応推定部6は、式(14)により診断指標Kx2new=768.3と推定する(
図4ステップS125)。無効量算出部7は、無効量FF_N=220.0%と算出する(
図4ステップS126)。
【0097】
インパルス対応補正部8は、式(15)により比率RH=870.5/(870.5-220.0×1.0)=1.342と算出する(
図4ステップS127)。さらに、インパルス対応補正部8は、式(16)により補正後の診断指標Kx2H=768.3×1.342=1031.0と推定し、式(17)により補正後の診断指標TfH=4.0×1.342=5.4sec.と推定する(
図4ステップS128)。
【0098】
図11の例では、外乱印加量の増加と外乱印加前の整定時の実操作量MV_F’の上昇に伴い、フィードフォワード算出部2に予め設定されていたパラメータKx1,Kx2,Tfの値よりも推定した診断指標Kx1new,Kx2H,TfHの値が大きくなる。このため、オペレータは、フィードフォワード量MV_Xを増加させるのが妥当と診断することができる。
【0099】
図12は、100sec.の時点で
図9、
図10の場合よりも印加量の少ない混合外乱が印加された場合のフィードフォワード制御とフィードバック制御による外乱リカバリー応答のシミュレーション結果を示している。
図9、
図10と同様に、
図12の例では、フィードフォワード算出部2にパラメータKx1=15.0、Kx2=870.5、時定数Tf=4.6sec.が予め設定されていた場合を示している。
図9、
図10の場合よりも外乱印加量が減少しており、かつ外乱印加前の整定時の実操作量MV_F’も低いので、制御結果も
図9とは異なる。
【0100】
図12の例では、外乱印加前の実操作量MV_F’=22.5%に対して外乱リカバリー応答後の実操作量MV_F’の整定値が35.0%なので、実操作量差ΔMV_stp=12.5%となる。ステップ対応推定部4は、式(12)により診断指標Kx1new=12.5と推定する(
図4ステップS119)。
【0101】
また、
図11の例では、実操作量MV_F’の変化量総量ΔMV_allからフィードフォワード量MV_X1の総量を減算した変化量総量ΔMV_imp=720.3%となる。インパルス対応推定部6は、式(14)により診断指標Kx2new=720.3と推定する(
図4ステップS125)。無効量算出部7は、無効量FF_N=89.4%と算出する(
図4ステップS126)。
【0102】
インパルス対応補正部8は、式(15)により比率RH={870.5/(870.5-89.4)}×1.0=1.114と算出する(
図4ステップS127)。さらに、インパルス対応補正部8は、式(16)により補正後の診断指標Kx2H=720.3×1.114=802.4と推定し、式(17)により補正後の診断指標TfH=4.0×1.114=4.5sec.と推定する(
図4ステップS128)。
【0103】
図12の例では、外乱印加量の減少と外乱印加前の整定時の実操作量MV_F’の下降に伴い、フィードフォワード算出部2に予め設定されていたパラメータKx1,Kx2,Tfの値よりも推定した診断指標Kx1new,Kx2H,TfHの値が小さくなる。このため、オペレータは、フィードフォワード量MV_Xを減少させるのが妥当と診断することができる。
【0104】
以上のように本実施例では、フィードフォワード量MV_X1とフィードフォワード量MV_X2の診断指標を得ることができ、フィードフォワード量MV_X1とフィードフォワード量MV_X2の妥当性を合理的に診断することができる。また、本実施例では、診断指標に基づいてパラメータKx1,Kx2,Tfを修正する適応修正部11を設けることにより、適応的な再調整機能を実現することができる。
【0105】
[第2の実施例]
次に、本発明の第2の実施例について説明する。
図13は本発明の第2の実施例に係る制御装置の構成を示すブロック図であり、
図1と同一の構成には同一の符号を付してある。本実施例は、上記発明の原理2に対応する例である。本実施例の制御装置は、操作量算出部1と、フィードフォワード算出部2と、フィードフォワード実行部3と、ステップ対応推定部4と、総量算出部5と、インパルス対応推定部6と、無効量算出部7と、インパルス対応補正部8と、推定結果出力部9と、診断指標提示部10aと、リミット処理部12と、操作量出力部13と、無効量FF_Nとトリガー変数FF_Xが有意の値になった期間においてフィードフォワード算出部2によって算出されたフィードフォワード量MV_X2の総量との比率RXを、第3の診断指標として算出する指標比率算出部14とを備えている。
【0106】
次に、本実施例の制御装置の動作を
図14を参照して説明する。トリガー変数FF_Xが0のままで、フィードバック制御のみが実行される場合の動作は
図3に示したとおりであるので、説明は省略する。
トリガー変数FF_Xが1になったときのステップS110~S119の処理は第1の実施例と同じである。
【0107】
診断指標提示部10aは、第1の実施例と同様にステップ対応推定部4によって推定された診断指標Kx1newの値をオペレータに対して提示する(
図14ステップS120a)。本実施例では、オペレータが診断指標Kx1newの経時的変化に基づいて、統計的な信頼性も含めて何らかの判断が行ない易いように、診断指標Kx1newを時系列のグラフで表示する。
【0108】
トリガー変数FF_Xが1になったときのステップS122~S128の処理は第1の実施例と同じである。
診断指標提示部10aは、インパルス対応補正部8によって推定された診断指標Kx2H,TfHの値をオペレータに対して提示する(
図14ステップS129a)。上記と同様に、診断指標提示部10aは、診断指標Kx2H,TfHを時系列のグラフで表示する。
【0109】
指標比率算出部14は、無効量算出部7によって算出された無効量FF_Nと実操作量MV_F’の整定までにフィードフォワード算出部2によって算出されたフィードフォワード量MV_X2の総量Kx2との比率RXを、さらに診断指標として算出する(
図14ステップS131)。
RX=FF_N×dt/Kx2 ・・・(19)
【0110】
上記で説明したとおり、式(19)の計算では、フィードフォワード算出部2に設定されているパラメータKx2をフィードフォワード量MV_X2の総量としている。
第1の実施例に示した比率RHでも問題ないが、比率RHはフィードフォワード制御のパラメータを補正するための数値になるので、フィードフォワード量MV_X2が無効になる度合として直感的に理解しやすい比率RXを採用するのが好ましい。
【0111】
診断指標提示部10aは、指標比率算出部14によって算出された診断指標RXの値をオペレータに対して提示する(
図14ステップS132)。上記と同様に、診断指標提示部10aは、診断指標RXを時系列のグラフで表示する。
ステップS118,S119,S120a,S122~S128,S129a,S131,S132の処理は、実操作量MV_F’が整定したときに1回行えばよい。
【0112】
本実施例では、第1の実施例で説明した適応修正部11が無い構成で説明しているが、本実施例に適応修正部11を追加しても構わない。本実施例に適応修正部11を追加した場合、原理的には外乱印加量が増加したり減少したりしても適正なフィードフォワード制御が維持されることになる。適応修正部11を追加した場合であっても、各診断指標の経時的変化は、適応修正部11が無い場合とほぼ同じ数値が算出される。したがって、適応修正部11の有無が、外乱印加量の変化と外乱の性質の変化とを監視する機能に影響を与えることはない。
【0113】
比率RXの算出式として式(19)を採用した場合、最小値RX=0.0から最大値RX=1.0の指標になり、数値が小さいほどフィードフォワードが理想的な変化パターンで適用されているという意味になる。出力飽和によりフィードフォワード量が影響を受ける場合、
図11、
図12のように外乱自体の変化だけではなく、外乱印加前の整定時の実操作量MV_F’(平衡点)の変化によっても、比率RXが変化する。例えば
図17のような加熱装置であれば、加熱装置全体の温まり具合が放熱特性という形で比率RXの変化の要因になり得る。
【0114】
上記のように、診断指標の経時的な変化の原因が何らかの不具合であると考えられるアプリケーションにおいては、各診断指標の管理範囲を予め設定し、管理範囲から外れたときにアラームを発報するアラーム出力部を第1、第2の実施例に追加するようにしてもよい。適応修正部11を追加している場合は、原理的には適正なフィードフォワード制御が維持されることになるが、適応修正部11を追加していない場合は不具合の有無に関係なく制御性能に悪影響が現れる可能性が高いので、アラーム出力部を必ず設置することが好ましい。
【0115】
図15は、比率RXの提示例を示す図である。
図15の例では、画面150に、比率RXがグラフ表示されている。グラフの横軸は、トリガー変数FF_Xが1になったときから0になるまでの外乱リカバリー制御を1回として数えた回数である。本実施例のようなグラフ表示は、外乱リカバリー制御が繰り返し行われるようなアプリケーションにおいて、特に有効に活用できる。
【0116】
第1、第2の実施例では、設定値SPに対して制御量PVが下降する外乱の例で説明しているが、本発明は設定値SPに対して制御量PVが上昇する外乱にも対応可能である。制御量PVが上昇する外乱が発生した場合には、実操作量差ΔMV_stpと実操作量MV_F’の変化量総量ΔMV_allとフィードフォワード量MV_X1の総量MV_X1_allとパラメータKx1,Kx2とフィードフォワード量MV_X1,MV_X2と無効量FF_Nとが負の値となる。
【0117】
第1、第2の実施例で説明した制御装置は、CPU(Central Processing Unit)、記憶装置及びインタフェースを備えたコンピュータと、これらのハードウェア資源を制御するプログラムによって実現することができる。このコンピュータの構成例を
図16に示す。
【0118】
コンピュータは、CPU300と、記憶装置301と、インタフェース装置(I/F)302とを備えている。I/F302には、例えば温度センサや電力調整器が接続される。このようなコンピュータにおいて、第1、第2の実施例の制御方法を実現させるためのプログラムは記憶装置301に格納される。CPU300は、記憶装置301に格納されたプログラムに従って第1、第2の実施例で説明した処理を実行する。
【産業上の利用可能性】
【0119】
本発明は、制御装置に適用することができる。
【符号の説明】
【0120】
1…操作量算出部、2…フィードフォワード算出部、3…フィードフォワード実行部、4…ステップ対応推定部、5…総量算出部、6…インパルス対応推定部、7…無効量算出部、8…インパルス対応補正部、9…推定結果出力部、10,10a…診断指標提示部、11…適応修正部、12…リミット処理部、13…操作量出力部、14…指標比率算出部。