(57)【特許請求の範囲】
【請求項１】
ネットワークを介して外部コントローラと通信データの送受信を行う通信装置と、該通信装置を経由して前記外部コントローラから送られてくる通信データを受信し、該通信データに基づいて電力変換器へ制御信号を出力する制御装置と、該通信データに基づいて前記電力変換器への停止指令の出力その他の安全に関する動作を実行する安全機能を、第一のプロセッサと第二のプロセッサによって実現する安全装置と、を有する安全制御システムであって、
前記第一のプロセッサと前記第二のプロセッサは、周期的に伝送する安全データの送信タイミングまたは受信タイミングで発生させる相手側プロセッサへの外部割込信号を同期信号として相互に転送するタイミング同期手段を備え、
前記タイミング同期手段は、同期信号によって発生する割り込みがアクティブ状態にあるアクティブ時間と、該割込信号の発生サイクルであるアクティブ化間隔とを監視し、前記アクティブ時間および前記アクティブ化間隔が、設定された閾値範囲にあるときのみ前記外部割込信号を受け付けて予め定められた安全処理を行うことを特徴とする安全制御システム。
【請求項２】
前記アクティブ化間隔の閾値は、運転動作前に予め設定され、前記アクティブ時間の閾値は、電力変換器の動作状態に応じて設定されることを特徴とする請求項１に記載の安全制御システム。 
【請求項３】
前記割込信号がアクティブ状態になった時点からの時間を計測するタイマを備え、前記安全処理は、該タイマの値によって、減速時間または停止までの時間を補正することを特徴とする請求項１または２に記載の安全制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電力変換器などの被制御装置の安全監視機能を有し、ネットワーク経由で与えられる制御信号に基づいて被制御装置を制御する安全制御システムに係り、特に二重化されたプロセッサによって安全監視機能を実現する際のプロセッサ間の同期を維持する技術に関する。
【背景技術】
【０００２】
従来、電力変換器などの被制御装置に対しては、機能安全が要求され、ＩＥＣ６１５０８に代表される機能安全規格などが策定されている。この機能安全規格は、診断・監視機能に加えて、外部のセンサー等からの信号に基づいて、安全停止、安全減速など装置を安全な状態へ移行する機能を定義している。
【０００３】
また、外部コントローラから安全制御システムの電力変換器へ制御信号や安全信号を与える方法として、現状は信頼性の観点から安全制御システムを構成する各装置（ユニット）をワイヤ配線によって接続している。この方法は、実装が容易であるものの、システムの規模に応じて配線が複雑化し、設計面やコスト面で不利となっている。このため、ワイヤ配線で与えられていた安全信号を、制御信号と混合させて産業用ネットワークに乗せるための「安全バス」を用いたシステムが提案されている。（例えば特許文献１を参照。）
【０００４】
また、特許文献２は、信頼性向上のための二重化情報システムに関する。２つのシステムは常時同時に動作せず、故障などの際にトリガとして割込信号を出力して、他方のシステムを稼働させるものである。このため、必ずしも機能安全を満足するシステムとはいえない。また、同文献のシステムは、他方のシステムへ送る割込信号の変化のみを処理開始のトリガとしたものであり、信号の信頼性向上を図るものではない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−１７８７３０号公報
【特許文献２】特開２００６−２０９６２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
一般に、電力変換器で安全バスを実現するとき、安全制御システムは、機能安全規格を満たすため、２つの安全系プロセッサを設ける必要がある。この２つのプロセッサは互いに同期して安全機能を実行しなければならない。このため、２つのプロセッサ間でタイミングを伝達するための同期信号を用い、この信号の変化に応じて、他方のプロセッサにタイミングを伝達している。
【０００７】
しかしながら、電力変換器からのノイズや故障による短絡、断線、接地等の問題によって、誤ったタイミングで同期信号が変化し、このタイミングで安全機能に関する処理が動作してしまう危険性がある。
【０００８】
本発明は上述のかかる事情に鑑みてなされたものであり、安全バスに対応した安全制御システムにおいて、安全機能を実現するための二重化プロセッサ間のタイミング同期手段を高信頼度で実現することのできる安全制御システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の目的を達成するため、本発明に係る安全制御システムは、ネットワークを介して外部コントローラと通信データの送受信を行う通信装置と、該通信装置を経由して外部コントローラから送られてくる通信データを受信し、該通信データに基づいて電力変換器へ制御信号を出力する制御装置と、該通信データに基づいて電力変換器への停止指令の出力その他の安全に関する動作を実行する安全機能を、第一のプロセッサと第二のプロセッサによって実現する安全装置と、を有する安全制御システムであって、第一のプロセッサと第二のプロセッサは、周期的に伝送する安全データの送信タイミングまたは受信タイミングで発生させる相手側プロセッサへの外部割込信号を同期信号として相互に転送するタイミング同期手段を備え、タイミング同期手段は、同期信号によって発生する割り込みがアクティブ（有効）状態にあるアクティブ時間と、該割込信号の発生サイクルであるアクティブ化間隔とを監視し、アクティブ時間およびアクティブ化間隔が、それぞれ設定された閾値範囲にあるときのみ外部割込信号を受け付けて予め定められた安全処理を行うことを特徴とする。
【００１０】
本発明によれば、二重化されたプロセッサは互いに他方から送られた同期信号の変化時間を監視する手段を備えることにより、タイミング同期信号の信頼性を向上させた安全バス対応の安全制御システムを実現することができる。
【００１１】
また、本発明に係る安全制御システムでは、アクティブ化間隔の閾値は、運転動作前に予め設定され、アクティブ時間の閾値は、電力変換器の動作状態に応じて設定されることを特徴とする。 
【００１２】
本発明では、特に電力変換器の動作状態に応じてアクティブ時間の閾値を設定し、この閾値を監視しながら安全処理を実行するので、動作ノイズや故障に強い安全制御システムを構築することができる。
【００１３】
さらに、本発明に係る安全制御システムは、割込信号がアクティブ状態になった時点からの時間を計測するタイマを備え、安全処理は、該タイマの値によって、減速時間または停止までの時間を補正することを特徴とする。
【００１４】
本発明では、割込信号によって安全処理を実行する際に、割込信号がアクティブ状態になった時点からの時間で減速時間または停止までの時間を補正するので、二重化されたＣＰＵの出力を一致させ、精度の高い安全処理を実現することができる。
【発明の効果】
【００１５】
本発明によれば、二重化されたプロセッサ間で転送するタイミング同期信号の信頼性を向上させ、また精度の高い安全処理を実現することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態による安全制御システムおよび周辺装置の構成図である。
【図２】図１の安全装置の概略構成図である。
【図３】タイミング同期信号波形と負論理における各信号名、時間名との関係の説明図である。
【図４】タイミング同期信号波形とエラー要因例の説明図である。
【図５】図２のＣＰＵ３２，４２の機能構成を示す。
【図６】図５の同期信号監視手段７１の処理手順を示すフローチャートである。
【図７】図５の閾値設定テーブル７３のデータ構成図である。
【図８】図５の設定値変更手段７２の処理手順を示すフローチャートである。
【図９】図２のタイミング同期信号受信回路４４の構成図である。
【発明を実施するための形態】
【００１７】
以下、図面を参照しながら本発明の実施の形態を説明する。図１は、本発明の実施の形態による安全制御システムおよび周辺装置の構成図である。この図において、安全制御システム１は、ネットワーク３を介して外部コントローラ２と接続している。外部コントローラ２は、安全制御システム１へ制御機能や安全機能に関する指令信号の送信ならびに安全制御システム１からの監視データの受信によるモニタリングを行う。一方、安全制御システム１は、外部コントローラ２から送られてくる指令信号に基づいて制御対象である電動機４を監視制御する。
【００１８】
安全制御システム１は、ネットワーク３を介して外部コントローラ２と通信を行う通信装置１０、外部コントローラ２から送られてくる指令信号に基づいて制御信号を出力する制御装置２０、制御装置２０から出力される制御信号によって電動機４を駆動する電力変換器６０、電力変換器６０や制御装置２０などの異常の有無を監視し、電力変換器６０へ停止指令を出力するＣＰＵ二重化された安全装置３０を有している。通信装置１０、制御装置２０、および、安全装置３０との間は、それぞれケーブルやコネクタなどの分離・接続可能な接続手段で接続されている。なお安全制御システム１の各装置は、それぞれユニット構成で実現しても良いし、基板構成で実現しても良い。
【００１９】
安全制御システム１を構成する各装置の機能概要を説明すると、まず、制御装置２０は、通信装置１０から渡された外部コントローラ２の通信データを制御データと安全データとに分離する。そして制御データを受信した場合は、その制御データに基づいて電力変換器６０の電圧・電流・周波数などを決定し、制御信号を生成して電力変換器６０へ出力する。そして、電力変換器６０は、制御装置２０からの制御指令や安全装置３０からの停止指令によって、電動機４を運転させるための電力の供給や停止を行う。通信装置１０から渡された通信データが安全データの場合は、制御装置２０は、この安全データを安全装置３０へ渡す。安全データの渡し方は、二重化されたプロセッサユニットのうち、制御装置２０と通信を行う一のプロセッサユニット３１に渡し、そのプロセッサユニット３１が他方のプロセッサユニット４１へ安全データを転送する。なお、安全データの渡し方はこれに限らず、たとえば、データを分岐する分岐手段を設け、制御装置２０から送信された安全データをその分岐手段を介して夫々同じデータを両方のプロセッサユニット３１，４１へ送信するようにしても良い。
【００２０】
安全装置３０の両プロセッサユニット３１，４１は、外部コントローラ２からの安全機能設定信号による非常停止制御、安全状態の外部コントローラ２への通知処理などを行う。
【００２１】
両プロセッサユニット３１，４１間は、ケーブル接続されるが、外部割込信号によって、互いに処理のタイミングを通知して同期をとっている。なお、プロセッサユニット内部のＣＰＵのプログラム処理によって発生する割込信号（内部割込信号）に対して、ＣＰＵ間の割込信号は、ＣＰＵの外部に出力されるため、以下の説明において外部割込信号という。電力変換器６０の動作ノイズによって、ケーブルにノイズが乗ることがあり、これにより誤動作を起こす可能性がある。
【００２２】
本実施の形態は、このノイズに対して割込信号が誤入力されることを回避するために下記の構成をとっている。
【００２３】
図２に、安全装置３０の概略構成図を示す。安全装置３０のプロセッサユニット３１，４１はそれぞれ内部にプログラムによる演算処理を実行するＣＰＵ３２，４２を有している。ＣＰＵ３２，４２間は、互いに外部割込信号を発生する回路（タイミング同期信号発生回路）３３，４３と、外部割込信号を受信する回路（タイミング同期信号受信回路）４４，３４が設けられている。なお、外部割込信号によってＣＰＵの処理の同期をとるため、タイミング同期信号発生回路３３，４３とタイミング同期信号受信回路４４，３４とを合わせてタイミング同期手段４０という。
【００２４】
タイミング同期手段４０は、プロセッサ間を外部割込信号線で結んでいる。なお、図１では、外部割込信号は双方向であるが、たとえばＣＰＵ４２をＣＰＵ３２に同期させる場合は、ＣＰＵ３２からＣＰＵ４２の一方向のみでも機能する。この信号は、ある電圧閾値、たとえば２．０Ｖなどを境界値として用いて２．０Ｖ以上なら「１」、２．０Ｖ未満なら「０」のように表わされる。アクティブロー(Active Low: 負論理)で定義するとき、「１」は非アクティブ、「０」はアクティブとなる。以下、負論理であるとして説明する。
【００２５】
このとき、通常はこの信号がアクティブとなる時点（立ち下がり時）に、ＣＰＵは外部割込として予め定めた処理（割り込み処理）を実行する。設定によっては、非アクティブ状態になるとき（立ち上がり時）、または、その両方（両エッジ時）などの場合もある。
【００２６】
信号線に問題が生じたとき、たとえばノイズや断線、短絡、または他方のプロセッサユニットの故障などのときは、割り込み処理が予期しないタイミングで動作する場合があり、安全機能の動作に遅延が生じたりするなどの問題を引き起こす危険性がある。
【００２７】
本実施の形態では、アクティブ状態となった時点を基準にして、非アクティブ状態になるまでの時間（アクティブ時間）と、アクティブ状態になった時点を基準にして、次にアクティブ状態になる時点までの間隔（アクティブ化間隔）を用いて、外部割込みの発生タイミングを制御する。
【００２８】
図３にタイミング同期信号波形と負論理における各信号名、時間名との関係を示す。アクティブ時間とアクティブ化間隔はそれぞれ下限値と上限値の２つの閾値を持つ。
【００２９】
たとえば、図４に挙げられる主に４つの問題をアクティブ時間及びアクティブ化間隔を監視することで対策できる。図４（ａ）は信号線が断線または短絡、プロセッサ故障等で発生する障害であり、アクティブ時間の上限値を超えたか否かによって検出できる。図４（ｂ）は、ノイズ等によるもので、アクティブ時間の下限値によって検出できる。図４（ｃ）では、安全通信のサイクル時間（すなわち、同期信号の周期）によって下限値は既知となっている。このため、下限値をさらに下回ってアクティブ状態となった場合には、故障などの問題が推定される。図４（ｄ）は、同期信号である外部割込信号の非アクティブ状態のときに、断線や故障等が発生したときの障害であり、アクティブ化間隔の上限値を超えたときに検出することができる。
【００３０】
本実施の形態では、外部割込信号がアクティブ状態になったときにＣＰＵの機能として備える同期信号監視手段７１が起動して、同期信号の監視及び整合性確認処理を実行して、上記の図４（ａ）〜（ｄ）の不具合を検出する。図５にＣＰＵ３２，４２の機能構成を示す。ＣＰＵの演算処理部には、プログラムによって実現可能な同期信号監視手段７１と設定値変更手段７２を備え、また、内部タイマである監視タイマ１（７４）、監視タイマ２（７５）を備えている。また、ＣＰＵの内部メモリには、閾値設定テーブル７３を保存している。
【００３１】
図６に同期信号監視手段７１の処理手順を示す。この処理では、ＣＰＵの内部タイマ機能（監視タイマ１，監視タイマ２）を用いる。外部割込信号は、立下りエッジ検出回路４５によって、アクティブ状態への変化点が検出され、ＣＰＵへ割込信号として入力される。この割込信号によって同期信号監視手段７１が起動する。同期信号監視手段７１は、起動されると、監視タイマ２のタイマ値を取得する（Ｓ１０１）。この監視タイマ２は前回サイクルのアクティブ状態変化点からの時間を計測するタイマであり、初期値として通信サイクルの値が設定されている。
【００３２】
そして、同期信号監視手段７１は、取得したタイマ値からアクティブ化間隔は閾値（下限値）以上か否かを判定し（Ｓ１０２）、「ＹＥＳ」の場合は、監視タイマ１の動作を開始する（Ｓ１０３）。この監視タイマ１は、アクティブ状態の継続時間（すなわちアクティブ時間）を計測するタイマである。次に、同期信号監視手段７１は、監視タイマ１は時間切れか否かを判定し（Ｓ１０４）、時間切れの場合は、監視タイマ１の動作を停止して（Ｓ１０５）、フェイスセーフ処理を実行する（Ｓ１０７）。
【００３３】
一方、ステップＳ１０４で、監視タイマ１が時間切れでない場合は、タイミング同期信号が非アクティブ状態か否かを判定し（Ｓ１０９）、非アクティブ状態でなければ、ステップＳ１０４に戻る。同期信号が非アクティブ状態ならば、監視タイマ１の動作を停止し（Ｓ１１０）、タイマ値を取得し（Ｓ１１１）、そのタイマ値（すなわちアクティブ時間）が設定範囲内か否かを判定する（Ｓ１１２）。設定範囲内の場合は、監視タイマ２を再起動し（Ｓ１１３）、内部割込みを発生させて、割込み処理を起動する（Ｓ１１４）。
【００３４】
また、ステップＳ１０２でアクティブ化間隔が閾値（下限値）以下の場合は（Ｓ１０２で「ＮＯ」）、フェイスセーフ処理を実行する（Ｓ１０８）。なお、ステップＳ１０２で、アクティブ化間隔が、閾値（上限値）を超えた場合もフェイルセーフ処理を実行するようにしても良い。
【００３５】
以上の同期信号監視手段の処理によって、アクティブ時間、アクティブ化間隔とも閾値の範囲内に入っている場合、すなわち正常時には割込みを受け付けて、その割込みに対応する安全処理を実行し、アクティブ時間またはアクティブ化間隔のいずれかが閾値の範囲内に入っていない場合は、割込みを受け付けずに予め定められたフェイルセーフ処理を実行する。
【００３６】
なお、閾値の決定方法としては、たとえばインバータの運転指令周波数またはキャリア周波数、ユーザーによる動作環境の初期設定、安全通信の処理サイクルといったパラメータを元にして決定し、これら閾値を運転前に予めメモリ等に格納しておく。そして、運転時に条件に応じて切り替える仕組みを用意することで、監視・整合性確認処理による処理開始の遅延を最小化することができる。
【００３７】
たとえば通信サイクルが１０ｍｓ周期のとき、図１の構成によれば、外部コントローラ２と安全制御システム１との間では、１０ｍｓ周期で安全データが送受信されることになる。外部コントローラ２から送られてきた安全データは、制御装置２０で受信され、安全装置３０へ渡される。このとき安全装置３０のプロセッサユニット３１からプロセッサユニット４１へ送られる受信の同期信号はおよそ１０ｍｓ間隔になる。また、プロセッサ２からプロセッサ１への送信も同様に１０ｍｓ周期で行われ、安全データとして異常有無などのステータスが、制御装置２０を経由して、外部コントローラ２へ送られる。したがって、アクティブ化間隔の下限値は１０ｍｓより小さく、処理時間のばらつき誤差を差し引いた値に設定すれば良い。アクティブ化間隔の上限値は１０ｍｓより大きく、断線等の故障と判定できる境界値を設定する。アクティブ時間の下限値は基準値に対してプロセッサの遅延時間などを考慮した最小値、アクティブ時間の上限値はプロセッサの信号出力精度と短絡等の故障と見なせる境界値を設定する。なおアクティブ時間の基準値は、電動機の速度によってＣＰＵ３２，ＣＰＵ４２間のケーブルに乗るノイズの大きさが異なってくる。速度が速くなればノイズが大きくなる傾向にあるので、予め速度指令値とアクティブ時間基準値との関係を閾値設定テーブル７３として制御装置２０あるいは、安全装置３０の各ＣＰＵ３２，４２に保存しておく。そして、外部コントローラ２から送られてくる速度指令値に基づいて閾値設定テーブル７３を参照してアクティブ時間基準値を抽出して、上述したように一定値を加算あるいは減算することによってアクティブ時間の上下限値を演算する。一方、アクティブ化間隔は、通信サイクルによって決まるので、運転前の設定値として予め保存しておき、運転サイクルが変更になった場合は、そのサイクルに応じて上下限値を変更する。簡便な方法としては、図７に示すように、一定の指令値範囲ごとにアクティブ時間の下限値と上限値を関連付けて予め保存し、通信サイクルを基準とした下限値と上限値をアクティブ化間隔の閾値として予め保存しておくようにしても良い。
【００３８】
図８は、ＣＰＵ３２，４２の設定値変更手段７２の処理手順を示すフローチャートである。電力変換器６０の指令周波数、または通信サイクルが変更されたときのアクティブ時間、アクティブ化間隔の閾値の変更手順を示す。
【００３９】
この図に示すように、設定値変更手段７２は、電力変換器６０への指令周波数等の設定変更の際の内部割込によって起動する。設定値変更手段７２は、起動されると、指令周波数の変更か否かを判定し、指令周波数の変更の場合は、閾値設定テーブルに格納されているアクティブ時間の閾値の上下限値を抽出して、図６のステップＳ１１２の判定処理の閾値として設定する。ステップＳ２０１で「ＮＯ」の場合は、設定値変更手段７２は、通信サイクルが変更になったか否かを判定し、通信サイクルが変更になった場合は、閾値設定テーブル７３に格納されているアクティブ化間隔の閾値の上下限値を抽出して、図６のステップＳ１０２の判定処理の閾値として設定する。
【００４０】
本実施の形態によれば、通信サイクルによって、タイミング同期のアクティブ化間隔を設定・変更し、指令周波数によって、アクティブ時間の設定・変更をするので、ノイズに強いタイミング同期手段を実現することができ、信頼性の高い安全制御システムを構築することができる。
【００４１】
次の本発明の第２の実施の形態を説明する。
第１の実施の形態は、ＣＰＵのソフトウェア処理によって、アクティブ時間、アクティブ化間隔を監視するものであるが、本実施の形態は、外付けの回路によってアクティブ時間、アクティブ化間隔を監視するものである。
【００４２】
本実施の形態によるタイミング同期手段４０の構成を図２、図９に示す。
この図において、タイミング同期手段４０は、タイミング同期信号発生回路３３，４３と外部割込みの信号線を通して、同回路と夫々つながるタイミング同期信号受信回路４４，３４から構成されている。回路３３と回路４３、および回路３４と回路４４はそれぞれ同じ回路構成であるので、以下、タイミング同期信号発生回路３３とタイミング同期信号受信回路４４を例に説明する。
【００４３】
タイミング同期信号発生回路３３は、ＣＰＵ３２のアドレスをデコードするデコード回路３５、デコード回路３５の出力と書き込み信号との論理積を演算するＡＮＤ回路３６、およびラッチ回路３７から構成されている。ラッチ回路３７は、ＤＦＦ（Ｄ型フリップフロップ）で実現されＤ入力には、データのあるビット（たとえばＬＳＢ）が接続され、クロック入力（ＣＫ）には、ＡＮＤ回路３６の出力が接続される。ラッチ回路３７の出力は外部割込信号として、タイミング同期信号受信回路４４へ伝送される。
【００４４】
次に、本実施の形態によるタイミング同期信号受信回路４４の構成を図９を用いて説明する。
図９のタイミング同期信号受信回路４４において、外部割込信号は立下りエッジ検出回路４５と立上りエッジ検出回路４６にそれぞれ入力される。立下りエッジ検出回路４５は外部割込信号のアクティブ状態への変化点を検出する回路で、エッジを検出するとワンショットのパルスを発生させる。立上りエッジ検出回路４６は外部割込信号の非アクティブ状態への変化点を検出する回路で、変化点を検出するとワンショットのパルスを発生させる。
【００４５】
立下りエッジ検出回路４５の出力は、ラッチ回路４７とワンショット回路５６へそれぞれ入力される。ラッチ回路４７は、ワンショットパルスをラッチする回路であり、ラッチされた出力は、タイマ回路４９のイネーブル端子（ＥＮ）に接続される。タイマ回路４９では、イネーブル端子の入力が「１」のときにシステムの基準クロックによって計数され、計数結果であるタイマ値が出力される。このタイマ値は、比較回路５３に入力される。
【００４６】
比較回路５３は、入力されたタイマ値を閾値格納手段５１に格納されているアクティブ時間の下限値および上限値とそれぞれ比較して、その比較結果を出力する。たとえば、タイマ値が下限値と上限値の間にあるときは、「下限値≦ｘ≦上限値」の端子から「１」が出力される。なお、閾値格納手段５１は、たとえば複数のＤＦＦによって構成することができ、ＣＰＵから書き込まれた値がラッチされている。
【００４７】
比較回路５３の出力は、ＤＦＦで構成されるラッチ回路５５のＤ入力端子に繋がっている。また、ラッチ回路５５のクロック端子（ＣＫ）は、立上りエッジ検出回路４６の出力と繋がっている。すなわち、ラッチ回路５５によって、比較回路５３の「下限値≦ｘ≦上限値」の出力が、立上りエッジ検出回路４６のパルスでラッチされ、ラッチ回路５５の出力が割込信号としてＣＰＵに入力される。
【００４８】
また、ラッチ回路４７の出力は、タイマ回路４８のイネーブル端子（ＥＮ）に入力され、この端子が「１」の間、タイマ回路４８は、基準クロックによってカウントアップされる。そして、タイマ回路４８の出力であるタイマ値は、比較回路５２に入力されると共に、ＣＰＵからも読み込まれるようになっている。比較回路５２は、入力されたタイマ値を閾値格納手段５０に格納されているアクティブ化間隔の下限値および上限値とそれぞれ比較して、その比較結果を出力する。たとえば、タイマ値が下限値と上限値の間にあるときは、「下限値≦ｘ≦上限値」の端子から「１」が出力され、タイマ値が上限値を超えている場合は、「ｘ＞上限値」の端子から「１」が出力される。「ｘ＞上限値」の端子は、ＤＦＦで構成されるラッチ回路５４に接続され、ラッチ回路５４のクロック入力（ＣＫ）には基準クロックが入力される。ラッチ回路５４の出力は、異常検出信号としてＣＰＵに入力される。
【００４９】
比較回路５２の「下限値≦ｘ≦上限値」の端子は、ワンショット回路５６の入力（Ａ入力）に繋がり、ワンショット回路５６の他の入力（Ｂ入力）には、立下りエッジ検出回路４５の出力が繋がっている。ワンショット回路５６は、Ａ入力、Ｂ入力ともに「１」のときに一定幅のパルスを出力する回路である。このワンショット回路５６の出力は、タイマ回路４８，４９、ラッチ回路４７のリセット端子に繋がっている。また、ラッチ回路５４，５５のクリア端子（ＣＬ）は、ＣＰＵと繋がり、ＣＰＵ回路の書き込み動作によってリセットされるようになっている。なお、ラッチ回路４７のクロック端子（ＣＫ）の入力は、リセット端子に入力されるリセット信号の解除タイミングよりも若干遅くするなど必要により、各信号のタイミング調整を行うものとする。
【００５０】
上記の構成を有するタイミング同期手段の４０の動作を説明する。
タイミング同期信号発生回路３３は、特定のアドレスへのデータに「１」「０」を書き込むことによって、図３に示す波形になるように外部割込信号を発生させる。
【００５１】
すなわち、ＣＰＵは、通信サイクルに連動して送信タイミングになったときに、「１」を書き込んで、外部割込信号をアクティブ状態にする。そして、閾値設定テーブル７３を参照して、現在の指令周波数に対応する時間後に「０」を書き込んで非アクティブ状態にする。この動作を送信タイミングごとに繰り返す。
【００５２】
タイミング同期信号受信回路４４では、正常な外部割込信号の場合は、立下りエッジ検出回路４５で立ち下がりエッジを検出すると、ラッチ回路４７の出力が「１」となり、タイマ回路４９が計数を開始する。そして、タイマ値がアクティブ時間の下限値と上限値の間になったときに「下限値≦ｘ≦上限値」の端子が「１」を出力し、またこのタイミングで非アクティブ状態になるので、立上りエッジ検出回路４６からパルスが出力され、ラッチ回路５５の出力が「１」になり、割込信号が発生する。
【００５３】
また、次の通信サイクルでは、アクティブ化間隔が上限値と下限値の間にあるときに外部割込信号がアクティブ状態になるため、ワンショット回路５６からリセット信号が出力され、ラッチ回路４７、タイマ回路４８，４９がリセットされ、立下りエッジ検出回路４５の出力パルスによって再起動する。このとき、比較回路５２の「ｘ＞上限値」は「１」にならず、ラッチ回路５４の出力も「１」にならないので、異常検出信号は発生しない。
【００５４】
ＣＰＵでは、ラッチ回路５５から出力される割込信号によって、割込み処理が起動すると、割込み処理においてラッチ回路５５にリセット信号を出力して割込みを解除すると共に、タイマ回路４８から出力されるタイマ値を読み込む。これにより、割込みがアクティブ状態になってからの時間を検知することができる。割込み処理では、このタイマ値をたとえば減速指令を演算するときに、現在時刻をタイマ値で補正して、アクティブ状態になった時点からの速度として演算することによって、ＣＰＵ３２とＣＰＵ４２との間の減速指令の誤差を小さくすることができる。また、指令周波数によって変動するアクティブ時間の誤差を精度良く補正することができる。
【００５５】
＜図４（ａ）の場合＞
アクティブ時間が上限値を超えると、比較回路５２の「ｘ＞上限値」の出力端子が「１」となり、この結果ラッチ回路５４の出力も「１」となり、ＣＰＵに異常が通知される。ＣＰＵは、割込みによって異常状態を検知すると、フェイルセーフ処理を実行すると共に、リセット信号を出力してラッチ回路５４をリセットする。このとき、比較回路５３では、タイマ値が上限値よりも大きくなるので、「下限値≦ｘ≦上限値」の端子は「１」にならず、ラッチ回路５５の出力も「１」にならないので、割込信号は発生しない。
【００５６】
＜図４（ｂ）の場合＞  
アクティブ時間が下限値未満の場合は、比較回路５３の「下限値≦ｘ≦上限値」の端子は「１」にならず、ラッチ回路５５の出力も「１」にならないので、割込信号は発生しない。また、アクティブ化間隔の上下限値の範囲内に無い場合はワンショット回路５６からリセット信号は出力されないので、タイマ回路４８，４９は計数を継続する。これにより
瞬時のノイズによる誤動作を防止することができる。
【００５７】
＜図４（ｃ）の場合＞  
アクティブ化間隔が下限値未満の場合は、ワンショット回路５６からリセット信号は出力されず、タイマ回路４８，４９の計数が続行する。一過性のノイズであって瞬時に復帰をすれば、次の通信サイクルでリセット信号が出力され、アクティブ時間の計数が開始される。継続故障の場合は、比較回路５２の「ｘ＞上限値」端子が「１」となり、ラッチ回路５４から異常検出信号が出力される。
【００５８】
＜図４（ｄ）の場合＞  
断線等により、外部割込信号の非アクティブ状態が上限値を超えて継続した場合は、図４（ａ）の場合と同様に、比較回路５２の「ｘ＞上限値」の出力端子が「１」となり、この結果ラッチ回路５４の出力も「１」となり、ＣＰＵに異常が通知される。
【００５９】
本実施の形態によれば、ＣＰＵの外付け回路によってタイミング同期手段を実現するので、ＣＰＵの処理負荷を低減させることができる。また、外部割込みがアクティブ状態になった時点からの経過時間をＣＰＵへ読み込み可能にして、読み取った経過時間をもとに安全信号の出力タイミングを調整することにより、二重化されたＣＰＵ間の同期処理の精度を向上させることができる。
【符号の説明】
【００６０】
１    安全制御システム
２    外部コントローラ
３    ネットワーク
４    電動機
１０    通信装置
２０    制御装置
３０    安全装置
３１，４１    プロセッサユニット
３２，４２        ＣＰＵ（プロセッサ）    
３３，４３    タイミング同期信号発生回路
３４，４４        タイミング同期信号受信回路
３５    デコード回路
３６    ＡＮＤ回路
３７，４７，５４，５５    ラッチ回路
４０    タイミング同期手段
４５    立下りエッジ検出回路
４６    立上りエッジ検出回路
４８，４９    タイマ回路
５０，５１    閾値格納手段
５２，５３    比較回路
５６    ワンショット回路
６０    電力変換器
７１    同期信号監視手段
７２    設定値変更手段
７３    閾値設定テーブル
【図２】
0005560915.tif 000002
【図３】
0005560915.tif 000003
【図４】
0005560915.tif 000004
【図５】
0005560915.tif 000005
【図６】
0005560915.tif 000006
【図７】
0005560915.tif 000007
【図８】
0005560915.tif 000008
【図９】
0005560915.tif 000009
【図１】
0005560915.tif 000010