(57)【要約】【課題】  安全装置に割り込み使用制限がある場合であっても、複雑な処理や、特別な装置を追加することなく、簡単な構成により冗長化された安全装置の同期を取る。【解決手段】  スレーブ安全装置において、タイマ２０１は、安全処理の処理周期の計時を繰り返す。処理起動部２０２は、タイマ２０１が１周期分の処理周期の計時を行う都度、安全処理を起動する。信号読込部２０３は、安全処理の処理周期毎に信号線の同期信号の信号値を読み込む。同期化制御部２０４は、信号読込部２０３が読み込んだ信号値に基づいて、タイマに計時させる処理周期を増加または減少させ、当該スレーブ安全装置の安全処理の処理周期を同期信号に同期させる。【選択図】図２
2015014862.tif 000002
【特許請求の範囲】
【請求項１】
マスタ安全装置とスレーブ安全装置とからなる複数の安全装置を有し、
前記複数の安全装置は、共通の対象機器についての周期的な安全処理を各々繰り返し、
前記マスタ安全装置と前記スレーブ安全装置は信号線を介して接続され、
前記マスタ安全装置は、当該マスタ安全装置の安全処理の処理周期に同期して変化する同期信号を前記信号線に出力する信号出力手段を有し、
前記スレーブ安全装置は、当該スレーブ安全装置の安全処理の処理周期の計時を繰り返すタイマと、前記タイマが１周期分の前記処理周期の計時を行う都度、前記安全処理を起動する処理起動手段と、前記安全処理の処理周期毎に前記信号線の同期信号の信号値を読み込む信号読込手段と、前記信号読込手段が読み込んだ信号値に基づいて、前記タイマに計時させる処理周期を増加または減少させることにより、当該スレーブ安全装置の安全処理の処理周期を前記同期信号に同期させる同期化制御手段とを具備することを特徴とする安全ドライブ装置。
【請求項２】
前記マスタ安全装置の信号出力手段は、当該マスタ安全装置の１周期分の安全処理の開始時に前記信号線の同期信号の信号値を第１の値とし、当該安全処理の終了時に前記信号線の同期信号の信号値を第２の値とし、
前記スレーブ制御装置のタイマは、開始値から終了値までのカウントを繰り返すことにより前記処理周期の計時を繰り返し、前記スレーブ制御装置の信号読込手段は、当該スレーブ制御装置の１周期分の安全処理の開始時に前記信号線の同期信号の信号値を読み込んで保存し、当該スレーブ制御装置の同期化制御手段は、前記信号読込手段が前回の安全処理の開始時に読み込んで保存した信号値と今回の安全処理の開始時に読み込んだ信号値を比較し、両信号値が前記第２の値であれば前記終了値を増加させて次の安全処理の開始タイミングを遅らせ、両信号値が前記第１の信号値であれば前記終了値を減少させて次の安全処理の開始タイミングを進ませ、両信号値が異なっていれば前記終了値を規定の値に戻すことを特徴とする請求項１に記載の安全ドライブ装置。
【請求項３】
前記マスタ安全装置の信号出力手段は、当該マスタ安全装置の１周期分の安全処理の開始の都度、前記信号線の同期信号の信号値を第１の値から第２の信号値に、または前記第２の信号値から前記第１の信号値に反転させ、
前記スレーブ制御装置のタイマは、開始値から終了値までのカウントを繰り返すことにより前記処理周期の計時を繰り返し、前記スレーブ制御装置の信号読込手段は、当該スレーブ制御装置の１周期分の安全処理の開始時に前記信号線の同期信号の信号値を読み込んで保存し、当該スレーブ制御装置の同期化制御手段は、前記信号読込手段が前回の安全処理の開始時に読み込んで保存した信号値と今回の安全処理の開始時に読み込んだ信号値を比較し、前回の信号値が前記第１の信号値、今回の信号値が前記第２の信号値であれば、前記終了値を増加させて次の安全処理の開始タイミングを遅らせ、前回の信号値が前記第２の信号値、今回の信号値が前記第１の信号値であれば前記終了値を減少させて次の安全処理の開始タイミングを進ませ、両信号値が同じであれば前記終了値を規定の値に戻すことを特徴とする請求項１に記載の安全ドライブ装置。
【請求項４】
安全処理の処理周期の計時を繰り返すタイマと、
前記タイマが１周期分の前記処理周期の計時を行う都度、前記安全処理を起動する処理起動手段と、
前記安全処理の処理周期毎に信号線に出力された同期信号の信号値を読み込む信号読込手段と、
前記信号読込手段が読み込んだ信号値に基づいて、前記タイマに計時させる処理周期を増加または減少させることにより、前記安全処理の処理周期を前記同期信号に同期させる同期化制御手段と
を具備することを特徴とする安全装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、冗長化した安全装置によりモータ等の対象機器の安全制御を行う安全ドライブ装置およびこの安全ドライブ装置に好適な安全装置に関する。
【背景技術】
【０００２】
冗長化した複数の安全装置にコントローラからの安全指令を与えて安全制御を行わせる安全ドライブ装置がある。また、この種の安全ドライブ装置には、更に安全性能を高めるために、複数の安全装置が互いの状態を相互にチェックして、状態が一致しない場合に安全制御を行うようにしたものがある。そして、従来技術としては、複数の安全装置間で同期を取らずに安全制御する方法が一般的である（特許文献１）。また、２つの安全装置の状態が一致しなかった場合に、安全装置間で再照合する場合の時間を最短にして、出力遅れを最小にする提案もなされている（特許文献２）。複数の安全装置間の同期を取る技術としては、例えば複数サーボ装置での同期を取る方法として、同期基準信号を上位コントロール装置から出力し、下位サーボ装置ではその同期基準信号を同期補正割込みとして使用し、サーボ装置内部の定周期カウンタ値を修正して同期補正する方法が提案されている（特許文献３）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２３４４９５号公報
【特許文献２】特開２０１１−１２３７５６号公報
【特許文献３】特開２００２−１０８４１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、特許文献１および２に開示されているように冗長化した複数の安全装置間で同期を取らない場合、安全装置の電源投入の時間差や、安全装置間の動作クロックのばらつきにより、各安全装置の周期処理は非同期で動く。しかし、安全制御レベルを高めるために、各安全装置間で互いの状態の一致確認をする必要がある。この場合、安全装置間で同期していないと、ウエイト時間をおいてからでないと状態一致の確認を正しくすることができないため、非常時の安全制御が遅れる。このため、安全制御が実行されるまでの遅れ分の非安全時間が生じることになり、安全性を確保することが困難である。そこで、特許文献３に開示されているように、上位装置からの同期基準信号を割込み入力として安全装置に与えて同期補正をする方法も考えられる。しかし、安全装置では、安全機能を高める目的から、割込み使用を制限する場合がある。この場合、同期基準信号割込みを使えないことが多い。また、仮に同期基準信号割込みを使用することができる場合でも、ノイズによる誤った割込みが発生した場合、当該ノイズに同期合わせすることになり、正規の同期基準信号とのずれが大きくなってしまい、同期が取れなくなるもしくは同期が取れるまでに多くの時間を要することがある。
【０００５】
この発明は以上のような事情に鑑みてなされたものであり、安全装置に割り込み使用制限がある場合であっても、複雑な処理や、特別な装置を追加することなく、簡単な構成により冗長化された安全装置の同期を取る技術的手段を提供することを目的としている。
【課題を解決するための手段】
【０００６】
この発明は、マスタ安全装置とスレーブ安全装置とからなる複数の安全装置を有し、前記複数の安全装置は、共通の対象機器についての周期的な安全処理を各々繰り返し、前記マスタ安全装置と前記スレーブ安全装置は信号線を介して接続され、前記マスタ安全装置は、当該マスタ安全装置の安全処理の処理周期に同期して変化する同期信号を前記信号線に出力する信号出力手段を有し、前記スレーブ安全装置は、当該スレーブ安全装置の安全処理の処理周期の計時を繰り返すタイマと、前記タイマが１周期分の前記処理周期の計時を行う都度、前記安全処理を起動する処理起動手段と、前記安全処理の処理周期毎に前記信号線の同期信号の信号値を読み込む信号読込手段と、前記信号読込手段が読み込んだ信号値に基づいて、前記タイマに計時させる処理周期を増加または減少させることにより、当該スレーブ安全装置の安全処理の処理周期を前記同期信号に同期させる同期化制御手段とを具備することを特徴とする安全ドライブ装置を提供する。
【０００７】
この発明によれば、信号読込手段は、スレーブ安全装置の安全処理の処理周期毎にマスタ安全装置が信号線に出力した同期信号の信号値を読み込み、同期化制御手段は、信号読込手段が読み込んだ信号値に基づいて、タイマに計時させる処理周期を増加または減少させ、当該スレーブ安全装置の安全処理の処理周期を同期信号に同期させる。従って、複雑な処理や、特別な装置を追加することなく、簡単な構成により冗長化された安全装置の同期を取ることができる。
【図面の簡単な説明】
【０００８】
【図１】この発明の第１実施形態である安全ドライブ装置を含む安全ドライブシステムの構成を示すブロック図である。
【図２】同実施形態におけるマスタ安全装置およびスレーブ安全装置の構成を示すブロック図である。
【図３】同実施形態においてマスタ安全装置が出力する同期信号の波形を示すタイムチャートである。
【図４】同実施形態における同期化制御部の処理内容を示す図である。
【図５】同実施形態の動作例を示すタイムチャートである。
【図６】同実施形態の動作例を示すタイムチャートである。
【図７】同実施形態の動作例を示すタイムチャートである。
【図８】同実施形態におけるスレーブ安全装置の詳細な動作を示すフローチャートである。
【図９】この発明の第２実施形態である安全ドライブ装置のマスタ安全装置が出力する同期信号の波形を示すタイムチャートである。
【図１０】同実施形態における同期化制御部の処理内容を示す図である。
【図１１】同実施形態の動作例を示すタイムチャートである。
【図１２】同実施形態の動作例を示すタイムチャートである。
【図１３】同実施形態の動作例を示すタイムチャートである。
【図１４】同実施形態におけるスレーブ安全装置の詳細な動作を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照し、この発明の実施形態について説明する。
【００１０】
＜第１実施形態＞
以下に、図面に基づいて本発明の実施の形態の詳細を説明する。
図１はこの発明の第１実施形態である安全ドライブ装置を含む安全ドライブシステムの構成を示すブロック図である。図１に示すように、この安全ドライブシステムは、コントローラ１と、サーボ、インバータなどの安全ドライブ装置３Ａ〜３Ｃと、安全ドライブ装置３Ａ〜３Ｃに各々接続された制御対象機器であるモータ４Ａ〜４Ｃを有する。図示の例では、３台の安全ドライブ装置が安全ドライブシステムに設けられているが、３台以外の安全ドライブ装置を設けてもよい。コントローラ１と安全ドライブ装置３Ａ〜３Ｃとの間にはネットワーク２が介在している。コントローラ１と安全ドライブ装置３Ａ〜３Ｃの各々は、ネットワーク２を介して同期信号やデータの授受を行う。
【００１１】
安全ドライブ装置３Ａ〜３Ｃは同じ構成を有している。ここで、安全ドライブ装置３Ａを例にその構成を説明すると、次の通りである。図１に示すように、安全ドライブ装置３Ａは、通信装置３Ａ−１と、ドライブ制御装置３Ａ−２と、安全装置３Ａ−３を有する。
【００１２】
通信装置３Ａ−１は、コントローラ１と、ネットワーク２を介して通信するための装置である。この通信装置３Ａ−１は、コントローラ１から受信した通信データをドライブ制御装置３Ａ−２または安全装置３Ａ−３に振り分ける。また、通信装置３Ａ−１は、ドライブ制御装置３Ａ−２または安全装置３Ａ−３から与えられた通信データをコントローラ１に送信する。ドライブ制御装置３Ａ−２は、例えばコントローラ１からネットワーク２、通信装置３Ａ−１を経由して受信したドライブ指令に基づいてモータ４Ａを制御する。安全装置３Ａ−３は、例えばコントローラ１からネットワーク２、通信装置３Ａ−１を経由して受信した安全指令に基づいてモータ４Ａを安全停止させる。
【００１３】
図１ではコントローラ１からの通信により、ドライブ指令、安全指令がドライブ制御装置３Ａ−２、安全装置３Ａ−３に与えられる構成となっている。しかし、端子台によりドライブ指令、安全指令が与えられる構成としてもよい。その場合は、通信装置３Ａ−１は存在せず、コントローラ１からのドライブ指令、安全指令がドライブ制御装置３Ａ−２、安全装置３Ａ−３に直接入力される。
【００１４】
本実施形態において、安全装置３Ａ−３は安全性能を高めるために冗長化されている。冗長化された安全装置３Ａ−３は、マスタ安全装置３Ａ−３−１とスレーブ安全装置３Ａ−３−３Ａ、３Ａ−３−３Ｂとからなる。この例では、スレーブ安全装置は２台であるが、スレーブ安全装置は１台でもよいし、２台よりも多くても良い。
【００１５】
マスタ安全装置３Ａ−３−１とスレーブ安全装置３Ａ−３−３Ａ、３Ａ−３−３Ｂは信号線３Ａ−３−２により接続されており、信号線３Ａ−３−２への出力はマスタ安全装置３Ａ−３−１が行う。
【００１６】
図２はマスタ安全装置３Ａ−３−１およびスレーブ安全装置３Ａ−３−３Ａの構成を示すブロック図である。なお、図示は省略したが、スレーブ安全装置３Ａ−３−３Ｂもスレーブ安全装置３Ａ−３−３Ａと同様な構成である。
【００１７】
本実施形態において、マスタ安全装置３Ａ−３−１、スレーブ安全装置３Ａ−３−３Ａおよび３Ａ−３−３Ｂは、周期的な安全処理を各々繰り返す。この安全処理は、例えばコントローラ１からネットワーク２、通信装置３Ａ−１を経由して安全指令が受信されたか否かを判断し、安全指令が検知された場合にモータ４Ａを安全停止させる、といった内容の処理である。
【００１８】
図２に示すように、マスタ安全装置３Ａ−３−１は、信号出力部１０１を有する。この信号出力部１０１は、マスタ安全装置３Ａ−３−１の安全処理の処理周期に同期して変化する同期信号を信号線３Ａ−３−２に出力する手段である。
【００１９】
スレーブ安全装置３Ａ−３−３Ａは、タイマ２０１と、処理起動部２０２と、信号読込部２０３と、同期化制御部２０４とを有する。ここで、タイマ２０１は、予め設定された開始値から終了値までのカウントを繰り返すことにより安全処理の処理周期の計時を繰り返すアップカウンタである。処理起動部２０２は、タイマ２０１が１周期分の処理周期の計時を行う都度、安全処理を起動する手段である。信号読込部２０３は、安全処理の処理周期毎に信号線３Ａ−３−２の同期信号の信号値を読み込む手段である。同期化制御部２０４は、信号読込部２０３が読み込んだ信号値に基づいて、タイマ２０１に計時させる処理周期を増加または減少させることにより、スレーブ安全装置３Ａ−３−３Ａの安全処理の処理周期を同期信号に同期させる手段である。
【００２０】
図３は、本実施形態におけるマスタ安全装置３Ａ−３−１の信号出力部１０１が出力する同期信号の波形を示すタイムチャートである。図３に示すように、信号出力部１０１は、マスタ安全装置３Ａ−３−１の１周期分の安全処理の開始時に信号線３Ａ−３−２の同期信号の信号値を“１”とし、当該安全処理の終了時に信号線３Ａ−３−２の同期信号の信号値を“０”とする。
【００２１】
そして、スレーブ安全装置３Ａ−３−３Ａの信号読込部２０３は、スレーブ安全装置３Ａ−３−３Ａの１周期分の安全処理の開始時に信号線３Ａ−３−２の同期信号の信号値を読み込んで保存する。
【００２２】
そして、スレーブ安全装置３Ａ−３−３Ａの同期化制御部２０４は、信号読込部２０３が前回の安全処理の開始時に読み込んで保存した信号値と今回の安全処理の開始時に読み込んだ信号値を比較し、比較結果に基づいてタイマ２０１の終了値を制御する。
【００２３】
図４はこの同期化制御部２０４の処理内容を示す図である。図４に示すように、同期化制御部２０４は、今回読み込んだ信号値および前回読み込んだ信号値の両信号値が“０”であればタイマ２０１の終了値を増加させて次の安全処理の開始タイミングを遅らせ、両信号値が“１”であれば終了値を減少させて次の安全処理の開始タイミングを進ませ、両信号値が異なっていれば終了値を規定の値に戻す。このような制御により、スレーブ安全装置３Ａ−３−３Ａの安全処理の処理周期を同期信号に同期させ、スレーブ安全装置３Ａ−３−３Ａの安全処理とマスタ安全装置３Ａ−３−１の安全処理を同期させることができる。
【００２４】
図５〜図７は、本実施形態の動作例を示すタイムチャートである。図５に示す動作例において、スレーブ安全装置３Ａ−３−３Ａは、マスタ安全装置３Ａ−３−１が実行する安全処理と同様な安全処理を一定の処理周期で繰り返す。また、スレーブ安全装置３Ａ−３−３Ａの信号読込部２０３は、スレーブ安全装置３Ａ−３−３Ａの安全処理の先頭において信号線３Ａ−３−２の同期信号の信号値を読み込んで保存する。そして、同期化制御部２０４は、信号読込部２０３が前回読み込んで保存した同期信号の信号値と今回読み込んだ信号値とを比較し、タイマ２０１の終了値を設定する。
【００２５】
図５に示す例では、信号読込部２０３が今回読み込んだ信号値が“０”、前回読み込んだ信号値が“０”である。この場合、次のように考えることができる。すなわち、マスタ安全装置３Ａ−３−１が自身の安全処理の先頭において信号線３Ａ−３−２の同期信号を“１”にする前に、スレーブ安全装置３Ａ−３−３Ａが自身の安全処理を開始し、信号線３Ａ−３−２の同期信号の信号値を読み込んだということである。この場合、スレーブ安全装置３Ａ−３−３Ａの同期化制御部２０４は、次回の安全処理の開始点までの計時時間であるタイマ２０１の終了値を増やす。これにより、スレーブ安全装置３Ａ−３−３Ａの安全処理の処理周期は図５に示すようになり、進んでいた処理周期の先頭の位相が次の周期では遅れて、同期信号の“０”から“１”への変化タイミングに近づく。
【００２６】
図６に示す動作例では、信号読込部２０３が今回読み込んだ同期信号の信号値が“１”、前回読み込んだ信号値が“１”となったため、スレーブ安全装置３Ａ−３−３Ａの同期化制御部２０４は、タイマ２０１の終了値を所定量だけ減らしている。これにより、スレーブ安全装置３Ａ−３−３Ａの安全処理の処理周期は、図６に示すようになり、遅れていた処理周期の先頭の位相が次の周期では進んで、同期に近づく。
【００２７】
また、今回読み込んだ同期信号の信号値が“１”で、前回読み込んだ同期信号の信号値が“０”であった場合、または今回読み込んだ同期信号の信号値が“０”で、前回読み込んだ同期信号の信号値が“１”であった場合には、マスタ安全装置３Ａ−３−１の安全処理とスレーブ安全装置３Ａ−３−３Ａの安全処理の位相関係が逆転したと考えられる。従って、同期化制御部２０４は、マスタ安全装置３Ａ−３−１の安全処理とスレーブ安全装置３Ａ−３−３Ａの安全処理が同期したと判断し、タイマ２０１の終了値をマスタ安全装置３Ａ−３−１と同じ規定値に戻す。
【００２８】
図７に示す動作例ではマスタ安全装置３Ａ−３−１の安全処理とスレーブ安全装置３Ａ−３−３Ａの安全処理は同期した状態にある。この動作例では、スレーブ安全装置３Ａ−３−３Ａが安全処理を開始した時刻ｔ１において信号読込部２０３が同期信号の信号値“０”を読み込み、その次に安全処理を開始した時刻ｔ２において信号読込部２０３が同期信号の信号値“０”を読み込んでいる。このため、同期化制御部２０４は、タイマ２０１の終了値を増やしている。この結果、本来の時刻ｔ３よりも後の時刻ｔ３’においてタイマ２０１のタイマ値が終了値となり、次の安全処理が開始されている。
【００２９】
この安全処理の開始時刻ｔ３’において、信号読込部２０３は同期信号の信号値“１”を読み込む。この場合、前回（時刻ｔ２）読み込んだ信号値が“０”、今回読み込んだ信号値は“１”である。従って、同期化制御部２０４は、タイマ２０１の終了値を規定値に戻す。この状態において、安全処理の処理周期はマスタ安全装置３Ａ−３−１とスレーブ安全装置３Ａ−３−３Ａとで同じになっている。従って、次にスレーブ安全装置３Ａ−３−３Ａが安全処理を開始する時刻ｔ４において、信号読込部２０３は同期信号の信号値“１”を読み込む。この場合、前回（時刻ｔ３’）読み込んだ信号値が“１”、今回読み込んだ信号値は“１”である。従って、同期化制御部２０４は、タイマ２０１の終了値を減らす。この結果、本来の時刻ｔ５よりも前の時刻ｔ５’においてタイマ２０１のタイマ値が終了値となり、次の安全処理が開始される。
【００３０】
この安全処理の開始時刻ｔ５’において、信号読込部２０３は同期信号の信号値“０”を読み込む。この場合、前回（時刻ｔ４）読み込んだ信号値が“１”、今回読み込んだ信号値は“０”である。従って、同期化制御部２０４は、タイマ２０１の終了値を規定値に戻す。
【００３１】
このようにして、タイマ２０１の終了値は、規定値より大→規定値と同じ→規定値より小→規定値と同じ→規定値より大→…という変化を繰り返すことになり、タイマ２０１の終了値の増減幅の範囲内で同期が維持される。
【００３２】
図８は本実施形態におけるスレーブ安全装置３Ａ−３−３Ａの詳細な動作を示すフローチャートである。スレーブ安全装置３Ａ−３−３Ａの周期的な安全処理が開始されると、信号読込部２０３は、信号線３Ａ−３−２から同期信号の信号値を読み込む（ステップＳ１）。同期化制御部２０４は、読み込んだ信号値が“０”か否かを判定し（ステップＳ２）、“０”であった場合、前回読み込んだ信号値が“０”か否かを判定する（ステップＳ３）。今回読み込んだ信号値も前回読み込んだ信号値も“０”であった場合、同期化制御部２０４は、タイマ２０１の終了値が変更済みか否かを判定する（ステップＳ４）。タイマ２０１の終了値が変更されていなければ、終了値を規定値から所定量だけ増やして終了値変更済みとし（ステップＳ５）、今回読み込んだ信号値を前回値として保存する（ステップＳ６）。
【００３３】
また、ステップＳ４において終了値変更済みである場合は、終了値は既に増えているので、終了値の変更はせずステップＳ６に移行する。
【００３４】
また、ステップＳ３において前回読み込んだ信号値が“０”でなかった場合、今回の信号値は“０”、前回の信号値は“１”となる。この場合、同期化制御部２０４は、同期が取れたと判断し、タイマ２０１の終了値を規定値に戻して終了値変更無しとし（ステップＳ７）、ステップＳ６に移行する。
【００３５】
また、ステップＳ２において、今回読み込んだ信号値が“０”でなかった場合、前回読み込んだ信号値が“１”か否かを判定する（ステップＳ８）。今回の読込値も前回の読込値も“１”であった場合、タイマ２０１の終了値が変更済みか否かを判定する（ステップＳ９）。終了値が変更されていなければ、終了値を減らし、終了値変更済みとし（ステップＳ１０）、今回読み込んだ値を前回値として保存する（ステップＳ６）。
【００３６】
また、ステップＳ９において終了値変更済みである場合は、終了値は既に減っているので、終了値の変更はせず、ステップＳ６に移行する。
【００３７】
ステップＳ８において前回値が“１”でなかった場合には、今回値は“１”、前回値は“０”なので、同期が取れたと判断し、終了値を規定値に戻して終了値変更無しとし（ステップＳ１１）、ステップＳ６に移行する。
以上がスレーブ安全装置３Ａ−３−３Ａの詳細な動作である。
【００３８】
本実施形態によれば、安全装置に割り込み使用制限がある場合であっても、複雑な処理や、特別な装置を追加することなく、また、安全装置に割み込み処理を行わせることなく、簡単な方法で冗長化された安全装置間の同期を取り、同じタイミングで入ってきた安全信号に対する安全処理を複数の安全装置で同時に実行させることができる。従って、安全装置間での一致／不一致の確認と安全制御をウエイト時間を設けることなく速やかに行うことができ、安全性を高めることができる。また、本実施形態において、スレーブ安全装置３Ａ−３−３Ａは、アップカウントを行うカウンタをタイマ２０１として使用し、開始値から終了値までのアップカウントを行わせた。この構成では、タイマ２０１が開始値からカウントを開始した後であっても、終了値を増減することにより、タイマ２０１に計時させる処理周期の長さを増減することができる。従って、本実施形態によれば、簡単な構成により冗長化した安全装置間の同期を取ることができる。
【００３９】
＜第２実施形態＞
次にこの発明の第２実施形態である安全ドライブ装置について説明する。上記第１実施形態におけるマスタ安全装置３Ａ−３−１の信号出力部１０１は、周期的な安全処理の開始タイミングにおいて立ち上がる同期信号を信号線３Ａ−３−２に出力した。これに対し、本実施形態による安全ドライブ装置のマスタ安全装置３Ａ−３−１の信号出力部１０１は、図９に示すように、マスタ安全装置３Ａ−３−１の周期的な安全処理が開始される都度、同期信号の信号値を“０”から“１”へ、または“１”から“０”へ反転させる。
【００４０】
本実施形態において、スレーブ安全装置３Ａ−３−３Ａのタイマ２０１、処理起動部２０２および信号読込部２０３の処理内容は上記第１実施形態と同様である。
本実施形態では、スレーブ安全装置３Ａ−３−３Ａの同期化制御部２０４の処理内容が上記第１実施形態と異なる。
【００４１】
図１０は本実施形態における同期化制御部２０４の処理内容を示す図である。上記第１実施形態と同様、同期化制御部２０４は、信号読込部２０３が前回の安全処理の開始時に読み込んで保存した信号値と今回の安全処理の開始時に読み込んだ信号値を比較し、比較結果に基づいてタイマ２０１の終了値を制御する。
【００４２】
図１０に示すように、同期化制御部２０４は、今回読み込んだ信号値が“０”、前回読み込んだ信号値が“１”であればタイマ２０１の終了値を増加させて次の安全処理の開始タイミングを遅らせ、今回読み込んだ信号値が“１”、前回読み込んだ信号値が“０”であればタイマ２０１の終了値を減少させて次の安全処理の開始タイミングを進め、両信号値が同じであれば終了値を規定値に戻す。このような制御により、スレーブ安全装置３Ａ−３−３Ａの安全処理の処理周期を同期信号に同期させ、スレーブ安全装置３Ａ−３−３Ａの安全処理とマスタ安全装置３Ａ−３−１の安全処理を同期させることができる。
【００４３】
図１１〜図１３は本実施形態の動作例を示すタイムチャートである。なお、前掲図５〜図７とは異なり、図１１〜図１３においてスレーブ安全装置の安全処理を示す波形では、波形の立ち上がりエッジおよび立ち下がりエッジが周期的な安全処理の開始タイミングを示している。
【００４４】
図１１に示す動作例では、信号読込部２０３が今回読み込んだ同期信号の信号値が“０”、前回読み込んだ信号値が“１”となったため、スレーブ安全装置３Ａ−３−３Ａの同期化制御部２０４は、タイマ２０１の終了値を所定量だけ増やしている。これにより、スレーブ安全装置３Ａ−３−３Ａの安全処理の処理周期は、図１１に示すように増加し、次の周期では位相が遅れて同期に近づく。
【００４５】
図１２に示す動作例では、信号読込部２０３が今回読み込んだ同期信号の信号値が“１”、前回読み込んだ信号値が“０”となったため、スレーブ安全装置３Ａ−３−３Ａの同期化制御部２０４は、タイマ２０１の終了値を所定量だけ減らしている。これにより、スレーブ安全装置３Ａ−３−３Ａの安全処理の処理周期は、図１２に示すように減少し、次の周期では位相が進んで同期に近づく。
【００４６】
また、今回読み込んだ同期信号の信号値が“１”で、前回読み込んだ同期信号の信号値が“１”であった場合、または今回読み込んだ同期信号の信号値が“０”で、前回読み込んだ同期信号の信号値が“０”であった場合には、マスタ安全装置３Ａ−３−１の安全処理とスレーブ安全装置３Ａ−３−３Ａの安全処理の位相関係が変化したと考えられる。従って、同期化制御部２０４は、マスタ安全装置３Ａ−３−１の安全処理とスレーブ安全装置３Ａ−３−３Ａの安全処理が同期したと判断し、タイマ２０１の終了値をマスタ安全装置３Ａ−３−１と同じ規定値に戻す。
【００４７】
図１３はマスタ安全装置３Ａ−３−１の安全処理とスレーブ安全装置３Ａ−３−３Ａの安全処理が同期した場合の動作例を示すタイムチャートである。
【００４８】
この動作例では、スレーブ安全装置３Ａ−３−３Ａが安全処理を開始した時刻ｔ１において信号読込部２０３が同期信号の信号値“１”を読み込み、その次に安全処理を開始した時刻ｔ２において信号読込部２０３が同期信号の信号値“０”を読み込んでいる。このため、同期化制御部２０４は、タイマ２０１の終了値を増やしている。この結果、本来の時刻ｔ３よりも後の時刻ｔ３’においてタイマ２０１のタイマ値が終了値となり、次の安全処理が開始されている。
【００４９】
この安全処理の開始時刻ｔ３’において、信号読込部２０３は同期信号の信号値“０”を読み込む。この場合、前回（時刻ｔ２）読み込んだ信号値が“０”、今回読み込んだ信号値は“０”である。従って、同期化制御部２０４は、タイマ２０１の終了値を規定値に戻す。この状態において、安全処理の処理周期はマスタ安全装置３Ａ−３−１とスレーブ安全装置３Ａ−３−３Ａとで同じになっている。従って、次にスレーブ安全装置３Ａ−３−３Ａが安全処理を開始する時刻ｔ４において、信号読込部２０３は同期信号の信号値“１”を読み込む。この場合、前回（時刻ｔ３’）読み込んだ信号値が“０”、今回読み込んだ信号値は“１”である。従って、同期化制御部２０４は、タイマ２０１の終了値を減らす。この結果、本来の時刻ｔ５よりも前の時刻ｔ５’においてタイマ２０１のタイマ値が終了値となり、次の安全処理が開始される。
【００５０】
この安全処理の開始時刻ｔ５’において、信号読込部２０３は同期信号の信号値“１”を読み込む。この場合、前回（時刻ｔ４）読み込んだ信号値が“１”、今回読み込んだ信号値は“１”である。従って、同期化制御部２０４は、タイマ２０１の終了値を規定値に戻す。
【００５１】
このように、本実施形態においても、同期状態におけるタイマ２０１の終了値は、規定値より大→規定値と同じ→規定値より小→規定値と同じ→規定値より大→…という変化を繰り返す。従って、タイマ２０１の終了値の増減幅の範囲内で同期が維持される。
【００５２】
図１４は本実施形態におけるスレーブ安全装置３Ａ−３−３Ａの詳細な動作を示すフローチャートである。本実施形態では、タイマ２０１の終了値を増加させる条件、減少させる条件、規定値に戻す条件が上記第１実施形態と相違する。この相違に対応し、図１４に示すフローチャートでは、ステップＳ３ａ、Ｓ８ａの処理内容が上記第１実施形態（図８）のステップＳ３、Ｓ８と異なっている。ステップＳ３ａでは、前回読み込んだ信号値が“１”か否かを判定する。そして、前回読み込んだ信号値が“１”の場合、すなわち、今回値が“０”、前回値が“１”の場合にステップＳ４に進む。そして、ステップＳ４において終了値が変更されていなければ、ステップＳ５においてタイマ２０１の終了値を増やす。一方、ステップＳ３ａにおいて、前回読み込んだ信号値が“０”の場合、すなわち、今回値が“０”、前回値が“０”の場合にステップＳ７に進み、タイマ２０１の終了値を規定値に戻す。また、ステップＳ８ａでは、前回読み込んだ信号値が“０”か否かを判定する。そして、前回読み込んだ信号値が“０”の場合、すなわち、今回値が“１”、前回値が“０”の場合にステップＳ９に進む。そして、ステップＳ９において終了値が変更されていなければ、ステップＳ１０においてタイマ２０１の終了値を減らす。一方、ステップＳ８ａにおいて、前回読み込んだ信号値が“１”の場合、すなわち、今回値が“１”、前回値が“１”の場合にステップＳ１１に進み、タイマ２０１の終了値を規定値に戻す。
以上が本実施形態の動作である。本実施形態においても上記第１実施形態と同様な効果が得られる。
【００５３】
＜他の実施形態＞
以上、この発明の第１および第２実施形態について説明したが、この発明には他にも実施形態が考えられる。例えば次の通りである。
【００５４】
（１）上記第１実施形態において、マスタ安全装置は、安全処理の開始時に同期信号を“１”とし、終了時に“０”としたが、開始時に同期信号を“０”とし、終了時に“１”としてもよい。
【００５５】
（２）上記各実施形態において、スレーブ安全装置は、アップカウントを行うカウンタをタイマとして使用し、開始値から終了値までのアップカウントを行わせた。しかし、タイマとしてダウンカウンタを使用し、計時対象である処理周期の増減を行うことも可能である。例えば次のような構成があり得る。スレーブ安全装置では、安全処理を開始する都度、処理周期に対応した開始値をダウンカウンタであるタイマに設定し、ダウンカウントを開始させる。処理周期を増加させる場合は、途中、ダウンカウンタに供給するクロックを所定個数だけ停止する。一方、処理周期を減少させる場合は、途中、ダウンカウンタに対して所定個数だけ余分にクロックを供給する。処理周期を規定値に戻す場合も、同様なクロック数の操作を行うのである。
【符号の説明】
【００５６】
１……コントローラ、２……ネットワーク、３Ａ，３Ｂ，３Ｃ……安全ドライブ装置、４Ａ，４Ｂ，４Ｃ……モータ、３Ａ−１……通信装置、３Ａ−２……ドライブ制御装置、３Ａ−３……安全装置、３Ａ−３−１……マスタ安全装置、３Ａ−３−３Ａ，３Ａ−３−３Ｂ……スレーブ安全装置、３Ａ−３−２……信号線、２０１……タイマ、２０２……処理起動部、２０３……信号読込部、２０４……同期化制御部。
【図１】
2015014862.tif 000003
【図２】
2015014862.tif 000004
【図３】
2015014862.tif 000005
【図４】
2015014862.tif 000006
【図５】
2015014862.tif 000007
【図６】
2015014862.tif 000008
【図７】
2015014862.tif 000009
【図８】
2015014862.tif 000010
【図９】
2015014862.tif 000011
【図１０】
2015014862.tif 000012
【図１１】
2015014862.tif 000013
【図１２】
2015014862.tif 000014
【図１３】
2015014862.tif 000015
【図１４】
2015014862.tif 000016