(57)【要約】【課題】車両が走行中であれ、ネットワーク接続されている演算装置の書き換え可能なプログラムを書き換えることのできる車載ネットワーク装置を提供する。【解決手段】車載ネットワーク装置には、車両の上層ネットワーク１０に、各マネージャー１１〜１４を介して、プログラムの書き換え可能なメモリーを有する各ＥＣＵが接続される複数の下層ネットワーク２１〜２４がそれぞれ接続されている。下層ネットワーク２１〜２４は、車両の各異なる制御対象毎に設けられる。マネージャー１１にはＥＣＵ１１１，１１２の書き換え用プログラムを記憶しておくリプロデータ記憶部３２１と、ＥＣＵ１１１，１１２が出力する信号に対する代替信号を記憶しておく代替信号記憶部３２２と、ＥＣＵ１１１，１１２に書き換え用プログラムを転送するとともに代替信号を代替信号記憶部３２２から取得して上層ネットワーク１０に送信する演算部３１とが設けられている。【選択図】図１
2011040912.tif 000002
【特許請求の範囲】
【請求項１】
車両の上層ネットワークに、マネージャー装置を介して、プログラムの書き換え可能なメモリーを有する演算装置が接続される複数の下層ネットワークがそれぞれ接続されてなる車載ネットワーク装置であって、
前記下層ネットワークは、車両の各異なる制御対象毎に設けられており、
前記マネージャー装置には、
前記接続される下層ネットワークの演算装置の書き換え可能なメモリーに書き換えられるプログラムを予め記憶しておくデータ記憶部と、
前記下層ネットワークの演算装置が出力する上層ネットワークからの通信信号への応答信号に代替する信号を予め記憶しておく代替信号記憶部と、
前記演算装置のプログラムを書き換えるとき、該当する下層ネットワークに前記データ記憶部から取得した書き換え用プログラムを転送するとともに、前記上層ネットワークからの通信信号への応答として代替する信号を前記代替信号記憶部から取得して前記上層ネットワークに送信する演算部とが設けられている
ことを特徴とするネットワーク装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両、特に自動車に搭載されるネットワークにプログラムの書き換え可能な演算装置が複数接続されてなる車載ネットワーク装置に関する。
【背景技術】
【０００２】
周知のように、車両には複数の演算装置が設けられており、それら演算装置は車載ネットワークによる通信を介して相互に必要な情報の取得を行なうようになっている。近年、それら演算装置は、そこで実行されるプログラムを書き換え可能なメモリーに保持するようにしてバージョンアップなどによる書き換えを可能にするとともに、そのような書き換えが車載ネットワークを介して行なわれるようにもしている。
【０００３】
このようにネットワーク接続された演算装置に保持されたプログラムを、ネットワーク通信を介して書き換える技術の一例が特許文献１に記載されている。特許文献１に記載の車載ネットワーク装置は、実行するプログラムなどを書き換え可能なメモリー（ＥＥＰＲＯＭ）に保持している各種演算装置（制御装置）がネットワークを介して接続されている。そして、ネットワークに接続されている無線用の通信制御装置は、受信した書き換え用のプログラムが車載ネットワーク装置宛で有る場合には一旦保存して、車両の停車中にネットワークを介して各演算装置の書き換え可能なメモリーの内容をそのプログラムに書き換える。これにより、車載ネットワーク装置は走行中にプログラムを取得し、車両の停止中に対象の演算装置がその書き換え可能なメモリーのプログラムを書き換えるようにしている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平５−１９５８５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の装置は、書き換え用のプログラムを走行中に取得することができるものの、演算装置のプログラムの書き換えは、それが車両制御に及ぼす影響を予測し難いため、走行中ではなく車両制御への影響の少ない停止中に行なうようにしている。このことから、一旦、演算装置のプログラムを書き換え始めると、それが終わるまで車両を走行させられないという問題もある。
【０００６】
本発明は、このような実情に鑑みてなされたものであり、その目的は、車両が走行中であれ、ネットワーク接続されている演算装置の書き換え可能なプログラムを書き換えることのできる車載ネットワーク装置を提供することにある。
【課題を解決するための手段】
【０００７】
以下、上記課題を解決するための手段及びその作用効果について記載する。
上記課題を解決するため、請求項１に記載の発明は、車両の上層ネットワークに、マネージャー装置を介して、プログラムの書き換え可能なメモリーを有する演算装置が接続される複数の下層ネットワークがそれぞれ接続されてなる車載ネットワーク装置であって、前記下層ネットワークは、車両の各異なる制御対象毎に設けられており、前記マネージャー装置には、前記接続される下層ネットワークの演算装置の書き換え可能なメモリーに書き換えられるプログラムを予め記憶しておくデータ記憶部と、前記下層ネットワークの演算装置が出力する上層ネットワークからの通信信号への応答信号に代替する信号を予め記
憶しておく代替信号記憶部と、前記演算装置のプログラムを書き換えるとき、該当する下層ネットワークに前記データ記憶部から取得した書き換え用プログラムを転送するとともに、前記上層ネットワークからの通信信号への応答として代替する信号を前記代替信号記憶部から取得して前記上層ネットワークに送信する演算部とが設けられていることを要旨とする。
【０００８】
ネットワークを介しての演算装置のプログラムの書き換えの際、その失敗のおそれを低減させるためにネットワークに当該プログラムのみを転送することが好ましいが、その場合、ネットワークが当該プログラムの転送に占有されることとなり、当該ネットワークに接続されているその他の演算装置間での通信が正常に行えない問題が生じる。
【０００９】
このような構成によれば、マネージャー装置には、書き換え用プログラムを記憶しておくデータ記憶部が設けられているので、マネージャー装置間では、車両の走行中であるか否かにかかわらず、書き換え用プログラムが上層ネットワークを通常の通信信号により転送されるようになる。これにより、上層ネットワークがプログラムの書き換えにより占有されることなく、上層ネットワークに接続されているマネージャー装置間では、プログラムの転送とともに通常の通信も確保されるようになる。
【００１０】
また、書き換え用のプログラムが、その書き換え対象の演算装置を有する下層ネットワークに接続されているマネージャー装置のデータ記憶部に保持される。これにより、プログラムの書き換えが行なわれる際、当該下層ネットワークに接続された演算装置のネットワーク通信は難しくなるが、その影響が及ぶ範囲を当該下層ネットワークのみとすることができ、上層ネットワーク及びその他の下層ネットワークのネットワーク通信を正常に維持することができるようになる。
【００１１】
このようなことから、下層ネットワークの分野毎にその分野の車両制御への影響度を考慮すれば、車両の走行中にも当該分野の演算装置のプログラムを書き換えることができるようになる。すなわち、このようなマネージャー装置により、車両制御への影響度が低い分野の下層ネットワークに接続されている演算装置のプログラムの書き換えは、車両走行中を含めていつでもできるようになる。一方、車両制御への影響度がある分野の下層ネットワークに接続されている演算装置であれ、車両状態が当該分野への影響度が低いと判断されるような場合、演算装置のプログラムの書き換えを行なうことができるようになる。具体的には、室内灯や窓などボディー分野の制御を行なう演算装置（ＥＣＵ）が接続される下層ネットワークは、車両の走行状態によらず高い自由度でその演算装置のプログラムの書き換えを行えるようになる。また、エンジンや電源管理などパワートレイン分野の制御を行なう演算装置（ＥＣＵ）が接続されている下層ネットワークは、車両状態に応じた適切な時期に演算装置のプログラムの書き換えを行えるようになる。
【００１２】
また、プログラムの書き換えの際、マネージャー装置が上層ネットワークから下層ネットワークへの通信に対する代替的な応答を返信するので車載ネットワーク装置としての動作を必要最小限であれ、確保することができるようになる。
【００１３】
さらに、下層ネットワークが車両の制御分野毎に設けられることにより、当該分野の車両制御への影響性の区分が好適になされ、車両の走行状態から同区分に応じた書き換え可能な時期の選択を行なうことが容易になり、演算装置のプログラムの書き換え可能性が車両の走行中を含めて高められるようになる。
【図面の簡単な説明】
【００１４】
【図１】本発明に係る車載ネットワーク装置の一実施形態における構成を機能ブロックにより示すブロック図。
【図２】同実施形態のマネージャー装置の通常モード時の動作について示す模式図。
【図３】同実施形態のマネージャー装置の書き換えモード時の動作について示す模式図。
【図４】同実施形態のマネージャー装置の書き換えモード時の応答処理について示すフローチャート。
【図５】同実施形態のマネージャー装置の書き換えモード時の周期処理について示すフローチャート。
【図６】同実施形態のプログラム書き換え処理を示すフローチャート。
【図７】同実施形態の書き換え処理における書き換え準備の処理を示すフローチャート。
【図８】同実施形態の書き換え処理における書き換え処理を示すフローチャート。
【発明を実施するための形態】
【００１５】
以下、本発明に係る車載ネットワーク装置の一実施形態について図に従って説明する。
図１は、車両に搭載された車載ネットワーク装置についてその構成を機能ブロックにより示す図である。
【００１６】
図１に示すように、車載ネットワーク装置には、当該車両に搭載されている上層ネットワーク１０と、この上層ネットワーク１０に接続されるボディーマネージャー１１とパワートレインマネージャー１２とマルチメディアマネージャー１３とシャーシマネージャー１４とが設けられている。ボディーマネージャー１１には、当該ボディーマネージャー１１を介して上層ネットワーク１０に接続される下層ネットワーク２１と、この下層ネットワーク２１に接続される複数の電子制御装置（ＥＣＵ）１１１，１１２とが設けられている。また、パワートレインマネージャー１２には、先のボディーマネージャー１１と同様に、これを介して上層ネットワーク１０に接続される下層ネットワーク２２と、この下層ネットワーク２２に接続される複数のＥＣＵ１２１，１２２とが設けられている。さらに、マルチメディアマネージャー１３には、先のボディーマネージャー１１などと同様に、これを介して上層ネットワーク１０に接続される下層ネットワーク２３と、この下層ネットワーク２３に接続される複数のＥＣＵ１３１，１３２とが設けられている。また、シャーシマネージャー１４には、先のボディーマネージャー１１などと同様に、これを介して上層ネットワーク１０に接続される下層ネットワーク２４と、この下層ネットワーク２４に接続される複数のＥＣＵ１４１，１４２とが設けられている。
【００１７】
上層ネットワーク１０は、そこに接続される各マネージャー１１〜１４の各々の相互間の通信情報の伝達を可能にさせる、例えばバス型の通信ネットワーク（ＣＡＮ）から構成されている。
【００１８】
各マネージャー１１〜１４は、それぞれ例えば電子制御装置（ＥＣＵ）などであり、それぞれに車両の各異なる制御分野が対応付けられている。詳述すると、本実施形態では、ボディーマネージャー１１には車体系を制御対象とする分野が割り当てられており、パワートレインマネージャー１２には駆動系を制御対象とする分野が割り当てられている。また、マルチメディアマネージャー１３には情報機器系を制御対象とする分野が割り当てられ、シャーシマネージャー１４には走行系を制御対象とする分野が割り当てられている。なお、各マネージャー１１〜１４に対応付けられる制御分野は、これに限定されるものではなく、これと入れ替わっても、制御分野の区分方法等に応じて異なる分野が対応付けられてもよいとともに、制御分野の区分についてもこの区分に限定されるものではなく、グループ化が可能であればどのように区分してもよい。
【００１９】
各下層ネットワーク２１〜２４は、それに接続される各マネージャー１１〜１４と、同じく接続される各ＥＣＵとの相互間の通信情報の伝達を可能にさせる、例えばマスター・
スレーブ型の通信ネットワーク（ＬＩＮ）から構成されている。すなわち、本実施形態では、各下層ネットワーク２１〜２４よりも上層ネットワーク１０の通信データの転送能力が高いものとなっている。
【００２０】
各下層ネットワーク２１〜２４には、それぞれ接続されているマネージャーに対応付けられている制御分野に対応するＥＣＵが接続される。詳述すると、車体系を制御分野として対応付けられる下層ネットワーク２１には、室内灯を制御する前記ＥＣＵ１１１と、窓を制御する前記ＥＣＵ１１２とが接続される。また、駆動系を制御分野として対応付けられる下層ネットワーク２２には、エンジンを制御する前記ＥＣＵ１２１と、電源系統を制御する前記ＥＣＵ１２２とが接続される。さらに、情報機器系を制御分野として対応付けられる下層ネットワーク２３には、データ記憶装置を制御する前記ＥＣＵ１３１と、ナビゲーションを制御する前記ＥＣＵ１３２とが接続される。また、走行系を制御分野として対応付けられる下層ネットワーク２４には、アンチロックブレーキングシステム（ＡＢＳ）の制御を行なう前記ＥＣＵ１４１と、通常のブレーキ制御を行なう前記ＥＣＵ１４２とが接続される。
【００２１】
ＥＣＵ１１１には、制御用プログラムの演算処理を実行する演算部（ＣＰＵ）４１と、その制御に必要なプログラムやデータが記憶された不揮発性のメモリー（ＥＥＰＲＯＭ）４２１やＣＰＵの演算結果が一時的に記憶される揮発性メモリ（ＲＡＭ）などから構成される記憶部４２とが設けられている。これにより、ＥＣＵ１１１は、記憶部４２の不揮発性のメモリー４２１に保持されている制御用プログラム等が演算部４１に読み込まれ、実行処理されることで、制御対象の制御を行なう。
【００２２】
また、ＥＣＵ１１１には、下層ネットワーク２１を通じての通信を可能とさせる通信インターフェース（通信ＩＦ）４３が設けられている。通信ＩＦ４３は、マスター・スレーブ方式（ＬＩＮ）のスレーブ機能を有し、下層ネットワーク２１にＥＣＵ１１１をスレーブノードとして接続させるためのインターフェースである。通信ＩＦ４３は、下層ネットワーク２１から受信した情報やマスターノードからのリクエストを演算部４１に伝達し、そのリクエストを処理した演算部４１により出力されるマスターノードへのレスポンスを下層ネットワーク２１に送信する。
【００２３】
なお、本実施形態では、ＥＣＵ１１１には、ＥＣＵとして制御プログラムを実行処理する通常モードと、不揮発性のメモリー（ＥＥＰＲＯＭ）４２１に保存されている制御プログラムの書き換え処理を行なう書き換えモードとが備えられている。通常モードでは、制御プログラムが実行処理され、例えば下層ネットワーク２１から入力されたリクエストに対して対応するレスポンスを返すようになっている。書き換えモードでは、制御プログラムの実行処理が停止されるため、マスターノードからのリクエストに対してレスポンスを返すことができなくなる。また、書き換えモードのときには、通信ＩＦ４３で受信されたデータが演算部４１を介して記憶部の不揮発性のメモリー４２１に直接転送されるようになっている。書き換えモードや通常モードは、マスターノードから当該ＥＣＵ１１１に送られる書き換えモードリクエストや通常モードリクエストなどにより変更されるようになっている。
【００２４】
ＥＣＵ１１２の構成は、上記ＥＣＵ１１１と同様であるため、説明の便宜上、同様な部分には同一の番号を付し、その詳細な説明を省略する。また、その他の各ＥＣＵ１２１，１２２，１３２，１４１，１４２の構成は、上記ＥＣＵ１１１等と同様であるため、説明の便宜上、同様な部分の記載を省略し、その詳細な説明を省略する。
【００２５】
ＥＣＵ１３１には、先のＥＣＵ１１１と同様に、演算部５１と、記憶部５２と、通信ＩＦ５３が設けられており、記憶部５２のＥＥＰＲＯＭに保持されている制御用プログラム
等が演算部５１に読み込まれ、実行処理されることでデータ記憶装置自身の制御が行なわれる。また、通信ＩＦ５３は、下層ネットワーク２３にＥＣＵ１３１をスレーブノードとして接続させる。なお、ＥＣＵ１３１は、この車載ネットワーク装置においてデータ記憶装置としての役割を有しており、他のＥＣＵに比較して大量の情報データを記憶することができる大容量記憶部５２１が設けられている。本実施形態では、この大容量記憶部５２１には、該当するＥＣＵの書き換え用プログラムが保持されるようになっている。そしてここに保持された書き換え用プログラムが上層ネットワーク１０を通じて該当するマネージャー（１１〜１４）に、データを不連続に送るパケットなどの通常の通信方法により、転送するようになっている。なお、大容量記憶部５２１には、書き換え用プログラムは、ディーラでダウンロードされたり、ＣＤなどの他のデバイスから転送されたり、無線通信を介してダウンロードされることなどにより保持される。
【００２６】
次に、各マネージャー１１〜１４について説明する。なお、各マネージャー１１〜１４は、いずれも同様の構成を有することから、以下ではボディーマネージャー１１について詳細な説明を行ない、説明の便宜上、その他の各マネージャー１２〜１４については、ボディーマネージャー１１と同様の部分には同一の番号を付し、その詳細な説明を省略する。
【００２７】
ボディーマネージャー１１には、制御用プログラムの演算処理を実行する演算部（ＣＰＵ）３１と、その制御に必要なプログラムやデータが記憶された不揮発性のメモリ（ＥＥＰＲＯＭ等）やＣＰＵの演算結果が一時的に記憶される揮発性メモリ（ＲＡＭ）などから構成される記憶部３２とが設けられている。これにより、ボディーマネージャー１１は、記憶部３２のＥＥＰＲＯＭ等に保持されている制御用プログラム等が演算部３１に読み込まれ、実行処理されることで、制御対象の制御を行なう。なお、本実施形態では、記憶部３２には、ボディーマネージャー１１を通常モードにする通常モード用プログラムや、書き換えモードにする書き換えモード用プログラムなどが記憶されており、それらプログラムが必要に応じて演算部３１にて実行処理される。これにより、ボディーマネージャー１１の通常モードと書き換えモードとが切替えられるようになっている。
【００２８】
また、ボディーマネージャー１１には、上層ネットワーク１０を通じての通信を可能とさせる第１通信インターフェース（通信ＩＦ）３３と下層ネットワーク２１を通じての通信を可能とさせる第２通信インターフェース（通信ＩＦ）３４が設けられている。第１通信ＩＦ３３は、バス型の通信ネットワーク（ＣＡＮ）に接続される機能を有し、上層ネットワーク１０にボディーマネージャー１１を接続させるためのインターフェースである。第１通信ＩＦ３３は、上層ネットワーク１０から受信した通信情報を演算部３１に伝達し、演算部３１より出力される通信情報を上層ネットワーク１０に送信する。これにより、ボディーマネージャー１１は、演算部３１により上層ネットワーク１０を介して他のマネージャー１２〜１４や、それに接続されている各ＥＣＵ１２１〜１４２との通信ができるようになっている。
【００２９】
第２通信ＩＦ３４は、マスター・スレーブ方式（ＬＩＮ）のマスター機能を有し、下層ネットワーク２１にボディーマネージャー１１をマスターノードとして接続させるためのインターフェースである。第２通信ＩＦ３４は、演算部３１から出力されるスレーブノードへのリクエストを下層ネットワーク２１に送信し、下層ネットワーク２１から受信したスレーブノードからのレスポンスを演算部３１に伝達する。これにより、ボディーマネージャー１１は、演算部３１により下層ネットワーク２１を介してそれに接続されている各ＥＣＵ１１１〜１１２との通信ができるようになっている。
【００３０】
記憶部３２には、下層ネットワーク２１に接続される各ＥＣＵ１１１，１１２用の書き換え用プログラムである各別のリプロデータを記憶するリプロデータ記憶部３２１と、上
層ネットワーク１０からのリクエストに各ＥＣＵ１１１，１１２に代わり代替応答するときに用いる複数の代替データを記憶する代替データ記憶部３２２とが備えられている。
【００３１】
次に、ボディーマネージャー１１の通常モード時の動作について、図２を参照して説明する。図２は、ボディーマネージャー１１の通常モード時の動作について示す模式図である。このとき、演算部３１では、通常モード用プログラムが実行されている。
【００３２】
図２に示すように、ボディーマネージャー１１では、第１通信ＩＦ３３は上層ネットワーク１０から受信したリクエストＲ１を演算部３１に入力させ、演算部３１はその宛先を解析する。そして宛先が、例えばＥＣＵ１１１であれば、そのリクエストＲ１を下層ネットワーク２１に適合した形式のデータに変換して、第２通信ＩＦ３４を介して下層ネットワーク２１に送信する。また、ボディーマネージャー１１では、第２通信ＩＦ３４は下層ネットワーク２１から受信したレスポンスＳ１を演算部３１に入力させ、演算部３１はその宛先を解析する。そして宛先が、例えば他の下層ネットワーク２２〜２４に接続されているＥＣＵであれば、そのレスポンスＳ１を上層ネットワーク１０に適合した形式のデータに変換して、第１通信ＩＦ３３を介して上層ネットワーク１０に送信する。なお、ボディーマネージャー１１では、データ記憶装置のＥＣＵ１３１からマルチメディアマネージャー１３及び上層ネットワーク１０を介して書き換え用プログラムを受信した場合、演算部３１はその書き換え用プログラムを記憶部３２のリプロデータ記憶部３２１に一時保存する。
【００３３】
次に、ボディーマネージャー１１の書き換えモード時の動作について、図３〜図５を参照して説明する。図３は、ボディーマネージャー１１の書き換えモード時の動作について示す模式図であり、図４は、演算部で実行される応答処理について示すフローチャートであり、図５は、演算部で実行される周期処理について示すフローチャートである。なおこのとき、演算部３１では、応答処理と周期処理などを行なう書き換えモード用プログラムが実行されている。
【００３４】
図３に示すように、演算部３１は下層ネットワーク２１に接続された各ＥＣＵ１１１，１１２の制御プログラムを書き換えるためにリプロデータ記憶部３２１の書き換え用プログラムを書き換えデータＲＰとして順次下層ネットワーク２１に送信する。書き換えモードにされている書き換え対象のＥＣＵ１１１，１１２は、書き換えが開始されると自身に対応する書き換えデータＲＰの転送が始まるとそれを順次受信して不揮発性のメモリー４２１に書き込むため、書き換えデータＲＰの転送中には、その途中に他のデータを割り込ませることができない。そのため、プログラムの書き換え中は、下層ネットワーク２１は通常のリクエストＲ１やレスポンスＳ１などの通信情報を伝達することができなくなる。このような場合、その他の下層ネットワーク２２〜２４のＥＣＵ１２１〜１４２が、この下層ネットワーク２１に接続されている各ＥＣＵ１１１，１１２に情報を要求するリクエストを発行しても、そのリクエストに対する応答としてのレスポンスが得られないこととなる。このため、ＥＣＵ１２１〜１４２などは、複数回のリトライの後、リクエスト先の各ＥＣＵ１１１，１１２に不具合が発生したと判断して、警告表示などを表示させて異常を通知することが多い。
【００３５】
そこで本実施形態では、通常の通信情報を下層ネットワーク２１に伝達させないとともに、下層ネットワーク２１に接続されているＥＣＵ１１１，１１２へのリクエストに対して代替して応答する応答処理をもおこなうファイヤウォールをボディーマネージャー１１にて行なう。応答処理について、図３及び図４を参照して詳述すると、第１通信ＩＦ３３は上層ネットワーク１０から受信したリクエストＲ１を演算部３１に入力させ、演算部３１はその宛先などを解析する（図４のステップＳ１）。そして宛先が、例えばＥＣＵ１１１である場合、そのリクエストＲ１に対する必要があるかどうか判断する（図４のステッ
プＳ２）。そのリクエストＲ１に応答が必要である場合（図４のステップＳ２でＹＥＳ）、演算部３１は、代替的なデータを代替データ記憶部３２２の複数の代替データから選択し、その選択した代替データをリクエストＲ１のレスポンスＳ２として第１通信ＩＦ３３を介して上層ネットワーク１０に送信する（図４のステップＳ３）。そして応答処理を終了する。なお、リクエストＲ１に応答が必要ではない場合（図４のステップＳ２でＮＯ）、そのまま応答処理を終了する。
【００３６】
一方、ボディーマネージャー１１は、一定周期で各ＥＣＵ１１１，１１２から取得したデータをネットワークに送信することものもある。そのようなデータを、その他の下層ネットワーク２２〜２４のＥＣＵ１２１〜１４２が利用している場合、一定の期間を過ぎてもそのデータが取得されないこととなる。このような場合にも、ＥＣＵ１２１〜１４２などは、所定の時間経過後、情報の発信元に不具合が発生したと判断して、警告表示などを表示させることが多い。
【００３７】
そこで本実施形態では、ボディーマネージャー１１が下層ネットワーク２１に接続されているＥＣＵ１１１，１１２からデータを取得せずに代替するデータを送信する周期処理を行なう。周期処理は、予め定められた一定時間毎に起動されるようになっている。周期処理について、図３及び図５を参照して詳述すると、演算部３１は、指定の周期であるか否かについて確認する（図５のステップＳ５）。指定の周期である場合（図５のステップＳ５でＹＥＳ）、演算部３１は、予め定められている代替的なデータを代替データ記憶部３２２から取得して、その取得した代替データを、第１通信ＩＦ３３を介して上層ネットワーク１０に送信する（図５のステップＳ６）。そして周期処理を終了する。なお、指定の周期ではない場合（図５のステップＳ５でＮＯ）、そのまま応答処理を終了する。
【００３８】
次に、このような車載ネットワーク装置で行なわれるＥＣＵの制御プログラムの書き換えについて、図６〜図８を参照して説明する。図６は、プログラム書き換え処理を示すフローチャートであり、図７は、書き換え処理における書き換え準備を示すフローチャートであり、図８は、書き換え処理における書換処理を示すフローチャートである。なお、この書き換え処理は、書き換え用プログラムがボディーマネージャー１１に転送が完了した後に、車両自身の走行状態や外部環境状態などを条件として、当該車両分野の下層ネットワークが停止しても車両制御に与える影響が小さいと判断されると実施されるようになっている。
【００３９】
プログラム書き換え処理が開始されると、ＲＡＭなどに確保されている書き換え可能フラグに「１」が設定され、図６に示すように、書き換え準備が行なわれる（図６のステップＳ１０）。
【００４０】
書き換え準備では、図７に示すように、ボディーマネージャー１１は、書き換えプログラムがリプロデータ記憶部３２１に正しく取得されたか否かを確認する（図７のステップＳ１１）。このとき、例えばデータの取得途中であるなど、書き換え用データが正しく取得されていない場合には書き換え可能フラグに「０」を設定する。また、ボディーマネージャー１１は、バッテリーの残量を電源管理ＥＣＵ１２２に問い合わせて、その残量が所定量以上であるか否かを確認する（図７のステップＳ１２）。このとき、例えばバッテリー残量が所定量未満であるような場合には書き換え可能フラグに「０」を設定する。さらに、ボディーマネージャー１１は、各ＥＣＵ１１１，１１２の状態が正常であるか否かをその診断コマンドを用いることなどにより検査する（図７のステップＳ１３）。このとき、例えば不正常なＥＣＵがあるような場合には書き換え可能フラグに「０」を設定する。これにより、不正常なＥＣＵの制御プログラムを書き換え、当該ＥＣＵの書き換え後の起動が不可能になり車両制御に不都合を生じさせることなどを防ぐようにしている。またさらに、ボディーマネージャー１１は、下層ネットワーク２１に接続された各ＥＣＵの制御
プログラムを書き換えてよいかどうかを例えば、ナビゲーションの表示装置や入力装置を介してユーザに確認する（図７のステップＳ１４）。このとき、例えばユーザが制御プログラムの書き換えに同意しないような場合には書き換え可能フラグに「０」を設定する。
【００４１】
そして、ボディーマネージャー１１は、書き換え可能フラグを参照してプログラムを書き換えてもよいか否かを判断する（図７のステップＳ１５）。すなわち、書き換え可能フラグに「１」が設定されている場合、書き換えてもよいと判断し（図７のステップＳ１５でＹＥＳ）、ボディーマネージャー１１は、書き換え準備が完了し、書き換え中である旨を、ナビゲーションの表示装置を用いてユーザに通知する。そして図６のステップＳ１０に戻る。一方、書き換え可能フラグに「０」が設定されている場合、書き換えられないと判断し（図７のステップＳ１５でＮＯ）、書き換え準備が完了していないため、書き換え可能フラグには「０」を設定したままにして（図７のステップＳ１７）、図６のステップＳ１０に戻る。
【００４２】
書き換え準備が終了すると、ボディーマネージャー１１は、書き換え可能フラグを参照して準備が完了したか否かを判断する（図６のステップＳ２０）。そして、書き換え可能フラグに「０」が設定されている場合、準備が完了していないと判断し（図６のステップＳ２０でＮＯ）、書き換え処理を行なわず、このプログラム書き換え処理を終了する。一方、書き換え可能フラグに「１」が設定されている場合、書き換え準備が完了したと判断され（図６のステップＳ２０でＹＥＳ）、ボディーマネージャー１１は、書き換え処理を行なう（図６のステップＳ３０）。
【００４３】
書き換え処理では、図８に示すように、ボディーマネージャー１１は、ファイヤウォールを開始する（図８のステップＳ３１）。すなわち、ボディーマネージャー１１は、演算部３１にて書き換えモード用プログラムを実行させて、応答処理や周期処理などを行ない上層ネットワーク１０のリクエストなどが下層ネットワーク２１に転送されないようにする。また、ボディーマネージャー１１は、下層ネットワークの各ＥＣＵを書き換えモードにする（図８のステップＳ３２）。すなわち、ボディーマネージャー１１は、書き換えモードにするコマンドを各スレーブに送信して各ＥＣＵ１１１，１１２の動作を書き換えモードに移行させる。それから、ボディーマネージャー１１は、各ＥＣＵ１１１，１１２の制御プログラムを書き換える処理を行なう（図８のステップＳ３３）。すなわち、ボディーマネージャー１１は、リプロデータ記憶部３２１の書き換え用プログラムを、下層ネットワーク２１を介して対象の各ＥＣＵ１１１，１１２に転送する。このとき下層ネットワーク２１には、書き換え用プログラムのみが伝達され、その他のデータは伝達されない。対象となる全てのＥＣＵ１１１，１１２に書き換え用プログラムの転送が終了すると、ボディーマネージャー１１は、各ＥＣＵ１１１，１１２を通常モードにする（図８のステップＳ３４）。すなわち、ボディーマネージャー１１は、通常モードにするコマンドを各スレーブに送信して各ＥＣＵ１１１，１１２の動作を通常モードに移行させる。そして、ボディーマネージャー１１は、ファイヤウォールを終了する（図８のステップＳ３５）。すなわち、ボディーマネージャー１１は、応答処理や周期処理などを終了させるために、演算部３１の書き換え用のプログラムを終了させて、通常モード用のプログラムを実行させる。そして、図６のステップＳ３０に戻る。
【００４４】
図６のステップＳ３０に戻ると、書き換え終了処理が行なわれる（図６のステップＳ４０）。すなわち、ボディーマネージャー１１は、ナビゲーションを用いて通知していた書き換え中である旨の情報表示などの通知を終了させるとともに、書き換え終了したことを通知させるようにする。そして、プログラム書き換え処理が終了する。
【００４５】
以上説明したように、本実施形態の車載ネットワーク装置によれば、以下に列記するような効果が得られるようになる。
（１）下層ネットワーク２１を介してのＥＣＵ１１１，１１２のプログラムの書き換えの際、その失敗のおそれを低減させるために下層ネットワークに当該プログラムのみを転送することが好ましい。しかしその場合、下層ネットワーク２１が当該プログラムの転送に占有されることとなり、当該下層ネットワーク２１に接続されているその他の演算装置間での通信が正常に行えない問題が生じる。
【００４６】
ボディーマネージャー１１に、書き換え用プログラムを記憶しておく記憶部３２を設けたので、各マネージャー１１〜１４間では、車両の走行中であるか否かにかかわらず、書き換え用プログラムが上層ネットワーク１０を通常の通信により転送されるようになる。これにより、上層ネットワーク１０がプログラムの書き換えにより占有されることなく、上層ネットワーク１０に接続されているマネージャー１１〜１４間では、プログラムの転送とともに通常の通信も確保されるようになる。
【００４７】
（２）また、書き換え用のプログラムが、その書き換え対象のＥＣＵ１１１，１１２を有する下層ネットワーク２１に接続されているボディーマネージャー１１の記憶部３２に保持する。これにより、プログラムの書き換えが行なわれる際、当該下層ネットワーク２１に接続されたＥＣＵ１１１，１１２のネットワーク通信は難しくなるが、その影響が及ぶ範囲を当該下層ネットワーク２１のみとすることができ、上層ネットワーク１０及びその他の下層ネットワーク２２〜２４のネットワーク通信を正常に維持することができるようになる。
【００４８】
（３）このようなことから、下層ネットワーク２１の分野毎にその分野の車両制御への影響度を考慮すれば、車両の走行中にも当該分野のＥＣＵ１１１，１１２のプログラムを書き換えることができるようになる。すなわち、このような各マネージャー１１〜１４により、車両制御への影響度が低い分野の下層ネットワーク２１〜２４に接続されているＥＣＵのプログラムの書き換えは、車両走行中を含めていつでもできるようになる。一方、車両制御への影響度がある分野の下層ネットワーク２１〜２４に接続されているＥＣＵであれ、車両状態が当該分野への影響度が低いと判断されるような場合、ＥＣＵのプログラムの書き換えを行なうことができるようになる。具体的には、室内灯や窓などボディー分野の制御を行なうＥＣＵ１１１，１１２が接続される下層ネットワーク２１は、車両の走行状態によらず高い自由度でそのＥＣＵ１１１，１１２のプログラムの書き換えを行えるようになる。また、エンジンや電源管理などパワートレイン分野の制御を行なうＥＣＵ１２１，１２２が接続されている下層ネットワーク２２は、車両状態に応じた適切な時期に演算装置のプログラムの書き換えを行えるようになる。
【００４９】
（４）また、プログラムの書き換えの際、ボディーマネージャー１１が上層ネットワーク１０から下層ネットワーク２１への通信に対する代替的な応答を返信するので車載ネットワーク装置としての動作を必要最小限であれ、確保することができるようになる。
【００５０】
（５）さらに、下層ネットワーク２１〜２４を車両の制御分野毎に設けることにより、当該分野の車両制御への影響性の区分が好適になされ、車両の走行状態から同区分に応じた書き換え可能な時期の選択を行なうことが容易になり、ＥＣＵのプログラムの書き換え可能性が車両の走行中を含めて高められるようになる。
【００５１】
なお、上記実施形態は、例えば以下のような態様にて実施することもできる。
・上記実施形態では、各ＥＣＵ１１１，１１２のプログラムを書き換える場合について例示したが、これに限らず、プログラムの書き換えは、書き換えが必要なＥＣＵに対して行なわれればよく、下層ネットワークに接続されている一部のＥＣＵのみや全部のＥＣＵに対して行なわれてもよい。
【００５２】
・上記実施形態では、下層ネットワーク２１に接続されているＥＣＵ１１１，１１２のプログラムの書き換えを行なう場合について例示した。しかしこれに限らず、その他の下層ネットワークに接続されているＥＣＵのプログラムの書き換えを行なってもよい。この場合、該当するマネージャーを書き換えモードにすればよい。
【００５３】
・上記実施形態では、不揮発性のメモリーをＥＥＰＲＯＭとした場合について例示したが、これに限らず、読み書きが可能でデータが保持されるものであれば、不揮発性のメモリーとして、そのほか記憶媒体を用いてもよい。
【００５４】
・上記実施形態では、リプロデータ記憶部３２１や代替データ記憶部３２２には複数の書き換え用プログラムや代替データが保持されている場合について例示したが、これに限らず、書き換え処理が好適に行えるのであれば、書き換え用プログラムや代替データは一つでもよい。これにより、車載ネットワーク装置の利用の自由度が高められる。
【００５５】
・上記実施形態では、上層ネットワーク１０は下層ネットワーク２１〜２４よりもデータを大量かつ高速に伝送できる場合について例示した。しかしこれに限らず、上層ネットワークは、その全体もしくは一部の通信経路が下層ネットワークと同じかそれ以下のデータ転送能力を有するものでもよい。これにより、このような車載ネットワーク装置を、例えば、通信経路にボトルネックを有するようなネットワークにも採用できるなど、その採用可能性が高められる。
【００５６】
・上記実施形態では、上層ネットワーク１０はＣＡＮであり、下層ネットワーク２１〜２４はＬＩＮである場合について例示した。しかしこれに限らず、上層ネットワークや下層ネットワークは、それぞれネットワーク通信が可能で有ればＣＡＮやＬＩＮを含め、Ｅｔｈｅｒｎｅｔ（登録商標）やＦｌｅｘＲａｙ（登録商標）などその他のネットワークであってもよい。これにより、この車載ネットワーク装置の採用可能性が高められる。
【００５７】
また、通信プロトコルに関しても特に制限はない。
・上記実施形態では、ＥＣＵの制御プログラムを書き換える場合について例示したが、これに限らず、書き換えるデータとしては、ＥＣＵの制御に用いられるパラメータなどその他のデータであってもよい。
【符号の説明】
【００５８】
１０…上層ネットワーク、１１…ボディーマネージャー、１２…パワートレインマネージャー、１３…マルチメディアマネージャー、１４…シャーシマネージャー、２１〜２４…下層ネットワーク、３１…演算部、３２…記憶部、３３…第１通信インターフェース（第１通信ＩＦ）、３４…第２通信インターフェース（第２通信ＩＦ）、４１…演算部、４２…記憶部、４２１…不揮発性のメモリー、４３…通信インターフェース（通信ＩＦ）、５１…演算部、５２…記憶部、５３…通信ＩＦ、１１１〜１４２…電子制御装置（ＥＣＵ）、３２１…データ記憶部としてのリプロデータ記憶部、３２２…代替信号記憶部としての代替データ記憶部、５２１…大容量記憶部。
【図１】
2011040912.tif 000003
【図２】
2011040912.tif 000004
【図３】
2011040912.tif 000005
【図４】
2011040912.tif 000006
【図５】
2011040912.tif 000007
【図６】
2011040912.tif 000008
【図７】
2011040912.tif 000009
【図８】
2011040912.tif 000010