(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-09
(45)【発行日】2022-12-19
(54)【発明の名称】ネットワークハブ、転送方法及び車載ネットワークシステム
(51)【国際特許分類】
H04L 12/46 20060101AFI20221212BHJP
H04L 12/28 20060101ALI20221212BHJP
【FI】
H04L12/46 100C
H04L12/28 100A
(21)【出願番号】P 2021169085
(22)【出願日】2021-10-14
(62)【分割の表示】P 2017046322の分割
【原出願日】2017-03-10
【審査請求日】2021-11-05
(32)【優先日】2016-05-27
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】514136668
【氏名又は名称】パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ
【氏名又は名称原語表記】Panasonic Intellectual Property Corporation of America
(74)【代理人】
【識別番号】100109210
【氏名又は名称】新居 広守
(74)【代理人】
【識別番号】100137235
【氏名又は名称】寺谷 英作
(74)【代理人】
【識別番号】100131417
【氏名又は名称】道坂 伸一
(72)【発明者】
【氏名】前田 学
(72)【発明者】
【氏名】佐々木 崇光
(72)【発明者】
【氏名】芳賀 智之
(72)【発明者】
【氏名】松島 秀樹
【審査官】鈴木 香苗
(56)【参考文献】
【文献】国際公開第2015/151184(WO,A1)
【文献】特開2015-139093(JP,A)
【文献】特開2006-221286(JP,A)
【文献】米国特許第06654355(US,B1)
【文献】米国特許出願公開第2015/0229741(US,A1)
【文献】米国特許出願公開第2015/0003443(US,A1)
【文献】特開2008-099014(JP,A)
【文献】特開2006-347258(JP,A)
【文献】木谷 光博,自動運転向け車内ネットワークシステムにおけるデータ伝送方式の開発 Development of Data Communication,情報処理学会 研究報告 グループウェアとネットワークサービス(GN) 2016-GN-097 [on,日本,情報処理学会,2016年12月22日,p.1-8
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/46
H04L 12/28
(57)【特許請求の範囲】
【請求項1】
第1通信プロトコルに従って第1種フレームの伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコルに従っ
て第2種フレームの伝送が行われる第2ネットワークとを含む
、車両におけるネットワーク通信システムである、車載ネットワークシステムで用いられるネットワークハブであって、
ペイロードを含む第1種フレームを受信する受信部と、
前記受信部で受信された第1種フレーム
のペイロード中に第2ネットワークに伝送されるべ
き情報を含むか否かを
、前記第1種フレームのペイロード内の識別フラグを用いて判別し、当該判別の結果に基づいて当該第1種フレームに基づくフレームを送出するポートを選定する転送先選定部と、
前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートに接続される
通信路に、当該第1種フレームに基づくフレームを送出する送信部とを備え
、
前記ポートは、前記第2ネットワークの通信路に接続される第2のポートと、前記第1ネットワークの通信路に接続される第1のポートを有し、
前記転送先選定部は、
前記識別フラグが前記受信部で受信された第1種フレームのペイロード中に前記情報を含むことを示す場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記第2のポートを選定し、
前記識別フラグが前記受信部で受信された第1種フレームのペイロード中に前記情報を含まないことを示す場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記第1のポートを選定し、
前記送信部は、
前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記第1のポートである場合に、当該第1種フレームとは少なくとも前記ペイロードの内容が同一の第1種フレームを前記第1ネットワークの前記通信路に送出し、
前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記第2のポートである場合に、当該第1種フレームにおける前記情報を含む第2
種フレームを前記第2ネットワークの前記通信路に送出する
ネットワークハブ。
【請求項2】
第1通信プロトコルは、Ethernet(登録商標)プロトコルであり、
第2通信プロトコルは、CAN(Controller Area Network)プロトコルであり、
第1種フレームは、Ethernet(登録商標)ヘッダと、ペイロードであるデータとを含むEthernet(登録商標)フレームであり、
第2種フレームは、データフィールドを含むデータフレームであり、
前
記情報は、前記データフィールドの内容を示し、
前記
第1のポートは、Ethernet(登録商標)ケーブルに接続され
る
請求項1記載のネットワークハブ。
【請求項3】
第2種フレームは、IDフィールド、DLC(Data Length Code)及び前記データフィールドを含み、
前
記情報は、前記IDフィールド、前記DLC及び前記データフィールドの値を示し、
前記送信部は、
前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記第2のポートである場合に、第2種フレームの前記
第2ネットワークへの前記送出を、前
記情報が示す前記IDフィールドの値を第2種フレームの前記IDフィールドに入れて、前記情報が示す前記DLCの値を当該第2種フレームの前記DLCに入れて、前
記情報が示す前記データフィールドの値を当該第2種フレームの前記データフィールドに入れて生成された当該第2種フレームを前記
第2ネットワークに送出することで、行う
請求項
2記載のネットワークハブ。
【請求項4】
前
記情報は、第2ネットワークに伝送されるべき複数の第2種フレームそれぞれの前記IDフィールド、前記DLC及び前記データフィールドの値を示し、
前記送信部は、
前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記第2のポートである場合に、第2種フレームの前記
ネットワークへの前記送出を、複数の第2種フレームのそれぞれが前
記情報の互いに異なる一部を含むところの当該複数の第2種フレームを前記
第2ネットワークに送出することで、行う
請求項
3記載のネットワークハブ。
【請求項5】
第2種フレームは、IDフィールド及び前記データフィールドを含み、
前
記情報は、第1種フレームの前記ペイロードに配置された、第2ネットワークに伝送されるべき複数の第2種フレームそれぞれの前記データフィールドの値を示す個別データの集合であり、
前記送信部は、
前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記第2のポートである場合に、第2種フレームの前記
ネットワークへの前記送出を、前記個別データの集合の各々について、当該個別データの前記ペイロードでの配置に基づいて特定されるID値を第2種フレームの前記IDフィールドに入れて、当該個別データの値を当該第2種フレームの前記データフィールドに入れて生成された当該第2種フレームを前記
第2ネットワークの前記通信路に送出することで、行う
請求項
2記載のネットワークハブ。
【請求項6】
前記ネットワークハブは、前記Ethernet(登録商標)ケーブルに接続される複数のポートを有し、当該複数のポートは、第2種フレームの伝送が行われる前記
第2ネットワークに接続される装置に対して前記Ethernet(登録商標)ケーブルで接続されるポートを含み、
前記転送先選定部は、前記識別フラグが前記受信部で受信された第1種フレーム
のペイロード中に前
記情報を含む
ことを示す場合に、当該第1種フレームに基づくフレームを送
出するポートとして、前記
ネットワークに接続される前記装置に対して前記Ethernet(登録商標)ケーブルで接続されるポートを選定し、
前記送信部は、前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートに接続された前記Ethernet(登録商標)ケーブルに、当該第1種フレームとは少なくとも前記ペイロードの内容が同一の第1種フレームを送出する
請求項2記載のネットワークハブ。
【請求項7】
前記第1通信プロトコルは、前記第2通信プロトコルに対して通信速度が速いプロトコルである
請求項1記載のネットワークハブ。
【請求項8】
第1通信プロトコルに従って第1種フレームの伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコルに従っ
て第2種フレームの伝送が行われる第2ネットワークとを含む
、車両におけるネットワーク通信システムである、車載ネットワークシステムにおけるネットワークハブで用いられる転送方法であって、
ペイロードを含む第1種フレームを受信する受信ステップと、
前記受信ステップで受信された第1種フレーム
のペイロード中に第2ネットワークに伝送されるべ
き情報を含むか否かを
、前記第1種フレームのペイロード内の識別フラグを用いて判別し、当該判別の結果に基づいて当該第1種フレームに基づくフレームを送出するポートを選定する転送先選定ステップと、
前記受信ステップで受信された第1種フレームについての前記転送先選定ステップで選定されたポートに接続される
通信路に、当該第1種フレームに基づくフレームを送出する送信ステップとを含
み、
前記ポートは、前記第2ネットワークの通信路に接続される第2のポートと、前記第1ネットワークの通信路に接続される第1のポートを有し、
前記転送先選定ステップは、
前記識別フラグが前記受信ステップで受信された第1種フレームのペイロード中に前記情報を含むことを示す場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記第2のポートを選定し、
前記識別フラグが前記受信ステップで受信された第1種フレームのペイロード中に前記情報を含まないことを示す場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記第1のポートを選定し、
前記送信ステップは、
前記受信ステップで受信された第1種フレームについての前記転送先選定ステップで選定されたポートが、前記第1のポートである場合に、当該第1種フレームとは少なくとも前記ペイロードの内容が同一の第1種フレームを前記第1ネットワークの前記通信路に送出し、
前記受信ステップで受信された第1種フレームについての前記転送先選定ステップで選定されたポートが、前記第2のポートである場合に、当該第1種フレームにおける前記情報を含む第2種フレームを前記第2ネットワークの前記通信路に送出する
転送方法。
【請求項9】
第1通信プロトコルに従って第1種フレームの伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコルに従っ
て第2種フレームの伝送が行われる第2ネットワークとを含む
、車両におけるネットワーク通信システムである、車載ネットワークシステムであって、
第1ネットワークに接続された電子制御ユニットと、
第1ネットワークに接続されたネットワークハブとを備え、
前記電子制御ユニットは、
第1通信プロトコルに従って第1種フレームを生成する生成部と、
前記生成部により生成された第1種フレームを第1ネットワークに送信する送信部とを備え、
前記生成部は、第2ネットワークに伝送されるべ
き情報と、第1種フレームが第2ネットワークに伝送されるべき情報を含むことを表す
識別フラグとを、当該第1種フレーム
のペイロード中に含ませて、当該第1種フレームの前記生成を行い、
前記ネットワークハブは、
ペイロードを含む第1種フレームを受信する受信部と、
前記
第1種フレームのペイロード内の前記識別フラグを用いて前記受信部で受信された第1種フレーム
のペイロード中に前
記情報を含むか否かを判別し、当該判別の結果に基づいて当該第1種フレームに基づくフレームを送出するポートを選定する転送先選定部と、
前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートに接続される
通信路に、当該第1種フレームに基づくフレームを送出する送信部とを備え
、
前記ポートは、前記第2ネットワークの通信路に接続される第2のポートと、前記第1ネットワークの通信路に接続される第1のポートを有し、
前記ネットワークハブにおいて、
前記転送先選定部は、
前記識別フラグが前記受信部で受信された第1種フレームのペイロード中に前記情報を含むことを示す場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記第2のポートを選定し、
前記識別フラグが前記受信部で受信された第1種フレームのペイロード中に前記情報を含まないことを示す場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記第1のポートを選定し、
前記送信部は、
前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記第1のポートである場合に、当該第1種フレームとは少なくとも前記ペイロードの内容が同一の第1種フレームを前記第1ネットワークの前記通信路に送出し、
前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記第2のポートである場合に、当該第1種フレームにおける前記情報を含む第2種フレームを前記第2ネットワークの前記通信路に送出する
車載ネットワークシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、車載ネットワークで通信する電子制御ユニット間のメッセージの転送技術に関する。
【背景技術】
【0002】
近年、自動車の中のシステムには、電子制御ユニット(ECU:Electronic Control Unit)と呼ばれる装置が多数配置されている。これらのECUをつなぐネットワークは車載ネットワークと呼ばれる。車載ネットワークには、多数の規格が存在する。その中でも最も主流な車載ネットワークの一つに、ISO11898-1で規定されているCAN(Controller Area Network)という規格が存在する。CANでは、有線伝送路(通信路)であるバスに接続されている各ECU(ノード)が、フレーム(メッセージ)を送受信する。またCANでは、送信先や送信元を指す識別子は存在せず、送信ノードはフレーム毎にID(CAN-ID)を付けて送信し(つまりバスに信号を送出し)、各受信ノードは予め定められたCAN-IDのメッセージのみを受信する(つまりバスから信号を読み取る)。また、より多くの情報を伝送するための規格として、IEEE802.3で規定されているEthernet(登録商標)という規格が存在する。Ethernet(登録商標)のフレーム(メッセージ)は、送信先や送信元を指す情報をヘッダに含む。Ethernet(登録商標)では、1フレームで送信できる最大データ量がCANより大きい。
【0003】
特許文献1には、CANプロトコルに従った機器とEthernet(登録商標)プロトコル等に従った機器との間でメッセージの中継を行うゲートウェイが記載されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
Ethernet(登録商標)のネットワークと、CANのネットワークとを含む車載ネットワークシステムにおいて、他の電子制御ユニットと通信する電子制御ユニット(ECU)それぞれは、Ethernet(登録商標)とCANとのうち少なくとも一方のインタフェースを備えることになる。この場合に、Ethernet(登録商標)のインタフェースを有する電子制御ユニットと通信を行い、かつ、CANのバスに接続された電子制御ユニット(つまりCANのインタフェースを有する電子制御ユニット)とも通信を行う必要がある電子制御ユニットそれぞれが、両方のインタフェースを備えることには、コストの増大等といった問題がある。このため、例えばEthernet(登録商標)のインタフェースのみを備える電子制御ユニットが、ゲートウェイ等を介して、CANのバスに接続された電子制御ユニットへ情報を伝達できることが望まれる。なお、特許文献1は、Ethernet(登録商標)のインタフェースを備える電子制御ユニット(以下、「E-ECU」とも称する。)が送信したメッセージが、他のE-ECUに伝送されるか、CANのバスに接続された電子制御ユニット(以下、「C-ECU」とも称する。)に伝送されるかといった伝送経路の振り分けについて示していない。
【0006】
そこで、本発明は、Ethernet(登録商標)等の第1ネットワークと、CAN等の第2ネットワークとを含む車載ネットワークシステムにおいて、E-ECUから送信されたメッセージの伝送経路を適切に定めるネットワークハブ(HUB)を提供する。また、本発明は、そのHUBに用いられる転送方法、及び、そのHUBを含む車載ネットワークシステムを提供する。
【課題を解決するための手段】
【0007】
上記課題を解決するために本発明の一態様に係るネットワークハブ(HUB)は、第1通信プロトコルに従って第1種フレームの伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコルに従って第2種フレームの伝送が行われる第2ネットワークとを含む、車両におけるネットワーク通信システムである、車載ネットワークシステムで用いられるネットワークハブであって、ペイロードを含む第1種フレームを受信する受信部と、前記受信部で受信された第1種フレームのペイロード中に第2ネットワークに伝送されるべき情報を含むか否かを、前記第1種フレームのペイロード内の識別フラグを用いて判別し、当該判別の結果に基づいて当該第1種フレームに基づくフレームを送出するポートを選定する転送先選定部と、前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートに接続される通信路に、当該第1種フレームに基づくフレームを送出する送信部とを備え、前記ポートは、前記第2ネットワークの通信路に接続される第2のポートと、前記第1ネットワークの通信路に接続される第1のポートを有し、前記転送先選定部は、前記識別フラグが前記受信部で受信された第1種フレームのペイロード中に前記情報を含むことを示す場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記第2のポートを選定し、前記識別フラグが前記受信部で受信された第1種フレームのペイロード中に前記情報を含まないことを示す場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記第1のポートを選定し、前記送信部は、前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記第1のポートである場合に、当該第1種フレームとは少なくとも前記ペイロードの内容が同一の第1種フレームを前記第1ネットワークの前記通信路に送出し、前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記第2のポートである場合に、当該第1種フレームにおける前記情報を含む第2種フレームを前記第2ネットワークの前記通信路に送出する。
【0008】
また、上記課題を解決するために本発明の一態様に係る転送方法は、第1通信プロトコルに従って第1種フレームの伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコルに従って第2種フレームの伝送が行われる第2ネットワークとを含む、車両におけるネットワーク通信システムである、車載ネットワークシステムにおけるネットワークハブで用いられる転送方法であって、ペイロードを含む第1種フレームを受信する受信ステップと、前記受信ステップで受信された第1種フレームのペイロード中に第2ネットワークに伝送されるべき情報を含むか否かを、前記第1種フレームのペイロード内の識別フラグを用いて判別し、当該判別の結果に基づいて当該第1種フレームに基づくフレームを送出するポートを選定する転送先選定ステップと、前記受信ステップで受信された第1種フレームについての前記転送先選定ステップで選定されたポートに接続される通信路に、当該第1種フレームに基づくフレームを送出する送信ステップとを含み、前記ポートは、前記第2ネットワークの通信路に接続される第2のポートと、前記第1ネットワークの通信路に接続される第1のポートを有し、前記転送先選定ステップは、前記識別フラグが前記受信ステップで受信された第1種フレームのペイロード中に前記情報を含むことを示す場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記第2のポートを選定し、前記識別フラグが前記受信ステップで受信された第1種フレームのペイロード中に前記情報を含まないことを示す場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記第1のポートを選定し、前記送信ステップは、前記受信ステップで受信された第1種フレームについての前記転送先選定ステップで選定されたポートが、前記第1のポートである場合に、当該第1種フレームとは少なくとも前記ペイロードの内容が同一の第1種フレームを前記第1ネットワークの前記通信路に送出し、前記受信ステップで受信された第1種フレームについての前記転送先選定ステップで選定されたポートが、前記第2のポートである場合に、当該第1種フレームにおける前記情報を含む第2種フレームを前記第2ネットワークの前記通信路に送出する。
【0009】
また、上記課題を解決するために本発明の一態様に係る車載ネットワークシステムは、第1通信プロトコルに従って第1種フレームの伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコルに従って第2種フレームの伝送が行われる第2ネットワークとを含む、車両におけるネットワーク通信システムである、車載ネットワークシステムであって、第1ネットワークに接続された電子制御ユニットと、第1ネットワークに接続されたネットワークハブとを備え、前記電子制御ユニットは、第1通信プロトコルに従って第1種フレームを生成する生成部と、前記生成部により生成された第1種フレームを第1ネットワークに送信する送信部とを備え、前記生成部は、第2ネットワークに伝送されるべき情報と、第1種フレームが第2ネットワークに伝送されるべき情報を含むことを表す識別フラグとを、当該第1種フレームのペイロード中に含ませて、当該第1種フレームの前記生成を行い、前記ネットワークハブは、ペイロードを含む第1種フレームを受信する受信部と、前記第1種フレームのペイロード内の前記識別フラグを用いて前記受信部で受信された第1種フレームのペイロード中に前記情報を含むか否かを判別し、当該判別の結果に基づいて当該第1種フレームに基づくフレームを送出するポートを選定する転送先選定部と、前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートに接続される通信路に、当該第1種フレームに基づくフレームを送出する送信部とを備え、前記ポートは、前記第2ネットワークの通信路に接続される第2のポートと、前記第1ネットワークの通信路に接続される第1のポートを有し、前記ネットワークハブにおいて、前記転送先選定部は、前記識別フラグが前記受信部で受信された第1種フレームのペイロード中に前記情報を含むことを示す場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記第2のポートを選定し、前記識別フラグが前記受信部で受信された第1種フレームのペイロード中に前記情報を含まないことを示す場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記第1のポートを選定し、前記送信部は、前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記第1のポートである場合に、当該第1種フレームとは少なくとも前記ペイロードの内容が同一の第1種フレームを前記第1ネットワークの前記通信路に送出し、前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記第2のポートである場合に、当該第1種フレームにおける前記情報を含む第2種フレームを前記第2ネットワークの前記通信路に送出する。
【発明の効果】
【0010】
本発明によれば、Ethernet(登録商標)のネットワークに接続された電子制御ユニット(E-ECU)が、CANのバスに接続された電子制御ユニット(C-ECU)に対しての情報の伝達を、適切に行えるようになる。
【図面の簡単な説明】
【0011】
【
図1】実施の形態1に係る車載ネットワークシステムの全体構成を示す図である。
【
図2】実施の形態1に係る車載ネットワークの概略構成を示す図である。
【
図3】実施の形態1に係る車載ネットワークの一部で送受信されるEthernet(登録商標)フレーム(「Eメッセージ」とも称する。)のフォーマットを示す図である。
【
図4】Eメッセージのペイロードの構成(1つのCANメッセージ情報を含む構成)の一例を示す図である。
【
図5】Eメッセージのペイロードの構成(複数のCANメッセージ情報を含む構成)の一例を示す図である。
【
図6】CANプロトコルで規定されるデータフレームのフォーマットを示す図である。
【
図7】実施の形態1に係る電子制御ユニット(E-ECU)の構成図である。
【
図8】実施の形態1に係るE-ECUで用いられる宛先テーブルの一例を示す図である。
【
図9】実施の形態1に係るネットワークハブ(HUB)の構成図である。
【
図10】実施の形態1に係るHUBで用いられるMAC(Media Access Control)アドレステーブルの一例を示す図である。
【
図11】実施の形態1に係るE-ECUの動作の一例を示すフローチャートである。
【
図12】実施の形態1に係るHUBの動作の一例を示すフローチャートである。
【
図13】実施の形態1に係る車載ネットワークシステムにおけるメッセージ伝送の例を示すシーケンス図である。
【
図14】実施の形態2に係る車載ネットワークの概略構成を示す図である。
【
図15】実施の形態2に係るHUBの構成図である。
【
図16】実施の形態2に係る変換装置の構成図である。
【
図17】実施の形態3に係る車載ネットワークの概略構成を示す図である。
【
図18】実施の形態3に係るHUBの構成図である。
【
図19】実施の形態3に係るHUBで用いられる宛先テーブルの一例を示す図である。
【
図20】実施の形態4に係るHUBの構成図である。
【
図21】実施の形態4に係るE-ECUの動作の一例を示すフローチャートである。
【
図22】実施の形態4に係るHUBの動作の一例を示すフローチャートである。
【
図23】実施の形態5に係るE-ECUで用いられる宛先テーブルの一例を示す図である。
【
図24】実施の形態5に係るHUBで用いられる、MACアドレスとCAN-IDとを対応付けた対応テーブルの一例を示す図である。
【
図25】実施の形態5に係るHUBの動作の一例を示すフローチャートである。
【
図26】Eメッセージのペイロードの構成の変形例を示す図である。
【
図27】変形例に係るEメッセージのペイロード内の各個別データの位置とCAN-IDとを対応付けた対応テーブルの一例を示す図である。
【
図28】変形例に係る車載ネットワークの概略構成を示す図である。
【発明を実施するための形態】
【0012】
本発明の一態様に係るネットワークハブ(HUB)は、第1通信プロトコルに従って第1種フレームの伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコルに従ってバスで第2種フレームの伝送が行われる第2ネットワークとを含む車載ネットワークシステムで用いられるネットワークハブであって、第1種フレームを受信する受信部と、前記受信部で受信された第1種フレームが第2ネットワークに伝送されるべき第2種フレームの基礎となる第1情報を含むか否かを判別し、当該判別の結果に基づいて当該第1種フレームに基づくフレームを送出するポートを選定する転送先選定部と、前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートに接続される有線伝送路に、当該第1種フレームに基づくフレームを送出する送信部とを備えるネットワークハブである。これにより、フレーム(メッセージ)を中継するHUBで、第1情報の有無によりフレームの送出先のポートが選定されるので、Ethernet(登録商標)等の第1ネットワークに接続されたECU(例えばE-ECU)が、CAN等の第2ネットワークのバスに接続されたECU(例えばC-ECU)に対しての情報の伝達を、適切に行えるようになる。なお、第1種フレームの送信元のECU(例えばE-ECU)は、例えば、第1通信プロトコル(例えばEthernet(登録商標)プロトコル)に従って第1種フレームの伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコル(例えばCANプロトコル)に従ってバスで第2種フレームの伝送が行われる第2ネットワークとを含む車載ネットワークシステムにおいて第1ネットワークに接続されるECUであり、第1通信プロトコルに従って第1種フレームを生成する生成部と、その生成部により生成された第1種フレームを第1ネットワークに送信する送信部とを備え、その生成部は、第2ネットワークに伝送されるべき第2種フレームの基礎となる第1情報と、第1種フレームが第2ネットワークに伝送されるべき情報を含むことを表す第2情報とを、その第1種フレームに含ませて、その第1種フレームの生成を行う。
【0013】
また、第1通信プロトコルは、Ethernet(登録商標)プロトコルであり、第2通信プロトコルは、CAN(Controller Area Network)プロトコルであり、第1種フレームは、Ethernet(登録商標)ヘッダと、ペイロードであるデータとを含むEthernet(登録商標)フレームであり、第2種フレームは、データフィールドを含むデータフレームであり、前記第1情報は、前記データフィールドの内容を示し、前記ネットワークハブは、Ethernet(登録商標)ケーブルに接続されるポートを有することとしても良い。このHUBでフレームの中継がなされることにより、例えばEthernet(登録商標)インタフェースしか有さないE-ECUが、CANバスに接続されたC-ECUに対して、適切に情報を伝達し得る。
【0014】
また、前記ネットワークハブは、第2種フレームの伝送が行われる前記バスに接続されるポートを有し、前記転送先選定部は、前記受信部で受信された第1種フレームが前記第1情報を含むと判別した場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記バスに接続されるポートを選定し、前記受信部で受信された第1種フレームが前記第1情報を含まないと判別した場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記Ethernet(登録商標)ケーブルに接続されるポートを選定し、前記送信部は、前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記Ethernet(登録商標)ケーブルに接続されるポートである場合に、当該第1種フレームとは少なくとも前記ペイロードの内容が同一の第1種フレームを当該Ethernet(登録商標)ケーブルに送出し、前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートが、前記バスに接続されるポートである場合に、当該第1種フレームにおける前記第1情報を含む第2種フレームを当該バスに送出することとしても良い。これにより、HUBが、Ethernet(登録商標)ケーブルから受信したフレームに基づくフレームを一定条件下で直接CANバスに送出するので、この他にプロトコル変換機能を有する変換装置等を設ける必要がなくなる。
【0015】
また、第2種フレームは、IDフィールド、DLC(Data Length Code)及び前記データフィールドを含み、前記第1情報は、前記IDフィールド、前記DLC及び前記データフィールドの値を示し、前記送信部は、第2種フレームの前記バスへの前記送出を、前記第1情報が示す前記IDフィールドの値を第2種フレームの前記IDフィールドに入れて、前記第1情報が示す前記DLCの値を当該第2種フレームの前記DLCに入れて、前記第1情報が示す前記データフィールドの値を当該第2種フレームの前記データフィールドに入れて生成された当該第2種フレームを前記バスに送出することで、行うこととしても良い。これにより、E-ECUが第1種フレーム内に含ませた第1情報に従ってHUBがCANメッセージを生成してCANバスに送出するので、E-ECUにおいて任意のCANメッセージをC-ECUに伝達することが可能となる。
【0016】
また、前記第1情報は、第2ネットワークに伝送されるべき複数の第2種フレームそれぞれの前記IDフィールド、前記DLC及び前記データフィールドの値を示し、前記送信部は、第2種フレームの前記バスへの前記送出を、複数の第2種フレームのそれぞれが前記第1情報の互いに異なる一部を含むところの当該複数の第2種フレームを前記バスに送出することで、行うこととしても良い。これにより、E-ECUからC-ECUに対して情報を伝送する場合における伝送効率を高めることが可能となる。
【0017】
また、第2種フレームは、IDフィールド及び前記データフィールドを含み、前記第1情報は、第1種フレームの前記ペイロードに配置された、第2ネットワークに伝送されるべき複数の第2種フレームそれぞれの前記データフィールドの値を示す個別データの集合であり、前記送信部は、第2種フレームの前記バスへの前記送出を、前記個別データの集合の各々について、当該個別データの前記ペイロードでの配置に基づいて特定されるID値を第2種フレームの前記IDフィールドに入れて、当該個別データの値を当該第2種フレームの前記データフィールドに入れて生成された当該第2種フレームを前記バスに送出することで、行うこととしても良い。これにより、E-ECUは、CAN-IDを第1種フレームに含ませる必要がなくなる。
【0018】
また、第2種フレームは、IDフィールド及び前記データフィールドを含み、前記送信部は、前記受信部で受信された第1種フレームにおける前記第1情報を含む第2種フレームの前記バスへの前記送出を、当該第1種フレーム内の前記Ethernet(登録商標)ヘッダにおける宛先MACアドレスの値に基づいて特定されるID値を第2種フレームの前記IDフィールドに入れて、前記第1情報が示す前記データフィールドの値を当該第2種フレームの前記データフィールドに入れて生成された当該第2種フレームを前記バスに送出することで、行うこととしても良い。これにより、E-ECUは、CAN-IDを第1種フレームのペイロードに含ませる必要がなくなる。
【0019】
また、前記ネットワークハブは、前記Ethernet(登録商標)ケーブルに接続される複数のポートを有し、当該複数のポートは、第2種フレームの伝送が行われる前記バスに接続される装置に対して前記Ethernet(登録商標)ケーブルで接続されるポートを含み、前記転送先選定部は、前記受信部で受信された第1種フレームが前記第1情報を含むと判別した場合に、当該第1種フレームに基づくフレームを送出するポートとして、前記バスに接続される前記装置に対して前記Ethernet(登録商標)ケーブルで接続されるポートを選定し、前記送信部は、前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートに接続された前記Ethernet(登録商標)ケーブルに、当該第1種フレームとは少なくとも前記ペイロードの内容が同一の第1種フレームを送出することとしても良い。これにより、HUBは、E-ECUからのC-ECUに伝送されるべき情報を、C-ECUが接続するバスに接続された中継装置(別のHUB等)へと送出し得る。
【0020】
また、前記転送先選定部は、前記受信部で受信された第1種フレーム内の所定の識別フラグの値により前記判別を行うこととしても良い。これにより、HUBが識別フラグに従って情報の伝送経路を振り分けるので、E-ECUは、第1種フレーム内に識別フラグを適切に定めることで目的のECUに情報を伝送し得る。
【0021】
また、前記所定の識別フラグは、第1種フレームの前記Ethernet(登録商標)ヘッダ内に配置されていることとしても良い。これにより、HUBは、第1種フレームがE-ECUを宛先とする場合等においてペイロードを参照する必要がなくなり、情報の伝送経路の選定を比較的迅速に行えるようになる。
【0022】
また、前記転送先選定部は、前記受信部で受信された第1種フレーム内の前記Ethernet(登録商標)ヘッダにおける宛先MACアドレスの値により前記判別を行うこととしても良い。これにより、E-ECUは、C-ECU宛ての情報であることを示すための識別フラグを、送信する第1種フレームのペイロード等に設ける必要がなくなる。このため、第1種フレームのデータ量の削減が可能となる。
【0023】
また、本発明の一態様に係る転送方法は、第1通信プロトコルに従って第1種フレームの伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコルに従ってバスで第2種フレームの伝送が行われる第2ネットワークとを含む車載ネットワークシステムにおけるネットワークハブで用いられる転送方法であって、第1種フレームを受信する受信ステップと、前記受信ステップで受信された第1種フレームが第2ネットワークに伝送されるべき第2種フレームの基礎となる第1情報を含むか否かを判別し、当該判別の結果に基づいて当該第1種フレームに基づくフレームを送出するポートを選定する転送先選定ステップと、前記受信ステップで受信された第1種フレームについての前記転送先選定ステップで選定されたポートに接続される有線伝送路に、当該第1種フレームに基づくフレームを送出する送信ステップとを含む転送方法である。これにより、Ethernet(登録商標)等の第1ネットワークに接続されたECU(例えばE-ECU)が、CAN等の第2ネットワークのバスに接続されたECU(例えばC-ECU)に対しての情報の伝達を、適切に行えるようになる。
【0024】
また、本発明の一態様に係る車載ネットワークシステムは、第1通信プロトコルに従って第1種フレームの伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコルに従ってバスで第2種フレームの伝送が行われる第2ネットワークとを含む車載ネットワークシステムであって、第1ネットワークに接続された電子制御ユニットと、第1ネットワークに接続されたネットワークハブとを備え、前記電子制御ユニットは、第1通信プロトコルに従って第1種フレームを生成する生成部と、前記生成部により生成された第1種フレームを第1ネットワークに送信する送信部とを備え、前記生成部は、第2ネットワークに伝送されるべき第2種フレームの基礎となる第1情報と、第1種フレームが第2ネットワークに伝送されるべき情報を含むことを表す第2情報とを、当該第1種フレームに含ませて、当該第1種フレームの前記生成を行い、前記ネットワークハブは、第1種フレームを受信する受信部と、前記受信部で受信された第1種フレームが前記第1情報を含むか否かを判別し、当該判別の結果に基づいて当該第1種フレームに基づくフレームを送出するポートを選定する転送先選定部と、前記受信部で受信された第1種フレームについての前記転送先選定部で選定されたポートに接続される有線伝送路に、当該第1種フレームに基づくフレームを送出する送信部とを備える車載ネットワークシステムである。これにより、Ethernet(登録商標)等の第1ネットワークに接続されたECU(例えばE-ECU)が、HUBを介して、CAN等の第2ネットワークのバスに接続されたECU(例えばC-ECU)に対しての情報の伝達を、適切に行えるようになる。
【0025】
なお、これらの全般的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータで読み取り可能なCD-ROM等の記録媒体で実現されても良く、システム、方法、集積回路、コンピュータプログラム又は記録媒体の任意な組み合わせで実現されても良い。
【0026】
以下、実施の形態に係るネットワークハブ(HUB)及び電子制御ユニット(ECU)を含む車載ネットワークシステムについて、図面を参照しながら説明する。ここで示す実施の形態は、いずれも本発明の一具体例を示すものである。従って、以下の実施の形態で示される数値、構成要素、構成要素の配置及び接続形態、並びに、ステップ(工程)及びステップの順序等は、一例であって本発明を限定するものではない。以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意に付加可能な構成要素である。また、各図は、模式図であり、必ずしも厳密に図示されたものではない。
【0027】
(実施の形態1)
以下、本発明の実施の形態として、Ethernet(登録商標)プロトコルに従ってEthernet(登録商標)フレーム(Eメッセージ)の授受を行う複数の電子制御ユニット(E-ECU)を含む車載ネットワークシステム10について、図面を用いて説明する。車載ネットワークシステム10には、CANプロトコルに従ってバスでデータフレーム(CANメッセージ)等の授受を行う複数の電子制御ユニット(C-ECU)も含まれる。
【0028】
[1.1 車載ネットワークシステム10の全体構成]
図1は、実施の形態1に係る車載ネットワークシステム10の全体構成を示す。
【0029】
車載ネットワークシステム10は、制御装置、センサ、アクチュエータ、ユーザインタフェース装置等の各種機器が搭載された車両におけるネットワーク通信システムである。車載ネットワークシステム10は、車載ネットワークとして、Ethernet(登録商標)プロトコルに従ってEthernet(登録商標)フレーム(Eメッセージ)の伝送が行われる第1ネットワーク(Ethernet(登録商標)のネットワーク)と、CANプロトコルに従ってバスでデータフレーム(CANメッセージ)等の伝送が行われる第2ネットワーク(CANのネットワーク)とを含む。
【0030】
図1に示すように車載ネットワークシステム10は、ネットワークハブ(HUB)100と、電子制御ユニット(E-ECU)200a~200cと、CANゲートウェイ400と、電子制御ユニット(C-ECU)500a~500dと、各電子制御ユニット(E-ECU、C-ECU)に接続した各種機器(通信モジュール300a、リアカメラ300b、レーダ300c、エンジン600a、ブレーキ600b、ドア開閉センサ600c、及び、ウィンドウ開閉センサ600d)と、ケーブル(Ethernet(登録商標)ケーブル)20a~20cと、バス(CANバス)30a~30cとを含んで構成される。Ethernet(登録商標)ケーブル20a~20cは第1ネットワークの伝送路であり、バス30a~30cは第2ネットワークの伝送路である。
【0031】
なお、車載ネットワークシステム10には、E-ECU200a~200c及びC-ECU500a~500d以外にもいくつものECUが含まれ得る。例えば、バス30a~30cには、C-ECU500a~500d以外にも、図示しないC-ECUが接続され得る。
【0032】
ECU(E-ECU及びC-ECU)は、例えば、プロセッサ(マイクロプロセッサ)、メモリ等のデジタル回路、アナログ回路、通信回路等を含む装置である。メモリは、ROM、RAM等であり、プロセッサにより実行されるプログラム(ソフトウェアとしてのコンピュータプログラム)を記憶することができる。メモリとして、不揮発性メモリを含んでも良い。例えばプロセッサが、プログラム(コンピュータプログラム)に従って動作することにより、ECUは各種機能を実現することになる。なお、コンピュータプログラムは、所定の機能を達成するために、プロセッサに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
【0033】
C-ECU500a~500dは、CANプロトコルに従ってフレームの授受を行う。C-ECU500a~500dは、それぞれエンジン600a、ブレーキ600b、ドア開閉センサ600c、ウィンドウ開閉センサ600dといった機器に接続されており、その機器の状態を取得し、例えば周期的に、状態を表すデータフレームを、バス30a、バス30b等で構成される第2ネットワークに送信している。また、C-ECU500a~500dは、第2ネットワークを構成するバスからデータフレームを受信して、データフレームを解釈し、受信すべきCAN-IDを有するデータフレームか否かの判別を行い、必要に応じてデータフレーム内のデータ(データフィールドの内容)に従ってそのC-ECUに接続されている機器の制御を行い得るし、必要に応じてデータフレームを生成して送信し得る。
【0034】
CANゲートウェイ400は、バス30a~30cと接続されたゲートウェイ(中継装置等)としての一種のECUである。CANゲートウェイ400は、一方のバスから受信したデータフレームを他方のバスに転送する機能を有する。
【0035】
E-ECU200a~200cは、Ethernet(登録商標)のインタフェースを有し、Ethernet(登録商標)ケーブルに接続する。E-ECU200a~200cは、Ethernet(登録商標)プロトコルに従ってEthernet(登録商標)フレーム(Eメッセージ)の送信又は受信を行う。E-ECU200a~200cは、それぞれ通信モジュール300a、リアカメラ300b、レーダ300cといった機器に接続されており、その機器から取得した情報に基づく処理を行い、必要に応じてその機器を制御し、或いは必要に応じて他のECUへの情報の送信を行い得る。通信モジュール300aは、インターネット等の外部ネットワーク91を介して車両外のサーバ90と通信する機能を有する装置である。サーバ90は、例えば車両のECUに対して情報を提供する機能等を有するコンピュータである。
【0036】
HUB100は、E-ECU200a~200cと接続されるEthernet(登録商標)スイッチ(スイッチングハブ)である。また、HUB100は、バス30cとも接続され、第1ネットワークと第2ネットワークとの間でフレーム(メッセージ)の転送を行う機能を有する。HUB100は、例えば、メモリ等のデジタル回路、アナログ回路、通信回路等を含み、プロセッサを含んでも良い。
【0037】
[1.2 車載ネットワークの構成]
図2は、本実施の形態に係る車載ネットワークの概略構成を示す。
【0038】
車載ネットワークシステム10においてE-ECU200a~200cは互いに、各ケーブルをHUB100で接続して構成される第1ネットワークを介して、通信し得る。また、C-ECU500a~500dは互いに、バス30a、30b、CANゲートウェイ400等で構成される第2ネットワークを介して、通信し得る。また、例えば、E-ECU200aは、ケーブル20a、HUB100、バス30c、CANゲートウェイ400及びバス30aを介して、C-ECU500aと通信し得る。
【0039】
HUB100は、E-ECUと接続するためのポート(つまりEthernet(登録商標)ケーブルを接続する端子)を複数備える。また、HUB100は、CANゲートウェイ400と接続されたバス30cに接続するためのポート(CANポート)を1つ備える。
【0040】
[1.3 車載ネットワークで送受信されるフレームの構成]
図3は、第1ネットワークで送受信されるフレーム(Eメッセージ)のフォーマットを示す。同図に示すように、Eメッセージは、主たる伝送内容であるデータを格納するペイロードの前にヘッダ(Ethernet(登録商標)ヘッダ)を付加して構成される。ヘッダには、宛先MACアドレス、送信元MACアドレス、及び、タイプが含まれる。
【0041】
車載ネットワークシステム10におけるE-ECUは、C-ECUに伝達すべき情報の送信の際に、CANメッセージ情報を含むEメッセージを送信する。CANメッセージ情報は、CANバスで伝送されるデータフレーム(CANメッセージ)の基礎となる情報である。
【0042】
図3に示すEメッセージのペイロード内のデータ構成例を
図4及び
図5に示す。
図4は、1つのCANメッセージ情報だけをEメッセージのペイロードに含む例を示す。また、
図5は、複数のCANメッセージ情報をEメッセージのペイロードに含むことを可能にする場合の例を示す。
【0043】
CANメッセージ情報は、
図4及び
図5の例では、CAN-ID、サイズ及びデータで構成される。
図5のメッセージ数は、CANメッセージ情報の個数を示す。なお、メッセージ数の代わりに、CANメッセージ情報の全体のデータ量等を示す情報を用いても良い。また、CANフラグは、Eメッセージが第2ネットワークに伝送されるべき情報を含むか否かを識別するための識別フラグであり、EメッセージのペイロードにCANメッセージ情報を含む場合(つまりEメッセージの宛先となるECUがC-ECUである場合)においてONにされ、それ以外の場合にOFF(つまりONと相反する情報を示す値)にされるフラグである。
図4及び
図5の例では、Eメッセージのペイロードの先頭にCANフラグを配置する例を示しているがこれは一例に過ぎない。本実施の形態では、主として、
図5のような複数のCANメッセージ情報をEメッセージのペイロードに含ませ得ることとして説明する。これにより、例えば、伝送効率が高まり得る。
【0044】
なお、E-ECUは、E-ECUに伝達すべき情報であってC-ECUに伝達する必要がない情報を送信する場合には、Eメッセージのペイロードの内容には、CANメッセージ情報を含ませる必要がない。この場合において、Eメッセージの宛先がC-ECUか否かをCANフラグによってしか区別できないとき等には、E-ECUは、例えば、C-ECUに伝達する必要がないEメッセージのペイロードにおけるCANフラグ(
図4、
図5参照)をOFFにする。
【0045】
第2ネットワークでは、C-ECU500a~500d等がCANプロトコルに従ってフレームの授受を行う。CANプロトコルにおけるフレームには、データフレーム、リモートフレーム、オーバーロードフレーム及びエラーフレームがあるが、ここでは、主にデータフレームに注目して説明する。
【0046】
図6は、第2ネットワークで送受信されるデータフレーム(CANメッセージ)のフォーマットを示す。同図に示すように、データフレームは、SOF(Start Of Frame)、ID(CAN-ID)、RTR(Remote Transmission Request)、IDE(Identifier Extension)、予約ビット「r」、サイズ、データ、CRC(Cyclic Redundancy Check)シーケンス、CRCデリミタ「DEL」、ACK(Acknowledgement)スロット、ACKデリミタ「DEL」、及び、EOF(End Of Frame)で構成される。ここで、IDフィールドの内容としてのID(CAN-ID)は、データの種類を示す識別子であり、メッセージIDとも称される。なお、CANでは、複数のノードが同時に送信を開始した場合、このCAN-IDが小さい値を持つフレームを優先する通信調停がなされる。サイズは、後続するデータフィールド(データ)の長さを示すDLC(Data Length Code)である。データの仕様については、CANプロトコルで規定されておらず、車載ネットワークシステム10において定められる。従って、車両の車種、製造者(製造メーカ)等に依存した仕様となり得る。
【0047】
[1.4 E-ECUの構成]
図7は、E-ECU200aの構成図である。E-ECU200aは、受信部210と、生成部220と、送信部230とを含んで構成される。これらの各構成要素は、E-ECU200aにおける通信回路、メモリに格納されたプログラムを実行するプロセッサ或いはデジタル回路等により実現される。
【0048】
受信部210は、外部情報つまりE-ECU200aの外部からの情報を、受信する。受信部210は、E受信部211とデータ受信部212とを含む。E受信部211は、ケーブル20aを介してフレーム(Eメッセージ)を受信する。データ受信部212は、接続している機器(通信モジュール300a)からデータを受信する。
【0049】
生成部220は、Ethernet(登録商標)プロトコルに従ってEメッセージを生成する。生成部220は、データ処理部221と送信先判定部222とメッセージ構築部223とCANメッセージ構築部224とを含む。
【0050】
データ処理部221は、E受信部211とデータ受信部212との一方又は両方により受信された外部情報(データ或いはEメッセージ)に基づく情報処理(演算等)を行い、他のECUに対して伝達すべき各種情報を生成する。データ処理部221は、この生成した各種情報として、外部情報そのものを用いても良い。データ処理部221による情報処理はいかなる内容であっても良く、データ処理部221は、いかなる情報を生成しても良い。データ処理部221が生成する各種情報は、例えば、車両の走行制御のための情報、車両のユーザに提示するための情報等であり、例えば、操舵指示角、速度指示値、現在速度値、通信情報等といった複数の種別(データタイプ)に分類される。
【0051】
送信先判定部222は、データ処理部221が生成した情報のデータタイプに応じて、例えば宛先テーブルを用いて送信先を判定する。
図8は、送信先判定部222が用いる宛先テーブルの一例を示す。同図に例示する宛先テーブルは、情報のデータタイプ毎に、情報の宛先となるECUがE-ECUかC-ECUかを示す送信先タイプと、宛先MACアドレス(或いはCAN-ID)とを対応付けたテーブルである。送信先判定部222は、データ処理部221が生成した情報の送信先がC-ECUであると判定した場合には、宛先テーブルに基づいてCAN-IDを定めてCANメッセージ構築部224に通知する。また、送信先判定部222は、宛先テーブルを用いて、データ処理部221が生成した情報の送信先となる宛先MACアドレスを定めて、メッセージ構築部223に通知する。なお、送信先判定部222は、送信先が複数のE-ECUであれば送信先毎の宛先MACアドレスをメッセージ構築部223に通知する。送信先判定部222は、送信先がC-ECUであると判定した場合には、予め定められた特定アドレスを宛先MACアドレスとして、メッセージ構築部224に通知する。特定アドレスの一例としては、ブロードキャストアドレス、マルチキャストアドレス、プロトコル変換機能を有する装置(変換装置)のMACアドレス等が、挙げられる。なお、HUB100はMACアドレスを有する必要がないがMACアドレスを有しても良く、HUB100がMACアドレスを有する場合におけるそのMACアドレスを、上述の特定アドレスとしても良い。
【0052】
CANメッセージ構築部224では、通知されたCAN-IDと、データ処理部221が生成した情報を示すデータと、そのデータのサイズとを示すCANメッセージ情報を生成する。例えば、データ処理部221が生成した情報を示すデータが、CANメッセージの最大データ長を超える場合には、CANメッセージ構築部224は、その情報を示すデータを分割することで、複数のCANメッセージ情報を生成する。CANメッセージ構築部224で生成されたCANメッセージ情報は、メッセージ構築部223によりEメッセージ中に配置されて、送信部230によりそのEメッセージが送信されることになる。CANメッセージ構築部224が生成するCANメッセージ情報は、少なくともCANメッセージのデータ(データフレームのデータフィールドの内容)を示す情報を含めば、その他の内容及び形式は任意であるが、例えば、
図6に示すCAN-ID、サイズ、及びデータをCANプロトコルに従ったビット長で含むようにCANメッセージ情報を構成することは有用である。また、C-ECUに送信されるべきCANメッセージ情報を含むEメッセージが伝送される過程で、HUB100等の装置で効率的にCANメッセージに変換できるようにすべく、例えばCANメッセージ構築部224で、CANプロトコルに従ってCANメッセージのフォーマットに適合するようにCANメッセージ情報を構築することは、有用である。
【0053】
メッセージ構築部223は、送信先判定部222に通知された宛先MACアドレス毎に、その宛先MACアドレスと、送信元MACアドレスとしてのE-ECU200aのMACアドレスとをヘッダに含ませてEメッセージを構築する(
図3参照)。メッセージ構築部223は、Eメッセージのペイロードには、例えば送信先がC-ECUであれば、ONにしたCANフラグと、CANメッセージ構築部224で構築されたCANメッセージ情報の個数と、その各CANメッセージ情報とを含ませる(
図5参照)。メッセージ構築部223は、Eメッセージのペイロードには、例えば送信先がE-ECUであれば、OFFにしたCANフラグと、データ処理部221が生成した情報を示すデータとを含ませる。なお、メッセージ構築部223では、データ処理部221が生成した情報が複数である場合において、CANメッセージ構築部224が生成した、CAN-IDが相互に異なり得る複数のCANメッセージ情報を連結して、Eメッセージのペイロードに配置することとしても良い。
【0054】
生成部220では、上述のようにE受信部211とデータ受信部212との一方又は両方により受信された外部情報(データ或いはEメッセージ)に基づいて、C-ECUに対してCANメッセージ情報を伝達する必要が生じた場合には、CANメッセージ情報と、ONにしたCANフラグとをペイロードに格納したEメッセージを生成する。ONにしたCANフラグは、Eメッセージが第2ネットワークに伝送されるべき第1情報(CANメッセージの基礎となるCANメッセージ情報)を含むことを表す第2情報として利用される。また、生成部220は、その外部情報に基づいて、E-ECUに対して情報を伝達する必要が生じた場合には、その伝達すべき情報を含み、例えば、第2情報を含まない(つまりCANフラグをOFFにした)Eメッセージを生成する。
【0055】
送信部230は、生成部220により生成されたEメッセージを、ケーブル20aに送出することで、第1ネットワークに送信する。
【0056】
なお、E-ECU200b、200cも、上述したE-ECU200aと同様の構成を有する。
【0057】
[1.5 HUB100の構成]
図9は、HUB100の構成図である。HUB100は、ポート1~4を有する。ポート1~3のそれぞれは、第1ネットワークを構成するケーブル20a~20cのそれぞれと接続される。ポート4は、第2ネットワークを構成するバス30c(つまりCANゲートウェイ400に接続される有線伝送路)に接続されるCANポートである。HUB100は、
図9に示すように、受信部110と、転送先選定部120と、送信部130とを含んで構成される。これらの各構成要素は、HUB100における通信回路、メモリ、デジタル回路(或いはメモリに格納されたプログラムを実行するプロセッサ)等により実現される。
【0058】
受信部110は、ポート1~3からEメッセージを受信するE受信部111と、ポート4からCANメッセージを受信するC受信部112とを含む。
【0059】
転送先選定部120は、受信部110により受信されたEメッセージが、第2ネットワークに伝送されるべきCANメッセージ(データフレーム)の基礎となる第1情報(CANメッセージ情報)を含むか否かを判別し、その判別の結果に基づいて、Eメッセージに基づくフレームを送出するポートを選定する。即ち、転送先選定部120は、受信部110で受信されたEメッセージがCANメッセージ情報を含まない場合には、そのEメッセージのヘッダの宛先MACアドレスに基づいて、そのEメッセージと同一内容のEメッセージの送出先として、ポート1~3のいずれかを選定する。転送先選定部120は、ポートの選定を、MACアドレステーブルを参照して行う。
図10は、転送先選定部120が用いるMACアドレステーブルの一例を示す。MACアドレステーブルは、スイッチ(スイッチングハブ)としてのHUB100が、ポート1~3のそれぞれからのEメッセージの受信によりMACアドレスを学習することで、生成及び更新される。MACアドレステーブルにおいてポート4(CANポート)に係る宛先MACアドレスとしては、例えば、上述した特定アドレスが定められていても良い。なお、EメッセージがCANメッセージ情報を含むか否かをペイロードに配置されたCANフラグで判別できる場合には、MACアドレステーブルにポート4(CANポート)の情報を含ませないこととしても良い。転送先選定部120は、受信部110で受信されたEメッセージがCANメッセージ情報を含む場合には、Eメッセージの宛先MACアドレスに基づいて判別してもEメッセージ内のCANフラグに基づいて判別しても良いが、そのCANメッセージ情報を示すように構成したCANメッセージ(データフレーム)の送出先としてポート4(CANポート)を選定する。
【0060】
送信部130は、E送信部131と、C送信部132と、結合部133と、分割部134とを含む。E送信部131は、ポート1~3からEメッセージを送信する機能を有し、C送信部132は、ポート4からCANプロトコルに従ってCANメッセージを送信する機能を有する。結合部133は、例えばC受信部112で受信された複数のCANメッセージについての情報を連結して送信用のEメッセージを生成してE送信部131に伝える機能を有する。分割部134は、E受信部111で受信されたEメッセージのペイロードに、連結された複数のCANメッセージ情報が含まれる場合(
図5参照)等において、例えば
図5のメッセージ数で示される個数の、個々のCANメッセージ情報に分割して、各CANメッセージ情報に応じてCANプロトコルに従った各CANメッセージを生成してC送信部132に逐次伝達する機能を有する。この場合の伝達順、つまりC送信部132で送信する各CANメッセージの送信順は、例えば、その基礎となったEメッセージのペイロードにおけるCANメッセージ情報の並び順に従う。これらの構成により、送信部130は、受信部110で受信されたEメッセージについての転送先選定部120で選定されたポートに接続される有線伝送路(ケーブル20a~20c及びバス30cのいずれか)に、その受信されたEメッセージに基づくフレーム(つまりポート1~3が選定された場合にはEメッセージ、ポート4が選定された場合にはCANメッセージ)を送出する。つまり、送信部130は、受信部110で受信されたEメッセージについての転送先選定部120で選定されたポートが、ポート1~3である場合に、そのEメッセージとは少なくともペイロードの内容が同一のEメッセージをその選定されたポートに接続されたケーブルに送出し、受信部110で受信されたEメッセージについての転送先選定部120で選定されたポートが、バス30cに接続されるポート4(CANポート)である場合に、そのEメッセージにおける第1情報(CANメッセージ情報)を含むCANメッセージをバス30cに送出する。詳細には、送信部130は、CANメッセージのバス30cへの送出を、HUB100が受信したEメッセージにおける第1情報(CANメッセージ情報)のID(つまりIDフィールドの値)を、CANメッセージのIDフィールドに入れて、第1情報が示すサイズ(つまりDLCの値)をそのCANメッセージのDLCに入れて、第1情報が示すデータ(つまりデータフィールドの値)をそのCANメッセージのデータフィールドに入れて、生成されたそのCANメッセージをバス30cに送出することで、行う。また、HUB100が受信したEメッセージが、複数のCANメッセージ情報を含む第1情報をペイロードに有する場合においては、送信部130は、CANメッセージのバス30cへの送出を、複数のCANメッセージのそれぞれが、HUB100が受信したEメッセージにおける第1情報の互いに異なる一部(個々のCANメッセージ情報)を含むところのその複数のCANメッセージそれぞれをバス30cに逐次送出することで、行う。
【0061】
なお、HUB100は、C受信部112で受信したCANメッセージに基づいてEメッセージを生成してポート1~3のいずれかから送信する機能を有しても良い。
【0062】
[1.6 E-ECUの動作]
図11は、本実施の形態に係るE-ECUの動作の一例としてのE-ECU処理を示すフローチャートである。以下、E-ECU200aにより実行されるE-ECU処理について、
図11に即して説明する。
【0063】
E-ECU200aは、受信部210により外部情報(他のE-ECUからのEメッセージ、通信モジュール300aからのデータ等)を受信する(ステップS1)。
【0064】
次に、E-ECU200aは、受信した外部情報に基づいて、データ処理部221でデータ処理(他のECUに対して送信すべき各種情報の生成等)を行う(ステップS2)。
【0065】
そして、E-ECU200aは、送信先判定部222で、データ処理部221が生成した情報毎について、その情報のデータタイプに応じて、宛先テーブルを用いてその情報の送信先がC-ECUか否かを判定する(ステップS3)。E-ECU200aは、その情報の送信先がC-ECUであると判定した場合には、その情報のデータタイプに応じてCAN-IDを定め、CANメッセージ構築部224で、CAN-IDと、データ処理部221が生成した情報を示すデータと、そのデータのサイズとを示すCANメッセージ情報を生成する(ステップS4)。なお、上述したようにデータ処理部221が生成した情報を示すデータがCANメッセージの最大データ長を超える場合には分割して複数のCANメッセージ情報を生成する。
【0066】
また、E-ECU200aは、複数のCANメッセージ情報を送信する必要があるか否かを判定し(ステップS5)、その必要があればステップS4で生成した個々のCANメッセージ情報を結合(連結)する(ステップS6)。ステップS5では、データ処理部221が生成した情報を示すデータの分割により複数のCANメッセージ情報を生成した場合、或いは、データ処理部221が複数の情報を生成した場合等において、複数のCANメッセージを送信する必要があると判定する。E-ECU200aは、ステップS5で複数のCANメッセージを送信する必要がないと判定した場合には、ステップS6をスキップする。
【0067】
E-ECU200aは、ステップS3で送信先がC-ECUであると判定した場合において、ステップS4で生成された1つのCANメッセージ情報、或いは、ステップS6で連結された複数のCANメッセージ情報をペイロードに含むEメッセージを、メッセージ構築部223により構築する(ステップS7)。また、ステップS7ではE-ECU200aは、ステップS3で送信先がC-ECUでないと判定した場合において、データ処理部221が生成した情報を示すデータをペイロードに含むEメッセージを、メッセージ構築部223により構築する。一例としては、E-ECU200aは、ステップS7では、C-ECUに伝達すべきCANメッセージ情報と、ONにしたCANフラグとをペイロードに格納したEメッセージを生成するか、E-ECUに伝達すべき情報と、OFFにしたCANフラグとをペイロードに格納したEメッセージを生成する。なお、送信先がC-ECUでないEメッセージのヘッダには、送信されるべき情報のデータタイプに応じて宛先テーブルを用いて定められた宛先MACアドレスが設定される。また、送信先がC-ECUであるEメッセージのヘッダには、上述した特定アドレスを示す宛先MACアドレスが設定される。
【0068】
そして、E-ECU200aは、ステップS7で生成したEメッセージを、送信部230により、ケーブル20aに送信する(ステップS8)。E-ECU200aにより送信されたEメッセージは、HUB100に受信されることになる。
【0069】
なお、E-ECU200b、200cもE-ECU200aと同様の動作を行い得る。
【0070】
[1.7 HUB100の動作]
図12は、HUB100の動作の一例としてのHUB処理を示すフローチャートである。HUB処理は、Eメッセージを受信した場合のEメッセージの転送の処理である。ここで、Eメッセージの転送は、受信したEメッセージと同一のEメッセージの送信、或いは、受信したEメッセージに基づくCANメッセージの送信である。以下、HUB100により実行されるHUB処理について、
図12に即して説明する。
【0071】
HUB100は、ポート1~3のいずれかからEメッセージを受信する(ステップS11)。
【0072】
続いてHUB100は、受信したEメッセージにおけるCANフラグがONか否かを判定する(ステップS12)。CANフラグがONであれば、受信したEメッセージが、第2ネットワークに伝送されるべきCANメッセージの基礎となる第1情報(CANメッセージ情報)を含み、OFFであればそのEメッセージが第1情報を含まないことになる。
【0073】
HUB100は、CANフラグがOFFであれば、転送先選定部120により、MACアドレステーブルを用いて、宛先のE-ECU(宛先MACアドレス)に対応するポートを選定する(ステップS13)。そして、HUB100は、ステップS13で選定したポートから、受信したEメッセージと同一のEメッセージを送出し(ステップS14)、受信したEメッセージに対応する処理を終える。
【0074】
HUB100は、ステップS12でCANフラグがONであると判定した場合には、例えば
図5に示すメッセージ数に基づいて、受信したEメッセージにCANメッセージ情報が複数含まれるか否かを判別し(ステップS15)、複数含まれる場合には個々のCANメッセージ情報に分割する(ステップS16)。
【0075】
HUB100は、ステップS16で分割された各CANメッセージ情報について、或いは、ステップS15でCANメッセージ情報が1つしか含まれないと判別した場合のそのCANメッセージ情報について、そのCANメッセージ情報に基づいてCANメッセージを生成する(ステップS17)。CANメッセージ情報が、例えば、CAN-ID、サイズ及びデータで構成される場合(
図5参照)においては、HUB100は、そのCAN-ID、サイズ及びデータを含ませてCANメッセージ(
図6参照)を生成する。そして、HUB100は、ポート4(CANポート)から、バス30cに生成した各CANメッセージを逐次送出することで、各CANメッセージをCANゲートウェイ400に送信し(ステップS18)、受信したEメッセージに対応する処理を終える。
【0076】
HUB100からバス30cにCANメッセージが送出されるとCANゲートウェイ400は、予め定められた転送ルールに基づいて、そのCANメッセージを、例えばバス30a及びバス30bの両方或いは一方に転送する。CANゲートウェイ400における転送ルールとして、例えば、CAN-ID毎に転送先のバスを規定したルール等が用いられる。
【0077】
[1.8 E-ECUからC-ECUへのメッセージの伝送シーケンス]
図13は、車載ネットワークシステム10におけるメッセージ伝送の例を示すシーケンス図である。以下、同図に即して、第1ネットワークに接続されたECU(E-ECU)から第2ネットワークに接続されたECU(C-ECU)への情報の伝送について説明する。
【0078】
E-ECU200aは、CANメッセージを示すEメッセージとして、例えば互いに異なるCAN-IDを含む3つのCANメッセージ情報を含むEメッセージを、ケーブル20aを介してHUB100に送信する(ステップS101)。
【0079】
そのEメッセージを受信したHUB100は、EメッセージがCANメッセージを示すかをCANフラグ等により判断し(ステップS102)、CANメッセージを示す場合において必要に応じてEメッセージに含まれる連結されたCANメッセージ情報を、3つの個々のCANメッセージ情報に分割する(ステップS103)。
【0080】
そしてHUB100は、3つのCANメッセージ情報のCAN-ID、サイズ及びデータそれぞれに基づいて、3つのCANメッセージを、バス30cに逐次送信する(ステップS104~S106)。これによりCANゲートウェイ400は、3つのCANメッセージを受信し、受信した各CANメッセージにおけるCAN-IDに応じて、転送ルールに基づいて選択したバスにそのCANメッセージを転送する(ステップS107~S109)。
【0081】
[1.9 実施の形態1の効果]
実施の形態1に係る車載ネットワークシステム10では、E-ECU200aが、C-ECUに情報を伝達したい場合に、CANメッセージ情報、CANフラグ等を含ませたEメッセージを送信する。これにより、HUB100は、そのEメッセージで示されたCANメッセージの宛先を適切に選定することができるようになる。なお、CANフラグをEメッセージに含ませて、EメッセージがCANメッセージ情報を含むか否かを示す方式によれば、例えばEメッセージの宛先MACアドレスがブロードキャストアドレスの場合においても、Eメッセージに基づいてCANメッセージをCANバスへ送出すべきか否かを識別可能となる。
【0082】
また、E-ECU200aは、Eメッセージには、複数のCANメッセージの基礎となる複数のCANメッセージ情報を含ませることができる。これにより、情報の伝送効率を高めることができる。
【0083】
(実施の形態2)
以下、実施の形態1で示した車載ネットワークシステム10における車載ネットワークの構成を一部変形した例について説明する。
【0084】
本実施の形態に係る車載ネットワークシステムでは、実施の形態1で示した車載ネットワークシステム10(
図1参照)におけるHUB100とバス30cの間に変換装置を設けて、HUB100を変形している。なお、本実施の形態に係る車載ネットワークシステムにおいて、実施の形態1で示したものと同様の構成要素については、実施の形態1と同じ符号を用い、説明を省略する。また、本実施の形態に係る車載ネットワークシステムは、ここで特に説明しない点については、実施の形態1で示した車載ネットワークシステム10と同様である。
【0085】
[2.1 車載ネットワークの構成]
図14は、本実施の形態に係る車載ネットワークの概略構成を示す。本実施の形態に係る車載ネットワークは、実施の形態1で示した車載ネットワーク(
図2参照)におけるHUB100を、HUB100aに置き換え、変換装置700及びケーブル20dを追加したものである。
【0086】
HUB100aは、CANポートを備えず、Ethernet(登録商標)ケーブルであるケーブル20a~20dを接続する複数のポートを備える。HUB100aは、ケーブル20dで変換装置700と接続され、変換装置700はバス30cでCANゲートウェイ400と接続される。
【0087】
本実施の形態に係る車載ネットワークシステムにおいてE-ECU200a~200cは互いに、各ケーブルをHUB100aで接続して構成される第1ネットワークを介して、通信し得る。また、C-ECU500a~500dは互いに、バス30a、30b、CANゲートウェイ400等で構成される第2ネットワークを介して、通信し得る。また、例えば、E-ECU200aは、ケーブル20a、HUB100a、ケーブル20d、変換装置700、バス30c、CANゲートウェイ400及びバス30aを介して、C-ECU500aと通信し得る。
【0088】
[2.2 HUB100aの構成]
図15は、HUB100aの構成図である。HUB100aは、実施の形態1で示したHUB100を部分的に変形したものであり、ここで特に示さない点はHUB100と同様である。HUB100aは、ポート1~3及びポートAを有する。ポート1~3及びポートAのそれぞれは、第1ネットワークを構成するケーブル20a~20dのそれぞれと接続される。ポートAは、変換装置700に接続されるケーブル20dと接続される。HUB100aは、
図15に示すように、受信部110aと、転送先選定部120aと、送信部130aとを含んで構成され、Eメッセージの転送を行う。これらの各構成要素は、HUB100aにおける通信回路、メモリ、デジタル回路(或いはメモリに格納されたプログラムを実行するプロセッサ)等により実現される。
【0089】
受信部110aは、ポート1~3或いはポートAからEメッセージを受信するE受信部111を含む。
【0090】
転送先選定部120aは、実施の形態1で示した転送先選定部120を部分的に変形したものであり、ここで特に示さない点は転送先選定部120と同様である。転送先選定部120aは、受信部110aにより受信されたEメッセージが、第2ネットワークに伝送されるべきCANメッセージ(データフレーム)の基礎となる第1情報(CANメッセージ情報)を含むか否かを判別し、その判別の結果に基づいて、Eメッセージに基づくフレームを送出するポートを選定する。即ち、転送先選定部120aは、受信部110aで受信されたEメッセージがCANメッセージ情報を含まない場合には、そのEメッセージのヘッダの宛先MACアドレスに基づいて、そのEメッセージと同一内容のEメッセージの送出先として、ポート1~3のいずれかを選定する。転送先選定部120aは、ポートの選定を、MACアドレステーブルを参照して行う。MACアドレステーブルにおいてポートAに係る宛先MACアドレスとしては、例えば、実施の形態1で示した特定アドレスが定められていても良く、変換装置700のMACアドレスが定められていても良い。また、HUB100aが、変換装置700のMACアドレスを学習して、MACアドレステーブルを更新しても良い。MACアドレステーブルのポートAに係る宛先MACアドレスとして変換装置700のMACアドレスが定められていることとした場合においては、例えば、CANメッセージ情報を含ませたEメッセージの送信元のE-ECU200a等は、Eメッセージのヘッダで宛先MACアドレスとして変換装置700のMACアドレスを指定しても良い。この場合においては、転送先選定部120aは、EメッセージがCANメッセージ情報を含むか否かを確認せずにMACアドレステーブルに従ってポートの選定を行うこととしても良い。なお、EメッセージがCANメッセージ情報を含むか否かをペイロードに配置されたCANフラグで判別できる場合には、MACアドレステーブルにポートAの情報を含ませないこととしても良い。転送先選定部120aは、受信部110aで受信されたEメッセージがCANメッセージ情報を含む場合には、Eメッセージの宛先MACアドレスに基づいて判別してもEメッセージ内のCANフラグに基づいて判別しても良いが、その受信されたEメッセージと同一のEメッセージの送出先としてポートA(バス30cに接続される装置に対してケーブル20dで接続されるポート)を選定する。
【0091】
送信部130aは、E受信部111で受信されたEメッセージと同一のEメッセージ(或いは、少なくともペイロードの内容が同一のEメッセージ)を、転送先選定部120aで選定されたポート(ポート1~3或いはポートA)から送信(つまりそのポートに接続されたケーブルに送出)するE送信部131を含む。
【0092】
[2.3 変換装置700の構成]
図16は、変換装置700の構成図である。変換装置700は、例えば、プロセッサ、メモリ等のデジタル回路、アナログ回路、通信回路等で構成される。
【0093】
変換装置700は、EメッセージをCANメッセージに変換する機能を有し、この機能の実現のための機能構成要素として、受信部710と、転送先判定部720と、分割部730と、CAN送信部740とを含む。これらの各機能構成要素は、変換装置700における通信回路、メモリに格納されたプログラムを実行するプロセッサ等により実現される。なお、変換装置700は、CANメッセージをEメッセージに変換する機能を有しても良い。
【0094】
受信部710は、ケーブル20dからEメッセージを受信する。
【0095】
転送先判定部720は、受信部710により受信されたEメッセージが、第2ネットワークに伝送されるべきCANメッセージ(データフレーム)の基礎となる第1情報(CANメッセージ情報)を含むか否かを判別し、その判別の結果に基づいて、Eメッセージに基づくCANメッセージをバス30cに送出すべきか否かを判定する。転送先判定部720は、例えば、受信部710で受信されたEメッセージがCANメッセージ情報を含まない場合には、バス30cにCANメッセージを送出すべきでないと判定し、そのEメッセージを破棄する。転送先判定部720は、受信部710で受信されたEメッセージがCANメッセージ情報を含む場合には、Eメッセージのペイロードの内容を分割部730に通知する。
【0096】
分割部730は、通知されたEメッセージのペイロードの内容として、連結された複数のCANメッセージ情報が含まれる場合(
図5参照)において、例えば
図5のメッセージ数で示される個数の、個々のCANメッセージ情報に分割して、各CANメッセージ情報に応じてCANプロトコルに従った各CANメッセージを生成してCAN送信部740に逐次伝達する機能を有する。この場合の伝達順は、例えば、EメッセージのペイロードにおけるCANメッセージ情報の並び順に従う。また、分割部730は、通知されたEメッセージのペイロードの内容として、1つのCANメッセージ情報が含まれる場合においては、そのCANメッセージ情報に応じてCANプロトコルに従ったCANメッセージを生成してCAN送信部740に伝達する。
【0097】
CAN送信部740は、CANプロトコルに従って、分割部730に伝達された順にCANメッセージを、第2ネットワークを構成するバス30cへ逐次送信する。これによりCANメッセージは、バス30cに接続されたCANゲートウェイ400によって適切なバスへと転送され、C-ECUに受信される。
【0098】
[2.4 実施の形態2の効果]
実施の形態2に係る車載ネットワークシステムでは、E-ECU200aが、C-ECUに情報を伝達したい場合に、CANメッセージ情報、CANフラグ等を含ませたEメッセージを送信する。これにより、HUB100aは、そのCANメッセージ情報を含むEメッセージの送信先を適切に選定することができるようになる。なお、CANフラグをEメッセージに含ませて、EメッセージがCANメッセージ情報を含むか否かを示す方式によれば、例えば、Eメッセージの宛先MACアドレスがブロードキャストアドレスの場合においても、HUB100aで、CANメッセージ情報を含むEメッセージのみを、CANメッセージへの変換機能を有する変換装置700に伝送することが可能になる。なお、変換装置700は、例えば、第1通信プロトコル(例えばEthernet(登録商標)プロトコル)に従って第1種フレーム(例えばEthernet(登録商標)フレーム)の伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコル(例えばCANプロトコル)に従ってバスで第2種フレーム(例えばデータフレームであるCANメッセージ)の伝送が行われる第2ネットワークとの両方に接続され、第1ネットワークから第1種フレームを受信する受信部と、その受信部で受信された第1種フレームが第2ネットワークに伝送されるべき第2種フレームの基礎となる第1情報を含む場合に、その第1種フレームに基づくフレーム(例えばCANメッセージ)を第2ネットワークへ送出する送信部とを備えるように構成されても良い。
【0099】
(実施の形態3)
以下、実施の形態1で示した車載ネットワークシステム10における車載ネットワークの構成を一部変形した、別の例について説明する。
【0100】
本実施の形態に係る車載ネットワークシステムでは、実施の形態1で示した車載ネットワークシステム10(
図1参照)におけるHUB100にCANゲートウェイ400の機能を包含させている。なお、本実施の形態に係る車載ネットワークシステムにおいて、実施の形態1で示したものと同様の構成要素については、実施の形態1と同じ符号を用い、説明を省略する。また、本実施の形態に係る車載ネットワークシステムは、ここで特に説明しない点については、実施の形態1で示した車載ネットワークシステム10と同様である。
【0101】
[3.1 車載ネットワークの構成]
図17は、本実施の形態に係る車載ネットワークの概略構成を示す。本実施の形態に係る車載ネットワークは、実施の形態1で示した車載ネットワーク(
図2参照)におけるCANゲートウェイ400とバス30cとを省き、HUB100を、CANゲートウェイ400と同様の機能を含むHUB100bに置き換えたものである。
【0102】
HUB100bは、E-ECUと接続するためのポート(つまりEthernet(登録商標)ケーブルを接続する端子)を複数備える。また、HUB100bは、1つ又は複数のC-ECUが接続されたバスに接続するためのポート(つまりバスと接続する端子)を複数備える。即ち、HUB100bは、ケーブル20a~20cとバス30a、30bと接続する各ポートを備える。
【0103】
本実施の形態に係る車載ネットワークシステムにおいてE-ECU200a~200cは互いに、各ケーブルをHUB100bで接続して構成される第1ネットワークを介して、通信し得る。また、C-ECU500a~500dは互いに、バス30a、30bで構成される第2ネットワークを介して、通信し得る。また、例えば、E-ECU200aは、ケーブル20a、HUB100b及びバス30aを介して、C-ECU500aと通信し得る。
【0104】
[3.2 HUB100bの構成]
図18は、HUB100bの構成図である。HUB100bは、ポート1~5を有する。ポート1~3のそれぞれは、第1ネットワークを構成するケーブル20a~20cのそれぞれと接続される。ポート4(CANポート1)、ポート5(CANポート2)のそれぞれは、第2ネットワークを構成するバス30a、30bのそれぞれと接続される。なお、HUB100bは、CANポートを3つ以上備えても良いが、説明の便宜上ここでは2つ備える例を示している。HUB100bは、
図18に示すように、受信部110と、転送先選定部120bと、送信部130とを含んで構成される。これらの各構成要素は、HUB100bにおける通信回路、メモリ、デジタル回路(或いはメモリに格納されたプログラムを実行するプロセッサ)等により実現される。
【0105】
受信部110は、ポート1~3からEメッセージを受信するE受信部111と、ポート4、5からCANメッセージを受信するC受信部112とを含む。
【0106】
転送先選定部120bは、受信部110により受信されたEメッセージが、第2ネットワークに伝送されるべきCANメッセージ(データフレーム)の基礎となる第1情報(CANメッセージ情報)を含むか否かを判別し、その判別の結果に基づいて、Eメッセージに基づくフレームを送出するポートを選定する。即ち、転送先選定部120bは、受信部110で受信されたEメッセージがCANメッセージ情報を含まない場合には、そのEメッセージのヘッダの宛先MACアドレスに基づいて、そのEメッセージと同一内容のEメッセージの送出先として、ポート1~3のいずれかを選定する。転送先選定部120bは、ポート1~3の選定を、MACアドレステーブルを参照して行う。
【0107】
転送先選定部120bは、受信部110で受信されたEメッセージがCANメッセージ情報を含む場合には、宛先テーブルに従って、そのCANメッセージ情報に基づくCANメッセージの送出先として、ポート4、5のいずれかを選定する。また、転送先選定部120bは、受信部110でCANメッセージが受信された場合には、宛先テーブルに従って、そのCANメッセージの転送先としてポート4、5のいずれかを選定する。
図19は、HUB100bが用いる宛先テーブルの一例を示す。同図の例では、宛先テーブルは、受信されたフレームの送信元と、そのフレームがCANメッセージである場合におけるCAN-IDと、フレームの宛先とを対応付けたテーブルである。受信されたフレームの送信元は、そのフレームがEメッセージであれば送信元MACアドレスを示し、そのフレームがCANメッセージであればそのフレームを受信したCANポート(CANポート1又はCANポート2)を示す。
図19の例によれば、転送先選定部120bは、MACアドレス1を有するE-ECUからCAN-ID「0x123」のCANメッセージ情報を含むEメッセージを受信した場合にはCANポート2を、そのCANメッセージ情報に基づくCANメッセージの送出先として選定する。また、転送先選定部120bは、MACアドレス2を有するE-ECUからCANメッセージ情報を含むEメッセージを受信した場合にはCANポート1及びCANポート2の両方を、そのCANメッセージ情報に基づくCANメッセージの送出先として選定する。また、転送先選定部120bは、CANポート1から、CAN-ID「0x345」或いはCAN-ID「0x456」のCANメッセージを受信した場合には、CANポート2をそのCANメッセージの転送先として選定する。
【0108】
送信部130は、E送信部131と、C送信部132と、結合部133と、分割部134とを含む。C送信部132は、転送先選定部120bによりポート4(CANポート1)及びポート5(CANポート2)の一方又は両方が選定された場合に、その選定されたポートに、受信されたEメッセージのCANメッセージ情報に基づくCANメッセージ或いは受信されたCANメッセージを、送信する。
【0109】
なお、HUB100bは、C受信部112で受信したCANメッセージに基づいてEメッセージを生成してポート1~3のいずれかから送信する機能を有しても良い。
【0110】
[3.3 実施の形態3の効果]
実施の形態3に係る車載ネットワークシステム10では、E-ECU200aが、C-ECUに情報を伝達したい場合に、CANメッセージ情報、CANフラグ等を含ませたEメッセージを送信する。これにより、HUB100bは、そのEメッセージで示されたCANメッセージの宛先を適切に選定することができるようになる。
【0111】
また、実施の形態3に係るHUB100bは、CANバス間でのCANメッセージの転送機能を有するので、車載ネットワークを構成する装置数を削減できる。なお、車両に搭載する装置数の削減により、コストの削減、故障発生率の抑制等の効果が生じる。また、HUB100bは、CANメッセージ情報に含まれるCAN-ID等により、CANメッセージが送出されるべきCANバスを選定する。これにより、E-ECU200aが、情報を伝達したいC-ECUに応じたCAN-IDをEメッセージに含ませることで、その情報の伝達が実現されるようになる。
【0112】
(実施の形態4)
以下、実施の形態1で示した車載ネットワークシステム10において、E-ECU(E-ECU200a等)及びHUB100を部分的に変形した例について説明する。実施の形態1では、E-ECU200aが、CANメッセージ情報を含むEメッセージを送信する場合に、例えば
図5のように、Eメッセージに複数のCANメッセージ情報を含ませ得る例を示した。これに対して、本実施の形態では、E-ECU200aが、EメッセージにCANメッセージ情報を含ませる場合に、
図4のように、Eメッセージのペイロードに1つのCANメッセージ情報のみを含ませる。なお、E-ECU200b、200cについてもE-ECU200aと同様である。
【0113】
本実施の形態に係る車載ネットワークシステムでは、実施の形態1で示した車載ネットワークシステム10(
図1参照)におけるHUB100の代わりに、HUB100を部分的に変形したHUB100c(後述)を用いる。なお、本実施の形態に係る車載ネットワークシステムにおいて、実施の形態1で示したものと同様の構成要素については、実施の形態1と同じ符号を用い、説明を省略する。また、本実施の形態に係る車載ネットワークシステムは、ここで特に説明しない点については、実施の形態1で示した車載ネットワークシステム10と同様である。
【0114】
[4.1 HUB100cの構成]
図20は、HUB100cの構成図である。HUB100cは、実施の形態1で示したHUB100の送信部130を、送信部130bに置き換えたものである。HUB100cは、
図20に示すように、受信部110と、転送先選定部120と、送信部130bとを含んで構成される。これらの各構成要素は、HUB100cにおける通信回路、メモリ、デジタル回路(或いはメモリに格納されたプログラムを実行するプロセッサ)等により実現される。
【0115】
送信部130bは、E送信部131と、C送信部132とを含む。E送信部131は、ポート1~3からEメッセージを送信する機能を有し、C送信部132は、ポート4からCANプロトコルに従ってCANメッセージを送信する機能を有する。具体的には、C送信部132は、例えば受信部110で受信されたEメッセージについての転送先選定部120で選定されたポートがポート4(CANポート)である場合に、その受信されたEメッセージに含まれるCANメッセージ情報に基づいてCANメッセージを生成して、そのCANメッセージをポート4からバス30cへと送出する。
【0116】
なお、HUB100cは、C受信部112で受信したCANメッセージに基づいてEメッセージを生成してポート1~3のいずれかから送信する機能を有しても良い。
【0117】
[4.2 E-ECUの動作]
図21は、本実施の形態に係るE-ECUの動作の一例としてのE-ECU処理を示すフローチャートである。以下、E-ECU200aにより実行されるE-ECU処理について、
図21に即して説明する。なお、本実施の形態に係るE-ECU処理において、実施の形態1で示した処理ステップ(
図11参照)と同じものは、
図21で
図11と同じ符号を付しており、ここでの説明を適宜省略する。
【0118】
E-ECU200aは、受信部210により外部情報を受信し(ステップS1)、データ処理部221で他のECUに対して送信すべき各種情報の生成等を行う(ステップS2)。E-ECU200aは、送信先判定部222で、データ処理部221が生成した情報毎について、その情報のデータタイプに応じて、宛先テーブルを用いてその情報の送信先がC-ECUか否かを判定し(ステップS3)、送信先がC-ECUである場合には、その情報のデータタイプに応じてCAN-IDを定め、CANメッセージ構築部224で、CAN-IDと、データ処理部221が生成した情報を示すデータと、そのデータのサイズとを示すCANメッセージ情報を生成する(ステップS4)。
【0119】
E-ECU200aは、ステップS3で送信先がC-ECUであると判定した場合において、ステップS4で生成された1つのCANメッセージ情報をペイロードに含むEメッセージを、メッセージ構築部223により構築する(ステップS7)。また、ステップS7ではE-ECU200aは、ステップS3で送信先がC-ECUでないと判定した場合において、データ処理部221が生成した情報を示すデータをペイロードに含むEメッセージを、メッセージ構築部223により構築する。
【0120】
そして、E-ECU200aは、ステップS7で生成したEメッセージを、送信部230により、ケーブル20aに送信する(ステップS8)。E-ECU200aにより送信されたEメッセージは、HUB100cに受信されることになる。
【0121】
なお、E-ECU200b、200cもE-ECU200aと同様の動作を行い得る。
【0122】
[4.3 HUB100cの動作]
図22は、HUB100cの動作の一例としてのHUB処理を示すフローチャートである。以下、HUB100cにより実行されるHUB処理について、
図22に即して説明する。なお、本実施の形態に係るHUB処理において、実施の形態1で示した処理ステップ(
図12参照)と同じものは、
図22で
図12と同じ符号を付しており、ここでの説明を適宜省略する。
【0123】
HUB100cは、ポート1~3のいずれかからEメッセージを受信し(ステップS11)、そのEメッセージにCANメッセージ情報が含まれるか否かを判定する(ステップS12a)。この判定は、例えばCANフラグがONか否かに基づいて行うこととしても良いし、例えばEメッセージのヘッダの宛先MACアドレスが実施の形態1で示した特定アドレスであるか否か等によって行うこととしても良い。
【0124】
HUB100cは、ステップS12aで、受信したEメッセージにCANメッセージ情報が含まれないと判定した場合には、転送先選定部120により、MACアドレステーブルを用いて、宛先のE-ECUに対応するポートを選定し(ステップS13)、選定したポートから、受信したEメッセージと同一のEメッセージを送出し(ステップS14)、受信したEメッセージに対応する処理を終える。
【0125】
HUB100cは、ステップS12aで、受信したEメッセージにCANメッセージ情報が含まれると判定した場合には、受信したEメッセージに含まれるCANメッセージ情報に基づいてCANメッセージを生成する(ステップS17)。CANメッセージ情報が、例えば、CAN-ID、サイズ及びデータで構成される場合(
図4参照)においては、HUB100cは、そのCAN-ID、サイズ及びデータを含ませてCANメッセージ(
図6参照)を生成する。そして、HUB100cは、ポート4(CANポート)から、バス30cに生成したCANメッセージを送出することで、CANメッセージをCANゲートウェイ400に送信し(ステップS18)、受信したEメッセージに対応する処理を終える。HUB100cからバス30cにCANメッセージが送出されるとCANゲートウェイ400は、予め定められた転送ルールに基づいて、そのCANメッセージを、例えばバス30a及びバス30bの両方或いは一方に転送する。
【0126】
[4.4 実施の形態4の効果]
実施の形態4に係る車載ネットワークシステム10では、E-ECU200aが、C-ECUに情報を伝達したい場合に、CANメッセージ情報、CANフラグ等を含ませたEメッセージを送信する。これにより、HUB100cは、そのEメッセージで示されたCANメッセージの宛先を適切に選定することができるようになる。なお、E-ECU200aが、1つのCANメッセージ用のCANメッセージ情報をEメッセージに含ませることで、HUB100cでは、受信したEメッセージのペイロードの内容の分割等の処理負担を負わなくなる。
【0127】
(実施の形態5)
以下、実施の形態1で示したE-ECU200a、HUB100の変形例について説明する。
【0128】
実施の形態1でE-ECU200aの生成部220における送信先判定部222が、
図8の宛先テーブルで情報の宛先となるECUがC-ECUであると判定した場合に、予め定められた特定アドレスを宛先MACアドレスとして、メッセージ構築部224に通知することとした。実施の形態1では、特定アドレスとして、ブロードキャストアドレス、マルチキャストアドレス等を例示したが、本実施の形態では、その特定アドレスとしてローカルMACアドレスを用いる例を示す。ローカルMACアドレスは、MACアドレスにおけるグローバルMACアドレスか否かを識別するビットの値を、グローバルMACアドレスでない値にしたものである。
【0129】
例えば、E-ECU200aは、
図23に示すような、宛先テーブルを用いることとしても良い。
図23の宛先テーブルでは、データタイプ毎に、宛先MACアドレスを対応付けており、その宛先MACアドレスとして、「02:aa:bb:cc:01:23」、「02:aa:bb:cc:02:34」等といったローカルMACアドレスが含まれている。この例において、ローカルMACアドレスが対応付けられたデータタイプは、C-ECUに送信されるべき情報である。
【0130】
E-ECU200aの生成部220は、第1情報(CANメッセージ情報)を含ませてEメッセージを生成する場合において、そのEメッセージのヘッダにおける宛先MACアドレスとして、Eメッセージが第2ネットワークに伝送されるべき第1情報を含むことを表す第2情報を示すように定められた特定値(特定アドレス等)を含ませる。この特定値は、実施の形態1で示した特定アドレスであっても良いし、MACアドレスにおけるグローバルMACアドレスか否かを識別するビットの値を、グローバルMACアドレスでない値にしたデータ値(ローカルMACアドレス)であっても良い。また、このデータ値(ローカルMACアドレス)で例えばCAN-ID等といったCANメッセージの一部を表す第3情報を含ませるようにして、Eメッセージのペイロードに含ませるCANメッセージ情報の内容を削減しても良い。例えば、生成部220では、Eメッセージの宛先MACアドレスとしてCAN-IDを表すデータ値を設定し、ペイロードに、サイズ及びデータを含みCAN-IDを含まないようにしたCANメッセージ情報を設定しても良い。
【0131】
また、HUB100は、受信したEメッセージにCANメッセージ情報が含まれるか否かを、CANフラグがONか否かで判断するのではなく、Eメッセージのヘッダの宛先MACアドレスに、上述のような特定値(例えばローカルMACアドレス等)が設定されているか否かにより判断しても良い。これにより、Eメッセージのヘッダの参照だけで、ペイロードに第2ネットワークに伝送されるべき情報を含んでいるか否かが判別でき、例えば、Eメッセージのペイロードを暗号化しているような場合においては、処理の簡略化(復号の省略等)が可能となり得る。また、HUB100は、Eメッセージのヘッダの宛先MACアドレスに設定されている特定値(例えばローカルMACアドレス等)に基づいて、
図24に示す対応テーブルを用いてCAN-IDを特定しても良い。
図24は、MACアドレスとCAN-IDとを対応付けた対応テーブルを示す。
【0132】
図25は、本実施の形態に係る、変形したHUB100の動作の一例としてのHUB処理を示すフローチャートである。以下、同図に即して、変形したHUB100によるHUB処理について説明する。なお、本実施の形態に係るHUB処理において、実施の形態1で示した処理ステップ(
図12参照)と同じものは、
図25で
図12と同じ符号を付しており、ここでの説明を適宜省略する。また、前提としてE-ECU200aの生成部220では、Eメッセージの宛先MACアドレスとしてCAN-IDに対応したデータ値(ローカルMACアドレス)を設定し、ペイロードに、サイズ及びデータを含みCAN-IDを含まないようにした1つのCANメッセージ情報を設定しているものとして説明する。
【0133】
変形したHUB100は、ポート1~3のいずれかからEメッセージを受信し(ステップS11)、そのEメッセージにCANメッセージ情報が含まれるか否かを、ヘッダの宛先MACアドレスが、特定値であるか判定する(ステップS12b)。この判定は、例えば宛先MACアドレスが、上述の特定アドレスであるか否かに基づいて判定しても良いし、宛先MACアドレスのグローバルMACアドレスか否かを識別するビットの値のみに基づいて判定しても良い。
【0134】
変形したHUB100は、ステップS12bで、受信したEメッセージにCANメッセージ情報が含まれないと判定した場合(ヘッダの宛先MACアドレスが特定値でないと判定した場合)には、転送先選定部120により、MACアドレステーブルを用いて、宛先のE-ECUに対応するポートを選定し(ステップS13)、選定したポートから、受信したEメッセージと同一のEメッセージを送出し(ステップS14)、受信したEメッセージに対応する処理を終える。
【0135】
変形したHUB100は、ステップS12bで、受信したEメッセージにCANメッセージ情報が含まれると判定した場合(ヘッダの宛先MACアドレスが特定値であると判定した場合)には、対応テーブル(
図24参照)に基づいて、その宛先MACアドレスからCAN-IDを求める(ステップS21)。なお、特定値である宛先MACアドレスからCAN-IDを求める方法は、いかなる方法であっても良い。そのCAN-IDを求める方法は、対応テーブルを用いる方法の他に、例えば、Eメッセージの送信元のE-ECU200aにおいて、宛先MACアドレスの一部にCAN-IDが含まれるようにした特定値を設定し、変形したHUB100でその宛先MACアドレスからCAN-IDを抜き出す方法であっても良い。また、E-ECU200aで、CAN-IDに対する所定演算の結果としての特定値を宛先MACアドレスとして設定したEメッセージを送信し、変形したHUB100で、その所定演算に呼応する演算によって宛先MACアドレスからCAN-IDを算出する方法であっても良い。
【0136】
続いて、変形したHUB100は、ステップS21で求めたCAN-IDと、受信したEメッセージのペイロードにおけるCANメッセージ情報としてのサイズ及びデータとに基づいて、CANメッセージを生成する(ステップS17a)。そして、変形したHUB100は、ポート4(CANポート)から、バス30cに生成したCANメッセージを送出することで、CANメッセージをCANゲートウェイ400に送信し(ステップS18)、受信したEメッセージに対応する処理を終える。
【0137】
このように、変形したHUB100の送信部130では、受信部110で受信されたEメッセージにおける第1情報(CANメッセージ情報)を含むCANメッセージのバス30cへの送出を、そのEメッセージ内のヘッダにおける宛先MACアドレスの値に基づいて特定されるCAN-IDをCANメッセージのIDフィールドに入れて、そのCANメッセージ情報が示すデータ(データフィールドの値)をそのCANメッセージのデータフィールドに入れて、生成されたそのCANメッセージをバス30cに送出することで、行う。
【0138】
(他の実施の形態)
以上のように、本発明に係る技術の例示として実施の形態1~5を説明した。しかしながら、本発明に係る技術は、これに限定されず、適宜、変更、置き換え、付加、省略等を行った実施の形態にも適用可能である。例えば、以下のような変形例も本発明の一実施態様に含まれる。
【0139】
(1)上記実施の形態では、E-ECU200aが、Eメッセージのペイロードに、CANフラグと、CAN-ID、サイズ及びデータで構成される第1情報(CANメッセージ情報)を配置することとしたが(
図4、
図5参照)、そのペイロードに、
図26に示すように、CANフラグと、CANメッセージにおけるデータフィールドの内容であるデータ(ここでは個別データとも称する)の集合としての第1情報(CANメッセージ情報)とを配置することとしても良い。第1情報がペイロードに含まれている場合においてCANフラグは、例えばONにされて、第1情報が含まれていることを示す第2情報として利用される。この場合において、HUB100は、受信したEメッセージのペイロードにおける個別データの集合から、
図27に例示する対応テーブルを用いて、個々のCANメッセージの内容を特定して、CANメッセージを送信し得る。
図27の例は、CAN-ID「0x123」のCANメッセージのデータ(データフィールドの内容)となる個別データが、Eメッセージのペイロードの2バイト目から2バイト分のサイズで配置されていることを示す。また、CAN-ID「0x234」のCANメッセージのデータ(データフィールドの内容)となる個別データが、Eメッセージのペイロードの1バイト目から1バイト分のサイズで配置されていることを示す。詳細には、この場合にHUB100の送信部130は、CANメッセージのバス30cへの送出を、HUB100が受信したEメッセージに含まれる個別データの集合の各々について、その個別データのペイロードでの配置に基づいて特定されるCAN-IDをCANメッセージのIDフィールドに入れて、その個別データの値をそのCANメッセージのデータフィールドに入れて生成されたそのCANメッセージをバス30cに送出することで、行う。このため、E-ECU200aは、HUB100と同様の対応テーブルに従って、個別データをEメッセージのペイロード内に配置して送信することで、C-ECUに個別データを伝達できるようになる。なお、
図27に例示した対応テーブルにおいて、各個別データが有効か否かを示すフラグを設け、HUB100は、有効な個別データのみを抽出して送信することとしても良い。また、E-ECU200aは、HUB100と同様の対応テーブルを有さずに、情報をE-ECUに対して送信する場合とC-ECUに対して送信する場合とで同様の様式でペイロードを構成したEメッセージを送信することとしても良い。この場合には、HUB100が用いる対応テーブル(
図27参照)が、E-ECU200aがC-ECUに対して送信するEメッセージのデータ構成に対応して予め適切に定められていると良い。
【0140】
(2)上記実施の形態1で示した車載ネットワークシステム10は、HUB100の他に、上記実施の形態2で示したHUB100aを1つ又は複数含むようにしても良い。
図28は、E-ECU200aとHUB100との間にHUB100aが配置された車載ネットワークの一例を示す。この車載ネットワークにおいては、E-ECU200aが送信した、CANメッセージ情報を含むEメッセージは、第1ネットワークにおいてHUB100aを経由して、HUB100に到達する。この場合にHUB100aにおいては、HUB100を実施の形態2で示した変換装置700と同様に扱う。そして、HUB100は、受信したEメッセージのCANメッセージ情報に基づいてCANメッセージを生成し、第2ネットワークを構成するCANバス30cに送信する。これにより、CANメッセージが、例えばCANゲートウェイ400を経由してC-ECUに到達する。
【0141】
(3)上記実施の形態では、車載ネットワークシステムを示したが、上述したECU(E-ECU及びC-ECU)、HUB、変換装置等といった各装置は、ロボット、産業機器等の各種ネットワーク通信システムに利用され得る。
【0142】
(4)上記実施の形態では、車載ネットワークが第1ネットワーク及び第2ネットワークを含み、第1ネットワークは、Ethenet(登録商標)プロトコルに従ってEメッセージ(Ethernet(登録商標)フレーム)の伝送が行われるものとし、第2ネットワークは、CANバスでCANプロトコルに従ってCANバスでCANメッセージ(データフレーム)の伝送が行われるものとした。このCANプロトコルは、オートメーションシステム内の組み込みシステム等に用いられるCANOpen、或いは、TTCAN(Time-Triggered CAN)、CANFD(CAN with Flexible Data Rate)等の派生的なプロトコルを包含する広義の意味のものと扱われることとしても良い。また、CANプロトコルにおけるデータフレームは、標準IDフォーマットの他、拡張IDフォーマットであっても良い。拡張IDフォーマットの場合には、標準IDフォーマットにおけるIDフィールドのベースIDと、拡張IDとを合わせた29ビットを上述の実施の形態におけるCAN-IDと扱えば良い。また、Ethernet(登録商標)フレームは、例えばEthernet(登録商標)バージョン2のフレームであっても良いし、IEEE802.3で規定されたフレームであっても良い。また、Ethernet(登録商標)プロトコルは、IEEE802.1に係るEthernet(登録商標)AVB(Audio Video Bridging)、或いは、IEEE802.1に係るEthernet(登録商標)TSN(Time Sensitive Networking)、Ethernet(登録商標)/IP(Industrial Protocol)、EtherCAT(登録商標)(Ethernet(登録商標) for Control Automation Technology)等の派生的なプロトコルを包含する広義の意味のものと扱われることとしても良い。また、第1ネットワークは、第1通信プロトコルに従って第1種フレーム(例えばEメッセージ等)の伝送が行われるものであり、第2ネットワークは、第1通信プロトコルとは異なる第2通信プロトコルに従ってバスで第2種フレーム(例えばCANメッセージ等)の伝送が行われるものであることとしても良い。この場合において、第1通信プロトコルは、例えばEthernet(登録商標)プロトコルであるが、Ethernet(登録商標)プロトコルに限られず、例えばブローダーリーチプロトコルであっても良い。また、第2通信プロトコルは、例えばCANプロトコルであるが、CANプロトコルに限られず、例えばLIN(Local Interconnect Network)、MOST(登録商標)(Media Oriented Systems Transport)、FlexRay(登録商標)等であっても良い。なお、上記実施の形態で示したEthernet(登録商標)は、CANに対して通信速度が速い。この点で、第1通信プロトコルは、第2通信プロトコルに対して通信速度が速い各種プロトコルであることとしても良い。また、上記実施の形態では、第1種フレーム(例えばEメッセージ)が、その第1種フレームのペイロードに、第2ネットワークに伝送されるべき第2種フレーム(例えばCANメッセージ)の基礎となる第1情報(例えばCANメッセージ情報)を含むか否かを判別するための識別フラグ(例えばCANフラグ)を有することとしたが、その識別フラグは、第1種フレームのヘッダに含まれることとしても良い。例えば、E-ECU200aは、CANフラグを、Eメッセージのヘッダ内に含ませることとしても良い。これにより、Eメッセージのヘッダの参照だけで、ペイロードに第2ネットワークに伝送されるべき情報を含んでいるか否かが判別でき、例えば、Eメッセージのペイロードを暗号化しているような場合においては、処理の簡略化(復号の省略等)が可能となり得る。例えば、Eメッセージのヘッダ内の宛先MACアドレスにおけるグローバルMACアドレスか否かを識別するビットをCANフラグとして用いても良い。また、例えば、Eメッセージのヘッダ内のタイプのフィールドにCANフラグを設けることとしても良い。また、例えば、E-ECU200aは、CANフラグを、Eメッセージのヘッダ内とペイロード内との両方に含ませることとしても良い。
【0143】
(5)上記実施の形態3では、HUB100bが、受信したEメッセージにCANメッセージ情報が含まれる場合に、宛先テーブル(
図19参照)により、Eメッセージに含まれる送信元MACアドレスと、EメッセージにおけるCANメッセージ情報に含まれるCAN-IDとに応じて、CANメッセージを送信するCANポートを選定する例を示した。この他に、Eメッセージにおける送信元MACアドレスと宛先MACアドレスから、CANメッセージを送信するCANポートを選定しても良いし、宛先MACアドレスとCAN-IDから、CANメッセージを送信するCANポートを選定しても良い。また、HUB100bは、CANポートからCANメッセージを受信した場合には、受信したCANポートとCANメッセージに含まれるCAN-IDから、そのCANメッセージの転送先として、ポート1~5のいずれかを選定しても良い。この場合に、HUB100bはポート1~3を選定すれば、CANメッセージの内容をEメッセージに含ませて送信する。
【0144】
(6)上記実施の形態では、E-ECU200aが、CANメッセージ情報を含むEメッセージを送信する機能と、CANメッセージ情報を含まないEメッセージを送信する機能とを有する例を示したが、E-ECU200aは、CANメッセージ情報を含まないEメッセージを送信する機能を有さなくても良い。
【0145】
(7)上記実施の形態で示したHUB(HUB100等)は、スイッチ(スイッチングハブ)であることとしたが、スイッチの機能を有さなくても良い。即ち、HUBは、Eメッセージの宛先MACアドレスを区別せずに、例えばCANフラグがONにされていないEメッセージを1つのポートから受信した場合に、そのEメッセージを、そのポート以外の全てのEthernet(登録商標)ケーブルが接続されるポートに転送することとしても良い。これにより、HUBは、例えば、MACアドレステーブルを保持する必要がなくなり、メモリの削減が可能となる。
【0146】
(8)上記実施の形態では、E-ECUにより送信されるEメッセージに含まれるCANメッセージ情報が、CAN-ID、サイズ及びデータで構成される例を示したが、CANメッセージ情報は、CANメッセージの生成の基礎となる情報を含むものであれば、いかなる要素で構成されても良い。例えば、CANメッセージ情報は、ISO11898-1で規定されているCANメッセージのフォーマットに従った要素群(
図6に示すSOF、CAN-ID、RTR、IDE、r、サイズ、データ、・・・、EOF)で構成されても良い。E-ECUが、CANメッセージ情報を、CANメッセージのフォーマットに従って構成してEメッセージに含ませて送信することで、HUB或いは変換装置における、Eメッセージに基づいてCANメッセージをCANバスに送信する際の処理負担が、軽減され得る。また、CANメッセージ情報は、例えば、CANメッセージのデータ(データフィールドの内容)を示す情報で構成されても良い。
【0147】
(9)上記実施の形態では、HUB100等が、受信したEメッセージのペイロードに含まれる複数のCANメッセージ情報の並び順に、そのCANメッセージ情報に応じたCANメッセージを送信する例を示したが、CANメッセージの送信順はこれに限られない。例えば、HUB100等は、複数のCANメッセージ情報を含むEメッセージを受信した際に、そのCANメッセージ情報に基づいて、CAN-IDの小さい順にCANメッセージを送信しても良いし、CAN-ID毎に予め定めた優先順位に基づく送信順でCANメッセージを送信しても良い。また、HUB100等は、周期的に送信する必要があるCANメッセージに関しては、周期的な次の送信時期まで待ってから送信することとしても良い。HUB100等がCANメッセージの送信順を定める場合には、E-ECU200a等は、複数のCANメッセージ情報を含むEメッセージを送信するときにおいてCANメッセージの送信順を考慮した処理を行う必要がなくなる。
【0148】
(10)上記実施の形態で示した各種処理の手順(例えば
図11、
図12、
図21、
図22、
図25に示した所定手順等)の実行順序は、必ずしも、上述した通りの順序に制限されるものではなく、発明の要旨を逸脱しない範囲で、実行順序を入れ替えたり、複数の手順を並列に行ったり、その手順の一部を省略したりすることができる。
【0149】
(11)上記実施の形態におけるECU、HUB、変換装置等の装置は、ハードディスク装置、ディスプレイ、キーボード、マウス等の他のハードウェア構成要素を含んでいても良い。また、メモリに記憶されたプログラムがプロセッサにより実行されてソフトウェア的にその装置の機能を実現するものであっても良いし、専用のハードウェア(デジタル回路等)によりその機能を実現するものであっても良い。また、その装置内の各構成要素の機能分担は変更可能である。
【0150】
(12)上記実施の形態における各装置を構成する構成要素の一部又は全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしても良い。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAM等を含んで構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記録されている。前記マイクロプロセッサが、前記コンピュータプログラムに従って動作することにより、システムLSIは、その機能を達成する。また、上記各装置を構成する構成要素の各部は、個別に1チップ化されていても良いし、一部又は全部を含むように1チップ化されても良い。また、ここでは、システムLSIとしたが、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現しても良い。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適用等が可能性としてあり得る。
【0151】
(13)上記各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なICカード又は単体のモジュールから構成されているとしても良い。前記ICカード又は前記モジュールは、マイクロプロセッサ、ROM、RAM等から構成されるコンピュータシステムである。前記ICカード又は前記モジュールは、上記の超多機能LSIを含むとしても良い。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、前記ICカード又は前記モジュールは、その機能を達成する。このICカード又はこのモジュールは、耐タンパ性を有するとしても良い。
【0152】
(14)本発明の一態様としては、例えば
図11、
図21等に示す処理手順の全部又は一部を含むフレーム生成方法であるとしても良いし、例えば
図12、
図22、
図25等に示す処理手順の全部又は一部を含む転送方法であるとしても良い。例えば、フレーム生成方法は、第1通信プロトコル(例えばEthernet(登録商標)プロトコル)に従って第1種フレームの伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコル(例えばCANプロトコル)に従ってバスで第2種フレームの伝送が行われる第2ネットワークとを含むネットワークシステムにおいて第1ネットワークに接続されるECUが、送信するフレームを生成するフレーム生成方法であって、第2ネットワークに伝送されるべき第2種フレームの基礎となる第1情報と、第1種フレームが第2ネットワークに伝送されるべき情報を含むことを表す第2情報とを、当該第1種フレームに含ませるように、第1通信プロトコルに従って当該第1種フレームを生成する方法である。また、例えば、転送方法は、第1通信プロトコルに従って第1種フレームの伝送が行われる第1ネットワークと、第1通信プロトコルとは異なる第2通信プロトコルに従ってバスで第2種フレームの伝送が行われる第2ネットワークとを含むネットワークシステムにおけるネットワークハブで用いられる転送方法であって、第1種フレームを受信する受信ステップと、受信ステップで受信された第1種フレームが第2ネットワークに伝送されるべき第2種フレームの基礎となる第1情報を含むか否かを判別し、当該判別の結果に基づいて当該第1種フレームに基づくフレームを送出するポートを選定する転送先選定ステップと、受信ステップで受信された第1種フレームについての転送先選定ステップで選定されたポートに接続される有線伝送路に、当該第1種フレームに基づくフレームを送出する送信ステップとを含む方法である。また、この方法をコンピュータにより実現するプログラム(コンピュータプログラム)であるとしても良いし、前記コンピュータプログラムからなるデジタル信号であるとしても良い。例えば、フレーム生成方法に係る生成ステップ(第1通信プロトコルに従って第1種フレームを生成するステップ)と、送信ステップ(生成ステップで生成された第1種フレームを第1ネットワークに送信するステップ)とを含み、生成ステップでは、第2ネットワークに伝送されるべき第2種フレームの基礎となる第1情報と、第1種フレームが第2ネットワークに伝送されるべき情報を含むことを表す第2情報とを、当該第1種フレームに含ませて、当該第1種フレームの生成を行う所定情報処理を実行するためのプログラムであることとしても良い。また、本発明の一態様としては、前記コンピュータプログラム又は前記デジタル信号をコンピュータで読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BD(Blu-ray(登録商標) Disc)、半導体メモリ等に記録したものとしても良い。また、これらの記録媒体に記録されている前記デジタル信号であるとしても良い。また、本発明の一態様としては、前記コンピュータプログラム又は前記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしても良い。また、本発明の一態様としては、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記録しており、前記マイクロプロセッサは、前記コンピュータプログラムに従って動作するとしても良い。また、前記プログラム若しくは前記デジタル信号を前記記録媒体に記録して移送することにより、又は、前記プログラム若しくは前記デジタル信号を、前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしても良い。
【0153】
(15)上記実施の形態及び上記変形例で示した各構成要素及び機能を任意に組み合わせることで実現される形態も本発明の範囲に含まれる。
【産業上の利用可能性】
【0154】
本発明は、ECUが、Ethernet(登録商標)等の第1ネットワークを介して、CAN等の第2ネットワークのバスに接続された他のECUに対して、情報を伝達するために利用可能である。
【符号の説明】
【0155】
10 車載ネットワークシステム
20a~20d ケーブル
30a~30c バス(CANバス)
90 サーバ
91 外部ネットワーク
100、100a、100b、100c ネットワークハブ(HUB)
110、110a、210、710 受信部
111、211 E受信部
112 C受信部
120、120a、120b 転送先選定部
130、130a、130b、230、740 送信部
131 E送信部
132 C送信部
133 結合部
134、730 分割部
200a~200c 電子制御ユニット(E-ECU)
212 データ受信部
220 生成部
221 データ処理部
222 送信先判定部
223 メッセージ構築部
224 CANメッセージ構築部
300a 通信モジュール
300b リアカメラ
300c レーダ
400 CANゲートウェイ
500a~500d 電子制御ユニット(C-ECU)
600a エンジン
600b ブレーキ
600c ドア開閉センサ
600d ウィンドウ開閉センサ
700 変換装置
720 転送先判定部