(57)【要約】  高速のＣＰＵを用いることなく、応答時間を短縮することができる安全制御装置を得ることために、指令判別部２１ａ、２１ｂは、入力された出力指令がＯＮ指令であるのかＯＦ指令であるのかを判別し、照合部２２ａ、２２ｂは、自身の指令判別部２１ａ、２１ｂの判別結果を相手側に送信して指令判別部２１ａ、２１ｂの判別結果を照合する。出力部２４ａ、２４ｂは、指令判別部２１ａ、２１ｂの判別結果がＯＦＦ指令である場合、または照合部２２ａ、２２ｂの照合結果が不一致である場合には、スイッチＳＷ１ａをＯＦＦにする出力信号を出力する。
2009060953.tif 000002
【特許請求の範囲】
【請求項１】
外部から入力される出力指令に基づいて対象となる機器に安全動作をさせるのか動作許可するのかを制御する処理部を複数備える安全制御装置であって、
前記各処理部は、
前記出力指令が安全動作指令であるのか、動作許可指令であるのかを判別する指令判別手段と、
自身の指令判別手段の判別結果を他の処理部に送信するとともに、他の処理部の判別結果を受信し、受信した他の処理部の判別結果と自身の指令判別手段の判別結果とが全て一致しているか否かを照合する照合手段と、
前記指令判別手段の判別結果が安全動作指令の場合、または前記照合手段の照合結果が不一致である場合には、前記機器を安全動作させる出力信号を出力し、前記指令判別手段の判別結果が動作許可指令であってかつ前記照合手段の照合結果が一致である場合には、前記機器を動作許可させる出力信号を出力する出力手段と、
を備えることを特徴とする安全制御装置。
【請求項２】
前記安全動作を前記機器が停止した状態とし、前記動作許可を前記機器が起動した状態とし、
前記出力手段は、
前記指令判別手段の判別結果が安全動作指令の場合、または前記照合手段の照合結果が不一致である場合には、前記機器への動力の供給を停止する出力信号を出力し、前記指令判別手段の判別結果が動作許可指令であってかつ前記照合手段の照合結果が一致である場合には、前記機器に動力を供給する出力信号を出力すること、
を特徴とする請求項１に記載の安全制御装置。
【請求項３】
外部から入力される出力指令に基づいて対象となる機器に安全動作させるのか動作許可するのかを判別し、この判別結果に応じて前記機器を動作制御する安全制御装置であって、
前記判別の処理に先立って、前記機器への動力を停止する出力信号を出力し、該出力信号を出力した後、前記機器に安全動作させるのか動作許可するのかを判別する処理部を備えることを特徴とする安全制御装置。
【請求項４】
前記出力指令は、所定の時間間隔で外部から前記処理部へ入力され、
前記処理部は、出力指令が入力されてからの時間を計測するタイマ手段を備え、前記タイマ手段による計測時間と前記所定の時間間隔とに基づいて、前記出力指令が入力される前に前記機器への動力の供給を停止する出力信号を出力する、
ことを特徴とする請求項３に記載の安全制御装置。
【請求項５】
前記処理部は、前記出力指令が入力された直後に前記機器への動力の供給を停止する出力信号を出力する、ことを特徴とする請求項３に記載の安全制御装置。
【請求項６】
前記処理部は、
前記機器への動力の供給を停止する出力信号と、該出力信号が出力された後に前記出力指令に基づいて出力される前記機器に動力を供給する出力信号と、を監視することによって、自身の安全制御装置が出力信号を正常に出力できるか否かを診断するダークテスト実行手段をさらに備える、
ことを特徴とする請求項４または５に記載の安全制御装置。
【請求項７】
前記処理部を複数備え、
前記各処理部は、
外部から入力された出力指令が動作許可指令であるのか否かを判別する指令判別手段と、
自身の指令判別手段の判別結果を他の処理部に送信するとともに、他の処理部の判別結果を受信し、受信した他の処理部の判別結果と自身の指令判別手段の判別結果とが一致しているか否かを照合する照合手段と、
前記指令判別手段の判別結果が動作許可指令であってかつ前記照合手段の照合結果が一致である場合には、前記機器に動力を供給する出力信号を出力し、前記指令判別手段の判別結果が動作許可指令ではない場合、または前記照合手段の照合結果が不一致である場合には、前記機器に動力を供給する出力信号を出力しない出力手段と、
をさらに備えることを特徴とする請求項４または５に記載の安全制御装置。
【請求項８】
前記処理部は、
前記機器への動力の供給を停止する出力信号を出力するダークテスト実行手段と、前記機器への動力の供給を停止する出力信号の出力後、自装置に対して故障診断を実行し、故障が発見されなかった場合、前記機器に動力を供給する出力信号を出力し、故障が発見された場合、異常処理を実行する故障診断実行手段と、
をさらに備え、
前記ダークテスト実行手段は、自身が前記出力手段に出力させる前記機器への動力の供給を停止する出力信号と、前記故障診断実行手段が前記出力手段に出力させる前記機器に動力を供給する出力信号と、を監視することによって、自身の安全制御装置が出力信号を正常に出力できるか否かを診断する、
ことを特徴とする請求項３に記載の安全制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部から入力される出力指令に基づいて対象となる機器に安全動作をさせるのか動作許可するのかを制御する処理部を一つまたは複数備える安全制御装置に関するものであり、特に、安全動作させる指示を出力する応答時間を短縮する安全制御装置に関するものである。
【背景技術】
【０００２】
ＦＡ（Factory  Automation）のロボットなどの機器の制御システムでは、その安全性が重要となり、異常を検出した場合には機器を停止させる必要がある。システムが正常に動作している場合に機器を停止させるには、機器に対して動作停止の指令を出力して機器を停止させることが可能である。しかし、システムに異常が発生した場合は、動作停止の指令を機器に対して出力しても正常にその命令が実行されるかどうかわからない。そのため、機器と電源とを接続するスイッチを制御する安全制御装置によって、スイッチをＯＦＦにして機器への動力の供給を停止し、強制的に機器の動作を停止させることがある。【０００３】
安全制御装置は、一般的に、外部から入力される指令の判別を２重化して処理し、２つの判別結果が一致している場合には入力された指令に基づいた制御を行ない、２つの判別結果が不一致の場合には安全な制御(この場合は、機器を停止させる）を行うことで安全性を高めるようにしている。【０００４】
また、安全制御装置の性能は、安全状態が確認できなくなった時点から、対象となる機器が停止するまでの応答時間によって決まる。よって、指令を受けてから機器を停止させる出力信号を出力するまでの処理時間を短縮することが、安全制御装置の性能を向上することとなる。【０００５】
２重化制御の処理を高速化する従来技術として、たとえば、特許文献１がある。特許文献１には、演算制御部と入出力制御部とを異なるＣＰＵ素子で機能分担したマルチプロセッサ方式の制御装置を２台並列に設けてなる２重化制御装置において、２重化された各々の入出力制御部の入出力データ照合比較処理をデータ転送と同時に実行することにより、両系の不一致検出を短時間で行う技術が開示されている。【０００６】
【特許文献１】特開昭５９−４３４５０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記特許文献１に記載の従来技術では、一方のＣＰＵの演算制御部が自身と他方のＣＰＵの入出力制御部に演算結果を送信し、他方のＣＰＵの演算制御部が自身と一方のＣＰＵの入出力制御部に演算結果を送信するようにしているため、演算制御部が、自身が属するＣＰＵの入出力制御部に演算結果を送信し、入出力制御部同士がその演算結果を送信しあう場合と比較して、通信時間を短縮することができる。【０００８】
ここで、上記特許文献１に記載の従来技術を安全制御装置に適用すると、演算制御部が指令を判別する指令判別部に相当し、入出力制御部が判別結果を照合する照合部に相当する。この場合、安全制御装置の応答時間は、指令判別部による指令の判別処理に要する判別処理時間と、指令判別部が各照合部に判別結果を送信する通信処理に要する通信処理時間と、照合部が判別結果を照合する照合処理に要する照合処理時間との和となる。【０００９】
しかしながら、上記特許文献１に記載の従来技術を安全制御装置に適用した場合、判別処理、通信処理、および照合処理を必ず行なう必要があり、これ以上の応答時間の短縮は困難であるという問題があった。この問題を改善するためには、より処理能力の高いＣＰＵを用いることが考えられるが、その場合、コストが高くなるという問題が生じてしまう。また、通信処理は、ＣＰＵ間の通信であるため、ＣＰＵ内部で実行する判別処理および照合処理と比較してその処理付加は大きい。そのため、通信処理時間が応答時間を決定する要因となっている。【００１０】
本発明は、上記に鑑みてなされたものであって、高速のＣＰＵを用いることなく、応答時間を短縮することができる安全制御装置を得ることを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するために、本発明は、外部から入力される出力指令に基づいて対象となる機器に安全動作をさせるのか動作許可するのかを制御する処理部を複数備える安全制御装置であって、前記各処理部は、前記出力指令が安全動作指令であるのか、動作許可指令であるのかを判別する指令判別手段と、自身の指令判別手段の判別結果を他の処理部に送信するとともに、他の処理部の判別結果を受信し、受信した他の処理部の判別結果と自身の指令判別手段の判別結果とが全て一致しているか否かを照合する照合手段と、前記指令判別手段の判別結果が安全動作指令の場合、または前記照合手段の照合結果が不一致である場合には、前記機器を安全動作させる出力信号を出力し、前記指令判別手段の判別結果が動作許可指令であってかつ前記照合手段の照合結果が一致である場合には、前記機器を動作許可させる出力信号を出力する出力手段と、を備えることを特徴とする。
【発明の効果】
【００１２】
この発明によれば、外部から入力される出力指令が安全動作指令であるのか、動作許可指令であるのかを複数の指令判別部が判別し、それぞれの判別結果のうち１つでも安全動作指令であると判別した場合には、他の指令判別部の判別結果が動作許可指令であっても判別結果が不一致となって機器を安全動作をさせる出力信号を出力することに着目し、判別結果が安全動作指令である場合には他の指令判別部の判別結果と照合することなく、機器を安全動作させる出力信号を出力するようにしているため、高性能のＣＰＵを用いて判別結果の通信や照合処理を高速化することなく、応答時間を短縮した高性能の安全制御装置を得ることができるという効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】図１は、実施の形態１の安全制御装置が適用されるネットワークシステムの構成の一例を示す図である。
【図２】図２は、実施の形態１の安全制御装置の構成を示すブロック図である。
【図３】図３は、判別結果と出力信号との関係を示す図である。
【図４】図４は、図２に示したＡ系処理部の動作を説明するためのフローチャートである。
【図５】図５は、実施の形態１の安全制御装置の動作を説明するためのシーケンス図である。
【図６】図６は、実施の形態１の安全制御装置の動作を説明するためのシーケンス図である。
【図７】図７は、実施の形態１の安全制御装置の動作を説明するためのシーケンス図である。
【図８】図８は、実施の形態２の安全制御装置の構成を示すブロック図である。
【図９】図９は、実施の形態２の安全制御装置の動作を説明するためのシーケンス図である。
【図１０】図１０は、実施の形態２の安全制御装置の動作を説明するためのシーケンス図である。
【図１１】図１１は、実施の形態３の安全制御装置の構成を示すブロック図である。
【図１２】図１２は、実施の形態３の安全制御装置の動作を説明するためのシーケンス図である。
【図１３】図１３は、実施の形態３の安全制御装置の動作を説明するためのシーケンス図である。
【図１４】図１４は、実施の形態４の安全制御装置の構成を示すブロック図である。
【図１５】図１５は、実施の形態４の安全制御装置の動作を説明するためのシーケンス図である。
【図１６】図１６は、実施の形態４の安全制御装置の動作を説明するためのシーケンス図である。
【符号の説明】
【００１４】
１ａ、１ｂ  指令受信部
２ａ、３ａ、４ａ、５ａ  Ａ系処理部
２ｂ、３ｂ、４ｂ、５ｂ  Ｂ系処理部
２１ａ、２１ｂ  指令判別部
２２ａ、２２ｂ  照合部
２３ａ、２３ｂ  シリアルドライバ
２４ａ、２４ｂ  出力部
２５ａ、３３ａ、５４ａ、２５ｂ、３３ｂ、５４ｂ  異常処理部
３１ａ、５１ａ、３１ｂ、５１ｂ  タイマ
３２ａ、４１ａ、５２ａ、３２ｂ、４１ｂ、５２ｂ  ダークテスト実行部
５３ａ、５３ｂ  故障診断実行部
７０  電源
８０  制御リモートＩ／Ｏ局
８１ａ、８１ｂ  機器
８２  安全リモートＩ／Ｏ局
９０  リモートマスタ局
９１  ネットワーク
ＳＷ１ａ、ＳＷ１ｂ、ＳＷ２ａ、ＳＷ２ｂ  スイッチ
【発明を実施するための最良の形態】
【００１５】
以下に、この発明における安全制御装置の実施の形態を図面に基づいて詳細に説明する。なお、これらの実施の形態によりこの発明が限定されるものではない。【００１６】
実施の形態１．
図１〜図７を参照してこの発明の実施の形態１を説明する。図１は、この発明における実施の形態１の安全制御装置が適用されるネットワークシステムの構成の一例を示す図である。図１において、ネットワークシステムは、制御・監視対象となる機器８１ａ、８１ｂ（たとえば、ロボットなど）が接続される制御リモートＩ／Ｏ局８０と、機器８１ａ、８１ｂと電源７０とを接続／遮断するスイッチＳＷ１ａ、ＳＷ１ｂ、ＳＷ２ａ、ＳＷ２ｂを制御する安全リモートＩ／Ｏ局８２と、リモートマスタ局９０とが、ネットワーク９１によって接続され、リモートマスタ局９０が安全リモートＩ／Ｏ局８２を介してスイッチＳＷ１ａ、ＳＷ１ｂ、ＳＷ２ａ、ＳＷ２ｂを制御して機器８１ａ、８１ｂと電源７０とを接続／遮断することで機器８１ａ、８１ｂへの動力供給を制御し、制御リモートＩ／Ｏ局８０を介して機器８１ａ、８１ｂを制御監視する。【００１７】
図１においては、電源７０と機器８１ａとの間にスイッチＳＷ１ａ、ＳＷ１ｂが直列に配置され、スイッチＳＷ１ａ、ＳＷ１ｂがともにＯＮになると機器８１ａと電源７０とが接続されて機器８１ａに動力が供給され、スイッチＳＷ１ａ、ＳＷ１ｂの一方がＯＦＦになると機器８１ａと電源７０とが遮断されて機器８１ａへの動力の供給が停止する。また、電源７０と機器８１ｂとの間にスイッチＳＷ２ａ、ＳＷ２ｂが直列に配置され、スイッチＳＷ２ａ、ＳＷ２ｂがともにＯＮになると機器８１ｂと電源７０とが接続されて機器８１ｂに動力が供給され、スイッチＳＷ２ａ、ＳＷ２ｂの一方がＯＦＦになると機器８１ｂと電源７０とが遮断されて機器８１ｂへの動力の供給が停止する。【００１８】
リモートマスタ局９０は、機器８１ａ、８１ｂを動作させる（機器８１ａ、８１ｂに動力を供給する）場合には、スイッチＳＷ１ａ、ＳＷ２ａをＯＮにし、スイッチＳＷ１ｂ、ＳＷ２ｂをＯＮにする出力指令を安全リモートＩ／Ｏ局８２に送信する。また、リモートマスタ局９０は、機器８１ａ、８１ｂを停止させる（機器８１ａ、８１ｂへの動力供給を停止する）場合には、スイッチＳＷ１ａ、ＳＷ２ａをＯＦＦにし、スイッチＳＷ１ｂ、ＳＷ２ｂをＯＦＦにする出力指令を安全リモートＩ／Ｏ局８２に送信する。【００１９】
安全リモートＩ／Ｏ局８２は、リモートマスタ局９０からの出力指令に基づいてスイッチＳＷ１ａ、ＳＷ１ｂ、ＳＷ２ａ、ＳＷ２ｂをＯＮ／ＯＦＦする出力信号を出力する。このように、機器８１ａ、８１ｂへの動力の供給は、２つのスイッチＳＷ１ａ、ＳＷ２ａとスイッチＳＷ１ｂ、ＳＷ２ｂとによって２重化されている。【００２０】
安全リモートＩ／Ｏ局８２には、機器８１ａに対応するスイッチＳＷ１ａ、ＳＷ１ｂを制御する安全制御装置と、機器８１ｂに対応するスイッチＳＷ２ａ、ＳＷ２ｂを制御する安全制御装置とを備えている。以下、機器８１ａに対応するスイッチＳＷ１ａ、ＳＷ１ｂを制御する安全制御装置を例に挙げて説明する。【００２１】
図２は、この発明における実施の形態１の安全制御装置の構成を示すブロック図である。図２において、安全制御装置は、指令受信部１ａ、１ｂと、指令判別部２１ａ、照合部２２ａ、シリアルドライバ２３ａ、出力部２４ａ、および異常処理部２５ａを有するＡ系処理部２ａと、指令判別部２１ｂ、照合部２２ｂ、シリアルドライバ２３ｂ、出力部２４ｂ、および異常処理部２５ｂを有するＢ系処理部２ｂとを備えている。【００２２】
指令受信部１ａは、ネットワーク９１を介してリモートマスタ局９０からの出力指令を受信するインタフェース機能を有し、受信した出力指令をＡ系処理部２ａの指令判別部２１ａと、指令受信部１ｂとに出力する。指令受信部１ｂは、指令受信部１ａからの出力指令を受信してＢ系処理部２ｂの指令判別部２１ｂに出力する。【００２３】
Ａ系処理部２ａはスイッチＳＷ１ａを制御する処理部であり、Ｂ系処理部２ｂはスイッチＳＷ１ｂを制御する処理部である。Ａ系処理部２ａとＢ系処理部２ｂとは同一機能を有しており、それぞれ異なるハードウェア、またはＭＰＵ（Micro  Processing  Unit）によって各機能が実現される。【００２４】
指令判別部２１ａ、２１ｂは、入力された出力指令から自身の系列（Ａ系またはＢ系）に対する指令を抽出し、抽出した指令がＯＮ指令であるのかＯＦＦ指令であるのかを判別する。指令判別部２１ａ、２１ｂは、判別結果を照合部２２ａ、２２ｂに出力する。また、指令判別部２１ａ、２１ｂは、判別結果がＯＦＦ指令の場合のみ出力信号をＯＦＦにする旨を通知する出力指示（ＯＦＦ出力指示）を出力部２４ａ、２４ｂに通知する。【００２５】
シリアルドライバ２３ａ、２３ｂは、相手側処理部（Ａ系処理部２ａの場合はＢ系処理部２ｂであり、Ｂ系処理部２ｂの場合はＡ系処理部２ａ）とのシリアル通信インタフェース機能を有している。照合部２２ａ、２２ｂは、シリアルドライバ２３ａ、２３ｂを介して指令判別部２１ａ、２１ｂから通知された判別結果（自身の判別結果）を相手側処理部に送信する。また、照合部２２ａ、２２ｂは、シリアルドライバ２３ａ、２３ｂを介して受信した相手側処理部の判別結果と自身の判別結果とを照合する。照合部２２ａ、２２ｂは、照合結果が一致した場合には自身の判別結果を出力信号とする旨を通知する出力指示（判別結果がＯＮ指令の場合にはＯＮ出力指示であり、判別結果がＯＦＦ指令の場合にはＯＦＦ出力指示）を出力部２４ａ、２４ｂに出力し、照合結果が不一致の場合にはその旨を異常処理部２５ａ、２５ｂに通知する。【００２６】
出力部２４ａ、２４ｂは、指令判別部２１ａ、２１ｂおよび照合部２２ａ、２２ｂからの出力指示に基づいて対応するスイッチＳＷ１ａ、ＳＷ１ｂをＯＮ／ＯＦＦする出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する。具体的には、出力部２４ａ、２４ｂは、ＯＮ出力指示を受けた場合にスイッチＳＷ１ａ、ＳＷ１ｂをＯＮにするＯＮ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力し、ＯＦＦ出力指示を受けた場合にスイッチＳＷ１ａ、ＳＷ１ｂをＯＦＦにするＯＦＦ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する。【００２７】
異常処理部２５ａ、２５ｂは、照合部２２ａ、２２ｂから照合結果が不一致である旨が通知されると、照合結果の不一致に対応する異常処理を実行する。照合結果の不一致に対応する異常処理とは、たとえば、照合結果が不一致となったことをリモートマスタ局９０に通知したり、安全リモートＩ／Ｏ局８２の表示手段に判別結果が不一致となったことを表示するなどの処理である。【００２８】
図３は、Ａ系処理部２ａおよびＢ系処理部２ｂに対する指令の判別結果と出力信号との関係を示す図である。図３に示すように、Ａ系処理部２ａの指令判別部２１ａの判別結果が「ＯＮ」であってＢ系処理部２ｂの指令判別部２１ｂの判別結果が「ＯＮ」の場合には、Ａ系処理部２ａおよびＢ系処理部２ｂが出力する出力信号はともに「ＯＮ」となり、スイッチＳＷ１ａ、ＳＷ１ｂがともに「ＯＮ」になって機器８１ａに電源が供給され、機器８１ａは動作する。【００２９】
Ａ系処理部２ａの指令判別部２１ａの判別結果が「ＯＮ」であってＢ系処理部２ｂの指令判別部２１ｂの判別結果が「ＯＦＦ」の場合、Ａ系処理部２ａの指令判別部２１ａの判別結果が「ＯＦＦ」であってＢ系処理部２ｂの指令判別部２１ｂの判別結果が「ＯＮ」の場合、判別結果が不一致であるので、Ａ系処理部２ａおよびＢ系処理部２ｂが出力する出力信号はともに「ＯＦＦ」となり、スイッチＳＷ１ａ、ＳＷ１ｂがともに「ＯＦＦ」になって機器８１ａには電源が供給されず、機器８１ａは停止する。【００３０】
Ａ系処理部２ａの指令判別部２１ａの判別結果が「ＯＦＦ」であってＢ系処理部２ｂの指令判別部２１ｂの判別結果が「ＯＦＦ」の場合には、Ａ系処理部２ａおよびＢ系処理部２ｂが出力する出力信号はともに「ＯＦＦ」となり、スイッチＳＷ１ａ、ＳＷ１ｂがともに「ＯＦＦ」になって機器８１ａに電源が供給されず、機器８１ａは停止する。【００３１】
上述したように、安全制御装置を備える安全リモートＩ／Ｏ局８２が制御するスイッチＳＷ１ａ、ＳＷ１ｂは電源７０と機器８１ａとの間に直列に配置されており、リモートマスタ局９０は、機器８１ａを動作させる場合にはスイッチＳＷ１ａをＯＮにしスイッチＳＷ１ｂをＯＮにする出力指令を安全リモートＩ／Ｏ局８２内の安全制御装置に送信し、機器８１ａを停止させる場合には、スイッチＳＷ１ａをＯＦＦにし、スイッチＳＷ１ｂをＯＦＦにする出力指令を安全リモートＩ／Ｏ局８２内の安全制御装置に送信する。したがって、Ａ系処理部２ａの指令判定部２１ａの判定結果とＢ系処理部２ｂの指令判定部２１ｂの判定結果とは一致する。【００３２】
しかし、通信エラーやリモートマスタ局９０からの指令ミスなどによりＡ系処理部２ａの指令判別部２１ａの判別結果とＢ系処理部２ｂの指令判別部２１ｂの判別結果とが不一致になることがある。この場合、何らかの異常が発生しているので機器８１ａに動力を供給して動作させることは危険である。よって、安全制御装置は、安全サイドの処理としてスイッチＳＷ１ａ、ＳＷ１ｂをＯＦＦにするＯＦＦ出力信号を出力して機器８１ａへの動力供給を停止して機器８１ａを停止させるようにしている。【００３３】
つぎに、この発明における実施の形態１の安全制御装置の動作について説明する。まず、図４のフローチャートを参照してＡ系処理部２ａの動作について説明する。ネットワーク９１を介してリモートマスタ局９０からの出力指令を受信すると、指令受信部１ａは、受信した出力指令をＡ系処理部２ａの指令判別部２１ａと、指令受信部１ｂとに出力する。【００３４】
指令受信部１ａから出力指令を受けると（ステップＳ１００、Ｙｅｓ）、指令判別部２１ａは、出力指令から自身の系列（この場合はＡ系列、すなわちスイッチＳＷ１ａ）に対する指令を抽出し、抽出した指令がＯＮ指令であるのかＯＦＦ指令であるのかを判別する指令判別処理を実行する(ステップＳ１０１）。指令判定部２１ａは、指令判別処理によって得られた判別結果を照合部２２ａに出力する。【００３５】
判別結果がＯＦＦ指令の場合（ステップＳ１０１、Ｙｅｓ）、指令判別部２１ａは、ＯＦＦ出力指示を出力部２４ａに通知する。出力部２４ａは、ＯＦＦ出力信号をスイッチＳＷ１ａに出力する（ステップＳ１０２）。【００３６】
一方、指令判別部２１ａから判別結果を受けると、照合部２２ａは、シリアルドライバ２３ａを介して、判別結果を別系であるＢ系列処理部２ｂに送信する（ステップＳ１０３）。その後、照合部２２ａは、Ｂ系列処理部２ｂからの判別結果の受信待ちとなる。【００３７】
シリアルドライバ２３ａを介して、Ｂ系列処理部２ｂからの判別結果を受信すると（ステップＳ１０４、Ｙｅｓ）、照合部２２ａは、指令判別部２１ａから通知された判別結果とＢ系列処理部２ｂから受信した判別結果とが一致しているか否かを判定する照合処理を実行する（ステップＳ１０５）。【００３８】
照合処理によって指令判別部２１ａから通知された判別結果とＢ系列処理部２ｂから受信した判別結果とが一致している照合結果が得られた場合（ステップＳ１０５、Ｙｅｓ）、照合部２２ａは、指令判別部２１ａから通知された判別結果がＯＮ指令であるか否かを判定する（ステップＳ１０６）。【００３９】
指令判別部２１ａから通知された判別結果がＯＮ指令であると判定した場合（ステップＳ１０６、Ｙｅｓ）、照合部２２ａは、ＯＮ出力指示を出力部２４ａに通知する。出力部２４ａは、ＯＮ出力信号をスイッチＳＷ１ａに出力して処理を終了する（ステップＳ１０７）。指令判別部２１ａから通知された判別結果がＯＦＦ指令であると判定した場合（ステップＳ１０６、Ｎｏ）、照合部２２ａは、出力部２４ａに通知することなく処理を終了する。【００４０】
一方、照合処理によって指令判別部２１ａから通知された判別結果とＢ系列処理部２ｂから受信した判別結果とが不一致であるという照合結果が得られた場合（ステップＳ１０５、Ｎｏ）、照合部２２ａは、ＯＦＦ出力指示を出力部２４ａに通知する。出力部２４ａは、ＯＦＦ出力信号をスイッチＳＷ１ａに出力する（ステップＳ１０８）。照合部２２ａは、照合結果が不一致である旨を異常処理部２５ａに出力する。異常処理部２５ａは、予め定められた異常処理を実行して処理を終了する（ステップＳ１０９）。【００４１】
Ｂ系処理部２ｂの動作は、Ａ系処理部２ａの動作とほぼ同じであり、相違点は、自身がＢ系処理部２ｂであり、相手側処理部がＡ系処理部２ａであり、制御対象のスイッチがＳＷ１ｂであることだけであるので、ここでは説明を省略する。【００４２】
つぎに、図５のシーケンス図を参照して、Ａ系処理部２ａの指令判別部２１ａおよびＢ系処理部２ｂの指令判別部２１ｂの判別結果がともにＯＦＦ指令の場合の安全制御装置の動作について説明する。ネットワーク９１を介してリモートマスタ局９０からの出力指令を受信すると、指令受信部１ａは、受信した出力指令をＡ系処理部２ａの指令判別部２１ａと、指令受信部１ｂとに出力する。指令受信部１ｂは、指令受信部１ａから受信した出力指令をＢ系処理部２ｂの指令判別部２１ｂに出力する。【００４３】
指令受信部１ａ、１ｂからの出力指令を受信し（ステップＳ２００ａ、Ｓ２００ｂ）、指令判別部２１ａ、２１ｂは、先の図４のフローチャートを参照して説明したステップＳ１０１の指令判別処理を実行する（ステップＳ２０１ａ、Ｓ２０１ｂ）。【００４４】
ここで、指令判別部２１ａ、２１ｂの判別結果がともにＯＦＦ指令であったとする。指令判別部２１ａ、２１ｂは、出力部２４ａ、２４ｂにＯＦＦ出力指示を通知し、出力部２４ａ、２４ｂは、ＯＦＦ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する（ステップＳ２０２ａ、Ｓ２０２ｂ）。これにより、スイッチＳＷ１ａ、ＳＷ１ｂがＯＦＦになり、機器８１ａへの動力の供給が停止されて機器８１ａが停止する。【００４５】
また、指令判別部２１ａ、２１ｂは、判別結果がＯＦＦ指令であることを照合部２２ａ、２２ｂに通知する。照合部２２ａ、２２ｂは、相手側である照合部２２ｂ、２２ａに判別結果がＯＦＦ指令であることを送信するとともに、相手側からの判別結果がＯＦＦ指令であることを受信する（ステップＳ２０３ａ、Ｓ２０３ｂ）。【００４６】
照合部２２ａ、２２ｂは、先の図４のフローチャートを参照して説明したステップＳ１０５の照合処理を実行する(ステップＳ２０４ａ、Ｓ２０４ｂ）。ここでは、照合部２２ａ、２２ｂは、自身の判別結果がＯＦＦ指令であり、相手側から受信した判別結果もＯＦＦ指令であるので、照合結果は一致（ＯＫ）となり、処理を終了する。【００４７】
このように、Ａ系処理部２ａおよびＢ系処理部２ｂの判別結果がともにＯＦＦ指令である場合、指令の受信を開始した時刻ｔ０からスイッチＳＷ１ａ、ＳＷ１ｂをＯＦＦにする時刻ｔ１までに要する時間は、判別結果の送受信に要する時間Ｔ３および照合処理に要する時間Ｔ４とは関係なく、指令を受信してその指令を判別する指令判別処理に要する時間Ｔ１と、「ＯＦＦ」の出力信号を出力するのに要する時間Ｔ２との和となる。【００４８】
つぎに、図６のシーケンス図を参照して、Ａ系処理部２ａの指令判別部２１ａの判別結果とＢ系処理部２ｂの指令判別部２１ｂの判別結果とがともにＯＮ指令である場合の安全制御装置の動作について説明する。ネットワーク９１を介してリモートマスタ局９０からの出力指令を受信すると、指令受信部１ａは、受信した出力指令を指令判別部２１ａと、指令受信部１ｂとに出力する。指令受信部１ｂは、指令受信部１ａから受信した出力指令を指令判別部２１ｂに出力する。【００４９】
指令受信部１ａ、１ｂからの出力指令を受信し（ステップＳ３００ａ、Ｓ３００ｂ）、指令判別部２１ａ、２１ｂは、先の図４のフローチャートを参照して説明したステップＳ１０１の指令判別処理を実行する（ステップＳ３０１ａ、Ｓ３０１ｂ）。【００５０】
ここで、Ａ系処理部２ａの指令判別部２１ａの判別結果とＢ系処理部２ｂの指令判別部２１ｂの判別結果がともにＯＮ指令であったとする。指令判別部２１ａ、２１ｂは、判別結果がＯＮ指令であることを照合部２２ａ、２２ｂに通知する。照合部２２ａ、２２ｂは、相手側である照合部２２ｂ、２２ａに判別結果がＯＮ指令であることを送信するとともに、相手側からの判別結果がＯＮ指令であることを受信する（ステップＳ３０２ａ、Ｓ３０２ｂ）。【００５１】
照合部２２ａ、２２ｂは、先の図４のフローチャートを参照して説明したステップＳ１０５の照合処理を実行する(ステップＳ３０３ａ、Ｓ３０３ｂ）。ここでは、照合部２２ａ、２２ｂは、ともに自身の判別結果がＯＮ指令であり、相手側から受信した判別結果もＯＮ指令あるので、照合結果は一致（ＯＫ）となる。照合部２２ａ、２２ｂは、自身の判別結果がＯＮ指令であるので、出力部２４ａ、２４ｂにＯＮ出力指示を通知し、出力部２４ａ、２４ｂは、ＯＮ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する（ステップＳ３０４ａ、Ｓ３０４ｂ）。これにより、スイッチＳＷ１ａ、ＳＷ１ｂがＯＮになり、機器８１ａに動力が供給されて機器８１ａが動作を開始する。【００５２】
このように、Ａ系処理部２ａおよびＢ系処理部２ｂの判別結果がともにＯＮ指令の場合、指令の受信を開始した時刻ｔ０からスイッチＳＷ１ａ、ＳＷ１ｂをＯＮにする時刻ｔ１ａまでに要する時間は、指令を受信してその指令を判別する指令判別処理に要する時間Ｔ１と、判別結果の送受信に要する時間Ｔ３と、照合処理に要する時間Ｔ４と、「ＯＮ」の出力信号を出力するのに要する時間Ｔ２との和となる。【００５３】
つぎに、図７のシーケンス図を参照して、Ａ系処理部２ａの指令判別部２１ａの判別結果が「ＯＦＦ」であって、Ｂ系処理部２ｂの指令判別部２１ｂの判別結果が「ＯＮ」である場合を例に挙げて、Ａ系処理部２ａの指令判別部２１ａの判別結果とＢ系処理部２ｂの指令判別部２１ｂの判別結果とが異なる場合の安全制御装置の動作について説明する。【００５４】
ネットワーク９１を介してリモートマスタ局９０からの出力指令を受信すると、指令受信部１ａは、受信した出力指令をＡ系処理部２ａの指令判別部２１ａと、指令受信部１ｂとに出力する。指令受信部１ｂは、指令受信部１ａから受信した出力指令をＢ系処理部２ｂの指令判別部２１ｂに出力する。【００５５】
指令受信部１ａ、１ｂからの出力指令を受信し（ステップＳ４００ａ、Ｓ４００ｂ）、指令判別部２１ａ、２１ｂは、先の図４のフローチャートを参照して説明したステップＳ１０１の指令判別処理を実行する（ステップＳ４０１ａ、Ｓ４０１ｂ）。【００５６】
ここで、指令判別部２１ａの判別結果がＯＦＦ指令であって、指令判別部２１ｂの判別結果がＯＮ指令であったとする。指令判別部２１ａは、出力部２４ａにＯＦＦ出力指示を通知し、出力部２４ａは、ＯＦＦ出力信号をスイッチＳＷ１ａに出力する（ステップＳ４０２ａ）。また、指令判別部２１ａは、判別結果がＯＦＦ指令であることを照合部２２ａに通知する。照合部２２ａは、相手側である照合部２２ｂに判別結果がＯＦＦ指令であることを送信する（ステップＳ４０３ａ）。【００５７】
一方、指令判別部２１ｂは、判別結果がＯＮ指令であるので、出力部２４ｂに出力指示を通知することなく、判別結果がＯＮ指令であることを照合部２２ｂに通知する。照合部２２ｂは、相手側である照合部２２ａに判別結果がＯＮ指令であることを送信する（ステップＳ４０２ｂ）。【００５８】
照合部２２ａ、２２ｂは、相手側の判別結果を受信して、先の図４のフローチャートを参照して説明したステップＳ１０５の照合処理を実行する(ステップＳ４０４ａ、Ｓ４０３ｂ）。ここでは、Ａ系処理部２ａの判別結果がＯＦＦ指令であり、Ｂ系処理部２ｂの判別結果がＯＮ指令であるので、照合結果は不一致（ＮＧ）となる。照合部２２ａは、自身の判別結果がＯＦＦ指令であるので、出力部２４ａに出力指示を通知することなく、異常処理部２５ａに照合結果が不一致である旨を通知する。異常処理部２５ａは、照合結果の不一致に対応する異常処理を実行する。【００５９】
照合部２２ｂは、照合結果が不一致であって、かつ自身の判別結果がＯＮ指令であるので、ＯＦＦ出力指示を出力部２４ｂに通知し、出力部２４ｂは、ＯＦＦ出力信号をスイッチＳＷ１ｂに出力する（ステップＳ４０４ｂ）。また、照合部２２ｂは、異常処理部２５ｂに照合結果が不一致である旨を通知し、異常処理部２５ｂは、照合結果の不一致に対応する異常処理を実行する。【００６０】
このように、照合結果が不一致の場合、自身の判別結果がＯＮ指令の系（この場合はＢ系処理部２ｂ）は、照合処理を行った後にＯＦＦ出力信号を出力してスイッチＳＷ１ｂをＯＦＦにするが、自身の判別結果がＯＦＦ指令の系（この場合はＡ系処理部２ａ）は、照合処理を行なうことなくＯＦＦ出力信号を出力してスイッチＳＷ１ａをＯＦＦにする。スイッチＳＷ１ａ、ＳＷ１ｂは、電源７０と機器８１ａとの間に直列に配置されているので、スイッチＳＷ１ａがＯＦＦになった時点で機器８１ａへの動力の供給は停止し、機器８１ａが停止する。よって、照合結果が不一致の場合、指令の受信を開始した時刻ｔ０からスイッチＳＷ１ａをＯＦＦにする時刻ｔ１までに要する時間は、判別結果の送受信に要する時間Ｔ３および照合処理に要する時間Ｔ４とは関係なく、指令を受信してその指令を判別する指令判別処理に要する時間Ｔ１と、「ＯＦＦ」の出力信号を出力するのに要する時間Ｔ２との和となる。【００６１】
以上説明したように、この実施の形態１においては、外部から入力される出力指令が動作許可指令（ＯＮ指令）であるのか、安全動作指令（ＯＦＦ指令）であるのかを指令判別部２１ａ、２１ｂが判別し、判別結果の一方がＯＦＦ指令であると判別した場合には、他方の判別結果がＯＮ指令であっても判別結果が不一致となって機器８１ａを安全動作（停止）させるＯＦＦ出力信号を出力することに着目し、判別結果がＯＦＦ指令である場合には他方の指令判別部２１ａ、２１ｂの判別結果と照合することなく、機器８１ａを停止させるＯＦＦ出力信号を出力するようにしているため、高性能のＣＰＵを用いて判別結果の通信や照合処理を高速化することなく、応答時間を短縮することができる。【００６２】
実施の形態２．
つぎに、実施の形態２の安全制御装置について、図８〜図１０を参照しながら説明する。【００６３】
一般的に、安全制御装置には、両系がともに安全動作させる旨の出力指令や、何らかの異常により両系が一致しない出力指令を受信したとき、機器に対して確実に安全動作指令を出力することが求められる。そのため、安全制御装置は、安全動作させる信号を確実に出力できるか否かを診断するダークテストを所定のタイミングで実行する。【００６４】
また、リモートマスタ局と安全リモートＩ／Ｏ局との間の交信間隔が一定であるネットワークシステムがある。以下に説明する実施の形態２の安全制御装置は、このようなリモートマスタ局より一定の時間間隔で出力指令を受信するネットワークシステムに適用され、該出力指令の受信の間隔とダークテストの実行間隔とを適切に設定することによって、機器を停止させる出力信号を出力するタイミングを実施の形態１に比べてさらに前倒しする。【００６５】
具体的には、実施の形態２の安全制御装置は、出力指令を受信してからの経過時間に基づき、次の出力指令を受信する少し前のタイミングでＯＦＦ出力信号を出力する処理を実行し、その後両系の処理部がＯＮ指令を受信したとき、該ＯＮ指令に基づくＯＮ出力信号を出力する処理を実行する。実施の形態２の安全制御装置は、この一連の処理に基づいて出力するＯＦＦ出力信号／ＯＮ出力信号を監視し、自安全制御装置が確実にＯＮ出力信号／ＯＦＦ出力信号を出力できるか否かを診断するダークテストとする。【００６６】
ここで、実施の形態２の安全制御装置は、両系の処理部の判別結果が不一致の出力指令を受信した場合、該出力指令を受信した時点でＯＦＦ出力信号を出力する処理をすでに実行した状態となっているので、スイッチＳＷ１ａ、１ｂは、該処理により出力されたＯＦＦ出力信号を、前記受信した不一致の出力指令に基づいてあらためて出力するＯＦＦ出力信号よりも早く受信することとなる。つまり、結果として、実施の形態２の安全制御装置は、出力指令の受信に先立ってダークテストのテスト信号として出力するＯＦＦ出力信号により、実施の形態１に比べて早く安全動作させることができる。【００６７】
図８は、実施の形態２の安全制御装置の構成を示すブロック図である。なお、実施の形態１と同一の機能を有する構成要素に対しては実施の形態１の構成要素と同一の符号を付し、詳細な説明は省略する。【００６８】
図示するように、実施の形態２の安全制御装置は、指令受信部１ａ、１ｂと、指令判別部２１ａ、照合部２２ａ、シリアルドライバ２３ａ、出力部２４ａ、タイマ３１ａ、ダークテスト実行部３２ａ、および異常処理部３３ａを有するＡ系処理部３ａと、指令判別部２１ｂ、照合部２２ｂ、シリアルドライバ２３ｂ、出力部２４ｂ、タイマ３１ｂ、ダークテスト実行部３２ｂ、および異常処理部３３ｂを有するＢ系処理部３ｂとを備えている。【００６９】
タイマ３１ａ、３１ｂは、Ａ系処理部３ａ、Ｂ系処理部３ｂが出力指令を受信した時点から予め定められている時間が経過したとき、ダークテスト実行部３２ａ、３２ｂにダークテストを実行する旨のダークテスト実行指令を通知する。前記する予め定められている時間は、出力指令の受信間隔よりも若干短い時間が設定される。これにより、タイマ３１ａ、３１ｂは、出力指令を受信する前にダークテスト実行部３２ａ、３２ｂへダークテスト実行指令を通知する。【００７０】
ダークテスト実行部３２ａ、３２ｂは、タイマ３１ａ、３１ｂからダークテスト実行指令が通知されたとき、出力部２４ａ、２４ｂに対してＯＦＦ出力指令を通知する。また、ダークテスト実行部３２ａ、３２ｂは、出力部２４ａ、２４ｂを監視し、自身がＯＦＦ出力指示を通知したにもかかわらずＯＦＦ出力信号が発行されない場合や、照合部２２ａ、２２ｂがＯＮ出力指示を出力部２４ａ、２４ｂに通知したにもかかわらずＯＮ出力信号が発行されない場合、ＯＦＦ出力信号またはＯＮ出力信号が正常に発行されない状態である旨を異常処理部３３ａ、３３ｂに通知する。【００７１】
異常処理部３３ａ、３３ｂは、ダークテスト実行部３２ａ、３２ｂからＯＦＦ出力信号またはＯＮ出力信号が正常に発行されない状態である旨が通知されると、該通知に対応する異常処理を実行する。たとえば、照合結果の不一致に対応する異常処理と同様に、異常処理部３３ａ、３３ｂは、ＯＦＦ出力信号またはＯＮ出力信号が正常に発行されない状態であることをリモートマスタ局９０に通知したり、安全リモートＩ／Ｏ局８２の表示手段に表示する。【００７２】
つぎに、この発明における実施の形態２の安全制御装置の動作について説明する。図９のシーケンス図を参照して、Ａ系処理部３ａの指令判別部２１ａの判別結果とＢ系処理部３ｂの指令判別部２１ｂの判別結果とがともにＯＮ指令である場合の安全制御装置の動作について説明する。ここで、出力指令を受信する間隔時間をΔＴとし、ΔＴよりも十分に短い時間をΔｔとすると、前回出力指令を受信してからΔＴ−Δｔが経過したとき、タイマ３１ａ、３１ｂはダークテスト実行部３２ａ、３２ｂにダークテスト実行指令を通知するとして説明する。【００７３】
まず、タイマ３１ａ、３１ｂは、前回Ａ系処理部３ａ、Ｂ系処理部３ｂが出力指令を受信したときにカウントを開始し、カウントを開始した時点からΔＴ−Δｔだけ経過したとき、Ａ系処理部３ａ、Ｂ系処理部３ｂはダークテスト開始処理（ステップＳ５００ａ、ステップＳ５００ｂ）を実行する。すなわち、タイマ３１ａ、３１ｂは、ダークテスト実行部３２ａ、３２ｂにダークテスト実行指令を通知し、該指令が通知されたダークテスト実行部３２ａ、３２ｂは、出力部２４ａ、２４ｂの監視を開始するとともに、出力部２４ａ、２４ｂに対してＯＦＦ出力指示を通知する。ここで、前回の出力指令を受信したときからΔＴ−Δｔだけ経過した時刻をｔ−１とする。【００７４】
そして、出力部２４ａ、２４ｂは、ＯＦＦ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する（ステップＳ５０１ａ、Ｓ５０１ｂ）。ここで、ダークテスト実行部３２ａ、３２ｂは、出力部２４ａ、２４ｂからＯＦＦ出力信号が正しく出力されたか否かを判定し、ＯＦＦ出力信号が正しく出力されなかったと判定した場合、異常処理部３３ａ、３３ｂに通知して異常処理させる。【００７５】
前回の出力指令を受信したときからΔＴだけ経過したとき、すなわち時刻ｔ−１からΔｔだけ経過したとき、指令判別部２１ａ、２１ｂは指令受信部１ａ、１ｂから出力指令を受信する（ステップＳ５０２ａ、Ｓ５０２ｂ）。その後、実施の形態１のステップＳ３０１ａ〜ステップＳ３０３ａ、ステップＳ３０１ｂ〜ステップＳ３０３ｂと同等の動作を、ステップＳ５０３ａ〜ステップＳ５０５ａ、ステップＳ５０３ｂ〜ステップＳ５０５ｂにて夫々実行する。【００７６】
その後、照合部２２ａ、２２ｂは、出力部２４ａ、２４ｂにＯＮ出力指示を通知し、出力部２４ａ、２４ｂは、ＯＮ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する（ステップＳ５０６ａ、Ｓ５０６ｂ）。ここで、ダークテスト実行部３２ａ、３２ｂは、ＯＮ出力信号が正しく出力されたか否かを判定し、ＯＮ出力信号が正しく出力されなかったと判定した場合、異常処理部３３ａ、３３ｂに通知して異常処理させる。ＯＮ出力信号が正しく出力された場合、ダークテスト実行部３２ａ、３２ｂは、出力部２４ａ、２４ｂの監視を終了するダークテスト終了処理を実行する（ステップＳ５０７ａ、ステップＳ５０７ｂ）。【００７７】
このように、安全制御装置は、Ａ系処理部３ａ、Ｂ系処理部３ｂが出力指令を受信する前にＯＦＦ出力信号を出力することによって、Δｔからダークテスト開始処理に要する時間Ｔ５とＯＦＦ出力信号を出力するのに要する時間Ｔ２とを引いた時間だけ、出力指令を受信する時刻ｔ０よりも先んじてスイッチＳＷ１ａ、ＳＷ１ｂをＯＦＦする。そして、安全制御装置は、出力指令を受信後、第１の実施の形態と同様のタイミングでＯＮ出力信号を出力し、スイッチＳＷ１ａ、ＳＷ１ｂをＯＮにする。さらに、安全制御装置は、このＯＦＦ出力信号およびＯＮ出力信号をダークテスト用のテスト信号とし、何れか一つのテスト信号が正しく出力されなかった場合、異常処理を実行する。【００７８】
つぎに、Ａ系処理部３ａの指令判別部２１ａの判別結果とＢ系処理部３ｂの指令判別部２１ｂの判別結果とが異なる場合の安全制御装置の動作を説明する。図１０は、Ａ系処理部３ａの指令判別部２１ａの判別結果が「ＯＦＦ」であり、Ｂ系処理部３ｂの指令判別部２１ｂの判別結果が「ＯＮ」である場合の安全制御装置の動作を説明するシーケンス図である。【００７９】
図１０において、まず、タイマ３１ａ、３１ｂは、前回Ａ系処理部３ａ、Ｂ系処理部３ｂが出力指令を受信したときにカウントを開始し、カウントを開始した時点からΔＴ−Δｔだけ経過したとき、Ａ系処理部３ａ、Ｂ系処理部３ｂはダークテスト開始処理（ステップＳ６００ａ、ステップＳ６００ｂ）を実行する。【００８０】
そして、出力部２４ａ、２４ｂは、ＯＦＦ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する（ステップＳ６０１ａ、Ｓ６０１ｂ）。ここで、ダークテスト実行部３２ａ、３２ｂは、出力部２４ａ、２４ｂからＯＦＦ出力信号が正しく出力されたか否かを判定し、ＯＦＦ出力信号が正しく出力されなかったと判定した場合、異常処理部３３ａ、３３ｂに通知して異常処理させる。【００８１】
前回出力指令を受信したときからΔＴだけ経過したとき、指令判別部２１ａ、２１ｂは指令受信部１ａ、１ｂからの出力指令を受信する（ステップＳ６０２ａ、Ｓ６０２ｂ）。その後、実施の形態１のステップＳ４０１ａ〜ステップＳ４０４ａ、ステップＳ４０１ｂ〜ステップＳ４０４ｂと同等の動作を、ステップＳ６０３ａ〜ステップＳ６０６ａ、ステップＳ６０３ｂ〜ステップＳ６０６ｂにて夫々実行する。【００８２】
ＯＦＦ出力信号の出力に着目すると、Ａ系処理部３ａ、Ｂ系処理部３ｂは、ステップＳ６０１ａ、ステップＳ６０１ｂにおいて、ダークテストのテスト信号としてＯＦＦ出力信号を出力する。その後、Ａ系処理部３ａは、ステップＳ６０４ａにて、ＯＦＦ指令と判断した指令判別部２１ａの判別結果に基づき、ＯＦＦ出力信号をスイッチＳＷ１ａに出力する。さらにその後、Ｂ系処理部３ｂは、ステップＳ６０６ｂにおいて、ＯＦＦ出力信号をスイッチＳＷ１ｂに出力する。【００８３】
すなわち、安全制御装置は、両系の判別結果が不一致の出力指令を受信した場合、ステップＳ６０１ａ、ステップＳ６０１ｂにおいてＯＦＦ出力信号を出力して以来、ＯＮ出力信号を出力しない。この結果、安全制御装置は、両系の判別結果が不一致の出力指令を受信する前に出力するダークテストのテスト信号によりＯＦＦ出力信号により安全な制御を実行したことになる。つまり、機器８１ａまたは機器８１ｂの電力供給を遮断する時刻（ｔ１ｂ）は、実施の形態１において説明した時刻ｔ１に比べ、Δｔおよび指令を受信してその指令を判別する指令判別処理に要する時間Ｔ１の和からダークテスト開始処理に要する時間Ｔ５を引いた時間だけ早い時刻となる。【００８４】
つぎに、Ａ系処理部３ａの指令判別部２１ａおよびＢ系処理部３ｂの指令判別部２１ｂの判別結果がともにＯＦＦ指令の場合の安全制御装置の動作について説明する。この場合においても、安全制御装置は、まず出力指令を受信する直前のダークテストのテスト信号によりＯＦＦ出力信号を出力し、その後、受信した出力信号の判別結果に基づいてＯＦＦ出力信号を出力する。すなわち、安全制御装置は、すでに説明した両系の判別結果が不一致の出力指令を受信した場合と同様に、実施の形態１に比べ、Δｔおよび指令を受信してその指令を判別する指令判別処理に要する時間Ｔ１の和からダークテスト開始処理に要する時間Ｔ５を引いた時間だけ前倒しして安全な制御を実行する。【００８５】
以上説明したように、実施の形態２によれば、出力指令が所定の時間間隔で外部から入力される安全制御装置に適用され、タイマ３１ａ、３１ｂの計測時間と出力指令が入力される時間間隔とに基づいて、出力指令が入力される前に機器８１ａ、８１ｂへの動力の供給を停止する出力信号を出力するようにしているため、実施の形態１に比べ安全動作させる出力をさらに前倒しして実行することができる。さらに、出力指令や入力される前に出力する機器８１ａ、８１ｂへの動力の供給を停止する出力信号と、出力指令が入力された後、該入力された出力指令の判別結果がともにＯＮ指令であると判別した場合に出力するＯＮ出力信号と、をテスト信号としたダークテストを実行するようにしているため、別途ダークテストを実行する手間を省略することができる。【００８６】
実施の形態３．
つぎに、実施の形態３の安全制御装置について、図１１〜図１４を参照しながら説明する。【００８７】
例えば安全リモートＩ／Ｏ局とリモートマスタ局との間の通信の質が十分ではなく、出力指令の通信のリトライが繰り返されるような場合、安全リモートＩ／Ｏ局が受信する出力指令の時間間隔は一定とはならない。このように出力指令の受信の時間間隔が一定ではない場合、実施の形態２のように出力指令を受信してからの経過時間に基づいて出力指令を受信する前にＯＦＦ出力信号を出力してダークテストを開始することはできない。そこで、実施の形態３の安全制御装置は、出力指令の受信を完了した直後にＯＦＦ出力信号を出力してダークテストを開始する。【００８８】
図１１は、実施の形態３の安全制御装置の構成を示すブロック図である。実施の形態２と同一の機能を有する構成要素に対しては実施の形態２の構成要素と同一の符号を付し、詳細な説明は省略する。【００８９】
図示するように、実施の形態３の安全制御装置は、指令受信部１ａ、１ｂと、指令判別部２１ａ、照合部２２ａ、シリアルドライバ２３ａ、出力部２４ａ、ダークテスト実行部４１ａ、および異常処理部３３ａを有するＡ系処理部４ａと、指令判別部２１ｂ、照合部２２ｂ、シリアルドライバ２３ｂ、出力部２４ｂ、ダークテスト実行部４１ｂ、および異常処理部３３ｂを有するＢ系処理部４ｂとを備えている。【００９０】
ダークテスト実行部４１ａ、４１ｂは、指令受信部１ａ、１ｂを監視し、Ａ系処理部３ａ、Ｂ系処理部３ｂが出力指令を完了した時点で、出力部２４ａ、２４ｂに対してＯＦＦ出力指令を通知する。また、ダークテスト実行部４１ａ、４１ｂは、出力部２４ａ、２４ｂを監視し、自身がＯＦＦ出力指示を通知したにもかかわらずＯＦＦ出力信号が発行されない場合や、照合部２２ａ、２２ｂがＯＮ出力指示を出力部２４ａ、２４ｂに通知したにもかかわらずＯＮ出力信号が発行されない場合、ＯＦＦ出力信号またはＯＮ出力信号が正常に発行されない状態である旨を異常処理部３３ａ、３３ｂに通知する。【００９１】
つぎに、この発明における実施の形態３の安全制御装置の動作について説明する。図１２のシーケンス図を参照して、Ａ系処理部４ａの指令判別部２１ａの判別結果とＢ系処理部４ｂの指令判別部２１ｂの判別結果とがともにＯＮ指令である場合の安全制御装置の動作について説明する。【００９２】
図１２において、指令判別部２１ａ、２１ｂが指令受信部１ａ、１ｂから出力指令を受信し、受信完了すると、ダークテスト開始処理が実行される（ステップＳ７００ａ、Ｓ７００ｂ）。すなわち、ダークテスト実行部４１ａ、４１ｂは、出力部２４ａ、２４ｂの監視を開始するとともに、出力部２４ａ、２４ｂに対してＯＦＦ出力指示を通知する。【００９３】
そして、出力部２４ａ、２４ｂは、ＯＦＦ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する（ステップＳ７０１ａ、Ｓ７０１ｂ）。ここで、ダークテスト実行部４１ａ、４１ｂは、出力部２４ａ、２４ｂからＯＦＦ出力信号が正しく出力されたか否かを判定し、ＯＦＦ出力信号が正しく出力されなかったと判定した場合、異常処理部３３ａ、３３ｂに通知して異常処理させる。【００９４】
そして、実施の形態２のステップＳ５０３ａ〜ステップＳ５０５ａ、ステップＳ５０３ｂ〜ステップＳ５０５ｂと同等の動作を、ステップＳ７０２ａ〜ステップＳ７０４ａ、ステップＳ７０２ｂ〜ステップＳ７０４ｂにて夫々実行する。【００９５】
その後、照合部２２ａ、２２ｂは、出力部２４ａ、２４ｂにＯＮ出力指示を通知し、出力部２４ａ、２４ｂは、ＯＮ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する（ステップＳ７０５ａ、Ｓ７０５ｂ）。ここで、ダークテスト実行部４１ａ、４１ｂは、ＯＮ出力信号が正しく出力されたか否かを判定し、ＯＮ出力信号が正しく出力されなかったと判定した場合、異常処理部３３ａ、３３ｂに通知して異常処理させる。ＯＮ出力信号が正しく出力された場合、ダークテスト実行部４１ａ、４１ｂは、出力部２４ａ、２４ｂの監視を終了するダークテスト終了処理を実行する（ステップＳ７０６ａ、ステップＳ７０６ｂ）。【００９６】
このように、安全制御装置は、Ａ系処理部４ａ、Ｂ系処理部４ｂが出力指令を受信完了した直後にＯＦＦ出力信号を出力することによって、ｔ０から出力指令の受信およびダークテスト開始処理が完了するまでに要する時間Ｔ６とＯＦＦ出力信号を出力するのに要する時間Ｔ２との和の時間だけ経過した時刻にスイッチＳＷ１ａ、ＳＷ１ｂをＯＦＦする。そして、安全制御装置は、出力指令を受信後、第１の実施の形態と同様のタイミングでＯＮ出力信号を出力し、スイッチＳＷ１ａ、ＳＷ１ｂをＯＮにする。さらに、安全制御装置は、このＯＦＦ出力信号およびＯＮ出力信号をダークテスト用のテスト信号とし、何れか一つのテスト信号が正しく出力されなかった場合、異常処理を実行する。【００９７】
つぎに、図１３のシーケンス図を参照して、Ａ系処理部４ａの指令判別部２１ａの判別結果とＢ系処理部４ｂの指令判別部２１ｂの判別結果とが異なる場合の安全制御装置の動作を説明する。図１３は、Ａ系処理部４ａの指令判別部２１ａの判別結果が「ＯＦＦ」であり、Ｂ系処理部４ｂの指令判別部２１ｂの判別結果が「ＯＮ」である場合の安全制御装置の動作を説明するシーケンス図である。【００９８】
図１３において、指令判別部２１ａ、２１ｂが指令受信部１ａ、１ｂから出力指令を受信し、受信完了すると、ダークテスト開始処理が実行される（ステップＳ８００ａ、Ｓ８００ｂ）。すなわち、ダークテスト実行部４１ａ、４１ｂは、出力部２４ａ、２４ｂの監視を開始するとともに、出力部２４ａ、２４ｂに対してＯＦＦ出力指示を通知する。【００９９】
そして、出力部２４ａ、２４ｂは、ＯＦＦ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する（ステップＳ８０１ａ、Ｓ８０１ｂ）。ここで、ダークテスト実行部４１ａ、４１ｂは、出力部２４ａ、２４ｂからＯＦＦ出力信号が正しく出力されたか否かを判定し、ＯＦＦ出力信号が正しく出力されなかったと判定した場合、異常処理部３３ａ、３３ｂに通知して異常処理させる。【０１００】
そして、実施の形態２のステップＳ６０３ａ〜ステップＳ６０６ａ、ステップＳ６０３ｂ〜ステップＳ６０６ｂと同等の動作を、ステップＳ８０２ａ〜ステップＳ８０５ａ、ステップＳ８０２ｂ〜ステップＳ８０５ｂにて夫々実行する。【０１０１】
ＯＦＦ出力信号の出力に着目すると、Ａ系処理部４ａ、Ｂ系処理部４ｂは、ステップＳ８０１ａ、ステップＳ８０１ｂにおいて、ダークテストのテスト信号としてＯＦＦ出力信号を出力する。その後、Ａ系処理部４ａは、ステップＳ８０３ａにて、ＯＦＦ指令と判断した指令判別部２１ａの判別結果に基づき、ＯＦＦ出力信号をスイッチＳＷ１ａに出力する。さらにその後、Ｂ系処理部４ｂは、ステップＳ８０５ｂにおいて、ＯＦＦ出力信号をスイッチＳＷ１ｂに出力する。【０１０２】
すなわち、安全制御装置は、ステップＳ８０１ａ、ステップＳ８０１ｂにおいてＯＦＦ出力信号を出力して以来、ＯＮ出力信号を出力していない。この結果、安全制御装置は、両系の判別結果が不一致の出力指令を受信した直後のダークテストのテスト信号によりＯＦＦ出力信号により安全な制御を実行したことになる。なお、スイッチＳＷ１ａ、１ｂがＯＦＦ出力信号を受信する時刻（ｔ１ｃ）は、ｔ０から、指令を受信してダークテスト開始処理を実行するのに要する時間Ｔ６とＯＦＦ出力信号を出力するのに要する時間Ｔ２との和の時間だけ経過した時刻となる。ここで、指令を受信してダークテスト開始処理を実行するのに要する時間Ｔ６は、実施の形態１において説明した指令を受信してその指令を判別する指令判別処理に要する時間Ｔ１に比べ、大きな差はないと思われる。したがって、ｔ１ｃとｔ１とはほぼ同時刻であり、実施の形態３の安全制御装置は、実施の形態１と同程度に応答時間を短縮することができるといえる。【０１０３】
つぎに、Ａ系処理部４ａの指令判別部２１ａおよびＢ系処理部４ｂの指令判別部２１ｂの判別結果がともにＯＦＦ指令の場合の安全制御装置の動作について説明する。この場合においても、安全制御装置は、まず出力指令を受信する直前のダークテストのテスト信号によりＯＦＦ出力信号を出力し、その後、受信した出力信号の判別結果に基づいてＯＦＦ出力信号を出力する。すなわち、安全制御装置は、すでに説明した両系の判別結果が不一致の出力指令を受信した場合と同様に、指令受信開始から、指令を受信してダークテスト開始処理を実行するのに要する時間Ｔ６とＯＦＦ出力信号を出力するのに要する時間Ｔ２との和の時間だけ経過した時刻に、安全な制御を実行する。【０１０４】
以上説明したように、実施の形態３によれば、出力指令が入力された直後に機器８１ａ、８１ｂへの動力の供給を停止する出力信号を出力するようにしているため、実施の形態１と同様に、高性能のＣＰＵを用いて判別結果の通信や照合処理を高速化することなく、応答時間を短縮することができる。さらに、出力指令が入力された直後に出力する機器８１ａ、８１ｂへの動力の供給を停止する出力信号と、入力された出力指令の判別結果がともにＯＮ指令であると判別した場合に出力するＯＮ出力信号と、をテスト信号としたダークテストを実行するようにしているため、別途ダークテストを実行する手間を省略することができる。【０１０５】
実施の形態４．
ところで、一般的に、安全制御装置は、ダークテストのほか、自安全制御装置が破損（故障）していないかを診断する故障診断を実行する。具体的には、安全制御装置は、故障診断を開始する前にＯＦＦ出力信号を出力して機器への電力供給を遮断し、故障診断を実行し、自身に故障が発見されなかった場合、ＯＮ出力信号を出力して機器への電力供給を再開する。実施の形態４の安全制御装置は、故障診断の前に出力するＯＦＦ出力信号および故障診断の後に出力するＯＮ出力信号をダークテストのテスト信号とする。以下に、図１４〜図１６を参照して、実施の形態４の安全制御装置について説明する。【０１０６】
図１４は、実施の形態４の安全制御装置の構成を示すブロック図である。図示するように、実施の形態４の安全制御装置は、指令受信部１ａ、１ｂと、指令判別部２１ａ、照合部２２ａ、シリアルドライバ２３ａ、出力部２４ａ、タイマ５１ａ、ダークテスト実行部５２ａ、故障診断実行部５３ａ、および異常処理部５４ａを有するＡ系処理部５ａと、指令判別部２１ｂ、照合部２２ｂ、シリアルドライバ２３ｂ、出力部２４ｂ、タイマ５１ｂ、ダークテスト実行部５２ｂ、故障診断実行部５３ｂ、および異常処理部５４ｂを有するＢ系処理部５ｂとを備えている。【０１０７】
タイマ５１ａ、５１ｂは、予め定められている時間が経過する毎に、ダークテスト実行部５２ａ、５２ｂへダークテスト実行指令を通知するとともに故障診断実行部５３ａ、５３ｂへ故障診断を実行する旨である故障診断実行指令を通知する。【０１０８】
ダークテスト実行部５２ａ、５２ｂは、タイマ５１ａ、５１ｂからダークテスト実行指令が通知されたとき、出力部２４ａ、２４ｂに対してＯＦＦ出力指令を通知する。また、ダークテスト実行部５２ａ、５２ｂは、出力部２４ａ、２４ｂを監視し、自身がＯＦＦ出力指示を通知したにもかかわらずＯＦＦ出力信号が発行されない場合や、後述する故障診断実行指令がＯＮ出力指示を実行したにもかかわらずＯＮ出力信号が発行されない場合、ＯＦＦ出力信号またはＯＮ出力信号が正常に発行されない状態である旨を異常処理部５４ａ、５４ｂに通知する。【０１０９】
故障診断実行部５３ａ、５３ｂは、タイマ５１ａ、５１ｂから故障診断実行指令が通知されたとき、安全リモート局８２の電源（図示せず）やＡ系処理部５ａ、Ｂ系処理部５ｂを実現するハードウェア（ＭＰＵにより実現されている場合はＭＰＵ）の故障診断を開始する。そして、故障診断実行部５３ａ、５３ｂは、故障診断の結果、故障が発見されなかった場合、出力部２４ａ、２４ｂにＯＮ出力指示を通知する。故障診断実行部５３ａ、５３ｂは、故障を発見した場合、異常処理部５４ａ、５４ｂへ故障がある旨を通知する。【０１１０】
異常処理部５４ａ、５４ｂは、ダークテスト実行部３２ａ、３２ｂからＯＦＦ出力信号またはＯＮ出力信号が正常に発行されない状態である旨が通知されると、該通知に対応する異常処理を実行する。また、異常処理部５４ａ、５４ｂは、故障診断実行部５３ａ、５３ｂから故障がある旨が通知された場合、該通知に対応する異常処理を実行する。【０１１１】
つぎに、この発明における実施の形態４の安全制御装置の動作について説明する。図１５のシーケンス図を参照して、Ａ系処理部５ａおよびＢ系処理部５ｂが故障診断を実行し、故障が発見されなかった場合の安全制御装置の動作について説明する。【０１１２】
まず、ダークテスト・故障診断開始処理が実行される（ステップＳ９００ａ、ステップＳ９００ｂ）。すなわち、タイマ５１ａ、５１ｂはダークテスト実行指令および故障診断実行指令を通知する。そして、ダークテスト実行指令が通知されたダークテスト実行部５２ａ、５２ｂは、出力部２４ａ、２４ｂにＯＦＦ出力指示を通知するとともに、出力部２４ａ、２４ｂの監視を開始する。【０１１３】
そして、出力部２４ａ、２４ｂは、ＯＦＦ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する（ステップＳ９０１ａ、Ｓ９０１ｂ）。ここで、ダークテスト実行部５２ａ、５２ｂは、出力部２４ａ、２４ｂからＯＦＦ出力信号が正しく出力されたか否かを判定し、ＯＦＦ出力信号が正しく出力されなかったと判定した場合、異常処理部５４ａ、５４ｂに通知して異常処理させる。【０１１４】
そして、故障診断実行部５３ａ、５３ｂは、故障診断を実行し、故障は発見されなかった（ＯＫ）という診断結果を得る（ステップＳ９０２ａ、ステップＳ９０２ｂ）。【０１１５】
その後、故障診断実行部５３ａ、５３ｂは、出力部２４ａ、２４ｂにＯＮ出力指示を通知し、出力部２４ａ、２４ｂは、ＯＮ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する（ステップＳ９０３ａ、Ｓ９０３ｂ）。ここで、ダークテスト実行部５２ａ、５２ｂは、ＯＮ出力信号が正しく出力されたか否かを判定し、ＯＮ出力信号が正しく出力されなかったと判定した場合、異常処理部５４ａ、５４ｂに通知して異常処理させる。ＯＮ出力信号が正しく出力された場合、ダークテスト実行部５２ａ、５２ｂは、出力部２４ａ、２４ｂの監視を終了するダークテスト終了処理を実行する（ステップＳ９０４ａ、ステップＳ９０４ｂ）。【０１１６】
つぎに、Ａ系処理部５ａおよびＢ系処理部５ｂが故障診断を実行し、どちらか一つの処理部にて故障が発見された場合の安全制御装置の動作について説明する。図１６は、Ａ系処理部５ａにて故障が発見され、Ｂ系処理部５ｂにおいては故障が発見されなかった場合の安全制御装置の動作を説明するシーケンス図である。【０１１７】
まず、ダークテスト・故障診断開始処理が実行される（ステップＳ１０００ａ、ステップＳ１０００ｂ）。そして、出力部２４ａ、２４ｂは、ＯＦＦ出力信号をスイッチＳＷ１ａ、ＳＷ１ｂに出力する（ステップＳ１００１ａ、ステップＳ１００１ｂ）。ここで、ダークテスト実行部５２ａ、５２ｂは、出力部２４ａ、２４ｂからＯＦＦ出力信号が正しく出力されたか否かを判定し、ＯＦＦ出力信号が正しく出力されなかったと判定した場合、異常処理部５４ａ、５４ｂに通知して異常処理させる。【０１１８】
そして、故障診断実行部５３ａ、５３ｂは、故障診断を実行し、故障診断部５３ａは、故障を発見した（ＮＧ）という診断結果を得（ステップＳ１００２ａ）、故障診断部５３ｂは故障は発見されなかった（ＯＫ）という診断結果を得る（ステップＳ１００２ｂ）。【０１１９】
その後、故障診断実行部５３ａは、異常処理５４ａに通知を行って異常処理を実行させる（ステップＳ１００３ａ）。故障診断実行部５４ｂは、出力部２４ｂにＯＮ出力指示を通知し、出力部２４ｂは、ＯＮ出力信号をスイッチＳＷ１ｂに出力する（ステップＳ１００３ｂ）。ここで、ダークテスト実行部５２ｂは、ＯＮ出力信号が正しく出力されたか否かを判定し、ＯＮ出力信号が正しく出力されなかったと判定した場合、異常処理部５４ｂに通知して異常処理させる。ＯＮ出力信号が正しく出力された場合、ダークテスト実行部５２ｂは、出力部２４ｂの監視を終了するダークテスト終了処理を実行する（ステップＳ１００４ｂ）。【０１２０】
つぎに、Ａ系処理部５ａおよびＢ系処理部５ｂが故障診断を実行し、両系の処理部にて故障が発見された場合の安全制御装置の動作について説明する。この場合においても、両系の処理部は、まず、ダークテスト・故障診断開始処理を実行し、ＯＦＦ出力信号を出力する。その後、すでに説明したＡ系処理部５ａにて故障が発見され、Ｂ系処理部５ｂにおいては故障が発見されなかった場合におけるＡ系処理部５ａと同様に、両系の処理部はＯＮ出力信号を出力することなく異常処理を実行する。【０１２１】
以上説明したように、実施の形態４によれば、安全制御装置は、故障診断の前に出力するＯＦＦ出力信号および故障診断の後に出力するＯＮ出力信号をダークテストのテスト信号とし、故障診断により故障が発見されなかった場合、結果として故障診断とダークテストとを同時に実行することができ、故障が発見された場合、異常処理を実行することができる。【０１２２】
ところで、実施の形態２〜４の説明において、安全性を高めるために、処理部を複数用意し、出力指令の判別結果を処理部間で互いに照合する、として説明したが、処理部の数は一つであってもよい。処理部の数が一つである場合、出力手段は、照合部による照合結果の代わりに、指令判別部による判別結果に基づいて、ＯＮ出力信号やＯＦＦ出力信号を出力する。
【産業上の利用可能性】
【０１２３】
以上のように、本発明にかかる安全制御装置は、外部から入力される出力指令に基づいて対象となる機器に安全動作をさせるのか動作許可するのかを制御する処理部を一つまたは複数備える安全制御装置に有用であり、特に、出力指令を受けてから機器を安全動作させる出力信号を出力するまでの応答時間を短縮する必要のあるシステムに適している。
【図１】
2009060953.tif 000003
【図２】
2009060953.tif 000004
【図３】
2009060953.tif 000005
【図４】
2009060953.tif 000006
【図５】
2009060953.tif 000007
【図６】
2009060953.tif 000008
【図７】
2009060953.tif 000009
【図８】
2009060953.tif 000010
【図９】
2009060953.tif 000011
【図１０】
2009060953.tif 000012
【図１１】
2009060953.tif 000013
【図１２】
2009060953.tif 000014
【図１３】
2009060953.tif 000015
【図１４】
2009060953.tif 000016
【図１５】
2009060953.tif 000017
【図１６】
2009060953.tif 000018
【国際調査報告】
2009060953.tif 000019
2009060953.tif 000020
2009060953.tif 000021
2009060953.tif 000022