JP4429650B2 - セーフティコントローラー - Google Patents
セーフティコントローラー Download PDFInfo
- Publication number
- JP4429650B2 JP4429650B2 JP2003201848A JP2003201848A JP4429650B2 JP 4429650 B2 JP4429650 B2 JP 4429650B2 JP 2003201848 A JP2003201848 A JP 2003201848A JP 2003201848 A JP2003201848 A JP 2003201848A JP 4429650 B2 JP4429650 B2 JP 4429650B2
- Authority
- JP
- Japan
- Prior art keywords
- level
- circuit
- safety
- output
- cpu
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Testing And Monitoring For Control Systems (AREA)
- Safety Devices In Control Systems (AREA)
Description
【発明の属する技術分野】
この発明は、負荷を導通/遮断するセーフティコントローラー、セーフティコントローラーに含まれる安全出力回路の診断をコンピュータに実行させるためのプログラムおよびそのプログラムを記録したコンピュータ読取り可能な記録媒体に関するものである。
【0002】
【従来の技術】
工場またはプラントの設備において、人の安全を確保することは重要である。たとえば、板金プレス装置においては、両手操作装置が設置され、人が誤って手などを挟まれないように両手で操作しなければ板金プレス装置が起動しないようにしている。
【0003】
また、化学プラントにおいては、装置が破損して有害物質が大気中に拡散されないように、異常時にシャットダウン(非常停止)装置が稼動し、プラントを安全に停止できるようにしている。
【0004】
これらの両手操作装置およびシャットダウン装置は、故障発生時に、直接的または間接的に人または環境に被害をもたらし得る装置である。両手操作装置およびシャットダウン装置を「安全制御部」と呼ぶことにすると、故障発生時に安全制御部が人または環境に被害をもたらさないようにするためには、リスクアセスメントを実施し、障害が発生した場合でも必要最小限の安全性能を維持できるように安全制御部を設計する必要がある。
【0005】
特に、高度な安全性が要求される場合には、安全制御部の設計、施工の妥当性を第三者監査機関により認証してもらう必要がある。しかし、第三者監査機関による認証作業は、相当の時間および労力を要し、設備メーカーの負担になっていた。
【0006】
このような点に着目し、安全制御部を汎用モジュール化し、第三者監査機関により安全性の認証まで受けたセーフティコントローラーが製品化されている。
【0007】
図31は、リレー式のセーフティコントローラーを用いた制御システムを示す。図31を参照して、制御システム200は、センサー/スイッチ類210と、セーフティコントローラー220と、制御対象230とから成る。
【0008】
センサー/スイッチ類210は、非常停止スイッチ、インターロックスイッチ、両手操作スイッチ、ライトカーテンおよびエリアセンサー等から成る。そして、センサー/スイッチ類210は、センサー信号またはスイッチ信号をセーフティコントローラー220へ出力する。
【0009】
セーフティコントローラー220は、安全入力回路221,224と、リレー制御回路222と、安全出力回路223とを含む。安全入力回路221は、センサー/スイッチ類210からセンサー信号またはスイッチ信号を受け、その受けたセンサー信号またはスイッチ信号をリレー制御回路222へ出力する。
【0010】
リレー制御回路222は、安全入力回路221から受けたセンサー信号またはスイッチ信号に基づいて安全出力回路223を制御する。たとえば、リレー制御回路222は、装置を非常停止させるためのスイッチ信号を安全入力回路221から受けたとき、出力をオフするように安全出力回路223を制御する。また、リレー制御回路222は、非常停止を解除するためのスイッチ信号を安全入力回路221から受けると、出力をオンするように安全出力回路223を制御する。
【0011】
安全出力回路223は、リレー制御回路222からの制御に従って制御対象230を導通/遮断する。安全入力回路224は、制御対象230からのフィードバック応答を検知する。
【0012】
制御対象230は、電磁開閉器およびバルブ等からなる。そして、制御対象230は、安全出力回路223からオン/オフの出力に応じてモータ等の装置へ電力を供給/停止する。
【0013】
セーフティコントローラー220は、安全リレーを用いたハード構成の回路から成る。そして、セーフティコントローラー220は、構造が簡単なため、故障モードを特定し易いという利点がある。
【0014】
しかし、リレー回路には、接点の磨耗のため寿命が短い、ハード構成のために時間制御が困難である、仕様変更に対してハードの変更が必要である、リレー出力回路がオンしている間に遮断機能を維持していることを確認できない、安全リレーが通常のリレーに比較して高価である、といういくつかの問題がある。
【0015】
このようなリレー式のセーフティコントローラーの問題点は、電子式のセーフティコントローラーによって解決される。図32は、電子式のセーフティコントローラーを用いた制御システムを示す。図32を参照して、制御システム300は、センサー/スイッチ類210と、セーフティコントローラー310と、制御対象230とから成る。
【0016】
セーフティコントローラー310は、安全入力回路311,315と、CPU(Central Processing Unit)312,313と、安全出力回路314とを含む。
【0017】
安全入力回路311は、センサー/スイッチ類210からセンサー信号またはスイッチ信号を受け、その受けたセンサー信号またはスイッチ信号をCPU312へ出力する。また、安全入力回路311は、自己を診断する機能を有する。そして、安全入力回路311の診断は、CPU312によって実行される。
【0018】
CPU312は、安全入力回路311を診断する。また、CPU312は、安全入力回路311から受けたセンサー信号またはスイッチ信号に基づいて安全出力回路314を制御する。たとえば、CPU312は、装置を非常停止させるためのスイッチ信号を安全入力回路311から受けると、出力をオフするように安全出力回路314を制御し、非常停止を解除するためのスイッチ信号を安全入力回路311から受けると、出力をオンするように安全出力回路314を制御する。さらに、CPU312は、安全出力回路314を診断する。
【0019】
安全出力回路314は、CPU312からの制御に従って制御対象230を導通/遮断する。安全入力回路315は、制御対象230からのフィードバック応答を受け、その受けたフィードバック応答をCPU313へ出力する。
【0020】
CPU313は、安全入力回路315からのフィードバック応答に基づいて制御対象230の制御が正確に行なわれた否かを判定する。また、CPU313は、安全入力回路315を診断する。
【0021】
セーフティコントローラー310は、電子回路により所定の動作シーケンスを実行するセーフティコントローラーである。そして、このような電子式安全回路の安全性を立証するために安全規格の整備が進んでいる。たとえば、コンピュータ制御の電子回路でも、国際規格IEC61508(電気式/電子式/プログラマブル電子式安全関連システムの機能安全性)に従い一定の手順を満たせば、機械設備の安全回路として使用できるようになった。
【0022】
従来、このような手法は、原子力プラントおよび航空機制御のような高度な安全が要求される分野に応用されていたが、現在では、より一般的な機械設備に使用するセーフティコントローラーにも応用され始めている。
【0023】
電子式のセーフティコントローラーの安全出力回路は、出力遮断機能を維持しているか否かを出力のオン中に診断する機能を要求される。図33を参照して、安全出力回路314の出力遮断機能を診断する方法について説明する。CPU312は、CPU出力OUT1とCPU入力IN1とを含む。CPU出力OUT1は、スイッチング信号を安全出力回路314へ出力する。CPU入力IN1は、安全出力回路314からの電圧を受け、安全出力回路314の出力がオンされているかオフされているかを判定する。
【0024】
安全出力回路314は、スイッチング回路3141と、入力回路3142とを含む。スイッチング回路3141は、電源ノードVCCから電源電圧を受ける。そして、スイッチング回路3141は、CPU出力OUT1からのスイッチング信号に応じてオン/オフされ、電源ノードVCCから供給された電源電圧を負荷235へ供給/停止する。入力回路3142は、スイッチング回路3141から出力された電圧を受け、その受けた電圧をCPUへ入力可能な電圧に変換してCPU入力IN1に与える。
【0025】
制御対象である負荷235は、安全出力回路314のスイッチング回路3141と接地ノードGNDとの間に接続される。そして、負荷235は、スイッチング回路3141から電源電圧が供給されると導通し、スイッチング回路3141により電源電圧の供給が停止されると遮断する。
【0026】
安全出力回路314の出力がオンしている間に、安全出力回路314の遮断機能を診断するために、CPU出力OUT1は、負荷235が反応しない程度の短いオフ期間を有するスイッチング信号をスイッチング回路3141へ出力する。すなわち、図34を参照して、スイッチング回路3141は、タイミングt0からタイミングt1の間、タイミングt2からタイミングt3の間、およびタイミングt4以降、オンされ、電源ノードVCCからの電源電圧(24V)を負荷235および入力回路3142へ供給する。そして、負荷235は、電源電圧(24V)によって導通され、入力回路3142は、電源電圧(24V)をCPUに入力可能な電圧に変換してCPU入力IN1へ出力する。CPU入力IN1は、入力回路3142からの電圧に基づいて、スイッチング回路3141、すなわち、安全出力回路314の出力がオンされていると判定する。
【0027】
また、スイッチング回路3141は、タイミングt1からタイミングt2の間およびタイミングt3からタイミングt4の間、オフされ、電源電圧(24V)の負荷235および入力回路3142への供給を停止する。そして、入力回路3142は、スイッチング回路3141の出力、すなわち、0Vの電圧をCPUに入力可能な電圧に変換してCPU入力IN1へ出力する。CPU入力IN1が、入力回路3142からの電圧に基づいて、スイッチング回路3141、すなわち、安全出力回路314の出力がオフされていると判定する。この場合、負荷235は、0Vの電圧をスイッチング回路3141から受けるが、その期間は負荷235が反応しない程度に短いので、負荷235は遮断されない。つまり、負荷235が導通されたまま、安全出力回路314の遮断機能が診断される。
【0028】
このように、従来の診断方法においては、負荷235に供給する電圧を負荷235が反応しない程度の短い期間、遮断して安全出力回路314の遮断機能を診断する。つまり、従来の診断方法においては、負荷235が反応しない程度の短い期間、電源電圧の供給が停止される診断パルスを負荷235に与えて安全出力回路314の遮断機能を診断する。
【0029】
なお、以上、本発明についての従来の技術を、出願人の知得した一般的技術情報に基づいて説明したが、出願人の記憶する範囲において、出願前までに先行技術文献情報として開示すべき情報を出願人は有していない。
【0030】
【発明が解決しようとする課題】
しかし、従来のセーフティコントローラーにおいては、次のような問題がある。すなわち、従来のセーフティコントローラーにおいては、負荷が反応しない程度の短い期間、出力をオフする診断パルスを負荷に与えて安全出力回路の遮断機能を診断するため、負荷が交流の負荷である場合、交流の負荷を連続的にスイッチングする結果、大きなノイズが発生し、実用化するのが困難である。そのため、使用する負荷が直流の負荷に制限されるという問題がある。
【0031】
また、負荷が診断パルスによって誤動作しないことが求められるため、使用する負荷が制限されるという問題がある。
【0032】
たとえば、診断パルスを無効にするような容量性の負荷は使用が制限される。また、負荷がリレーなどの場合、誤動作しないまでも、診断パルスによって接点が振動し、唸り音が発生することがある。そのため、接点寿命への影響が懸念される。さらに、機械装置では、最終出力段に交流制御タイプの電磁開閉器が使用されることが多いが、これを直接制御することができない。
【0033】
そこで、この発明は、かかる問題点を解決するためになされたものであり、その目的は、負荷の制限がないセーフティコントローラーを提供することである。
【0034】
また、この発明の別の目的は、負荷の制限がないセーフティコントローラーに含まれる安全出力回路の診断をコンピュータに実行させるためのプログラムを提供することである。
【0035】
さらに、この発明の別の目的は、負荷の制限がないセーフティコントローラーに含まれる安全出力回路の診断をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体を提供することである。
【0036】
【課題を解決するための手段および発明の効果】
この発明によれば、セーフティコントローラーは、安全出力回路と、診断手段とを備える。安全出力回路は、負荷を導通/遮断する。診断手段は、安全出力回路が負荷を導通する導通機能および安全出力回路が負荷を遮断する遮断機能を診断する。そして、診断手段は、安全出力回路にのみ診断信号を与えて安全出力回路の導通機能および遮断機能を診断する。
【0037】
好ましくは、負荷は、複数の負荷素子から成る。安全出力回路は、複数のチャンネル回路を含む。複数のチャンネル回路は、複数の負荷素子に対応して設けられ、各々が対応する負荷素子を導通/遮断する。そして、複数のチャンネル回路の各々は、第1および第2のスイッチング回路と、検出回路とからなる。第1および第2のスイッチング回路は、対応する負荷素子と電源との間に配置され、相互に並列に接続される。検出回路は、第1および第2のスイッチング回路の出力を検出する。そして、診断手段は、複数のチャンネル回路の各々において、第1および第2のスイッチング回路を開閉したときの検出回路からの検出信号に基づいて安全出力回路の導通機能および遮断機能を診断する。
【0038】
好ましくは、診断手段は、診断するタイミングを所定の時間づつずらせながら複数のチャンネル回路の各々において、安全出力回路の導通機能および遮断機能を診断する。
【0039】
好ましくは、第1のスイッチング回路は、対応する負荷素子と電源との間に直列に接続された第1および第2のスイッチング素子から成る。第2のスイッチング回路は、対応する負荷素子と電源との間に直列に接続された第3および第4のスイッチング素子から成る。検出回路は、第1および第2の電圧検出器からなる。第1の電圧検出器は、第1のスイッチング素子と第2のスイッチング素子との間の第1の電圧を検出し、その検出した第1の電圧の電圧レベルに応じた論理レベルを有する第1の検出信号を出力する。第2の電圧検出器は、第3のスイッチング素子と第4のスイッチング素子との間の第2の電圧を検出し、その検出した第2の電圧の電圧レベルに応じた論理レベルを有する第2の検出信号を出力する。そして、診断手段は、第1および第2のスイッチング素子を同時にオンさせ、かつ、第3および第4のスイッチング素子を同時にオフさせる第1の診断信号と、第1および第2のスイッチング素子を同時にオフさせ、かつ、第3および第4のスイッチング素子を同時にオンさせる第2の診断信号と、第1から第4のスイッチング素子を同時にオンさせる第3の診断信号とを安全出力回路へ出力し、第1および第2の検出信号の論理レベルに基づいて導通機能および遮断機能を診断する。
【0040】
好ましくは、診断手段は、第1、第2および第3の条件が満たされたとき安全出力回路が導通機能および遮断機能を維持していると診断し、第1および第2の条件のうち少なくとも一方の条件が満たされないとき安全出力回路が導通機能または遮断機能を維持していないと診断し、第3の条件が満たされないとき安全出力回路が導通機能を維持していないと診断する。そして、第1の条件は、第1の診断信号が安全出力回路へ出力されたときの第1および第2の検出信号の論理レベルがそれぞれ第1の論理レベルおよび第2の論理レベルであることである。また、第2の条件は、第2の診断信号が安全出力回路へ出力されたときの第1および第2の検出信号の論理レベルがそれぞれ第2の論理レベルおよび第1の論理レベルであることである。さらに、第3の条件は、第3の診断信号が安全出力回路へ出力されたときの第1および第2の検出信号の論理レベルが第1の論理レベルであることである。
【0041】
好ましくは、安全出力回路は、電源電圧検出回路をさらに含む。電源電圧検出回路は、電源が供給する電源電圧を検出し、その検出した電源電圧の電圧レベルに応じた論理レベルを有する第3の検出信号を出力する。そして、診断手段は、第1および第3の診断信号のいずれか一方の診断信号を安全出力回路へ出力したときの第1の検出信号の論理レベルが第2の論理レベルであるとき、または第2の診断信号を安全出力回路へ出力したときの第1の検出信号の論理レベルが第1の論理レベルであるとき、第3の検出信号の論理レベルをさらに診断し、第3の検出信号の論理レベルが第1の論理レベルであるとき第1、第2および第3の条件のいずれかが満たされていないと診断する。
【0042】
好ましくは、第1から第4のスイッチング素子の各々は、半導体スイッチング素子である。
【0043】
好ましくは、第1から第4のスイッチング素子の各々は、リレーである。そして、診断手段は、負荷が応答しない期間よりも長い期間を設定して第1、第2および第3の診断信号を安全出力回路へ出力する。
【0044】
好ましくは、第1のスイッチング回路は、第1のスイッチング素子から成る。第2のスイッチング回路は、第2のスイッチング素子から成る。検出回路は、第1および第2の電流検出器からなる。第1の電流検出器は、第1のスイッチング素子から出力される第1の出力電流を検出し、その検出した第1の出力電流の電流レベルに応じた論理レベルを有する第1の検出信号を出力する。第2の電流検出器は、第2のスイッチング素子から出力される第2の出力電流を検出し、その検出した第2の出力電流の電流レベルに応じた論理レベルを有する第2の検出信号を出力する。そして、診断手段は、第1のスイッチング素子をオンさせ、かつ、第2のスイッチング素子をオフさせる第1の診断信号と、第1のスイッチング素子をオフさせ、かつ、第2のスイッチング素子をオンさせる第2の診断信号と、第1および第2のスイッチング素子をオンさせる第3の診断信号とを安全出力回路へ出力し、第1および第2の検出信号の論理レベルに基づいて導通機能および遮断機能を診断する。
【0045】
好ましくは、診断手段は、第1、第2および第3の条件が満たされたとき安全出力回路が導通機能および遮断機能を維持していると診断し、第1および第2の条件のうち少なくとも一方の条件が満たされないとき安全出力回路が導通機能または遮断機能を維持していないと診断し、第3の条件が満たされないとき安全出力回路が導通機能を維持していないと診断する。そして、第1の条件は、第1の診断信号が安全出力回路へ出力されたときの第1および第2の検出信号の論理レベルがそれぞれ第1の論理レベルおよび第2の論理レベルであることである。また、第2の条件は、第2の診断信号が安全出力回路へ出力されたときの第1および第2の検出信号の論理レベルがそれぞれ第2の論理レベルおよび第1の論理レベルであることである。さらに、第3の条件は、第3の診断信号が安全出力回路へ出力されたときの第1および第2の論理レベルが第2の論理レベルであることである。
【0046】
好ましくは、安全出力回路は、電源電流検出回路をさらに含む。電源電流検出回路は、電源が供給する電源電流を検出し、その検出した電源電流の電流レベルに応じた論理レベルを有する第3の検出信号を出力する。そして、診断手段は、第1および第3の診断信号のいずれか一方の診断信号を安全出力回路へ出力したときの第1の検出信号の論理レベルが第2の論理レベルであるとき、または第2の診断信号を安全出力回路へ出力したときの第1の検出信号の論理レベルが第1の論理レベルであるとき、第3の検出信号の論理レベルをさらに診断し、第3の検出信号の論理レベルが第1の論理レベルであるとき第1、第2および第3の条件のいずれかが満たされていないと診断する。
【0047】
好ましくは、第1および第2のスイッチング素子の各々は、半導体スイッチング素子である。
【0048】
好ましくは、第1および第2のスイッチング素子の各々は、リレーである。そして、診断手段は、負荷が応答しない期間よりも長い期間を設定して第1、第2および第3の診断信号を安全出力回路へ出力する。
【0049】
好ましくは、セーフティコントローラーは、複数の補助出力監視回路をさらに備える。複数の補助出力監視回路は、複数の負荷素子に対応して設けられ、各々が対応する負荷素子の出力状態を示す補助出力を受ける。そして、診断手段は、複数の補助出力監視回路からの複数の補助出力に基づいて複数のチャンネル回路の各々の応答時間をさらに診断する。
【0050】
好ましくは、負荷は、複数の負荷素子から成る。セーフティコントローラーは、複数の補助出力監視回路をさらに備える。複数の補助出力監視回路は、複数の負荷素子に対応して設けられ、各々が対応する負荷素子の出力状態を示す補助出力を受ける。そして、安全出力回路は、複数のスイッチング素子を含む。複数のスイッチング素子は、複数の負荷素子に対応して設けられ、各々が対応する負荷素子を導通/遮断する。診断手段は、スイッチング素子をオン/オフする診断信号を複数のスイッチング素子の各々へ出力したときの複数の補助出力監視回路からの複数の補助出力に基づいて、複数のスイッチング素子の導通機能および遮断機能を診断し、または複数のスイッチング素子の応答時間を診断する。
【0051】
好ましくは、複数のスイッチング素子の各々は、半導体スイッチング素子である。
【0052】
好ましくは、複数のスイッチング素子の各々は、リレーである。そして、診断手段は、負荷が応答しない期間よりも長い期間を設定して診断信号を安全出力回路へ出力する。
【0053】
また、この発明によれば、プログラムは、セーフティコントローラーに含まれ、負荷を導通/遮断する安全出力回路の診断をコンピュータに実行させるためのプログラムである。負荷は、複数の負荷素子から成る。安全出力回路は、複数の負荷素子に対応して設けられ、各々が対応する負荷素子を導通/遮断する複数のチャンネル回路を含む。そして、複数のチャンネル回路の各々は、対応する負荷素子と電源との間に並列に接続された第1および第2のスイッチング回路と、第1のスイッチング回路の出力を検出し、その検出した出力のレベルに応じた論理レベルを有する第1の検出信号を出力する第1の検出器と、第2のスイッチング回路の出力を検出し、その検出した出力のレベルに応じた論理レベルを有する第2の検出信号を出力する第2の検出器とから成る。
【0054】
プログラムは、複数のチャンネル回路の各々において、第1または第2のスイッチング回路が対応する負荷素子を導通する導通機能と、第1または第2のスイッチング回路が対応する負荷素子を遮断する遮断機能とを診断する診断処理をコンピュータに実行させる。そして、診断処理は、安全出力回路による安全出力制御が行なわれているか否かを判定する第1のステップと、安全出力制御が行なわれているとき、第1および第2のスイッチング回路の導通機能および遮断機能を診断する第2のステップと、安全出力制御が行なわれていないとき、第1および第2のスイッチング回路の遮断機能を診断する第3のステップとを含む。
【0055】
好ましくは、第2のステップは、第1のスイッチング回路を閉じ、第2のスイッチング回路を開閉させる第1の診断信号を安全出力回路へ出力し、第1および第2の検出信号の論理レベルに基づいて第1のスイッチング回路の導通機能と第2のスイッチング回路の導通機能および遮断機能とを診断する第1のサブステップと、第2のスイッチング回路を閉じ、第1のスイッチング回路を開閉させる第2の診断信号を安全出力回路へ出力し、第1および第2の検出信号の論理レベルに基づいて第1のスイッチング回路の導通機能および遮断機能と第2のスイッチング回路の導通機能とを診断する第2のサブステップとを含む。
【0056】
好ましくは、第1の診断信号は、第1のスイッチング回路を閉じ、かつ、第2のスイッチング回路を開く第3の診断信号と、第1および第2のスイッチング回路を閉じる第4の診断信号とから成る。また、第2の診断信号は、第4の診断信号と、第1のスイッチング回路を開き、かつ、第2のスイッチング回路を閉じる第5の診断信号とから成る。そして、プログラムの第1のサブステップは、第3の診断信号を安全出力回路へ出力し、第1および第2の検出信号の論理レベルに基づいて第1のスイッチング回路の導通機能と第2のスイッチング回路の遮断機能とを診断するステップAと、第4の診断信号を安全出力回路へ出力し、第1および第2の検出信号の論理レベルに基づいて第1および第2のスイッチング回路の導通機能を診断するステップBとを含む。また、第2のサブステップは、第5の診断信号を安全出力回路へ出力し、第1および第2の検出信号の論理レベルに基づいて第1のスイッチング回路の遮断機能と第2のスイッチング回路の導通機能とを診断するステップCと、第4の診断信号を安全出力回路へ出力し、第1および第2の検出信号の論理レベルに基づいて第1および第2のスイッチング回路の導通機能を診断するステップDとを含む。
【0057】
好ましくは、ステップAは、第1の検出信号の論理レベルが第1の論理レベルであるか否かを判定するステップA1と、第1の検出信号の論理レベルが第1の論理レベルであるとき、第2の検出信号の論理レベルが第2の論理レベルであるか否かを判定するステップA2と、第2の検出信号の論理レベルが第2の論理レベルでないとき第2のスイッチング回路が遮断機能を維持していないと診断するステップA3とを含む。また、第ステップBは、第1の検出信号の論理レベルが第1の論理レベルであるか否かを判定するステップB1と、第1の検出信号の論理レベルが第1の論理レベルであるとき、第2の検出信号の論理レベルが第1の論理レベルであるか否かを判定するステップB2と、第2の検出信号の論理レベルが第1の論理レベルでないとき第2のスイッチング回路が導通機能を維持していないと診断するステップB3とを含む。さらに、ステップCは、第1の検出信号の論理レベルが第2の論理レベルであるか否かを判定するステップC1と、第1の検出信号の論理レベルが第2の論理レベルであるとき、第2の検出信号の論理レベルが第1の論理レベルであるか否かを判定するステップC2と、第2の検出信号の論理レベルが第1の論理レベルでないとき第2のスイッチング回路が導通機能を維持していないと診断するステップC3とを含む。さらに、ステップDは、第1の検出信号の論理レベルが第1の論理レベルであるか否かを判定するステップD1と、第1の検出信号の論理レベルが第1の論理レベルであるとき、第2の検出信号の論理レベルが第1の論理レベルであるか否かを判定するステップD2と、第2の検出信号の論理レベルが第1の論理レベルでないとき第2のスイッチング回路が導通機能を維持していないと診断するステップD3とを含む。
【0058】
好ましくは、ステップAは、電源からの電源電圧の供給の有無を検出し、その検出した電源電圧の供給の有無に応じた論理レベルを有する第3の検出信号を受けるステップA4と、ステップA1において第1の検出信号の論理レベルが第1の論理レベルでないと判定されたとき、第3の検出信号の論理レベルが第2の論理レベルであるか否かを判定するステップA5と、第3の検出信号が第2の論理レベルでないとき第1のスイッチング回路が導通機能を維持していないと診断するステップA6と、第3の検出信号の論理レベルが第2の論理レベルであるとき、第2の検出信号の論理レベルが第2の論理レベルであるか否かを判定するステップA7とをさらに含む。そして、ステップA3は、ステップA2またはステップA7の後、実行される。
【0059】
また、ステップBは、第3の検出信号を受けるステップB4と、ステップB1において第1の検出信号の論理レベルが第1の論理レベルでないと判定されたとき、第3の検出信号の論理レベルが第2の論理レベルであるか否かを判定するステップB5と、第3の検出信号が第2の論理レベルでないとき第1のスイッチング回路が導通機能を維持していないと診断するステップB6と、第3の検出信号の論理レベルが第2の論理レベルであるとき、第2の検出信号の論理レベルが第1の論理レベルであるか否かを判定するステップB7とをさらに含む。そして、ステップB3は、ステップB2またはステップB7の後、実行される。
【0060】
さらに、ステップCは、第3の検出信号を受けるステップC4と、ステップC1において第1の検出信号の論理レベルが第2の論理レベルでないと判定されたとき、第3の検出信号の論理レベルが第2の論理レベルであるか否かを判定するステップC5と、第3の検出信号が第2の論理レベルでないとき第1のスイッチング回路が遮断機能を維持していないと診断するステップC6と、第3の検出信号の論理レベルが第2の論理レベルであるとき、第2の検出信号の論理レベルが第1の論理レベルであるか否かを判定するステップC7とをさらに含む。そして、ステップC3は、ステップC2またはステップC7の後、実行される。
【0061】
さらに、ステップDは、第3の検出信号を受けるステップD4と、ステップD1において第1の検出信号の論理レベルが第1の論理レベルでないと判定されたとき、第3の検出信号の論理レベルが第2の論理レベルであるか否かを判定するステップD5と、第3の検出信号が第2の論理レベルでないとき第1のスイッチング回路が導通機能を維持していないと診断するステップD6と、第3の検出信号が第2の論理レベルであるとき、第2の検出信号の論理レベルが第1の論理レベルであるか否かを判定するステップD7とをさらに含む。そして、ステップD3は、ステップD2またはステップD7の後、実行される。
【0062】
好ましくは、第3のステップは、第1および第2のスイッチング回路を開く第3のサブステップと、第1の検出信号の論理レベルが第2の論理レベルであるか否かを判定する第4のサブステップと、第2の検出信号の論理レベルが第2の論理レベルであるか否かを判定する第5のサブステップと、第1および第2の検出信号の論理レベルが第2の論理レベルであるとき第1および第2のスイッチング回路が遮断機能を維持していると診断する第6のサブステップと、第1の検出信号の論理レベルが第2の論理レベルでないとき第1のスイッチング回路が遮断機能を維持していないと診断する第7のサブステップと、第2の検出信号の論理レベルが第2の論理レベルでないとき第2のスイッチング回路が遮断機能を維持していないと診断する第8のサブステップとを含む。
【0063】
好ましくは、第1のスイッチング回路は、対応する負荷素子と電源との間に直列に接続された第1および第2のスイッチング素子から成る。第2のスイッチング回路は、対応する負荷素子と電源との間に直列に接続された第3および第4のスイッチング素子から成る。第1の検出器は、第1のスイッチング素子と第2のスイッチング素子との間の電圧を検出し、その検出した電圧のレベルに応じた論理レベルを有する第1の検出信号を出力する第1の電圧検出器である。第2の検出器は、第3のスイッチング素子と第4のスイッチング素子との間の電圧を検出し、その検出した電圧のレベルに応じた論理レベルを有する第2の検出信号を出力する第2の電圧検出器である。
【0064】
好ましくは、第1から第4のスイッチング素子の各々は、半導体スイッチング素子またはリレーである。
【0065】
好ましくは、第1のスイッチング回路は、対応する負荷素子と電源との間に接続された第1のスイッチング素子から成る。第2のスイッチング回路は、対応する負荷素子と電源との間に接続された第2のスイッチング素子から成る。第1の検出器は、第1のスイッチング素子から出力される出力電流を検出し、その検出した出力電流のレベルに応じた論理レベルを有する第1の検出信号を出力する第1の電流検出器である。第2の検出器は、第2のスイッチング素子から出力される出力電流を検出し、その検出した出力電流のレベルに応じた論理レベルを有する第2の検出信号を出力する第2の電流検出器である。
【0066】
好ましくは、第1および第2のスイッチング素子の各々は、半導体スイッチング素子またはリレーである。
【0067】
さらに、この発明によれば、プログラムは、セーフティコントローラーに含まれ、負荷を導通/遮断する安全出力回路の診断をコンピュータに実行させるためのプログラムである。負荷は、複数の負荷素子から成る。安全出力回路は、複数の負荷素子に対応して設けられ、各々が対応する負荷素子を導通/遮断する複数のスイッチング素子を含む。プログラムは、複数のスイッチング素子の各々において、スイッチング素子が対応する負荷素子を導通する導通機能と、スイッチング素子が対応する負荷素子を遮断する遮断機能とを診断する診断処理をコンピュータに実行させる。診断処理は、安全出力回路による安全出力制御が行なわれているか否かを判定する第1のステップと、安全出力制御が行なわれているとき、複数のスイッチング素子の導通機能を診断する第2のステップと、安全出力制御が行なわれていないとき、複数のスイッチング素子の遮断機能を診断する第3のステップとを含む。
【0068】
好ましくは、第2のステップは、複数のスイッチング素子をオンさせる第1のサブステップと、複数の負荷素子に対応し、各々が対応する負荷素子の出力状態に応じた論理レベルを有する複数の補助出力を第1のサブステップの後に受ける第2のサブステップと、複数の補助出力の各々が第1の論理レベルであるか否かを判定する第3のサブステップと、複数の補助出力の各々が第1の論理レベルであるとき、複数のスイッチング素子が導通機能を維持していると診断する第4のサブステップと、複数の補助出力の各々が第1の論理レベルでないとき、複数のスイッチング素子が導通機能を維持していないと診断する第5のサブステップとを含む。
【0069】
また、第3のステップは、複数のスイッチング素子をオフさせる第6のサブステップと、複数の補助出力を受ける第7のサブステップと、複数の補助出力の各々が第2の論理レベルであるか否かを判定する第8のサブステップと、複数の補助出力の各々が第2の論理レベルであるとき、複数のスイッチング素子が遮断機能を維持していると診断する第9のサブステップと、複数の補助出力の各々が第2の論理レベルでないとき、複数のスイッチング素子が遮断機能を維持していないと診断する第10のサブステップとを含む。
【0070】
好ましくは、複数のスイッチング素子の各々は、半導体スイッチング素子またはリレーである。
【0071】
さらに、この発明によれば、プログラムを記録したコンピュータ読取り可能な記録媒体は、請求項18から請求項30のいずれか1項に記載のプログラムを記録したコンピュータ読取り可能な記録媒体である。
【0072】
この発明においては、負荷に出力を与えないで安全出力回路の導通機能および遮断機能が診断される。
【0073】
したがって、この発明によれば、安全出力回路は、直流負荷のみならず、交流負荷も安全出力を出力する対象にできる。
【0074】
また、この発明においては、負荷を導通させたまま、安全出力回路の導通機能および遮断機能が診断される。
【0075】
したがって、この発明によれば、負荷が反応しない程度に短いオフ期間を有する診断パルスを出力に用いなくても安全出力回路の導通機能および遮断機能を診断できる。その結果、負荷への要求事項をなくすことができ、診断パルスによる負荷への悪影響を考慮する必要がなくなる。
【0076】
さらに、スイッチング素子にリレーを用いた安全出力回路においても、負荷への出力をオンしたまま安全出力回路の導通機能および遮断機能を診断できる。その結果、出力が長時間オンし続ける用途であっても診断機能の低下を防止できる。
【0077】
さらに、この発明においては、スイッチング素子の出力を検出して安全出力回路の導通機能および遮断機能が診断される。
【0078】
したがって、この発明によれば、リレーを用いた安全出力回路において通常のリレーを使用できる。
【0079】
【発明の実施の形態】
本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。
【0080】
[実施の形態1]
図1を参照して、この発明の実施の形態1によるセーフティコントローラーを用いた制御システム100は、センサー/スイッチ類10と、セーフティコントローラー20と、制御対象30とから成る。
【0081】
センサー/スイッチ類10は、非常停止スイッチ、インターロックスイッチ、両手操作スイッチ、ライトカーテンおよびエリアセンサー等からなる。そして、センサー/スイッチ類10は、センサー信号またはスイッチ信号をセーフティコントローラー20へ出力する。
【0082】
セーフティコントローラー20は、安全入力回路21,25と、CPU22,23と、安全出力回路24とを含む。
【0083】
安全入力回路21は、センサー/スイッチ類10からセンサー信号またはスイッチ信号を受け、その受けたセンサー信号またはスイッチ信号をCPU22へ出力する。また、安全入力回路21は、自己の診断機能を有する。
【0084】
CPU22は、安全入力回路21を診断する。すなわち、CPU22は、安全入力回路21から受けたセンサー信号またはスイッチ信号に基づいてセンサーまたはスイッチが正常に動作しているか否かを診断する。センサーまたはスイッチが正常に動作していない場合、CPU22は、制御対象30への出力をオフするように安全出力回路24を制御する必要があるが、この発明においては、センサーまたはスイッチは正常に動作していることを前提とする。
【0085】
また、CPU22は、安全入力回路21から受けたセンサー信号またはスイッチ信号に基づいて安全出力回路24を制御する。たとえば、CPU22は、安全入力回路21から装置を非常停止させるためのスイッチ信号を受けると、出力をオフするように安全出力回路24を制御し、安全入力回路21から非常停止を解除するためのスイッチ信号を受けると、出力をオンするように安全出力回路24を制御する。
【0086】
さらに、CPU22は、後述する方法によって安全出力回路24を診断する。安全出力回路24は、CPU22からの制御に従って制御対象30を導通/遮断する。
【0087】
安全入力回路25は、制御対象30からフィードバック応答を受け、その受けたフィードバック応答をCPUに入力可能な信号に変換してCPU23へ出力する。また、安全入力回路25は、自己の診断機能を有する。
【0088】
CPU23は、安全入力回路25からのフィードバック応答に基づいて、制御対象30の制御が正確に行なわれた否かを判定するとともに制御対象30の応答時間を評価する。また、CPU23は、後述する方法によって安全入力回路25を診断する。
【0089】
制御対象30は、電磁開閉器およびバルブ等からなる。制御対象30を構成する電磁開閉器およびバルブ等は、「負荷」と呼ばれ、モータ等の装置に装着される。そして、電磁開閉器およびバルブ等は、セーフティコントローラー20の安全出力回路24からのオン出力/オフ出力に応じてオン/オフされ、モータ等の装置へ電源電圧を供給したり、電源電圧を遮断する。以下においては、制御対象30としての負荷は、「電磁開閉器」により構成されるとして説明する。
【0090】
図2は、セーフティコントローラー20の状態遷移図を示す。図2を参照して、電源が投入され、初期化処理が行なわれる。そして、初期化処理が完了すると、安全出力オフ状態へ移行する。
【0091】
一方、初期化処理を失敗したとき、ロックアウト状態へ移行する。「ロックアウト状態」とは、安全出力、すなわち、安全出力回路24の出力が全てオフ状態となり、再起動が禁止される状態を言う。
【0092】
安全出力オフ状態において、セーフティコントローラー20がセンサー/スイッチ類10から非常停止を解除するためのスイッチ信号を受けると、安全出力オン状態へ移行する。また、安全出力オフ状態において、安全出力回路24が診断され、診断結果が異常であるとき、ロックアウト状態へ移行する。
【0093】
安全出力オン状態において、セーフティコントローラー20が非常停止させるためのスイッチ信号を受けると安全出力オフ状態へ移行する。また、安全出力オン状態において、安全出力回路24が診断され、診断結果が異常であるとき、ロックアウト状態へ移行する。
【0094】
このように、セーフティコントローラー20は、電源が投入され、初期化が完了すると、センサー/スイッチ類10からの入力状態に応じて各種の状態に遷移する。
【0095】
図3は、図1に示す安全出力回路24の構成図を示す。図3を参照して、安全出力回路24は、交流電源1Aから電源ライン2およびアースライン3を介して電源電圧を受ける。なお、この発明においては、交流電源1Aに代えて直流電源1Bが用いられてもよい。直流電源1Bが用いられる場合、点線で示すように直流電源1Bが電源ライン2とアースライン3との間に接続される。
【0096】
安全出力回路24は、チャンネル回路241,242と電圧検出回路243とを含む。チャンネル回路241は、負荷M1に対応して設けられ、チャンネル回路242は、負荷M2に対応して設けられる。そして、チャンネル回路241および負荷M1は、電源ライン2とアースライン3との間にチャンネル回路242および負荷M2に並列に接続される。
【0097】
電圧検出回路243は、交流電源1Aから供給される電源電圧VACを検出し、その検出した電源電圧VACの電圧レベルに応じた論理レベルを有する検出信号MONE1をCPU22へ出力する。より具体的には、電圧検出回路243は、電源電圧VACが基準値VSTD1以上のとき、H(論理ハイ)レベルの検出信号MONE1をCPU22へ出力し、電源電圧VACが基準値VSTD1よりも低いとき、L(論理ロー)レベルの検出信号MONE1をCPU22へ出力する。交流電源1Aに代えて直流電源1Bが用いられた場合も、電圧検出回路243は、同様にして電源電圧VDCを検出し、その検出した電源電圧VDCが基準値VSTD1以上であるか否かによってHレベルまたはLレベルの論理レベルを有する検出信号MONE1をCPU22へ出力する。したがって、電圧検出回路243は、電源(交流電源1Aまたは直流電源1B)から供給される電源電圧VACまたはVDCが基準値VSTD1以上であるか否かを監視する機能を果たす。
【0098】
チャンネル回路241は、スイッチング素子S1a,S1b,S2a,S2bと、電圧検出回路244,245とを含む。スイッチング素子S1a,S1b,S2a,S2bは、MOSトランジスタ、NPNトランジスタおよびIGBT(Insulated Gate Bipolar Transistor)等の半導体スイッチング素子、またはリレーから成る。スイッチング素子S1a,S1bは、電源ライン2とノードN1との間に直列に接続される。また、スイッチング素子S2a,S2bは、電源ライン2とノードN1との間に直列に接続される。そして、スイッチング素子S1a,S2bは、電源ライン2とノードN1との間にスイッチング素子S2a,S2bと並列に接続される。
【0099】
スイッチング素子S1aおよびS1bは、CPU22からの信号S1の論理レベルに応じて同時にオン/オフされる。より具体的には、スイッチング素子S1aおよびS1bは、Hレベルの信号S1に応じて同時にオンされ、Lレベルの信号S1に応じて同時にオフされる。また、スイッチング素子S2aおよびS2bは、CPU22からの信号S2の論理レベルに応じて同時にオン/オフされる。より具体的には、スイッチング素子S2aおよびS2bは、Hレベルの信号S2に応じて同時にオンされ、Lレベルの信号S2に応じて同時にオフされる。
【0100】
電圧検出回路244は、ノードN2とアースライン3との間に接続される。そして、電圧検出回路244は、スイッチング素子S1aとスイッチング素子S1bとの間、すなわち、ノードN2における電圧VN2を検出し、その検出した電圧VN2の電圧レベルに応じた論理レベルを有する検出信号MONA1をCPU22へ出力する。より具体的には、電圧検出回路244は、電圧VN2を基準値VSTD2と比較する。そして、電圧検出回路244は、電圧VN2が基準値VSTD2以上であるとき、Hレベルの検出信号MONA1をCPU22へ出力し、電圧VN2が基準値VSTD2よりも低いとき、Lレベルの検出信号MONA1をCPU22へ出力する。
【0101】
電圧検出回路245は、ノードN3とアースライン3との間に接続される。そして、電圧検出回路245は、スイッチング素子S2aとスイッチング素子S2bとの間、すなわち、ノードN3における電圧VN3を検出し、その検出した電圧VN3の電圧レベルに応じた論理レベルを有する検出信号MONB1をCPU22へ出力する。より具体的には、電圧検出回路245は、電圧VN3を基準値VSTD2と比較する。そして、電圧検出回路245は、電圧VN3が基準値VSTD2以上であるとき、Hレベルの検出信号MONB1をCPU22へ出力し、電圧VN3が基準値VSTD2よりも低いとき、Lレベルの検出信号MONB1をCPU22へ出力する。
【0102】
スイッチング素子S1aおよびS1bは、CPU22からHレベルの信号S1を受けるとオンされ、交流電源1Aから供給された電源電圧VACをノードN1を介して負荷M1へ供給する。そして、電圧検出回路244は、ノードN2における電圧VN2(=VAC)を検出してHレベルの検出信号MONA1をCPU22へ出力する。また、スイッチング素子S1aおよびS1bは、CPU22からLレベルの信号S1を受けるとオフされ、交流電源1Aから供給された電源電圧VACを負荷M1へ供給しない。そして、電圧検出回路244は、ノードN2における電圧VN2(=0V)を検出してLレベルの検出信号MONA1をCPU22へ出力する。
【0103】
スイッチング素子S2aおよびS2bは、CPU22からHレベルの信号S2を受けるとオンされ、交流電源1Aから供給された電源電圧VACをノードN1を介して負荷M1へ供給する。そして、電圧検出回路245は、ノードN3における電圧VN3(=VAC)を検出してHレベルの検出信号MONB1をCPU22へ出力する。また、スイッチング素子S2aおよびS2bは、CPU22からLレベルの信号S2を受けるとオフされ、交流電源1Aから供給された電源電圧VACを負荷M1へ供給しない。そして、電圧検出回路245は、ノードN3における電圧VN3(=0V)を検出してLレベルの検出信号MONB1をCPU22へ出力する。
【0104】
このように、チャンネル回路241は、CPU22からの信号S1,S2の論理レベルに応じて交流電源1Aからの電源電圧VACを負荷M1へ供給し、または電源電圧VACの負荷M1への供給を停止する。
【0105】
チャンネル回路242は、スイッチング素子S3a,S3b,S4a,S4bと、電圧検出回路246,247とを含む。スイッチング素子S3a,S3b,S4a,S4bは、MOSトランジスタ、NPNトランジスタおよびIGBT等の半導体スイッチング素子、またはリレーから成る。スイッチング素子S3a,S3bは、電源ライン2とノードN4との間に直列に接続される。また、スイッチング素子S4a,S4bは、電源ライン2とノードN4との間に直列に接続される。そして、スイッチング素子S3a,S3bは、電源ライン2とノードN4との間にスイッチング素子S4a,S4bと並列に接続される。
【0106】
スイッチング素子S3aおよびS3bは、CPU22からの信号S3の論理レベルに応じて同時にオン/オフされる。より具体的には、スイッチング素子S3aおよびS3bは、Hレベルの信号S3に応じて同時にオンされ、Lレベルの信号S3に応じて同時にオフされる。また、スイッチング素子S4aおよびS4bは、CPU22からの信号S4の論理レベルに応じて同時にオン/オフされる。より具体的には、スイッチング素子S4aおよびS4bは、Hレベルの信号S4に応じて同時にオンされ、Lレベルの信号S4に応じて同時にオフされる。
【0107】
電圧検出回路246は、ノードN5とアースライン3との間に接続される。そして、電圧検出回路246は、スイッチング素子S3aとスイッチング素子S3bとの間、すなわち、ノードN5における電圧VN5を検出し、その検出した電圧VN5の電圧レベルに応じた論理レベルを有する検出信号MONC1をCPU22へ出力する。より具体的には、電圧検出回路246は、電圧VN5を基準値VSTD3と比較する。そして、電圧検出回路246は、電圧VN5が基準値VSTD3以上であるとき、Hレベルの検出信号MONC1をCPU22へ出力し、電圧VN5が基準値VSTD3よりも低いとき、Lレベルの検出信号MONC1をCPU22へ出力する。
【0108】
電圧検出回路247は、ノードN6とアースライン3との間に接続される。そして、電圧検出回路247は、スイッチング素子S4aとスイッチング素子S4bとの間、すなわち、ノードN6における電圧VN6を検出し、その検出した電圧VN6の電圧レベルに応じた論理レベルを有する検出信号MOND1をCPU22へ出力する。より具体的には、電圧検出回路247は、電圧VN6を基準値VSTD3と比較する。そして、電圧検出回路247は、電圧VN6が基準値VSTD3以上であるとき、Hレベルの検出信号MOND1をCPU22へ出力し、電圧VN6が基準値VSTD3よりも低いとき、Lレベルの検出信号MOND1をCPU22へ出力する。
【0109】
スイッチング素子S3aおよびS3bは、CPU22からHレベルの信号S3を受けるとオンされ、交流電源1Aから供給された電源電圧VACをノードN4を介して負荷M2へ供給する。そして、電圧検出回路246は、ノードN5における電圧VN5(=VAC)を検出してHレベルの検出信号MONC1をCPU22へ出力する。また、スイッチング素子S3aおよびS3bは、CPU22からLレベルの信号S3を受けるとオフされ、交流電源1Aから供給された電源電圧VACを負荷M2へ供給しない。そして、電圧検出回路246は、ノードN5における電圧VN5(=0V)を検出してLレベルの検出信号MONC1をCPU22へ出力する。
【0110】
スイッチング素子S4aおよびS4bは、CPU22からHレベルの信号S4を受けるとオンされ、交流電源1Aから供給された電源電圧VACをノードN4を介して負荷M2へ供給する。そして、電圧検出回路247は、ノードN6における電圧VN6(=VAC)を検出してHレベルの検出信号MOND1をCPU22へ出力する。また、スイッチング素子S4aおよびS4bは、CPU22からLレベルの信号S4を受けるとオフされ、交流電源1Aから供給された電源電圧VACを負荷M2へ供給しない。そして、電圧検出回路247は、ノードN6における電圧VN6(=0V)を検出してLレベルの検出信号MOND1をCPU22へ出力する。
【0111】
このように、チャンネル回路242は、CPU22からの信号S3,S4の論理レベルに応じて交流電源1Aからの電源電圧VACを負荷M2へ供給し、または電源電圧VACの負荷M2への供給を停止する。
【0112】
なお、基準値VSTD2は、負荷M1がオンする最低の電圧値に設定され、基準値VSTD3は、負荷M2がオンする最低の電圧値に設定される。そして、負荷M1が負荷M2と同じ負荷であれば、基準値VSTD2は、基準値VSTD3と同じ値に設定されてもよい。
【0113】
負荷M1は、ノードN1とアースライン3との間に接続される。そして、負荷M1は、電磁開閉器からなる。負荷M1は、ノードN1を介して電源電圧VACを受けるとオン(導通)し、電源電圧VACの供給が停止されると、オフ(遮断)する。負荷M1は、主出力MM1をモータ等の装置へ出力し、補助出力SM1をセーフティコントローラー20の安全入力回路25へ出力する。そして、補助出力SM1は、主出力MM1が電源電圧VACからなるとき(すなわち、負荷M1が電源電圧を装置に供給しているとき)、0Vの電圧からなり、主出力MM1が0Vの電圧からなるとき(すなわち、負荷M1が電源電圧の装置への供給を停止しているとき)、電源電圧VACからなる。すなわち、負荷M1は、ノードN1を介して電源電圧VACが供給されると、オンし、電源電圧を装置へ供給し(電源電圧からなる主出力MM1を装置へ出力することに相当)、0Vの電圧からなる補助出力SM1を安全入力回路25へ出力する。また、負荷M1は、電源電圧VACの供給が停止されると、オフし、電源電圧の装置への供給を停止し(0Vの電圧からなる主出力MM1を出力することに相当)、電源電圧VACからなる補助出力SM1を安全入力回路25へ出力する。
【0114】
負荷M2は、ノードN4とアースライン3との間に接続される。そして、負荷M2は、電磁開閉器からなる。負荷M2は、ノードN4を介して電源電圧VACを受けると、オン(導通)し、電源電圧VACの供給が停止されると、オフ(遮断)する。負荷M2は、主出力MM2を装置へ出力し、補助出力SM2を安全入力回路25へ出力する。そして、補助出力SM2は、主出力MM2が電源電圧VACからなるとき(すなわち、負荷M2が電源電圧を装置に供給しているとき)、0Vの電圧からなり、主出力MM2が0Vの電圧からなるとき(すなわち、負荷M2が電源電圧の装置への供給を停止しているとき)、電源電圧VACからなる。すなわち、負荷M2は、ノードN4を介して電源電圧VACが供給されると、オンし、電源電圧を装置へ供給し(電源電圧からなる主出力MM2を装置へ出力することに相当)、0Vの電圧からなる補助出力SM2を安全入力回路25へ出力する。また、負荷M2は、電源電圧VACの供給が停止されると、オフし、電源電圧の装置への供給を停止し(0Vの電圧からなる主出力MM2を出力することに相当)、電源電圧VACからなる補助出力SM2を安全入力回路25へ出力する。
【0115】
負荷M1,M2は、モータ等の装置に装着される。そして、負荷M1,M2は、それぞれ、チャンネル回路241,242によってオンされると、電源電圧をモータ等の装置へ供給し、チャンネル回路241,242によってオフされると、電源電圧の装置への供給を停止する。なお、負荷M1の主出力MM1および負荷M2の主出力MM2は、図4に示すように直列にしてモータ等の装置へ出力される。したがって、負荷M1,M2のいずれか一方がオフ(遮断)されれば、モータ等の装置を停止させることができる。その結果、チャンネル回路241,242のうち、いずれか一方のチャンネル回路241または242が故障して負荷M1またはM2を遮断できなくなっても他方のチャンネル回路242または241によって負荷M2またはM1を遮断することができ、セーフティコントローラー20の安全機能を向上させることができる。
【0116】
上述したように、安全出力回路24は、負荷M1,M2の個数と同じ個数のチャンネル回路241,242を含み、負荷M1,M2に対応して設けられたチャンネル回路241,242により負荷M1,M2を導通/遮断する。
【0117】
図5は、セーフティコントローラー20の安全入力回路25の具体例を示す。図5を参照して、安全入力回路25は、補助出力監視回路251,252からなる。補助出力監視回路251は、負荷M1からの補助出力SM1を受け、その受けた補助出力SM1をCPUに入力可能な信号に変換してCPU23へ出力する。また、補助出力監視回路251は、負荷M1の補助接点をオン/オフする。
【0118】
補助出力監視回路252は、負荷M2からの補助出力SM2を受け、その受けた補助出力SM2をCPUに入力可能な信号に変換してCPU23へ出力する。また、補助出力監視回路252は、負荷M2の補助接点をオン/オフする。
【0119】
補助出力監視回路251,252は、それぞれ、負荷M1,M2からの補助出力SM1,SM2をCPUに入力可能な信号に変換する場合、たとえば、24V(=電源電圧VAC)からなる補助出力SM1,SM2を5Vの電圧からなる信号に変換し、0Vの電圧からなる補助出力SM1,SM2を0Vの電圧からなる信号とする。つまり、補助出力監視回路251,252は、補助出力SM1,SM2をHレベルの信号(5Vの電圧からなる信号)またはLレベルの信号(0Vの電圧からなる信号)に変換する。
【0120】
図6は、安全出力回路24が負荷M1,M2を導通する導通機能および安全出力回路24が負荷M1,M2を遮断する遮断機能をCPU22によって診断するためのフローチャートを示す。なお、図6は、図3に示すチャンネル回路241を診断する動作について説明するが、チャンネル回路242の診断についても同様の動作によって行なわれる。
【0121】
一連の動作が開始されると、CPU22は、安全出力制御が行なわれているか否か、すなわち、安全出力制御がオンされているかオフされているかを判定する(ステップS1)。この場合、CPU22は、電源が投入され、セーフティコントローラー20が初期化されているか否かにより安全出力制御がオンされているかオフされているかを判定する。
【0122】
そして、ステップS1において、安全出力制御がオフされている場合、CPU22は、スイッチング素子S1a,S1b,S2a,S2bをオフするためのLレベルの信号S1およびS2を安全出力回路24のチャンネル回路241へ出力する。そうすると、スイッチング素子S1a,S1bは、Lレベルの信号S1に応じて同時にオフされ、スイッチング素子S2a,S2bは、Lレベルの信号S2に応じて同時にオフされる(ステップS2)。
【0123】
電圧検出回路244は、ノードN2における電圧VN2を検出し、その検出した電圧VN2の電圧レベルに応じた論理レベルを有する検出信号MONA1をCPU22へ出力する。この場合、電圧検出回路244は、スイッチング素子S1a,S1bが正常であればLレベルの検出信号MONA1をCPU22へ出力し、スイッチング素子S1a,S1bが短絡により故障していればHレベルの検出信号MONA1をCPU22へ出力する。
【0124】
また、電圧検出回路245は、ノードN3における電圧VN3を検出し、その検出した電圧VN3の電圧レベルに応じた論理レベルを有する検出信号MONB1をCPU22へ出力する。この場合、電圧検出回路245は、スイッチング素子S2a,S2bが正常であればLレベルの検出信号MONB1をCPU22へ出力し、スイッチング素子S2a,S2bが短絡により故障していればHレベルの検出信号MONB1をCPU22へ出力する。
【0125】
CPU22は、検出信号MONA1の論理レベルがLレベルであるか否かを判定し(ステップS3)、検出信号MONA1の論理レベルがLレベルでないと判定したとき、スイッチング素子S1a,S1bが故障していると診断する。つまり、CPU22は、チャンネル回路241が負荷M1を遮断する遮断機能を維持していないと診断する。そして、セーフティコントローラー20は、ロックアウト状態へ移行する(ステップS5)。
【0126】
一方、CPU22は、ステップS3において検出信号MONA1の論理レベルがLレベルであると判定したとき、さらに、検出信号MONB1の論理レベルがLレベルであるか否かを判定する(ステップS4)。そして、CPU22は、ステップS4において、検出信号MONB1の論理レベルがLレベルでないと判定したとき、スイッチング素子S2a,S2bが故障していると診断する。つまり、CPU22は、チャンネル回路241が遮断機能を維持していないと診断する。そして、セーフティコントローラー20は、ロックアウト状態へ移行する(ステップS5)。
【0127】
一方、CPU22は、ステップS4において検出信号MONB1の論理レベルがLレベルであると判定したとき、スイッチング素子S1a,S1b,S2a,S2bが正常であると診断する。つまり、CPU22は、チャンネル回路241が遮断機能を維持していると診断する。そして、一連の動作はステップS1へ移行する。
【0128】
CPU22は、ステップS1において安全出力制御がオンされていると判定すると、スイッチング素子S1a,S1bを同時にオンするためのHレベルの信号S1とスイッチング素子S2a,S2bを同時にオフするためのLレベルの信号S2とを安全出力回路24のチャンネル回路241へ出力する。
【0129】
そうすると、スイッチング素子S1a,S1bは、Hレベルの信号S1に応じてオンされ、スイッチング素子S2a,S2bは、Lレベルの信号S2に応じてオフされる(ステップS6)。電圧検出回路244は、ノードN2における電圧VN2を検出し、その検出した電圧VN2の電圧レベルに応じた論理レベルを有する検出信号MONA1をCPU22へ出力する。また、電圧検出回路245は、ノードN3における電圧VN3を検出し、その検出した電圧VN3の電圧レベルに応じた論理レベルを有する検出信号MONB1をCPU22へ出力する。
【0130】
この場合、電圧検出回路244は、スイッチング素子S1a,S1bが正常であれば、Hレベルの検出信号MONA1をCPU22へ出力し、スイッチング素子S1a,S1bが開放により故障していれば、Lレベルの検出信号MONA1をCPU22へ出力する。また、電圧検出回路245は、スイッチング素子S2a,S2bが正常であれば、Lレベルの検出信号MONB1をCPU22へ出力し、スイッチング素子S2a,S2bが短絡により故障していれば、Hレベルの検出信号MONB1をCPU22へ出力する。
【0131】
電圧検出回路243は、交流電源1Aから供給される電源電圧VACを検出し、その検出した電源電圧VACの電圧レベルに応じた論理レベルを有する検出信号MONE1をCPU22へ出力する。
【0132】
CPU22は、検出信号MONA1の論理レベルがHレベルであるか否かを判定し(ステップS7)、検出信号MONA1の論理レベルがHレベルでないと判定したとき、さらに、検出信号MONE1の論理レベルがLレベルであるか否かを判定する(ステップS8)。検出信号MONA1の論理レベルがHレベルでないとき、検出信号MONA1の論理レベルが期待した論理レベルと異なることになるが、その原因としては、スイッチング素子S1a,S1bが故障によりオンしていないことと交流電源1Aが電源電圧VACを供給していないこととが想定される。したがって、ステップS7において検出信号MONA1の論理レベルがHレベルでないと判定された原因がスイッチング素子S1a,S1bの故障および交流電源1Aの故障のいずれであるかを診断するために、ステップS8において検出信号MONE1の論理レベルがLレベルであるか否かを判定することにしたものである。
【0133】
CPU22は、ステップS8において検出信号MONE1の論理レベルがLレベルでないと判定すると、スイッチング素子S1a,S1bが故障していると診断する。つまり、CPU22は、チャンネル回路241が導通機能を維持していないと診断する。そして、セーフティコントローラー20は、ロックアウト状態へ移行する(ステップS5)。
【0134】
一方、CPU22は、ステップS7において検出信号MONA1の論理レベルがHレベルであると判定したとき、またはステップS8において検出信号MONE1の論理レベルがLレベルであると判定したとき、検出信号MONB1の論理レベルがLレベルであるか否かを判定する(ステップS9)。そして、CPU22は、検出信号MONB1の論理レベルがLレベルでないと判定したとき、スイッチング素子S2a,S2bが故障していると診断する。つまり、CPU22は、チャンネル回路241が遮断機能を維持していないと診断する。そして、セーフティコントローラー20は、ロックアウト状態へ移行する(ステップS5)。
【0135】
一方、CPU22は、ステップS9において検出信号MONB1の論理レベルがLレベルであると判定したとき、スイッチング素子S1a,S1bを同時にオンするためのHレベルの信号S1とスイッチング素子S2a,S2bを同時にオンするためのHレベルの信号S2とを安全出力回路24のチャンネル回路241へ出力する。
【0136】
そうすると、スイッチング素子S1aおよびS1bは、Hレベルの信号S1に応じて同時にオンされ、スイッチング素子S2aおよびS2bは、Hレベルの信号S2に応じて同時にオンされる(ステップS10)。
【0137】
ステップS7において検出信号MONA1がHレベルであると判定されることおよびステップS8において検出信号MONE1がLレベルであると判定されることは、スイッチング素子S1a,S1bが正常であることを意味する。したがって、一連の動作がステップS9へ移行することは、スイッチング素子S1a,S1bが導通機能を維持しているとCPU22が診断することに相当する。また、ステップS9において検出信号MONB1がLレベルであると判定されることは、スイッチング素子S2a,S2bが正常であることを意味する。したがって、一連の動作がステップS10へ移行することは、スイッチング素子S1a,S1bが導通機能を維持し、かつ、スイッチング素子S2a,S2bが遮断機能を維持しているとCPU22が診断することに相当する。
【0138】
ステップS10においてスイッチング素子S1a,S1b,S2a,S2bがオンされると、電圧検出回路244はノードN2における電圧VN2を検出し、その検出した電圧VN2の電圧レベルに応じた論理レベルを有する検出信号MONA1をCPU22へ出力する。この場合、電圧検出回路244は、スイッチング素子S1a,S1bが正常であれば、Hレベルの検出信号MONA1をCPU22へ出力し、スイッチング素子S1a,S1bが開放により故障していれば、Lレベルの検出信号MONA1をCPU22へ出力する。
【0139】
また、電圧検出回路245は、ノードVN3における電圧VN3を検出し、その検出した電圧VN3の電圧レベルに応じた論理レベルを有する検出信号MONB1をCPU22へ出力する。この場合、電圧検出回路245は、スイッチング素子S2a,S2bが正常であれば、Hレベルの検出信号MONB1をCPU22へ出力し、スイッチング素子S2a,S2bが開放により故障していれば、Lレベルの検出信号MONB1をCPU22へ出力する。
【0140】
CPU22は、検出信号MONA1の論理レベルがHレベルであるか否かを判定し(ステップS11)、検出信号MONA1の論理レベルがHレベルでないと判定すると、さらに、検出信号MONE1がLレベルであるか否かを判定する(ステップS12)。そして、CPU22は、検出信号MONE1の論理レベルがLレベルでないと判定したとき、スイッチング素子S1a,S1bが故障していると診断する。そして、セーフティコントローラー20はロックアウト状態へ移行する(ステップS5)。
【0141】
一方、CPU22は、ステップS12において検出信号MONE1がLレベルであると判定したとき、スイッチング素子S1a,S1bが導通機能を維持していると診断する。そして、一連の動作はステップS13へ移行する。
【0142】
なお、ステップS11において検出信号MONA1の論理レベルがHレベルでないと判定されたとき、検出信号MONE1の論理レベルを判定することにした理由は、ステップS7において検出信号MONA1の論理レベルがHレベルでないと判定されたときに検出信号MONE1の論理レベルを判定することにした理由と同じである。
【0143】
CPU22は、ステップS11において検出信号MONA1の論理レベルがHレベルであると判定したとき、スイッチング素子S1a,S1bが導通機能を維持していると診断する。そして、ステップS11において検出信号MONA1の論理レベルがHレベルであると判定されたとき、またはステップS12において検出信号MONE1の論理レベルがLレベルであると判定されたとき、CPU22は、検出信号MONB1の論理レベルがHレベルであるか否かを判定する(ステップS13)。そして、CPU22は、検出信号MONB1の論理レベルがHレベルでないと判定したとき、スイッチング素子S2a,S2bが故障していると診断する。そして、セーフティコントローラー20はロックアウト状態へ移行する(ステップS5)。
【0144】
一方、ステップS13において検出信号MONB1の論理レベルがHレベルであると判定されたとき、CPU22は、スイッチング素子S1a,S1bを同時にオフするためのLレベルの信号S1とスイッチング素子S2a,S2bを同時にオンするためのHレベルの信号S2とを安全出力回路24のチャンネル回路241へ出力する。
【0145】
そうすると、スイッチング素子S1aおよびS1bは、Lレベルの信号S1に応じて同時にオフされ、スイッチング素子S2aおよびS2bは、Hレベルの信号S2に応じて同時にオンされる(ステップS14)。
【0146】
ステップS11において検出信号MONA1の論理レベルがHレベルであると判定されることおよびステップS12において検出信号MONE1の論理レベルがLレベルであると判定されることは、スイッチング素子S1a,S1bが正常であることを意味する。したがって、一連の動作がステップS13へ移行することは、スイッチング素子S1a,S1bが導通機能を維持しているとCPU22が診断することに相当する。また、ステップS13において検出信号MONB1の論理レベルがLレベルであると判定されることは、スイッチング素子S2a,S2bが正常であることを意味する。したがって、一連の動作がステップS14へ移行することは、スイッチング素子S1a,S1b,S2a,S2bが導通機能を維持しているとCPU22が診断することに相当する。
【0147】
ステップS14においてスイッチング素子S1a,S1bがオフされ、スイッチング素子S2a,S2bがオンされると、電圧検出回路244は、ノードN2における電圧VN2を検出し、その検出した電圧VN2の電圧レベルに応じた論理レベルを有する検出信号MONA1をCPU22へ出力する。この場合、電圧検出回路244は、スイッチング素子S1a,S1bが正常であればLレベルの検出信号MONA1をCPU22へ出力し、スイッチング素子S1a,S1bが短絡により故障していればHレベルの検出信号MONA1をCPU22へ出力する。
【0148】
また、電圧検出回路245は、ノードN3における電圧VN3を検出し、その検出した電圧VN3の電圧レベルに応じた論理レベルを有する検出信号MONB1をCPU22へ出力する。この場合、電圧検出回路245は、スイッチング素子S2a,S2bが正常であればHレベルの検出信号MONB1をCPU22へ出力し、スイッチング素子S2a,S2bが開放により故障していればLレベルの検出信号MONB1をCPU22へ出力する。
【0149】
そして、CPU22は、検出信号MONA1の論理レベルがLレベルであるか否かを判定し(ステップS15)、検出信号MONA1の論理レベルがLレベルでないと判定すると、さらに、検出信号MONE1の論理レベルがLレベルであるか否かを判定する(ステップS16)。ステップS16において検出信号MONE1の論理レベルがLレベルでないと判定されると、CPU22は、スイッチング素子S1a,S1bが故障していると診断する。つまり、CPU22は、チャンネル回路241が遮断機能を維持していないと診断する。そして、セーフティコントローラー20は、ロックアウト状態へ移行する(ステップS5)。
【0150】
一方、ステップS16において検出信号MONE1の論理レベルがLレベルであると判定されると、CPU22は、スイッチング素子S1a,S1bが正常であると診断する。つまり、CPU22は、チャンネル回路241が遮断機能を維持していると診断する。そして、一連の動作がステップS17へ移行する。
【0151】
なお、ステップS15において検出信号MONA1の論理レベルがLレベルでないと判定されたとき、検出信号MONE1の論理レベルを判定することにした理由は、ステップS7において検出信号MONA1の論理レベルがHレベルでないと判定されたときに検出信号MONE1の論理レベルを判定することにした理由と同じである。
【0152】
CPU22は、ステップS15において検出信号MONA1の論理レベルがLレベルであると判定したとき、スイッチング素子S1a,S1bが遮断機能を維持していると診断する。そして、ステップS15において検出信号MONA1の論理レベルがLレベルであると判定されたとき、またはステップS16において検出信号MONE1の論理レベルがLレベルであると判定されたとき、CPU22は、検出信号MONB1の論理レベルがHレベルであるか否かを判定する(ステップS17)。そして、CPU22は、検出信号MONB1の論理レベルがHレベルでないと判定したとき、スイッチング素子S2a,S2bが故障していると診断する。つまり、CPU22は、チャンネル回路241が導通機能を維持していないと診断する。そして、セーフティコントローラー20はロックアウト状態へ移行する(ステップS5)。
【0153】
一方、ステップS17において検出信号MONB1の論理レベルがHレベルであると判定されたとき、CPU22は、スイッチング素子S1a,S1bを同時にオンするためのHレベルの信号S1とスイッチング素子S2a,S2bを同時にオンするためのHレベルの信号S2とを安全出力回路24のチャンネル回路241へ出力する。
【0154】
そうすると、スイッチング素子S1aおよびS1bは、Hレベルの信号S1に応じて同時にオンされ、スイッチング素子S2aおよびS2bは、Hレベルの信号S2に応じて同時にオンされる(ステップS18)。
【0155】
ステップS15において検出信号MONA1の論理レベルがLレベルであると判定されることおよびステップS16において検出信号MONE1の論理レベルがLレベルであると判定されることは、スイッチング素子S1a,S1bが正常であることを意味する。したがって、一連の動作がステップS17へ移行することは、スイッチング素子S1a,S1bが遮断機能を維持しているとCPU22が診断することに相当する。また、ステップS17において検出信号MONB1の論理レベルがHレベルであると判定されることは、スイッチング素子S2a,S2bが正常であることを意味する。したがって、一連の動作がステップS18へ移行することは、スイッチング素子S1a,S1bが遮断機能を維持し、かつ、スイッチング素子S2a,S2bが導通機能を維持しているとCPU22が診断することに相当する。
【0156】
ステップS18においてスイッチング素子S1a,S1b,S2a,S2bがオンされると、電圧検出回路244は、ノードN2における電圧VN2を検出し、その検出した電圧VN2の電圧レベルに応じた論理レベルを有する検出信号MONA1をCPU22へ出力する。この場合、電圧検出回路244は、スイッチング素子S1a,S1bが正常であればHレベルの検出信号MONA1をCPU22へ出力し、スイッチング素子S1a,S1bが開放により故障していればLレベルの検出信号MONA1をCPU22へ出力する。
【0157】
また、電圧検出回路245は、ノードN3における電圧VN3を検出し、その検出した電圧VN3の電圧レベルに応じた論理レベルを有する検出信号MONB1をCPU22へ出力する。この場合、電圧検出回路245は、スイッチング素子S2a,S2bが正常であればHレベルの検出信号MONB1をCPU22へ出力し、スイッチング素子S2a,S2bが開放により故障していればLレベルの検出信号MONB1をCPU22へ出力する。
【0158】
そして、CPU22は、検出信号MONA1の論理レベルがHレベルであるか否かを判定し(ステップS19)、検出信号MONA1の論理レベルがHレベルでないと判定すると、さらに、検出信号MONE1の論理レベルがLレベルであるか否かを判定する(ステップS20)。ステップS20において検出信号MONE1の論理レベルがLレベルでないと判定されると、CPU22は、スイッチング素子S1a,S1bが故障していると診断する。そして、セーフティコントローラー20は、ロックアウト状態へ移行する(ステップS5)。
【0159】
一方、ステップS20において検出信号MONE1の論理レベルがLレベルであると判定されると、CPU22は、スイッチング素子S1a,S1bが正常であると診断する。そして、一連の動作がステップS21へ移行する。
【0160】
なお、ステップS19において検出信号MONA1の論理レベルがHレベルでないと判定されたとき、検出信号MONE1の論理レベルを判定することにした理由は、ステップS7において検出信号MONA1の論理レベルがHレベルでないと判定されたときに検出信号MONE1の論理レベルを判定することにした理由と同じである。
【0161】
CPU22は、ステップS19において検出信号MONA1の論理レベルがHレベルであると判定したとき、スイッチング素子S1a,S1bが導通機能を維持していると診断する。そして、ステップS19において検出信号MONA1の論理レベルがHレベルであると判定されたとき、またはステップS20において検出信号MONE1の論理レベルがLレベルであると判定されたとき、CPU22は、検出信号MONB1の論理レベルがHレベルであるか否かを判定する(ステップS21)。そして、CPU22は、検出信号MONB1の論理レベルがHレベルでないと判定したとき、スイッチング素子S2a,S2bが故障していると診断する。そして、セーフティコントローラー20はロックアウト状態へ移行する(ステップS5)。
【0162】
一方、ステップS21において検出信号MONB1の論理レベルがHレベルであると判定されたとき、CPU22は、スイッチング素子S1a,S1b,S2a,S2bが導通機能を維持していると診断する。そして、一連の動作はステップS1へ戻る。そして、上述したステップS1〜ステップS21が繰返し実行される。
【0163】
ステップS6〜ステップS13の経路は、スイッチング素子S1a,S1bをオンしたまま、スイッチング素子S2a,S2bを同時にオン/オフしてスイッチング素子S1a,S1b,S2a,S2bを診断する経路である。つまり、ステップS6〜ステップS13の経路は、スイッチング素子S1a,S1bにより電源電圧VACを供給して負荷M1を導通させたまま、スイッチング素子S2a,S2bの導通機能および遮断機能を診断する経路である。
【0164】
また、ステップS14〜ステップS21の経路は、スイッチング素子S2a,S2bをオンしたまま、スイッチング素子S1a,S1bを同時にオン/オフしてスイッチング素子S1a,S1b,S2a,S2bを診断する経路である。つまり、ステップS14〜ステップS21の経路は、スイッチング素子S2a,S2bにより電源電圧VACを供給して負荷M1を導通させたまま、スイッチング素子S1a,S1bの導通機能および遮断機能を診断する経路である。
【0165】
したがって、この発明は、スイッチング素子S1a,S1bおよびスイッチング素子S2a,S2bのいずれか一方により負荷M1を導通させたまま、スイッチング素子S1a,S1bおよびスイッチング素子S2a,S2bのいずれか他方の導通機能および遮断機能を診断することを特徴とする。
【0166】
この場合、スイッチング素子S1a,S1b(またはS2a,S2b)により電源電圧VACを負荷M1に供給したまま、スイッチング素子S2a,S2b(またはS1a,S1b)がオン/オフされるので、スイッチング素子S2a,S2b(またはS1a,S1b)がオン/オフされることによるパルス出力が負荷M1に与えられることはない。つまり、この発明は、スイッチング素子S1a,S1b(またはS2a,S2b)からのパルス出力を負荷M1に与えずにスイッチング素子S1a,S1b,S2a,S2bを診断することを特徴とする。
【0167】
その結果、負荷M1は交流負荷および直流負荷のいずれであってもよく、この発明における安全出力回路24は、直流負荷のみならず、交流負荷にも対応することができる。
【0168】
図7は、セーフティコントローラー20の正常動作時のタイムチャートを示す。図7を参照して、期間T1において、セーフティコントローラー20は、非常停止状態(信号E−stopがHレベル)にあり、信号S1およびS2がLレベルであり、交流電源1Aが電源電圧VACの供給を停止している(信号POWがLレベル)。その結果、検出信号MONE1がLレベルであり、検出信号MONA1およびMONB1がLレベルであり、負荷M1の主出力MM1はLレベルであり、負荷M1は遮断されている。
【0169】
期間T2において、交流電源1Aが電源電圧VACを供給すると(信号POWがLレベルからHレベルへ移行)、検出信号MONE1がHレベルになる。
【0170】
そして、期間T3において、非常停止が解除されると(信号E−stopがHレベルからLレベルへ移行)、信号S1がLレベルからHレベルに変化する。そうすると、スイッチング素子S1a,S1bがオンされ、スイッチング素子S1a,S1bは、電源電圧VACを負荷M1に供給する。そして、負荷M1は、電源電圧VACによりオンされ、Hレベルの主出力MM1を出力する(装置へ供給される電源電圧からなる主出力MM1をHレベルの主出力MM1と表わしたものである)。
【0171】
その後、期間T4において、信号S2がLレベルからHレベルに変化するとスイッチング素子S2a,S2bがオンされる。この場合、スイッチング素子S1a,S1bは、Hレベルの信号S1に応じて継続してオンされる。その結果、検出信号MONA1およびMONB1が共にHレベルとなり、負荷M1は、継続してオンしている。
【0172】
期間T5において、信号S1がHレベルからLレベルに変化すると、スイッチング素子S1a,S1bがオフされ、検出信号MONA1がHレベルからLレベルに変化する。しかし、信号S2はHレベルを維持するので、スイッチング素子S2a,S2bは継続してオンされる。その結果、負荷M1は、継続してオンしている。
【0173】
期間T6における動作は、期間T4における動作と同じである。期間T7において、信号S2がHレベルからLレベルに変化するとスイッチング素子S2a,S2bがオフされる。そして、検出信号MONB1がHレベルからLレベルに変化する。この場合、信号S1はHレベルを維持しており、スイッチング素子S1a,S1bは継続してオンしており、検出信号MONA1はHレベルを維持する。そして、負荷M1は、継続してオンしている。
【0174】
期間T8における動作は、期間T4における動作と同じである。期間T9において信号S1がHレベルからLレベルに変化すると、スイッチング素子S1a,S1bがオフされる。そして、検出信号MONA1がHレベルからLレベルに変化する。この場合、信号S2はHレベルを維持しており、スイッチング素子S2a,S2bは継続してオンしており、検出信号MONB1はHレベルを維持する。そして、負荷M1は、継続してオンしている。
【0175】
期間T10において、信号E−stopがLレベルからHレベルに変化し、非常停止状態になると、信号S1およびS2がHレベルからLレベルに変化する。そして、検出信号MONA1およびMONB1はHレベルからLレベルに変化し、負荷M1はオフする。期間T11において交流電源1Aが電源電圧VACの供給を停止し(信号POWがHレベルからLレベルに変化)、検出信号MONE1がHレベルからLレベルに変化する。
【0176】
期間T12において、信号E−stopがHレベルからLレベルに変化し、非常停止が解除されるが、交流電源1Aが電源電圧VACの供給を停止しているので、信号S1およびS2はLレベルを維持しており、負荷M1は、継続してオフされる。
【0177】
信号S1は、期間T3およびT4においてHレベルを維持しており、信号S2は、期間T3においてLレベルであり、期間T4においてHレベルである。したがって、この期間T3およびT4は、図6に示すフローチャートのステップS6〜S13が実行される期間である。
【0178】
信号S2は、期間T5およびT6においてHレベルを維持しており、信号S1は、期間T5においてLレベルであり、期間T6においてHレベルである。したがって、この期間T5およびT6は、図6に示すフローチャートのステップS14〜S21が実行される期間である。
【0179】
そして、期間T7およびT8における動作は、期間T3およびT4における動作と同じであるので、期間T7および期間T8において、ステップS6〜S13が、再度、実行される。
【0180】
すなわち、安全出力制御がオンされていれば、図6に示すステップS6〜ステップS21が繰返し実行される。
【0181】
図8は、スイッチング素子S1aが開放により故障したときのタイムチャートを示す。なお、図8において点線は、正常動作時のタイムチャートを示す。図8を参照して、期間T3およびT7において信号S1はHレベルを維持しているにも拘わらず、検出信号MONA1はLレベルになっている。そして、期間T3およびT7において検出信号MONE1はHレベルを維持している。したがって、この期間T3またはT7における動作は、図6に示すフローチャートのステップS7において検出信号MONA1がHレベルでないと判定され、かつ、ステップS8において検出信号MONE1がLレベルでないと判定された動作に相当する。その結果、スイッチング素子S1aが開放により故障していると診断され、セーフティコントローラー20は、ロックアウト状態へ移行する。そして、セーフティコントローラー20がロックアウト状態に移行した段階で安全出力回路24は、全ての出力をオフ状態にするので、負荷M1,M2は遮断される。
【0182】
なお、期間T3においてスイッチング素子S1aが故障していると診断されると、セーフティコントローラー20は、直ちにロックアウト状態に移行し、それ以後の再起動が禁止される。
【0183】
その他の動作は、図7において説明した動作と同じである。
図9は、スイッチング素子S1aが短絡により故障したときのタイムチャートを示す。なお、図9において点線は、正常動作時のタイムチャートを示す。図9を参照して、期間T2,T5,T9,T10において、信号S1がLレベルを維持しているにも拘わらず、検出信号MONA1がHレベルを維持している。また、期間T2,T5,T9,T10において検出信号MONE1はHレベルを維持している。したがって、期間T2,T5,T9,T10における動作は、図6に示すフローチャートのステップS15において検出信号MONA1がLレベルでないと判定され、かつ、ステップS16において検出信号MONE1がLレベルでないと判定された動作に相当する。その結果、スイッチング素子S1aが短絡により故障していると診断され、セーフティコントローラー20は、ロックアウト状態へ移行する。そして、セーフティコントローラー20がロックアウト状態に移行した段階で安全出力回路24は、全ての出力をオフ状態にするので、負荷M1,M2は遮断される。
【0184】
なお、期間T2においてスイッチング素子S1aが故障していると診断されると、セーフティコントローラー20は、直ちにロックアウト状態に移行し、それ以後の再起動が禁止される。
【0185】
その他の動作は、図7において説明した動作と同じである。
図10は、スイッチング素子S1bが開放により故障したときのタイムチャートを示す。なお、図10において、点線は正常動作時のタイムチャートを示す。図10を参照して、期間T3またはT7において、信号S1がHレベルを維持しているにも拘わらず、負荷M1の主出力MM1がLレベルを維持している。つまり、スイッチング素子S1aは、Hレベルの信号S1に応じてオンされるが、スイッチング素子S1bは、開放状態にあるため、スイッチング素子S1aを介して供給された電源電圧VACを負荷M1に供給しない。その結果、負荷M1の主出力MM1はLレベルになる。なお、負荷M1の主出力MM1がLレベルになっていることの検出は、補助出力監視回路251によって行なわれる。すなわち、補助出力監視回路251は、負荷M1の補助接点からの補助出力SM1を受けるので、Hレベルの補助出力SM1を検出することにより主出力MM1がLレベルであることを検出できる。
【0186】
したがって、期間T3またはT7において、スイッチング素子S1bが開放により故障していると診断され、セーフティコントローラー20はロックアウト状態へ移行する。そして、セーフティコントローラー20がロックアウト状態に移行した段階で安全出力回路24は、全ての出力をオフ状態にするので、負荷M1,M2は遮断される。
【0187】
なお、期間T3においてスイッチング素子S1bが故障していると診断されると、セーフティコントローラー20は、直ちにロックアウト状態に移行し、それ以後の再起動が禁止される。
【0188】
その他の動作は、図7において説明した動作と同じである。
図11は、スイッチング素子S1bが短絡により故障したときのタイムチャートを示す。なお、図11において、点線は正常動作時のタイムチャートを示す。図11を参照して、期間T5またはT9において信号S1がLレベルを維持しているにも拘わらず、検出信号MONA1がHレベルを維持している。信号S1がLレベルを維持していれば、検出信号MONA1はLレベルになるが、この場合、スイッチング素子S2a,S2bがオンされており、スイッチング素子S1bが短絡しているため、電源電圧VACがスイッチング素子S2a,S2b側からスイッチング素子S1bを介してノードN2に供給される。その結果、検出信号MONA1はHレベルを維持する。
【0189】
したがって、期間T5またはT9において、スイッチング素子S1bが短絡により故障していると診断され、セーフティコントローラー20はロックアウト状態へ移行する。そして、セーフティコントローラー20がロックアウト状態に移行した段階で安全出力回路24は、全ての出力をオフ状態にするので、負荷M1,M2は遮断される。
【0190】
なお、期間T5においてスイッチング素子S1bが故障していると診断されると、セーフティコントローラー20は、直ちにロックアウト状態に移行し、それ以後の再起動が禁止される。
【0191】
その他の動作は、図7において説明した動作と同じである。
図8〜図11に示すタイムチャートは、スイッチング回路241における動作のみを示すが、チャンネル回路がチャンネル回路241,242と2個になっても同じ動作である。
【0192】
また、CPU22は、図6に示すフローチャートに従って安全出力回路24の導通機能および遮断機能を診断する場合、図6に示す各ステップを備えるプログラムをROM(Read Only Memory)から読出し、その読み出したプログラムを実行して安全出力回路24の導通機能および遮断機能を診断する。
【0193】
したがって、図6に示す各ステップを備えるプログラムは、安全出力回路の診断をコンピュータ(CPU22)に実行させるためのプログラムである。また、ROMは、安全出力回路24の診断をコンピュータ(CPU22)に実行させるためのプログラムを記録したコンピュータ(CPU22)読取り可能な記録媒体(ROM)に相当する。
【0194】
表1は、安全出力回路24のスイッチング素子S1a,S1b,S2a,S2b部分におけるFMEA(Failure Mode Effect Analysis)を示す。FMEAとは、故障モード影響解析のことである。そして、より具体的には、FMEAとは、故障の種類を想定し、その故障が発生した場合の影響を解析し、必要な安全方策を講じるための手段の1つを言う。
【0195】
【表1】
【0196】
表1から一例を挙げて説明すると、スイッチング素子S1aの故障モードとして開放(オープン)を想定すると、スイッチング素子S1aが開放状態になることによって出力制御状態を「オン」に設定したいにも拘わらず、信号S1がHレベルであり、信号S2がLレベルのときにチャンネル回路241の出力がオフされると言う影響が発生する。そして、スイッチング素子S1aの開放による故障を診断するためには負荷M1の補助接点を監視する機能を備えていればよい。
【0197】
他の故障モードについても同様に考えればよい。
表1に示す故障モードとその故障モードを診断する機能とを備えるセーフティコントローラー20は、国際規格IEC61508において安全度水準SIL3を達成し、欧州規格EN954−1において安全カテゴリー4を達成し得るものである。
【0198】
なお、この発明においては、スイッチング素子S1a,S1bは、1つのスイッチング回路を構成し、スイッチング素子S2a,S2bは、1つのスイッチング回路を構成し、スイッチング素子S3a,S3bは、1つのスイッチング回路を構成し、スイッチング素子S4a,S4bは、1つのスイッチング回路を構成する。
【0199】
また、CPU22は、安全出力回路24の導通機能および遮断機能を診断する「診断手段」を構成する。
【0200】
さらに、負荷M1,M2は、「複数の負荷素子」を構成し、負荷M1,M2の全体は、「負荷」を構成する。
【0201】
さらに、電圧検出回路244〜247は、スイッチング回路の出力を検出する「検出回路」を構成する。
【0202】
さらに、上記においては、負荷は2個であり、その2個の負荷M1,M2に対応して2つのチャンネル回路241,242が設けられると説明したが、この発明においては、これに限らず、一般的に、複数の負荷に対応して複数のチャンネル回路を設けてもよい。
【0203】
さらに、安全出力回路24のスイッチング素子S1a,S1b,S2a,S2b,S3a,S3b,S4a,S4bがリレーからなるとき、CPU22は、負荷M1,M2が反応しない期間よりも長い期間を設定して信号S1,S2,S3,S4を安全出力回路24へ出力し、安全出力回路24の導通機能および遮断機能を診断する。負荷M1,M2が反応しない程度の短いオフ期間を有する信号S1,S2,S3,S4を用いて安全出力回路24を診断した場合、リレーが振動し、接点の寿命が短くなる虞があるからである。
【0204】
上述したように、セーフティコントローラー20においては、安全出力回路24のチャンネル回路241,242の各々において図6に示すフローチャートに従ってチャンネル回路241,242の導通機能および遮断機能が負荷M1,M2にパルス出力を与えずに診断される。したがって、セーフティコントローラー20は、直流負荷のみならず交流負荷も安全出力を出力する対象にできる。
【0205】
また、負荷が反応しない程度に短いオフ期間を有する診断パルスを出力に用いなくてもチャンネル回路241,242の導通機能および遮断機能を診断できる。その結果、負荷への要求事項をなくすことができ、診断パルスによる負荷への悪影響を考慮する必要がなくなる。
【0206】
さらに、スイッチング素子S1a,S1b,S2a,S2b,S3a,S3b,S4a,S4bにリレーを用いた安全出力回路においても、負荷M1,M2への出力をオンしたままチャンネル回路241,242の導通機能および遮断機能を診断できる。その結果、出力が長時間オンし続ける用途であっても診断機能の低下を防止できる。
【0207】
さらに、本発明は、スイッチング素子S1a,S1b,S2a,S2b,S3a,S3b,S4a,S4bの出力を検出して安全出力回路24の導通機能および遮断機能を診断しているので、リレーを用いた安全出力回路において通常のリレーを使用できる。
【0208】
[実施の形態2]
図12を参照して、実施の形態2によるセーフティコントローラーを用いた制御システム101は、制御システム100のセーフティコントローラー20をセーフティコントローラー20Aに代えたものであり、その他は、制御システム100と同じである。
【0209】
セーフティコントローラー20Aは、セーフティコントローラー20の安全出力回路24を安全出力回路24Aに代えたものであり、その他は、セーフティコントローラー20と同じである。
【0210】
図13は、図12に示す安全出力回路24Aの構成図を示す。図13を参照して、安全出力回路24Aは、チャンネル回路241A,242Aと、電流検出回路243Aとを含む。
【0211】
チャンネル回路241Aは、負荷M1に対応して設けられ、チャンネル回路242Aは、負荷M2に対応して設けられる。そして、チャンネル回路241Aおよび負荷M1は、電源ライン2とアースライン3との間にチャンネル回路242Aおよび負荷M2に並列に接続される。
【0212】
電流検出回路243Aは、交流電源1Aから供給される電源電流IACを検出し、その検出した電源電流IACの電流レベルに応じた論理レベルを有する検出信号MONE2をCPU22へ出力する。より具体的には、電流検出回路243Aは、電源電流IACが基準値ISTD1以上のとき、Hレベルの検出信号MONE2をCPU22へ出力し、電源電流IACが基準値ISTD1よりも低いとき、Lレベルの検出信号MONE2をCPU22へ出力する。交流電源1Aに代えて直流電源1Bが用いられた場合も、電流検出回路243Aは、同様にして電源電流IDCを検出し、その検出した電源電流IDCが基準値ISTD1以上であるか否かによってHレベルまたはLレベルの論理レベルを有する検出信号MONE2をCPU22へ出力する。したがって、電流検出回路243Aは、電源(交流電源1Aまたは直流電源1B)から供給される電源電流IACまたはIDCが基準値ISTD1以上であるか否かを監視する機能を果たす。
【0213】
チャンネル回路241Aは、スイッチング素子S1a,S2aと、電流検出回路244A,245Aとを含む。スイッチング素子S1aおよび電流検出回路244Aは、電源ライン2とノードN7との間に直列に接続される。そして、スイッチング素子S1aが電源ライン2側に配置され、電流検出回路244AがノードN7側に配置される。
【0214】
スイッチング素子S2aおよび電流検出回路245Aは、電源ライン2とノードN7との間に直列に接続される。そして、スイッチング素子S2aが電源ライン2側に配置され、電流検出回路245AがノードN7側に配置される。
【0215】
スイッチング素子S1aおよび電流検出回路244Aは、電源ライン2とノードN7との間にスイッチング素子S2aおよび電流検出回路245Aに並列に接続される。
【0216】
電流検出回路244Aは、スイッチング素子S1aから出力される電流I1を検出し、その検出した電流I1の電流レベルに応じた論理レベルを有する検出信号MONA2をCPU22へ出力する。より具体的には、電流検出回路244Aは、電流I1を基準値ISTD2と比較する。そして、電流検出回路244Aは、電流I1が基準値ISTD2以上であるとき、Hレベルの検出信号MONA2をCPU22へ出力し、電流I1が基準値ISTD2よりも低いとき、Lレベルの検出信号MONA2をCPU22へ出力する。
【0217】
電流検出回路245Aは、スイッチング素子S2aから出力される電流I2を検出し、その検出した電流I2の電流レベルに応じた論理レベルを有する検出信号MONB2をCPU22へ出力する。より具体的には、電流検出回路245Aは、電流I2を基準値ISTD2と比較する。そして、電流検出回路245Aは、電流I2が基準値ISTD2以上であるとき、Hレベルの検出信号MONB2をCPU22へ出力し、電流I2が基準値ISTD2よりも低いとき、Lレベルの検出信号MONB2をCPU22へ出力する。
【0218】
スイッチング素子S1aは、CPU22からHレベルの信号S1を受けるとオンされ、交流電源1Aから供給された電源電流IACを電流検出回路244AおよびノードN7を介して負荷M1へ供給する。そして、電流検出回路244Aは、スイッチング素子S1aからの電流I1(=IAC)を検出してHレベルの検出信号MONA2をCPU22へ出力する。また、スイッチング素子S1aは、CPU22からLレベルの信号S1を受けるとオフされ、交流電源1Aから供給された電源電流IACを負荷M1へ供給しない。そして、電流検出回路244Aは、スイッチング素子S1aからの電流I1(=0V)を検出してLレベルの検出信号MONA2をCPU22へ出力する。
【0219】
スイッチング素子S2aは、CPU22からHレベルの信号S2を受けるとオンされ、交流電源1Aから供給された電源電流IACを電流検出回路245AおよびノードN7を介して負荷M1へ供給する。そして、電流検出回路245Aは、スイッチング素子S2aからの電流I2(=IAC)を検出してHレベルの検出信号MONB2をCPU22へ出力する。また、スイッチング素子S2aは、CPU22からLレベルの信号S2を受けるとオフされ、交流電源1Aから供給された電源電流IACを負荷M1へ供給しない。そして、電流検出回路245Aは、スイッチング素子S2aからの電流I2(=0V)を検出してLレベルの検出信号MONB2をCPU22へ出力する。
【0220】
このように、チャンネル回路241Aは、CPU22からの信号S1,S2の論理レベルに応じて交流電源1Aからの電源電流IACを負荷M1へ供給し、または電源電流IACの負荷M1への供給を停止する。
【0221】
チャンネル回路242Aは、スイッチング素子S3a,S4aと、電流検出回路246A,247Aとを含む。スイッチング素子S3aおよび電流検出回路246Aは、電源ライン2とノードN8との間に直列に接続される。そして、スイッチング素子S3aが電源ライン2側に配置され、電流検出回路246AがノードN8側に配置される。
【0222】
スイッチング素子S4aおよび電流検出回路247Aは、電源ライン2とノードN8との間に直列に接続される。そして、スイッチング素子S4aが電源ライン2側に配置され、電流検出回路247AがノードN8側に配置される。
【0223】
そして、スイッチング素子S3aおよび電流検出回路246Aは、電源ライン2とノードN8との間にスイッチング素子S4aおよび電流検出回路247Aに並列に接続される。
【0224】
電流検出回路246Aは、スイッチング素子S3aから出力される電流I3を検出し、その検出した電流I3の電流レベルに応じた論理レベルを有する検出信号MONC2をCPU22へ出力する。より具体的には、電流検出回路246Aは、電流I3を基準値ISTD3と比較する。そして、電流検出回路246Aは、電流I3が基準値ISTD3以上であるとき、Hレベルの検出信号MONC2をCPU22へ出力し、電流I3が基準値ISTD3よりも低いとき、Lレベルの検出信号MONC2をCPU22へ出力する。
【0225】
電流検出回路247Aは、スイッチング素子S4aから出力される電流I4を検出し、その検出した電流I4の電流レベルに応じた論理レベルを有する検出信号MOND2をCPU22へ出力する。より具体的には、電流検出回路247Aは、電流I4を基準値ISTD3と比較する。そして、電流検出回路247Aは、電流I4が基準値ISTD3以上であるとき、Hレベルの検出信号MOND2をCPU22へ出力し、電流I4が基準値ISTD3よりも低いとき、Lレベルの検出信号MOND2をCPU22へ出力する。
【0226】
スイッチング素子S3aは、CPU22からHレベルの信号S3を受けるとオンされ、交流電源1Aから供給された電源電流IACを電流検出回路246AおよびノードN8を介して負荷M2へ供給する。そして、電流検出回路246Aは、スイッチング素子S3aからの電流I3(=IAC)を検出してHレベルの検出信号MONC2をCPU22へ出力する。また、スイッチング素子S3aは、CPU22からLレベルの信号S3を受けるとオフされ、交流電源1Aから供給された電源電流IACを負荷M1へ供給しない。そして、電流検出回路246Aは、スイッチング素子S3aからの電流I3(=0V)を検出してLレベルの検出信号MONC2をCPU22へ出力する。
【0227】
スイッチング素子S4aは、CPU22からHレベルの信号S4を受けるとオンされ、交流電源1Aから供給された電源電流IACを電流検出回路247AおよびノードN8を介して負荷M2へ供給する。そして、電流検出回路247Aは、スイッチング素子S4aからの電流I4(=IAC)を検出してHレベルの検出信号MOND2をCPU22へ出力する。また、スイッチング素子S4aは、CPU22からLレベルの信号S4を受けるとオフされ、交流電源1Aから供給された電源電流IACを負荷M2へ供給しない。そして、電流検出回路247Aは、スイッチング素子S4aからの電流I4(=0V)を検出してLレベルの検出信号MOND2をCPU22へ出力する。
【0228】
このように、チャンネル回路242Aは、CPU22からの信号S3,S4の論理レベルに応じて交流電源1Aからの電源電流IACを負荷M2へ供給し、または電源電流IACの負荷M2への供給を停止する。
【0229】
なお、基準値ISTD2は、負荷M1がオンする最低の電流値に設定され、基準値ISTD3は、負荷M2がオンする最低の電流値に設定される。そして、負荷M1が負荷M2と同じ負荷であれば、基準値ISTD2は、基準値ISTD3と同じ値に設定されてもよい。
【0230】
このように、安全出力回路24Aは、負荷M1,M2の個数と同じ個数のチャンネル回路241A,242Aを含み、負荷M1,M2に対応して設けられたチャンネル回路241A,242Aにより負荷M1,M2を導通/遮断する。
【0231】
図14は、安全出力回路24Aが負荷M1,M2を導通する導通機能および安全出力回路24Aが負荷M1,M2を遮断する遮断機能をCPU22によって診断するためのフローチャートを示す。なお、図14は、図13に示すチャンネル回路241Aを診断する動作について説明するが、チャンネル回路242Aの診断についても同様の動作によって行なわれる。
【0232】
一連の動作が開始されると、CPU22は、安全出力制御が行なわれているか否か、すなわち、安全出力制御がオンかオフかを判定する(ステップS31)。この場合、CPU22は、電源が投入され、セーフティコントローラー20Aが初期化されているか否かにより安全出力制御がオンされているかオフされているかを判定する。
【0233】
そして、ステップS31において、安全出力制御がオフされている場合、CPU22は、スイッチング素子S1a,S2aをオフするためのLレベルの信号S1およびS2を安全出力回路24Aのチャンネル回路241Aへ出力する。そうすると、スイッチング素子S1aは、Lレベルの信号S1に応じてオフされ、スイッチング素子S2aは、Lレベルの信号S2に応じてオフされる(ステップS32)。
【0234】
電流検出回路244Aは、スイッチング素子S1aから出力される電流I1を検出し、その検出した電流I1の電流レベルに応じた論理レベルを有する検出信号MONA2をCPU22へ出力する。この場合、電流検出回路244Aは、スイッチング素子S1aが正常であればLレベルの検出信号MONA2をCPU22へ出力し、スイッチング素子S1aが短絡により故障していればHレベルの検出信号MONA2をCPU22へ出力する。
【0235】
また、電流検出回路245Aは、スイッチング素子S2aから出力される電流I2を検出し、その検出した電流I2の電流レベルに応じた論理レベルを有する検出信号MONB2をCPU22へ出力する。この場合、電流検出回路245Aは、スイッチング素子S2aが正常であればLレベルの検出信号MONB2をCPU22へ出力し、スイッチング素子S2aが短絡により故障していればHレベルの検出信号MONB2をCPU22へ出力する。
【0236】
CPU22は、検出信号MONA2の論理レベルがLレベルであるか否かを判定し(ステップS33)、検出信号MONA2の論理レベルがLレベルでないと判定したとき、スイッチング素子S1aが故障していると診断する。つまり、CPU22は、チャンネル回路241Aが負荷M1を遮断する遮断機能を維持していないと診断する。そして、セーフティコントローラー20Aは、ロックアウト状態へ移行する(ステップS35)。
【0237】
一方、CPU22は、ステップS33において検出信号MONA2の論理レベルがLレベルであると判定したとき、さらに、検出信号MONB2の論理レベルがLレベルであるか否かを判定する(ステップS34)。そして、CPU22は、ステップS34において、検出信号MONB2の論理レベルがLレベルでないと判定したとき、スイッチング素子S2aが故障していると診断する。つまり、CPU22は、チャンネル回路241Aが遮断機能を維持していないと診断する。そして、セーフティコントローラー20Aは、ロックアウト状態へ移行する(ステップS35)。
【0238】
一方、CPU22は、ステップS34において検出信号MONB2の論理レベルがLレベルであると判定したとき、スイッチング素子S1a,S2aが正常であると診断する。つまり、CPU22は、チャンネル回路241Aが遮断機能を維持していると診断する。そして、一連の動作はステップS31へ移行する。
【0239】
CPU22は、ステップS31において安全出力制御がオンされていると判定すると、スイッチング素子S1aをオンするためのHレベルの信号S1とスイッチング素子S2aをオフするためのLレベルの信号S2とを安全出力回路24Aのチャンネル回路241Aへ出力する。
【0240】
そうすると、スイッチング素子S1aは、Hレベルの信号S1に応じてオンされ、スイッチング素子S2aは、Lレベルの信号S2に応じてオフされる(ステップS36)。電流検出回路244Aは、スイッチング素子S1aから出力される電流I1を検出し、その検出した電流I1の電流レベルに応じた論理レベルを有する検出信号MONA2をCPU22へ出力する。また、電流検出回路245Aは、スイッチング素子S2aから出力される電流I2を検出し、その検出した電流I2の電流レベルに応じた論理レベルを有する検出信号MONB2をCPU22へ出力する。
【0241】
この場合、電流検出回路244Aは、スイッチング素子S1aが正常であれば、Hレベルの検出信号MONA2をCPU22へ出力し、スイッチング素子S1aが開放により故障していれば、Lレベルの検出信号MONA2をCPU22へ出力する。また、電流検出回路245Aは、スイッチング素子S2aが正常であれば、Lレベルの検出信号MONB2をCPU22へ出力し、スイッチング素子S2aが短絡により故障していれば、Hレベルの検出信号MONB2をCPU22へ出力する。
【0242】
電流検出回路243Aは、交流電源1Aから供給される電源電流IACを検出し、その検出した電源電流IACの電圧レベルに応じた論理レベルを有する検出信号MONE2をCPU22へ出力する。
【0243】
CPU22は、検出信号MONA2の論理レベルがHレベルであるか否かを判定し(ステップS37)、検出信号MONA2の論理レベルがHレベルでないと判定したとき、さらに、検出信号MONE2の論理レベルがLレベルであるか否かを判定する(ステップS38)。検出信号MONA2の論理レベルがHレベルでないとき、検出信号MONA2の論理レベルが期待した論理レベルと異なることになるが、その原因としては、スイッチング素子S1aが故障によりオンしていないことと交流電源1Aが電源電流IACを供給していないこととが想定される。したがって、ステップS37において検出信号MONA2の論理レベルがHレベルでないと判定された原因がスイッチング素子S1aの故障および交流電源1Aの故障のいずれであるかを診断するために、ステップS38において検出信号MONE2の論理レベルがLレベルであるか否かを判定することにしたものである。
【0244】
CPU22は、ステップS38において検出信号MONE2の論理レベルがLレベルでないと判定すると、スイッチング素子S1aが故障していると診断する。つまり、CPU22は、チャンネル回路241Aが導通機能を維持していないと診断する。そして、セーフティコントローラー20Aは、ロックアウト状態へ移行する(ステップS35)。
【0245】
一方、CPU22は、ステップS37において検出信号MONA2の論理レベルがHレベルであると判定したとき、またはステップS38において検出信号MONE2の論理レベルがLレベルであると判定したとき、検出信号MONB2の論理レベルがLレベルであるか否かを判定する(ステップS39)。そして、CPU22は、検出信号MONB2の論理レベルがLレベルでないと判定したとき、スイッチング素子S2aが故障していると診断する。つまり、CPU22は、チャンネル回路241Aが遮断機能を維持していないと診断する。そして、セーフティコントローラー20Aは、ロックアウト状態へ移行する(ステップS35)。
【0246】
一方、CPU22は、ステップS39において検出信号MONB2の論理レベルがLであると判定したとき、スイッチング素子S1aをオンするためのHレベルの信号S1とスイッチング素子S2aをオンするためのHレベルの信号S2とを安全出力回路24Aのチャンネル回路241Aへ出力する。
【0247】
そうすると、スイッチング素子S1aは、Hレベルの信号S1に応じてオンされ、スイッチング素子S2aは、Hレベルの信号S2に応じてオンされる(ステップS40)。
【0248】
ステップS37において検出信号MONA2の論理レベルがHレベルであると判定されることおよびステップS38において検出信号MONE2の論理レベルがLレベルであると判定されることは、スイッチング素子S1aが正常であることを意味する。したがって、一連の動作がステップS39へ移行することは、スイッチング素子S1aが導通機能を維持しているとCPU22が診断することに相当する。また、ステップS39において検出信号MONB2がLレベルであると判定されることは、スイッチング素子S2aが正常であることを意味する。したがって、一連の動作がステップS40へ移行することは、スイッチング素子S1aが導通機能を維持し、かつ、スイッチング素子S2aが遮断機能を維持しているとCPU22が診断することに相当する。
【0249】
ステップS40においてスイッチング素子S1a,S2aがオンされると、電流検出回路244Aは、スイッチング素子S1aから出力される電流I1を検出し、その検出した電流I1の電流レベルに応じた論理レベルを有する検出信号MONA2をCPU22へ出力する。この場合、電流検出回路244Aは、スイッチング素子S1aが正常であれば、Hレベルの検出信号MONA2をCPU22へ出力し、スイッチング素子S1aが開放により故障していれば、Lレベルの検出信号MONA2をCPU22へ出力する。
【0250】
また、電流検出回路245Aは、スイッチング素子S2aから出力される電流I2を検出し、その検出した電流I2の電流レベルに応じた論理レベルを有する検出信号MONB2をCPU22へ出力する。この場合、電流検出回路245Aは、スイッチング素子S2aが正常であれば、Hレベルの検出信号MONB2をCPU22へ出力し、スイッチング素子S2aが開放により故障していれば、Lレベルの検出信号MONB2をCPU22へ出力する。
【0251】
CPU22は、検出信号MONA2の論理レベルがHレベルであるか否かを判定し(ステップS41)、検出信号MONA2の論理レベルがHレベルでないと判定すると、さらに、検出信号MONE2がLレベルであるか否かを判定する(ステップS42)。そして、CPU22は、検出信号MONE2の論理レベルがLレベルでないと判定したとき、スイッチング素子S1aが故障していると診断する。そして、セーフティコントローラー20Aは、ロックアウト状態へ移行する(ステップS35)。
【0252】
一方、CPU22は、ステップS42において検出信号MONE2がLレベルであると判定したとき、スイッチング素子S1aが導通機能を維持していると診断する。そして、一連の動作はステップS43へ移行する。
【0253】
なお、ステップS41において検出信号MONA2の論理レベルがHレベルでないと判定されたとき、検出信号MONE2の論理レベルを判定することにした理由は、ステップS37において検出信号MONA2の論理レベルがHレベルでないと判定されたときに検出信号MONE2の論理レベルを判定することにした理由と同じである。
【0254】
CPU22は、ステップS41において検出信号MONA2の論理レベルがHレベルであると判定したとき、スイッチング素子S1aが導通機能を維持していると診断する。そして、ステップS41において検出信号MONA2の論理レベルがHレベルであると判定されたとき、またはステップS42において検出信号MONE2の論理レベルがLレベルであると判定されたとき、CPU22は、検出信号MONB2の論理レベルがHレベルであるか否かを判定する(ステップS43)。CPU22は、検出信号MONB2の論理レベルがHレベルでないと判定したとき、スイッチング素子S2aが故障していると診断する。そして、セーフティコントローラー20Aは、ロックアウト状態へ移行する(ステップS35)。
【0255】
一方、ステップS43において検出信号MONB2の論理レベルがHレベルであると判定されたとき、CPU22は、スイッチング素子S1aをオフするためのLレベルの信号S1とスイッチング素子S2aをオンするためのHレベルの信号S2とを安全出力回路24Aのチャンネル回路241Aへ出力する。
【0256】
そうすると、スイッチング素子S1aは、Lレベルの信号S1に応じてオフされ、スイッチング素子S2aは、Hレベルの信号S2に応じてオンされる(ステップS44)。
【0257】
ステップS41において検出信号MONA2の論理レベルがHレベルであると判定されることおよびステップS42において検出信号MONE2の論理レベルがLレベルであると判定されることは、スイッチング素子S1aが正常であることを意味する。したがって、一連の動作がステップS43へ移行することは、スイッチング素子S1aが導通機能を維持しているとCPU22が診断することに相当する。また、ステップS43において検出信号MONB2の論理レベルがHレベルであると判定されることは、スイッチング素子S2aが正常であることを意味する。したがって、一連の動作がステップS44へ移行することは、スイッチング素子S1a,S2aが導通機能を維持しているとCPU22が診断することに相当する。
【0258】
ステップS44においてスイッチング素子S1aがオフされ、スイッチング素子S2aがオンされると、電流検出回路244Aは、スイッチング素子S1aから出力される電流I1を検出し、その検出した電流I1の電流レベルに応じた論理レベルを有する検出信号MONA2をCPU22へ出力する。この場合、電流検出回路244Aは、スイッチング素子S1aが正常であればLレベルの検出信号MONA2をCPU22へ出力し、スイッチング素子S1aが短絡により故障していればHレベルの検出信号MONA2をCPU22へ出力する。
【0259】
また、電流検出回路245Aは、スイッチング素子S2aから出力される電流I2を検出し、その検出した電流I2の電流レベルに応じた論理レベルを有する検出信号MONB2をCPU22へ出力する。この場合、電流検出回路245Aは、スイッチング素子S2aが正常であればHレベルの検出信号MONB2をCPU22へ出力し、スイッチング素子S2aが開放により故障していればLレベルの検出信号MONB2をCPU22へ出力する。
【0260】
そして、CPU22は、検出信号MONA2の論理レベルがLレベルであるか否かを判定し(ステップS45)、検出信号MONA2の論理レベルがLレベルでないと判定すると、さらに、検出信号MONE2の論理レベルがLレベルであるか否かを判定する(ステップS46)。ステップS46において検出信号MONE2の論理レベルがLレベルでないと判定されると、CPU22は、スイッチング素子S1aが故障していると診断する。つまり、CPU22は、チャンネル回路241Aが遮断機能を維持していないと診断する。そして、セーフティコントローラー20Aは、ロックアウト状態へ移行する(ステップS35)。
【0261】
一方、ステップS46において検出信号MONE2の論理レベルがLレベルであると判定されると、CPU22は、スイッチング素子S1aが正常であると診断する。つまり、CPU22は、チャンネル回路241Aが遮断機能を維持していると診断する。そして、一連の動作がステップS47へ移行する。
【0262】
なお、ステップS45において検出信号MONA2の論理レベルがLレベルでないと判定されたとき、検出信号MONE2の論理レベルを判定することにした理由は、ステップS37において検出信号MONA2の論理レベルがHレベルでないと判定されたときに検出信号MONE2の論理レベルを判定することにした理由と同じである。
【0263】
CPU22は、ステップS45において検出信号MONA2の論理レベルがLレベルであると判定したとき、スイッチング素子S1aが遮断機能を維持していると診断する。そして、ステップS45において検出信号MONA2の論理レベルがLレベルであると判定されたとき、またはステップS46において検出信号MONE2の論理レベルがLレベルであると判定されたとき、CPU22は、検出信号MONB2の論理レベルがHレベルであるか否かを判定する(ステップS47)。そして、CPU22は、検出信号MONB2の論理レベルがHレベルでないと判定したとき、スイッチング素子S2aが故障していると診断する。つまり、CPU22は、チャンネル回路241Aが導通機能を維持していないと診断する。そして、セーフティコントローラー20Aは、ロックアウト状態へ移行する(ステップS35)。
【0264】
一方、ステップS47において検出信号MONB2の論理レベルがHレベルであると判定されたとき、CPU22は、スイッチング素子S1aをオンするためのHレベルの信号S1とスイッチング素子S2aをオンするためのHレベルの信号S2とを安全出力回路24Aのチャンネル回路241Aへ出力する。
【0265】
そうすると、スイッチング素子S1aは、Hレベルの信号S1に応じてオンされ、スイッチング素子S2aは、Hレベルの信号S2に応じてオンされる(ステップS48)。
【0266】
ステップS45において検出信号MONA2がLレベルであると判定されることおよびステップS46において検出信号MONE2がLレベルであると判定されることは、スイッチング素子S1aが正常であることを意味する。したがって、一連の動作がステップS47へ移行することは、スイッチング素子S1aが遮断機能を維持しているとCPU22が診断することに相当する。また、ステップS47において検出信号MONB2がHレベルであると判定されることは、スイッチング素子S2aが正常であることを意味する。したがって、一連の動作がステップS48へ移行することは、スイッチング素子S1aが遮断機能を維持し、かつ、スイッチング素子S2aが導通機能を維持しているとCPU22が診断することに相当する。
【0267】
ステップS48においてスイッチング素子S1a,S2aがオンされると、電流検出回路244Aは、スイッチング素子S1aから出力される電流I1を検出し、その検出した電流I1の電流レベルに応じた論理レベルを有する検出信号MONA2をCPU22へ出力する。この場合、電流検出回路244Aは、スイッチング素子S1aが正常であればHレベルの検出信号MONA2をCPU22へ出力し、スイッチング素子S1aが開放により故障していればLレベルの検出信号MONA2をCPU22へ出力する。
【0268】
また、電流検出回路245Aは、スイッチング素子S2aから出力される電流I2を検出し、その検出した電流I2の電流レベルに応じた論理レベルを有する検出信号MONB2をCPU22へ出力する。この場合、電流検出回路245Aは、スイッチング素子S2aが正常であればHレベルの検出信号MONB2をCPU22へ出力し、スイッチング素子S2aが開放により故障していればLレベルの検出信号MONB2をCPU22へ出力する。
【0269】
そして、CPU22は、検出信号MONA2の論理レベルがHレベルであるか否かを判定し(ステップS49)、検出信号MONA2の論理レベルがHレベルでないと判定すると、さらに、検出信号MONE2の論理レベルがLレベルであるか否かを判定する(ステップS50)。ステップS50において検出信号MONE2の論理レベルがLレベルでないと判定されると、CPU22は、スイッチング素子S1aが故障していると診断する。そして、セーフティコントローラー20Aは、ロックアウト状態へ移行する(ステップS35)。
【0270】
一方、ステップS50において検出信号MONE2の論理レベルがLレベルであると判定されると、CPU22は、スイッチング素子S1aが正常であると診断する。そして、一連の動作がステップS51へ移行する。
【0271】
なお、ステップS49において検出信号MONA2の論理レベルがHレベルでないと判定されたとき、検出信号MONE2の論理レベルを判定することにした理由は、ステップS37において検出信号MONA2の論理レベルがHレベルでないと判定されたときに検出信号MONE2の論理レベルを判定することにした理由と同じである。
【0272】
CPU22は、ステップS49において検出信号MONA2の論理レベルがHレベルであると判定したとき、スイッチング素子S1aが導通機能を維持していると診断する。そして、ステップS49において検出信号MONA2の論理レベルがHレベルであると判定されたとき、またはステップS50において検出信号MONE2の論理レベルがLレベルであると判定されたとき、CPU22は、検出信号MONB2の論理レベルがHレベルであるか否かを判定する(ステップS51)。そして、CPU22は、検出信号MONB2の論理レベルがHレベルでないと判定したとき、スイッチング素子S2aが故障していると診断する。そして、セーフティコントローラー20Aは、ロックアウト状態へ移行する(ステップS35)。
【0273】
一方、ステップS51において検出信号MONB2の論理レベルがHレベルであると判定されたとき、CPU22は、スイッチング素子S1a,S2aが導通機能を維持していると診断する。そして、一連の動作はステップS31へ戻る。そして、上述したステップS31〜ステップS51が繰返し実行される。
【0274】
ステップS36〜ステップS43の経路は、スイッチング素子S1aをオンしたまま、スイッチング素子S2aをオン/オフしてスイッチング素子S1a,S2aを診断する経路である。つまり、ステップS36〜ステップS43の経路は、スイッチング素子S1aにより電源電流IACを供給して負荷M1を導通させたまま、スイッチング素子S2aの導通機能および遮断機能を診断する経路である。
【0275】
また、ステップS44〜ステップS51の経路は、スイッチング素子S2aをオンしたまま、スイッチング素子S1aをオン/オフしてスイッチング素子S1a,S2aを診断する経路である。つまり、ステップS44〜ステップS51の経路は、スイッチング素子S2aにより電源電流IACを供給して負荷M1を導通させたまま、スイッチング素子S1aの導通機能および遮断機能を診断する経路である。
【0276】
したがって、この発明は、スイッチング素子S1aおよびスイッチング素子S2aのいずれか一方により負荷M1を導通させたまま、スイッチング素子S1aおよびスイッチング素子S2aのいずれか他方の導通機能および遮断機能を診断することを特徴とする。
【0277】
この場合、スイッチング素子S1a(またはS2a)により電源電流IACを負荷M1に供給したまま、スイッチング素子S2a(またはS1a)がオン/オフされるので、スイッチング素子S2a(またはS1a)がオン/オフされることによるパルス出力が負荷M1に与えられることはない。つまり、この発明は、スイッチング素子S1a(またはS2a)からのパルス出力を負荷M1に与えずにスイッチング素子S1a,S2aを診断することを特徴とする。
【0278】
その結果、負荷M1は交流負荷および直流負荷のいずれであってもよく、この発明における安全出力回路24Aは、直流負荷のみならず、交流負荷にも対応することができる。
【0279】
図15は、セーフティコントローラー20Aの正常動作時のタイムチャートを示す。図15を参照して、期間T1において、セーフティコントローラー20Aは、非常停止状態(信号E−stopがHレベル)にあり、信号S1およびS2がLレベルであり、交流電源1Aが電源電流IACの供給を停止している(信号POWがLレベル)。その結果、検出信号MONE2がLレベルであり、検出信号MONA2およびMONB2がLレベルであり、負荷M1の主出力MM1はLレベルであり、負荷M1は遮断されている。
【0280】
期間T2において、交流電源1Aが電源電流IACを供給すると(信号POWがLレベルからHレベルへ移行)、検出信号MONE2がHレベルになる。
【0281】
そして、期間T3において、非常停止が解除されると(信号E−stopがHレベルからLレベルへ移行)、信号S1がLレベルからHレベルに変化する。そうすると、スイッチング素子S1aがオンされ、スイッチング素子S1aは、電源電流IACを負荷M1に供給する。電流検出回路244Aは、Hレベルの検出信号MONA2をCPU22へ出力する。そして、負荷M1は、電源電流IACによりオンし、Hレベルの主出力MM1を出力する(装置へ供給される電源電流IACからなる主出力MM1をHレベルの主出力MM1と表わしたものである)。
【0282】
その後、期間T4において、信号S2がLレベルからHレベルに変化するとスイッチング素子S2aがオンされる。この場合、スイッチング素子S1aは、Hレベルの信号S1に応じて継続してオンされる。その結果、検出信号MONA2およびMONB2が共にHレベルとなり、負荷M1は、継続してオンしている。
【0283】
期間T5において、信号S1がHレベルからLレベルに変化すると、スイッチング素子S1aがオフされ、検出信号MONA2がHレベルからLレベルに変化する。しかし、信号S2はHレベルを維持するので、スイッチング素子S2aは継続してオンされる。その結果、負荷M1は、継続してオンしている。
【0284】
期間T6における動作は、期間T4における動作と同じである。期間T7において、信号S2がHレベルからLレベルに変化するとスイッチング素子S2aがオフされる。そして、検出信号MONB2がHレベルからLレベルに変化する。この場合、信号S1はHレベルを維持しており、スイッチング素子S1aは継続してオンしており、検出信号MONA2はHレベルを維持する。そして、負荷M1は、継続してオンしている。
【0285】
期間T8における動作は、期間T4における動作と同じである。期間T9において信号S1がHレベルからLレベルに変化すると、スイッチング素子S1aがオフされる。そして、検出信号MONA2がHレベルからLレベルに変化する。この場合、信号S2はHレベルを維持しており、スイッチング素子S2aは継続してオンしており、検出信号MONB2はHレベルを維持する。そして、負荷M1は、継続してオンしている。
【0286】
期間T10において、信号E−stopがLレベルからHレベルに変化し、非常停止状態になると、信号S1およびS2がHレベルからLレベルに変化する。そして、検出信号MONA2およびMONB2はHレベルからLレベルに変化し、負荷M1はオフする。期間T11において交流電源1Aが電源電流IACの供給を停止し(信号POWがHレベルからLレベルに変化)、検出信号MONE2がHレベルからLレベルに変化する。
【0287】
期間T12において、信号E−stopがHレベルからLレベルに変化し、非常停止が解除されるが、交流電源1Aが電源電流IACの供給を停止しているので、信号S1およびS2はLレベルを維持しており、負荷M1は、継続してオフされる。
【0288】
信号S1は、期間T3およびT4においてHレベルを維持しており、信号S2は、期間T3においてLレベルであり、期間T4においてHレベルである。したがって、この期間T3およびT4は、図14に示すフローチャートのステップS36〜S43が実行される期間である。
【0289】
信号S2は、期間T5およびT6においてHレベルを維持しており、信号S1は、期間T5においてLレベルであり、期間T6においてHレベルである。したがって、この期間T5およびT6は、図14に示すフローチャートのステップS44〜S51が実行される期間である。
【0290】
そして、期間T7およびT8における動作は、期間T3およびT4における動作と同じであるので、期間T7および期間T8において、ステップS36〜S43が、再度、実行される。
【0291】
すなわち、安全出力制御がオンされていれば、図14に示すステップS36〜ステップS51が繰返し実行される。
【0292】
図16は、スイッチング素子S1aが開放により故障したときのタイムチャートを示す。なお、図16において点線は、正常動作時のタイムチャートを示す。図16を参照して、期間T3およびT7において信号S1はHレベルを維持しているにも拘わらず、検出信号MONA2はLレベルになっている。そして、期間T3およびT7において検出信号MONE2はHレベルを維持している。したがって、この期間T3またはT7における動作は、図14に示すフローチャートのステップS37において検出信号MONA2がHレベルでないと判定され、かつ、ステップS38において検出信号MONE2がLレベルでないと判定された動作に相当する。その結果、スイッチング素子S1aが開放により故障していると診断され、セーフティコントローラー20Aは、ロックアウト状態へ移行する。そして、セーフティコントローラー20Aがロックアウト状態に移行した段階で安全出力回路24Aは、全ての出力をオフ状態にするので、負荷M1,M2は遮断される。
【0293】
なお、期間T3においてスイッチング素子S1aが故障していると診断されると、セーフティコントローラー20Aは、直ちにロックアウト状態に移行し、それ以後の再起動が禁止される。
【0294】
その他の動作は、図15において説明した動作と同じである。
図17は、スイッチング素子S1aが短絡により故障したときのタイムチャートを示す。なお、図17において点線は、正常動作時のタイムチャートを示す。図17を参照して、期間T2,T5,T9,T10において、信号S1がLレベルを維持しているにも拘わらず、検出信号MONA2がHレベルを維持している。また、期間T2,T5,T9,T10において検出信号MONE2はHレベルを維持している。したがって、期間T2,T5,T9,T10における動作は、図14に示すフローチャートのステップS45において検出信号MONA2がLレベルでないと判定され、かつ、ステップS46において検出信号MONE2がLレベルでないと判定された動作に相当する。その結果、スイッチング素子S1aが短絡により故障していると診断され、セーフティコントローラー20Aは、ロックアウト状態へ移行する。そして、セーフティコントローラー20Aがロックアウト状態に移行した段階で安全出力回路24Aは、全ての出力をオフ状態にするので、負荷M1,M2は遮断される。
【0295】
なお、期間T2においてスイッチング素子S1aが故障していると診断されると、セーフティコントローラー20Aは、直ちにロックアウト状態に移行し、それ以後の再起動が禁止される。
【0296】
その他の動作は、図15において説明した動作と同じである。
図15〜図17に示すタイムチャートは、スイッチング回路241Aにおける動作のみを示すが、チャンネル回路が2個のチャンネル回路241A,242Aから構成される場合も同じ動作である。
【0297】
また、CPU22は、図14に示すフローチャートに従って安全出力回路24Aの導通機能および遮断機能を診断する場合、図14に示す各ステップを備えるプログラムをROMから読出し、その読み出したプログラムを実行して安全出力回路24Aの導通機能および遮断機能を診断する。
【0298】
したがって、図14に示す各ステップを備えるプログラムは、安全出力回路24Aの診断をコンピュータ(CPU22)に実行させるためのプログラムである。また、ROMは、安全出力回路24Aの診断をコンピュータ(CPU22)に実行させるためのプログラムを記録したコンピュータ(CPU22)読取り可能な記録媒体(ROM)に相当する。
【0299】
表2は、安全出力回路24Aのスイッチング素子S1a,S2a部分におけるFMEAを示す。
【0300】
【表2】
【0301】
表2から一例を挙げて説明すると、スイッチング素子S1aの故障モードとして開放(オープン)を想定すると、スイッチング素子S1aが開放状態になることによって出力制御状態を「オン」に設定したいにも拘わらず、検出信号MONA2がLレベルであり、スイッチング回路241Aの出力がオフされると言う影響が発生する。そして、スイッチング素子S1aの開放による故障を診断するためには検出信号MONA2を検出する機能を備えていればよい。
【0302】
他の故障モードについても同様に考えればよい。
表2に示す故障モードとその故障モードを診断する機能とを備えるセーフティコントローラー20Aは、国際規格IEC61508において安全度水準SIL3を達成し得るものである。
【0303】
なお、この発明においては、スイッチング素子S1aは、1つのスイッチング回路を構成し、スイッチング素子S2aは、1つのスイッチング回路を構成し、スイッチング素子S3aは、1つのスイッチング回路を構成し、スイッチング素子S4aは、1つのスイッチング回路を構成する。
【0304】
また、CPU22は、安全出力回路24Aの導通機能および遮断機能を診断する「診断手段」を構成する。
【0305】
さらに、電流検出回路244A〜247Aは、スイッチング回路の出力を検出する「検出回路」を構成する。
【0306】
さらに、上記においては、負荷は2個であり、その2個の負荷M1,M2に対応して2つのチャンネル回路241A,242Aが設けられると説明したが、この発明においては、これに限らず、一般的に、複数の負荷に対応して複数のチャンネル回路を設けてもよい。
【0307】
さらに、安全出力回路24Aのスイッチング素子S1a,S2a,S3a,S4aがリレーからなるとき、CPU22は、負荷M1,M2が反応しない期間よりも長い期間を設定して信号S1,S2,S3,S4を安全出力回路24Aへ出力し、安全出力回路24Aの導通機能および遮断機能を診断する。負荷M1,M2が反応しない程度の短いオフ期間を有する信号S1,S2,S3,S4を用いて安全出力回路24Aを診断した場合、リレーが振動し、接点の寿命が短くなる虞があるからである。
【0308】
上述したように、セーフティコントローラー20Aにおいては、安全出力回路24Aのチャンネル回路241A,242Aの各々において図14に示すフローチャートに従ってチャンネル回路241A,242Aの導通機能および遮断機能が負荷M1,M2にパルス出力を与えずに診断される。したがって、セーフティコントローラー20Aは、直流負荷のみならず交流負荷も安全出力を出力する対象にできる。
【0309】
また、負荷が反応しない程度に短いオフ期間を有する診断パルスを出力に用いなくてもチャンネル回路241A,242Aの導通機能および遮断機能を診断できる。その結果、負荷への要求事項をなくすことができ、診断パルスによる負荷への悪影響を考慮する必要がなくなる。
【0310】
さらに、スイッチング素子S1a,S2a,S3a,S4aにリレーを用いた安全出力回路においても、負荷M1,M2への出力をオンしたままチャンネル回路241A,242Aの導通機能および遮断機能を診断できる。その結果、出力が長時間オンし続ける用途であっても診断機能の低下を防止できる。
【0311】
さらに、本発明は、スイッチング素子S1a,S2a,S3a,S4aの出力を検出して安全出力回路24Aの導通機能および遮断機能を診断しているので、リレーを用いた安全出力回路において通常のリレーを使用できる。
【0312】
その他は、実施の形態1と同じである。
[実施の形態3]
図18を参照して、実施の形態3によるセーフティコントローラーを用いた制御システム102は、制御システム100のセーフティコントローラー20をセーフティコントローラー20Bに代えたものであり、その他は、制御システム100と同じである。
【0313】
セーフティコントローラー20Bは、セーフティコントローラー20の安全出力回路24を安全出力回路24Bに代えたものであり、その他は、セーフティコントローラー20と同じである。
【0314】
図19は、図18に示す安全出力回路24Bの構成図を示す。図19を参照して、安全出力回路24Bは、チャンネル回路241B,242Bを含む。
【0315】
チャンネル回路241Bは、負荷M1に対応して設けられ、チャンネル回路242Bは、負荷M2に対応して設けられる。そして、チャンネル回路241Bおよび負荷M1は、電源ライン2とアースライン3との間にチャンネル回路242Bおよび負荷M2に並列に接続される。
【0316】
なお、安全出力回路24Bにおいては、電源(1A,1B)からの電源電圧(VAC,VDC)の供給を監視する電圧検出回路が設けられていないので、安全出力回路24Bにおいては、電源電圧が、常時、供給されていることが必要である。
【0317】
チャンネル回路241Bは、スイッチング素子S1aからなる。スイッチング素子S1aは、電源ライン2と負荷M1との間に接続される。
【0318】
スイッチング素子S1aは、CPU22からHレベルの信号S1を受けるとオンされ、交流電源1Aから供給された電源電圧VACを負荷M1へ供給する。そして、負荷M1は、電源電圧VACによってオンされ、モータ等の装置に電源電圧を供給する。つまり、負荷M1は、Hレベルからなる主出力MM1を装置へ出力し、Lレベルからなる補助出力SM1をセーフティコントローラー20Bの安全入力回路25へ出力する。また、スイッチング素子S1aは、CPU22からLレベルの信号S1を受けるとオフされ、交流電源1Aから供給された電源電圧VACを負荷M1へ供給しない。そうすると、負荷M1は、オフされ、装置への電源電圧の供給を停止する。つまり、負荷M1は、Lレベルからなる主出力MM1を装置へ出力し、Hレベルからなる補助出力SM1をセーフティコントローラー20Bの安全入力回路25へ出力する。
【0319】
このように、チャンネル回路241Bは、CPU22からの信号S1の論理レベルに応じて交流電源1Aからの電源電圧VACを負荷M1へ供給し、または電源電圧VACの負荷M1への供給を停止する。
【0320】
チャンネル回路242Bは、スイッチング素子S2aからなる。スイッチング素子S2aは、電源ライン2と負荷M2との間に接続される。
【0321】
スイッチング素子S2aは、CPU22からHレベルの信号S2を受けるとオンされ、交流電源1Aから供給された電源電圧VACを負荷M2へ供給する。そして、負荷M2は、電源電圧VACによってオンされ、装置に電源電圧を供給する。つまり、負荷M2は、Hレベルからなる主出力MM1を装置へ出力し、Lレベルからなる補助出力SM2をセーフティコントローラー20Bの安全入力回路25へ出力する。また、スイッチング素子S2aは、CPU22からLレベルの信号S2を受けるとオフされ、交流電源1Aから供給された電源電圧VACを負荷M2へ供給しない。そうすると、負荷M2は、オフされ、装置への電源電圧の供給を停止する。つまり、負荷M2は、Lレベルからなる主出力MM2を装置へ出力し、Hレベルからなる補助出力SM2をセーフティコントローラー20Bの安全入力回路25へ出力する。
【0322】
このように、チャンネル回路242Bは、CPU22からの信号S2の論理レベルに応じて交流電源1Aからの電源電圧VACを負荷M2へ供給し、または電源電圧VACの負荷M2への供給を停止する。
【0323】
上述したように、安全出力回路24Bは、負荷M1,M2の個数と同じ個数のチャンネル回路241B,242Bを含み、負荷M1,M2に対応して設けられたチャンネル回路241B,242Bにより負荷M1,M2を導通/遮断する。
【0324】
図20は、安全出力回路24Bが負荷M1,M2を導通する導通機能および安全出力回路24Bが負荷M1,M2を遮断する遮断機能をCPU22,23によって診断するためのフローチャートを示す。
【0325】
一連の動作が開始されると、CPU22は、安全出力制御が行なわれているか否か、すなわち、安全出力制御がオンかオフかを判定する(ステップS61)。この場合、CPU22は、電源が投入され、セーフティコントローラー20Bが初期化されているか否かにより安全出力制御がオンされているかオフされているかを判定する。
【0326】
安全出力制御がオフされていると判定されると、CPU22は、スイッチング素子S1aをオフするためのLレベルの信号S1とスイッチング素子S2aをオフするためのLレベルの信号S2とを安全出力回路24Bへ出力する。
【0327】
そうすると、スイッチング素子S1aは、Lレベルの信号S1に応じてオフされ、スイッチング素子S2aは、Lレベルの信号S2に応じてオフされる(ステップS62)。そして、スイッチング素子S1aは、電源電圧VACの負荷M1への供給を停止し、スイッチング素子S2aは、電源電圧VACの負荷M2への供給を停止する。
【0328】
負荷M1は、主出力MM1を装置へ出力し、補助出力SM1をセーフティコントローラー20Bの安全入力回路25へ出力する。この場合、負荷M1は、スイッチング素子S1aが正常であれば、Hレベルの補助出力SM1をセーフティコントローラー20Bの安全入力回路25へ出力し、スイッチング素子S1aが短絡により故障していれば、Lレベルの補助出力SM1をセーフティコントローラー20Bの安全入力回路25へ出力する。
【0329】
また、負荷M2は、主出力MM2を装置へ出力し、補助出力SM2をセーフティコントローラー20Bの安全入力回路25へ出力する。この場合、負荷M2は、スイッチング素子S2aが正常であれば、Hレベルの補助出力SM2をセーフティコントローラー20Bの安全入力回路25へ出力し、スイッチング素子S2aが短絡により故障していれば、Lレベルの補助出力SM2をセーフティコントローラー20Bの安全入力回路25へ出力する。
【0330】
CPU23は、安全入力回路25から補助出力SM1,SM2を受け、その受けた補助出力SM1,SM2をCPU22へ出力する。そして、CPU22は、補助出力SM1がHレベルであるか否かを判定し、補助出力SM2がHレベルであるか否かを判定する(ステップS63)。補助出力SM1,SM2のうち、少なくともいずれか一方がHレベルでないとき、CPU22は、スイッチング素子S1a,S2aのいずれか一方が故障していると診断する。つまり、CPU22は、安全出力回路24Bが遮断機能を維持していないと診断する。そして、セーフティコントローラー20Bは、ロックアウト状態へ移行する(ステップS64)。
【0331】
一方、ステップS63において、補助出力SM1および補助出力SM2の両方がHレベルであると判定されたとき、CPU22は、安全出力回路24Bが遮断機能を維持していると診断する。そして、一連の動作がステップS61へ戻る。
【0332】
ステップS63において、補助出力SM1および補助出力SM2の両方がHレベルであると判定されたとき、CPU22は、さらに、Lレベルの信号S1およびS2を安全出力回路24Bへ出力してからHレベルの補助出力SM1およびSM2を受けるまでの時間、つまり、安全出力回路24Bの遮断機能の応答時間を診断する。
【0333】
ステップS61において安全出力制御がオンされていると判定されると、CPU22は、スイッチング素子S1aをオンするためのHレベルの信号S1とスイッチング素子S2aをオンするためのHレベルの信号S2とを安全出力回路24Bへ出力する。
【0334】
そうすると、スイッチング素子S1aは、Hレベルの信号S1によってオンされ、交流電源1Aからの電源電圧VACを負荷M1に供給する。また、スイッチング素子S2aは、Hレベルの信号S2によってオンされ、交流電源1Aからの電源電圧VACを負荷M2に供給する(ステップS65)。
【0335】
負荷M1は、電源電圧VACによってオンされ、Hレベルの主出力MM1を装置へ出力し、Lレベルの補助出力SM1をセーフティコントローラー20Bの安全入力回路25へ出力する。この場合、負荷M1は、スイッチング素子S1aが正常であれば、Lレベルの補助出力SM1をセーフティコントローラー20Bの安全入力回路25へ出力し、スイッチング素子S1aが開放により故障していれば、Hレベルの補助出力SM1をセーフティコントローラー20Bの安全入力回路25へ出力する。
【0336】
また、負荷M2は、電源電圧VACによってオンされ、Hレベルの主出力MM2を装置へ出力し、Lレベルの補助出力SM2をセーフティコントローラー20Bの安全入力回路25へ出力する。この場合、負荷M2は、スイッチング素子S2aが正常であれば、Lレベルの補助出力SM2をセーフティコントローラー20Bの安全入力回路25へ出力し、スイッチング素子S2aが開放により故障していれば、Hレベルの補助出力SM2をセーフティコントローラー20Bの安全入力回路25へ出力する。
【0337】
CPU22は、CPU23を介して安全入力回路25から補助出力SM1,SM2を受ける。そして、CPU22は、補助出力SM1がLレベルであるか否かを判定し、補助出力SM2がLレベルであるか否かを判定する(ステップS66)。補助出力SM1および補助出力SM2のうち、少なくともいずれか一方がLレベルでないとき、スイッチング素子S1a,S2aの少なくともいずれか一方が故障していると診断する。つまり、CPU22は、安全出力回路24Bが導通機能を維持していないと診断する。そして、セーフティコントローラー20Bは、ロックアウト状態へ移行する(ステップS64)。
【0338】
一方、ステップS66において、補助出力SM1および補助出力SM2の両方がLレベルであると判定されたとき、CPU22は、スイッチング素子S1a,S2aが正常であると診断する。つまり、CPU22は、安全出力回路24Bが導通機能を維持していると診断する。そして、一連の動作は、ステップS61へ戻り、上述したステップS61〜S66が繰返し実行される。
【0339】
ステップS66において、補助出力SM1および補助出力SM2の両方がLレベルであると判定されたとき、CPU22は、さらに、Hレベルの信号S1およびS2を安全出力回路24Bへ出力してからLレベルの補助出力SM1およびSM2を受けるまでの時間、つまり、安全出力回路24Bの導通機能の応答時間を診断する。
【0340】
このように、実施の形態3においては、安全出力回路24Bの導通機能および遮断機能を診断し、さらに、安全出力回路24Bの導通機能および遮断機能の応答時間を診断することを特徴とする。
【0341】
そして、安全出力回路24Bの診断においては、負荷M1,M2の補助出力SM1,SM2が用いられており、安全出力回路24Bの遮断機能が維持されていることの診断は、安全出力回路24Bの出力がオフされているときに(ステップS61において安全出力制御がオフされていると判定された場合)、Hレベルの補助出力SM1およびSM2を検出すること、すなわち、負荷M1,M2の補助接点が閉じていることを確認することにより行なわれる。したがって、セーフティコントローラー20Bは、出力が、長時間、オンし続ける用途には適さない。
【0342】
セーフティコントローラー20Bは、負荷M1,M2の補助出力SM1,SM2を用いて安全出力回路24Bの導通機能および遮断機能を診断するので、セーフティコントローラー20Bが対象とする負荷は、電磁開閉器等のフィードバック出力を備えた負荷に限られる。
【0343】
図21は、セーフティコントローラー20Bの正常動作時のタイムチャートを示す。図21を参照して、期間T1において、交流電源1Aが電源電圧VACを供給しているが(信号POWがHレベル)、セーフティコントローラー20Bは、非常停止状態(信号E−stopがHレベル)にあり、信号S1がLレベルである。その結果、負荷M1は遮断され、補助出力SM1はHレベルである。
【0344】
期間T2において、非常停止が解除され(信号E−stopがHレベルからLレベルに変化)、交流電源1Aが電源電圧VACを継続して供給すると(信号POWがHレベルへ維持)、信号S1はHレベルであり、スイッチング素子S1aはオンされる。そして、スイッチング素子S1aは、電源電圧VACを負荷M1に供給し、負荷M1は、オンされ、Lレベルの補助出力SM1をセーフティコントローラー20Bの安全入力回路25へ出力する。
【0345】
そして、期間T3において、再び、非常停止状態になると(信号E−stopがLレベルからHレベルへ移行)、信号S1がHレベルからLレベルに変化する。そうすると、スイッチング素子S1aがオフされ、スイッチング素子S1aは、電源電圧VACを負荷M1に供給しない。そして、負荷M1は、オフされ、Hレベルの補助出力SM1を出力する。
【0346】
図22は、スイッチング素子S1aが開放により故障したときのタイムチャートを示す。なお、図22において点線は、正常動作時のタイムチャートを示す。図22を参照して、期間T2において信号S1はHレベルを維持しているにも拘わらず、補助出力SM1はHレベルを維持している。したがって、スイッチング素子S1aが開放により故障していると診断され、セーフティコントローラー20Bは、ロックアウト状態へ移行する。そして、セーフティコントローラー20Bがロックアウト状態に移行した段階で安全出力回路24Bは、全ての出力をオフ状態にするので、負荷M1,M2は遮断される。
【0347】
なお、期間T2においてスイッチング素子S1aが故障していると診断されると、セーフティコントローラー20Bは、直ちにロックアウト状態に移行し、それ以後の再起動が禁止される。
【0348】
その他の動作は、図21において説明した動作と同じである。
図23は、スイッチング素子S1aが短絡により故障したときのタイムチャートを示す。なお、図23において点線は、正常動作時のタイムチャートを示す。図23を参照して、期間T1,T3において、信号S1がLレベルを維持しているにも拘わらず、補助出力SM1はLレベルを維持している。したがって、スイッチング素子S1aが短絡により故障していると診断され、セーフティコントローラー20Bは、ロックアウト状態へ移行する。そして、セーフティコントローラー20Bがロックアウト状態に移行した段階で安全出力回路24Bは、全ての出力をオフ状態にするので、負荷M1,M2は遮断される。
【0349】
なお、期間T1においてスイッチング素子S1aが故障していると診断されると、セーフティコントローラー20Bは、直ちにロックアウト状態に移行し、それ以後の再起動が禁止される。
【0350】
その他の動作は、図21において説明した動作と同じである。
図21〜図23に示すタイムチャートは、スイッチング回路241Bにおける動作のみを示すが、チャンネル回路が2個のチャンネル回路241B,242Bから構成される場合も同じ動作である。
【0351】
また、CPU22は、図20に示すフローチャートに従って安全出力回路24Bの導通機能および遮断機能とそれらの応答時間とを診断する場合、図20に示す各ステップを備えるプログラムをROMから読出し、その読み出したプログラムを実行して安全出力回路24Bの導通機能および遮断機能とそれらの応答時間とを診断する。
【0352】
したがって、図20に示す各ステップを備えるプログラムは、安全出力回路24Bの診断をコンピュータ(CPU22,23)に実行させるためのプログラムである。また、ROMは、安全出力回路24Bの診断をコンピュータ(CPU22,23)に実行させるためのプログラムを記録したコンピュータ(CPU22,23)読取り可能な記録媒体(ROM)に相当する。
【0353】
表3は、安全出力回路24Bのスイッチング素子S1a,S2a部分におけるFMEAを示す。
【0354】
【表3】
【0355】
表3から一例を挙げて説明すると、スイッチング素子S1aの故障モードとして開放(オープン)を想定すると、スイッチング素子S1aが開放状態になることによって、出力制御状態を「オン」に設定したいにも拘わらず、負荷M1が常時オフされる、と言う影響が発生する。そして、スイッチング素子S1aの開放による故障を診断するためには負荷M1の補助接点を監視する機能を備えていればよい。
【0356】
他の故障モードについても同様に考えればよい。
表3に示す故障モードとその故障モードを診断する機能とを備えるセーフティコントローラー20Bは、国際規格IEC61508において安全度水準SIL2を達成し得るものである。
【0357】
なお、この発明においては、スイッチング素子S1aは、1つのスイッチング回路を構成し、スイッチング素子S2aは、1つのスイッチング回路を構成する。
【0358】
また、CPU22,23は、安全出力回路24Bの導通機能および遮断機能とそれらの応答時間とを診断する「診断手段」を構成する。
【0359】
さらに、上記においては、負荷は2個であり、その2個の負荷M1,M2に対応して2つのチャンネル回路241B,242Bが設けられると説明したが、この発明においては、これに限らず、一般に、複数の負荷に対応して複数のチャンネル回路を設けてもよい。
【0360】
さらに、安全出力回路24Bのスイッチング素子S1a,S2aがリレーからなるとき、CPU22は、負荷M1,M2が反応しない期間よりも長い期間を設定して信号S1,S2を安全出力回路24Bへ出力し、安全出力回路24Bの導通機能および遮断機能とそれらの応答時間とを診断する。負荷M1,M2が反応しない程度の短いオフ期間を有する信号S1,S2を用いて安全出力回路24Bを診断した場合、リレーが振動し、接点の寿命が短くなる虞があるからである。
【0361】
さらに、上記においては、安全出力回路24Bの遮断機能および導通機能の応答時間を診断すると説明したが、その診断した応答時間に基づいてスイッチング素子S1a,S2aが劣化しているか否かを診断するようにしてもよい。すなわち、応答時間が基準値よりも長くなればスイッチング素子S1a,S2aが劣化していると診断するようにしてもよい。
【0362】
上述したように、セーフティコントローラー20Bにおいては、安全出力回路24Bのチャンネル回路241B,242Bの各々において図20に示すフローチャートに従ってチャンネル回路241B,242Bの導通機能および遮断機能とそれらの応答時間とが負荷M1,M2にパルス出力を与えずに診断される。したがって、セーフティコントローラー20Bは、直流負荷のみならず交流負荷も安全出力を出力する対象にできる。
【0363】
また、負荷が反応しない程度に短いオフ期間を有する診断パルスを出力に用いなくてもチャンネル回路241B,242Bの導通機能および遮断機能とそれらの応答時間とを診断できる。その結果、負荷への要求事項をなくすことができ、診断パルスによる負荷への悪影響を考慮する必要がなくなる。
【0364】
さらに、本発明は、スイッチング素子S1a,S2aの出力を検出して(補助出力SM1,SM2を検出することは、スイッチング素子S1a,S2aの出力を検出することに相当する)安全出力回路24Bの導通機能および遮断機能とそれらの応答時間とを診断しているので、リレーを用いた安全出力回路において通常のリレーを使用できる。
【0365】
その他は、実施の形態1と同じである。
[実施の形態4]
図24を参照して、実施の形態4によるセーフティコントローラーを用いた制御システム103は、制御システム100のセーフティコントローラー20をセーフティコントローラー20Cに代えたものであり、その他は、制御システム100と同じである。
【0366】
セーフティコントローラー20Cは、セーフティコントローラー20のCPU22をCPU22Aに代えたものであり、その他は、セーフティコントローラー20と同じである。
【0367】
CPU22Aは、安全出力回路24に含まれる2つのチャンネル回路241,242の出力タイミングをずらせて安全出力回路24の遮断機能および導通機能の診断を行なう。
【0368】
図25は、セーフティコントローラー20Cと負荷M1,M2との関係を示す。セーフティコントローラー20Cは、出力OUTAにより負荷M1を導通/遮断し、出力OUTBにより負荷M2を導通/遮断する。そして、セーフティコントローラー20Cは、出力OUTAおよびOUTBをタイミングをずらせて、それぞれ、負荷M1,M2へ出力する。これにより、2つのチャンネル回路が短絡しているか否かを診断できる。
【0369】
図26は、セーフティコントローラー20Cの正常動作時のタイムチャートである。図26を参照して、期間T1において出力OUTAおよびOUTBはLレベルを維持しているので、負荷M1,M2は、Hレベルの補助出力SM1,SM2をセーフティコントローラー20Cの安全入力回路25へ出力する。
【0370】
期間T2において、出力OUTAがLレベルからHレベルに変化すると、負荷M1は、Hレベルの出力OUTAに応じてオンされ、Lレベルの補助出力SM1をセーフティコントローラー20Cの安全入力回路25へ出力する。この期間T2において、出力OUTBはLレベルを維持しているので、負荷M2は、継続してオフされ、Hレベルの補助出力SM2をセーフティコントローラー20Cの安全入力回路25へ出力する。
【0371】
期間T3において、出力OUTBがLレベルからHレベルに変化すると、負荷M2は、Hレベルの出力OUTBに応じてオンされ、Lレベルの補助出力SM2をセーフティコントローラー20Cの安全入力回路25へ出力する。この期間T3において、出力OUTAはHレベルを維持しているので、負荷M1は継続してオンされ、Lレベルの補助出力SM1をセーフティコントローラー20Cの安全入力回路25へ出力する。
【0372】
期間T4において、出力OUTAおよびOUTBがHレベルからLレベルに変化すると、負荷M1,M2はオフされ、それぞれ、Hレベルの補助出力SM1およびSM2をセーフティコントローラー20Cの安全入力回路25へ出力する。
【0373】
図27は、2つのチャンネル回路間が短絡した場合のセーフティコントローラー20Cの動作を示すタイムチャートである。なお、点線は、正常時のタイムチャートである。期間T2において、出力OUTAがLレベルからHレベルに変化し、出力OUTBがLレベルを維持する。
【0374】
負荷M1は、Hレベルの出力OUTAに応じてオンされ、Lレベルの補助出力SM1をセーフティコントローラー20Cの安全入力回路25へ出力する。負荷M2は、出力OUTBがLレベルを維持しているにも拘わらず、オンされ、Lレベルの補助出力SM2をセーフティコントローラー20Cの安全入力回路25へ出力する。したがって、2つのチャンネル回路が短絡し、負荷M1を導通させるチャンネル回路の出力が負荷M2にも供給され、負荷M2がオンされたものと想定される。
【0375】
このように、出力OUTA,OUTBを異なるタイミングでそれぞれ負荷M1,M2へ出力することにより、負荷M1,M2をそれぞれ導通/遮断する2つのチャンネル回路間における短絡を診断できる。
【0376】
セーフティコントローラー20Cにおいては、安全出力回路24に代えて安全出力回路24Aまたは安全出力回路24Bが用いられてもよい。そして、安全出力回路24Bが用いられる場合、出力OUTA,OUTBに対する応答は、上述したように、負荷M1,M2の補助出力SM1,SM2により診断される。
【0377】
しかし、安全出力回路24または24Aが用いられる場合、出力OUTA,OUTBに対する応答は、必ずしも負荷M1,M2の補助出力SM1,SM2により診断されなくてもよく、検出信号MONA1,MONB1,MONC1,MOND1,MONA2,MONB2,MONC2,MOND2により診断されてもよい。
【0378】
なお、セーフティコントローラー20Cは、国際規格IEC61508において安全度水準SIL3を達成し得るものである。
【0379】
その他は、実施の形態1から実施の形態3と同じである。
[実施の形態5]
図28を参照して、実施の形態5によるセーフティコントローラーを用いた制御システム104は、制御システム100のセーフティコントローラー20をセーフティコントローラー20Dに代えたものであり、その他は、制御システム100と同じである。
【0380】
セーフティコントローラー20Dは、セーフティコントローラー20の安全入力回路25を安全入力回路25Aに代えたものであり、その他は、セーフティコントローラー20と同じである。
【0381】
図29は、図28に示すCPU23および安全入力回路25Aの機能ブロック図を示す。図29を参照して、CPU23は、CPU出力部231,233とCPU入力部232,234とを含む。安全入力回路25Aは、補助出力監視回路251A,252Aを含む。
【0382】
補助出力監視回路251Aは、負荷M1に対応して設けられ、補助出力監視回路252Aは、負荷M2に対応して設けられる。CPU出力部231およびCPU入力部232は、補助出力監視回路251Aに対応して設けられ、CPU出力部233およびCPU入力部234は、補助出力監視回路252Aに対応して設けられる。
【0383】
補助出力監視回路251Aは、スイッチング回路253と入力回路254とを含む。補助出力監視回路252Aは、スイッチング回路255と入力回路256とを含む。
【0384】
CPU出力部231は、スイッチング回路253をオン/オフするための信号S5をスイッチング回路253へ出力する。CPU入力部232は、負荷M1の補助接点の状態を示す信号SSM1を入力回路254から受け、その受けた信号SSM1に基づいてスイッチング回路253および入力回路254を診断する。
【0385】
スイッチング回路253は、電源ノードVCCと負荷M1の補助接点との間に接続される。そして、スイッチング回路253は、CPU出力部231からのHレベルの信号S5に応じて電源電圧VACを負荷M1の補助接点へ供給し、CPU出力部231からのLレベルの信号S5に応じて電源電圧VACの負荷M1の補助接点への供給を停止する。
【0386】
負荷M1の補助接点は、スイッチング回路253から電源電圧VACが供給されると閉じ、電源電圧VACからなる補助出力SM1を入力回路254へ出力する。また、負荷M1の補助接点は、スイッチング回路253からの電源電圧VACの供給が停止されると開き、0Vからなる補助出力SM1を入力回路254へ出力する。
【0387】
入力回路254は、負荷M1の補助接点からの補助出力SM1を信号SSM1に変換してCPU入力部232へ出力する。
【0388】
CPU出力部233は、スイッチング回路255をオン/オフするための信号S6をスイッチング回路255へ出力する。CPU入力部234は、負荷M2の補助接点の状態を示す信号SSM2を入力回路256から受け、その受けた信号SSM2に基づいてスイッチング回路255および入力回路256を診断する。
【0389】
スイッチング回路255は、電源ノードVCCと負荷M2の補助接点との間に接続される。そして、スイッチング回路255は、CPU出力部233からのHレベルの信号S6に応じて電源電圧VACを負荷M2の補助接点へ供給し、CPU出力部233からのLレベルの信号S6に応じて電源電圧VACの負荷M2の補助接点への供給を停止する。
【0390】
負荷M2の補助接点は、スイッチング回路255から電源電圧VACが供給されると閉じ、電源電圧VACからなる補助出力SM2を入力回路256へ出力する。また、負荷M2の補助接点は、スイッチング回路255からの電源電圧VACの供給が停止されると開き、0Vからなる補助出力SM2を入力回路256へ出力する。
【0391】
入力回路256は、負荷M1の補助接点からの補助出力SM2を信号SSM2に変換してCPU入力部234へ出力する。
【0392】
このように、安全入力回路25Aは、2個の負荷M1,M2に対応して設けられた2つの補助出力監視回路251A,252Aを含み、CPU23は、補助出力監視回路251A,252Aを診断する。そして、補助出力監視回路251A,252Aは、対応する負荷M1,M2の補助接点をオン/オフするスイッチング回路253,255を含む。
【0393】
図30は、セーフティコントローラー20DのCPU23および安全入力回路25Aの正常動作時のタイムチャートである。なお、図30は、CPU出力部231、CPU入力部232、補助出力監視回路251Aおよび負荷M1の系についてのみ示すが、CPU出力部233、CPU入力部234、補助出力監視回路252Aおよび負荷M2の系についても同じである。
【0394】
図30を参照して、スイッチング回路253が信号S5の論理レベルに応じてオン/オフされると、負荷M1の補助接点は、スイッチング回路253のオン/オフに同期してオン/オフされ、負荷M1は、スイッチング回路253のオン/オフに同期してHレベル/Lレベルの論理レベルを有する補助出力SM1を入力回路254へ出力する。入力回路254は、補助出力SM1を信号SSM1へ変換してCPU入力部232へ出力する。CPU入力部232は、信号SSM1に基づいて、スイッチング回路253および入力回路254(すなわち、補助出力監視回路251A)が正常であると診断する。
【0395】
スイッチング回路253および入力回路254のいずれかが故障した場合、信号S5によるスイッチング波形が、信号SSM1の入力点でLレベルを維持しままとなり、スイッチング回路253および入力回路254のいずれかが異常と診断される。
【0396】
このように、セーフティコントローラー20Dは、安全出力回路24のみならず、負荷M1,M2からのフィードバック応答を受ける安全入力回路25Aを診断する機能を有する。そして、セーフティコントローラー20Dは、国際規格IEC61508において安全度水準SIL3を達成し得るものである。
【0397】
なお、セーフティコントローラー20Dにおいては、安全出力回路24に代えて、安全出力回路24Aまたは24Bが用いられてもよい。
【0398】
その他は、実施の形態1〜実施の形態3と同じである。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【図1】 実施の形態1における制御システムを示す概略ブロック図である。
【図2】 図1に示すセーフティコントローラーの状態遷移図である。
【図3】 図1に示す安全出力回路の構成図である。
【図4】 図1に示す2つの負荷の主出力を示す図である。
【図5】 図1に示す安全入力回路の具体例を示す図である。
【図6】 図1に示す安全出力回路が2つの負荷を導通する導通機能および安全出力回路が2つの負荷を遮断する遮断機能をCPUによって診断するためのフローチャートである。
【図7】 図1に示すセーフティコントローラーの正常動作時のタイムチャートである。
【図8】 図1に示すセーフティコントローラーの故障時のタイムチャートである。
【図9】 図1に示すセーフティコントローラーの故障時の他のタイムチャートである。
【図10】 図1に示すセーフティコントローラーの故障時のさらに他のタイムチャートである。
【図11】 図1に示すセーフティコントローラーの故障時のさらに他のタイムチャートである。
【図12】 実施の形態2における制御システムを示す概略ブロック図である。
【図13】 図12に示す安全出力回路の構成図である。
【図14】 図12に示す安全出力回路が2つの負荷を導通する導通機能および安全出力回路が2つの負荷を遮断する遮断機能をCPUによって診断するためのフローチャートである。
【図15】 図12に示すセーフティコントローラーの正常動作時のタイムチャートである。
【図16】 図12に示すセーフティコントローラーの故障時のタイムチャートである。
【図17】 図12に示すセーフティコントローラーの故障時の他のタイムチャートである。
【図18】 実施の形態3における制御システムを示す概略ブロック図である。
【図19】 図18に示す安全出力回路の構成図である。
【図20】 図18に示す安全出力回路が2つの負荷を導通する導通機能および安全出力回路が2つの負荷を遮断する遮断機能をCPUによって診断するためのフローチャートである。
【図21】 図18に示すセーフティコントローラーの正常動作時のタイムチャートである。
【図22】 図18に示すセーフティコントローラーの故障時のタイムチャートである。
【図23】 図18に示すセーフティコントローラーの故障時の他のタイムチャートである。
【図24】 実施の形態4における制御システムを示す概略ブロック図である。
【図25】 図24に示すセーフティコントローラーと負荷との関係を示す図である。
【図26】 図24に示すセーフティコントローラーの正常動作時のタイムチャートである。
【図27】 図24に示すセーフティコントローラーの故障時のタイムチャートである。
【図28】 実施の形態5における制御システムを示す概略ブロック図である。
【図29】 図28に示すCPUおよび安全入力回路の機能ブロック図である。
【図30】 図28に示すセーフティコントローラーの正常動作時のタイムチャートである。
【図31】 従来のセーフティコントローラーを用いた制御システムを示す概略ブロック図である。
【図32】 従来の他のセーフティコントローラーを用いた制御システムを示す概略ブロック図である。
【図33】 図32に示す安全出力回路のブロック図である。
【図34】 診断パルスの波形図である。
【符号の説明】
1A 交流電源、1B 直流電源、2 電源ライン、3 アースライン、10,210 センサー/スイッチ類、20,20A,20B,20C,20D,220,310 セーフティコントローラー、21,25,25A,221,224,311,315 安全入力回路、22,22A,23,312,313 CPU、24,24A,24B,223,314 安全出力回路、30,230 制御対象、100〜104,200,300 制御システム、222 リレー制御回路、231,233 CPU出力部、232,234 CPU入力部、235,M1,M2 負荷、241,241A,241B,242,242A,242B チャンネル回路、243〜247 電圧検出回路、243A,244A,245A,246A,247A 電流検出回路、251,251A,252,252A 補助出力監視回路、253,255,3141 スイッチング回路、254,256,3142 入力回路、S1a,S1b,S2a,S2b,S3a,S3b,S4a,S4b スイッチング素子、N1〜N8 ノード、VCC 電源ノード、GND 接地ノード。
Claims (6)
- 負荷を導通/遮断する安全出力回路と、
前記安全出力回路にのみ診断信号を与えて、前記安全出力回路が前記負荷を導通する導通機能および前記安全出力回路が前記負荷を遮断する遮断機能を診断手段とを備え、
前記負荷は、複数の負荷素子から成り、
前記安全出力回路は、前記複数の負荷素子に対応して設けられ、各々が対応する負荷素子を導通/遮断する複数のチャンネル回路を含み、
前記複数のチャンネル回路の各々は、
前記対応する負荷素子と電源との間に配置され、相互に並列に接続された第1および第2のスイッチング回路と、
前記第1および第2のスイッチング回路の出力を検出する検出回路とから成り、
前記診断手段は、前記複数のチャンネル回路の各々において、前記第1および第2のスイッチング回路を開閉したときの前記検出回路からの検出信号に基づいて前記安全出力回路の前記導通機能および前記遮断機能を診断し、
前記第1のスイッチング回路は、前記対応する負荷素子と前記電源との間に直列に接続された第1および第2のスイッチング素子から成り、
前記第2のスイッチング回路は、前記対応する負荷素子と前記電源との間に直列に接続された第3および第4のスイッチング素子から成り、
前記検出回路は、
前記第1のスイッチング素子と前記第2のスイッチング素子との間の第1の電圧を検出し、その検出した第1の電圧の電圧レベルに応じた論理レベルを有する第1の検出信号を出力する第1の電圧検出器と、
前記第3のスイッチング素子と前記第4のスイッチング素子との間の第2の電圧を検出し、その検出した第2の電圧の電圧レベルに応じた論理レベルを有する第2の検出信号を出力する第2の電圧検出器とから成り、
前記診断手段は、前記第1および第2のスイッチング素子を同時にオンさせ、かつ、前記第3および第4のスイッチング素子を同時にオフさせる第1の診断信号と、前記第1および第2のスイッチング素子を同時にオフさせ、かつ、前記第3および第4のスイッチング素子を同時にオンさせる第2の診断信号と、前記第1から第4のスイッチング素子を同時にオンさせる第3の診断信号とを前記安全出力回路へ出力し、前記第1および第2の検出信号の論理レベルに基づいて前記導通機能および前記遮断機能を診断する、セーフティコントローラー。 - 前記診断手段は、診断するタイミングを所定の時間づつずらせながら前記複数のチャンネル回路の各々において、前記安全出力回路の前記導通機能および前記遮断機能を診断する、請求項1に記載のセーフティコントローラー。
- 前記診断手段は、第1、第2および第3の条件が満たされたとき前記安全出力回路が前記導通機能および前記遮断機能を維持していると診断し、前記第1および第2の条件のうち少なくとも一方の条件が満たされないとき前記安全出力回路が前記導通機能または前記遮断機能を維持していないと診断し、前記第3の条件が満たされないとき前記安全出力回路が前記導通機能を維持していないと診断し、
前記第1の条件は、前記第1の診断信号が前記安全出力回路へ出力されたときの前記第1および第2の検出信号の論理レベルがそれぞれ第1の論理レベルおよび第2の論理レベルであることであり、
前記第2の条件は、前記第2の診断信号が前記安全出力回路へ出力されたときの前記第1および第2の検出信号の論理レベルがそれぞれ第2の論理レベルおよび第1の論理レベルであることであり、
前記第3の条件は、前記第3の診断信号が前記安全出力回路へ出力されたときの前記第1および第2の検出信号の論理レベルが第1の論理レベルであることである、請求項1または請求項2に記載のセーフティコントローラー。 - 前記安全出力回路は、前記電源が供給する電源電圧を検出し、その検出した電源電圧の電圧レベルに応じた論理レベルを有する第3の検出信号を出力する電源電圧検出回路をさらに含み、
前記診断手段は、前記第1および第3の診断信号のいずれか一方の診断信号を前記安全出力回路へ出力したときの前記第1の検出信号の論理レベルが前記第2の論理レベルであるとき、または前記第2の診断信号を前記安全出力回路へ出力したときの前記第1の検出信号の論理レベルが前記第1の論理レベルであるとき、前記第3の検出信号の論理レベルをさらに診断し、前記第3の検出信号の論理レベルが前記第1の論理レベルであるとき前記第1、第2および第3の条件のいずれかが満たされていないと診断する、請求項3に記載のセーフティコントローラー。 - 前記第1から第4のスイッチング素子の各々は、リレーであり、
前記診断手段は、前記第1および第2のスイッチング素子並びに前記第3および第4のスイッチング素子のいずれか一方により前記負荷を導通させたまま、前記第1および第2のスイッチング素子並びに前記第3および第4のスイッチング素子のいずれか他方の前記導通機能および前記遮断機能を診断する、請求項1から請求項4のいずれか1項に記載のセーフティーコントローラー。 - 前記複数の負荷素子に対応して設けられ、各々が対応する負荷素子の出力状態を示す補助出力を受ける複数の補助出力監視回路をさらに備え、
前記診断手段は、前記複数の補助出力監視回路からの複数の補助出力に基づいて前記複数のチャンネル回路の各々の応答時間をさらに診断する、請求項1から請求項5のいずれか1項に記載のセーフティーコントローラー。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003201848A JP4429650B2 (ja) | 2003-07-25 | 2003-07-25 | セーフティコントローラー |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003201848A JP4429650B2 (ja) | 2003-07-25 | 2003-07-25 | セーフティコントローラー |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005044074A JP2005044074A (ja) | 2005-02-17 |
JP4429650B2 true JP4429650B2 (ja) | 2010-03-10 |
Family
ID=34261791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003201848A Expired - Lifetime JP4429650B2 (ja) | 2003-07-25 | 2003-07-25 | セーフティコントローラー |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4429650B2 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4349231B2 (ja) | 2004-07-30 | 2009-10-21 | 株式会社ジェイテクト | プログラマブルコントローラ |
JP2010108131A (ja) * | 2008-10-29 | 2010-05-13 | Yokogawa Electric Corp | スイッチング装置 |
JP4992882B2 (ja) * | 2008-10-29 | 2012-08-08 | 横河電機株式会社 | スイッチング装置 |
JP2010108130A (ja) * | 2008-10-29 | 2010-05-13 | Yokogawa Electric Corp | スイッチング装置 |
DE102008060010A1 (de) * | 2008-11-25 | 2010-06-02 | Pilz Gmbh & Co. Kg | Sicherheitssteuerung und Verfahren zum Steuern einer automatisierten Anlage |
JP4817084B2 (ja) * | 2010-03-30 | 2011-11-16 | 株式会社安川電機 | モータ駆動システム及びモータ制御装置 |
US9628065B2 (en) * | 2012-10-05 | 2017-04-18 | Fisher-Rosemount Systems, Inc. | Safety instrumented process control apparatus and methods |
DE102013111035A1 (de) * | 2012-10-05 | 2014-04-10 | Fisher-Rosemount Systems, Inc. | Mit Sicherheitsinstrumenten ausgestattete Prozesssteuerungsvorrichtung und -verfahren |
DE112012007178B4 (de) | 2012-12-12 | 2022-02-10 | Mitsubishi Electric Corporation | Schaltungsfehler-Detektionsvorrichtung |
CN106104950B (zh) | 2014-03-26 | 2018-03-02 | 三菱电机株式会社 | 电力切断装置 |
-
2003
- 2003-07-25 JP JP2003201848A patent/JP4429650B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2005044074A (ja) | 2005-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5418304B2 (ja) | 電力変換器 | |
JP4870149B2 (ja) | 電気負荷部の安全な切断用の安全スイッチング装置 | |
JP4429650B2 (ja) | セーフティコントローラー | |
JP6981616B2 (ja) | 安全計装プロセス制御装置、並びに、方法 | |
EP3166218B1 (en) | Power converter | |
JP4992882B2 (ja) | スイッチング装置 | |
US11336281B2 (en) | Output module for industrial control system | |
JP3990669B2 (ja) | 負荷の故障診断方法及び装置並びに負荷の故障処理方法及び装置 | |
JP7459469B2 (ja) | 産業用制御装置の出力モジュール | |
JP2621481B2 (ja) | 駆動回路の診断方式 | |
JP4584095B2 (ja) | モータ駆動回路 | |
JP3630583B2 (ja) | フェールセーフスイッチのオンライン診断方法および装置 | |
JP4788569B2 (ja) | 出力装置 | |
JP2020089137A (ja) | 電磁ブレーキ制御装置及び制御装置 | |
JP4415384B2 (ja) | デジタル出力装置およびデジタル出力装置を用いた診断方法 | |
JP5740791B2 (ja) | ディジタル出力回路 | |
JP2010108131A (ja) | スイッチング装置 | |
JPH0646522A (ja) | 遮断器用操作制御回路の常時監視装置 | |
JP4088967B2 (ja) | 出力接点装置の診断回路 | |
JPS63144704A (ja) | 鉄道信号用出力リレーの駆動回路 | |
JP2010146841A (ja) | 故障診断装置および故障診断方法 | |
JP3695234B2 (ja) | アナログ信号出力装置 | |
JP2010108130A (ja) | スイッチング装置 | |
JP5316206B2 (ja) | 駆動回路 | |
JP2005295655A (ja) | 駆動回路用状態検出回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060613 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090512 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090709 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091201 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091216 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121225 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4429650 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131225 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |