(57)【要約】【課題】通信路が二重化されたシステムにおいて、装置間ケーブルの誤接続を正確かつ容易に検出する。【解決手段】診断元の装置（演算装置１００）が、二重化された通信路１０５ａ，１０６ａの片方ずつへ通信先の各装置（入出力装置１０３）宛のテストフレームを送出し、次に、通信先の各装置（入出力装置１０３）が、二重化された通信路の双方から同一のテストフレームを受信しないことを検出して、通信路の異常を通知する応答フレームを、二重化された通信路１０５ｂ，１０６ｂの双方を介して診断元の装置（演算装置１００）に返送する。最後に、診断元の装置（演算装置１００）が、両方の通信路へ送出したテストフレームに対しても、二重化された通信路の双方から同一の応答フレームを受信し、かつ当該応答フレームにて所期の異常が通知された場合に、当該通信先の装置（入出力装置１０３）への通信路を構成する装置間ケーブルの接続は正常であると判定する。【選択図】図１
2012235335.tif 000002
【特許請求の範囲】
【請求項１】
通信路が二重化されたシステムにおける装置間ケーブルの誤接続検出方法であって、
診断元の装置は、二重化された前記通信路のそれぞれについて、その一方へ通信先の各装置宛に送信する診断用通信フレームを送出し、
前記通信先の各装置は、前記二重化された前記通信路の双方から同一の前記診断用通信フレームを所定時間差内で受信しない場合に、当該診断用通信フレームを受信しなかった側の前記通信路の異常を通知する応答フレームを、前記二重化された前記通信路の双方を介して前記診断元の装置に返送し、
前記診断元の装置は、一方の前記通信路へ送出したいずれの前記診断用通信フレームに対しても、所定時間内に前記二重化された前記通信路の双方から同一の前記応答フレームを受信し、かつ、当該応答フレームにて前記診断用通信フレームを送出しなかった側の前記通信路の異常が通知された場合に、当該通信先の装置への前記二重化された前記通信路を構成する装置間ケーブルの接続は正常であると判定する
ことを特徴とする装置間ケーブルの誤接続検出方法。
【請求項２】
請求項１に記載の装置間ケーブルの誤接続検出方法において、
前記診断元の装置は、前記二重化された前記通信路を構成する装置間ケーブルの接続が正常である場合に、送信した前記診断用通信フレームに対して前記通信先の各装置から返送されるべき応答フレームのデータパターンを照合データとして記憶部に記憶しており、
前記診断元の装置は、前記通信先の各装置宛に送信した前記診断用通信フレームに対して、前記所定時間内に前記二重化された前記通信路の双方からの同一の前記応答フレームの受信に成功しなかった場合、及び、前記所定時間内に前記二重化された前記通信路の双方から受信した同一の前記応答フレームのデータが前記照合データと一致しない場合に、当該通信先の装置への前記二重化された前記通信路を構成する装置間ケーブルが誤接続されていると判定する
ことを特徴とする装置間ケーブルの誤接続検出方法。
【請求項３】
請求項１または請求項２に記載の装置間ケーブルの誤接続検出方法において、
前記二重化された前記通信路のそれぞれは、前記診断元の装置と前記通信先の各装置との間で交信される通信フレームを中継する１台以上の中継装置を含んで構成されており、
前記診断元の装置は、各前記中継装置宛に診断用通信フレームを個別に送信し、前記中継装置宛に送信したそれぞれの前記診断用通信フレームに対して、所定時間内に正常受信を示す応答フレームを受信しなかった場合は、当該中継装置への通信路を構成する装置間ケーブルが誤接続されていると判定する
ことを特徴とする装置間ケーブルの誤接続検出方法。
【請求項４】
請求項３に記載の装置間ケーブルの誤接続検出方法において、
前記診断元の装置は、自身からの接続段数が少ない順に、前記中継装置宛の前記診断用通信フレームを送信する
ことを特徴とする装置間ケーブルの誤接続検出方法。
【請求項５】
請求項１から請求項４のいずれか一項に記載の装置間ケーブルの誤接続検出方法において、
前記診断元の装置は、前記診断用通信フレームを送信した送信先の前記各装置からの応答の有無、及び、当該各装置から受信した前記応答フレームに含まれる前記通信路の異常を通知する情報からなる診断データを記憶部に格納して保持させる
ことを特徴とする装置間ケーブルの誤接続検出方法。
【請求項６】
通信路が二重化されたシステムにおける装置間ケーブルの誤接続検出装置であって、
二重化された前記通信路のそれぞれについて、その一方へ通信先の各装置宛に送信する診断用通信フレームを送出する送出手段と、
前記通信路へ送出したいずれの前記診断用通信フレームに対しても、当該通信先の装置から返送される同一の応答フレームを所定時間内に前記二重化された前記通信路の双方から受信し、かつ、当該応答フレームにて前記診断用通信フレームを送出しなかった側の前記通信路の異常が通知された場合に、当該通信先の装置への前記二重化された前記通信路を構成する装置間ケーブルの接続は正常であると判定する判定手段と
を備えることを特徴とする装置間ケーブルの誤接続検出装置。
【請求項７】
請求項６に記載の装置間ケーブルの誤接続検出装置において、
前記二重化された前記通信路を構成する装置間ケーブルの接続が正常である場合に、送信した前記診断用通信フレームに対して前記通信先の各装置から返送されるべき応答フレームのデータパターンを照合データとして記憶する記憶部を備え、
前記判定手段は、前記通信先の各装置宛に送信した前記診断用通信フレームに対して、前記所定時間内に前記二重化された前記通信路の双方からの同一の前記応答フレームの受信に成功しなかった場合、及び、前記所定時間内に前記二重化された前記通信路の双方から受信した同一の前記応答フレームのデータが前記照合データと一致しない場合に、当該通信先の装置への前記二重化された前記通信路を構成する前記装置間ケーブルが誤接続されていると判定する
ことを特徴とする装置間ケーブルの誤接続検出装置。
【請求項８】
請求項６または請求項７に記載の装置間ケーブルの誤接続検出装置において、
前記二重化された前記通信路のそれぞれは、前記誤接続検出装置と前記通信先の各装置との間で交信される通信フレームを中継する１台以上の中継装置を含んで構成されており、
前記送出手段は、各前記中継装置宛に診断用通信フレームを個別に送信し、
前記判定手段は、前記中継装置宛に送信したそれぞれの前記診断用通信フレームに対して、所定時間内に正常受信を示す応答フレームを受信しなかった場合は、当該中継装置への通信路を構成する装置間ケーブルが誤接続されていると判定する
ことを特徴とする装置間ケーブルの誤接続検出装置。
【請求項９】
請求項８に記載の装置間ケーブルの誤接続検出装置において、
前記送出手段は、自身からの接続段数が少ない順に、前記中継装置宛の前記診断用通信フレームを送信する
ことを特徴とする装置間ケーブルの誤接続検出装置。
【請求項１０】
請求項６から請求項９のいずれか一項に記載の装置間ケーブルの誤接続検出装置において、
前記判定手段は、前記診断用通信フレームを送信した送信先の前記各装置からの応答の有無、及び、当該各装置から受信した応答フレームに含まれる前記通信路の異常を通知する情報からなる診断データを記憶部に格納して保持させる
ことを特徴とする装置間ケーブルの誤接続検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、装置間でデータの授受を行うための通信路が二重化されたシステムにおいて、装置間ケーブルの誤接続を検出するための誤接続検出方法及び装置に関する。
【背景技術】
【０００２】
プラント制御等に用いられる制御システムにおいては、制御装置と被制御装置との間を接続する装置間ケーブルを介して、制御に関する通信（以下、「制御通信」という。)が行われる。この制御通信には一般に高い信頼性が要求されるため、装置間を接続する通信路を冗長化することによって信頼性を向上させる方式が多く採用されている。通信路の冗長化の方式としては、例えば特許文献１に記載の方式がある。この方式では、冗長化した複数の通信路に同一のタイミングで同一データを送信する方式を採用している。また、特許文献２には、ケーブル誤接続を検出するための従来技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−４３６８０号公報
【特許文献２】特開２００５−２３１２２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
これら制御通信に用いられる通信回線は一般的にシリアル回線であり、制御装置と被制御装置との間をそれぞれ異なる通信ケーブルである装置間ケーブルにて接続する必要がある。プラント制御等に用いられる制御システムでは、大規模なものでは百台以上の装置構成となることも多く、制御通信を行うための装置間ケーブルの敷設並びに接続作業工数は莫大なものとなる。また、特許文献１の方式のように、制御通信の信頼性を向上させるために例えば回線を二重化した場合、配線数は２倍となる。
【０００５】
また、これら制御通信においては、プラント等の制御を正確かつ安全に運用するために、当然ながら装置間ケーブルの誤接続は許されず、装置間ケーブルの敷設並びに接続作業後には誤接続の有無を確認するための接続確認作業が必須である。しかし、従来の接続確認作業は、作業員による全装置間ケーブルの目視確認によって行われており、作業工数が非常に大きくなってしまうという課題があった。また、作業員による目視確認時のヒューマンエラーによって、誤接続箇所が見落とされる可能性もあった。
【０００６】
さらに、特許文献２に開示されている装置間が１対１接続されていることを前提とした従来の誤接続検出の技術は、通信路が二重化されたシステムには適用することができない。
【０００７】
本発明は、これら従来技術の課題を解決するためになされたものであり、通信路が二重化されたシステムにおいて、装置間ケーブルの誤接続を正確かつ容易に検出するための誤接続検出方法及び装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
前記の目的を達成するために、本発明は、通信路が二重化されたシステムにおける装置間ケーブルの誤接続を検出する手順として、まず、診断元の装置が、二重化された通信路のそれぞれについて、その一方へ通信先の各装置宛に送信する診断用通信フレームを送出し、次に、通信先の各装置が、二重化された通信路の双方から同一の診断用通信フレームを所定時間差内で受信しない場合に、当該診断用通信フレームを受信しなかった側の通信路の異常を通知する応答フレームを、二重化された通信路の双方を介して診断元の装置に返送し、最後に、診断元の装置が、一方の通信路へ送出したいずれの診断用通信フレームに対しても、所定時間内に二重化された通信路の双方から同一の応答フレームを受信し、かつ、当該応答フレームにて診断用通信フレームを送出しなかった側の通信路の異常が通知された場合に、当該通信先の装置への二重化された通信路を構成する装置間ケーブルの接続は正常であると判定する構成を備えるものとした。
【発明の効果】
【０００９】
本発明によれば、通信路が二重化されたシステムにおいて、装置間ケーブルの誤接続を正確かつ容易に検出することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態に係る制御システムの構成例を示すブロック図である。
【図２】ケーブル誤接続診断プログラムのフローチャートである。
【図３】中継装置におけるテストフレーム受信処理のフローチャートである。
【図４】入出力装置におけるアンサーバック機能のフローチャートである。
【図５】ケーブル誤接続診断に用いる通信フレームの構成及びデータ例である。
【図６】演算装置における異常検出動作についての説明図である。
【図７】誤接続判定処理のフローチャートである。
【図８】誤接続判定に用いる照合データの構成及びデータ例である。
【図９】演算装置−中継装置間の誤接続時に格納される通信データ例である。
【図１０】中継装置−入出力装置間の誤接続時に格納される通信データ例である。
【図１１】演算装置−中継装置間が誤接続されている制御システムの例である。
【図１２】中継装置−入出力装置間が誤接続されている制御システムの例である。
【図１３】拡張構成の制御システムにおける誤接続の例である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態を、プラント等の制御システムを例にとり、適宜図面を参照しながら説明する。
【００１２】
図１は、本発明の実施形態に係る制御システムの構成例を示すブロック図である。図１に示すように、制御システム１０は、プラント等を構成する各種の被制御装置である制御対象１０４と、制御対象１０４の制御を行う演算装置１００と、制御対象１０４の制御に必要な制御信号の入出力を行う入出力装置１０３と、演算装置１００と入出力装置１０３との間の通信データの中継を行う２台の中継装置（第一回線中継装置１０１、第二回線中継装置１０２）とを備えて構成されている。演算装置１００から見て接続段数１段目に第一回線中継装置１０１と第二回線中継装置１０２とが接続され、接続段数２段目に入出力装置１０３が接続されている。
【００１３】
演算装置１００と入出力装置１０３との間の通信路は、第一回線１０５ａ及び１０５ｂを経由するルートと、第二回線１０６ａ及び１０６ｂを経由するルートとに二重化されており、制御通信は、送信元の装置からそれら２つのルートに同時に同じ通信データを送出し、受信先の装置はそれら２つのルートから同じ通信データを受信することによって、行われる。これにより、通信データの信頼度が向上し、仮に一方のルートに障害等が発生しても運転を継続できる構成となっている。
【００１４】
演算装置１００は、不図示のＣＰＵ（Central Processing Unit）を備える制御演算部１０７と、通信制御部１０８と、メモリ１０９とを備えるコンピュータによって構成され、制御演算部１０７が不図示の演算装置制御プログラムを実行することによってその機能が具現化される。入出力装置１０３は、不図示のＣＰＵ及び入出力インタフェースを備える入出力制御部１１５と、通信制御部１１４と備えるコンピュータによって構成され、入出力制御部１１５が不図示の入出力装置制御プログラムを実行することによってその機能が具現化される。第一回線中継装置１０１及び第二回線中継装置１０２は、不図示の中継装置制御プログラムを実行する通信制御部１１２または１１３を備えるコンピュータによって構成される。
【００１５】
以下では、演算装置１００が診断元の装置となり、その通信先の装置である入出力装置１０３との間を接続する装置間ケーブル１０５ａ，１０５ｂ，１０６ａ，１０６ｂの誤接続を診断する場合について説明する。
【００１６】
図２は、制御システム１０の起動時などに診断元の装置（演算装置１００）によって実行されるケーブル誤接続診断プログラムのフローチャートである。以下、図２のフローチャートに沿って装置間ケーブルの誤接続を診断する動作を説明する。
【００１７】
ケーブル誤接続診断プログラムが起動されると、演算装置１００は、まず、ステップＳ２０１にて、入出力装置１０３にアンサーバック機能ＯＮを要求する。これは、入出力装置１０３宛のアンサーバック機能のＯＮを要求する制御データを、第一回線１０５ａ及び第二回線１０６ａの双方へ送出し、第一回線中継装置１０１及び第二回線中継装置１０２が当該制御データを入出力装置１０３へ中継することによって行われる。この制御データを受信した入出力装置１０３は、回線異常の有無を演算装置１００に対して応答するアンサーバック機能をＯＮにする（詳細は図４を用いて後記する）。
【００１８】
次に、演算装置１００は、ステップＳ２０２にて、第一回線へのテストデータの送信を実行する。すなわち、演算装置１００は、片系通信により、第一回線中継装置１０１宛のテストデータを第一回線１０５ａへ送出する。そののち、第一回線中継装置１０１からの応答を待ち、所定時間内に応答を受信した場合は（ステップＳ２０３で「Ｙｅｓ」）、次に、ステップＳ２０４にて、受信した応答に通信ステータスが含まれていればそれを取得し、ステップＳ２０５にて、応答を受信したことを示す通信データ（「ｖａｌｉｄフラグ＝１」）を、第一回線中継装置１０１の診断データとしてメモリ１０９に格納する。また、所定時間内に応答を受信できなかった場合は（ステップＳ２０３で「Ｎｏ」）、次に、ステップＳ２０６にて、応答を受信できなかったことを示す通信データ（「ｖａｌｉｄフラグ＝０」）を、第一回線中継装置１０１の診断データとしてメモリ１０９に格納する。
【００１９】
次に、演算装置１００は、ステップＳ２０７にて、第一回線１０５ａ，１０５ｂに接続される全装置に対してテストデータを送信済みか否かを判定し、ここでまだ入出力装置１０３への送信を実行していない場合は（ステップＳ２０７で「Ｎｏ」）、再び、ステップＳ２０２に処理を戻して、今度は入出力装置１０３宛のテストデータを第一回線１０５ａへ送出する。そののち、前記と同様に、入出力装置１０３からの応答を所定時間内に受信した場合は、受信した応答から取得した通信ステータス（正常時は「ｖａｌｉｄフラグ＝１」、「第一回線異常＝０」、「第二回線異常＝１」）を、所定時間内に応答を受信できなかった場合は、応答を受信できなかったことを示す通信データ（「ｖａｌｉｄフラグ＝０」）を、入出力装置１０３の第一回線送信時の診断データとしてメモリ１０９に格納する（詳細は図６を用いて後記する。）。
【００２０】
また、ステップＳ２０７の判定で、第一回線１０５ａ，１０５ｂに接続される全装置に対してテストデータを送信済みである場合は（ステップＳ２０７で「Ｙｅｓ」）、第一回線側へのテストデータの送信を終了し、次に、ステップＳ２０８〜ステップＳ２１３にて、第二回線側について、同様なテストデータの送信と通信データのメモリ１０９への格納とを行う。それにより、第二回線中継装置１０２との通信の成否を示す通信データ（正常時は「ｖａｌｉｄフラグ＝１」）と、入出力装置１０３との通信の成否及び回線異常を示す第二回線送信時の通信データ（正常時は「ｖａｌｉｄフラグ＝１」、「第一回線異常＝１」、「第二回線異常＝０」）がメモリ１０９に格納される。
【００２１】
ここで、各装置間で交信されるデータのフォーマットについて説明する。図５（ａ）は、データの交信単位となる通信フレームの基本的な構造を示すものである。図５（ａ）に示すように、通信フレームＦは、例えば、それぞれが８ビットデータであるＴＮ（送信元アドレス）、ＲＮ（受信先アドレス）、Ｃ（フレーム種別）、Ｌ（データ長）と、Ｌ個の１６ビットデータであるＤＡＴＡ（１），ＤＡＴＡ（２），・・・，ＤＡＴＡ（Ｌ）（ただし、データ長が０のときは存在しない。）と、１６ビットのＣＲＣ（ＣＲＣ（Cyclic Redundancy Check）用データ）とから構成される。
【００２２】
ＴＮ（送信元アドレス）は、この通信フレームＦの送信元装置の通信アドレスを示すものであり、例えば８ビットであれば最大２５６個の装置を識別することができる。同様に、ＲＮ（受信先アドレス）は、この通信フレームＦの受信先（宛先）装置の通信アドレスを示すものである。以下、便宜的に、ＴＮ［＝演算装置］やＲＮ［＝第一回線中継装置］などの表記は、該当する装置の通信アドレスを表すものとする。
【００２３】
Ｃ（フレーム種別）は、この通信フレームＦの種別を示す識別子であり、以下、便宜的に、Ｃ［＝テスト］はテストデータを送信するためのテストフレーム、Ｃ［＝正常応答］は正常応答データを送信するための正常応答フレーム、Ｃ［＝異常応答］は異常応答データを送信するための異常応答フレームを表すものとする。前記のアンサーバック機能をＯＮにする要求を送信するための制御データなども含めて、例えば８ビットであれば最大２５６種類のフレーム種別を識別することができる。
【００２４】
Ｌ（データ長）は、この通信フレームＦに含まれるＤＡＴＡの個数を示す。以下、便宜的に、Ｌ［＝０］はＤＡＴＡが存在しないことを、Ｌ［＝１］やＬ［＝２］などは、付加されているＤＡＴＡの個数がそれぞれ１や２などであることを表すものとする。
【００２５】
ＤＡＴＡ（データ）は、この通信フレームＦに含まれるデータであり、フレーム種別に応じて０または複数個のデータが付加される。以下、便宜的に、ＤＡＴＡ［＝通信ステータス］などの表記は、付加されているデータが通信ステータスを示すデータなどであることを表すものとする。
【００２６】
ＣＲＣ（ＣＲＣ用データ）は、この通信フレームＦ全体のデータ誤りを検出するために付される検査用のデータである。
【００２７】
また、図５（ｂ）は、演算装置１００から第一回線中継装置１０１宛にテストデータを送信するときのテストフレームＦ１のデータ例であり、図５（ｃ）は、第二回線中継装置１０２から演算装置１００宛に正常応答データを送信するときの正常応答フレームＦ２のデータ例であり、図５（ｄ）は、入出力装置１０３から演算装置１００宛に異常応答データを送信するときの異常応答フレームＦ３のデータ例である。図５（ｅ）は、通信ステータスＳＴのデータフォーマットを示すものであり、Ｖ（ｖａｌｉｄフラグ）は、正しいデータを受信したことを示すフラグ、Ｅ１（第一回線異常）は、第一回線の異常を検出したことを示すフラグ、Ｅ２（第二回線異常）は、第二回線の異常を検出したことを示すフラグである。
【００２８】
図３は、第一回線中継装置１０１及び第二回線中継装置１０２におけるテストフレーム受信処理のフローチャートである。第一回線中継装置１０１及び第二回線中継装置１０２は、それぞれスイッチ等によって設定される固有の通信アドレスを有しており、自宛のテストフレームに対してのみ応答する。図３に示すように、第一回線中継装置１０１及び第二回線中継装置１０２のテストフレーム受信処理では、通信制御部１１２または１１３が自宛のテストフレームを受信するまで待機し（ステップＳ３０１で「未受信」）、自宛のテストフレームを正常受信すると（ステップＳ３０１で「正常受信」）、次に、ステップＳ３０２にて、演算装置１００宛の正常応答フレームを自身が接続されている第一回線１０５ａまたは第二回線１０６ａへ送出して処理を終了する。
【００２９】
図４は、入出力装置１０３におけるアンサーバック機能のフローチャートである。演算装置１００からアンサーバック機能のＯＮを要求する制御データを、第一回線１０５ｂまたは第二回線１０６ｂのいずれかを介して受信すると、このアンサーバック機能が起動され、入出力装置１０３は、演算装置１００から送信される各通信フレームに対して回線異常の有無を応答するように動作する。
【００３０】
アンサーバック機能が起動されると、まず、ステップＳ４０１にて、入出力装置１０３の通信制御部１１４が自宛の通信フレームを受信するまで待機し（ステップＳ４０１で「未受信」）、第一回線１０５ｂまたは第二回線１０６ｂを介して自宛の通信フレームを正常受信すると（ステップＳ４０１で「第一回線または第二回線にて正常受信」）、次に、ステップＳ４０２にて、所定時間差内でもう一方の回線からも同一内容の通信フレームを受信して両回線正常受信完了したか否かを判定する。
【００３１】
所定時間差内で両回線から同一内容の通信フレームを受信した場合は（ステップＳ４０２で「Ｙｅｓ」）、次に、ステップＳ４０５にて正常応答フレームを生成したのち、ステップＳ４０６にて、第一回線１０５ｂ及び第二回線１０６ｂの両回線へ正常応答フレームを送出して処理を終了する。また、所定時間差内でもう一方の回線から同一内容の通信フレームを受信しなかった場合は（ステップＳ４０２で「Ｎｏ」）、次に、ステップＳ４０３にて異常検出部１１７が当該もう一方の回線の異常を検出し、ステップＳ４０４にて通信ステータスに当該検出した回線異常を反映させた異常応答フレームを生成したのち、ステップＳ４０６にて、第一回線１０５ｂ及び第二回線１０６ｂの両回線へ異常応答フレームを送出して処理を終了する。
【００３２】
前記のように、ケーブル誤接続診断時においては、演算装置１００から第一回線１０５ａと第二回線１０６ａとのいずれか一方にテストフレームが送出されるため、ステップＳ４０２の判定では両回線正常受信完了とならず（ステップＳ４０２で「Ｎｏ」）、次のステップＳ４０３にて、テストフレームが送出されなかった側の回線の異常が検出され、検出された回線異常が異常応答フレームによって演算装置１００に通知されることになる。
【００３３】
なお、ケーブル誤接続診断時に異常検出部１１７において回線異常を検出する機能は、装置間の二重化された通信路において回線異常を検出するために備えられる機能をそのまま流用することによって実現することができる。
【００３４】
続いて、ケーブル誤接続診断時に前記した各装置から応答フレームを受信したとき、または受信しなかったときの、演算装置１００による通信データのメモリ１０９への格納処理につき図６を用いて説明する。
【００３５】
演算装置１００の通信制御部１０８は、通信データ制御部１１０と異常検出部１１１とを備える。異常検出部１１１は、入出力装置１０３の異常検出部１１７と同様に、第一回線１０５ａまたは第二回線１０６ａのいずれかを介して自宛の通信フレームを正常受信すると、所定時間差内でもう一方の回線からも同一内容の通信フレームを受信するのを待つ。所定時間差内で両回線から同一内容の通信フレームを受信した場合は、回線異常がないことを示す「０」の信号を、通信データ制御部１１０が備える第一回線ＯＲ回路２０５及び第二回線ＯＲ回路２０６へ出力する。また、所定時間差内でもう一方の回線から同一内容の通信フレームを受信しなかった場合は、当該もう一方の回線の異常を検出し、異常を検出した回線側のＯＲ回路２０５または２０６へ、回線異常を検出したことを示す「１」の信号を出力する。
【００３６】
また、入出力装置１０３へ送信したテストフレームに対して、所定時間内に両回線から同一内容の異常応答フレームを受信した場合には、受信フレームデコード部２００が、受信した異常応答フレームの通信ステータスから入出力装置１０３が異常を検出した回線の情報（図５（ｅ）参照）を読み出し、異常を検出した回線側のＯＲ回路２０５または２０６へ、回線異常を検出したことを示す「１」の信号を出力する。
【００３７】
第一回線ＯＲ回路２０５及び第二回線ＯＲ回路２０６は、異常検出部１１１と受信フレームデコード部２００との２つの出力信号の論理和をとることにより、それぞれの回線の異常が検出されたことを示す「１」を、メモリ１０９の当該診断対象装置の通信アドレスに対応付けられた通信データのなかの第一回線異常２０３または第二回線異常２０４の各ビットへ格納する。また、ｖａｌｉｄフラグ２０２へは、応答を受信したことを示す「１」を格納する。
【００３８】
一方、入出力装置１０３に送信したテストフレームに対して、所定時間内にいずれの回線からも異常応答フレームを受信しなかった場合には、メモリ１０９の当該診断対象装置の通信アドレスに対応付けられた通信データのなかのｖａｌｉｄフラグ２０２へ、応答を受信しなかったことを示す「０」を格納する。
【００３９】
なお、メモリ１０９に格納される通信データの記憶領域は、第一回線送信時用と第二回線送信時用との２つ領域に区分されており、第一回線送信時に格納される第一回線中継装置１０１及び入出力装置１０３の通信データは第一回線送信時用の領域に、第二回線送信時に格納される第二回線中継装置１０２及び入出力装置１０３の通信データは第二回線送信時用の領域にそれぞれ格納される。
【００４０】
図７は、診断元の装置（演算装置１００）が、前記のケーブル誤接続診断プログラムによって取得した通信データを用いて装置間ケーブルの誤接続を判定する、誤接続判定処理のフローチャートである。以下、図７のフローチャートに沿って誤接続の判定動作を説明する。
【００４１】
演算装置１００は、前記のケーブル誤接続診断プログラムによって、制御システム１０に接続されているすべての中継装置及び入出力装置についての通信データを取得してメモリ１０９へ格納したのちに、図７の誤接続判定処理を起動する。
【００４２】
誤接続判定処理では、まず、ステップＳ７０１にて、接続段数が最も少ない装置から順に照合対象を設定する。例えば、図１の制御システム１０の場合は、接続段数１段目の第一回線中継装置１０１及び第二回線中継装置１０２のあとに、入出力装置１０３が照合対象に設定される。
【００４３】
次に、ステップＳ７０２にて、通信データを格納したメモリ１０９から設定した照合対象の通信データを読み出して所期の照合データとの照合を行う。図８は、演算装置１００の記憶部に予め保持される照合データであり、装置間ケーブルが正しく接続されている場合にケーブル誤接続診断プログラムを実行したときに、中継装置１０１，１０２及び入出力装置１０３について取得される正しい通信データのパターンである。
【００４４】
図８（ａ）は、中継装置用照合データＶ１のパターンであり、第一回線送信時には、第一回線中継装置１０１の通信データのｖａｌｉｄフラグが「１」となり、第二回線送信時には、第二回線中継装置１０２の通信データのｖａｌｉｄフラグが「１」となるべきことを表している。また、図８（ｂ）は、入出力装置用照合データＶ２のパターンであり、第一回線送信時には、入出力装置１０３の通信データのｖａｌｉｄフラグが「１」、第一回線異常が「０」、第二回線異常が「１」となり、第二回線送信時にはｖａｌｉｄフラグが「１」、第一回線異常が「１」、第二回線異常が「０」となるべきことを表している。
【００４５】
次に、ステップＳ７０３にて、演算装置１００は、照合結果を判定し、メモリ１０９から読み出した照合対象装置の通信データが、図８の照合データと一致する場合は（ステップＳ７０３で「一致（正常接続）」）、当該装置への装置間ケーブルの接続は正常と判定し、次のステップＳ７０４にて全装置が照合済みでなければ（ステップＳ７０４で「Ｎｏ」）、ステップＳ７０１に処理を戻して次の照合対象を設定して同様の処理を繰り返す。また、ステップＳ７０４にて全装置が照合済みであれば（ステップＳ７０４で「Ｙｅｓ」）、次に、ステップＳ７０５にて、すべての装置間ケーブルは正常接続されている旨を報告して処理を終了する。
【００４６】
また、ステップＳ７０３にて照合結果が不一致の場合は（ステップＳ７０３で「不一致（誤接続）」）、次に、ステップＳ７０６にて、当該照合対象装置との間を接続する装置間ケーブルが誤接続となっている旨を報告して処理を終了する。
【００４７】
［誤接続診断例１］
続いて、図１１に例示するような演算装置−中継装置間が誤接続されている制御システム１０Ａにおけるケーブル誤接続診断の動作例について説明する。
【００４８】
ここでは、図１１の誤接続発生箇所Ｅにて示すように、本来は演算装置１００と第一回線中継装置１０１との間を接続すべき第一回線１０５ａが第二回線中継装置１０２に誤接続され、本来は第二回線中継装置１０２に接続されるべき第二回線１０６ａが第一回線中継装置１０１に誤接続されているものとする。
【００４９】
この場合、図２のケーブル誤接続診断プログラムを実行すると、第一回線送信時に演算装置１００から第一回線中継装置１０１宛に送信するテストフレームは、第一回線１０５ａを介して第二回線中継装置１０２へ送信されることとなり、第二回線中継装置１０２は自宛の通信フレームではないので応答フレームを返送しない。そこで、演算装置１００は、所定時間内に応答が受信されないので、図９の中継装置の通信データＤ１の１行目に示すように、第一回線中継装置１０１の通信データのｖａｌｉｄフラグ２０２へ、応答を受信しなかったことを示す「０」を格納する。同様に、第二回線送信時には、通信データＤ１の２行目に示すように、第二回線中継装置１０２の通信データのｖａｌｉｄフラグ２０２に「０」が格納される。
【００５０】
その結果、図７の誤接続判定処理において、メモリ１０９から読み出した第一回線中継装置１０１の通信データが、図８（ａ）の中継装置用照合データＶ１の１行目と不一致となり、演算装置１００と第一回線中継装置１０１との間を接続する第一回線１０５ａが誤接続である旨が報告される。このように、図１１に例示したような演算装置−中継装置間の装置間ケーブルの誤接続が発生した場合であっても、誤接続箇所を正しく検出することができる。
【００５１】
［誤接続診断例２］
同様に、図１２に例示するような中継装置−入出力装置間が誤接続されている制御システム１０Ｂにおけるケーブル誤接続診断の動作例について説明する。
【００５２】
ここでは、図１２の誤接続発生箇所Ｅにて示すように、本来は第一回線中継装置１０１と入出力装置１０３の第一回線側とを接続すべき第一回線１０５ｂが入出力装置１０３の第二回線側に誤接続され、本来は第二回線中継装置１０２と入出力装置１０３の第二回線側とを接続すべき第二回線１０６ｂが入出力装置１０３の第一回線側に誤接続されているものとする。
【００５３】
この場合、図２のケーブル誤接続診断プログラムを実行すると、第一回線送信時に演算装置１００から第一回線１０５ａを介して入出力装置１０３宛に送信するテストフレームは、第一回線１０５ｂを介して入出力装置１０３の第二回線側へ送信されることとなり、入出力装置１０３は、第二回線側からしかテストフレームが受信されないので、第一回線の異常を検出してその旨を示す異常応答フレームを演算装置１００宛送信する。そこで、演算装置１００は、図１０の入出力装置の通信データＤ２の１行目に示すように、入出力装置１０３に対応する第一回線送信時の通信データのなかの第一回線異常２０３のビットへ、回線の異常を検出したことを示す「１」を格納する。同様に、第二回線送信時には、通信データＤ２の２行目に示すように、第二回線異常２０４のビットに「１」が格納される。
【００５４】
その結果、図７の誤接続判定処理において、メモリ１０９から読み出した入出力装置１０３に対応する第一回線送信時の通信データが、図８（ｂ）の入出力装置用照合データＶ２の１行目と不一致となり、処理順序により第一回線１０５ａはすでに正常接続と判定されているので、第一回線中継装置１０１と入出力装置１０３との間を接続する第一回線１０５ｂが誤接続である旨が報告される。このように、図１２に例示したような中継装置−入出力装置間の装置間ケーブルの誤接続が発生した場合であっても、誤接続箇所を正しく検出することができる。
【００５５】
［誤接続診断例３］
続いて、中継装置が２段に接続された拡張構成の制御システムにおけるケーブル誤接続診断の動作について説明する。ここでは、図１３に例示するような２段目の中継装置１０１ｂ，１０２ｂと入出力装置１０３ｂとの間を接続する第一回線１０５ｄと第二回線１０６ｄとの両者が相互に誤接続されている制御システム１０Ｃにおけるケーブル誤接続診断の動作例を説明する。
【００５６】
図１３に示すように、拡張構成の制御システム１０Ｃでは、第一回線中継装置１０１ａ及び１０１ｂと第二回線中継装置１０２ａ及び１０２ｂとによって、中継装置がそれぞれ２段に接続されており、接続段数２段目の中継装置１０１ｂ及び１０２ｂにそれぞれ２台の入出力装置１０３ａ及び１０３ｂが接続されている。演算装置１００と入出力装置１０３ａとの間の通信路は、第一回線１０５ａ，１０５ｂ及び１０５ｃを経由するルートと、第二回線１０６ａ及び１０６ｂ及び１０６ｃを経由するルートとに二重化されており、演算装置１００と入出力装置１０３ｂとの間の通信路は、第一回線１０５ａ，１０５ｂ及び１０５ｄを経由するルートと、第二回線１０６ａ及び１０６ｂ及び１０６ｄを経由するルートとに二重化されている。ただし、本来は第一回線中継装置１０１ｂと入出力装置１０３ｂの第一回線側とを接続すべき第一回線１０５ｄが入出力装置１０３ｂの第二回線側に誤接続され、本来は第二回線中継装置１０２ｂと入出力装置１０３ｂの第二回線側とを接続すべき第二回線１０６ｄが入出力装置１０３ｂの第一回線側に誤接続されているものとする。
【００５７】
この場合、図２のケーブル誤接続診断プログラムを実行すると、第一回線送信時に演算装置１００から第一回線１０５ａを介して入出力装置１０３ｂ宛に送信するテストフレームは、第一回線１０５ｄを介して入出力装置１０３ｂの第二回線側に送信されることとなり、入出力装置１０３ｂは、第二回線側からしかテストフレームが受信されないので、第一回線の異常を検出してその旨を示す異常応答フレームを演算装置１００宛送信する。そこで、演算装置１００は、図１０の入出力装置の通信データＤ２の１行目に示すように、入出力装置１０３ｂに対応する第一回線送信時の通信データのなかの第一回線異常２０３のビットへ、回線の異常を検出したことを示す「１」を格納する。同様に、第二回線送信時には、通信データＤ２の２行目に示すように、第二回線異常２０４のビットに「１」が格納される。入出力装置１０３ｂを除いた他の中継装置１０１ａ，１０１ｂ，１０２ａ，１０２ｂ及び入出力装置１０３ａについては、正常動作を表す所期の通信データがメモリ１０９に格納される。
【００５８】
その結果、図７の誤接続判定処理において、メモリ１０９から読み出した入出力装置１０３ｂに対応する第一回線送信時の通信データが、図８（ｂ）の入出力装置用照合データＶ２の１行目と不一致となり、処理順序により第一回線１０５ａ及び１０５ｂはすでに正常接続と判定されているので、第一回線中継装置１０１ｂと入出力装置１０３ｂとの間を接続する第一回線１０５ｄが誤接続である旨が報告される。
【００５９】
なお、図１３のような拡張構成において、演算装置１００と１段目の中継装置１０１ａ，１０２ａとを接続する第一回線１０５ａと１０６ａとが相互に誤接続となっている場合の診断動作は、図１１を用いて前記した誤接続診断例１と同様である。また、１段目の中継装置１０１ａ，１０２ａと２段目の中継装置１０１ｂ，１０２ｂとを接続する第一回線１０５ｂと第二回線１０６ｂと相互に誤接続となっている場合には、１段目の中継装置１０１ａ，１０２ａに対応する通信データが正常動作を示し、２段目の中継装置１０１ｂ，１０２ｂ宛のテストフレームに対する応答が受信されなくなることから、前記した誤接続診断例１と同様な動作によって、第一回線１０５ｂが誤接続である旨が報告される。
【００６０】
また、図１３では中継装置が２段に接続される場合について説明したが、中継装置の接続段数は３段以上であってもよいし、中継装置間をツリー上に分岐接続することによって多数の入出力装置を接続するようにした構成であってもよい。つまり、本実施形態によれば、中継装置が多段接続された拡張構成の制御システムにおいて装置間ケーブルの誤接続が発生した場合であっても、誤接続箇所を正しく検出することができる。
【００６１】
以上説明したように、本実施形態によれば、通信路が二重化されたシステムにおいて、作業ミス等によって装置間ケーブルの誤接続が発生した場合であっても、システムの稼動に先立って装置間ケーブルの誤接続を正確かつ容易に検出することができる。また、中継装置が多段接続されるシステムにおいては、接続段数の最も少ない装置から順に接続の正常性を判定していくことにより、誤接続の発生箇所を最小範囲で特定できるので、中継装置が多段接続される大規模なシステムにも本発明を適用することができる。
【００６２】
以上にて、本発明を実施するための形態の説明を終えるが、本発明の実施の態様はこれに限られるものではなく、本発明の趣旨を逸脱しない範囲において各種変更が可能である。
【符号の説明】
【００６３】
１０，１０Ａ，１０Ｂ，１０Ｃ  制御システム
１００  演算装置（診断元の装置、誤接続検出装置）
１０１，１０１ａ，１０１ｂ  第一回線中継装置（中継装置）
１０２，１０２ａ，１０２ｂ  第二回線中継装置（中継装置）
１０３，１０３ａ，１０３ｂ  入出力装置（通信先の装置）
１０４  制御対象（被制御装置）
１０５ａ，１０５ｂ，１０５ｃ，１０５ｄ  第一回線（装置間ケーブル）
１０６ａ，１０６ｂ，１０６ｃ，１０６ｄ  第二回線（装置間ケーブル）
１０７  制御演算部（判定手段）
１０８  通信制御部（送出手段）
１０９  メモリ（記憶部）
１１０，１１６，１１６ａ，１１６ｂ  通信データ制御部
１１１，１１７，１１７ａ，１１７ｂ  異常検出部
１１２，１１２ａ，１１２ｂ，１１３，１１３ａ，１１３ｂ  通信制御部
１１４，１１４ａ，１１４ｂ  通信制御部
１１５，１１５ａ，１１５ｂ  入出力制御部
２００  受信フレームデコード部
２０５，２０６  ＯＲ回路
Ｄ１  中継装置の通信データ（診断データ）
Ｄ２  入出力装置の通信データ（診断データ）
Ｅ    誤接続発生箇所
Ｆ    通信フレーム
Ｆ１  テストフレーム（診断用通信フレーム）
Ｆ２  正常応答フレーム
Ｆ３  異常応答フレーム（通信路の異常を通知する応答フレーム）
ＳＴ  通信ステータス
Ｖ１  中継装置用照合データ（照合データ）
Ｖ２  入出力装置用照合データ（照合データ）
【図１】
2012235335.tif 000003
【図２】
2012235335.tif 000004
【図３】
2012235335.tif 000005
【図４】
2012235335.tif 000006
【図５】
2012235335.tif 000007
【図６】
2012235335.tif 000008
【図７】
2012235335.tif 000009
【図８】
2012235335.tif 000010
【図９】
2012235335.tif 000011
【図１０】
2012235335.tif 000012
【図１１】
2012235335.tif 000013
【図１２】
2012235335.tif 000014
【図１３】
2012235335.tif 000015