(57)【要約】【課題】プログラマブルコントローラのデータ等価が可能な二重化システムにおいて通常動作時のデータ等価の効率化と当該二重化システムの動作高速化及び安定化を図る。【解決手段】ＰＬＣ１は、このＰＬＣ１にて演算処理及び通信処理によりデータメモリ１１のデータの書き換えが行われる場合、ＰＬＣ１のファームウェアプログラムを介在させずにＰＬＣ１のハードウェア回路においてリングバッファ１２に書き換えられたアドレスデータと書き換えたデータとを保存する。また、前記演算処理及び通信処理が行われていない場合、ＰＬＣ１は、リングバッファ１２に保存されたアドレスデータと書き換えたデータに基づき、前記Ｆ／Ｗプログラムを介在させずに、ＰＬＣ１のＨ／Ｗ回路にて通信データ１３を作成し、この通信データ１３を前記データ等価の際にＰＬＣ２に送信する。【選択図】図１
2019117482.tif 000002
【特許請求の範囲】
【請求項１】
プログラマブルコントローラのデータ等価方法であって、
プログラマブルコントローラのデータ等価の際にマスタとして機能するマスタ側のプログラマブルコントローラにて演算処理及び通信処理によりデータメモリのデータの書き換えが行われた場合、当該マスタ側のプログラマブルコントローラが、このプログラマブルコントローラのファームウェアプログラムを介在させずに、当該プログラマブルコントローラのハードウェア回路においてリングバッファに書き換えられたアドレスデータと書き換えたデータとを保存する過程と、
前記演算処理及び通信処理が行われていない場合に、前記マスタ側のプログラマブルコントローラが、前記リングバッファに保存されたアドレスデータと書き換えたデータに基づき、前記ファームウェアプログラムを介在させずに、前記ハードウェア回路にて通信データを作成し、この通信データを前記データ等価の際にスレーブとして機能するスレーブ側のプログラマブルコントローラに送信する過程と
を有することを特徴とするデータ等価方法。
【請求項２】
前記スレーブ側のプログラマブルコントローラにて演算処理及び通信処理が行われていない場合に、当該スレーブ側のプログラマブルコントローラが、このプログラマブルコントローラのファームウェアプログラムを介在させずに、当該プログラマブルコントローラのハードウェア回路にて受信した前記通信データの検定を行い、前記アドレスデータと書き換えたデータに基づき前記データメモリの指定アドレスの指定データを書き換える過程
をさらに有することを特徴とする請求項１に記載のデータ等価方法。
【請求項３】
プログラマブルコントローラのデータ等価の際にマスタとして機能するプログラマブルコントローラであって、
このプログラマブルコントローラにて演算処理及び通信処理によりデータメモリのデータの書き換えが行われる場合に、当該プログラマブルコントローラのファームウェアプログラムを介在させずに、当該プログラマブルコントローラのハードウェア回路にてリングバッファに書き換えられたアドレスデータと書き換えたデータとを保存する一方で、前記演算処理及び通信処理が行われていない場合に、前記リングバッファに保存されたアドレスデータと書き換えたデータに基づき、当該ファームウェアプログラムを介在させずに、前記ハードウェア回路にて通信データを作成し、この通信データを前記データ等価の際にスレーブとして機能するプログラマブルコントローラに送信すること
を特徴とするプログラマブルコントローラ。
【請求項４】
マスタ側のプログラマブルコントローラとスレーブ側のプログラマブルコントローラとの間でデータ等価が可能な二重化システムであって、
前記マスタ側のプログラマブルコントローラは、このプログラマブルコントローラにて演算処理及び通信処理によりデータメモリのデータの書き換えが行われる場合に、当該プログラマブルコントローラのファームウェアプログラムを介在させずに、当該プログラマブルコントローラのハードウェア回路にてリングバッファに書き換えられたアドレスデータと書き換えたデータとを保存する一方で、前記演算処理及び通信処理が行われていない場合に、前記リングバッファに保存されたアドレスデータと書き換えたデータに基づき、当該ファームウェアプログラムを介在させずに、前記ハードウェア回路にて通信データを作成し、この通信データを前記スレーブ側のプログラマブルコントローラに送信し、
前記スレーブ側のプログラマブルコントローラは、このプログラマブルコントローラにて演算処理及び通信処理が行われていない場合に、当該プログラマブルコントローラのファームウェアプログラムを介在させずに、当該プログラマブルコントローラのハードウェア回路にて受信した前記通信データの検定を行い、前記アドレスデータと書き換えたデータに基づき前記データメモリの指定アドレスの指定データを書き換えること
を特徴とする二重化システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＬＣ（プログラマブルコントローラ）を二重化したステムの通常動作時における、マスタとスレーブと間のデータ等価の技術に関する。
【背景技術】
【０００２】
ＰＬＣでは、演算結果や通信にて受信したデータをユーザが使用するメモリ（データメモリ）上に格納する。複数のＰＬＣを有数する二重化システムにおいてはシリアルケーブル等の二重化ケーブルを介して互いに通信可能な複数のＰＬＣの間でマスタ側のＰＬＣとスレーブ側のＰＬＣとでデータメモリが等価される（特許文献１）。
【０００３】
図３を参照しながらＰＬＣの二重化システムにおける従来のデータ等価方法について説明する。通常動作時のデータメモリの従来の等価方式においてはマスタ側のＰＬＣ１に設定された周期毎に演算処理や通信処理が行われる。演算結果や通信処理のデータ１０は、ＰＬＣ１のデータメモリ１１に展開された後、演算処理や通信処理が行われていないバックグラウンド時に、ＰＬＣ１のファームウェアプログラムにてデータメモリ１１のデータが分割されてスレーブ側のＰＬＣ２に送信される。スレーブ側のＰＬＣ２は演算処理や通信処理を行っていないバックグラウンド時にＰＬＣ２のファームウェアプログラムにてマスタ側のＰＬＣ１から送信された等価用のデータ１０を受信してデータメモリ２１のデータを等価する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平４−４９４０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
図３に例示の従来のデータ等価方式では、マスタ側のＰＬＣ１のデータメモリ１１の全エリアが分割され、全てのエリアの等価データ（１）〜（５）がスレーブ側のＰＬＣ２に送信される。マスタ側のＰＬＣ１の演算処理や通信処理の設定された周期によっては、バックグラウンド時にデータメモリ１１の全エリアが分割され、全てのデータがスレーブ側のＰＬＣ２に送信されるのが困難な状況もある。
【０００６】
実用上の観点から、マスタのＰＬＣ１においては、データメモリ１１の等価を実際に行う必要があるエリアは、設定された周期で動作した演算処理や通信処理でデータが書き換えられたデータメモリ１１のエリアだけで十分である。
【０００７】
しかしながら、現状のデータ等価方式においては、データが書き換えられていないエリアも含めて、全てのデータメモリのエリアを等価するため、分割された全てのデータがスレーブのＰＬＣ２へ送信されている。したがって、現状の二重化システムおいては、効率的なデータ等価が行われていないことから、動作の鈍化及び不安定化を招いていた。
【０００８】
本発明は、上記の事情の鑑み、プログラマブルコントローラのデータ等価が可能な二重化システムにおいて通常動作時のデータ等価の効率化と当該二重化システムの動作高速化及び安定化を図ることを課題とする。
【課題を解決するための手段】
【０００９】
そこで、本発明の一態様は、プログラマブルコントローラのデータ等価方法であって、プログラマブルコントローラのデータ等価の際にマスタとして機能するマスタ側のプログラマブルコントローラにて演算処理及び通信処理によりデータメモリのデータの書き換えが行われた場合、当該マスタ側のプログラマブルコントローラが、このプログラマブルコントローラのファームウェアプログラムを介在させずに、当該プログラマブルコントローラのハードウェア回路においてリングバッファに書き換えられたアドレスデータと書き換えたデータとを保存する過程と、前記演算処理及び通信処理が行われていない場合に、前記マスタ側のプログラマブルコントローラが、前記リングバッファに保存されたアドレスデータと書き換えたデータに基づき、前記ファームウェアプログラムを介在させずに、前記ハードウェア回路にて通信データを作成し、この通信データを前記データ等価の際にスレーブとして機能するスレーブ側のプログラマブルコントローラに送信する過程とを有する。
【００１０】
本発明の一態様は、前記データ等価方法において、前記スレーブ側のプログラマブルコントローラにて演算処理及び通信処理が行われていない場合に、当該スレーブ側のプログラマブルコントローラが、このプログラマブルコントローラのファームウェアプログラムを介在させずに、当該プログラマブルコントローラのハードウェア回路にて受信した前記通信データの検定を行い、前記アドレスデータと書き換えたデータに基づき前記データメモリの指定アドレスの指定データを書き換える過程をさらに有する。
【００１１】
本発明の一態様は、プログラマブルコントローラのデータ等価の際にマスタとして機能するプログラマブルコントローラであって、このプログラマブルコントローラにて演算処理及び通信処理によりデータメモリのデータの書き換えが行われる場合に、当該プログラマブルコントローラのファームウェアプログラムを介在させずに、当該プログラマブルコントローラのハードウェア回路にてリングバッファに書き換えられたアドレスデータと書き換えたデータとを保存する一方で、前記演算処理及び通信処理が行われていない場合に、前記リングバッファに保存されたアドレスデータと書き換えたデータに基づき、当該ファームウェアプログラムを介在させずに、前記ハードウェア回路にて通信データを作成し、この通信データを前記データ等価の際にスレーブとして機能するプログラマブルコントローラに送信する。
【００１２】
本発明の一態様は、マスタ側のプログラマブルコントローラとスレーブ側のプログラマブルコントローラとの間でデータ等価が可能な二重化システムであって、前記マスタ側のプログラマブルコントローラは、このプログラマブルコントローラにて演算処理及び通信処理によりデータメモリのデータの書き換えが行われる場合に、当該プログラマブルコントローラのファームウェアプログラムを介在させずに、当該プログラマブルコントローラのハードウェア回路にてリングバッファに書き換えられたアドレスデータと書き換えたデータとを保存する一方で、前記演算処理及び通信処理が行われていない場合に、前記リングバッファに保存されたアドレスデータと書き換えたデータに基づき、当該ファームウェアプログラムを介在させずに、前記ハードウェア回路にて通信データを作成し、この通信データを前記スレーブ側のプログラマブルコントローラに送信し、前記スレーブ側のプログラマブルコントローラは、このプログラマブルコントローラにて演算処理及び通信処理が行われていない場合に、当該プログラマブルコントローラのファームウェアプログラムを介在させずに、当該プログラマブルコントローラのハードウェア回路にて受信した前記通信データの検定を行い、前記アドレスデータと書き換えたデータに基づき前記データメモリの指定アドレスの指定データを書き換える。
【発明の効果】
【００１３】
以上の本発明によれば、プログラマブルコントローラのデータ等価が可能な二重化システムにおいて通常動作時のデータ等価の効率化と当該二重化システムの動作高速化及び安定化を図ることができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態であるＰＬＣの二重化システムにおけるデータ等価の説明図。
【図２】図１の実施形態における演算処理、通信処理、データ等価のタイムチャート。
【図３】従来のＰＬＣの二重化システムにおけるデータ等価の説明図。
【発明を実施するための形態】
【００１５】
以下に図面を参照しながら本発明の実施形態について説明する。
【００１６】
図１に示された本実施形態のＰＬＣが二重化されるシステム（以下、二重化システム）において、ＰＬＣ（マスタ）１は二重化システムにおけるマスタとして機能する一方で、ＰＬＣ（スレーブ）２は二重化システムにおけるスレーブとして機能する。
【００１７】
ＰＬＣ（マスタ）１は、設定されたイベント周期で動作した演算処理や通信処理でデータが書き換えられたデータメモリのエリアだけＰＬＣ（スレーブ）２に送信することにより、効率的なデータメモリの等価を実現する。図３に例示のイベント周期は、少なくとも、ＰＬＣ１での演算処理の過程Ｔ１、通信処理の過程Ｔ２、データ等価処理の過程Ｔ３、ＰＬＣ２でのデータ等価処理の過程Ｔ４を含む。
【００１８】
ＰＬＣ１は、このＰＬＣ１にて演算処理及び通信処理によりデータメモリ１１のデータの書き換えが行われる場合に、ＰＬＣ１のファームウェアプログラム（以下、Ｆ／Ｗプログラム）を介在させずに、ＰＬＣ１のハードウェア回路（以下、Ｈ／Ｗ回路）においてリングバッファ１２に書き換えられたアドレスデータと書き換えたデータとを保存する。
【００１９】
また、前記演算処理及び通信処理が行われていない場合、ＰＬＣ１は、リングバッファ１２に保存されたアドレスデータと書き換えたデータに基づき、前記Ｆ／Ｗプログラムを介在させずに、ＰＬＣ１のＨ／Ｗ回路にて通信データ１３を作成し、この通信データ１３を前記データ等価の際にＰＬＣ２に送信する。
【００２０】
一方、ＰＬＣ２は、このＰＬＣ２にて演算処理及び通信処理が行われていない場合には、ＰＬＣ２のＦ／Ｗプログラムを介在させずに、ＰＬＣ２のＨ／Ｗ回路にて受信した通信データ１３の検定を行い、前記アドレスデータと書き換えたデータに基づき、データメモリ２１の指定アドレスの指定データを書き換える。
【００２１】
本実施形態のデータメモリの等価に供されるデータの構造例について説明する。
【００２２】
（データメモリ１１）
ＰＬＣ（マスタ）１は、データメモリ１１を用いて演算処理や通信処理を行う。演算処理を行う場合の基本的なＨ／Ｗ回路の動作は、アプリケーションで指定されたデータメモリ１１のアドレスに基づきデータを読み出し、そのデータを使用し演算を行い、演算結果のデータを、データメモリ１１に書き込む。
【００２３】
（リングバッファ１２）
ＰＬＣ（マスタ）１のリングバッファ１２は、メモリ領域をリング状のメモリ領域として使用し、アドレスデータと書き換えデータを保存する領域として使用する。リングバッファ１２を管理するために、リングバッファ１２には、データの書き込み先アドレスポインタと、データを送信するためのアドレスポインタを格納する領域が確保される。書き込み先アドレスポインタは、アドレスデータと書き換えたデータの書き込み先のアドレスを示し、Ｈ／Ｗ回路にて書き込み完了後、次アドレスへ更新される。データを送信するためのアドレスポインタは、通信データ１３のデータ部の送信データの先頭アドレスを示し、Ｈ／Ｗ回路にて通信データ１３のデータ部を作成した後、次アドレスへ更新される。
【００２４】
（通信データ１３）
通信データ１３は、Ethernet（登録商標）等の周知のローカルエリアネットワークの規格に準拠した通信を行うための通信データであり、ヘッダ部とデータ部からなる。データ部には、送信通番、等価データ（アドレスデータと書き換えたデータ）、送信通番反転値からなる。通信データ１３は、ＰＬＣ（マスタ）１からＰＬＣ（スレーブ）２へ送信されるデータである。
【００２５】
（データメモリ２１）
ＰＬＣ（スレーブ）２は、データメモリ２１を使用して、演算処理や通信処理を行う。演算を行う場合の基本的なＨ／Ｗ回路の動作は、アプリケーションで指定されたデータメモリ２１のアドレスに基づきデータを読み出し、そのデータを使用し演算を行い、演算結果のデータを、データメモリ２１に書き込む。
【００２６】
また、ＰＬＣ（スレーブ）２は、通信データ１３を受信後、演算処理・通信処理が終了したら、Ｈ／Ｗ回路にて受信したデータから、ＰＬＣ（マスタ）１で書き換えられたアドレスのデータを、データメモリ２１に展開する。
【００２７】
（本実施形態のデータメモリの等価の説明）
図１，２を参照しながら通常動作時の効率的なデータメモリの等価の過程Ｓ１〜Ｓ４について説明する。Ｓ１〜Ｓ４の過程を順番に繰り返し行うことにより、Ｈ／Ｗ回路による効率的なデータメモリの等価を実現する。
【００２８】
Ｓ１：演算処理及び通信処理によるデータの書き換え
ＰＬＣ（マスタ）１は、演算処理及び通信処理の過程で、データメモリ１１をライトアクセスしてデータを書き換える。このとき、同時にライトアクセス時のアドレスデータと書き換えたデータをリングバッファ１２に保存する機能をＨ／Ｗ回路にて実現する。
【００２９】
Ｓ２：リングバッファ１２のデータの送信
ＰＬＣ（マスタ）１において、演算処理・通信処理が終了すると、ＰＬＣ（マスタ）１のＨ／Ｗ回路はリングバッファ１２に保存されているアドレスデータと書き換えたデータに基づき通信データ１３を作成する。さらに、Ｈ／Ｗ回路は、通信データ１３のデータ部の先頭には送信通番を、最終データには送信通番反転値を設定する。
【００３０】
Ｓ３：通信データ１３の送信
ＰＬＣ（マスタ）１のＨ／Ｗ回路は、Ｓ２の過程で作成した通信データ１３をＰＬＣ（スレーブ）２に送信する。
【００３１】
Ｓ４：通信データ１３の展開
ＰＬＣ（スレーブ）２はＰＬＣ（マスタ）１から送信された通信データ１３を受信し、演算処理・通信処理を終了させると、ＰＬＣ（スレーブ）２のＨ／Ｗ回路は通信データ１３の送信通番と送信通番反転値が一致することを確認する。次いで、Ｈ／Ｗ回路は、前記アドレスデータと書き換えたデータに基づきデータメモリ２１の指定アドレスの指定データを書き換える。
【００３２】
以上の本実施形態の二重化システムによれば、通常動作時のデータ等価において、ＰＬＣ（マスタ）１にて演算処理及び通信処理によりデータメモリ１１のデータが書き換えられた（ライトアクセス時）の場合、Ｆ／Ｗプログラムを介在させずに、Ｈ／Ｗ回路にてリングバッファ１２に書き換えられたアドレスデータと書き換えたデータとが保存される。
【００３３】
また、本態様の通常動作時のデータ等価において、ＰＬＣ（マスタ）１にて演算処理及び通信処理が行われていない場合、リングバッファ１２に保存されたアドレスデータと書き換えたデータに基づき、Ｆ／Ｗプログラムを介在させずに、Ｆ／Ｗ回路にて通信データ１３が作成される。そして、この通信データ１３がＰＬＣ（スレーブ）２に送信される。
【００３４】
さらに、本態様の通常動作時のデータ等価において、ＰＬＣ（スレーブ）２にて演算処理・通信処理が行われていない時、Ｆ／Ｗプログラムを介在させずに、Ｈ／Ｗ回路にて受信した通信データ１３の検定が行われる。そして、この通信データ１３のアドレスデータと書き換えたデータに基づき、データメモリ２１の指定アドレスの指定データが書き換えられる。
【００３５】
したがって、以上の本実施形態のプログラマブルコントローラのデータ等価方法や二重化システムによれば、通常動作時のデータ等価が効率化され、システムの動作高速化、及び安定化を図ることができる。
【００３６】
尚、本発明は、以上説明した実施形態に限定されるものではなく、本発明の特許請求の範囲内で様々な態様で実施が可能である。
【符号の説明】
【００３７】
１…ＰＬＣ（マスタ）
２…ＰＬＣ（スレーブ）
１１，２１…データメモリ
１３…通信データ
【図１】
2019117482.tif 000003
【図２】
2019117482.tif 000004
【図３】
2019117482.tif 000005