(57)【要約】  ＣＰＵユニット（１）と、ＣＰＵユニット（１）により制御され、共通コネクタ（３）を介して連結された各種ユニットである入出力ユニット（２）、エンドカバー（４）、分岐ユニット（６）および増設ユニット（７）と、ＣＰＵユニット（１）および各種ユニット内を通して設けられ、ＣＰＵユニット（１）および各種ユニットを接続する内部バス（５）と、各種ユニットの各々に共通して設けられ、内部バス（５）の異常検出のための異常検出用データを保持するバスＩ／Ｆ（９）と、を有し、ＣＰＵユニット（１）は、各種ユニットのバスＩ／Ｆ（９）から読み出した異常検出用データを照合することにより、内部バス（５）の異常箇所を検出する。
2012127612.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵユニットと、
前記ＣＰＵユニットにより制御され、共通コネクタを介して連結された各種ユニットと、
前記ＣＰＵユニットおよび前記各種ユニット内を通して設けられ、前記ＣＰＵユニットおよび前記各種ユニットを接続する内部バスと、
前記各種ユニットの各々に共通して設けられ、前記内部バスの異常検出のための異常検出用データを保持するバスインタフェースと、を有し、
前記ＣＰＵユニットは、前記各種ユニットの前記バスインタフェースから読み出した前記異常検出用データを照合することにより、前記内部バスの異常箇所を検出することを特徴とするプログラマブルロジックコントローラ。
【請求項２】
前記ＣＰＵユニットを含む基本ブロックと、
増設ケーブルを介して前記基本ブロックに連結された増設ブロックと、を有し、
前記基本ブロックは、前記内部バスを分岐させたうちの一つが前記増設ケーブルに接続可能とされた分岐ユニットを有し、
前記分岐ユニットは、前記増設ケーブルの抜けを検出するための増設ケーブル抜け情報を、前記バスインタフェースにおいて保持し、
前記ＣＰＵユニットは、前記分岐ユニットの前記バスインタフェースから読み出した前記増設ケーブル抜け情報から、前記増設ケーブルの接続状態を検出することを特徴とする請求項１に記載のプログラマブルロジックコントローラ。
【請求項３】
前記ＣＰＵユニットは、前記内部バスに通信異常が有ると判断した場合に、前記通信異常が発生した前記各種ユニットあるいは前記増設ケーブルを特定し、エラー通知を行うことを特徴とする請求項２に記載のプログラマブルロジックコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブルロジックコントローラにおける内部バスの通信異常時の処理に関するものである。
【背景技術】
【０００２】
従来、ファクトリーオートメーションの分野では、複数のユニットから構成されるビルディングブロック型のプログラマブルロジックコントローラが使用されている。プログラマブルロジックコントローラに関しては、外部装置との間におけるバスの接続状態をハードウェア回路により検出し、その情報をＣＰＵに格納する技術が提案されている（例えば、特許文献１、３および４参照）。また、例えば、特許文献２には、プログラマブルロジックコントローラの入力スレーブユニットと外部機器との接続における断線や短絡等の状態を検知して、通信異常がある箇所を特定する技術が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２６９０１３号公報
【特許文献２】特開２００５−１４９２９４号公報
【特許文献３】特開２０１０−５５３８４号公報
【特許文献４】特開平１０−７４１０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来の技術による異常検出は、バス信号の経路が単一のコネクタ、あるいはバックプレーンのベースユニットを介して接続されたものであって、ＣＰＵユニットと各ユニットとに単独の内部バスがある場合に適用可能である。ユニット同士を直接連結して構築される、いわゆるベースレスタイプのシステムでは、バス信号の経路はユニットを介して接続されたものであって、ＣＰＵユニットと各ユニットとが内部バスを完全に共有している。内部バスを完全に共有するシステムに、従来の技術による異常検出を適用した場合、内部バスの通信異常の検出は可能である一方、異常箇所を特定することが困難であるという問題を生じる。【０００５】
本発明は、上記に鑑みてなされたものであって、内部バスにおいて通信異常が発生した箇所を正確に特定可能とするプログラマブルロジックコントローラを得ることを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、ＣＰＵユニットと、前記ＣＰＵユニットにより制御され、共通コネクタを介して連結された各種ユニットと、前記ＣＰＵユニットおよび前記各種ユニット内を通して設けられ、前記ＣＰＵユニットおよび前記各種ユニットを接続する内部バスと、前記各種ユニットの各々に共通して設けられ、前記内部バスの異常検出のための異常検出用データを保持するバスインタフェースと、を有し、前記ＣＰＵユニットは、前記各種ユニットの前記バスインタフェースから読み出した前記異常検出用データを照合することにより、前記内部バスの異常箇所を検出することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、バスインタフェースを適用することで、ＣＰＵユニットと各ユニットとが内部バスを完全に共有するシステムにおいて、内部バスの異常箇所をＣＰＵユニットにて判別することができる。これにより、内部バスにおいて通信異常が発生した箇所を正確に特定することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】図１は、本発明の実施の形態にかかるプログラマブルロジックコントローラの構成を示すブロック図である。
【図２】図２は、プログラマブルロジックコントローラにより内部バスの通信異常を診断する手順を説明するフローチャートである。
【発明を実施するための形態】
【０００９】
以下に、本発明にかかるプログラマブルロジックコントローラの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１０】
実施の形態．
図１は、本発明の実施の形態にかかるプログラマブルロジックコントローラの構成を示すブロック図である。本実施の形態では、基本ブロック１１と２つの増設ブロック１２、１３とから構成されるプログラマブルロジックコントローラを例とする。基本ブロック１１と増設ブロック１２とは、増設ケーブル８を介して接続されている。増設ブロック１２と増設ブロック１３とは、増設ケーブル８を介して接続されている。
【００１１】
基本ブロック１１は、ＣＰＵユニット１と、各種ユニットである分岐ユニット６、入出力ユニット２およびエンドカバー４を有する。基本ブロック１１において、各種ユニットは、共通コネクタ３を介して直接連結されている。
【００１２】
増設ブロック１２は、各種ユニットである増設ユニット７、分岐ユニット６、入出力ユニット２およびエンドカバー４を有する。増設ブロック１３は、各種ユニットである増設ユニット７、入出力ユニット２およびエンドカバー４を有する。増設ブロック１２、１３において、各種ユニットは、共通コネクタ３を介して直接連結されている。
【００１３】
ＣＰＵユニット１は、各ブロック１１、１２、１３の各ユニットを含むプログラマブルコントローラ全体を制御する。入出力ユニット２は、各種の入力機器（図示省略）からの入力データの取り込みや、各種の出力機器（図示省略）への出力信号の送出等を行う。エンドカバー４は、基本ブロック１１および増設ブロック１２、１３の終端に設けられている。エンドカバー４は、システムの終端処理を行うユニットである。基本ブロック１１において、内部バス５は、ＣＰＵユニット１、分岐ユニット６、入出力ユニット２およびエンドカバー４内を通して設けられ、これらを直列に接続する。
【００１４】
基本ブロック１１に設けられた分岐ユニット６は、内部バス５を、基本ブロック１１内の入出力ユニット２の側と、増設ケーブル８の側とへ分岐させる。増設ケーブル８は、基本ブロック１１の分岐ユニット６と、増設ブロック１２の増設ユニット７とを接続する。増設ケーブル８内には、増設ケーブル抜け検出信号１０が通じている。
【００１５】
増設ブロック１２において、内部バス５は、増設ユニット７、分岐ユニット６、入出力ユニット２およびエンドカバー４内を通して設けられ、これらを直列に接続する。増設ブロック１２に設けられた分岐ユニット６は、内部バス５を、増設ブロック１２内の入出力ユニット２の側と、増設ケーブル８の側とへ分岐させる。増設ケーブル８は、増設ブロック１２の分岐ユニット６と、増設ブロック１３の増設ユニット７とを接続する。増設ケーブル８内には、増設ケーブル抜け検出信号１０が通じている。増設ブロック１３において、内部バス５は、増設ユニット７、入出力ユニット２およびエンドカバー４内を通して設けられ、これらを直列に接続する。
【００１６】
プログラマブルロジックコントローラのうち各種ユニットである入出力ユニット２、エンドカバー４、分岐ユニット６および増設ユニット７は、各々に共通して設けられたバスインタフェース（Ｉ／Ｆ）９を備える。バスＩ／Ｆ９は、各々のユニット内において、内部バス５に接続されている。バスＩ／Ｆ９は、内部バス５の異常検出のための異常検出用データを保持する。バスＩ／Ｆ９の異常検出用データは、内部バス５を介して伝送可能とされている。
【００１７】
バスＩ／Ｆ９には、内部バス診断用のレジスタが搭載されている。ＣＰＵユニット１は、バスＩ／Ｆ９のレジスタへのアクセスにより、異常検出用データを読み出し、照合することで、内部バス５の異常箇所を逐一検出する。
【００１８】
また、バスＩ／Ｆ９は、増設ケーブル８の抜けを検出するための増設ケーブル抜け情報を保持するレジスタも搭載されている。バスＩ／Ｆ９は、増設ケーブル抜け情報用のレジスタに増設ケーブル抜け検出信号１０を接続することにより、増設ケーブル８の接続状態を検出し、増設ケーブル抜け情報を得る。バスＩ／Ｆ９の増設ケーブル抜け情報は、内部バス５を介して伝送可能とされている。ＣＰＵユニット１は、バスＩ／Ｆ９のレジスタへのアクセスにより、増設ケーブル抜け情報を読み出す。ＣＰＵユニット１は、読み出した増設ケーブル抜け情報から、増設ケーブル８の接続状態を逐一検出する。
【００１９】
増設ケーブル抜け検出信号１０は、増設ユニット７から増設ケーブル８を介し、分岐ユニット６にてプルアップされる。増設ケーブル８が抜けたとき、バスＩ／Ｆ９に接続された増設ケーブル抜け検出信号１０がＨレベルになり、バスＩ／Ｆ９内の増設ケーブル抜け検出用のレジスタに増設ケーブル抜け情報が格納される。増設ケーブル抜け検出信号１０は、増設ケーブル８の左右両側部に配置されている。これにより、増設ケーブル８が半抜け、すなわち左右両側部の一方が抜けている状態である場合であっても、増設ケーブル８が抜けているとして検出することができる。
【００２０】
なお、プログラマブルロジックコントローラの構成は、本実施の形態で説明する場合に限られない。例えば、プログラマブルロジックコントローラに設けられる増設ブロックの数は２つである場合に限られず、いくつであっても良いものとする。各ブロックに設けられる入出力ユニットは、いくつであっても良いものとする。また、プログラマブルロジックコントローラに設けられる各種ユニットには、本実施の形態で説明する以外のユニットを含めても良い。
【００２１】
図２は、プログラマブルロジックコントローラによる内部バスの通信異常を診断する手順を説明するフローチャートである。ＣＰＵユニット１は、プログラマブルロジックコントローラ内の内部バス５全体における通信異常の発生の有無を判断する（ステップＳ１）。ＣＰＵユニット１は、例えば、各エンドカバー４のバスＩ／Ｆ９からの異常検出用データの読み出しを実行することにより、内部バス５における通信異常が発生しているか否かを判断する。通信異常が発生していない場合（ステップＳ１、Ｎｏ）、ＣＰＵユニット１は、処理を終了する。
【００２２】
内部バス５における通信異常は、分岐ユニット６の抜けによるもの、増設ケーブル８の抜けによるもの、分岐ユニット６以外の各種ユニットの抜けによるもの、のいずれかである可能性がある。
【００２３】
ここでは、増設ブロック１２における通信異常を例として説明する。通信異常が発生している場合（ステップＳ１、Ｙｅｓ）、ＣＰＵユニット１は、増設ブロック１２の前段に位置する基本ブロック１１の分岐ユニット６のバスＩ／Ｆ９から、異常検出用データと増設ケーブル抜け情報とを読み出す（ステップＳ２）。ＣＰＵユニット１は、読み出した異常検出用データから、分岐ユニット６の抜けの有無を判断する（ステップＳ３）。
【００２４】
分岐ユニット６の抜けが有ると判断した場合（ステップＳ３、Ｙｅｓ）、ＣＰＵユニット１は、基本ブロック１１の分岐ユニット６が抜けている旨のエラー通知を出力し（ステップＳ７）、処理を終了する。分岐ユニット６の抜けが無いと判断した場合（ステップＳ３、Ｎｏ）、ＣＰＵユニット１は、読み出した増設ケーブル抜け情報から、増設ケーブル８の抜けの有無を判断する（ステップＳ４）。
【００２５】
増設ケーブル８の抜けが有ると判断した場合（ステップＳ４、Ｙｅｓ）、ＣＰＵユニット１は、基本ブロック１１および増設ブロック１２の間の増設ケーブル８が抜けている旨のエラー通知を出力し（ステップＳ８）、処理を終了する。増設ケーブル８の抜けが無いと判断した場合（ステップＳ４、Ｎｏ）、ＣＰＵユニット１は、増設ブロック１２の各種ユニットから異常検出用データを読み出し、抜けているユニットを特定する（ステップＳ５）。ＣＰＵユニット１は、特定したユニットが抜けている旨のエラー通知を出力し（ステップＳ６）、処理を終了する。
【００２６】
増設ブロック１３における通信異常の場合は、ＣＰＵユニット１は、さらに、増設ブロック１３の前段に位置する増設ブロック１２について、分岐ユニット６の抜けの有無を判断する。また、ＣＰＵユニット１は、増設ブロック１３および増設ブロック１２の間の増設ケーブル８の抜けの有無を判断する。さらに、ＣＰＵユニット１は、増設ブロック１３の各ユニットから、抜けているユニットを特定する。
【００２７】
基本ブロック１１における通信異常の場合は、ＣＰＵユニット１は、基本ブロック１１の各ユニットから、抜けているユニットを特定する。プログラマブルロジックコントローラは、本実施の形態で説明する通信異常の診断を、例えば定期的に実施する。また、プログラマブルロジックコントローラは、ユーザによる操作に応じて、本実施の形態で説明する通信異常の診断を実施するものとしても良い。
【００２８】
ＣＰＵユニット１は、通信異常が発生したユニットあるいは増設ケーブル８を特定し、例えばモニタによるエラー通知等を行うことで、通信異常が発生した箇所を早急に報知することができる。ＣＰＵユニット１は、内部バス５の通信異常箇所の特定の場合と同様の診断手順により、故障しているユニットを特定することとしても良い。
【００２９】
本実施の形態にかかるプログラマブルロジックコントローラは、バスＩ／Ｆ９を適用することで、ＣＰＵユニット１と各ユニットとが内部バス５を完全に共有するシステムにおいて、内部バス５の異常箇所をＣＰＵユニット１にて判別することができる。また、プログラマブルロジックコントローラは、分岐ユニット６のバスＩ／Ｆ９にて増設ケーブル抜け情報を保持することで、増設ケーブル８の抜けの有無をＣＰＵユニット１にて検出することができる。これにより、プログラマブルロジックコントローラは、通信異常が発生した箇所を正確に特定可能とし、トラブルシューティングの向上を図れる。
【００３０】
プログラマブルロジックコントローラは、システムの起動時における増設ケーブル８の抜けについては、通信異常とせず正常と取り扱うこととしても良い。例えば、将来のシステム拡張をユーザが望む場合は、増設ケーブル８を抜いた状態でプログラマブルロジックコントローラを構成することが可能となる。これにより、プログラマブルロジックコントローラは、高い自由度でのシステム構築が可能となる。
【符号の説明】
【００３１】
１  ＣＰＵユニット
２  入出力ユニット
３  共通コネクタ
４  エンドカバー
５  内部バス
６  分岐ユニット
７  増設ユニット
８  増設ケーブル
９  バスＩ／Ｆ
１０  増設ケーブル抜け検出信号
１１  基本ブロック
１２、１３  増設ブロック
【図１】
2012127612.tif 000003
【図２】
2012127612.tif 000004
【手続補正書】
【提出日】平成23年9月22日(2011.9.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
基本ブロックと、増設ケーブルを介して前記基本ブロックに連結された増設ブロックと、を含み、ベースレス構造を備えるプログラマブルロジックコントローラであって、
前記基本ブロックに設けられたＣＰＵユニットと、
前記ＣＰＵユニットにより制御され、共通コネクタを介して連結された各種ユニットと、
前記ＣＰＵユニットおよび前記各種ユニット内を通して設けられ、前記ＣＰＵユニットおよび前記各種ユニットを接続する内部バスと、
前記内部バスを分岐させたうちの一つが前記増設ケーブルに接続可能とされた前記各種ユニットである分岐ユニットと、を有し、
前記各種ユニットは、前記内部バスの異常検出のための異常検出用データを保持するバスインタフェースを備え、
前記分岐ユニットの前記バスインタフェースは、さらに、前記増設ケーブルの抜けを検出するための増設ケーブル抜け情報を保持し、
前記ＣＰＵユニットは、前記内部バスに通信異常が発生していると判断すると、前記分岐ユニットの前記バスインタフェースから読み出した前記増設ケーブル抜け情報から前記増設ケーブルの接続状態を検出し、前記増設ケーブルの接続が正常であると判断すると、前記各種ユニットの前記バスインタフェースから読み出した前記異常検出用データを照合することにより、前記内部バスの異常箇所を検出することを特徴とするプログラマブルロジックコントローラ。
【請求項２】
前記ＣＰＵユニットは、前記増設ケーブルの接続状態の検出より先に、前記分岐ユニットの前記バスインタフェースから読み出した前記異常検出用データから、前記分岐ユニットにおける前記内部バスの異常の有無を判断することを特徴とする請求項１に記載のプログラマブルロジックコントローラ。
【請求項３】
前記ＣＰＵユニットは、前記内部バスに通信異常が有ると判断した場合に、前記通信異常が発生した前記各種ユニットあるいは前記増設ケーブルを特定し、エラー通知を行うことを特徴とする請求項１または２に記載のプログラマブルロジックコントローラ。
【国際調査報告】
2012127612.tif 000005
2012127612.tif 000006
2012127612.tif 000007
2012127612.tif 000008