(57)【要約】【課題】  コントローラからの定周期データ受信のたびにコントローラの内部演算回路の異常の有無を確認でき、コントローラの異常を即座に検知すること。【解決手段】  制御装置と主コントローラに複数の符号化ルールと各符号化ルールを特定するための符号化キーを持たせ、従コントローラから符号化処理を行うための符号化キーを通知する。主コントローラでは、この符号化キーに対応する符号化ルールにしたがって送信データとチェックコードの符号化処理を行い制御装置へ送信する。制御装置では、符号化キーに対応する復号化ルールにしたがって、受信データを復号化してチェックコードが正しいか否かの判定を行う。従コントローラは複数の制御装置から異常通知を受信したときに主コントローラの異常としてバックアップ処理を行う。【選択図】      図２
2013017100.tif 000002
【特許請求の範囲】
【請求項１】
一または二以上の制御装置と、該制御装置と伝送路を介して接続し、該制御装置に対して制御指令を送信する主コントローラと、該主コントローラの異常を監視する従コントローラとを有するデータ伝送システムであって、
前記主コントローラは、
符号化処理および複合化処理を行うための複数の符号化ルールのそれぞれを特定するための符号化キーを保存する手段と、
前記従コントローラから送られてくる符号化キーを保存する符号化キー保存手段と、
前記従コントローラまたは前記制御装置から送られてくるデータを受信する受信処理部と、
該受信処理部の受信データを該符号化キー保存手段に保存されている符号化キーを用いて復号化処理する復号化部と、
該復号化部によって複号化処理された受信データの異常の有無を判定し、異常無しの場合であって、該受信データが従コントローラから送られてきた符号化キーの場合は該符号化キー保存手段に該符号化キーを保存する異常検出部と、
周期的に前記制御装置へ送信するための制御指令を生成する送信データ生成部と、
当該制御指令に対するチェックコードを生成するチェックコード生成部と、
該符号化キー保存手段に保存されている符号化キーに対応する符号化ルールに基づいて前記制御指令と前記チェックコードとを符号化処理して送信データを生成する符号化部と、該符号化部によって生成された送信データを前記制御装置へ送信する送信処理部と、を備え、
前記従コントローラは、
符号化処理および複合化処理を行うための複数の符号化ルールのそれぞれを特定するための符号化キーを保存する手段と、
前記主コントローラおよび前記制御装置へ送信する符号化キーを生成する符号化キー切替部と、
前記制御装置から送られてくる異常通知を受信することによって前記主コントローラの異常と判定し、前記制御装置に対して、コントローラ切替指令を送信する異常検出部と、
前記主コントローラが異常の場合に、前記制御装置へ送信するための制御指令を生成する送信データ生成部と、
該符号化キー切替部によって生成された符号化キーまたは該送信データ生成部によって生成された制御指令を前回送信した符号化キーによって符号化処理して送信データを生成する符号化部と、
該符号化部によって生成された送信データを前記制御装置へ送信する送信処理部と、を備え、
前記制御装置は、
符号化処理および複合化処理を行うための複数の符号化ルールのそれぞれを特定するための符号化キーを保存する手段と、
前記従コントローラから送られてくる符号化キーを保存する符号化キー保存手段と、
前記主コントローラまたは前記従コントローラから送られてくるデータを受信する受信処理部と、
該受信処理部の受信データを該符号化キー保存手段に保存されている符号化キーを用いて復号化処理する復号化部と、
該復号化部によって複号化処理された受信データの異常の有無を判定し、該判定の結果が異常無しの場合であって、該受信データが前記従コントローラから送られてきた符号化キーの場合は該符号化キー保存手段に該符号化キーを保存する一方、該判定の結果が異常有りの場合であって、該受信データが前記主コントローラから送られてきた制御指令の場合は前記主コントローラに異常が発生したものとして前記従コントローラに異常通知を送信する異常検出部と、
該判定の結果が異常無しの場合であって、該受信データが前記主コントローラから送られてきた制御指令の場合は、該制御指令に従って動作する制御指令実行部と、
を備えたことを特徴とするデータ伝送システム。
【請求項２】
請求項１記載のデータ伝送システムにおいて、符号化ルールとして共通鍵暗号化アルゴリズムを適用することを特徴とするデータ伝送システム。
【請求項３】
前記従コントローラは、複数の前記制御装置から異常通知を受けることにより、前記主コントローラの異常と判定することを特徴とする請求項１または２に記載のデータ伝送システム。
【請求項４】
前記送信データは、伝送フォーマット上の所定位置に送信データが少なくとも制御指令か、符号化キーかを識別するための所定長の種別コードを含み、
前記主コントローラの符号化部および前記従コントローラの符号化部は、種別コードが制御指令以外のときは送信データの符号化処理を行わず、種別コードが制御指令のときは該種別コードを除く送信データ部分について符号化処理を行い、
前記主コントローラの復号化部および前記制御装置の復号化部は、種別コードが制御指令以外のときは受信データの復号化処理を行わず、種別コードが制御指令のときは該種別コードを除く受信データ部分について復号化処理を行うことを特徴とする請求項１乃至３のいずれか一項に記載のデータ伝送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、交通分野や電力分野等に適用され、動作系,待機系のモードを有する２以上のコントローラと、各コントローラと伝送路を介して繋がり、各コントローラからの指令によって動作する複数の制御装置とで構成されるデータ伝送システムに関する。
【背景技術】
【０００２】
従来、制御装置と伝送路を介して繋がり、制御装置に対して制御指令を送信するコントローラとよって構成されるデータ伝送システムの信頼性の向上が図られている。
【０００３】
たとえば、特許文献１では、サイクリックに伝送する伝送データに通番と立上回数を入れて、この内容を確認することによって伝送データの正誤判定を行い、コントローラの異常を検出するシステムが開示されている。
【０００４】
また、特許文献２では、伝送装置のメモリ診断を行う補助機能を付加することにより、伝送路に繋がる装置の異常を検出する方法が記載されている。さらに、特許文献３では、伝送データに冗長符号を付加して受信側でその内容を照合することにより伝送経路の異常を検出することが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−２４４１５６号公報
【特許文献２】特開２００３−１４６２１４号公報
【特許文献３】特願平１０−５１２４４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の方法では、伝送路上で発生する障害については検出可能であるが、コントローラ内の障害を検出できない。また、メモリ診断などによってメモリの異常については検出できるが、近年のメモリの大容量化によりメモリ診断に時間がかかり、サイクリック伝送を前提としたとき、伝送周期（たとえば１０ｍｓ）内でメモリ異常を検出することは難しい。このため、メモリ異常が内在するにもかかわらず、それを検出できずに動作を行う時間が生ずる。また、コントローラ内部のＣＰＵなどロジック回路の異常については検出することができなかった。
【０００７】
本発明は、上述のかかる事情に鑑みてなされたものであり、コントローラからの定周期データ受信のたびにコントローラ内部の演算回路の異常の有無を確認でき、コントローラの異常を即座に検知することのできるデータ伝送システムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明に係るデータ伝送システムは、一または二以上の制御装置と、該制御装置と伝送路を介して接続し、該制御装置に対して制御指令を送信する主コントローラと、該主コントローラの異常を監視する従コントローラとを有するデータ伝送システムであって、前記主コントローラは、符号化処理および複合化処理を行うための複数の符号化ルールのそれぞれを特定するための符号化キーを保存する手段と、前記従コントローラから送られてくる符号化キーを保存する符号化キー保存手段と、前記従コントローラまたは前記制御装置から送られてくるデータを受信する受信処理部と、該受信処理部の受信データを該符号化キー保存手段に保存されている符号化キーを用いて復号化処理する復号化部と、該復号化部によって複号化処理された受信データの異常の有無を判定し、異常無しの場合であって、該受信データが従コントローラから送られてきた符号化キーの場合は該符号化キー保存手段に該符号化キーを保存する異常検出部と、周期的に前記制御装置へ送信するための制御指令を生成する送信データ生成部と、当該制御指令に対するチェックコードを生成するチェックコード生成部と、該符号化キー保存手段に保存されている符号化キーに対応する符号化ルールに基づいて前記制御指令と前記チェックコードとを符号化処理して送信データを生成する符号化部と、該符号化部によって生成された送信データを前記制御装置へ送信する送信処理部と、を備え、前記従コントローラは、符号化処理および複合化処理を行うための複数の符号化ルールのそれぞれを特定するための符号化キーを保存する手段と、前記主コントローラおよび前記制御装置へ送信する符号化キーを生成する符号化キー切替部と、前記制御装置から送られてくる異常通知を受信することによって前記主コントローラの異常と判定し、前記制御装置に対して、コントローラ切替指令を送信する異常検出部と、前記主コントローラが異常の場合に、前記制御装置へ送信するための制御指令を生成する送信データ生成部と、該符号化キー切替部によって生成された符号化キーまたは該送信データ生成部によって生成された制御指令を前回送信した符号化キーによって符号化処理して送信データを生成する符号化部と、該符号化部によって生成された送信データを前記制御装置へ送信する送信処理部と、を備え、前記制御装置は、符号化処理および複合化処理を行うための複数の符号化ルールのそれぞれを特定するための符号化キーを保存する手段と、前記従コントローラから送られてくる符号化キーを保存する符号化キー保存手段と、前記主コントローラまたは前記従コントローラから送られてくるデータを受信する受信処理部と、該受信処理部の受信データを該符号化キー保存手段に保存されている符号化キーを用いて復号化処理する復号化部と、該復号化部によって複号化処理された受信データの異常の有無を判定し、該判定の結果が異常無しの場合であって、該受信データが前記従コントローラから送られてきた符号化キーの場合は該符号化キー保存手段に該符号化キーを保存する一方、該判定の結果が異常有りの場合であって、該受信データが前記主コントローラから送られてきた制御指令の場合は前記主コントローラに異常が発生したものとして前記従コントローラに異常通知を送信する異常検出部と、該判定の結果が異常無しの場合であって、該受信データが前記主コントローラから送られてきた制御指令の場合は、該制御指令に従って動作する制御指令実行部と、を備えたことを特徴とする。
【０００９】
本発明では、制御装置と主コントローラに複数の符号化ルールと各符号化ルールを特定するための符号化キーを持たせ、従コントローラから符号化処理を行うための符号化キーを通知する。主コントローラでは、この符号化キーに対応する符号化ルールにしたがって送信データとチェックコードの符号化処理を行い制御装置へ送信する。制御装置では、符号化キーに対応する復号化ルールにしたがって、受信データを復号化してチェックコードが正しいか否かの判定を行う。従コントローラは複数の制御装置から異常通知を受信したときに主コントローラの異常としてバックアップ処理を行う。また、符号化ルールとして共通鍵暗号化アルゴリズムを用いることにより、簡便な手法でコントローラの異常の検知ができるのみならず高いセキュリティを実現することができる。
【００１０】
好ましくは、主コントローラや制御装置では、符号化キー保存手段には従コントローラから受信した符号化キーを受信順に最新のものから一定数保存しておいて、複合化処理の結果、異常検出部で異常を検出した場合は、過去に受信した符号化キーのうち新しいものから順にその符号化キーを用いて複合化処理をするようにすると良い。これにより、一時的に符号化キーの受信が出来ない事態が生じても正常に複合化処理をすることができる。
【００１１】
また、本発明に係るデータ伝送システムでは、送信データは、伝送フォーマット上の決められた位置に送信データが少なくとも制御指令か、符号化キーかを識別するためのある一定長の種別コードを含み、前記主コントローラの符号化部および前記従コントローラの符号化部は、種別コードが制御指令以外のときは送信データの符号化処理を行わず、種別コードが制御指令のときは該種別コードを除く送信データ部分について符号化処理を行い、前記主コントローラの復号化部および前記制御装置の復号化部は、種別コードが制御指令以外のときは受信データの復号化処理を行わず、種別コードが制御指令のときは該種別コードを除く受信データ部分について復号化処理を行うことを特徴とする。
【００１２】
本発明では、伝送データに種別コードを付加し、制御指令については、種別コードに続く送信データ部分の符号化処理・復号化処理を行い、符号化キーについては符号化処理・復号化処理を行わないようにしたので、一時的に符号化キーのずれが生じても、次の送信周期で復帰することができる。
【発明の効果】
【００１３】
以上説明したように、本発明によれば、コントローラからの定周期データ受信のたびにコントローラ内部の演算回路の異常の有無を確認できるため、低頻度に実行される自己診断方式などと比較して、コントローラの異常を即座に検知することができ、信頼性の高いデータ伝送システムを構成することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態によるデータ伝送システムの装置構成図である。
【図２】図１の主コントローラ２aおよび従コントローラ２ｂの機能ブロック図である。
【図３】図１の制御装置６の機能ブロック図である。
【図４】図２の主コントローラ２aおよび従コントローラ２ｂの処理手順を示すフローチャートである。
【図５】図２の符号化キーテーブル４１および図３の符号化キーテーブル７１のデータ構成図である。
【図６】本発明の実施の形態による符号化ルール、複号化ルールの説明図である。
【図７】本発明の第１の実施の形態による伝送フォーマットの説明図である。
【図８】図２のステータステーブル４２および図３のステータステーブル７２の説明図である。
【図９】図３の制御装置６の処理手順を示すフローチャートである。
【図１０】本発明の第２の実施の形態による伝送フォーマットの説明図である。
【図１１】本発明の第２の実施の形態による主コントローラ２aおよび従コントローラ２ｂの処理手順を示すフローチャートである。
【図１２】本発明の第２の実施の形態による制御装置６の処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態によるデータ伝送システムについて、図面を参照しながら説明する。なお、以下に示す実施形態は本発明のデータ伝送システムにおける好適な具体例であり、技術的に好ましい種々の限定を付している場合もあるが、本発明の技術範囲は、特に本発明を限定する記載がない限り、これらの態様に限定されるものではない。また、以下に示す実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、かつ、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、以下に示す実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【００１６】
（全体構成）
図１は、本発明の実施の形態によるデータ伝送システムの装置構成図である。
この図において、データ伝送システム１は、起動時に動作系となって制御指令を送信する主コントローラ２ａ、起動時に待機系となって主コントローラ２ａをバックアップする従コントローラ２ｂ、主コントローラ２ａまたは従コントローラ２ｂからの制御指令を受けて外部装置（図示せず）に対して制御出力を行う複数の制御装置６、各装置２ａ，２ｂ，６をリング状に接続する伝送路４で構成されている。
【００１７】
主コントローラ２ａは動作系として伝送路４を介して制御装置６への指令値を含む制御指令を送信し、制御装置６からのステータス（たとえば、制御指令に対する応答や装置異常の有無）の受信を行うことによって、システムを制御する。従コントローラ２ｂは主コントローラ２ａに障害が発生したときに、自らが動作系となってシステムの制御を続行する。
【００１８】
このデータ伝送システム１の適用分野は特に限定されず、電力システム、自動車、鉄道車両などいろいろな分野に適用することができる。データ伝送システム１の適用例として、たとえば鉄道車両の制御系に用いた場合、制御装置６は、空調用制御装置、扉開閉用制御装置など機能ごと車両ごとに設けられ、両端の駆動車に夫々設けられた２台のコントローラのうち、進行方向側のコントローラが主コントローラ２ａとなって制御指令を各制御装置６へ送信する。たとえば、主コントローラ２ａは、空調の入り切り指令、設定温度などの指令値を読み込んで、空調用制御装置へ制御指令を送信したり、外部から扉開閉信号を読み込んで扉開閉用制御装置へ制御指令を送信する。
【００１９】
従コントローラ２ｂは、主コントローラ２ａと同じ機能を有しており、主コントローラ２ａの異常を検知したときに動作系となって、各制御装置６へ制御指令を送信する。
【００２０】
（コントローラ２ａ，２ｂの構成）
図２はコントローラ２ａ，２ｂの機能ブロック図である。図２に示すように、コントローラ２ａ，２ｂは、それぞれデータを演算処理する演算処理手段２０、データを記憶する記憶手段４０、データを分岐する３ポートスイッチ５１、データの送受信を実行する伝送コントローラ５２、伝送コントローラ５２および演算処理手段２０の双方から読書き可能な双方向メモリ５３を有している。
【００２１】
また、演算処理手段２０は、起動時に主系か従系かを判定するモード判定部２１、外部から制御指令や指令値を入力する入力処理部２２、所定のタイミングで符号化キーを切り替える符号化キー切替部２３、制御装置６や他方のコントローラへの送信データを生成する送信データ生成部２４、送信データのチェックコードを生成するチェックコード生成部２５、送信データとチェックコードの符号化処理を実行する符号化部２６、符号化されたデータを双方向メモリ５３に書き込んで送信処理を実行する送信処理部２７、伝送コントローラ５２からの受信通知によって双方向メモリ５３から受信データを読み込む受信処理部２８、受信データを復号化処理する復号化部２９、復号化されたデータをもとに異常の有無を検知する異常検出部３０、を備えている。これら各部２１〜３０は、ＣＰＵの機能としてブログラムによって実現可能である。
【００２２】
また、コントローラ２ａ，２ｂの記憶手段４０には、符号化ルールや復号化ルールに関連付けられた符号化キーを保存する符号化キーテーブル４１、伝送路４に繋がる制御装置やコントローラの正常／異常の状態（デフォルトは「正常」）やアドレスなどを保存するステータステーブル４２が予め格納されている。
【００２３】
図８は、コントローラ２ａ，２ｂが有するステータステーブル４２のデータ構成例である。各装置に対応づけてアドレス、正常／異常を示すステータス、主系／従系を示すフラグ、および動作系が否かを示すフラグがセットされている。なお、予め設定される送信元アドレスによって、ステータステーブル中の自装置を特定することができ、自装置のステータスについては自己診断によって正常／異常が書き込まれ、他の装置のステータスや動作系フラグについては、後述する処理によって書き込まれる。主系／従系のフラグについては、外部から入力されるモード信号の状態が書き込まれる。
【００２４】
３ポートスイッチ５１は、伝送路４の一方から来たデータを他方の伝送路４へ中継すると共に、伝送コントローラ５２側へも伝える。なお、特開２００６−３１４０９８号公報に記載されているように、伝送コントローラ５２側のポート（ポートｃ）にはスイッチ機能を設け、自装置を含む特定のアドレスのデータのみを取り込んで伝送コントローラ５２側へ伝えるようにしても良い。
【００２５】
また、伝送コントローラ５２から送信されたデータは、３ポートスイッチ５１を介して、伝送路４の宛先装置のある方向（ポートａまはたポートｂ）へ送信される。
【００２６】
したがって、図１に示すように、伝送路をループ構成とした場合、ある装置から送信されたデータは、右回りか、左回りのルートで各装置を順に伝わる。伝送路の１箇所が切れた場合でも、他方のルートを経由して全ての装置に対してデータを送ることができる。
【００２７】
なお、３ポートスイッチを用いたループ構成の代わりに、２重化されたバス構成など他の伝送路形態を用いることもできる。
【００２８】
（制御装置の構成）
図３は制御装置６の内部構成を示す機能ブロック図である。ハードウェア構成は、コントローラ２ａ，２ｂと同様に、データを演算処理する演算処理手段６０、データを記憶する記憶手段７０、データを分岐する３ポートスイッチ８１、データの送受信を実行する伝送コントローラ８２、伝送コントローラ８２および演算処理手段６０の双方から読書き可能な双方向メモリ８３を有している。
【００２９】
制御装置６の演算処理手段６０は、伝送コントローラ８２からの受信通知によって双方向メモリ８３から受信データを読み込む受信処理部６５、受信データを復号化処理する復号化部６６、復号化されたデータをもとに異常の有無を検出し、異常を検出した場合は「復号異常」を出力する異常検出部６７、制御指令受信時に異常が検出されなかった場合に制御指令を外部装置（図示せず）に出力する制御指令実行部６８、制御結果などのステータスや復号異常をコントローラ２ａ，２ｂへ通知するための送信データを生成する送信データ生成部６１、送信データのチェックコードを生成するチェックコード生成部６２、送信データとチェックコードの符号化処理を実行する符号化部６３、符号化されたデータを双方向メモリ８３に書き込んで送信処理を実行する送信処理部６４、を備えている。これら各部６１〜６８は、ＣＰＵの機能としてブログラムによって実現可能である。
【００３０】
また、各制御装置６の記憶手段７０には、コントローラ２ａ，２ｂと同様、符号化ルールや復号化ルールに関連付けられた符号化キーを保存する符号化キーテーブル７１、伝送路４に繋がる制御装置やコントローラの正常／異常の状態（デフォルトは「正常」）やアドレスなどを保存するステータステーブル７２が予め格納されている。ステータステーブル７２については、図８において主系／従系のフィールドが存在しない以外は、上述したステータステーブル４２の構成と同様である。
【００３１】
（データ伝送システム１の動作概要）
主コントローラ２ａから制御装置６へデータを送信する場合を例にして本システムの送受信処理の概要を説明する。
【００３２】
主コントローラ２ａの演算処理手段（ＣＰＵ）２０は送信すべきデータを双方向メモリ５３へ書き込んで伝送コントローラ５２に伝送要求をかける。伝送コントローラ５２は双方向メモリ５３に書き込まれたデータを順番に読み出して、３ポートスイッチ５１のポートｃへ送る。３ポートスイッチ５１は伝送コントローラ５２からの送信データを外部に接続された２つのポート（ポートａ，ポートｂ）の一方に出力し、伝送路４にデータを送出する。３ポートスイッチ５１のポートａ，ポートｂから出力された伝送データは、それぞれ制御装置６から隣接する制御装置６へ順々に伝えられて最終的に目的の制御装置６に到達する。
【００３３】
制御装置６の受信動作は次のように実施される。伝送路４を介して送られてきたデータは、制御装置６の３ポートスイッチ８１に入力されると、その宛先の制御装置６が存在する方向のポートに出力される。
【００３４】
このように、伝送路４を介して送られてきたデータは、３ポートスイッチ８１によって自制御装置宛てと判断されると、伝送コントローラ８２に入力される。伝送コントローラ８２は伝送データのエラーチェックなどを行い、データにエラーがなく、自装置宛てであることを確認すると双方向メモリ８３に受信データを書き込み、演算処理手段６０に割込信号などでデータを受信したことを通知する。演算処理手段６０は、この通知を受けることによって双方向メモリ８３内のデータを読み込み、そのデータに基づいて所定の処理を行う。
【００３５】
次に、データ伝送システム１の上記動作を実現するためのコントローラ２ａ，２ｂおよび制御装置６の処理手順について詳述する。
【００３６】
（コントローラ２ａ，２ｂの処理手順）
２台のコントローラには、それぞれ主系として立ち上がるか、従系として立ち上がるかを指定するモード信号が外部から入力されている。モード信号がオンのときは、主系すなわち主コントローラ２ａとして立ち上がり、モード信号がオフのときは、従系すなわち従コントローラ２ｂとして立ち上がる。なお、外部から信号を入力する代わりに、不揮発性メモリに主系，従系の設定を予め書き込んでおき、起動時に演算処理手段２０がこの設定データを読み込むようにしても良いし、システムによっては、主系、従系を固定にしてそれぞれ専用のプログラムによって動作するようにしても良い。
【００３７】
本実施の形態では、コントローラ２ａ，２ｂは同一の機能を有しており、外部からのモード信号によって、主系（主コントローラ２ａ）として機能するか、従系（従コントローラ２ｂ）として機能するかを決定するようにしている。
【００３８】
以下、図４を用いてコントローラ２ａ，２ｂの処理手順を詳述する。
コントローラ２ａ，２ｂは、電源投入やシステムリセット等によって起動すると、モード判定部２１は外部から主系／従系を指定するモード信号を読み込む（Ｓ１０１）。そして、モード信号がオンならば、主コントローラ２ａとして立ち上がり（Ｓ１０１で「ＹＥＳ」）、モード信号がオフならば、従コントローラ２ｂとして立ち上がる（Ｓ１０１で「ＮＯ」）。
【００３９】
まず、主コントローラ２ａの処理手順について説明する。主コントローラ２ａの送信データ生成部２４は、ステータステーブル４２の最初の制御装置６に対する送信データを生成する（Ｓ１０３）。たとえば、送信先が空調機の制御装置の場合は、設定温度を指令値として送信データを生成する。送信先が扉開閉の制御装置の場合は、開／閉を指令値として送信データを生成する。
【００４０】
次に、チェックコード生成部２５は、生成した送信データのチェックコードを作成して、送信データに付加する（Ｓ１０４）。チェックコードとしては、チェックサムやＣＲＣコードなどがある。そして、符号化部２６が送信データとチェックコードについて符号化処理を行う（Ｓ１０５）。
【００４１】
図５に符号化キーテーブル４１，７１のデータ構成例を示す。符号化キーテーブル４１，７１には、符号化ルール，復号化ルールと対応付けられた複数の符号化キーが登録されており、さらに、符号化処理，複号化処理で用いるべき一の符号化キー（以下、これを「指定キー」という。）がフラグによって特定されるようになっている。図５の例では、符号化キーｘに指定キーフラグがセットされているため、符号化処理，複号化処理では、この符号化キーｘに対応する符号化ルール，復号化ルールで処理が行われる。デフォルトでは、システムの全装置について同じ符号化キーが指定キーとして予め設定されている。その後、従コントローラ２ｂから送信されてきた符号化キーによって、指定キーフラグが書き換えられるようになっている。  
【００４２】
図６は、符号化ルールの説明図である。図６（Ａ）に符号化キーの構成例を示す。符号化キーは８ビットの符号化コード８個で構成され、合計で６４ビットの長さを持っている。符号化コードは６４ビットのデータ単位に対する符号化処理の指令を含んでおり、符号化コード＃１〜＃８の連続する８種類のデータ処理を連続して行うことによって符号化を行う。
【００４３】
図６（Ｂ）は、符号化コードの構成例である。８ビットのうち、上位２ビットは符号化演算コードであり、たとえば、00：右シフト、01：左シフト、10：加算、11：減算という演算種別を示す。下位６ビットは符号化演算パラメータであり、上位２ビットの符号化演算コードに対するパラメータになっている。たとえば、シフト演算であればシフト量、加減算であれば加減算値を示す。これらの演算は可逆であり、逆の演算を行うことによって元のデータに戻すこと（復号化）ができる。
【００４４】
図４のステップＳ１０５において、主コントローラ２ａの符号化部２６は、符号化キーテーブル４１から指定キーフラグのセットされている符号化キーを抽出し、そのキーに対応する符号化ルール、すなわち８種類の符号化コードに基づいて符号化処理を行う。次に、送信処理部２７は、符号化処理を施した送信データとチェックコード、および送信先の制御装置のアドレスを双方向メモリ５３へ書き込んで、伝送コントローラ５２へ送信要求を出力する（Ｓ１０６）。これにより、伝送コントローラ５２は、双方向メモリ５３から書き込まれたデータを読み込んで、制御装置６に向けて送信する。
【００４５】
図７は伝送フォーマット例である。送信データは、コントローラ２ａから制御装置６への指令値、あるいは制御装置６から主コントローラ２ａへのステータスとなる。この送信データに対してチェックコードが付加される。送信データとチェックコードは、演算処理手段２０で作成するデータ部（ペイロード）であるが、このデータ部に対して符号化処理が行われている。さらに、伝送フォーマットでは、伝送コントローラ５２によってＣＲＣコードが付加されている。このＣＲＣコードによって伝送系の異常を検出することができ、符号化されたチェックコードによって、コントローラ（すなわち演算処理系）の異常を検出することができるのである。
【００４６】
以上のステップＳ１０３からステップＳ１０６までの処理をステータステーブル４２に設定されている全ての制御装置６について繰り返す（Ｓ１０２ａ，Ｓ１０２ｂ）。このようにして、定周期で必ず全ての制御装置への送信データを生成する。
【００４７】
続いて、主コントローラ２ａは、従コントローラ２ｂへ全制御装置６への送信が終了したことを通知する。このとき、制御装置６への送信と同様に、送信データに対するチェックコードの生成や符号化処理を行う。
【００４８】
その後、次の周期が到来するまでスリープして（Ｓ１０８）、周期が到来すると再びステップＳ１０２ａに戻って、以降の処理を実行する。また、主コントローラ２ａは、スリープ期間中に従コントローラ２ｂから符号化キーを受信した場合は（Ｓ１０９）、符号化キーテーブル４１の当該符号化キーの指定キーフラグのみをセットする（Ｓ１１０）。
【００４９】
以上、主コントローラ２ａの処理手順について説明した。次に、従コントローラ２ｂの処理手順について説明する。
【００５０】
ステップＳ１０１の判定の結果、モード信号がオンしていなければ（Ｓ１０１で「ＮＯ」）、コントローラは従コントローラ２ｂとして立ち上がる。従コントローラ２ｂは立ち上がると、異常検出部３０により、まずステータステーブル４２にアクセスして、主コントローラ２ａに異常があるか否かを判定し（Ｓ１１１）、異常が無ければ（Ｓ１１１で「ＮＯ」）、いずれかの制御装置６からのデータ受信があったか否かを判定する（Ｓ１２０）。そして、受信があった場合は（Ｓ１２０で「ＹＥＳ」）、復号異常の通知か否かを判定し（Ｓ１２１）、予め定めた複数の制御装置から復号異常の通知があった場合は（Ｓ１２２で「ＹＥＳ」）、ステータステーブル４２の主コントローラ２ａのステータス領域に「異常」を書き込む（Ｓ１２３）。
【００５１】
そして、外部へ主コントローラ２ａの異常通知を行い（Ｓ１２４）、送信データ生成部２４等を介して全制御装置６へコントローラの切替指令、すなわち従コントローラ２ｂを動作系として設定する旨の指令を送信する（Ｓ１２５）。
【００５２】
ステップＳ１２０において、制御装置６からの受信がない場合（Ｓ１２０で「ＮＯ」）、主コントローラ２ａからの通知、すなわち全制御装置６への送信が完了した旨の通知があった場合は（Ｓ１２６で「ＹＥＳ」）、符号化キー切替部２３は、符号化キーテーブル４１の符号化キーの一覧から次の符号化キーを抽出して（Ｓ１２７）、主コントローラ２ａと全制御装置６へ抽出した符号化キーを送信する（Ｓ１２８）。このとき、符号化キーの抽出は、順番に抽出をしても良いし、ランダムに抽出しても良い。なお、ステップＳ１２８の符号化キーの切替通知は、直前の符号化キーで符号化して送信する。
【００５３】
一方、ステップＳ１１１の判定の結果、主コントローラ２ａに異常がある場合は（Ｓ１１１）、従コントローラ２ｂは、動作系として、ステップＳ１１２ａ〜ステップＳ１１２ｂの処理を繰り返す。この処理は、主コントローラ２ａのステップＳ１０２ａ〜ステップＳ１０２ｂの処理と同様である。
【００５４】
そして、従コントローラ２ｂは、全制御装置への送信が完了すると、符号化キー切替部２３によって符号化キーテーブル４１の符号化キーの一覧から次の符号化キーを抽出して（Ｓ１１７）、主コントローラ２ａと全制御装置６へ抽出した符号化キーを送信する（Ｓ１１８）。その後、次の周期までスリープし、次の周期になるとステップＳ１１１に戻って以降の処理を繰り返す（Ｓ１１９）。
【００５５】
（制御装置の動作）
次に、図９を用いて制御装置６の処理手順を説明する。
制御装置６の受信処理部６５は、伝送コントローラ８２から自装置宛ての受信があった旨の通知を受けると、双方向メモリ８３から受信データを読み出す（Ｓ２０１）。そして、復号化部６６は、記憶手段７０の符号化キーテーブル７１の指定キー領域に格納されている符号化キーを抽出し、その符号化キーに対応する復号化ルールを用いて受信データを復号化処理する（Ｓ２０２）。
【００５６】
符号化キーを用いた復号化処理について説明すると、符号化処理が符号化コード#1から開始されるのに対して、複号化処理では、符号化コード#８から処理が逆の順序で実行する。また、図６の符号化演算コードの意味付けは、復号化処理と符号化処理とでは逆になる。つまり、右シフトであれば左シフトに、左シフトであれば右シフトに、加算であれば減算に、減算であれば加算に処理種別が変更になる。
【００５７】
次に、異常検出部６７は、復号化されたデータのコードチェックを行い、異常を検出した場合は（Ｓ２０４）、復号化処理で異常を検出したこと（復号異常）を従コントローラ２ｂへ通知する（Ｓ２０５）。
【００５８】
なお、受信された符号化データに対する伝送エラーは、伝送エラーチェック用に伝送コントローラ５２，８２で別途付加されているＣＲＣコードでチェックされるので、復号化後にコードチェックエラーが発生しているということは、符号化演算処理または復号化演算処理に障害があるということを表している。
【００５９】
復号異常を検知した制御装置６は待機している従コントローラ２ｂに対して、エラー検知を通知する。そして、上述したように待機している従コントローラ２ｂは、複数の制御装置６より復号異常検知の通知を受信することによって、動作系として機能している主コントローラ２ａの内部に障害が発生したと判定し、接続されている全制御装置６に対して故障発生した主コントローラ２ａからの受信データを破棄し、従コントローラ２ｂ自身が送信するデータにより動作するようコントローラの切替指令を発行することになる。
【００６０】
一方、制御装置６は、ステップＳ２０４のコードチェックの結果、異常を検出しなかった場合は（Ｓ２０４で「ＮＯ」）、次に、制御指令の受信か否かを判定し（Ｓ２０６）、受信データが制御指令の場合は、次にステータステーブル７２を参照して動作系からの制御指令か否かを確認し（Ｓ２０７）、動作系からの制御指令の場合は、その制御指令を実行する（Ｓ２０８）。
【００６１】
ステップＳ２０６の判定の結果、制御指令でない場合は（Ｓ２０６で「ＮＯ」）、次に符号化キーの受信（符号化キー切替指令）か否かを判定し（Ｓ２０９）、符号化キーの受信の場合は、符号化キーテーブル７１中の受信した符号化キーに指定キーフラグをセットして（Ｓ２１０）、次の復号化処理で使用する。また、受信データが動作系切替指令の場合は（Ｓ２１１で「ＹＥＳ」）、ステータステーブル７２の動作系フラグを書き換える。
【００６２】
以上のごとく、本発明の実施の形態によれば、主コントローラおよび複数の制御装置は、従コントローラから周期的に送信される符号化キーによって、符号化ルールおよび暗号化ルールを切り替えるので、各制御装置は、暗号化した受信データがコードチェックエラーになることによって、伝送系の異常とコントローラの異常とを区別してコントローラの異常を確実に検出することができる。
【００６３】
次に本発明の第２の実施の形態について説明する。
本実施の形態では、図１０に示すように、伝送データの特定位置（たとえば先頭）の所定長を種別コードに割り当てる。種別コードは、送信データの種類を表し、たとえば、符号化キー、制御指令、ステータスなどがある。そして、種別コードが制御指令のときのみ、種別コードを含まない、送信データおよびチェックコードについてのみ符号化、復号化処理を行うようにしたものである。
【００６４】
本実施の形態のコントローラ２ａ，２ｂおよび制御装置６の機能ブロック図は、基本的に図２、図３に示す第１の実施の形態と同様である。
【００６５】
以下、図１１、図１２を用いて、本実施の形態のコントローラ２ａ，２ｂおよび制御装置６の処理手順について第１の実施の形態との相違点を中心に説明する。
【００６６】
（従コントローラ２ｂの処理手順）
従コントローラ２ｂの受信処理部２８は、主コントローラ２ａに異常がない場合（Ｓ３１１で「ＮＯ」）、主コントローラ２ａからデータを受信したときに、種別コードは制御指令か否かを判定する。そして、種別コードが制御指令の場合は、次の符号化キーを抽出し、抽出した符号化キーを主コントローラ２ａと全制御装置６へ送信する。
【００６７】
その後、復号化部２９は、種別コードを除く送信データとチェックコード部分について符号化キーに対応した復号化処理を行う。そして、異常検出部３０によりチェックコードが不一致か否かを判定し、不一致の場合すなわち復号異常の場合は、最新の復号異常発生時刻を記録して、主コントローラ異常カウンタをカウントアップし、カウンタ値が一定値以上になると主コントローラ異常を出力して、全制御装置６に対して動作系切り替え指令を送信する。
【００６８】
一方、ステップＳ３２０で「ＮＯ」の場合は、次に制御装置６からの受信があるか否かを判定し、制御装置６からの受信がある場合は、復号異常か否かを判定する。そして、復号異常の場合は、ステップＳ３２７で記録した最新の異常発生時刻と制御装置６で検出した復号異常の時刻との差が一周期以内の場合は、ステップＳ３２８へ移行して主コントローラ２ａの異常としてカウントする。ステップＳ３３４で前後一周期以内に主コントローラの復号異常が発生していない場合は（Ｓ３３４で「ＮＯ」）、当該制御装置の異常として当該制御装置の異常カウンタをカウントアップする（Ｓ３３５）。そしてカウンタ値が一定値以上になると（Ｓ３３６）、当該制御装置の異常として出力する（Ｓ３３７）。
【００６９】
図１１において、主コントローラ２ａの処理（Ｓ３０１〜Ｓ３１０）および従コントローラ２ｂが動作系になったときの処理（Ｓ３１１〜Ｓ３１９）については、伝送データ中、種別コードについては符号化処理の対象としない点を除いては、図４のＳ１０１〜Ｓ１１０およびＳ１１１〜Ｓ１１９と同様であるので説明を割愛する。
【００７０】
（制御装置６の処理手順）
図１２において、受信処理部６５は、伝送コントローラ８２から自装置宛ての受信があった旨の通知を受けると、双方向メモリ８３から受信データを読み出す（Ｓ４０１）。受信処理部６５は、次に、受信データの種別コードを読み出して（Ｓ４０２）、種別コードの内容を判定する（Ｓ４０３）。
【００７１】
種別コードが制御指令の場合は、次に受信データの送信元アドレスから動作系からの制御指令か否かを判定し（Ｓ４０４）、動作系からの制御指令の場合は、符号化キーテーブル７１に登録されている指定キーフラグのセットされている符号化キーを抽出し、その符号化キーに対応する復号化ルールを用いて受信データを復号化処理する（Ｓ４０５）。そして、復号化したデータのコードをチェックして異常を検出した場合は（Ｓ４０６，Ｓ４０７）、復号化処理で異常を検出したこと（復号異常）を従コントローラ２ｂへ通知する（Ｓ４０８）。コードチェックの結果、異常を検出しなかった場合は（Ｓ４０７で「ＮＯ」）、制御指令を実行する（Ｓ４０９）。
【００７２】
ステップＳ４０３において、種別コードが符号化キーの切替指令の場合は、受信した符号化キーを次回復号化時に使用する符号化キーとして符号化キーテーブル７１の指定キーフラグをセットする（Ｓ４１１）。
【００７３】
ステップＳ４０３において、種別コードが動作系切替指令の場合は、ステータステーブル７２の動作系フラグを従コントローラ２ｂ側へ切り替える。
【００７４】
以上、本実施の形態によれば、伝送データに種別コードを付加し、制御指令についてのみ、種別コードに続く送信データおよびチェックコードを符号化・復号化処理をするようにしたので、一時的に符号化キーのずれが生じても、次の送信周期で復帰することができる。また、主コントローラは、種別コードを制御指令として、定周期で従コントローラへ送信するようにしたので、従コントローラは、主コントローラからの受信データのコードチェック結果と制御装置からの復号異常の通知とから主コントローラの異常か制御装置の異常かを精度良く判定することができる。
【００７５】
なお、上記各実施の形態において、制御指令以外は必ずしも符号化処理・複合化処理は必ずしも行わなくても良いので、制御指令の送受信に係らない場合は符号化部・複号化部は省略することができる。
【符号の説明】
【００７６】
１      データ伝送システム
２ａ    主コントローラ
２ｂ    従コントローラ
４      伝送路
６      制御装置
２０，６０   演算処理手段
２１    モード判定部
２２    入力処理部
２３    符号化キー切替部
２４，６１   送信データ生成部
２５，６２   チェックコード生成部
２６，６３   符号化部
２７，６４   送信処理部
２８，６５   受信処理部
２９，６６   復号化部
３０，６７   異常検出部
４０，７０   記憶手段
４１，７１   符号化キーテーブル
４２，７２   ステータステーブル
５１，８１   ポートスイッチ
５２，８２   伝送コントローラ
５３，８３   双方向メモリ
６８   制御指令実行部
【図１】
2013017100.tif 000003
【図２】
2013017100.tif 000004
【図３】
2013017100.tif 000005
【図４】
2013017100.tif 000006
【図５】
2013017100.tif 000007
【図６】
2013017100.tif 000008
【図７】
2013017100.tif 000009
【図８】
2013017100.tif 000010
【図９】
2013017100.tif 000011
【図１０】
2013017100.tif 000012
【図１１】
2013017100.tif 000013
【図１２】
2013017100.tif 000014