(57)【要約】【課題】複数種類のネットワークを有する車内ネットワークにおいて、ネットワーク間で通信データを送受信することのできる技術を提供する。【解決手段】本発明に係る車内データ中継装置は、通信データの送信先が当該車内データ中継装置に直接接続されていないネットワークである場合は、他の車内データ中継装置にその通信データを中継する。【選択図】図５
2011166421.tif 000002
【特許請求の範囲】
【請求項１】
車内ネットワーク内の通信データを中継する装置であって、
前記車内ネットワークから通信データを受信する受信部と、
前記車内ネットワークに通信データを送信する送信部と、
前記送信部が前記通信データを中継する中継先を決定する中継処理部と、
を備え、
前記中継処理部は、
前記受信部が受信した前記通信データが当該車内データ中継装置に直接接続されていないネットワークを送信先としている場合は、前記送信部が前記通信データを他の車内データ中継装置に中継するように前記中継先を決定し、
前記受信部が受信した前記通信データが当該車内データ中継装置に直接接続されているネットワークを送信先としている場合は、前記送信部が前記通信データをその送信先ネットワークに中継するように前記中継先を決定する
ことを特徴とする車内データ中継装置。
【請求項２】
前記中継処理部が前記通信データを中継する規則を記述した通信経路情報を保持するルーティングテーブルを格納する記憶部と、
前記ルーティングテーブルを更新するルーティングテーブル更新処理部と、
を備え、
前記受信部は、
前記通信経路情報を保持するトポロジ情報を受信し、
前記ルーティングテーブル更新処理部は、
前記トポロジ情報を用いて前記ルーティングテーブルを更新する
ことを特徴とする請求項１記載の車内データ中継装置。
【請求項３】
前記受信部は、
前記通信経路情報およびその宛先を記述した前記トポロジ情報を受信し、
前記ルーティングテーブル更新処理部は、
前記トポロジ情報が当該車内データ中継装置宛である場合は、前記トポロジ情報を用いて前記ルーティングテーブルを更新し、
前記トポロジ情報が当該車内データ中継装置宛でない場合は、前記ルーティングテーブルを更新しない
ことを特徴とする請求項２記載の車内データ中継装置。
【請求項４】
前記トポロジ情報は、
前記通信データの識別子と前記通信経路情報の対応関係を記述しており、
前記ルーティングテーブル更新処理部は、
前記通信データの識別子をキーにして前記ルーティングテーブル内に前記通信経路情報が既に格納されているか否かを検索し、
前記ルーティングテーブル内に前記通信経路情報が格納されていない場合は、前記トポロジ情報を用いて前記ルーティングテーブルを更新する
ことを特徴とする請求項２記載の車内データ中継装置。
【請求項５】
前記通信データは、
当該通信データが前記トポロジ情報を保持している場合は、その旨を示すトポロジ情報識別子を保持しており、
前記ルーティングテーブル更新処理部は、
前記通信データが前記トポロジ情報識別子を保持している場合に限り前記トポロジ情報を用いて前記ルーティングテーブルを更新する
ことを特徴とする請求項２記載の車内データ中継装置。
【請求項６】
前記中継処理部は、
前記トポロジ情報が当該車内データ中継装置宛でない場合は、前記送信部が前記トポロジ情報を他の車内データ中継装置に中継するように、前記中継先を決定する
ことを特徴とする請求項２記載の車内データ中継装置。
【請求項７】
前記トポロジ情報は、
前記通信データのフレームＩＤと、
前記通信データを中継する際に前記フレームＩＤを中継先の車内ネットワーク上で用いられるフレームＩＤに変換すべき旨を指示する第１フレームＩＤ変換指示情報と、
中継先の車内ネットワーク上で用いられるフレームＩＤと、
の対応関係を記述しており、
前記ルーティングテーブル更新処理部は、
前記通信データが前記第１フレームＩＤ変換指示情報を保持している場合は、
前記トポロジ情報が記述している前記対応関係にしたがって、中継前の前記通信データのフレームＩＤを中継先の車内ネットワーク上で用いられるフレームＩＤに変換する規則を、前記ルーティングテーブルに格納し、
前記中継処理部は、
前記ルーティングテーブルが記述している前記規則にしたがって、中継前の前記通信データのフレームＩＤを、中継先の車内ネットワーク上で用いられるフレームＩＤに変換する
ことを特徴とする請求項２記載の車内データ中継装置。
【請求項８】
前記トポロジ情報は、
前記通信データのフレームＩＤと、
前記通信データを中継する際に前記フレームＩＤを前記データ部分に格納すべき旨を指示する第２フレームＩＤ変換指示情報と、
の対応関係を記述しており、
前記通信データは、
当該通信データのフレームＩＤと、
当該通信データのデータ本体を格納するデータ部分と、
を保持しており、
前記ルーティングテーブル更新処理部は、
前記通信データが前記第２フレームＩＤ変換指示情報を保持している場合は、
中継前の前記フレームＩＤを前記通信データのデータ部分に格納し前記通信データのフレームＩＤを中継先の車内ネットワーク上で用いられるフレームＩＤに変換する規則を、前記ルーティングテーブルに格納し、
前記中継処理部は、
前記ルーティングテーブルが記述している前記規則にしたがって、中継前の前記フレームＩＤを前記通信データのデータ部分に格納するとともに、前記通信データのフレームＩＤを、中継先の車内ネットワーク上で用いられるフレームＩＤに変換する
ことを特徴とする請求項２記載の車内データ中継装置。
【請求項９】
前記トポロジ情報は、
前記通信データのフレームＩＤと、
前記通信データを中継する際に前記フレームＩＤを前記データ部分に格納すべき旨を指示する第３フレームＩＤ変換指示情報と、
前記通信データは、
当該通信データのフレームＩＤと、
当該通信データのデータ本体および中継先の車内ネットワーク上で用いられるフレームＩＤを格納するデータ部分と、
を保持しており、
前記中継処理部は、
前記通信データが前記第３フレームＩＤ変換指示情報を保持している場合は、
前記通信データのフレームＩＤを、前記データ部分が格納しているフレームＩＤに変換する規則を、前記ルーティングテーブルに格納し、
前記中継処理部は、
前記ルーティングテーブルが記述している前記規則にしたがって、前記通信データのデータ部分に格納されている、中継先の車内ネットワーク上で用いられるフレームＩＤを取り出し、前記通信データのフレームＩＤを前記データ部分から取り出したフレームＩＤに変換する
ことを特徴とする請求項２記載の車内データ中継装置。
【請求項１０】
請求項１記載の車内データ中継装置と、
車両を制御する車両制御装置と、
を有し、前記車内データ中継装置と前記車両制御装置は前記車内ネットワークを介して接続されている
を有することを特徴とする車両制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車内ネットワーク内のデータを中継する技術に関するものである。
【背景技術】
【０００２】
近年の多くの車両制御システムは、電子化された車両制御機器を操作するＥＣＵ、すなわち電子制御装置（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）と、複数のＥＣＵ間の通信を可能にする車載ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）から構成される。この車載ＬＡＮの一つとして、広く利用されているネットワークに、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）がある。
【０００３】
一方で、車両および車両制御システムの高機能化に伴い、車内ネットワークを流れるデータ量が増加し、ＣＡＮの通信帯域が不足してきている。そこで近年では、ＣＡＮよりも通信容量の大きいＦｌｅｘＲａｙ（登録商標）の採用が進んでいる。ＦｌｅｘＲａｙはＣＡＮと比べて約１０倍の伝送速度を備えるため、大量のデータを通信することが可能である。
【０００４】
車両制御システムは、一般に車内ネットワークを介して複数のＥＣＵが通信しながら連携して車両を制御するシステムである。車内ネットワークには、非周期的にデータを送信するイベント駆動型ネットワークであるＣＡＮ、周期的にデータを送信する時間駆動型ネットワークであるＦｌｅｘＲａｙなど、複数種類のネットワークが含まれる。
【０００５】
このような複数種類のネットワークを介してＥＣＵ間で通信するためには、ネットワーク間の通信方式などの差異を吸収して通信データをネットワーク間で中継する車内データ中継装置（ＧＷ  ＥＣＵ：ゲートウェイＥＣＵ）が必要になる。
【０００６】
車両制御システムでは、車種、製品の仕向け地、ユーザが自動車を購入する際の機能選択などに応じてシステムの構成が異なるため、車内データ中継装置に設定する通信経路情報を個別に調整する必要がある。例えば車種等が変わると、使用するＥＣＵが同じであっても、システムを構成するネットワークとそれに接続するＥＣＵの配置が異なるため、ＥＣＵ間の通信経路が変わる。車内データ中継装置は、それに合わせて通信経路情報を調整する必要がある。
【０００７】
通信経路情報を変更するためには、車内データ中継装置のプログラムを修正し、再度コンパイルする必要がある。そのため、プログラムを修正しコンパイルするための工数、設定が正しいことを検証する工数などが必要となり、負担が大きい。そこで、車内データ中継装置に設定すべき通信経路情報が変わっても、車内データ中継装置のプログラムを修正せずに、車内データ中継装置の通信経路情報を変更したいという要求がある。
【０００８】
下記特許文献１では、車内データ中継装置のプログラムを変更せずに通信経路情報を変更する手法が提案されている。同文献では、車内データ中継装置自身が、中継すべきデータの有無をＥＣＵに問い合わせる。ＥＣＵは、車内データ中継装置が中継すべきデータを保持している場合は、そのデータおよびデータの識別子を含むメッセージを返信する。車内データ中継装置は、データの識別子とその中継先の対応関係を、通信経路情報として新たに登録または更新する。
【０００９】
下記特許文献２では、ＥＣＵから車内データ中継装置に対し、通信経路情報を新たに登録または更新するよう要求する手法が記載されている。
【００１０】
一方、ＴＣＰ／ＩＰネットワークでは、ノードが送信するデータの送信先ＩＰアドレスを指定してメッセージを送信し、そのメッセージを受信したルータがメッセージの送信先ＩＰに応じてメッセージを中継する。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００６−３１９５４０号公報
【特許文献２】特開２００５−３４１４９５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
上記特許文献１に記載の技術では、ネットワーク構成が車内データ中継装置を中心とするスター型である場合は、車内データ中継装置のプログラムを変更することなく、通信経路情報を登録または更新することができる。
【００１３】
しかし、近年の車内ネットワークでは、データ容量が増大しているため、スター型のネットワーク構成では処理能力が不足する可能性がある。そこで、車内ネットワークの一部に高速なネットワークを導入して、処理能力の改善を図ることが考えられる。この場合、ネットワーク間の通信方式の差異などを吸収するため、各ネットワークの出入口部分にそれぞれ車内データ中継装置を設ける必要がある。
【００１４】
また、スター型ネットワークでは、単一の車内データ中継装置が中継前後の通信方式などの差異を吸収すれば足りるが、複数種類のネットワークが多段的に接続されているネットワークでは、車内データ中継装置間で通信データを中継する必要がある。そのため、通信データの形式を変換するなどの処理も多段的に必要となる。
【００１５】
スター型のネットワーク構成を前提とした車内データ中継装置は、車内データ中継装置間でデータを中継することを想定しておらず、そのためのメッセージ形式が定義されていない場合がある。さらには、ＥＣＵが送信した通信経路情報を他の車内データ中継装置に中継するためのメッセージ形式が存在しない。したがって、上記特許文献１に記載の技術において複数種類のネットワークを車内データ中継装置で接続すると、車内データ中継装置に挟まれた区間で通信経路情報を中継することができない。その結果、車内データ中継装置のプログラムを変更しなければ、通信経路情報を新規登録または更新することができない。
【００１６】
上記特許文献２に記載の技術では、ＥＣＵから車内データ中継装置に対し、通信経路情報を新たに登録または更新するよう要求したとしても、その要求を他の車内データ中継装置に中継することができない。したがって、特許文献１と同様の課題がある。
【００１７】
また、ＴＣＰ／ＩＰネットワークで用いられているルーティング技術は、個々のノード毎に送信元ノードと送信先ノードの対応関係を記述するものである。一方、車内ネットワークでは個々のノード単位に宛先を指定するのではなく、ネットワーク単位で宛先を指定する。車内ネットワークにおいて、個々のノード単位で通信経路を指定するとようにルーティングテーブルを記載すると、車種ごとに通信経路情報を個別に設定し直さなければならず、開発負荷が増加する。
【００１８】
本発明は、上記のような課題を解決するためになされたものであり、複数種類のネットワークを有する車内ネットワークにおいて、ネットワーク間で通信データを送受信することのできる技術を提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明に係る車内データ中継装置は、通信データの送信先が当該車内データ中継装置に直接接続されていないネットワークである場合は、他の車内データ中継装置にその通信データを中継する。
【発明の効果】
【００２０】
本発明に係る車内データ中継装置によれば、車内データ中継装置間で通信データを中継することができる。これにより、複数種類のネットワークがスター型以外の構成で接続されている場合でも、異なるネットワークに属するＥＣＵ間で通信することができる。
【図面の簡単な説明】
【００２１】
【図１】実施の形態１に係る車両制御システム１０００のネットワーク構成図である。
【図２】車内データ中継装置１００の機能ブロック図である。
【図３】トポロジ設定装置２００の機能ブロック図である。
【図４】トポロジ設定装置２００のトポロジ情報記憶領域２２２が格納しているトポロジ情報テーブル４００の構成とデータ例を示す図である。
【図５】トポロジ設定装置２００が図４の１行目のトポロジ情報を各車内データ中継装置１００に送信する様子を示す図である。
【図６】図５のステップ（３）で更新されたルーティングテーブルの構成とデータ例を示す図である。
【図７】図５のステップ（４）で更新されたルーティングテーブルの構成とデータ例を示す図である。
【図８】トポロジ設定装置２００の動作フローを示す図である。
【図９】車内データ中継装置１００の動作フローを示す図である。
【図１０】図９のステップＳ９１０の詳細を示す動作フローである。
【図１１】実施の形態２の第１例におけるトポロジ情報テーブル４００のデータ例を示す図である。
【図１２】実施の形態２の第１例において通信データが中継される過程を示す図である。
【図１３】車内データ中継装置１００ｃのルーティングテーブルを図１１に示すトポロジ情報によって更新した後のデータ例を示す図である。
【図１４】車内データ中継装置１００ｂのルーティングテーブルを図１１に示すトポロジ情報によって更新した後のデータ例を示す図である。
【図１５】実施の形態２の第２例におけるトポロジ情報テーブル４００のデータ例を示す図である。
【図１６】実施の形態２の第２例において通信データが中継される過程を示す図である。
【図１７】車内データ中継装置１００ｃのルーティングテーブルを図１５に示すトポロジ情報によって更新した後のデータ例を示す図である。
【図１８】車内データ中継装置１００ｂのルーティングテーブルを図１５に示すトポロジ情報によって更新した後のデータ例を示す図である。
【図１９】トポロジ情報テーブル４００の第１変形例を示す図である。
【図２０】トポロジ情報テーブル４００の第２変形例を示す図である。
【図２１】トポロジ情報テーブル４００の第３変形例を示す図である。
【図２２】トポロジ情報テーブル４００の第４変形例を示す図である。
【図２３】ルーティングテーブルの第１変形例を示す図である。
【図２４】ルーティングテーブルの第２変形例を示す図である。
【図２５】ルーティングテーブルの第３変形例を示す図である。
【図２６】ルーティングテーブルの第４変形例を示す図である。
【図２７】ルーティングテーブルの第５変形例を示す図である。
【図２８】ＣＡＮの通信プロトコルにおけるデータフレーム２００１を示す。
【図２９】ＦｌｅｘＲａｙの通信プロトコルにおけるＦｌｅｘＲａｙフレーム２１０１を示す。
【図３０】実施の形態６に係る車両制御システム１０００のネットワーク構成図である。
【図３１】エンジン制御ＥＣＵ１３１０の機能ブロック図である。
【図３２】メータ搭載ＥＣＵ１１１０の機能ブロック図である。
【図３３】実施の形態７に係る車両制御システム１０００のネットワーク構成図である。
【図３４】実施の形態８に係る車両制御システム１０００のネットワーク構成図である。
【発明を実施するための形態】
【００２２】
＜実施の形態１＞
図１は、本発明の実施の形態１に係る車両制御システム１０００のネットワーク構成図である。車両制御システム１０００は、車両の動作を制御する１以上のＥＣＵ（電子制御ユニット）をネットワークで接続した構成を有する。各ＥＣＵは車両の各部を制御するとともに、必要に応じて他のＥＣＵと通信する。
【００２３】
車両制御システム１０００は、ボディ制御サブシステム１１００、車間距離制御サブシステム１２００、エンジン制御サブシステム１３００を有する。各サブシステムは、基幹ネットワーク１４００およびサブシステム毎に配置されている車内データ中継装置１００ａ、１００ｂ、１００ｃを介して接続されている。基幹ネットワーク１４００は、例えばＦｌｅｘＲａｙネットワークのような高速ネットワークである。これらのネットワークにより、車内ネットワークが構成される。
【００２４】
車内データ中継装置１００ａ、１００ｂおよび１００ｃは、後述のルーティングテーブルの内容を除いて同様の構成を有するため、以下これらを総称するときは、車内データ中継装置１００とする。
【００２５】
ボディ制御サブシステム１１００は、車内データ制御装置１００ａ、メータ搭載ＥＣＵ１１１０を有する。これらの機器は、ボディ制御用ＣＡＮ１１２０で接続されている。
【００２６】
車内データ制御装置１００ａは、ボディ制御サブシステム１１００と他のサブシステムの間で通信データを中継する。メータ搭載ＥＣＵ１１１０は、車間距離情報をメータに表示する。また、通信経路情報を各車内データ中継装置１００に設定する際には、トポロジ設定装置２００がボディ制御用ＣＡＮ１１２０に接続される。トポロジ設定装置２００については、後述する。
【００２７】
車間距離制御サブシステム１２００は、車内データ制御装置１００ｂ、車間距離演算ＥＣＵ１２１０、衝突演算ＥＣＵ１２２０を有する。これらの機器は、車間距離制御用ＣＡＮ１２３０で接続されている。
【００２８】
車内データ制御装置１００ｂは、車間距離制御サブシステム１２００と他のサブシステムの間で通信データを中継する。車間距離演算ＥＣＵ１２１０は、ミリ波レーダ等の車間距離センサを搭載し、これを用いて車間距離を算出し、車間距離情報を車間距離制御用ＣＡＮ１２３０に送信する。衝突演算ＥＣＵ１２２０は、車間距離制御用ＣＡＮ１２３０から受信した車速と車間距離情報から、当該車両が衝突するか否かを演算する。
【００２９】
エンジン制御サブシステム１３００は、車内データ制御装置１００ｃ、エンジン制御ＥＣＵ１３１０を有する。これらの機器は、エンジン制御用ＣＡＮ１３２０で接続されている。
【００３０】
車内データ制御装置１００ｃは、エンジン制御サブシステム１３００と他のサブシステムの間で通信データを中継する。エンジン制御ＥＣＵ１３１０は、エンジンを制御する処理を行う他に、車速を算出し、車速情報をエンジン制御用ＣＡＮ１３２０に送信する。
【００３１】
ＣＡＮとＦｌｅｘＲａｙは通信プロトコルが異なるため、これらのネットワーク間で通信するときは、通信プロトコルを変換しながら通信データを中継する必要がある。車内データ中継装置１００は、この役割を有する。
【００３２】
一方、サブシステム内のＥＣＵ同士を繋ぐネットワークとサブシステム間を繋ぐネットワークが同じ通信プロトコルであっても、それらネットワークの伝送速度が異なる場合がある。また、ネットワークの種類が１つであっても、通信バスの通信負荷を低減させるため、ネットワークを意図的に複数ネットワークに分割する場合がある。したがって、同じ通信プロトコルを用いるネットワーク間で通信する場合でも、車内データ中継装置が必要になる場合がある。例えば、サブシステム内のＥＣＵ同士を繋ぐネットワークとサブシステム間を繋ぐネットワークがともにＣＡＮである場合でも、車内データ中継装置１００が必要となる。
【００３３】
図２は、車内データ中継装置１００の機能ブロック図である。車内データ中継装置１００は、演算装置１１０、メモリ１２０、入出力回路１３０、バスＡコントローラ１４１、バスＢコントローラ１４２を備える。
【００３４】
演算装置１１０は、メモリ１２０のプログラム記憶領域１２１から後述する各プログラムを読み取ってその動作を実行する。また、メモリ１２０のルーティングテーブル記憶領域１２２が格納するルーティングテーブルから通信経路情報を読み取り、または新しい通信経路情報を書き込む。
【００３５】
メモリ１２０は、プログラム記憶領域１２１とルーティングテーブル記憶領域１２２を有する。
【００３６】
プログラム記憶領域１２１は、データ中継処理部１２１１、トポロジ情報中継処理部１２１２、トポロジ情報中継判定処理部１２１３、ルーティングテーブル更新処理部１２１４、トポロジ情報比較処理部１２１５、トポロジ情報識別処理部１２１６、バス通信処理部１２１７を格納している。これら各部は、ソフトウェアプログラムとして実装されている。各部の機能については後述する。以下では、記載の便宜上、これら各部を動作主体として説明する場合があるが、実際にこれらを実行する動作主体は演算装置１１０であることを付言しておく。
【００３７】
ルーティングテーブル記憶領域１２２は、後述の図６〜図７で説明するルーティングテーブルを格納する。
【００３８】
バスＡコントローラ１４１とバスＢコントローラ１４２は、車内データ中継装置１００と通信バスとの間で通信信号を送受信する処理を実行する。車内データ中継装置１００はネットワーク間で通信データを中継するため、複数のバスを介して複数のネットワークに接続される。図２では車内データ中継装置１００が２つのバスに接続されている例を示したが、３以上のバスに接続する構成を採用することもできる。
【００３９】
演算装置１１０は、他の車内データ中継装置１００やＥＣＵと通信するときは、入出力回路１３０、バスコントローラＡ１４１、バスコントローラＢ１４２を介してバスＡまたはバスＢとの間で通信データを送受信する。バスＡは例えばＣＡＮに接続され、バスＢは例えば基幹ネットワーク１４００に接続される。各バスコントローラの接続先は、車内データ中継装置１００の設置場所によって異なる。例えば車内データ中継装置１００ｂの場合、バスＡは車間距離制御用ＣＡＮ１２３０に接続され、バスＢは基幹ネットワーク１４００に接続される。
【００４０】
バスＡコントローラ１４１は信号入出力回路１４１１を備え、バスＢコントローラ１４２は信号入出力回路１４２１を備える。各信号入出力回路は、各バスから受け取った通信信号をデジタル変換するなどの必要な処理を適宜実行する。
【００４１】
図３は、トポロジ設定装置２００の機能ブロック図である。トポロジ設定装置２００は、例えば車両制御システム１０００を初期セットアップする場合など、各車内データ中継装置１００のルーティングテーブルに通信経路情報を格納する設定作業を、車内ネットワークを介して行うための装置である。トポロジ設定装置２００は、演算装置２１０、メモリ２２０、入出力回路２３０、バスＡコントローラ２４１を備える。
【００４２】
演算装置２１０は、メモリ２２０のプログラム記憶領域２２１から後述する各プログラムを読み取ってその動作を実行する。また、メモリ２２０のトポロジ記憶領域２２２が格納するトポロジ情報を読み取り、または新しいトポロジ情報を書き込む。
【００４３】
メモリ２２０は、プログラム記憶領域２２１とトポロジ記憶領域２２２を有する。
【００４４】
プログラム記憶領域２２１は、トポロジ情報読取処理部２２１１、トポロジ情報送信判定処理部２２１２、トポロジ情報送信処理部２２１３、バス通信処理部２２１４を格納している。各部の機能については後述する。
【００４５】
プログラム記憶領域２２１が格納している各部は、演算装置２１０が実行するソフトウェアプログラムとして実装されている。または同等の機能を実現する回路デバイス等のハードウェアとして実装してもよい。これら各部は一体的に構成してもよいし、個別の機能部として構成してもよい。本実施形態１における「中継処理部」は、これら各部が相当する。
【００４６】
以下では、記載の便宜上、これら各部を動作主体として説明する場合があるが、実際にこれらを実行する動作主体は演算装置２１０であることを付言しておく。
【００４７】
トポロジ情報記憶領域２２２は、後述の図４で説明するトポロジ情報テーブル４００を格納する。
【００４８】
演算装置２１０は、車内データ中継装置１００やＥＣＵと通信するときは、入出力回路２３０、バスＡコントローラ２４１を介してバスＡとの間で通信データを送受信する。バスコントローラの接続先は、トポロジ設定装置２００の設置場所によって異なる。例えばボディ制御サブシステム１１００にトポロジ設定装置２００を接続した場合、バスＡはボディ制御用ＣＡＮ１１２０に接続される。
【００４９】
以上、車両制御システム１０００を構成する各機器について説明した。次に、車両制御システム１０００内の通信について説明する。
【００５０】
ボディ制御用ＣＡＮ１１２０、車間距離制御用ＣＡＮ１２３０、およびエンジン制御用ＣＡＮ１３２０において、通信データのフレームＩＤ（ＣＡＮ  ＩＤ）が同じである場合は、その通信データは同じデータを保持する。例えばボディ制御用ＣＡＮ１１２０において、車速を保持する通信データのフレームＩＤが１００である場合、車間距離制御用ＣＡＮ１２３０とエンジン制御用ＣＡＮ１３２０においても、車速を保持する通信データのフレームＩＤは１００である。
【００５１】
また、図１に示すネットワーク構成において、ＣＡＮから他のＣＡＮに通信データを送信するためには、基幹ネットワーク１４００を通過する必要があるため、途中で車内データ中継装置１００間の中継処理が発生する。基幹ネットワーク１４００は、各ＣＡＮとは異なるフレームＩＤ体系を用いるため、車内データ中継装置１００は、通信データをＣＡＮから基幹ネットワーク１４００に中継する際に、フレームＩＤを変換する。このとき、変換前のフレームＩＤを、最終的な送信先であるＣＡＮにおいて復元する必要がある。
【００５２】
ルーティングテーブル記憶領域１２２が格納しているルーティングテーブルは、各車内データ中継装置１００がＣＡＮと基幹ネットワーク１４００の間でデータを中継する際に上述のようなフレームＩＤの変換などを行う規則を記述している。したがって、車内データ中継装置１００が通信データをネットワーク間で中継するためには、ルーティングテーブルが設定されていることが必要である。トポロジ設定装置２００は、車内ネットワークを介して各車内データ中継装置１００のルーティングテーブルを設定する役割を有する。
【００５３】
図４は、トポロジ設定装置２００のトポロジ情報記憶領域２２２が格納しているトポロジ情報テーブル４００の構成とデータ例を示す図である。トポロジ情報テーブル４００は、各車内データ中継装置１００のルーティングテーブルに設定する通信経路情報を記載したトポロジ情報を各行に保持するテーブルであり、データＩＤ列４０１、フレームＩＤ列４０２、データ長列４０３、送信ＧＷＩＤ列４０４、送信ネットワークＩＤ列４０５、中継方法列４０７、送信ネットワークフレームＩＤ列４０６、受信ＧＷＩＤ列４０８、受信ネットワークＩＤ列４０９、受信ネットワークフレームＩＤ列４１０を有する。
【００５４】
個々のトポロジ情報は、車内データ中継装置１００が通信データをネットワーク間で中継する際の送受信先およびフレームＩＤの変換ルールを記述する。
【００５５】
送信ＧＷＩＤ４０４、送信ネットワークＩＤ４０５、送信ネットワークフレームＩＤ４０６は、それぞれ、中継元のネットワークにおける車内データ中継装置１００の識別子、ネットワークの識別子、フレームＩＤを示す。これに対し、受信ＧＷＩＤ４０８、受信ネットワークＩＤ４０９、受信ネットワークフレームＩＤ４１０は、それぞれ、中継先のネットワークにおける車内データ中継装置１００の識別子、ネットワークの識別子、フレームＩＤを示す。
【００５６】
例えば、図４の１行目のトポロジ情報は、送信ＧＷＩＤ＝３で識別される車内データ中継装置１００が、送信ネットワークＩＤ＝４で識別されるネットワークを中継元として、送信ネットワークフレームＩＤ＝５で識別される通信データを中継するルールを記述している。この通信データは、受信ＧＷＩＤ＝２で識別される車内データ中継装置１００に宛てて、受信ネットワークＩＤ＝２で識別されるネットワークを中継先として、フレームＩＤを受信ネットワークフレームＩＤ＝１００に変換した上で、中継される。
【００５７】
この中継ルールおよび変換ルールは、通信データの種類（例えば、車速情報を表す通信データ、車間距離情報を表す通信データ、など）によって異なる。通信データの種類は、データＩＤ列４０１、フレームＩＤ列４０２、データ長列４０３によって識別される。各ルーティングテーブルは、データＩＤ列４０１、フレームＩＤ列４０２、データ長列４０３の組み合わせ毎に、上述の変換ルールを保持する。
中継方法列４０７の値は、本実施形態１では「１」で固定であるものとする。
【００５８】
１行分のトポロジ情報は、通信データの中継元である車内データ中継装置１００における通信経路情報と、中継先である車内データ中継装置１００における通信経路情報を、双方記述している。したがって、１行分のトポロジ情報は、送信ＧＷＩＤ列４０４で識別される車内データ中継装置１００と、受信ＧＷＩＤ列４０８で識別される車内データ中継装置１００が、ともに受信する。ただし、送信ＧＷＩＤ列４０４で識別される車内データ中継装置１００は、送信ＧＷＩＤ列４０４〜送信ネットワークフレームＩＤ列４０６のみをルーティングテーブルに格納し、受信ＧＷＩＤ列４０８で識別される車内データ中継装置１００は、受信ＧＷＩＤ列４０８〜受信ネットワークフレームＩＤ列４１０のみをルーティングテーブルに格納する。
【００５９】
図５は、トポロジ設定装置２００が図４の１行目のトポロジ情報を各車内データ中継装置１００に送信する様子を示す図である。以下、図５の各ステップについて説明する。なお、各車内データ中継装置１００の識別子（ＧＷＩＤ）は、図５に示す通りとする。
【００６０】
（１）１行目のトポロジ情報を送信する
トポロジ設定装置２００は、図４の１行目のトポロジ情報を、ボディ制御用ＣＡＮ１１２０に送信する。宛先は指定しない。
【００６１】
（２）中継する
車内データ中継装置１００ａは、トポロジ設定装置２００が送信したトポロジ情報を受信し、送信ＧＷＩＤ列４０４の値と受信ＧＷＩＤ列４０８の値を取得する。いずれの値も車内データ中継装置１００ａのＧＷＩＤとは異なるので、車内データ中継装置１００ａはトポロジ情報を他のネットワークに中継する。中継先は、受信元であるボディ制御用ＣＡＮ１１２０を除き、車内データ中継装置１００ａが接続されている全てのネットワークとする。ここでは基幹ネットワーク１４００が中継先となる。
【００６２】
（３）送信ＧＷＩＤ＝３
車内データ中継装置１００ｃは、車内データ中継装置１００ａが中継したトポロジ情報を受信し、送信ＧＷＩＤ列４０４の値と受信ＧＷＩＤ列４０８の値を取得する。送信ＧＷＩＤ列４０４の値が車内データ中継装置１００ｃのＧＷＩＤと一致するので、このトポロジ情報は車内データ中継装置１００ｃが受信すべきものであることが分かる。車内データ中継装置１００ｃは、トポロジ情報の記載内容に基づき、ルーティングテーブルを後述する図６のように更新する。
【００６３】
（４）受信ＧＷＩＤ＝２
車内データ中継装置１００ｂは、車内データ中継装置１００ａが中継したトポロジ情報を受信し、送信ＧＷＩＤ列４０４の値と受信ＧＷＩＤ列４０８の値を取得する。受信ＧＷＩＤ列４０８の値が車内データ中継装置１００ｂのＧＷＩＤと一致するので、このトポロジ情報は車内データ中継装置１００ｂが受信すべきものであることが分かる。車内データ中継装置１００ｂは、トポロジ情報の記載内容に基づき、ルーティングテーブルを後述する図７のように更新する。
【００６４】
図６は、図５のステップ（３）で更新されたルーティングテーブルの構成とデータ例を示す図である。ここでは、新たにトポロジ情報をルーティングテーブルに登録することを想定する。
【００６５】
図４で例示した１行目のトポロジ情報は、車内データ中継装置１００ｃ（ＧＷＩＤ＝３）から車内データ中継装置１００ｂに宛てて、ＣＡＮ上のフレームＩＤ＝１００の通信データを中継する規則を記述したものである。したがって、図６に示すルーティングテーブルは、車内データ中継装置１００ｃから基幹ネットワーク１４００に宛てて、エンジン制御用ＣＡＮ１３２０上の通信データを中継する規則を記述する。
【００６６】
データＩＤ列１２２１ｃ、フレームＩＤ列１２２２ｃ、データ長列１２２３ｃ、送信ネットワークＩＤ列１２２４ｃ、中継先フレームＩＤ列１２２５ｃは、トポロジ情報のデータＩＤ列４０１〜データ長列４０３、送信ネットワークＩＤ列４０５、送信ネットワークフレームＩＤ列４０６と一致している。
【００６７】
図７は、図５のステップ（４）で更新されたルーティングテーブルの構成とデータ例を示す図である。ここでは、新たにトポロジ情報をルーティングテーブルに登録することを想定する。
【００６８】
図７に示すルーティングテーブルは、基幹ネットワーク１４００から車内データ中継装置１００ｂに宛てて、車間距離制御用ＣＡＮ１２３０上に流す通信データを中継する規則を記述する。
【００６９】
データＩＤ列１２２１ｂ、フレームＩＤ列１２２２ｂ、データ長列１２２３ｂ、送信ネットワークＩＤ列１２２４ｂ、中継先フレームＩＤ列１２２５ｂは、トポロジ情報のデータＩＤ列４０１、送信ネットワークフレームＩＤ列４０６、データ長列４０３、受信ネットワークＩＤ列４０９、受信ネットワークフレームＩＤ列４１０と一致している。
【００７０】
図８は、トポロジ設定装置２００の動作フローを示す図である。以下、図８の各ステップについて説明する。
（図８：ステップＳ８００）
演算装置２１０は、例えば所定時間間隔などで、本動作フローを起動する。
（図８：ステップＳ８０１）
トポロジ情報送信判定処理部２２１２は、トポロジ情報記憶領域２２２が格納しているトポロジ情報テーブル４００内の個々のトポロジ情報のうち、車内データ中継装置１００に送信していないものを探す。送信していないものがあればステップＳ８０２へ進み、なければ本動作フローを終了する。
【００７１】
（図８：ステップＳ８０２）
トポロジ情報読取処理部２２１１は、車内データ中継装置１００に送信していないトポロジ情報を、トポロジ情報テーブル４００から読み出す。
（図８：ステップＳ８０３）
トポロジ情報送信処理部２２１３は、トポロジ情報の送信先ネットワークに接続されているバスと通信するためのバス通信処理部２２１４を読み出す。図１、図３および図４で説明した例では、ボディ制御用ＣＡＮ１１２０に接続されているバスＡに対応するバス通信処理部２２１４が読み出される。トポロジ情報送信処理部２２１３は、ステップＳ８０２で読み出されたトポロジ情報を通信データフレームの形式に整形し、バス通信処理部２２１４に引き渡す。このとき、トポロジ情報送信処理部２２１３は、フレームＩＤなどのヘッダ部分に、当該通信データがトポロジ情報である旨の値をセットしておく。
【００７２】
（図８：ステップＳ８０４）
バス通信処理部２２１４は、ステップＳ８０２で読み出されたトポロジ情報をバスに送信する。図１、図３および図４で説明した例では、トポロジ情報は、バスＡを介してボディ制御用ＣＡＮ１１２０に送信される。
【００７３】
図９は、車内データ中継装置１００の動作フローを示す図である。以下、図９の各ステップについて説明する。
（図９：ステップＳ９０１）
バス通信処理部１２１７は、車内データ中継装置１００が接続されている車内ネットワークおよびバスを介して、通信データフレームを受信する。
（図９：ステップＳ９０２）
トポロジ情報識別処理部１２１６は、ステップＳ９０１で受信した通信データがトポロジ情報であるか否かを判定する。具体的には、当該通信データのフレームＩＤなどのヘッダ部分を取得し、当該通信データがトポロジ情報である旨の値がセットされているか否かにより、トポロジ情報であるか否かを判定する。トポロジ情報である場合はステップＳ９０３へ進み、トポロジ情報でない場合はステップＳ９１０へ進む。
【００７４】
（図９：ステップＳ９０３）
トポロジ情報比較処理部１２１５は、ステップＳ９０１で受信したトポロジ情報の送信ＧＷＩＤ列４０４と受信ＧＷＩＤ列４０８を取得し、当該トポロジ情報の宛先が当該車内データ中継装置１００であるか否かを判定する。図４〜図５で説明した例の場合、車内データ中継装置１００ｂと１００ｃは、本ステップにおいて、当該トポロジ情報が自己宛であると判定する。トポロジ情報が当該車内データ中継装置１００宛である場合はステップＳ９０４へ進み、当該車内データ中継装置１００宛でない場合はステップＳ９０７にスキップする。
（図９：ステップＳ９０４）
トポロジ情報比較処理部１２１５は、ステップＳ９０１で受信したトポロジ情報を、ルーティングテーブル内の各通信経路情報と比較し、当該トポロジ情報をルーティングテーブルに反映済みであるか否かを判定する。
【００７５】
（図９：ステップＳ９０５）
トポロジ情報と同一の内容を示す通信経路情報が既にルーティングテーブルに格納されている場合は、ステップＳ９０７へスキップする。同一の内容を示す通信経路情報がルーティングテーブルに格納されていない場合は、ステップＳ９０６へ進む。
（図９：ステップＳ９０６）
ルーティングテーブル更新処理部１２１４は、トポロジ情報の内容を、ルーティングテーブルに格納する。当該車内データ中継装置１００の識別子が送信ＧＷＩＤ列４０４に一致する場合は、データＩＤ列４０１〜データ長列４０３、送信ネットワークＩＤ列４０５、送信ネットワークフレームＩＤ列４０６を、ルーティングテーブルに反映する。当該車内データ中継装置１００の識別子が受信ＧＷＩＤ列４０８に一致する場合は、データＩＤ列４０１〜データ長列４０３、受信ネットワークＩＤ列４０９、受信ネットワークフレームＩＤ列４１０を、ルーティングテーブルに反映する。
【００７６】
（図９：ステップＳ９０７）
トポロジ情報中継判定処理部１２１３は、ステップＳ９０１で受信したトポロジ情報を中継すべきか否かを判定する。例えば、ステップＳ９０１において、車内データ中継装置１００が各ＣＡＮからトポロジ情報を受信した場合はトポロジ情報を中継すべきであると判定し、基幹ネットワーク１４００からトポロジ情報を受信した場合はトポロジ情報を中継しないと判定する。トポロジ情報を中継する場合はステップＳ９０８へ進み、中継しない場合は本動作フローを終了する。
（図９：ステップＳ９０７：補足）
本ステップにおける判定基準は、車内ネットワークの構成などによって異なる。図１に示したネットワーク構成では、基幹ネットワーク４００を介して各ＣＡＮが接続されているため、基幹ネットワーク１４００からトポロジ情報を受信した場合は、そのトポロジ情報は既に他の車内データ中継装置１００によって中継されてきたものであるといえる。したがって、上記のような判定基準を用いることとした。
【００７７】
（図９：ステップＳ９０８）
トポロジ情報中継処理部１２１２は、トポロジ情報を中継する中継先を決定する。トポロジ情報は、全ての車内データ中継装置１００に配信されるべきである。したがってトポロジ情報中継処理部１２１２は、ステップＳ９０１でトポロジ情報を受信したネットワークとは異なるネットワーク全てを、当該トポロジ情報の中継先とする。
（図９：ステップＳ９０９）
バス通信処理部１２１７は、ステップＳ９０８で決定された中継先ネットワークに接続されているバスに、トポロジ情報を出力する。トポロジ情報は、そのバスを介して中継先ネットワークに送信される。
（図９：ステップＳ９１０）
演算装置１１０は、後述の図１０で説明するデータ中継処理を実行する。
【００７８】
図１０は、図９のステップＳ９１０の詳細を示す動作フローである。以下、図１０の各ステップについて説明する。
（図１０：ステップＳ１００１）
データ中継処理部１２１１は、ステップＳ９０１で受信した通信データのデータＩＤ、フレームＩＤなどをキーにして、ルーティングテーブルから当該通信データに対応する通信経路情報を検索する。例えば図６で説明したデータ例によれば、中継先ネットワークＩＤ＝４、中継先フレームＩＤ＝５を得ることができる。データ中継処理部１２１１は、これらの中継規則に基づき、通信データの中継先を決定し、また必要に応じてフレームＩＤなどを変換する。
【００７９】
（図１０：ステップＳ１００２）
バス通信処理部１２１７は、ステップＳ１００１で決定された中継先ネットワークに接続されているバスに、通信データを出力する。通信データは、そのバスを介して中継先ネットワークに送信される。
以上、車両制御システム１０００内の通信について説明した。
【００８０】
以上のように、本実施の形態１によれば、車内データ中継装置１００は、受信した通信データがトポロジ情報ではない通常の通信データである場合は、ルーティングテーブルを参照して中継先およびフレームＩＤなどの変換規則を取得する。特に、複数のネットワークをまたいで通信データを中継する場合には、フレームＩＤを途中で通過するネットワーク上で用いられるフレームＩＤに変換する。これにより、複数のネットワークを経由させながら通信データを中継することができるので、複数種類のネットワークを用いて構成されている車内ネットワークにおいて、車内データ中継装置１００間で通信データを中継する際に好適である。
【００８１】
また、本実施の形態１によれば、トポロジ設定装置２００は、各車内データ中継装置１００のルーティングテーブルを車内ネットワーク越しに更新するためのトポロジ情報を送信する。各車内データ中継装置１００は、そのトポロジ情報を用いてルーティングテーブルを更新する。これにより、ルーティングテーブルを設定する作業効率を上げることができる。また、トポロジ情報をネットワーク間で中継することにより、複数種類のネットワークを有する車内ネットワークにおいても、トポロジ情報を各車内データ中継装置１００に配信し、車内ネットワーク越しにルーティングテーブルを更新することができる。
【００８２】
また、本実施の形態１によれば、車内データ中継装置１００は、トポロジ情報の送信ＧＷＩＤ列４０４と受信ＧＷＩＤ列４０８の値を取得し、当該トポロジ情報が自己宛であるか否かを判定する。自己宛である場合はそのトポロジ情報を用いてルーティングテーブルを更新し、自己宛でない場合はそのトポロジ情報を他の車内データ中継装置１００に中継する。これにより、トポロジ設定装置２００は、トポロジ情報を個々の車内データ中継装置１００に個別に配信しなくとも、各車内データ中継装置１００のルーティングテーブルを少数のトポロジ情報で一括的に更新することができる。
【００８３】
また、本実施の形態１によれば、トポロジ情報を保持する通信データは、例えばフレームＩＤなどにその旨を示す値を保持している。これにより、車内データ中継装置１００は、通常の通信データの取り扱いとトポロジ情報の取り扱いを区別することができる。例えば、トポロジ情報に関してはルーティングの対象から除外し、無条件に他の車内データ中継装置１００へ中継する、といった取り扱いが可能である。このことを利用して、トポロジ設定装置２００は、トポロジ情報を効率的に車内ネットワーク全体へ配信することができる。
【００８４】
＜実施の形態２＞
本発明の実施の形態２では、データ中継処理部１２１１がルーティングテーブルを参照して通信データを中継する際に、フレームＩＤを変換する手法について、実施の形態１とは異なる例を説明する。本実施の形態２において、トポロジ情報の中継方法列４０７の値は、１、２、３のいずれかであるものとし、それぞれ異なる変換規則に対応する。
【００８５】
＜実施の形態２：フレームＩＤの変換規則その１＞
本実施の形態２の第１例では、中継方法列４０７＝２である場合における、フレームＩＤの変換規則について説明する。
【００８６】
実施の形態１では、送信元ＣＡＮ（例えばエンジン制御用ＣＡＮ１３２０）上におけるフレームＩＤを、送信先ＣＡＮ（例えば車間距離制御用ＣＡＮ１２３０）上で復元するため、トポロジ情報４００内に、受信ネットワークフレームＩＤ列４１０を設けた。受信ＧＷＩＤ列４０８の値で識別される車内データ中継装置１００は、ルーティングテーブルの中継先フレームＩＤ列１２２５に、受信ネットワークフレームＩＤ列４１０の値を反映するものとした。
【００８７】
これに対し本例では、通信データを基幹ネットワーク１４００に中継する際に、送信元ＣＡＮ上におけるフレームＩＤを、当該通信データのデータ部分に埋め込み、フレームＩＤを基幹ネットワーク１４００上のフレームＩＤに変換する。換言すると、本実施形態２において、車内データ中継装置１００は、送信元ＣＡＮ上における通信データを、基幹ネットワーク１４００上のフレーム形式によってカプセル化する。
【００８８】
送信先ＣＡＮ上の車内データ中継装置１００は、基幹ネットワーク１４００からその通信データを受け取ると、データ部分から送信元ＣＡＮ上におけるフレームＩＤを復元し、その値を送信先ＣＡＮ上におけるフレームＩＤとして設定し直し、送信先ＣＡＮにその通信データを中継する。
【００８９】
図１１は、本実施の形態２の第１例におけるトポロジ情報テーブル４００のデータ例を示す図である。１行目のトポロジ情報は、中継方法列４０７＝２となっている。この場合、上記の通り送信元ＣＡＮ上におけるフレームＩＤは、通信データのデータ部分にカプセル化されるため、受信ネットワークフレームＩＤ列４１０は必要ない。
【００９０】
図１２は、本実施の形態２の第１例において通信データが中継される過程を示す図である。図１２（ａ）は送信元ＣＡＮ上の通信データを示す。送信元ＣＡＮ上の車内データ中継装置１００は、この通信データをデータ部分にカプセル化し、フレームＩＤを基幹ネットワーク１４００上のフレームＩＤに変換した上で、基幹ネットワーク１４００に中継する。図１２（ｂ）は基幹ネットワーク１４００上の通信データを示す。
【００９１】
送信先ＣＡＮ上の車内データ装置１００は、図１２（ｂ）に示す通信データを基幹ネットワーク１４００から受け取ると、データ部分から送信元ＣＡＮ上の通信データを復元し、図１２（ｃ）に示す送信先ＣＡＮ上の通信データを生成し、送信先ＣＡＮに中継する。
【００９２】
図１３は、車内データ中継装置１００ｃのルーティングテーブルを図１１に示すトポロジ情報によって更新した後のデータ例を示す図である。車内データ中継装置１００ｃは、通信データを基幹ネットワーク１４００に中継する際に、上述のカプセル化を実行する必要がある。そこで本例では、カプセル化を実行すべき旨を示すため、新たに中継方法列１２２６ｃを設けた。
【００９３】
車内データ中継装置１００ｃは、図１１に示すトポロジ情報を受け取ると、実施の形態１で説明した各値の他、中継方法列１２２６ｃの値をセットする。値そのものは、中継方法列４０７と同じである。
【００９４】
図１４は、車内データ中継装置１００ｂのルーティングテーブルを図１１に示すトポロジ情報によって更新した後のデータ例を示す図である。本例において、中継先フレームＩＤ列１２２５ｂの値は、通信データのデータ部分から復元されるため、必要ない。
【００９５】
車内データ中継装置１００ｂは、中継先フレームＩＤ列１２２５ｂの値がセットされていない場合は、受信した通信データのデータ部分から、中継先ネットワーク上におけるフレームＩＤなどを復元する。また、新たに中継方法列１２２６ｂを設け、中継方法列４０７と同じ値をセットし、通信データがカプセル化されている旨を明示するようにしてもよい。
【００９６】
＜実施の形態２：フレームＩＤの変換規則その２＞
本例では、中継方法列４０７＝３である場合における、フレームＩＤの変換規則について説明する。本例では、送信元ＣＡＮ上におけるフレームＩＤと送信先ＣＡＮ上におけるフレームＩＤが異なる。そこで、送信先ＣＡＮ上におけるフレームＩＤをデータ部分に埋め込んでおく。
【００９７】
図１５は、本実施の形態２の第２例におけるトポロジ情報テーブル４００のデータ例を示す図である。１行目のトポロジ情報は、中継方法列４０７＝３となっている。この場合、上記の通り送信元ＣＡＮ上におけるフレームＩＤは、通信データのデータ部分にカプセル化されるため、受信ネットワークフレームＩＤ列４１０は必要ない。
【００９８】
図１６は、本実施の形態２の第２例において通信データが中継される過程を示す図である。図１６（ａ）は送信元ＣＡＮ上の通信データを示す。送信元ＣＡＮ上の車内データ中継装置１００は、送信先ＣＡＮ上のフレームＩＤをデータ部分にカプセル化し、フレームＩＤを基幹ネットワーク１４００上のフレームＩＤに変換した上で、基幹ネットワーク１４００に中継する。図１６（ｂ）は基幹ネットワーク１４００上の通信データを示す。
【００９９】
送信先ＣＡＮ上の車内データ装置１００は、図１６（ｂ）に示す通信データを基幹ネットワーク１４００から受け取ると、データ部分から送信元ＣＡＮ上のフレームＩＤを復元し、図１６（ｃ）に示す送信先ＣＡＮ上の通信データを生成し、送信先ＣＡＮに中継する。
【０１００】
図１７は、車内データ中継装置１００ｃのルーティングテーブルを図１５に示すトポロジ情報によって更新した後のデータ例を示す図である。中継方法列１２２６ｃ＝３である点を除いて、図１３と同様である。
【０１０１】
図１８は、車内データ中継装置１００ｂのルーティングテーブルを図１５に示すトポロジ情報によって更新した後のデータ例を示す図である。中継方法列１２２６ｂ＝３である点を除いて、図１４と同様である。
【０１０２】
以上のように、本実施の形態２によれば、通信データのデータ部分に送信先ネットワーク上における通信データやフレームＩＤを埋め込んでカプセル化しておき、送信先ネットワークにおける車内データ装置１００は、これを復元する。これにより、ルーティングテーブルのみでは対応することが難しい複雑な変換規則を実装することができる。
【０１０３】
＜実施の形態３＞
本発明の実施の形態３では、トポロジ設定装置２００が送信するトポロジ情報の変形例について説明する。
＜実施の形態３：トポロジ情報の変形例その１＞
図１９は、トポロジ情報テーブル４００の第１変形例を示す図である。中継方法が既に確定しているネットワーク間の中継処理に関しては、中継方法列４０７は必要ない。そこで図１９では、同列を省略した。
【０１０４】
＜実施の形態３：トポロジ情報の変形例その２＞
図２０は、トポロジ情報テーブル４００の第２変形例を示す図である。データの種類とフレームの種類の対応関係が送信先ネットワークにおいて一意である場合には、データＩＤ列４０１、フレームＩＤ列４０２、受信ネットワークフレームＩＤ列４１０のうちいずれか１つがあればよい。図２０では、フレームＩＤ列４０２のみを残し、他の２つは省略した。
【０１０５】
＜実施の形態３：トポロジ情報の変形例その３＞
図２１は、トポロジ情報テーブル４００の第３変形例を示す図である。各車内データ中継装置１００において、中継元ネットワークと中継先ネットワークの対応関係が一意である場合には、送信ネットワークＩＤ列４０６と受信ネットワークＩＤ列４０９は必要ない。そこで図２１では、これらの列を省略した。
【０１０６】
＜実施の形態３：トポロジ情報の変形例その４＞
図２２は、トポロジ情報テーブル４００の第４変形例を示す図である。実施形態１では、基幹ネットワーク１４００の例としてＦｌｅｘＲａｙを例示したが、仮に基幹ネットワーク１４００を含む全てのネットワークが同種ネットワークである場合、各ネットワークにおけるフレームの種類とデータの種類の対応関係は一意である。この場合、データＩＤ列４０１、フレームＩＤ列４０２、送信ネットワークフレームＩＤ列４０６、受信ネットワークフレームＩＤ列４１０のうち、いずれか１つのみがあればよい。図２２では、フレームＩＤ列４０２のみを残し、他の３つは省略した。
【０１０７】
以上のように、本実施の形態３によれば、他の手段によって特定することのできる項目をトポロジ情報テーブル４００から省略することにより、メモリ消費量を減らす効果がある。さらにデータ中継処理部１２１１、トポロジ情報比較処理部１２１５、ルーティングテーブル更新処理部１２１４などがルーティングテーブルを参照する際のプログラム実行ステップ数が減るため、処理時間が短くなる効果がある。
【０１０８】
＜実施の形態４＞
本発明の実施の形態４では、車内データ中継装置１００が保持するルーティングテーブルの変形例について説明する。
【０１０９】
＜実施の形態４：ルーティングテーブルの変形例その１＞
図２３は、ルーティングテーブルの第１変形例を示す図である。データＩＤ列１２２１、フレームＩＤ列１２２２、中継先フレームＩＤ列１２２５の対応関係が一意である場合、これらのうちいずれか１つのみがあればよい。図２３では、フレームＩＤ列１２２２のみを残し、他の２つは省略した。
【０１１０】
＜実施の形態４：ルーティングテーブルの変形例その２＞
図２４は、ルーティングテーブルの第２変形例を示す図である。通信データを中継する中継先ネットワークが１つしかない場合や、中継先ネットワーク毎に個別のルーティングテーブルを設ける場合には、送信ネットワークＩＤ列１２２４は必要ない。そこで図２４では、図２３に示す構成から、送信ネットワークＩＤ列１２２４を省略した。
【０１１１】
＜実施の形態４：ルーティングテーブルの変形例その３＞
図２５は、ルーティングテーブルの第３変形例を示す図である。データＩＤ列１２２１とフレームＩＤ列１２２２の対応関係が一意である場合、これらのうちいずれか１つのみがあればよい。図２５では、フレームＩＤ列１２２２のみを残し、データＩＤ列１２２１は省略した。
【０１１２】
＜実施の形態４：ルーティングテーブルの変形例その４＞
図２６は、ルーティングテーブルの第４変形例を示す図である。中継先ネットワークが１つしかない場合や、中継先ネットワーク毎に個別のルーティングテーブルを設ける場合には、送信ネットワークＩＤ列１２２４は必要ない。そこで図２６では、送信ネットワークＩＤ列１２２４を省略した。
【０１１３】
＜実施の形態４：ルーティングテーブルの変形例その５＞
図２７は、ルーティングテーブルの第５変形例を示す図である。例えば車内データ中継装置１００が用いる中継先フレームＩＤが規定である場合のように、中継先フレームＩＤの値が固定的である場合は、中継先フレームＩＤ列１２２５は必要ない。そこで図２７では、同列を省略した。
【０１１４】
以上のように、本実施の形態４によれば、他の手段によって特定することのできる項目をルーティングテーブルから省略することにより、メモリ消費量を減らす効果がある。さらにデータ中継処理部１２１１、トポロジ情報比較処理部１２１５、ルーティングテーブル更新処理部１２１４などがルーティングテーブルを参照する際のプログラム実行ステップ数が減るため、処理時間が短くなる効果がある。
【０１１５】
＜実施の形態５＞
本発明の実施の形態５では、通信データのフレーム形式を説明する。また、フレーム内の各フィールドに格納することのできるデータについても説明する。
【０１１６】
図２８は、ＣＡＮの通信プロトコルにおけるデータフレーム２００１を示す。データフレーム２００１は、フレームの開始を示すＳＯＦ２００２、フレームを一意に識別可能とする識別子（ＩＤ）２００３、フレームのサイズ長を示すＣＴＲＬ２００４、送信するデータを格納するデータフィールド２００５、通信データの誤り検出用のＣＲＣ２００６、正常に受信されたことを示すＡＣＫ２００７、フレーム終了を示すＥＯＦ２００８から成る。トポロジ情報２００９や制御データはデータフィールド２００５に格納される。
【０１１７】
トポロジ情報を送信するフレームＩＤはシステム設計時に決められ、トポロジ情報はそのフレームＩＤが示すフレームに格納されて、送信される。例えば、システム設計時にＣＡＮのフレームＩＤの値が７００であるフレームと基幹ネットワーク１４００のフレームＩＤの値が２０であるフレームにトポロジ情報を格納すると決めた場合、トポロジ設定装置２００はＣＡＮのフレームＩＤの値が７００であるフレームにトポロジ情報を格納し、ボディ制御用ＣＡＮ１１２０に送信する。車内データ中継装置１００ａは、ＣＡＮのフレームＩＤの値が７００であることにより、受信したフレームをトポロジ情報であると判断する。
【０１１８】
車内データ中継装置１００ａは、基幹ネットワーク１４００のフレームＩＤの値が２０であるフレームにトポロジ情報を格納し、送信する。このときトポロジ情報と一緒にＣＡＮのフレームＩＤの値を格納してもよい。
【０１１９】
図２９は、ＦｌｅｘＲａｙの通信プロトコルにおけるＦｌｅｘＲａｙフレーム２１０１を示す。ＦｌｅｘＲａｙフレーム２１０１はヘッダセグメント２１０２、ペイロードセグメント２１０３、トレーラセグメント２１０４から成る。ヘッダセグメント２１０２はフレームを一意に識別可能とするフレームＩＤ２１０５とデータ２１０７のデータ長を示すペイロード長２１０６から成り、ペイロードセグメント２１０３は送信するデータを格納するデータ２１０７から成り、トレーラセグメント２１０４は通信データの誤り検出用のＣＲＣ２１０８から成る。トポロジ情報２１０９や制御データはデータ２１０７に格納される。
【０１２０】
ネットワークバスの一つのフレームに対して、一つのトポロジ情報の組を格納してもよいし、二つ以上のトポロジ情報の組を格納してもよい。例えば、ＣＡＮのデータフィールド２００５に一つのトポロジ情報の組を格納してもよいし、二つ以上のトポロジ情報の組を格納してもよい。同様にＦｌｅｘＲａｙのデータ２１０７に一つのトポロジ情報の組を格納してもよいし、二つ以上のトポロジ情報の組を格納してもよい。二つ以上のトポロジ情報の組を格納することによって、ネットワークの通信負荷を削減する効果がある。
【０１２１】
＜実施の形態６＞
図３０は、本発明の実施の形態６に係る車両制御システム１０００のネットワーク構成図である。車両制御システム１０００は、ボディ制御サブシステム１１００、エンジン制御サブシステム１３００を有する。各サブシステムは、基幹ネットワーク１４００、車内データ中継装置１００ａ、およびエンジン制御ＥＣＵ１３１０を介して接続されている。基幹ネットワーク１４００は、本実施形態６ではＣＡＮであるものとする。
【０１２２】
ボディ制御サブシステム１１００は、車内データ制御装置１００ａ、メータ搭載ＥＣＵ１１１０を有する。これらの機器は、ボディ制御用ＣＡＮ１１２０で接続されている。
【０１２３】
メータ搭載ＥＣＵ１１１０は、実施形態１〜５で説明した機能に加え、トポロジ設定装置２００の機能を包含する。メータ搭載ＥＣＵ１１１０の詳細構成については、後述する。車内データ制御装置１００ａは、実施形態１〜５と同様である。
【０１２４】
エンジン制御サブシステム１３００は、エンジン制御ＥＣＵ１３１０を有する。エンジン制御ＥＣＵ１３１０は、エンジン制御用ＣＡＮ１３２０に接続されている。
【０１２５】
エンジン制御ＥＣＵ１３１０は、実施形態１〜５で説明した機能に加え、車内データ制御装置１００ｃの機能を包含する。エンジン制御ＥＣＵ１３１０の詳細構成については、後述する。
【０１２６】
図３１は、エンジン制御ＥＣＵ１３１０の機能ブロック図である。本実施形態６において、エンジン制御ＥＣＵ１３１０は、実施形態１で説明した車内データ中継装置１００と同様の構成を備える。その他、エンジン制御ＥＣＵ１３１０固有の構成として、エンジン制御処理部１３１０２１８、センサ１３１０５０、アクチュエータ１３１０６０を備える。エンジン制御処理部１３１０２１８は、センサ１３１０５０とアクチュエータ１３１０６０の機能を用いて、エンジンを制御する処理を実行する。
【０１２７】
図３２は、メータ搭載ＥＣＵ１１１０の機能ブロック図である。本実施形態６において、メータ搭載ＥＣＵ１１１０は、実施形態１で説明したトポロジ設定装置２００と同様の構成を備える。その他、メータ搭載ＥＣＵ１１１０固有の構成として、メータ表示処理部１１１０２１５、アクチュエータ１１１０６０を備える。メータ表示処理部１１１０２１５は、アクチュエータ１１１０６０の機能を用いて、メータを表示する処理を実行する。
【０１２８】
以上のように、本実施の形態６によれば、データ中継装置１００やトポロジ設定装置２００の機能をＥＣＵに統合したので、これらの機器とＥＣＵの間で通信データを送受信するよりも、ネットワーク負荷を抑えることができる。また、複数の機器の機能を１つのＥＣＵに集約することにより、設置スペースを少なくすることができる。
【０１２９】
＜実施の形態７＞
図３３は、本発明の実施の形態７に係る車両制御システム１０００のネットワーク構成図である。本実施の形態７に係る車両制御システム１０００は、実施形態１〜５と同様の構成を有するが、ボディ制御サブシステム１１００とエンジン制御サブシステム１３００において、各車内データ中継装置１００のルーティングテーブルを設定済みである点が異なる。
【０１３０】
そこで本実施形態７では、トポロジ設定装置２００を、車間距離制御サブシステム１２００に接続し、車間距離制御サブシステム１２００内でのみトポロジ情報を配信することにした。この場合、全てのサブシステムにトポロジ情報を配信するよりも、トポロジ情報の送信回数が少なくなり、ネットワーク負荷を低減することができる。また、トポロジ設定装置２００内のトポロジ情報テーブル４００の容量も少なくて済む。
【０１３１】
＜実施の形態８＞
図３４は、本発明の実施の形態８に係る車両制御システム１０００のネットワーク構成図である。本実施形態８では、トポロジ設定装置２００を基幹ネットワーク１４００に接続した。この場合、各車内データ中継装置１００間でトポロジ情報を中継する必要はなくなり、各車内データ中継装置１００は自己宛のトポロジ情報を処理するのみでよい。したがって、ネットワーク負荷を低減することができる。
【符号の説明】
【０１３２】
１００ａ〜１００ｃ：車内データ制御装置、１１０：演算装置、１２０：メモリ、１２１：プログラム記憶領域、１２１１：データ中継処理部、１２１２：トポロジ情報中継処理部、１２１３：トポロジ情報中継判定処理部、１２１４：ルーティングテーブル更新処理部、１２１５：トポロジ情報比較処理部、１２１６：トポロジ情報識別処理部、１２１７：バス通信処理部、１２２：ルーティングテーブル記憶領域、１２２１：データＩＤ列、１２２２：フレームＩＤ列、１２２３：データ長列、１２２４：送信ネットワークＩＤ列、１２２５：中継先フレームＩＤ列、１２２６：中継方法列、１３０：入出力回路、１４１：バスＡコントローラ、１４１１：信号入出力回路、１４２：バスＢコントローラ、１４２１：信号入出力回路、２００：トポロジ設定装置、２１０：演算装置、２２０：メモリ、２２１：プログラム記憶領域、２２１１：トポロジ情報読取処理部、２２１２：トポロジ情報送信判定処理部、２２１３：トポロジ情報送信処理部、２２１４：バス通信処理部、２２２：トポロジ記憶領域、２３０：入出力回路、２４１：バスＡコントローラ、４００：トポロジ情報テーブル、４０１：データＩＤ列、４０２：フレームＩＤ列、４０３：データ長列、４０４：送信ＧＷＩＤ列、４０５：送信ネットワークＩＤ列、４０７：中継方法列、４０６：送信ネットワークフレームＩＤ列、４０８：受信ＧＷＩＤ列、４０９：受信ネットワークＩＤ列、４１０：受信ネットワークフレームＩＤ列、１０００：車両制御システム、１１００：ボディ制御サブシステム、１１１０：メータ搭載ＥＣＵ、１１２０：ボディ制御用ＣＡＮ、１２００：車間距離制御サブシステム、１２１０：車間距離演算ＥＣＵ、１２２０：衝突演算ＥＣＵ、１２３０：車間距離制御用ＣＡＮ、１３００：エンジン制御サブシステム、１３１０：エンジン制御ＥＣＵ、１３２０：エンジン制御用ＣＡＮ、１４００：基幹ネットワーク、２００１：データフレーム、２００２：ＳＯＦ、２００３：識別子（ＩＤ）、２００４：ＣＴＲＬ、２００５：データフィールド、２００６：ＣＲＣ、２００７：ＡＣＫ、２００８：ＥＯＦ、２１０１：ＦｌｅｘＲａｙフレーム、２１０２：ヘッダセグメント、２１０３：ペイロードセグメント、２１０４：トレーラセグメント、２１０５：フレームＩＤ、２１０６：ペイロード長、２１０７：データ、２１０８：ＣＲＣ、２１０９：トポロジ情報。
【図１】
2011166421.tif 000003
【図２】
2011166421.tif 000004
【図３】
2011166421.tif 000005
【図４】
2011166421.tif 000006
【図５】
2011166421.tif 000007
【図６】
2011166421.tif 000008
【図７】
2011166421.tif 000009
【図８】
2011166421.tif 000010
【図９】
2011166421.tif 000011
【図１０】
2011166421.tif 000012
【図１１】
2011166421.tif 000013
【図１２】
2011166421.tif 000014
【図１３】
2011166421.tif 000015
【図１４】
2011166421.tif 000016
【図１５】
2011166421.tif 000017
【図１６】
2011166421.tif 000018
【図１７】
2011166421.tif 000019
【図１８】
2011166421.tif 000020
【図１９】
2011166421.tif 000021
【図２０】
2011166421.tif 000022
【図２１】
2011166421.tif 000023
【図２２】
2011166421.tif 000024
【図２３】
2011166421.tif 000025
【図２４】
2011166421.tif 000026
【図２５】
2011166421.tif 000027
【図２６】
2011166421.tif 000028
【図２７】
2011166421.tif 000029
【図２８】
2011166421.tif 000030
【図２９】
2011166421.tif 000031
【図３０】
2011166421.tif 000032
【図３１】
2011166421.tif 000033
【図３２】
2011166421.tif 000034
【図３３】
2011166421.tif 000035
【図３４】
2011166421.tif 000036