(57)【要約】【課題】低コストで安全かつより効率的にプログラムを更新可能な車載プログラム更新装置を提供する。【解決手段】ゲートウェイＥＣＵは、車載ネットワークシステムを構成する複数のＥＣＵについてＥＣＵ毎に、ＥＣＵプログラムが更新可能な車両負荷状態を個々に示す更新条件テーブル３０ａを有している。そして、外部のセンタ装置との間で無線通信を行うことによって更新ファイルを受信する場合、更新条件テーブル３０ａを用いて、現在の車両負荷状態がＥＣＵプログラムを更新可能な低負荷状態であるか、このＥＣＵプログラムを更新不能な高負荷状態であるかを判定する。さらに、低負荷状態であると判定した場合、センタ装置から受信した更新ファイルを用いてＥＣＵプログラムを更新し、高負荷状態であると判定した場合、更新条件テーブル３０ａに基づき、現在の車両負荷状態を低負荷状態に変更するための環境整備制御を実行するように構成した。【選択図】図３
2014106875.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載される車載プログラム更新装置（３０）であって、
車載ネットワークシステム（２）を構成する複数の電子制御装置（３１〜４４）について該電子制御装置毎に、実装されているプログラムが更新可能な車両負荷状態を個々に示す更新条件テーブル（３０ａ）を記憶している記憶手段（２６）と、
外部のセンタ装置（１０）との間で無線通信を行うことによって、該センタ装置から前記プログラムを更新するための更新ファイルを受信する更新ファイル受信手段（３）と、
前記更新ファイル受信手段により前記更新ファイルを受信する場合、前記記憶手段に記憶されている更新条件テーブルに基づき、現在の車両負荷状態が該更新ファイルに対応するプログラムを更新可能な低負荷状態であるか該プログラムを更新不能な高負荷状態であるかを判定する更新判定手段（Ｓ１５０，Ｓ１７０）と、
前記更新判定手段により前記低負荷状態であると判定した場合、前記更新ファイル受信手段により受信した更新ファイルを用いて、該更新ファイルに対応するプログラムを更新するプログラム更新手段（Ｓ１８０）と、
前記更新判定手段により前記高負荷状態であると判定した場合、前記記憶手段に記憶されている更新条件テーブルに基づき、現在の車両負荷状態を前記低負荷状態に変更するための環境整備制御を実行する環境整備制御手段（Ｓ１６０）と、
を備えることを特徴とする車載プログラム更新装置。
【請求項２】
前記更新条件テーブルには、前記プログラムの種別毎に前記車両負荷状態が示されていることを特徴とする請求項１に記載の車載プログラム更新装置。
【請求項３】
前記プログラム更新手段は、前記複数の電子制御装置が接続された通信バス（５）を介して、前記更新ファイルを対応する電子制御装置に送信し、
前記環境整備制御は、前記車両負荷状態として前記通信バスの負荷状態を低くするバス負荷低減制御であることを特徴とする請求項１または請求項２に記載の車載プログラム更新装置。
【請求項４】
前記複数の電子制御装置は、前記車載ネットワークシステムにおいて、前記車両の走行制御を行う走行系電子制御装置（３１〜３６）と、それ以外の非走行系電子制御装置（３７〜４４）とに区分されており、
前記バス負荷低減制御は、前記非走行系電子制御装置が前記通信バスを介して他の電子制御装置に定期的に送信する情報の送信間隔、および前記走行系電子制御装置が前記通信バスを介して前記非走行系電子制御装置に定期的に送信する情報の送信間隔の少なくとも一方を、予め設計された許容範囲内において長くする制御であることを特徴とする請求項３に記載の車載プログラム更新装置。
【請求項５】
前記複数の電子制御装置は、前記車載ネットワークシステムにおいて、前記車両の走行制御を行う走行系電子制御装置（３１〜３６）と、それ以外の非走行系電子制御装置（３７〜４４）とに区分されており、
前記バス負荷低減制御は、前記非走行系電子制御装置の一部が前記通信バスを介して他の電子制御装置に情報を送信することを禁止する制御であることを特徴とする請求項３または請求項４に記載の車載プログラム更新装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両に搭載された電子制御装置に実装されているプログラムを更新する車載プログラム更新装置に関する。
【背景技術】
【０００２】
従来、車両に搭載されるこの種の車載プログラム更新装置として、外部のセンタ装置との間で無線通信を行うことによって、そのセンタ装置からプログラムを更新するための更新ファイルを受信し、その更新ファイルに対応するプログラムを自動更新する装置が提案されている。
【０００３】
このような装置によれば、例えばプログラムを書き換えるための専用ツールを有する施設（例えばディーラーや整備工場等）にユーザが赴く必要や、このような施設に専用ツールや技術者を配備する必要や、技術者がユーザのところに赴く必要等がなくなり、ユーザ側の利便性の向上や、施設側のコストの低減等を図ることが期待できる。
【０００４】
さらに、特にユーザが降車した後にプログラムを更新することを想定し、プログラムの更新時に車両側から各種の車両状態（例えば、ドアの開閉状態やライトの点灯状態等）、および車載カメラの映像等を表す監視情報をセンタ装置に送信するプログラム更新システムが提案されている。
【０００５】
このようなシステムによれば、センタ装置を操作するオペレータが車両側から送られてくる監視情報に基づいて、不審者を発見したときにはユーザに通報したり、ドアのアンロック状態を確認したときにはセンタ装置からドアをロックするための制御指令を車両側に送信したりすることで、盗難のリスクの低減を図ることが期待される（例えば、特許文献１参照）。
【０００６】
また、特許文献１記載のプログラム更新システムでは、車両側から車両状態としてライトの点灯状態やワイパの作動状態を表す監視情報をセンタ装置に送信し、オペレータがこのような監視情報に基づいて、バッテリの消耗の抑制を図るための制御指令（ライトを消灯させたりワイパの作動を停止させたりするための制御指令）を車両側に送信している。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１１−７０２８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１記載のプログラム更新システムでは、車両の盗難やバッテリの消耗といった車両の駐車中のときに気をつけるべきことには対応しているものの、車両の走行中等のようにユーザが乗車中のときに有効な制御指令がセンタ装置から車両側に送信されるようには構成されていない。このため、ユーザが乗車中であるときも含めて効率的にプログラムを更新できないため、必ずしも効率的なシステムであるとはいえないという問題があった。
【０００９】
また、特許文献１記載のプログラム更新システムでは、センタ装置が車両側から監視情報を受信し、オペレータが車両状態や車載カメラの映像を監視しなければならないため、通信量や人件費といった各種コストが増大してしまうという問題があった。
【００１０】
本発明は、上記問題に鑑みてなされたものであり、低コストで安全かつより効率的にプログラムを更新可能な車載プログラム更新装置の提供を目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するためになされた本発明は、車両に搭載される車載プログラム更新装置であって、車載ネットワークシステムを構成する複数の電子制御装置についてこれらの電子制御装置毎に、実装されているプログラムが更新可能な車両負荷状態を個々に示す更新条件テーブルを記憶手段に記憶している。
【００１２】
そして、本発明では、更新ファイル受信手段が、外部のセンタ装置との間で無線通信を行うことによって、このセンタ装置から上記プログラムを更新するための更新ファイルを受信し、更新判定手段が、更新ファイル受信手段により更新ファイルを受信する場合、記憶手段に記憶されている更新条件テーブルを用いてプログラムの更新可否を判定する。具体的には、現在の車両負荷状態が更新ファイルに対応するプログラムを更新可能な低負荷状態であるか、このプログラムを更新不能な高負荷状態であるかを判定する。
【００１３】
さらに、本発明では、更新判定手段により現在の車両負荷状態が低負荷状態であると判定した場合、プログラム更新手段が、更新ファイル受信手段により受信した更新ファイルを用いて、この更新ファイルに対応するプログラムを更新し、更新判定手段により現在の車両負荷状態が高負荷状態であると判定した場合、環境整備制御手段が、記憶手段に記憶されている更新条件テーブルに基づき、現在の車両負荷状態を低負荷状態に変更するための環境整備制御を実行するように構成した。
【００１４】
このような構成では、プログラムの更新対象となる電子制御装置毎にプログラムの更新条件を決めているため、必ずしも車両を駐車しなければいけないわけではなく、電子制御装置によっては、車両の走行中等のようにユーザが乗車中のときにも更新条件が満たされれば、プログラムの更新を行うことが可能となり、プログラムの更新機会を増やすことができる。
【００１５】
そして、このような更新条件を車両負荷状態が高負荷状態であるときには成立しないものとしているため、例えば車両の走行に影響を及ぼすようなときにプログラムの更新がなされずに済み、ユーザの安全確保を行うことが可能となる。
【００１６】
また、更新条件が成立しない場合には、車両負荷状態が低負荷状態を示す環境に整備されるように制御がなされるため、プログラムの更新機会をさらに増やすことが可能となる。さらに言えば、車両側で車両負荷状態に基づいてプログラムの更新可否に係る判定を行った上で、必要に応じて環境整備制御を行うため、車両負荷状態を示す情報を車両側からセンタ装置に送信せずに済むことから、不要な通信コストを抑えることが可能となる。
【００１７】
したがって、本発明によれば、車載プログラム更新装置において、低コストで安全かつより効率的にプログラムを更新することができる。
なお、本発明において、プログラムとは、上記電子制御装置が制御対象機器（エンジンやブレーキ等の車両構成品や他の電子制御装置等）を制御するために行う処理に必要なプログラムを構成する複数のプログラム部分およびデータ部分のうちの少なくとも一部分をいう。
【００１８】
このため、更新条件テーブルには、このようなプログラムの種別毎に車両負荷状態が示されていることが好ましい。この場合、同じ電子制御装置に実装されたプログラムであっても、プログラム部分またはデータ部分によって細分化された更新条件が満たされれば、プログラムの更新を行うことが可能となるので、プログラムの更新機会をより増やすことができる。
【００１９】
また、本発明において、環境整備制御は、例えば車両を停止させる等といったユーザの操作を必要とする場合には、その旨をユーザに通知する制御（ユーザ通知制御）であってもよいし、車両負荷状態として通信バスの負荷状態を低くするバス負荷低減制御であってもよい。なお、通信バスには、上記複数の電子制御装置が接続されており、本発明では、プログラム更新手段が、この通信バスを介して更新ファイルを対応する電子制御装置に送信することにより、この電子制御装置にプログラムを更新させることを前提とする。
【００２０】
このようなバス負荷低減制御によれば、通信バスの負荷状態を低くした上で更新ファイルの送信に通信バスを使用するため、車載ネットワークシステムの動作に影響を及ぼすことなく（ひいては車両の走行に影響を及ぼすことなく）、例えば車両の走行中であっても好適にプログラムを更新することができる。
【００２１】
なお、複数の電子制御装置は、車載ネットワークシステムにおいて、車両の走行制御を行う走行系電子制御装置と、それ以外の非走行系電子制御装置とに区分することができる。
【００２２】
このような前提において、バス負荷低減制御は、非走行系電子制御装置が通信バスを介して他の電子制御装置に定期的に送信する情報の送信間隔、および走行系電子制御装置が通信バスを介して非走行系電子制御装置に定期的に送信する情報の送信間隔の少なくとも一方を、予め設計された許容範囲内において長くする制御であってもよい。
【００２３】
このようなバス負荷低減制御によれば、エンジンやブレーキ等の車両構成品を制御する走行系電子制御装置から他の走行系電子制御装置に定期的に送信する情報の送信間隔を変えずに済むことから、車両の走行制御に直接影響を及ぼすことなく、他の情報の送信間隔を長くすることにより、好適にバス負荷を低減することができる。
【００２４】
また、バス負荷低減制御は、非走行系電子制御装置の一部が通信バスを介して他の電子制御装置（走行系電子制御装置、他の非走行系電子制御装置を含む）に情報を送信することを禁止する制御であってもよい。
【００２５】
このようなバス負荷低減制御によっても、エンジンやブレーキ等の車両構成品を制御する走行系電子制御装置からの情報の送信は行われることから、車両の走行制御に直接影響を及ぼすことなく、例えば非走行系電子制御装置の一部をバススリープ状態にすることにより、好適にバス負荷を軽減することができる。
【図面の簡単な説明】
【００２６】
【図１】本発明が適用された車載ネットワークシステムおよびセンサ装置の構成を例示するブロック図である。
【図２】電子制御装置の構成を例示するブロック図である。
【図３】更新条件テーブルを説明するためのマトリックス図である。
【図４】車載プログラム更新装置が行う処理内容を例示するフローチャートである。
【発明を実施するための形態】
【００２７】
以下に、本発明の実施形態を図面と共に説明する。
＜全体構成＞
図１に示すように、本実施形態のプログラム更新システム１は、車両内に設置された各電子制御装置（以下「ＥＣＵ」という）３０〜４４に実装されているプログラムを更新するシステムであり、このシステムを運営する側の施設である情報センタに設置されたセンタ装置１０と、複数のＥＣＵ３０〜４４により車載ネットワークシステム２が構築された複数の車両２０（２０ａ，２０ｂ，２０ｃ，…）とから構成されている。なお、以下では、複数の車両２０（２０ａ，２０ｂ，２０ｃ，…）が同様の構成を有しているため、各車両２０（２０ａ，２０ｂ，２０ｃ，…）を、単に、車両２０と表記する。
【００２８】
また、プログラム更新システム１では、車両２０毎に自車両を特定するための車両ＩＤが予め割り当てられている。さらに、各車両２０には、自車両の外部と無線通信を行うための通信端末３が設置されており、車載ネットワークシステム２内の通信端末３に直接または間接的に接続された各ＥＣＵ３０〜４４と、センタ装置１０とが、移動通信網およびインターネット網を介して相互に情報を送受信可能に構成されている。なお、通信端末３は、ユーザが車両２０に持ち込む携帯電話機やスマートフォン等の可般型通信装置を介して、センタ装置１０等の外部装置と無線通信を行うように構成されてもよい。
【００２９】
センタ装置１０は、インターネット網に接続するためのネットワークＩ／Ｆ１１と、車両ＩＤ毎にＥＣＵ３０〜４４に実装されているプログラム（以下「ＥＣＵプログラム」という）のバージョンが登録されたデータベース１２と、データベース１２を用いて各ＥＣＵプログラムの実装具合を管理するプログラム管理処理を行う制御部１３とを備えて構成されている。
【００３０】
制御部１３は、ＣＰＵ、ＲＯＭ、ＲＡＭ等からなる周知のマイクロコンピュータを中心に構成され、ＣＰＵが、ＲＯＭに記憶されているプログラムに基づいて、ＲＡＭを作業エリアとして用い、上記プログラム管理処理を実行する。
【００３１】
具体的には、プログラム管理処理では、データベース１２を参照して、各ＥＣＵ３０〜４４に実装されているＥＣＵプログラムのバージョンが最新のものであるか否かを判断し、車両ＩＤに基づき、ＥＣＵプログラムを最新のバージョンに更新する必要のあるＥＣＵ（３０〜４４の少なくとも一つ）を搭載する車両２０に、このような更新を行うための更新ファイルを、ネットワークＩ／Ｆ１１を介して送信する。なお、この更新ファイルを受信した車両２０は、受信した更新ファイルを用いて対応するＥＣＵプログラムを更新すると、その旨をセンタ装置１０に通知するようになっており、制御部１３は、車両２０からネットワークＩ／Ｆ１１を介してこのような通知を受信すると、車両ＩＤに基づいてデータベース１２の内容を新たな内容に書き換えるように構成されている。
【００３２】
ここで、ＥＣＵプログラムとは、各ＥＣＵ３０〜４４が自ＥＣＵに割り当てられた制御対象機器（他のＥＣＵを含む）を制御するために行う処理に必要なプログラムを構成する複数のプログラム部分およびデータ部分のうち少なくとも一部分をいう。つまり、センタ装置１０から車両２０に送信される更新ファイルは、各ＥＣＵ３０〜４４が行う処理の基幹となるメインプログラムに限らず、その下位のプログラム、例えば、機能毎に区分されたアプリケーションや、そのアプリケーションが使用するデータ（例えば、地図データや、移動通信網の基地局に関するデータ、表示デザインを規定するデータ等）を新たな内容に更新するためのものを含む。
【００３３】
＜ＥＣＵの構成＞
図２に示すように、各ＥＣＵ３０〜４４は、いずれも基本的には同様の構成をしており、通信バス５へのデータの送出、通信バス５から自ＥＣＵにとって必要なデータの取込を行うトランシーバ２１と、所定のプロトコルに従って通信バス５を介した通信を制御する通信コントローラ２２と、通信コントローラ２２を制御して他のＥＣＵとの通信を行うことにより、他のＥＣＵと連動して、自ＥＣＵに割り当てられた各種機能を実現するための各種処理を実行するマイクロコンピュータ（以下「マイコン」）２３と、車両２０に搭載されたバッテリ６からの入力電圧を内部電圧に変換し、各部２１〜２３への電源供給を行う電源回路２４とを備えている。
【００３４】
このうち、マイコン２３は、ＥＣＵプログラムに基づく各種処理を実行するマイクロコントローラユニット（以下「ＭＣＵ」という）２５と、自ＥＣＵに割り当てられた制御対象機器を制御するための各種のＥＣＵプログラムが格納されたフラッシュメモリ２６と、フラッシュメモリ２６に格納されたＥＣＵプログラムを書き換える機能を提供するブートローダが格納されたＲＯＭ２７と、ＭＣＵ２５による各種処理実行時のワークメモリとなるＲＡＭ２８とを備えている。
【００３５】
そして、ＭＣＵ２５は、通信コントローラ２２を介して更新ファイルを受信すると、この更新ファイルに従い、ＲＯＭ２７に格納されたブートローダを用いて、フラッシュメモリ２６内の対応するＥＣＵプログラムを新たな内容に更新するように構成されている。
【００３６】
＜車載ネットワークシステムの構成＞
図１に戻り、車載ネットワークシステム２は、車両２０内に設置された各電子制御装置（ＥＣＵ３１〜４４）により構築された車載ＬＡＮ７と、車載ＬＡＮ７内の各ＥＣＵ３１〜４４からの入力データに基づき、車両２０の運行状態（運転者の操作状態，車両２０の挙動，車両２０の状態等）を示すデータを管理するゲートウェイＥＣＵ３０とから構成されている。
【００３７】
車両２０内に構築された上記車載ＬＡＮ７は、互いにプロトコルが異なる系列ネットワークからなり、具体的には、走行系ネットワーク７ａと、ボデー系ネットワーク７ｂと、情報系ネットワーク７ｃとからなる。そして、夫々のネットワーク７ａ，７ｂ，７ｃには、それぞれ共通の通信バス５ａ，５ｂ，５ｃに、各系統に対応する車両２０内の上記ＥＣＵが接続されている。
【００３８】
走行系ネットワーク７ａには、例えば、制御対象機器としてエンジンを制御するための各種機能を有するエンジンＥＣＵ３１や、ブレーキを制御するための各種機能を有するブレーキＥＣＵ３２、自動変速機を制御するための各種機能を有するＥＣＴ・ＥＣＵ３３が接続されており、これらは所謂パワートレイン系の電子制御装置である。
【００３９】
このうち、エンジンＥＣＵ３１には車速センサや、スロットル開度センサ、アクセルペダル開度センサ、燃料量センサ等が接続されており、ブレーキＥＣＵ３２にはブレーキペダル踏込センサが接続されており、ＥＣＴ・ＥＣＵ３３にはシフトレバー位置センサや、変速状態センサが接続されている。そして、これらのパワートレイン系ＥＣＵ３１〜３３は、自ＥＣＵに接続されたセンサによる検出値を他のＥＣＵと共有するデータとして通信バス５ａに定期的に送出する。
【００４０】
また、走行系ネットワーク７ａには、車両の姿勢制御および駆動制御を行うための各種機能を有するＶＳＣ・ＥＣＵ３４や、車両を先行車両に追従させる走行制御を行うための各種機能を有するＡＣＣ・ＥＣＵ３５、車両の周囲を撮像した周囲画像や照射したレーダ波の反射波に基づいて障害物との衝突危険性を判定し、その衝突危険性に応じた車両制御を行うための各種機能を有する周辺監視ＥＣＵ３６が接続されており、これらは制御対象機器をパワートレイン系ＥＣＵ３１〜３３とする所謂制御系の電子制御装置である。
【００４１】
このうち、ＶＳＣ・ＥＣＵ３４にはステアリングセンサが接続されており、ＡＣＣ・ＥＣＵ３５には加速度センサやヨーレートセンサが接続されており、周辺監視ＥＣＵ３６には画像センサやレーダセンサが接続されている。そして、これらの制御系ＥＣＵ３４〜３６は、自ＥＣＵに接続されたセンサによる検出値を他のＥＣＵと共有するデータとして通信バス５ａに定期的に送出する。
【００４２】
以下では、走行系ネットワーク７ａに区分されているパワートレイン系ＥＣＵ３１〜３３および制御系ＥＣＵ３４〜３６を走行系ＥＣＵ３１〜３６と総称する。
一方、ボデー系ネットワーク７ｂには、例えば、制御対象機器としてメータの表示制御を行うための各種機能を有するメータＥＣＵ３７や、ドアの開閉制御（ロック／アンロック制御を含む）を行うための各種機能を有するドアＥＣＵ３８、ウインドウガラスの開閉制御を行うための各種機能を有するウインドウＥＣＵ３９、エアバッグの作動制御を行うための各種機能を有するエアバッグＥＣＵ４０が接続されており、これらは所謂ボデー系の電子制御装置である。
【００４３】
例えば、メータＥＣＵ３７は、車速、エンジン回転数、変速機のシフトレンジ、ガソリンの備蓄量（燃料量）、ドアの開閉状態等、車両の各種状態を表示装置に表示するためのものである。これらの情報のうち、車速、エンジン回転数、変速機のシフトレンジ、ガソリンの備蓄量（燃料量）に関するデータは、走行系ＥＣＵ３１〜３６から通信バス５ａ、ゲートウェイＥＣＵ３０、通信バス５ｂを介して定期的に受信することになり、ドアの開閉状態に関するデータは、ウインドウＥＣＵ３９から通信バス５ｂを介して定期的に受信することになる。なお、これらのボデー系ＥＣＵ３７〜４０は、自ＥＣＵの制御対象機器の状態を示す情報を他のＥＣＵと共有するデータとして通信バス５ｂに定期的に送出し、この通信バス５ｂへのデータの送信間隔は、ゲートウェイＥＣＵ３０からの制御指令に従った送信間隔に設定されている。
【００４４】
また、ボデー系ネットワーク７ｂには、スマートキーから送信されてくる無線信号が正規のものである場合にドアをアンロックする機能を有するキーレスＥＣＵ４１や、車両状態を監視して、悪意の者が車両２０内の各機器を盗もうとしている場合に警報を発動する機能を有する盗難防止ＥＣＵ４２が接続されており、これらは制御対象機器をボデー系ＥＣＵ３７〜４０とする所謂制御系の電子制御装置である。
【００４５】
以下では、ボデー系ネットワーク７ｂに区分されているボデー系ＥＣＵ３７〜４０および制御系ＥＣＵ４１〜４２をボデー系ＥＣＵ３７〜４２と総称する。なお、ボデー系ＥＣＵ３７〜４２の一部（例えば、キーレスＥＣＵ４１や盗難防止ＥＣＵ４２）は、ゲートウェイＥＣＵ３０からの制御指令に従い、電源回路２４によって例えば自ＥＣＵの通信コントローラ２２への電源供給を停止する等して通信バス５ｃの使用を禁止するバススリープ状態に遷移するようになっている。
【００４６】
この他、情報系ネットワーク７ｃには、例えば、ナビゲーションＥＣＵ４３や、ＥＴＣ（登録商標）・ＥＣＵ４４といった、各種情報提供（情報表示、再生等）を行うマルチメディア系の電装品を制御対象機器として制御する所謂情報系の電子制御装置が接続されている。ナビゲーションＥＣＵ４３は、車両の現在位置や目的地、地図データに基づいて経路計算や経路案内を行う機能や、ユーザが望むラジオやテレビ、ＣＤやＤＶＤ等を再生する機能を有している。また、ＥＴＣ・ＥＣＵ４４は、有料道路の入出口（料金所）に設置された路側機との間で無線通信を行うことにより、約２０ｋｍ／ｈ以下の車速で料金所を通過しつつ有料道路の走行に必要な決済を行う機能を有している。
【００４７】
なお、ナビゲーションＥＣＵ４３には、例えばハードディスクやフラッシュメモリ、ＳＤメモリーカード（登録商標）等の記録装置が接続されており、この記録装置には地図データや音楽データ等の各種データが記憶されている。また、ナビゲーションＥＣＵ４３は、車両の現在位置を表す情報を他のＥＣＵと共有するデータとして通信バス５ｃに定期的に送出し、この通信バス５ｂへのデータの送信間隔は、ゲートウェイＥＣＵ３０からの制御指令に従った送信間隔に設定されている。
【００４８】
そして、これらの情報系ＥＣＵ４３〜４４は、例えば車速等の検出値を示すデータを、走行系ＥＣＵ３１〜３６から通信バス５ａ、ゲートウェイＥＣＵ３０、通信バス５ｃを介して定期的に受信することになる。なお、情報系ＥＣＵ４３〜４４の一部（例えば、ナビゲーションＥＣＵ４３）は、ゲートウェイＥＣＵ３０からの制御指令に従い、電源回路２４によって例えば自ＥＣＵの通信コントローラ２２への電源供給を停止する等して通信バス５ｃの使用を禁止するバススリープ状態に遷移するようになっている。
【００４９】
ここで、本実施形態の車載ネットワークシステム２は、少なくとも同じ系列ネットワークに属する各ＥＣＵ間で共有データ（検出データ等）を送受信できるように、通信プロトコルが予め設定されている。そして、本実施形態の車載ネットワークシステム２には、異なる系列ネットワークに属する各ＥＣＵ間で共有データを送受信できるように、データ通信を中継するゲートウェイＥＣＵ３０が設けられている。
【００５０】
＜ゲートウェイＥＣＵの構成＞
ゲートウェイＥＣＵ３０は、前述の通信端末３が接続されており、この通信端末３を用いて外部のセンタ装置１０との間で無線通信を行うことによって、センタ装置１０から送られてくる更新ファイルを受信するように構成されている。
【００５１】
また、ゲートウェイＥＣＵ３０は、各系列ネットワーク７ａ，７ｂ，７ｃに属する通信バス５ａ，５ｂ，５ｃの全てに接続されており、車載ネットワークシステム２内の共有データを全て受信することにより、車両２０の運行状態（運転者の操作状態，車両２０の挙動，車両２０の状態等）や各通信バス５ａ，５ｂ，５ｃの負荷状態を管理するように構成されている。
【００５２】
さらに、ゲートウェイＥＣＵ３０は、各ＥＣＵ３１〜４４についてＥＣＵ毎にＥＣＵプログラムを更新可能な条件（即ち、ＥＣＵプログラムの更新条件）が規定された更新条件テーブル３０ａをフラッシュメモリ２６内に有している。
【００５３】
図３に示すように、更新条件テーブル３０ａは、ＥＣＵ毎にＥＣＵプログラムの更新条件を表す車両状態が複数規定されており、基本的には、複数のＥＣＵ３１〜４４のうち、走行系ネットワーク７ａに属するＥＣＵ（走行系ＥＣＵ３１〜３６）は、車両２０が停止中（駐車時等）のときに限り、他の更新条件（停止時更新条件）を満たせばＥＣＵプログラムを更新可能とされている。一方、ボデー系ネットワーク７ｂに属するＥＣＵ（ボデー系ＥＣＵ３７〜４２）および情報系ネットワーク７ｃに属するＥＣＵ（情報系ＥＣＵ４３〜４４）は、車両が走行中であっても、他の更新条件（走行時更新条件）を満たせばＥＣＵプログラムを更新可能とされている。
【００５４】
停止時更新条件としては、例えばバッテリ６の残量が所定値以上の状態であることや、エンジンが作動状態にあること、盗難防止ＥＣＵ４２が作動状態にあること等があり、これらはＥＣＵプログラムの更新時にバッテリ６の消耗や車両２０の盗難を防止するために規定された車両状態を示す条件である。
【００５５】
走行時更新条件としては、例えば通信バス５の負荷が低負荷状態であることや、車速が低い状態であること等があり、これらは車両２０の走行中であってもＥＣＵプログラムを更新するために規定された車両状態を示す条件である。
【００５６】
以上のように、更新条件テーブル３０ａは、基本的には、車両２０に係る負荷状態（車両負荷状態）がＥＣＵプログラムを更新可能な低負荷状態であるか、ＥＣＵプログラムを更新不能な高負荷状態であるかを判定するために各種の更新条件がＥＣＵ毎に規定されている。
【００５７】
また、更新条件テーブル３０ａでは、上記の停止時更新条件および走行時更新条件の他に、車室内の温度がＥＣＵの仕様温度範囲外の状態であることや、ユーザの許可を得られていない状態であること等を禁止条件として、このような状態の場合にＥＣＵプログラムを更新しないように規定されている。
【００５８】
さらに、更新条件テーブル３０ａでは、各種の例外条件が規定されており、例えば走行系ＥＣＵ３１〜３６であってもＥＣＵプログラムの種類によっては、車両２０が走行中であっても走行時更新条件を満たせばＥＣＵプログラムの更新を許可したり、ボデー系ＥＣＵ３７〜４２および情報系ＥＣＵ４３〜４４であってもＥＣＵプログラムの種類によっては、車両２０が走行中のときのＥＣＵプログラムの更新を禁止したりしている。
【００５９】
以上のように、更新条件テーブル３０ａは、各種の更新条件をＥＣＵ毎に規定するだけでなく、禁止条件やＥＣＵプログラムの種別毎に例外条件が規定されている。
そして、ゲートウェイＥＣＵ３０のマイコン２３では、ＭＣＵ２５が、例えばＲＯＭ２７に記憶されているプログラムに基づいて、フラッシュメモリ２６に格納されている更新条件テーブル３０ａを参照し、以下の車載プログラム更新処理を実行するように構成されている。
【００６０】
＜車載プログラム更新処理＞
ここで、ゲートウェイＥＣＵ３０のマイコン２３（ＭＣＵ２５）が実行する車載プログラム更新処理について、図４のフローチャートに沿って説明する。なお、本処理は、例えば車両２０のイグニッションスイッチがオンされると開始され、イグニッションスイッチがオフされると、所定時間経過後（ＥＣＵプログラムの更新中はその更新後）に終了する。
【００６１】
図４に示すように、車載プログラム更新処理が開始されると、Ｓ１１０では、ＭＣＵ２５は、センタ装置１０から通信端末３を介して更新ファイルを受信したか否かを判断し、ここで肯定判断した場合にはＳ１２０に移行し、否定判断した場合にはそのまま待機する。なお、この更新ファイルには、更新対象となるＥＣＵプログラムおよびＥＣＵの種別を示す識別情報が付与されている。
【００６２】
Ｓ１２０では、Ｓ１１０で受信した更新ファイルに付与されている識別情報に基づいて、ＥＣＵプログラムの更新対象となるＥＣＵ（以下「対象ＥＣＵ」という）、および対象ＥＣＵにおいて更新対象となるＥＣＵプログラム（以下「対象プログラム」という）を特定し、Ｓ１３０に移行する。
【００６３】
Ｓ１３０では、Ｓ１２０で特定した対象ＥＣＵおよび対象プログラムに該当する更新条件を、フラッシュメモリ２６に格納されている更新条件テーブル３０ａから読み出し、続くＳ１４０では、車載ネットワークシステム２内の共有データ（最新の共有データ）に基づいて車両負荷状態を検出する。
【００６４】
続くＳ１５０では、Ｓ１４０で検出した車両負荷状態（即ち、現在の車両負荷状態）が、Ｓ１３０で読み出した各種の更新条件（停止時変更条件、走行時更新条件、例外条件）を満たす低負荷状態であるか否かを判断し、ここで肯定判断した場合にはＳ１７０に移行し、否定判断した場合には、現在の車両負荷状態が高負荷状態であると判断してＳ１６０に移行する。
【００６５】
例えば、ここでは、対象ＥＣＵが走行系ネットワーク７ａに属するＥＣＵ（走行系ＥＣＵ３１〜３６のいずれか）である場合には、車両２０が停止中の状態であるときに、対象ＥＣＵに対応する前述の停止時更新条件を満たせば、現在の車両負荷状態が低負荷状態であると判断する。但し、対象ＥＣＵが走行系ＥＣＵ３１〜３６のいずれかであっても、対象プログラムが前述の例外条件に該当するＥＣＵプログラムである場合には、車両２０が走行中であっても、対象プログラムに対応する前述の走行時更新条件を満たせば、現在の車両負荷状態が低負荷状態であると判断する。
【００６６】
また例えば、対象ＥＣＵがボデー系ネットワーク７ｂに属するＥＣＵ（ボデー系ＥＣＵ３７〜４２のいずれか）または情報系ネットワーク７ｃに属するＥＣＵ（情報系ＥＣＵ４３〜４４のいずれか）である場合（即ち、非走行系ＥＣＵ３７〜４４のいずれかである場合）には、車両２０が停止中の状態のときは対象ＥＣＵに対応する停止時更新条件、車両２０が走行中の状態のときは対象ＥＣＵに対応する前述の走行時更新条件を満たせば、現在の車両負荷状態が低負荷状態であると判断する。但し、車対象ＥＣＵが非走行系ＥＣＵ３７〜４４のいずれかであっても、対象プログラムが前述の例外条件に該当するＥＣＵプログラムである場合には、車両２０が走行中であるときには現在の車両負荷状態が高負荷状態であると判断する。
【００６７】
このように、更新条件テーブル３０ａを用いて、更新対象となるＥＣＵプログラムおよびＥＣＵの種別に応じて、現在の車両負荷状態が対象プログラムを更新可能な低負荷状態であるか、現在の車両負荷状態が対象プログラムを更新不能な高負荷状態であるかを判断する。
【００６８】
そして、現在の車両負荷状態が高負荷状態であると判断した場合に移行するＳ１６０では、現在の車両負荷状態を低負荷状態に変更するための環境整備制御を実行し、Ｓ１１０に戻る。
【００６９】
例えば、ここでは、車両２０が走行中であるために高負荷状態である場合には、安全な場所での車両２０の停止（または駐車）操作を促すメッセージを音声出力や画面表示によって運転者に通知するユーザ通知制御を行う。
【００７０】
また例えば、停止時更新条件を満たさないために高負荷状態である場合には、バッテリ６の残量を上げるために車両２０のエンジンを作動させたり、車両２０の盗難を防止するために盗難防止ＥＣＵ４２を作動させたりする。さらに、車両２０のライトが点灯中である場合には消灯させたり、車両２０のワイパが作動中である場合には停止させたりしてもよい。
【００７１】
また例えば、走行時更新条件を満たさないために高負荷状態である場合には、車速を予め設定された更新可能速度に低下させた状態を継続できれば対象プログラムを更新できる旨を運転者に通知するユーザ通知制御を行ったり、通信バス５の負荷状態を車両２０の走行に影響を及ぼさない範囲で低負荷状態に変更するためのバス負荷低減制御を行ったりする。
【００７２】
具体的には、バス負荷低減制御では、対象ＥＣＵがボデー系ＥＣＵ３７〜４２のいずれかである場合には、通信バス５ｂにおけるバス負荷を低減させる制御指令をボデー系ＥＣＵ３７〜４２に送信することにより、各ボデー系ＥＣＵ３７〜４２が通信バス５ｂに送出する共有データの送信間隔を予め設定された許容範囲内において長くする。また、走行系ＥＣＵ３１〜３６や情報系ＥＣＵ４３〜４４から受信した共有データをボデー系ＥＣＵ３７〜４２に中継する際に、通信バス５ｂに送出する共有データの送信間隔を許容範囲内において長くする。なお、対象ＥＣＵが情報系ＥＣＵ４３〜４４のいずれかである場合にも、同様に、各情報系ＥＣＵ４３〜４４が通信バス５ｃに送出する共有データの通信間隔を許容範囲内において長くしたり、走行系ＥＣＵ３１〜３６やボデー系ＥＣＵ３７〜４２から受信した共有データを通信バス５ｃに送出する共有データの通信間隔を許容範囲内において長くしたりする。
【００７３】
また具体的には、バス負荷低減制御では、対象ＥＣＵがボデー系ＥＣＵ３７〜４２のいずれかである場合には、必要に応じて、ボデー系ＥＣＵ３７〜４２のうち対象ＥＣＵを除く一部のＥＣＵを前述のバススリープ状態に遷移させることにより、通信バス５ｂの使用率を低下させることも行う。なお、対象ＥＣＵが情報系ＥＣＵ４３〜４４のいずれかである場合にも、必要に応じて、情報系ＥＣＵ４３〜４４のうち対象ＥＣＵを除くＥＣＵをバススリープ状態に遷移させる。
【００７４】
このように、ユーザ通知制御やバス負荷低減制御といった環境整備制御を行うことにより、現在の車両負荷状態を高負荷状態から低負荷状態に変更させるのである。
そして、現在の車両負荷状態が低負荷状態である場合に移行するＳ１７０では、前述の禁止条件がクリアされているか否かを判断し、ここで肯定判断した場合にはＳ１８０に移行し、否定判断した場合にはＳ１６０に戻る。
【００７５】
例えば、車室内の温度が対象ＥＣＵの仕様温度範囲外の状態である場合には、禁止条件をクリアさせるためにＳ１６０に戻り、環境整備制御としてエアコンの設定温度を調整することにより、車室内の温度が対象ＥＣＵの仕様温度範囲内の状態に変更させる。この場合も、換言すれば、車両負荷状態を高負荷状態から低負荷状態に変更させることになる。
【００７６】
また例えば、対象プログラムの更新に関してユーザの許可が得られていない場合には、ユーザの許可を得るためにＳ１６０に戻り、ユーザ通知制御（環境整備制御）としてユーザの許可を示す入力操作を促すための音声出力や画面表示を行うようになっている。
【００７７】
最後に、現在の車両負荷状態が低負荷状態であり、且つこのような禁止条件がクリアできた場合に移行するＳ１８０では、通信コントローラ２２を介して対象ＥＣＵに更新ファイルを送信することにより、対象ＥＣＵに更新ファイルを用いて対象プログラムを更新させ、Ｓ１１０に戻る。なお、対象プログラムの更新が正常に完了した場合には、前述の環境整備制御を解除する。さらに、対象プログラムの更新が正常に完了した場合には、その旨を前述の車両ＩＤとともに表す通知をセンタ装置１０に通信端末３を介して送信し、対象プログラムの更新を失敗した場合には、その旨や理由、対処方法等をユーザに通知してもよい。また、対象プログラムの更新を失敗した場合には、再度Ｓ１１０から同じ更新ファイルに関する同様の処理を実行することで、車両負荷状態が低負荷状態であり、且つ禁止条件がクリアできれば対象プログラムを再び更新するようにしてもよい。
【００７８】
＜効果＞
以上説明したように、本実施形態のゲートウェイＥＣＵ３０は、車載ネットワークシステム２を構成する複数のＥＣＵ３１〜４４についてＥＣＵ３１〜４４毎に、ＥＣＵプログラムが更新可能な車両負荷状態を個々に示す更新条件テーブル３０ａを有している。
【００７９】
そして、ゲートウェイＥＣＵ３０では、センタ装置１０との間で無線通信を行うことによって、このセンタ装置１０から更新ファイルを受信する場合、更新条件テーブル３０ａを用いて、現在の車両負荷状態が更新ファイルに対応するＥＣＵプログラムを更新可能な低負荷状態であるか、このＥＣＵプログラムを更新不能な高負荷状態であるかを判定する。
【００８０】
さらに、ゲートウェイＥＣＵ３０では、現在の車両負荷状態が低負荷状態であると判定した場合、センタ装置１０から受信した更新ファイルを用いて、この更新ファイルに対応するＥＣＵプログラムを更新し、現在の車両負荷状態が高負荷状態であると判定した場合、更新条件テーブル３０ａに基づき、現在の車両負荷状態を低負荷状態に変更するための環境整備制御を実行するように構成した。
【００８１】
このような構成では、プログラムの更新対象となるＥＣＵ毎にＥＣＵプログラムの更新条件を決めているため、必ずしも車両２０を駐車しなければいけないわけではなく、ＥＣＵによっては、車両２０の走行中等のようにユーザが乗車中のときにも更新条件が満たされれば、プログラムの更新を行うことが可能となり、プログラムの更新機会を増やすことができる。
【００８２】
そして、このような更新条件を車両負荷状態が高負荷状態であるときには成立しないものとしているため、例えば車両の走行に影響を及ぼすようなときにＥＣＵプログラムの更新がなされずに済み、ユーザの安全確保を行うことが可能となる。
【００８３】
また、更新条件が成立しない場合には、車両負荷状態が低負荷状態を示す環境に整備されるように制御がなされるため、ＥＣＵプログラムの更新機会をさらに増やすことが可能となる。さらに言えば、車両２０側で車両負荷状態に基づいてＥＣＵプログラムの更新可否に係る判定を行った上で、必要に応じて環境整備制御を行うため、車両負荷状態を示す情報を車両２０側からセンタ装置１０に送信せずに済むことから、不要な通信コストを抑えることが可能となる。
【００８４】
したがって、ゲートウェイＥＣＵ３０によれば、低コストで安全かつより効率的にプログラムを更新することができる。
また、更新条件テーブル３０ａには、ＥＣＵプログラムの種別毎に車両負荷状態が示されているため、同じＥＣＵに実装されたプログラムであっても、プログラム部分またはデータ部分によって細分化された更新条件が満たされれば、ＥＣＵプログラムの更新を行うことが可能となるので、ＥＣＵプログラムの更新機会をより増やすことができる。
【００８５】
また、ゲートウェイＥＣＵ３０では、例えば車両２０を停止させる等といったユーザの操作を必要とする場合には、その旨をユーザに通知する制御（ユーザ通知制御）を行い、このようなユーザの操作を必要としない車両負荷状態として、通信バス５の負荷状態を低くするバス負荷低減制御も行う。
【００８６】
このため、通信バス５の負荷状態を低くした上で更新ファイルの送信に通信バス５を使用するため、車載ネットワークシステム２の動作に影響を及ぼすことなく（ひいては車両２０の走行に影響を及ぼすことなく）、例えば車両２０の走行中であっても好適にＥＣＵプログラムを更新することができる。
【００８７】
また、バス負荷低減制御では、非走行系ＥＣＵ３７〜４４が通信バス５を介して他のＥＣＵに定期的に送信する共有データの送信間隔、および走行系ＥＣＵ３１〜３６が通信バス５を介して非走行系ＥＣＵ３７〜４４に定期的に送信する共有データの送信間隔の少なくとも一方を、予め設計された許容範囲内において長くする。
【００８８】
このため、エンジンやブレーキ等の車両構成品を制御する走行系ＥＣＵ３１〜３６から他の走行系ＥＣＵ３１〜３６に定期的に送信する情報の送信間隔を変えずに済むことから、車両２０の走行制御に直接影響を及ぼすことなく、他の情報の送信間隔を長くすることにより、好適にバス負荷を低減することができる。
【００８９】
また、バス負荷低減制御では、非走行系ＥＣＵ３７〜４４の一部が通信バス５を介して他のＥＣＵ３０〜４４に情報を送信することを禁止する。このため、エンジンやブレーキ等の車両構成品を制御する走行系ＥＣＵ３１〜３６からの情報の送信は行われることから、車両２０の走行制御に直接影響を及ぼすことなく、非走行系ＥＣＵ３７〜４４の一部をバススリープ状態にすることにより、好適にバス負荷を軽減することができる。
【００９０】
＜発明との対応関係＞
なお、本実施形態において、ゲートウェイＥＣＵ３０が車載プログラム更新装置、ゲートウェイＥＣＵ３０のフラッシュメモリ２６が記憶手段、通信端末３が更新ファイル受信手段、Ｓ１５０およびＳ１７０の処理を行うゲートウェイＥＣＵ３０のＭＰＵ２５が更新判定手段、Ｓ１８０の処理を行うゲートウェイＥＣＵ３０のＭＰＵ２５がプログラム更新手段、Ｓ１６０の処理を行うゲートウェイＥＣＵ３０のＭＰＵ２５が環境整備制御手段、走行系ＥＣＵ３１〜３６が走行系電子制御装置、非走行系ＥＣＵ３７〜４４が非走行系電子制御装置の各一例にそれぞれ相当する。
【００９１】
＜他の実施形態＞
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において、様々な態様にて実施することが可能である。
【００９２】
例えば、上記実施形態プログラム更新システム１では、センタ装置１０が車両ＩＤ毎にＥＣＵプログラムのバージョンを管理し、新たなバージョンのＥＣＵプログラムに対応する更新ファイルが用意されると、各車両２０に更新ファイルを送信するように構成されているが、これに限定されるものではなく、各車両２０のゲートウェイＥＣＵ３０がＥＣＵ３１〜４４毎にＥＣＵプログラムのバージョンを管理し、その管理しているＥＣＵプログラムのバージョンに関する情報によって更新ファイルの有無をセンタ装置１０に問い合わせる構成でもよい。
【００９３】
また、上記実施形態の車載プログラム更新処理では、必要に応じて、対象ＥＣＵを除くＥＣＵをバススリープ状態に遷移させることで、通信バス５の使用率を低下させているが、これに限定されるものではなく、例えば対象ＥＣＵを除くＥＣＵであって車両２０の走行に影響を及ぼさないＥＣＵへの電源供給を停止させることで、通信バス５の使用率およびバッテリ６の消耗を抑制させてもよい。
【００９４】
さらに言えば、上記実施形態の更新条件テーブル３０ａに規定された各種の更新条件は一例に過ぎず、これに限定されるものではなく、例えば対象ＥＣＵが周知の自己診断機能によって不具合を検出した状態のときや、車両２０内の乗員を検知した状態のときには、禁止条件をクリアできないようにしてもよいし、ＥＣＵによっては施設内の専用ツール以外によるＥＣＵプログラムの更新を禁止するようにしてもよい。
【００９５】
また、上記実施形態の車載ＬＡＮ７は、走行系ネットワーク７ａと、ボデー系ネットワーク７ｂと、情報系ネットワーク７ｃとからなり、それぞれ共通の通信バス５ａ，５ｂ，５ｃに、各系統に対応するＥＣＵが接続されているが、この構成に限定されるものではなく、例えば、全てのＥＣＵ３０〜４４が一つの通信バスに接続された構成であってもよいし、ボデー系ネットワーク７ｂおよび情報系ネットワーク７ｃ内のＥＣＵ３７〜４４が一つの通信バスに接続された構成であってもよい。
【００９６】
また、上記実施形態の車載ＬＡＮ７では、ＥＣＵ３１〜４４を、走行系ＥＣＵ３１〜３６、ボデー系ＥＣＵ３７〜４２、情報系ＥＣＵ４３〜４４のように分類しているが、このような分類に限定されるものではなく、例えば、ナビゲーションＥＣＵ４３やメータＥＣＵ３７を走行系ＥＣＵとして分類する等、各種の分類を規定することができる。
【００９７】
なお、上記実施形態のプログラム更新システム１では、車載プログラム更新装置としてゲートウェイＥＣＵ３０を例示したが、これに限定されずに、他のＥＣＵ３１〜４４および通信端末３のうち少なくとも一つを車載プログラム更新装置として機能させる構成であってもよい。
【００９８】
同様に、上記実施形態のプログラム更新システム１では、ゲートウェイＥＣＵ３０が更新条件テーブル３０ａを有しているが、これに限定されずに、他のＥＣＵ３１〜４４および通信端末３のうち少なくとも一つが更新条件テーブル３０ａを有し、車載ネットワークシステム２内の共有データ（車両データ）を監視（モニタリング）する構成であってもよい。
【符号の説明】
【００９９】
１…プログラム更新システム、２…車載ネットワークシステム、３…通信端末、５…通信バス、６…バッテリ、７…車載ＬＡＮ、７ａ…走行系ネットワーク、７ｂ…ボデー系ネットワーク、７ｃ…情報系ネットワーク、１０…センタ装置、１１…ネットワークＩ／Ｆ、１２…データベース、１３…制御部、２０…車両、２１…トランシーバ、２２…通信コントローラ、２３…マイコン、２４…電源回路、２５…ＭＰＵ、２６…フラッシュメモリ、２７…ＲＯＭ、２８…ＲＡＭ、３０…ゲートウェイＥＣＵ、３０ａ…更新条件テーブル、３１〜３６…走行系ＥＣＵ、３７〜４２…ボデー系ＥＣＵ、４３〜４４…情報系ＥＣＵ。
【図１】
2014106875.tif 000003
【図２】
2014106875.tif 000004
【図３】
2014106875.tif 000005
【図４】
2014106875.tif 000006