(57)【要約】【課題】プログラマブルコントローラのＰＩＤ演算動作の検証に要する時間の短縮化と、手間の削減化と、コストの低減化と、安全性の向上とを可能とする。【解決手段】プログラマブルコントローラ１に対しそのＰＩＤプロセス制御機能の検証を行うため制御対象に代えて用いる検証シミュレータ３であって、制御出力を入力すると共に、制御対象の熱容量に対応した時間分遅らせて出力するバッファ部１３と、このバッファ部１３から出力される制御出力と上記制御対象の熱容量とに対応して現在値を演算してプログラマブルコントローラ１に入力する演算部１５とを備える。【選択図】図１
2009037377.tif 000002
【特許請求の範囲】
【請求項１】
目標値と制御対象からのフィードバック値である現在値との偏差に基づいてＰＩＤ演算を行うと共にこのＰＩＤ演算結果に対応した制御出力を制御対象に出力するＰＩＤプロセス制御機能付きプログラマブルコントローラに対しそのＰＩＤプロセス制御機能の検証を行うため上記制御対象に代えて用いる検証シミュレータであって、
当該検証シミュレータは、
上記制御出力を入力すると共に、上記制御対象の熱容量に対応した時間分遅らせて出力するバッファ部と、
上記バッファ部から出力される制御出力と上記制御対象の熱容量とに対応して現在値を演算して上記プログラマブルコントローラに与える演算部と、
を備えたことを特徴とする検証シミュレータ。
【請求項２】
上記バッファ部は、複数段のシフトレジスタが縦続接続されてなり、かつ、初段のシフトレジスタに入力した制御出力を次段以降のシフトレジスタに順次に単位時間ごとにシフトさせていき、終段のシフトレジスタから上記演算部に出力するよう構成されている、ことを特徴とする請求項１に記載の検証シミュレータ。
【請求項３】
上記演算部は、現在値をＰＶ、制御出力をＶｏｕｔ、時間をｔ、熱容量をＣＲとすると、
現在値ＰＶを増加させる場合はＰＶ＝Ｖｏｕｔ×[１−ε(-t/CR)]
現在値ＰＶを減少させる場合はＰＶ＝Ｖｏｕｔ×[ε(-t/CR)]
の式で現在値を演算することを特徴とする請求項１または２に記載の検証シミュレータ。
【請求項４】
目標値と制御対象からのフィードバック値である現在値との偏差に基づいてＰＩＤ演算を行うと共にこのＰＩＤ演算結果に対応した制御出力を制御対象に出力する、ＰＩＤプロセス制御機能付きプログラマブルコントローラと、請求項１ないし３のいずれかに記載の検証シミュレータとを備えた、ことを特徴とする検証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、目標値と制御対象からのフィードバック値である現在値との偏差に基づいてＰＩＤ演算を行うと共に、このＰＩＤ演算結果に対応した制御出力を制御対象に出力するＰＩＤプロセス制御機能付きプログラマブルコントローラ（プログラマブルロジックコントローラとも称する）に対し、そのＰＩＤプロセス制御機能の検証を行うため上記制御対象に代えて用いる検証シミュレータに関するものである。
【背景技術】
【０００２】
特許文献１にも開示されているように、プログラマブルコントローラは、制御対象をシーケンス制御するための基本命令と、四則演算や比較等の簡単な応用命令を実行することができる。
【０００３】
一方、ＰＩＤプロセス制御命令を備えてＰＩＤプロセス制御を行うのに用いることができるプログラマブルコントローラも開発されている。
【０００４】
図３を参照してＰＩＤプロセス制御を実行する機能を備えたプログラマブルコントローラ１は、目標値入力部５からの目標値と現在値入力部７からの現在値（制御対象２１からのフィードバック値）との偏差に基づいてＰＩＤ演算部９でＰＩＤ演算を行うと共にこのＰＩＤ演算結果を制御出力部１１から制御出力として出力し、ＤＡ変換部１７でＤＡ変換して制御対象２１に出力する。
【０００５】
制御対象２１として例えば電気炉を挙げると、電気炉は内部にヒータ２３を備え、このヒータ２３と電源２５との間にスイッチ制御部２７を介挿すると共に、電気炉内に温度センサ２９を配置している。
【０００６】
そして、スイッチ制御部２７をＰＩＤ制御してヒータ２３への供給電力を調節して電気炉内温度を目標値（目標温度）に制御して電気炉内の被加熱物３１を加熱する場合、温度センサ２９で電気炉内現在値（現在温度）を計測し、その計測した現在値をプログラマブルコントローラ１ではＡＤ変換部１９でＡＤ変換して現在値入力部７に与える。
【０００７】
このプログラマブルコントローラは、図示はしないが、例えばビルディングブロックタイプとして、電源ユニットと、ＣＰＵユニットと、ＤＡ変換ユニットと、ＡＤ変換ユニットとを備えて構成し、ＣＰＵユニットでは、ＣＰＵ、プログラムメモリ、データメモリ等を備え、そのＣＰＵにてＰＩＤ演算を行うと共に、そのデジタル値であるＰＩＤ演算結果をＤＡ変換ユニットでＤＡ変換し、制御対象からの現在値はＡＤ変換ユニットでＡＤ変換するようにしてもよい。
【０００８】
上記ＰＩＤプロセス制御は比例動作（Ｐ）、積分動作（Ｉ）、微分動作（Ｄ）を組み合わせて制御対象のプロセスを制御するものであり、比例動作でハンチングのない滑らかな制御を行い、積分動作でオフセットを自動的に修正し、微分動作で外乱に対する応答を早くすることができる。
【０００９】
以上の構成を備えた電気炉制御のためのプログラマブルコントローラを設計製造した後、ユーザにそのプログラマブルコントローラを納品する前に、
そのプログラマブルコントローラがその電気炉を制御対象として適切にＰＩＤプロセス制御を行うか否かの検証を実施することが必要である。
【００１０】
検証を実施する準備として、ユーザが使用する可能性がある電気炉を想定したアプリケーションを製作する必要がある。
【００１１】
そのため、上記検証には時間がかかる。また、アプリケーションを動作させて検証を行う環境作りにも相当な手間とコストとがかかることに加えて、アプリケーションを動作させるには場合によっては検証上の安全性が損なわれることがある。
【特許文献１】特開平９−１６２２５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明の目的は、プログラマブルコントローラのＰＩＤ演算動作の検証に要する時間の短縮化と、手間の削減化と、コストの低減化と、検証上の安全性向上とを可能とすることである。
【００１３】
この目的を解決する為の課題としては、ユーザが使用するアプリケーションと同等の動作を持たせることが可能なアプリケーションソフトウェアを作成することができ、また、ユーザが使用するアプリケーションが構成するＰＩＤの制御対象物は多品種存在しそれぞれ動きが異なっても、その多品種の動きをどのようにしてアプリケーションソフトに組み込むかが課題になる。
【課題を解決するための手段】
【００１４】
本発明に係る検証シミュレータは、目標値と制御対象からのフィードバック値である現在値との偏差に基づいてＰＩＤ演算を行うと共にこのＰＩＤ演算結果に対応した制御出力を制御対象に出力するＰＩＤプロセス制御機能付きプログラマブルコントローラに対しそのＰＩＤプロセス制御機能の検証を行うため上記制御対象に代えて用いる検証シミュレータであって、上記制御出力を入力すると共に、上記制御対象の熱容量に対応した時間分遅らせて出力するバッファ部と、上記バッファ部から出力される制御出力と上記制御対象の熱容量とに対応して現在値を演算して上記プログラマブルコントローラに与える演算部と、を備えたことを特徴とするものである。
【００１５】
本発明によると、プログラマブルコントローラから目標値と現在値との偏差に対応したＰＩＤ演算結果である制御出力が検証シミュレータに入力されると、検証シミュレータでは、入力された制御出力を、バッファ部で制御対象の熱容量に対応した応答遅れの後に演算部で演算させるので、演算部からプログラマブルコントローラに入力される現在値を実際の制御対象を用いて検証したと同様に変化させることができる。そのため、本発明では、ユーザが使用する可能性がある多品種の制御対象に対し、そのプログラマブルコントローラが持つＰＩＤ演算機能が適切に機能するか否かの検証を検証シミュレータで行うことが可能となり、従来のように上記検証を実施するに際してユーザが使用する電気炉を想定したアプリケーションを製作する必要がなくなり、また、アプリケーションを動作させて検証を行う環境作りも特に必要としなくなり、さらに検証上の安全性も確保することができる。
【００１６】
好ましい態様の１つは、上記バッファ部は、複数段のシフトレジスタが縦続接続されてなり、かつ、初段のシフトレジスタに入力した制御出力を次段以降のシフトレジスタに順次に単位時間ごとにシフトさせていき、終段のシフトレジスタから上記演算部に出力するよう構成されていることである。
【００１７】
好ましい態様の１つは、上記現在値演算部は、現在値をＰＶ、制御出力をＶｏｕｔ、時間をｔ、熱容量をＣＲとすると、現在値ＰＶを増加させる場合はＰＶ＝Ｖｏｕｔ×[１−ε(-t/CR)]、現在値ＰＶを減少させる場合はＰＶ＝Ｖｏｕｔ×[ε(-t/CR)]の式で現在値を演算することである。
【００１８】
本発明に係る検証システムは、目標値と制御対象からのフィードバック値である現在値との偏差に基づいてＰＩＤ演算を行うと共にこのＰＩＤ演算結果に対応した制御出力を制御対象に出力する、ＰＩＤプロセス制御機能付きプログラマブルコントローラと、上記本発明の検証シミュレータとを備えた、ことを特徴とするものである。
【発明の効果】
【００１９】
本発明によれば、プログラマブルコントローラのＰＩＤ演算動作の検証を短時間で手間少なく、コスト安価に、かつ安全性を確保して実施することが可能となる。
【発明を実施するための最良の形態】
【００２０】
以下、添付した図面を参照して、本発明の実施の形態に係る検証シミュレータを説明すると、図１は、プログラマブルコントローラと、実施の形態の検証シミュレータと、を備えた検証システムを示す。図１に示す検証システムは、プログラマブルコントローラ１と、検証シミュレータ３とから構成されている。
【００２１】
プログラマブルコントローラ１は、目標値入力部５、現在値入力部７、ＰＩＤ演算部９、制御出力部１１を備える。目標値入力部５はユーザにより設定される。制御対象が例えば電気炉であれば、目標値は電気炉内の目的温度である。現在値入力部７は、制御対象である電気炉内の現在温度である。ＰＩＤ演算部９は、目標値と現在値との偏差からＰＩＤ演算を行うと共に、そのＰＩＤ演算結果を制御出力部１１に与える。制御出力部１１はそのＰＩＤ演算結果に対応した制御出力を検証シミュレータ３に出力する。この場合、検証シミュレータ３からプログラマブルコントローラ１の現在値入力部７に与えられる現在値はデジタルデータであり、また、プログラマブルコントローラ１から検証シミュレータ３に与えられる制御出力もデジタルデータである。
【００２２】
検証シミュレータ３は、マイクロコンピュータで構成することができるものであり、プログラマブルコントローラ１から入力されてくる制御出力を図３で示す実際の制御対象２１の熱容量に対応した時間分遅らせて出力するバッファ部１３と、このバッファ部１３から出力される制御出力と制御対象の熱容量とに対応して現在値を演算してプログラマブルコントローラ１に制御対象の現在値として与える演算部１５と、を備えている。
【００２３】
バッファ部１３は、一例として、例えば縦続接続されたｎ個のシフトレジスタ１３１，１３２，…，１３ｎで構成される。各シフトレジスタ１３１，１３２，…，１３ｎはそれぞれ記憶素子で構成されている。このシフトレジスタ１３１，１３２，…，１３ｎは初段のシフトレジスタ１３１に入力した制御出力を次段以降のシフトレジスタ１３２，…，１３ｎに順次に単位時間ｔごとにシフトさせていき、終段のシフトレジスタ１３ｎから演算部１５に出力するよう構成されている。
【００２４】
図１で示す各段のシフトレジスタ１３１，１３２，…，１３ｎにはプログラマブルコントローラ１から時間ｎ×ｔ前、（ｎ−１）×ｔ前、…、ｔ前に出力された制御出力１，２，…，ｎが記憶保持されていることになる。したがって、バッファ部１３から演算部１５には時間ｎ×ｔ前の制御出力Ｖｏｕｔが与えられることになる。
【００２５】
演算部１５は、現在値をＰＶ、制御出力をＶｏｕｔ、時間をｔ、熱容量をＣＲとすると、現在値ＰＶを増加させる場合はＰＶ＝Ｖｏｕｔ×[１−ε(-t/CR)] の式（１）で、現在値ＰＶを減少させる場合はＰＶ＝Ｖｏｕｔ×[ε(-t/CR)]の式（２）で、それぞれ、現在値を演算するようになっている。
【００２６】
制御対象である例えば電気炉ではプログラマブルコントローラ１から制御出力Ｖｏｕｔが与えられても即座に応答して電気炉内の現在値ＰＶが目標値になるのではなくその熱容量により遅れて現在値ＰＶが増加または減少してくる。すなわち、制御出力Ｖｏｕｔが大きくなると現在値ＰＶは増加し、その増加割合は制御出力Ｖｏｕｔの大きさに対応した上昇カーブを示し、制御出力Ｖｏｕｔが小さくなると現在値ＰＶは減少し、その減少割合は制御出力Ｖｏｕｔの大きさに対応した下降カーブを示す。
【００２７】
この上昇、下降カーブは、制御対象である電気炉の熱容量をコンデンサと抵抗との直列充放電回路とみなし、その直列充放電回路におけるその充放電時定数ＣＲにより定まるものと仮定できる。この場合、現在値ＰＶが目標値より低い場合では現在値ＰＶを増加させるため制御出力Ｖｏｕｔが大きくなり、これによって現在値ＰＶが増加する上昇カーブになり、現在値ＰＶが目標値より高い場合では現在値ＰＶを減少させるため制御出力Ｖｏｕｔが小さくなり、これによって、現在値ＰＶが減少する下降カーブになるが、そのカーブは上記熱容量に対応して応答遅れして変化する。
【００２８】
図２を参照して動作を説明する。図２（ａ）は制御出力Ｖｏｕｔの変化、図２（ｂ）は実際の制御対象を用いた場合のＰＩＤプロセス制御による現在値ＰＶの変化、図２（ｃ）は実施の形態の検証シミュレータ３においてバッファ部１３が無く、プログラマブルコントローラ１からの制御出力Ｖｏｕｔを検証シミュレータ３の演算部１５で演算した場合のＰＩＤプロセス制御による現在値ＰＶの変化、図２（ｄ）は実施の形態の検証シミュレータ３においてバッファ部１３により制御出力Ｖｏｕｔを実際の制御対象と同等の応答遅れ条件で遅れさせて、検証シミュレータ３の演算部１５で演算した場合のＰＩＤプロセス制御による現在値ＰＶの変化、をそれぞれ示す。
【００２９】
図２（ｂ）で示す実際の制御対象を用いたＰＩＤプロセス制御による現在値ＰＶの変化と比較しながら図２（ａ）と図２（ｄ）とを中心に説明する。図２（ｃ）は図２（ｄ）との比較のために示しており、特に説明しない。
【００３０】
まず、図２（ａ）で示すようにプログラマブルコントローラ１からの制御出力Ｖｏｕｔが時刻ｔ０で大きく変化する。この制御出力Ｖｏｕｔは検証シミュレータ３のバッファ部１３内のシフトレジスタ１３ｎに入力される。
【００３１】
この制御出力Ｖｏｕｔはバッファ部１３内のｎ個のシフトレジスタ１３１，１３２，…，１３ｎ内を順次に単位時間ｔごとにクロックでシフトされていって演算部１５に入力されるから、演算部１５に入力されるまでには時間ｔ×ｎを要することになる。
【００３２】
すなわち、時刻ｔ０でプログラマブルコントローラ１から与えられた制御出力Ｖｏｕｔは、その時刻ｔ０から時間ｔ×ｎ経過後の時刻ｔ１で演算部１５に入力されて上記式１で演算され、その演算結果が現在値ＰＶとしてプログラマブルコントローラ１に入力される。
【００３３】
次に、この制御出力Ｖｏｕｔは時刻ｔｎまでは立ち下らないので、時刻ｔｎになるまでは、時刻ｔ１から順次に単位時間ｔだけ経過ごとにバッファ部１３からの制御出力Ｖｏｕｔが入力され演算部１５で演算された現在値ＰＶがプログラマブルコントローラ１に入力される。この場合、上記式（１）から現在値ＰＶは図２（ｄ）で示すような充放電時定数ＣＲにより定まるカーブで上昇していく。
【００３４】
次に、図２（ａ）で示すように制御出力Ｖｏｕｔが時刻ｔｎで立ち下ると、図２（ｂ）で示すように実際の現在値ＰＶは時間ｔ×ｎ応答遅れして立ち下ってくる。すなわち、実施の形態では、その制御出力Ｖｏｕｔは、検証シミュレータ３のバッファ部１３により時間ｔ×ｎだけ応答遅れして演算部１５に入力されてから式（２）で演算されるので、その現在値ＰＶは図２（ｄ）で示すように立ち下ってくる。
【００３５】
以上から、図２（ｂ）で示す実際の制御対象による現在値ＰＶの上昇、下降カーブの形状に比較してバッファ部１３で制御出力Ｖｏｕｔを応答遅れさせないと図２（ｃ）で示すような上昇、下降カーブとなり、図２（ｂ）と一致しない。これに対して、実施の形態の検証シミュレータ３のバッファ部１３で制御出力Ｖｏｕｔを応答遅れさせた場合では、図２（ａ）の制御出力Ｖｏｕｔに対して現在値ＰＶは図２（ｄ）で示すように実際の制御対象の図２（ｂ）と一致した上昇、下降カーブとなる。
【００３６】
以上から実施の形態では、検証シミュレータ３のバッファ部１３により、プログラマブルコントローラ１からの制御出力を制御対象の熱容量に対応した時間分遅らせてから演算部１５に入力するので、プログラマブルコントローラ１のＰＩＤ演算動作が所要の設計通りであるか否かの検証を実施するに際して、ユーザが使用する可能性がある多品種の制御対象を想定したアプリケーションを製作する必要がなくなり、また、アプリケーションを動作させて検証を行う環境作りも特に必要としなくなり、さらに検証上の安全性も確保することができる。
【図面の簡単な説明】
【００３７】
【図１】図１は本発明の実施の形態に係る検証システムの構成を示す図である。
【図２】図２は図１の検証システムの動作説明に供する図である。
【図３】図３はＰＩＤプロセス制御システムの構成を示す図である。
【符号の説明】
【００３８】
１  プログラマブルコントローラ
５  目標値入力部
７  現在値入力部
９  ＰＩＤ演算部
１１  制御出力部
３  検証シミュレータ
１３  バッファ部
１５  演算部
【図１】
2009037377.tif 000003
【図２】
2009037377.tif 000004
【図３】
2009037377.tif 000005