(57)【要約】【課題】  安全機能の信頼性が高い安全制御装置を提供する。【解決手段】  制御対象としての出力機器の安全を確保する安全制御装置であって、基準ビット列Ｂと相関があるテストビット列Ｔを含むフレームを別の安全制御装置との間の通信に使用する通信手段と、別の安全制御装置から受信したフレームに含まれるテストビット列Ｔを基準ビット列Ｂと対比して当該フレームにおけるビットエラー数を検出する検出手段とを備えることを特徴とする。【選択図】    図１
2006040148.tif 000002
【特許請求の範囲】
【請求項１】
制御対象の安全を確保する安全制御装置であって、
基準ビット列と相関があるテストビット列を含むフレームを別の前記安全制御装置との間の通信に使用する通信手段と、
別の前記安全制御装置から受信した前記フレームに含まれる前記テストビット列を前記基準ビット列と対比して当該フレームにおけるビットエラー数を検出する検出手段とを備えることを特徴とする安全制御装置。
【請求項２】
前記テストビット列の少なくとも一部は、前記基準ビット列のコピービット列であることを特徴とする請求項１に記載の安全制御装置。
【請求項３】
前記テストビット列の少なくとも一部は、前記基準ビット列の反転ビット列であることを特徴とする請求項１又は２に記載の安全制御装置。
【請求項４】
前記テストビット列は、前記基準ビット列のコピービット列と、前記基準ビット列の反転ビット列とから構成されることを特徴とする請求項２又は３に記載の安全制御装置。
【請求項５】
前記基準ビット列と前記テストビット列とは、互いの相関を維持しつつ経時変化することを特徴とする請求項１〜４のいずれか一項に記載の安全制御装置。
【請求項６】
前記フレームは、前記基準ビット列と前記テストビット列とを含むことを特徴とする請求項５に記載の安全制御装置。
【請求項７】
設定周期毎にカウント値をインクリメントするカウント手段をさらに備え、
前記基準ビット列は前記カウント値を表すことを特徴とする請求項５又は６に記載の安全制御装置。
【請求項８】
前記検出手段が検出した前記ビットエラー数の累積値を記憶する記憶手段をさらに備えることを特徴とする請求項１〜７のいずれか一項に記載の安全制御装置。
【請求項９】
設定時間内における前記累積値が許容値を超えた場合に、前記制御対象の安全を確保するための制御を行う安全確保手段をさらに備えることを特徴とする請求項８に記載の安全制御装置。
【請求項１０】
前記記憶手段は、前記累積値を前記設定時間毎に更新することを特徴とする請求項９に記載の安全制御装置。
【請求項１１】
請求項１〜１０のいずれか一項に記載の安全制御装置が通信回線を介して複数接続されてなる安全制御システム。
【請求項１２】
制御対象の安全を確保する安全制御装置において別の前記安全制御装置との間の通信エラーを検出する方法であって、
基準ビット列と相関があるテストビット列を含むフレームを別の前記安全制御装置から受信する受信段階と、
前記受信段階で受信した前記フレームに含まれる前記テストビット列を前記基準ビット列と対比して当該フレームにおけるビットエラー数を検出する検出段階とを含むことを特徴とする通信エラー検出方法。
【請求項１３】
制御対象の安全を確保する複数の安全制御装置間の通信エラーを検出する方法であって、
第１の安全制御装置において、基準ビット列と相関があるテストビット列を含むようにフレームを生成する生成段階と、
前記第１の安全制御装置が生成した前記フレームを第２の安全制御装置へ送信する送信段階と、
前記第２の安全制御装置において、前記第１の安全制御装置から受信した前記フレームに含まれる前記テストビット列を前記基準ビット列と対比して当該フレームにおけるビットエラー数を検出する検出段階とを含むことを特徴とする通信エラー検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御対象の安全を確保する安全制御装置間の通信エラーを検出する技術に関する。
【背景技術】
【０００２】
従来、ファクトリーオートメーションにおいて機械設備を制御するためにプログラマブルコントローラ（ＰＬＣ）等の制御装置が用いられている。近年、このような制御装置には、異常の発生時に機械設備を停止させて安全を確保する安全機能が求められており、そうした安全機能を備えた安全制御装置が提案されている（例えば特許文献１参照）。
【０００３】
一般にファクトリーオートメーションにおける安全制御装置は、多数の機械設備を同時制御するために、通信回線を介して複数接続されてネットワークシステムを構成している。そのため、安全機能の信頼性を高めるには、安全制御装置間において発生する通信エラーを正確に検出する必要がある。
【０００４】
ところで、上述のようにネットワークシステムを構成する安全制御装置間では、例えばハイレベルデータリンクコントロール（ＨＤＬＣ）プロトコル等に従って、フレームを用いた通信が行われる。そしてその際、パリティ検査や巡回冗長検査（ＣＲＣ）によって通信エラーが検出され、訂正される。
【０００５】
【特許文献１】特開２００２−３５８１０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、従来のパリティ検査やＣＲＣによる場合、フレームにおけるビットエラーの有無については検出できるが、エラーの生じたビット数については検出できない。そのため、所定時間内に発生したビットエラー数を正確に把握することができず、このことが、安全機能の信頼性を高める上でネックとなっている。
【０００７】
本発明は、上述の問題に鑑みてなされたものであって、その目的は、安全機能の信頼性が高い安全制御装置並びに安全制御システムを提供することにある。
また、本発明の他の目的は、安全制御装置による安全機能の信頼性を高める通信エラー検出方法を提供することにある。
【課題を解決するための手段】
【０００８】
請求項１に記載の発明は、制御対象の安全を確保する安全制御装置であって、基準ビット列と相関があるテストビット列を含むフレームを別の安全制御装置との間の通信に使用する通信手段と、別の安全制御装置から受信したフレームに含まれるテストビット列を基準ビット列と対比して当該フレームにおけるビットエラー数を検出する検出手段とを備える。この発明においてテストビット列は基準ビット列と相関があるため、別の安全制御装置から受信したフレームに含まれるテストビット列を当該相関を考慮して基準ビット列と対比することで、その受信フレームにおけるビットエラー数を正確に検出できる。即ち通信エラーの検出が正確となるので、制御対象の安全を確保する安全機能について信頼性を高めることができる。
【０００９】
請求項２、４に記載の発明によると、テストビット列の少なくとも一部は、基準ビット列のコピービット列である。そのため、受信フレームに含まれるテストビット列のコピービット列をそのまま基準ビット列とビット比較するだけで容易にビットエラー数を検出できる。したがって、テストビット列を基準ビット列と対比してビットエラー数を検出するための処理時間が短縮される。
【００１０】
受信フレームに含まれるテストビット列のコピービット列に、所定ビットが「０」又は「１」に固定されるスタックアウトによるエラーが生じている場合、当該コピービット列と基準ビット列とのビット比較によってはビットエラー自体を検出できないことがある。
請求項３、４に記載の発明によると、テストビット列の少なくとも一部は、基準ビット列の反転ビット列である。そのため、受信フレームに含まれるテストビット列の反転ビット列に上記スタックアウトによるエラーが生じていても、当該反転ビット列を再反転したものを基準ビット列とビット比較することで、ビットエラーを確実に検出できる。したがって、ビットエラー数を正確に検出することが可能となる。
【００１１】
受信フレームのテストビット列にビットエラーが生じていても、当該テストビット列と基準ビット列との相関に変化が現れないことがあり、この場合、テストビット列と基準ビット列との対比によってビットエラー自体を検出できなくなる。
請求項５に記載の発明によると、基準ビット列とテストビット列とは、互いの相関を維持しつつ経時変化するため、ある時点ではビットエラーを検出できなくても、その後に経時変化した基準ビット列とテストビット列とを対比することでビットエラーの検出が可能となる。したがって、ビットエラー数の検出精度を高めることができる。
【００１２】
請求項６に記載の発明によると、フレームは、基準ビット列とテスビット列とを含む。これにより、通信を行う安全制御装置間において基準ビット列をその経時変化に拘わらず共通化できる。また、例えば複数の安全制御装置を接続してなるシステムに追加の安全制御装置を接続するような場合には、接続前の処理を中断することなく全安全制御装置に共通の基準ビット列を実現できる。
【００１３】
請求項７に記載の発明は、設定周期毎にカウント値をインクリメントするカウント手段をさらに備え、基準ビット列は当該カウント手段のカウント値を表す。これにより、基準ビット列は設定周期毎に変化し、当該基準ビット列と相関があるテストビット列もまた、設定周期毎に変化する。したがって、互いの相関を維持しつつ経時変化する基準ビット列とテストビット列とを比較的簡単な方法により実現できる。
【００１４】
請求項８に記載の発明は、検出手段が検出したビットエラー数の累積値を記憶する記憶手段をさらに備えるので、当該累積値に基づいて例えば所定時間内に発生したビットエラー数を正確に割り出すことができる。
請求項９、１０に記載の発明は、設定時間内におけるビットエラー数の累積値が許容値を超えた場合に、制御対象の安全を確保するための制御を行う安全確保手段をさらに備える。これにより、許容値を超える数のビットエラーが設定時間内に発生した場合には、制御対象の安全を即座に確保できるので、安全機能の信頼性が保証される。
【００１５】
請求項１１に記載の発明は、請求項１〜１０のいずれか一項に記載の安全制御装置が通信回線を介して複数接続されてなる安全制御システムである。したがって、安全制御システムを構成する請求項１〜１０のいずれか一項に記載の安全制御装置の効果を享受できる。
【００１６】
請求項１２に記載の発明は、制御対象の安全を確保する安全制御装置において別の安全制御装置との間の通信エラーを検出する方法であって、基準ビット列と相関があるテストビット列を含むフレームを別の安全制御装置から受信する受信段階と、受信段階で受信したフレームに含まれるテストビット列を基準ビット列と対比して当該フレームにおけるビットエラー数を検出する検出段階とを含む。この発明においてテストビット列は基準ビット列と相関があるため、別の安全制御装置から受信したフレームに含まれるテストビット列を当該相関を考慮して基準ビット列と対比することで、その受信フレームにおけるビットエラー数を正確に検出できる。即ち通信エラーの検出が正確となるので、制御対象の安全を確保する安全機能について信頼性を高めることができる。
【００１７】
請求項１３の発明は、制御対象の安全を確保する複数の安全制御装置間の通信エラーを検出する方法であって、第１の安全制御装置において、基準ビット列と相関があるテストビット列を含むようにフレームを生成する生成段階と、第１の安全制御装置が生成したフレームを第２の安全制御装置へ送信する送信段階と、第２の安全制御装置において、第１の安全制御装置から受信したフレームに含まれるテストビット列を基準ビット列と対比して当該フレームにおけるビットエラー数を検出する検出段階とを含む。この発明においてテストビット列は基準ビット列と相関があるため、第２の安全制御装置では、第１の安全制御装置から受信したフレームに含まれるテストビット列を当該相関を考慮して基準ビット列と対比することで、その受信フレームにおけるビットエラー数を正確に検出できる。即ち通信エラーの検出が正確となるので、制御対象の安全を確保する安全機能について信頼性を高めることができる。
【００１８】
尚、請求項１〜１３に記載の発明において「ビット列」とは、ビット長が２以上のデータのみならず、１ビットのデータも含むものとして解釈される。
また、請求項１３に記載の発明は、複数の安全制御装置の中から少なくとも１つを「第１の安全制御装置」として選択し、別の少なくとも１つを「第２の安全制御装置」として選択するように実施してもよい。この場合、「第１の安全制御装置」、「第２の安全制御装置」として選択する装置については、時間の経過に従って逐次代えていくようにしてもよい。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施形態を図面に基づいて説明する。
本発明の一実施形態による安全制御システムを図２に示す。安全制御システム１は、光ファイバケーブル等の通信回線２を介して複数の安全制御装置をリング状に接続してなるネットワークシステムである。尚、本実施形態の安全制御システム１において安全制御装置の最大接続数は２４となっているが、ここでは便宜上、安全制御装置が３つ接続されているものとして説明を進める。
【００２０】
安全制御システム１において、符号１０が付された安全制御装置はマスタとして機能し、符号１１、１２が付された残りの安全制御装置はスレーブとして機能する。各安全制御装置１０〜１２には、非常ボタン、安全センサ等の入力機器３と、モータ、ロボット等の出力機器４が通信回線５を介して接続されている。各安全制御装置１０〜１２の協働によって安全制御システム１は、各入力機器３からの入力情報に基づく各出力機器４の制御を行って各出力機器４の安全を確保する。
【００２１】
安全制御システム１の各安全制御装置１０〜１２は、図２及び図３に示すように、通信モジュール２０と入出力モジュール３０とバスモジュール４０とから構成されている。
通信モジュール２０は、図２に示すように、内部バス２１を介して互いに接続されたＭＰＵ２２、ＲＡＭ２３及びＨＤＬＣコントローラ２４と、ＨＤＬＣコントローラ２４に接続されたインタフェース２５とを備えている。
【００２２】
ＭＰＵ２２は、入出力モジュール３０にバスモジュール４０を介して接続されている。ＭＰＵ２２はＲＯＭ２７を有しており、当該ＲＯＭ２７に記憶されているプログラムを実行することでＨＤＬＣコントローラ２４及び入出力モジュール３０を制御する。特に安全制御装置１０のＲＯＭ２７には、ラダー言語で記述されたシーケンスプログラムが記憶されており、このシーケンスプログラムを安全制御装置１０のＭＰＵ２２が実行することで安全制御システム１全体が制御される。即ち安全制御装置１０はプログラマブルコントローラ（ＰＬＣ）であり、それを有する安全制御システム１はＰＬＣシステムであると言える。
ＲＡＭ２３には、ＭＰＵ２２とＨＤＬＣコントローラ２４及び入出力モジュール３０との間でやり取りされるカウント値、ビットエラー数等の各種情報が逐次記憶される。
【００２３】
インタフェース２５は、それが設けられている安全制御装置とは別の二つの安全制御装置のうち一方に通信回線２を介して接続される出力コネクタ２８と、その他方に通信回線２を介して接続される入力コネクタ２９とを有している。
ＨＤＬＣコントローラ２４は、ＨＤＬＣプロトコルに準拠したフレームを生成し、その生成したフレームを出力コネクタ２８に接続の安全制御装置へと送信する。また、ＨＤＬＣコントローラ２４は、入力コネクタ２９に接続の安全制御装置から受信したフレームのうち、当該ＨＤＬＣコントローラ２４が設けられた安全制御装置を送信先に含むフレームについて解析処理し、その解析結果を利用して通信エラーを処理する。またさらにＨＤＬＣコントローラ２４は、上記受信フレームのうち、当該ＨＤＬＣコントローラ２４が設けられた安全制御装置とは別の安全制御装置を送信先に含むフレームについて出力コネクタ２８に接続の安全制御装置側へ送信する。
【００２４】
入出力モジュール３０は、通信回線５を介して入力機器３及び出力機器４に接続されている。入出力モジュール３０は、バスモジュール４０を介して接続されるＭＰＵ２２の指令を受けて入力機器３の情報を当該ＭＰＵ２２に与える。また、入出力モジュール３０は、ＭＰＵ２２の指令を受けて出力機器４の電源をオン、オフする。
【００２５】
このような安全制御システム１では、安全制御装置１０のＭＰＵ２２がＲＯＭ２７のシーケンスプログラムに従って安全制御システム１全体における通信を設定周期毎に管理する。この管理の下、各安全制御装置１０〜１２間では、フレームを用いた通信が周期毎に決められた順序で実施される。
【００２６】
以上、安全制御システム１の概略について説明した。
以下、安全制御システム１の特徴部分についてさらに詳細に説明する。
まず、各安全制御装置１０〜１２間の通信に使用されるフレームについて詳しく説明する。
【００２７】
図１に模式的に示すようにフレームは、二つのフラグシーケンスＦと、それらの間に挟まれる送信先アドレス部ＤＡ、送信元アドレス部ＳＡ、フレームタイプ部ＦＴ、ビット長部Ｌ、情報部Ｉ、テスト部Ｔ及びフレームチェックシーケンスＦＣＳとからなる。
フラグシーケンスＦは、ＨＤＬＣプロトコルにおいて「０１１１１１１０」と決められている１バイトのビット列である。送信先アドレス部ＤＡは、フレーム送信先の安全制御装置のアドレスを表す１バイトのビット列である。送信元アドレス部ＳＡは、フレーム送信元の安全制御装置のアドレスを表す１バイトのビット列である。フレームタイプ部ＦＴは、フレーム送信先への指令内容、フレームの通し番号、重故障の発生情報等の組み合わせによって定義されるフレームタイプを表す２バイトのビット列である。ビット長部Ｌは、情報部Ｉ及びテスト部Ｔのトータルのビット長を表す２バイトのビット列である。
【００２８】
情報部Ｉは、フレーム送信先へ与える複数の制御情報を表す１バイト以上のビット列である。本実施形態の情報部Ｉにおいて最後の１バイトは、フレーム送信先へ与える制御情報のうち、フレーム送信元のＲＡＭ２３に記憶されているカウント値を表す基準ビット列Ｂである。テスト部Ｔは２バイトのテストビット列であり、基準ビット列Ｂをコピーしてなるコピービット列Ｃと、基準ビット列Ｂを反転してなる反転ビット列Ｒとから構成されている。フレームチェックシーケンスＦＣＳは、ＣＲＣ用の情報を表す２バイトのビット列である。
次に、安全制御装置１０〜１２のＨＤＬＣコントローラ２４によるフレームの生成方法について説明する。
各安全制御装置１０〜１２においてＨＤＬＣコントローラ２４は、ＭＰＵ３０からの指令を受けると、フレームの生成処理を実行する。具体的にＨＤＬＣコントローラ２４は、ＭＰＵ２２から与えられる送信先アドレス、送信元アドレス及びフレームタイプをそれぞれ表すように送信先アドレス部ＤＡ、送信元アドレス部ＳＡ及びフレームタイプ部ＦＴを生成する。
【００２９】
また、ＨＤＬＣコントローラ２４は、処理開始時におけるＲＡＭ２３のカウント値を表すように基準ビット列Ｂを生成する。この生成した基準ビット列ＢをＨＤＬＣコントローラ２４は、ＭＰＵ２２から与えられる制御情報を表すビット列と併合させて情報部Ｉを生成する。それと共にＨＤＬＣコントローラ２４は、生成した基準ビット列Ｂをコピーしてなるコピービット列Ｃと、基準ビット列Ｂを反転してなる反転ビット列Ｒとを生成し、それらビット列Ｃ、Ｒからなるテスト部Ｔを生成する。そして、ＨＤＬＣコントローラ２４はさらに、生成した情報部Ｉとテスト部Ｔとからビット長部Ｌを生成する。
またさらにＨＤＬＣコントローラ２４は、上述のように生成した各部ＤＡ、ＳＡ、ＦＴ、Ｉ、Ｔ、ＬからフレームチェックシーケンスＦＣＳを生成する。
【００３０】
次に、各安全制御装置１０〜１２のＨＤＬＣコントローラ２４によるフレームの解析方法について説明する。
各安全制御装置１０〜１２においてＨＤＬＣコントローラ２４は、解析対象フレームを受信すると、当該フレームの解析処理を実行する。具体的にＨＤＬＣコントローラ２４は、解析対象フレームのフレームタイプ部ＦＴからフレームタイプを抽出し、その抽出したフレームタイプをＭＰＵ２２に与える。また、ＨＤＬＣコントローラ２４は、解析対象フレームのフレームチェックシーケンスＦＣＳからＣＲＣ用の情報を抽出し、その抽出した情報を利用してＣＲＣを実行する。
【００３１】
またさらにＨＤＬＣコントローラ２４は、解析対象フレームのテスト部Ｔからコピービット列Ｃ及び反転ビット列Ｒを抽出し、それら抽出したビット列Ｃ、ＲをＭＰＵ２２に与える。それと共にＨＤＬＣコントローラ２４は、解析対象フレームの情報部Ｉから基準ビット列Ｂを抽出し、その抽出した基準ビット列ＢをＭＰＵ２２に与える。
【００３２】
次に、各安全制御装置１０〜１２における通信エラーの処理方法について、図４のフローチャートを参照しつつ説明する。尚、図４では、安全制御装置１０をマスタ、安全制御装置１１、１２をスレーブと表記している。
各安全制御装置１０〜１２においてＭＰＵ２２は、ＨＤＬＣコントローラ２４からビット列Ｃ、Ｒ、Ｂを与えられると、通信エラー処理を実行する。具体的にＭＰＵ２２は、コピービット列Ｃと基準ビット列Ｂとを上位又は下位から順にビット比較すると共に、反転ビット列Ｒを再反転してなる再反転ビット列Ｒ’と基準ビット列Ｂとを上位又は下位から順にビット比較する（ステップＳ１）。その結果、基準ビット列Ｂにおいてビット列Ｃ及びＲ’の少なくとも一方と一致しないビットが検出される（ステップＳ２）と、ＭＰＵ２２は、当該検出ビットの数をビットエラー数としてＲＡＭ２３に記憶する（ステップＳ３）。このときＲＡＭ２３へのビットエラー数の記憶は、先のビットエラー数に加算するようにして実施される。尚、ＭＰＵ２２は、ＲＡＭ２３に記憶したビットエラー数を設定時間毎に更新する機能も有する。したがって、ＲＡＭ２３に記憶されるビットエラー数は設定時間内における累積値となる。ＭＰＵ２２は、以上のようにしてＲＡＭ２３に記憶されるビットエラー数を監視し、設定時間内におけるビットエラー数の累積値、即ちビットエラーレートが許容値を超える（ステップＳ４）と、重故障ありと判断する（ステップＳ５、Ｓ９）。
【００３３】
安全制御装置１０のＭＰＵ２２は、重故障ありと判断する（ステップＳ５）と、同じ安全制御装置１０の入出力モジュール３０に接続されている出力機器４について電源をオフする（ステップＳ６）。それと共に安全制御装置１０のＭＰＵ２２は、出力機器４の電源オフを指令するフレームタイプを表すフレームタイプ部ＦＴと送信先アドレスが安全制御装置１１、１２である送信先アドレス部ＤＡとを含むフレームをＨＤＬＣコントローラ２４に生成、送信させる（ステップＳ６）。結果、このフレームを受信した安全制御装置１１、１２では、ＨＤＬＣコントローラ２４の解析処理により出力機器４の電源オフ指令がフレームタイプ部ＦＴから抽出されてＭＰＵ２２に与えられ（ステップＳ７）、当該ＭＰＵ２２が、入出力モジュール３０に接続されている出力機器４の電源をオフする（ステップＳ８）。
【００３４】
安全制御装置１１、１２のＭＰＵ２２は、重故障ありと判断する（ステップＳ９）と、重故障の発生を通知するフレームタイプを表すフレームタイプ部ＦＴと送信先アドレスが安全制御装置１０である送信先アドレス部ＤＡとを含むフレームをＨＤＬＣコントローラ２４に生成、送信させる（ステップＳ１０）。結果、このフレームを受信した安全制御装置１０では、ＨＤＬＣコントローラ２４の解析処理により重故障の発生情報がフレームタイプ部ＦＴから抽出されてＭＰＵ２２に与えられ（ステップＳ１１）、当該ＭＰＵ２２が上記重故障ありと判断した場合と同様の処理を実行する（ステップＳ６〜Ｓ８）。したがって、各安全制御装置１０〜１２の入出力モジュール３０に接続されている全出力機器４が電源をオフされる。
このように、各安全制御装置１０〜１２のＨＤＬＣコントローラ２４が「通信手段」に相当し、各安全制御装置１０〜１２のＭＰＵ２２が「検出手段」と「安全確保手段」に相当し、各安全制御装置１０〜１２のＲＡＭ２３とＭＰＵ２２が「記憶手段」に相当する。
【００３５】
次に、各安全制御装置１０〜１２におけるＲＡＭ２３へのカウント値の記憶方法について詳しく説明する。
安全制御装置１０においては、ＭＰＵ２２が１周期の通信を開始する毎にＲＡＭ２３のカウント値をインクリメントする。
【００３６】
安全制御装置１１、１２においては、安全制御装置１０から受信した解析対象フレームの情報部ＩをＨＤＬＣコントローラ２４が上述の如く解析処理して基準ビット列Ｂを抽出し、その抽出した基準ビット列Ｂが表すカウント値をＭＰＵ２２がＲＡＭ２３に記憶する。したがって、安全制御装置１１、１２の各ＲＡＭ２３に記憶されるカウント値は、基本的には、設定周期毎にインクリメントされたものとなる。
このように、各安全制御装置１０〜１２のＭＰＵ２２が「カウント手段」に相当する。
【００３７】
以上説明した安全制御システム１によると、基準ビット列Ｂのコピービット列Ｃと基準ビット列Ｂの反転ビット列Ｒとからなるテスト部Ｔを含んだフレームが各安全制御装置１０〜１２間の通信に使用される。これにより各安全制御装置１０〜１２では、受信したフレームのテスト部Ｔのうちコピービット列Ｃを基準ビット列Ｂとビット比較することで、フレームに生じたビットエラー数を迅速に検出できる。しかも各安全制御装置１０〜１２では、受信フレームのテスト部Ｔの各ビット列Ｃ、Ｒにスタックアウトによるビットエラーが生じ、コピービット列Ｃと基準ビット列Ｂとのビット比較によってはエラー数を検出できない場合でも、反転ビット列Ｒの再反転ビット列Ｒ’を基準ビット列Ｂとビット比較することで、その検出が可能となる。このように各安全制御装置１０〜１２では、受信フレームに含まれるテスト部Ｔの各ビット列Ｃ、Ｒを基準ビット列Ｂとの相関に応じて対比させることで、正確なビットエラー数の検出を実現できる。
【００３８】
さらに安全制御システム１の各安全制御装置１０〜１２では、設定周期毎にインクリメントされるカウント値を表すようにフレームの基準ビット列Ｂが生成される。そのため、基準ビット列Ｂは経時変化するようになり、さらに基準ビット列Ｂのコピービット列Ｃと基準ビット列Ｂの反転ビット列Ｒとから生成されるフレームのテスト部Ｔもまた、基準ビット列Ｂとの相関を維持しつつ経時変化するようになる。したがって、受信フレームのテスト部Ｔの各ビット列Ｃ、Ｒにビットエラーが生じているにも拘わらず、ある時点では各ビット列Ｃ、Ｒと基準ビット列Ｂとの相関に変化が現れずにエラー検出できなくなる場合でも、その後に経時変化した基準ビット列Ｂと各ビット列Ｃ、Ｒとを対比することで、その検出が可能となる。即ち、ビットエラー数の検出精度が高められている。
【００３９】
またさらに安全制御システム１によると、設定時間内におけるビットエラー数の累積値が許容値を超えるような重故障であるといずれかの安全制御装置１０〜１２が判断した場合、各安全制御装置１０〜１２に接続の全出力機器４が電源をオフされる。これにより、制御対象である全出力機器４の安全が即座に確保される。
このように安全制御システム１によれば、通信エラーを代表するビットエラーの数の検出が正確となり、しかもその検出結果を利用して全出力機器４の安全が即座に確保されるので、安全機能について高い信頼性を保証できる。
【００４０】
加えて安全制御システム１の各安全制御装置１０〜１２間では、テスト部Ｔに加えて基準ビット列Ｂを含むフレームが通信に使用されるので、上述の如く経時変化する基準ビット列Ｂを全安全制御装置１０〜１２において共通化できる。また、安全制御装置１１、１２と同様な構成の安全制御装置を図２の安全制御システム１に追加接続するような場合には、接続前の処理を中断することなく全安全制御装置に共通の基準ビット列Ｂを実現できる。
【００４１】
以上、本発明の一実施形態について説明したが、本発明はそのような実施形態に限定して解釈されるべきではない。
例えば、上述の実施形態では、各安全制御装置１０〜１２に入力機器３と出力機器４とを１つずつ接続しているが、安全制御装置への入、出力機器の接続数については適宜設定可能である。
【００４２】
また、上述の実施形態では、安全制御装置１０〜１２のうちマスタとして機能する安全制御装置１０のみをＰＬＣとしているが、スレーブとして機能する安全制御装置についてもＰＬＣとしてもよい。
さらに上述の実施形態では、各安全制御装置１０〜１２の通信モジュール２０と入出力モジュール３０とを、バスモジュール４０にて接続される別々のモジュールとしているが、そのような通信モジュールと入出力モジュールとを１つのモジュールとしてもよい。
【００４３】
またさらに上述の実施形態では、テストビット列としてのテスト部Ｔについて、基準ビット列Ｂのコピービット列Ｃと基準ビット列Ｂの反転ビット列Ｒとから構成している。これに対して例えば、コピービット列Ｃ及び反転ビット列Ｒの一方のみからテスト部Ｔを構成するようにしてもよい。また、ある時点においてはコピービット列Ｃのみからテスト部Ｔを構成し、また別の時点においては反転ビット列Ｒのみからテスト部Ｔを構成するようにしてもよい。このようにして、テスト部Ｔを構成するビット列を時間の経過に従って変えていくようにしても、経時変化するテスト部Ｔを比較的簡単な方法で実現できる。
【図面の簡単な説明】
【００４４】
【図１】本発明の一実施形態において使用されるフレームを説明するための模式図である。
【図２】本発明の一実施形態による安全制御システムを示すブロック図である。
【図３】本発明の一実施形態による安全制御装置を示すブロック図である。
【図４】本発明の一実施形態による通信エラー処理を説明するためのフローチャートである。
【符号の説明】
【００４５】
１  安全制御システム、２、５  通信回線、３  入力機器、４  出力機器（制御対象）、１０、１１、１２  安全制御装置、２０  通信モジュール、２２  ＭＰＵ（検出手段、安全確保手段、記憶手段、カウント手段）、２３  ＲＡＭ（記憶手段）、２４  ＨＤＬＣコントローラ（通信手段）、２５  インタフェース、２７  ＲＯＭ、３０  入出力モジュール、４０  バスモジュール、Ｂ  基準ビット列、Ｃ  コピービット列、Ｉ  情報部、Ｒ  反転ビット列、Ｒ’  再反転ビット列、Ｔ  テスト部（テストビット列）
【図１】
2006040148.tif 000003
【図２】
2006040148.tif 000004
【図３】
2006040148.tif 000005
【図４】
2006040148.tif 000006