(57)【特許請求の範囲】
【請求項１】
第１ＰＬＣと送受信に関して定周期性が確保されない通信ネットワークを介して接続され、前記第１ＰＬＣと同じ制御サンプリング周期で動作する第２ＰＬＣのＰＬＣ間通信データ補完装置であって、
前記制御サンプリング周期毎に前記第１ＰＬＣから送信される、周期毎に更新されるカウンタ値と制御対象への制御信号に関するデータ値とを関連付けたデータを受信して記憶する記憶部と、
前記制御サンプリング周期毎に、前記記憶部に記憶された現周期のデータのカウンタ値と、１周期前のデータのカウンタ値とが同じ場合に遅延ありと判定する比較部と、
前記遅延ありと判定された場合に、前記記憶部に記憶された２周期前のデータのデータ値と１周期前のデータのデータ値との変化率に基づいて、現周期において受信されるべきデータのデータ値を推定し補完する補完部と、
を備えることを特徴とするＰＬＣ間通信データ補完装置。
【請求項２】
前記比較部は、前記遅延ありと判定された後の各周期において、前記記憶部に記憶された現周期のデータのカウンタ値と１周期前のデータのカウンタ値との差が２となるまでの間、遅延ありと判定すること、
を特徴とする請求項１に記載のＰＬＣ間通信データ補完装置。
【請求項３】
前記補完部は、１周期前と２周期前との間のデータ値の変化率と、２周期前と３周期前との間のデータ値の変化率との変化量に基づいて、現周期のデータのデータ値を推定し補完すること、
を特徴とする請求項１又は２に記載のＰＬＣ間通信データ補完装置。
【請求項４】
第１ＰＬＣと送受信に関して定周期性が確保されない通信ネットワークを介して接続され、前記第１ＰＬＣと同じ制御サンプリング周期で動作する第２ＰＬＣのＰＬＣ間通信データ補完方法であって、
前記制御サンプリング周期毎に前記第１ＰＬＣから送信される、周期毎に更新されるカウンタ値と制御対象への制御信号に関するデータ値とを関連付けたデータを受信して記憶するステップと、
前記制御サンプリング周期毎に、記憶された現周期のデータのカウンタ値と、１周期前のデータのカウンタ値とが同じ場合に遅延ありと判定するステップと、
前記遅延ありと判定された場合に、２周期前のデータのデータ値と１周期前のデータのデータ値との変化率に基づいて、現周期において受信されるべきデータのデータ値を推定し補完するステップと、
を備えることを特徴とするＰＬＣ間通信データ補完方法。
【請求項５】
第１ＰＬＣと送受信に関して定周期性が確保されない通信ネットワークを介して接続され、前記第１ＰＬＣと同じ制御サンプリング周期で動作する第２ＰＬＣのＰＬＣ間通信データ補完プログラムであって、
第２ＰＬＣを、
前記制御サンプリング周期毎に前記第１ＰＬＣから送信される、周期毎に更新されるカウンタ値と制御対象への制御信号に関するデータ値とを関連付けたデータを受信して記憶する記憶手段と、
前記制御サンプリング周期毎に、前記記憶手段に記憶された現周期データのカウンタ値と、１周期前のデータのカウンタ値とが同じ場合に遅延ありと判定する比較手段と、
前記遅延ありと判定された場合に、前記記憶手段に記憶された２周期前のデータのデータ値と１周期前のデータのデータ値との変化率に基づいて、現周期において受信されるべきデータのデータ値を推定し補完する補完手段と、
して機能させるためのＰＬＣ間通信データ補完プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＬＣ間通信データ補完装置、ＰＬＣ間通信データ補完方法およびＰＬＣ間通信データ補完プログラムに関する。
【背景技術】
【０００２】
プラントの製造ラインにおいては、数ｍｓ〜１０ｍｓ（ミリ秒）程度の定周期で更新される専用ネットワークが用いられることがある。このような専用ネットワークの送受信データの遅延時間のばらつきは１ｍｓ以下となることが要求されることがある。プログラマブルロジックコントローラ（Programmable Logic Controller、以下、ＰＬＣという。）は、各工程の温度等の環境パラメータの計測信号を入力したり、各種アクチュエータ等を駆動するための駆動信号を出力したりする入出力モジュールと、ラダープログラム等により入出力モジュールを介してアクチュエータ等を制御するコントローラ等を有している。ＰＬＣが制御対象とする設備、機能、工程が巨大規模となる場合、複数台のＰＬＣで役割を分担したり、機能を分担したりする事で、全体の設備、機能、工程を制御する場合がある。この時、役割を分担しているＰＬＣは互いに緊密な情報連絡が必要となり、その連絡には専用ネットワークが用いられる事がある。また、前述の入出力モジュール等で扱う外部入出力信号、各種品質データ等も、この専用ネットワーク上に展開され、複数台のＰＬＣで利用可能とする事で、巨大規模の設備、機能、工程に対して複数台のＰＬＣによる役割分担、機能分割の容易化がはかられている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１０８８９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
この専用ネットワークを汎用の産業用イーサネット（登録商標）に置き換えた場合には、データの更新周期のばらつきが１０〜１００ｍｓとなることがあり、ＰＬＣ間のデータ通信の送受信に関しては定周期性が確保されないため、データの波形に歪みが生じる。
【０００５】
このため、データの更新周期のばらつきが制御に影響を及ぼさない範囲に制御実行周期を遅らせる必要があり、制御精度の低下等の問題が発生する。
【０００６】
複数のＰＬＣを要するシステムに対して、通信路による伝送時間ばらつきに因らない設定時刻の同期については、その同期方法がすでに提案されている（たとえば特許文献１参照）。しかしながら、ＰＬＣ間のデータ連絡に関する更新周期のばらつきを考慮したものではなく、データの非定周期性を定周期に補正することを考慮していない。
【０００７】
この発明は、上述のような課題を解決するためになされたもので、通信ネットワークを専用ネットワークから汎用ネットワークに置き換えた場合であっても、更新周期にばらつきのあるＰＬＣ間のデータ連絡を定周期のデータに補完することができるＰＬＣ間通信データ補完装置、ＰＬＣ間通信データ補完方法およびＰＬＣ間通信データ補完プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の実施形態は、上記の目的を達成するため、第１ＰＬＣと通信ネットワークを介して接続され、前記第１ＰＬＣと同じ制御サンプリング周期で動作する第２ＰＬＣのＰＬＣ間通信データ補完装置であって、
前記制御サンプリング周期毎に前記第１ＰＬＣから送信される、周期毎に更新されるカウンタ値とデータ値とを関連付けたデータを受信して記憶する記憶部と、
前記制御サンプリング周期毎に、前記記憶部に記憶された現周期のデータのカウンタ値と、１周期前のデータのカウンタ値とが同じ場合に遅延ありと判定する比較部と、
前記遅延ありと判定された場合に、前記記憶部に記憶された２周期前のデータのデータ値と１周期前のデータのデータ値との変化率に基づいて、現周期において受信されるべきデータのデータ値を推定し補完する補完部と、を備えることを特徴とする。
【０００９】
好ましくは、前記比較部は、前記遅延ありと判定された後の各周期において、前記記憶部に記憶された現周期のデータのカウンタ値と１周期前のデータのカウンタ値との差が２となるまでの間、遅延ありと判定すること、を特徴とする。
【００１０】
好ましくは、前記補完部は、１周期前と２周期前との間のデータ値の変化率と、２周期前と３周期前との間のデータ値の変化率との変化量に基づいて、現周期のデータのデータ値を推定し補完すること、を特徴とする。
【発明の効果】
【００１１】
本発明の実施形態によれば、データ受信側で更新周期のばらつきによるデータ波形の歪みを補完できるので、更新周期にばらつきのある通信ネットワークを介して、ＰＬＣ間のデータ連絡を実施しても、定周期の専用ネットワークを介してデータ連絡を実施した際と同様のデータとして参照することができる。これにより、複数台のＰＬＣによる役割の分担、及び、機能の分割が、ＰＬＣの負荷増大や制御精度の低下を考慮する事なく実現できる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１に係るシステム構成を例示するブロック図である。
【図２】実施の形態１に係るシステムの各部における動作波形を模式的に例示するタイミング図である。
【図３】実施の形態１に係るシステムにおける各周期とデータ値との関係を示す図である。
【図４】データ補完装置２が実行する補完処理ルーチンのフローチャートである。
【図５】実施の形態２に係るシステムにおける各周期とデータ値との関係を示す図である。
【図６】実施の形態３に係るシステム構成を例示するブロック図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照しつつ、本発明の実施形態について説明する。
なお、図面は模式的または概念的なものであり、各部分の厚みと幅との関係、部分間の大きさの比率などは、必ずしも現実のものと同一とは限らない。また、同じ部分を表す場合であっても、図面により互いの寸法や比率が異なって表される場合もある。
なお、本願明細書と各図において、既出の図に関して前述したものと同様の要素には、同一の符号を付して詳細な説明を適宜省略する。
【００１４】
実施の形態１．
［システムの基本構成］
図１は、実施の形態１に係るシステム構成を例示するブロック図である。図１に示すシステムは、ＰＬＣ１、通信ネットワーク２０、ＰＬＣ３０を備える。ＰＬＣ１はＰＬＣ３０と通信ネットワーク２０を介して接続され、ＰＬＣ３０が送信したデータを受信する。なお、ＰＬＣ１とＰＬＣ３０は同じ制御サンプリング周期で動作する。
【００１５】
ＰＬＣ１は、プログラマブルロジックコントローラである。ＰＬＣ１は、後述するデータ波形の歪みを補完するデータ補完装置２を有する。ＰＬＣ１は、たとえば、メモリに格納されたシーケンスプログラムによってシステムの制御を行うコントローラ、およびコントローラによって駆動される入出力モジュール等を含んでいる。コントローラ、メモリおよび入出力モジュール等は、通信ネットワーク２０上で接続されていてもよく、他の専用ネットワーク上で接続されコントローラ等を介して通信ネットワーク２０に接続されていてもよい。ＰＬＣ１は、たとえばコントローラにデータ補完装置２を含むようにしてもよい。
【００１６】
データ補完装置２は、たとえばＰＬＣ１内部で逐次実行されるプログラムにしたがって動作するようにしてもよい。
【００１７】
ＰＬＣ３０は、プログラマブルロジックコントローラである。ＰＬＣ３０は、データ出力部３１とカウンタ部３２とを有する。ＰＬＣ３０は、たとえば、メモリに格納されたシーケンスプログラムによってシステムの制御を行うコントローラ、およびコントローラによって駆動される入出力モジュール等を含んでいる。コントローラ、メモリおよび入出力モジュール等は、通信ネットワーク２０上で接続されていてもよく、他の専用ネットワーク上で接続されコントローラ等を介して通信ネットワーク２０に接続されていてもよい。ＰＬＣ３０は、たとえばコントローラにデータ出力部３１およびカウンタ部３２を含むようにしてもよい。
【００１８】
データ出力部３１は、データ値３３を出力する。データ値３３とは、たとえば各入出力モジュール等との間の送受信信号であり、ＰＬＣ１とＰＬＣ３０のＰＬＣ間データ連絡のために用いられる信号をいう。データ値３３は、たとえば１０ｍｓの定周期時間で出力される。カウンタ部３２は、たとえば１０ｍｓの定周期時間でカウントアップするカウンタ値３４を生成する。ＰＬＣ３０は、同一周期におけるカウンタ値３４とデータ値３３とを関連付けたデータを通信ネットワーク２０上に出力する。なお、カウンタ部３２の出力は、カウントアップ動作に限らず、カウントダウン動作でもよいのはいうまでもない。
【００１９】
通信ネットワーク２０は、例えば産業用イーサネット（登録商標）である。産業用イーサネット（登録商標）は、データの更新周期のばらつきが１０〜１００ｍｓとなることがあり、ＰＬＣ間のデータ通信の送受信に関しては定周期性が確保されないため、データの波形に歪みが生じる。なお、通信ネットワーク２０として、遅延時間のばらつきの少ない専用通信ネットワークを用いてもよく、本発明の適用を妨げるものでない。
【００２０】
次に、定周期性が確保されない通信ネットワーク２０を介することによるデータの波形の歪みについて図２を参照して説明する。
図２は、実施の形態１に係るシステムの各部における動作波形を模式的に例示するタイミング図である。
【００２１】
図２の最上段の動作波形では、ＰＬＣ３０のデータ出力部３１から出力されるデータ値３３ａおよびカウンタ部３２から出力されるカウンタ値３４ａの動作波形が、ＰＬＣ３０サンプリング時間軸とともに概念的に示されている。図２の中段の動作波形では、ＰＬＣ３０から出力され、通信ネットワーク２０上におけるデータ値３３ｂおよびカウンタ値３４ｂの動作波形がＰＬＣ１サンプリング時間軸とともに概念的に示されている。図２の最下段の動作波形では、ＰＬＣ１に入力されたデータ値３３ｃおよびカウンタ値３４ｃ、ならびに、データ補完装置２によって補完されたデータ値３３ｄが、ＰＬＣ１サンプリング時間軸とともに概念的に示されている。
【００２２】
図２の中段の動作波形に示すように、ＰＬＣ３０のデータ値３３ａは、通信ネットワーク２０が汎用の産業用イーサネット（登録商標）上に展開されたときには、定周期性が維持されない。汎用の産業用イーサネット（登録商標）では、送受信の同時性が保証されず、通信トラフィック等によってネットワーク上に展開された信号の伝搬遅延時間は、たとえば１０ｍｓ程度〜１００ｍｓ程度まで大きくばらつくことがあるからである。そのため、信号の受信のタイミングは、この伝搬遅延時間のばらつきに支配されることがある。たとえば、データ値３３ｂのように部分的に遅延が大きくなり、波形に歪みが生じる。
【００２３】
図２の最下段の動作波形に示すように、定周期性が維持されていないデータ値３３ｂをＰＬＣ１の制御サンプリング周期で読み込むと、データ値３３ｃのようなデータ更新抜けを伴う遅延となり、波形の歪みが元のデータ値３３ｂに比べてさらに大きくなる。
【００２４】
［実施の形態１における特徴的構成］
このようなデータ波形の歪みを補完する本実施形態のデータ補完装置２について、図１〜図４を参照して説明する。
【００２５】
本実施形態では、ＰＬＣ１とＰＬＣ３０は同じ制御サンプリング周期で動作している事から、ＰＬＣ１で読み込むカウンタ値３４ｃは、通信ネットワーク２０に起因するデータの更新周期のばらつきがなければ、周期毎に１ずつカウントアップすることが期待される。一方、カウンタ値３４ｃがカウントアップしない場合には、通信ネットワーク２０に起因するデータの更新抜けを伴う遅延が生じており、現周期において受信されるべきデータが受信できていないと判断できる。このような場合であっても、ＰＬＣ１は、現周期において受信されるべきデータを補完して、制御対象を制御できることが求められる。
【００２６】
そこで、本実施形態のデータ補完装置２では、現周期において受信した現周期データのカウンタ値と、１周期前に受信したデータのカウンタ値とが同じ場合に遅延ありと判定する。そして、遅延ありと判定された場合に、２周期前に受信したデータのデータ値と１周期前に受信したデータのデータ値との変化率に基づいて、現周期において受信されるべきデータのデータ値を推定し補完することとした（データ値３３ｄ）。
【００２７】
このような処理を実現する本実施形態のデータ補完装置２について具体的に説明する。図１に示すデータ補完装置２は、補完部３と、記憶部４と、比較部５とを備える。データ補完装置２は、ＰＬＣ３０が送信したデータを通信ネットワーク２０から受信する。受信したデータには、ＰＬＣ３０のＰＬＣ間連絡用のデータ値３３およびカウンタ値３４が含まれる。カウンタ値３４は、ＰＬＣ３０の制御サンプリング周期で１ずつカウントアップするため、通信ネットワーク２０に起因するデータの更新周期のばらつきがなければ、ＰＬＣ１が受信するデータのカウンタ値も制御サンプリング周期毎に１ずつカウントアップする。
【００２８】
記憶部４は、制御サンプリング周期毎にカウンタ値３４とデータ値３３とが関連付いた最新の受信データ（現周期データ）を記憶する。なお、記憶部４には、過去の受信データ（１周期前データ、２周期前データ、・・・）も数周期分記憶している。
【００２９】
比較部５は、制御サンプリング周期毎に、記憶部４から読み出した現周期データのカウンタ値３４と、１周期前データのカウンタ値３４とを比較する。カウンタ値の差が１である場合には、遅延なしと判定する。一方、カウンタ値の差が０である場合には遅延ありと判定する。また、比較部５は、遅延ありと判定された後の各周期において、現周期データのカウンタ値と１周期前データのカウンタ値との差が２となるまでの間、遅延ありと判定する。一方、カウンタ値の差が２となった場合には、遅延状態が解消されたとして遅延なしと判定する。
【００３０】
補完部３は、比較部５による遅延判定の結果に応じて、現周期において受信されるべきデータのデータ値を推定し補完する補完処理を実行する。これにより、データ補完装置２から通信ネットワーク２０に起因するデータ波形の歪みが補完されたデータ値が出力され、ＰＬＣ１内部で利用可能となる。
【００３１】
比較部５の遅延判定の結果に応じた補完部３の処理について説明する。
比較部５において遅延なしと判定された場合には、通信ネットワーク２０に起因するデータの更新周期のばらつきの影響がなかったとして、補完部３は、記憶部４に格納したデータ値３３ｃをそのまま読み出し、データ補完装置２の出力とする。
【００３２】
一方、比較部５において遅延ありと判定された場合には、補完部３は、２周期前データのデータ値と１周期前データのデータ値との変化率に基づいて、現周期において受信されるべきデータのデータ値を推定し補完する。
【００３３】
図３を参照して、現周期のデータ値の推定について説明する。図３は、各周期とデータ値との関係を示す図である。図３において、ＸＮ＋１は現周期の時刻、ＸＮは１周期前の時刻、ＸＮ−１は２周期前の時刻、ＹＮ＋１は現周期のデータ値、ＹＮは１周期前のデータ値、ＹＮ−１は２周期前のデータ値を示している。現周期においてＸＮ、ＸＮ−１、ＹＮ、ＹＮ−１は既知である。制御サンプリング周期は一定なので、
ＸＮ＋１−ＸＮ＝ＸＮ−ＸＮ−１＝Δｔ  （ｃｏｎｓｔ）
よって、ＸＮ＋１は次式で表わされる。
ＸＮ＋１＝ＸＮ＋Δｔ
【００３４】
変化率ａは、ＸＮ、ＸＮ−１、ＹＮ、ＹＮ−１より次式で表される。
ａ＝（ＹＮ−ＹＮ−１）／（ＸＮ−ＸＮ−１）＝（ＹＮ−ＹＮ−１）／Δｔ
【００３５】
推定したい現周期のデータ値ＹＮ＋１は、微分式として
ＹＮ＋１−ＹＮ＝ａ×（ＸＮ＋１−ＸＮ）＝ａ・Δｔ
で表されるので、これを変形して、
ＹＮ＋１＝（ＹＮ−ＹＮ−１）／Δｔ×Δｔ＋ＹＮ＝ＹＮ×２−ＹＮ−１
すなわち、
（現周期のデータ値）＝（１周期前のデータ値）×２
−（２周期前のデータ値）          …（１）
と表される。
【００３６】
よって、補完部３は、遅延ありと判定された場合に式（１）で表される補完処理を用いて現周期のデータ値を予測演算し、予測演算された現周期のデータ値を、データ補完装置２の出力とする。補完処理は、カウンタの差が２となるまで継続する。補完処理により、記憶部４に記憶された図２のデータ値３３ｃは、図２のデータ値３３ｄのように補完される。
【００３７】
（フローチャート）
図４は、上述の動作を実現するために、データ補完装置２が実行する補完処理ルーチンのフローチャートである。本ルーチンは、終了する度に繰り返し実行される。なお、他のルーチンによって、データ補完装置２は、通信ネットワーク２０から受信したデータを逐次記憶部４に格納している。
【００３８】
図４に示すルーチンでは、まず、比較部５は、記憶部４に格納された現周期データのカウンタ値と１周期前データのカウンタ値との差を算出する（ステップＳ１００）。
【００３９】
次に、比較部５は、カウンタ値の差が０か否かを判定する（ステップＳ１１０）。カウンタ値の差が１と判定された場合は、現周期において受信すべき最新データを受信できており、補完処理は不要である。そのため、ステップＳ１６０の処理に進む。ステップＳ１６０において、補完部３は、記憶部４から現周期データのデータ値をそのまま読み出して、データ補完装置２の出力とする。
【００４０】
一方、ステップＳ１１０において、カウンタ値の差が０と判定された場合、補完部３は、現周期において受信されるべきデータのデータ値を推定し補完する補完処理を実行する（ステップＳ１２０）。具体的には、上述した式（１）を用いて現周期のデータ値を予測演算し、予測演算された現周期のデータ値を、データ補完装置２の出力とする。
【００４１】
その後、次の制御サンプリング周期に進み（ステップＳ１３０）、比較部５は、記憶部４に格納された現周期データのカウンタ値と１周期前データのカウンタ値との差を算出する（ステップＳ１４０）。
【００４２】
次に、比較部５は、カウンタ値の差が２か否かを判定する（ステップＳ１５０）。カウンタ値の差が２と判定されるまでは、ステップＳ１２０に戻って補完処理を継続する。一方、カウンタ値の差が２と判定された場合には、遅延状態が解消し、現周期において受信すべき最新データを受信できており、補完処理は不要である。そのため、ステップＳ１６０の処理に進む。ステップＳ１６０において、補完部３は、記憶部４から現周期データのデータ値をそのまま読み出して、データ補完装置２の出力とする。その後、本ルーチンは終了され、次の制御サンプリング周期において再び本ルーチンは開始される。
【００４３】
以上説明したように、図４に示すルーチンによれば、ＰＬＣ間のデータ通信に、定周期性が確保されない通信ネットワーク２０を用いて、データ更新抜けを伴う遅延が発生した場合であっても、現周期において受信されるべきデータのデータ値を推定し補完することができる。そのため、ＰＬＣ１は、補完したデータ値を用いて制御対象に制御信号を与えることができる。
【００４４】
実施の形態２．
次に、図５を参照して本発明の実施の形態２について説明する。本実施形態のシステムは図１に示す構成において、補完部３に後述する予測演算を実施させることで実現することができる。
【００４５】
上述した実施の形態１では、２周期前のデータのデータ値と１周期前のデータのデータ値との変化率（傾き）に着目し、上述した式（１）を用いて現周期において受信されるべきデータのデータ値を予測演算している。しかしながら、図５に示すように、変化率（傾き）の変化が急峻な場合には予測演算の精度が悪くなる。そこで、本実施形態では、１周期前と２周期前との間のデータ値の変化率と、２周期前と３周期前との間のデータ値の変化率との変化量に基づいて、現周期のデータのデータ値を予測演算する。
【００４６】
図５を参照して、現周期のデータ値の推定について説明する。図５は、各周期とデータ値との関係を示す図である。図５において、ＸＮ＋１は現周期の時刻、ＸＮは１周期前の時刻、ＸＮ−１は２周期前の時刻、ＸＮ−２は３周期前の時刻、ＹＮ＋１は現周期のデータ値、ＹＮは１周期前のデータ値、ＹＮ−１は２周期前のデータ値、ＹＮ−２は３周期前のデータ値を示している。現周期においてＸＮ、ＸＮ−１、ＸＮ−２、ＹＮ、ＹＮ−１、ＹＮ−２は既知である。制御サンプリング周期は一定なので、
ＸＮ＋１−ＸＮ＝ＸＮ−ＸＮ−１＝ＸＮ−１−ＸＮ−２＝Δｔ  （ｃｏｎｓｔ）
よって、ＸＮ＋１は次式で表される。
ＸＮ＋１＝ＸＮ＋Δｔ
【００４７】
変化率ａＮは、ＸＮ、ＸＮ−１、ＹＮ、ＹＮ−１より次式で表される。
ａＮ＝（ＹＮ−ＹＮ−１）／（ＸＮ−ＸＮ−１）＝（ＹＮ−ＹＮ−１）／Δｔ
変化率ａＮ−１は、ＸＮ−１、ＸＮ−２、ＹＮ−１、ＹＮ−２より次式で表される。
ａＮ−１＝（ＹＮ−１−ＹＮ−２）／（ＸＮ−１−ＸＮ−２）＝（ＹＮ−１−ＹＮ−２）／Δｔ
変化率ａＮ＋１は、次式で表される。
ａＮ＋１＝ａ×Δｔ＋ａＮ
ここで、ａ＝（ａＮ−ａＮ−１）／Δｔ
よって、ａＮ＋１＝２ａＮ−ａＮ−１＝（２ＹＮ−３ＹＮ−１＋ＹＮ−２）／Δｔ
【００４８】
推定したい現周期のデータ値ＹＮ＋１は、
ＹＮ＋１＝ａＮ＋１・Δｔ＋ＹＮ＝３ＹＮ−３ＹＮ−１＋ＹＮ−２
すなわち、
（現周期のデータ値）＝（１周期前のデータ値）×３
−（２周期前のデータ値）×３
＋（３周期前のデータ値）          …（２）
と表される。
【００４９】
よって、補完部３は、遅延ありと判定された場合に式（２）で表される補完処理を用いて現周期のデータ値を予測演算し、予測演算された現周期のデータ値を、データ補完装置２の出力とする。補完処理は、カウンタの差が２となるまで継続する。補完処理により、記憶部４に記憶された図２のデータ値３３ｃは、図２のデータ値３３ｄのように補完される。
【００５０】
以上説明したように、本発明の実施の形態２によれば、補完部３において予測演算に式（２）を用いることで、図５のように変化率（傾き）の変化が急峻な場合においても、実施の形態１と同様に、現周期において受信されるべきデータのデータ値を推定し補完することができる。そのため、ＰＬＣ１は補完したデータ値を用いて制御対象に制御信号を与えることができる。
【００５１】
実施の形態３．
次に、図６を参照して本発明の実施の形態３について説明する。図６に示す構成は、カウンタ部６、比較部５ａを除き図１の構成と同様である。
【００５２】
上述した実施の形態１では、ＰＬＣ１とＰＬＣ３０は同じ制御サンプリング周期で動作していることを前提としていたが、ＰＬＣ１自身の動作周期がＰＬＣ３０の制御サンプリング周期と異なる場合もある。そこで、本実施形態では、独立したカウンタ部６をＰＬＣ１内部に実装し、ＰＬＣ３０のカウンタ部３２との時間的関係を定義することで、ＰＬＣ１の動作周期をＰＬＣ３０の制御サンプリング周期に合わせることとした。このとき、比較部５ａでは、カウンタ部６からのカウンタ値と、記憶部４から読み出したＰＬＣ３０のカウンタ部３２のカウンタ値との時間的関係を考慮したタイミングで、補完部３に遅延判定の結果を出力する。比較部５ａにおける遅延判定内容は図１の比較部５と同様である。また、その他の処理は実施の形態１と同様であるため説明は省略する。
【００５３】
以上説明したように、本発明の実施の形態３によれば、ＰＬＣ１自身の動作周期がＰＬＣ３０の制御サンプリング周期と異なる場合であっても、実施の形態１、２で説明した補完処理を適用することができ、同様の効果を得ることができる。
【符号の説明】
【００５４】
１  ＰＬＣ
２  データ補完装置
３  補完部
４  記憶部
５、５ａ  比較部
６  カウンタ部
２０  通信ネットワーク
３０  ＰＬＣ
３１  データ出力部
３２  カウンタ部
３３  データ値
３４  カウンタ値
【図１】
0006524920.tif 000002
【図２】
0006524920.tif 000003
【図３】
0006524920.tif 000004
【図４】
0006524920.tif 000005
【図５】
0006524920.tif 000006
【図６】
0006524920.tif 000007