(57)【要約】【課題】マルチプロトコルで接続された車載電子制御装置のプログラムの書換時間の短縮を図ることができる車載電子制御装置のプログラム書換システム及び車載中継装置を提供する。【解決手段】マルチプロトコルで接続された車載電子制御装置のプログラムをオンボード状態で書換える場合に、マルチプロトコルに対応した車載中継装置２００において新プログラムと旧プログラムとの差分データを検索し、新プログラムにおける差分データをＥＣＵ１０１に送信して記憶するようにした。これにより、全てのプログラムを書換える構成に比較して、時間短縮、工数削減を達成でき、ユーザ満足、作業者満足を実現することができる。【選択図】図４
2014182571.tif 000002
【特許請求の範囲】
【請求項１】
所定のプロトコルで複数の車載電子制御装置（１０１）を通信可能に接続する車載ネットワーク装置（１００）と、プロトコルが異なる前記車載ネットワーク装置を接続する車載中継装置（２００）と、この車載中継装置へ書換対象の新プログラムを車外から供給するプログラム供給手段（３００）と、を備え、前記車載中継装置は、書換対象となる前記車載電子制御装置の記憶手段（１０１ａ）に記憶されているプログラムを前記プログラム供給手段から供給された新プログラムに更新する車載電子制御装置のプログラム書換システムであって、
前記車載中継装置は、
前記プログラム供給手段から供給された新プログラムを旧プログラムとして記憶するプログラム記憶手段（２０２ａ）と、
前記プログラム供給手段から供給された新プログラムと当該新プログラムに対応して前記プログラム記憶手段に記憶されている旧プログラムとを比較することにより新プログラムにおいて旧プログラムと異なるデータである差分データを特定する新旧プログラム比較手段（２０４）と、
前記新旧プログラム比較手段が特定した差分データを書換対象となる前記車載電子制御装置が所属する前記車載ネットワーク装置のプロトコルに変換して送信するプロトコル変換手段（２０５）と、を備え、
前記車載電子制御装置は、前記プロトコル変換手段から受信した差分データを前記記憶手段における該当領域に記憶することを特徴とする車載電子制御装置のプログラム書換システム。
【請求項２】
前記車載中継装置は、前記プログラム供給手段から書換対象となる複数の車載電子制御装置に対する複数の新プログラムが供給されたときは、書換優先度を判定し、書込優先度の高い前記車載電子制御装置から順に前記差分データを前記プロトコル変換手段により変換して順に送信するように管理する書換優先度管理手段（２０６）を備えたことを特徴とする請求項１記載の車載電子制御装置のプログラム書換システム。
【請求項３】
前記プログラム供給手段は、前記新プログラムを暗号化して送信し、
前記車載中継装置は、前記プログラム供給手段から受信した新プログラムを復号化する暗号復号手段（２０７）を備えたことを特徴とする請求項１または２記載の車載電子制御装置のプログラム書換システム。
【請求項４】
前記車載中継装置は、前記プログラム記憶手段に新プログラムを圧縮して記憶すると共に、前記プログラム記憶手段に記憶されている新プログラムを解凍する圧縮・解凍手段（２０８）を備えたことを特徴とする請求項１から３のいずれか一項に記載の車載電子制御装置のプログラム書換システム。
【請求項５】
前記車載中継装置は、前記車載電子制御装置のプログラムを更新する場合は、当該車載電子制御装置に記憶されているプログラムを読込んで記憶することで退避させるフェールセーフ処理手段を備えたことを特徴とする請求項１から４のいずれか一項に記載の車載電子制御装置のプログラム書換システム。
【請求項６】
車載中継装置は、前記新旧プログラム比較手段による比較結果からプログラムの更新を失敗した場合のリスク情報をユーザに通知するリスク情報通知手段（２１０）を備えたことを特徴とする請求項１から５のいずれか一項に記載の車載電子制御装置のプログラム書換システム。
【請求項７】
前記車載中継装置は、前記車載電子制御装置に対する前記新プログラムの更新を終了した場合は、更新結果を前記プログラム供給手段に送信し、
前記プログラム供給手段は、前記車載中継装置から受信した更新結果を蓄積して管理する更新実績管理手段（３０２）を備えたことを特徴とする請求項１から６のいずれか一項に記載の車載電子制御装置のプログラム書換システム。
【請求項８】
前記車載電子制御装置は、前記記憶手段に記憶しているユーザ好みの設定に応じて動作し、
前記車載中継装置は、ユーザによりカスタマイズされたユーザ好みの設定が設定されたときは、当該ユーザ好みの設定を書換対象の前記車載電子制御装置に送信すると共にユーザ好みの設定記憶手段（２０２ａ）に記憶し、
前記新旧プログラム比較手段は、前記ユーザ好みの設定記憶手段に記憶されている新ユーザ好みの設定と当該新設定に対応する旧ユーザ好みの設定とを比較することにより新ユーザ好みの設定において旧設定と異なるデータである差分データを特定し、
前記プロトコル変換手段は、前記新旧プログラム比較手段が特定した差分データを書換対象となる前記車載電子制御装置が所属する前記車載ネットワーク装置のプロトコルに変換して送信し、
前記車載電子制御装置は、前記プロトコル変換手段から受信した差分データを前記ユーザ好みの設定記憶手段の該当領域に記憶することを特徴とする請求項１から７のいずれか一項に記載の車載電子制御装置のプログラム書換システム。
【請求項９】
前記車載電子制御装置の前記記憶手段は、単位ブロック毎にアクセス可能であり、当該単位ブロックにはプログラム領域以外の空白部が設けられ、
前記プロトコル変換手段は、前記差分データが含まれる単位ブロックを前記車載電子制御装置に送信し、
前記車載電子制御装置は、前記プロトコル変換手段から受信した単位ブロックを前記記憶手段における該当領域に記憶することを特徴とする請求項１から８のいずれか一項に記載の車載電子制御装置のプログラム書換システム。
【請求項１０】
請求項１から９のいずれか一項に記載の車載電子制御装置のプログラム書換システムにおいて使用されることを特徴とする車載中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定のプロトコルで接続された車載電子制御装置のプログラムをオンボード状態で書換える車載電子制御装置のプログラム書換システム及び車載中継装置に関する。
【背景技術】
【０００２】
従来より、車両に搭載されたＥＣＵ（Electronic Control Unit）のプログラムを、そのプログラムが格納されたメモリをＥＣＵに搭載したままのオンボード状態で書換えることが実施されている。具体的には、ＥＣＵの書換えには、サービスツールを車両ダイアグコネクター（ＤＬＣ）に接続、或いはＥＣＵ固有のツールをＥＣＵと直接つなぎ、ＥＣＵに搭載されたフラッシュＲＯＭ内蔵マイコンのプログラムの全書換えを実施している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２７７６１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、プログラムのバグによりＥＣＵによる制御に何らかの不具合が発生することが想定される場合には、ＥＣＵのプログラムを書換える必要を生じる。車載ネットワークが搭載された車両において、このような場面を想定すると、車載通信の主流プロトコルは、ＣＡＮ（Controller Area Network）や、ＬＩＮ（Local Interconnect Network）等であり、これらのプロトコルは通信速度が遅いことから、プログラムの書換時間が長いという欠点があった。このため、不具合によるＥＣＵの書換時は、車両の販売店に来店したユーザを長く待たせてしまったり、作業者の工数増加によるコストアップが発生したりしてしまう。
【０００５】
また、量産後にプログラムの変更が起こると、実装時に予め決められたメモリの指定領域を変更する場合であっても、プログラムの全領域を書換えする必要がある。さらに、プログラムの大幅なバージョンアップによって、複数のＥＣＵのプログラムを同時に書換える場面を想定すると、一層の時間を要する。
プログラムの書換時間の短縮を実現する発明として特許文献１が提案されているが、この特許文献１は、マルチプロトコルで接続されたＥＣＵの書換えを想定していない。このため、今後、車載通信のマルチプロトコル化（Flex Ray（登録商標）、Ethernet（登録商標）等）が進むと、複数のＥＣＵの書換えにはプロトコルの数だけ書換ツールが必要となり、書換時間の長時間化が想定される。
【０００６】
本発明は上記事情に鑑みてなされたもので、その目的は、マルチプロトコルで接続された車載電子制御装置のプログラムの書換時間の短縮を図ることができる車載電子制御装置のプログラム書換システム及び車載中継装置を提供することにある。
【課題を解決するための手段】
【０００７】
本発明によれば、マルチプロトコルで電子制御装置を接続する車載中継装置において、プログラム供給手段から供給された電子制御装置の新プログラムにおいて旧プログラムと異なる差分データを特定し、その差分データを電子制御装置に記憶するようにしたので、全てのプログラムを書換える場合に比較して、時間短縮、工数削減を達成でき、ユーザ満足、作業者満足を実現することができる。しかも、車載中継装置がマルチプロトコルに対応していることから、プロトコルに対応した複数の書換ツールを用意する必要がなくなる。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施形態におけるシステムの全体構成を示すブロック図
【図２】車載中継装置を示す機能ブロック図
【図３】書換えを説明するためのＥＣＵのブロック図
【図４】情報センタ、車載中継装置、ＥＣＵ、ユーザの動作を示す流れ図
【発明を実施するための形態】
【０００９】
以下、本発明が適用されたプログラム書換システムについて、図面を参照して説明する。尚、本実施形態のプログラム書換システムは、車両に搭載された電子制御装置のプログラムをオンボード状態で書換えるものである。
図１に示すように、本実施形態のプログラム書換システムは、車両に搭載された所定のプロトコルの車載ネットワーク装置１００と、異なるプロトコルの車載ネットワーク装置１００を接続する車載中継装置２００と、この車載中継装置２００にプログラムを送信する情報センタ３００（プログラム供給手段に相当）とから構成されている。
【００１０】
車載ネットワーク装置１００は、複数のＥＣＵ１０１（車載電子制御装置に相当）と、これらのＥＣＵ１０１を接続する車載ネットワーク１０２と、ＥＣＵ１０１により制御される図示しないアクチュエータやディスプレイ等の各種機器、及び車両の情報をＥＣＵ１０１に入力させるセンサやスイッチ等から構成されている。
ＥＣＵ１０１は、制御系、情報系、ボディ系、ＡＶＣ系等に分類され、同じ系に属するＥＣＵ１０１は同じ車載ネットワーク１０２により接続されている。車載ネットワーク１０２としては、ＣＡＮ、ＭＯＳＴ（Media Oriented Systems Transport）、Ｆｌｅｘ  Ｒａｙ、Ｅｔｈｅｒｎｅｔ等である。ＣＡＮは制御系ネットワークであり、これに接続されるＥＣＵ１０１としては、エンジンＥＣＵ、ブレーキＥＣＵ、ドアロックＥＣＵ、エアコンＥＣＵ等である、ＭＯＳＴは情報系ネットワークであり、これに接続されるＥＣＵ１０１としては、ナビゲーション装置ＥＣＵ、オーディオＥＣＵ、電話ＥＣＵ等である、
尚、基幹系のメインネットワークである例えばＣＡＮに接続されたＥＣＵ１０１は、サブネットワークであるＬＩＮを介して他のＥＣＵ１０１と通信可能となっている。
【００１１】
同じ車載ネットワーク１０２に接続されたＥＣＵ１０１同士はプロトコルが同じであることから通信可能であるが、異なる車載ネットワーク１０２に接続されたＥＣＵ１０１とはプロトコルが異なるため通信することができない。このため、各車載ネットワーク１０２は車載中継装置２００に接続されている。この車載中継装置２００は、ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３を備えて構成されている。ＣＰＵ２０１がＲＯＭ２０２に記憶されたプログラムを実行することで各種機能が有効となり、その機能の一つとしてプロトコル変換手段２０５が設けられている。このプロトコル変換手段２０５により一の系に属するＥＣＵ１０１から受信したデータをプロトコル変換して他の系に属するＥＣＵ１０１に送信することにより、異なるプロトコルの車載ネットワーク１０２に接続されたＥＣＵ１０１同士が通信可能となっている。このような異なる系に属するＥＣＵ１０１同士が通信可能となる結果、一のＥＣＵ１０１が取得したデータを他のＥＣＵ１０１が使用可能になり、データの共有化を図ることができる。これにより、車載ネットワーク１０２毎に同じデータを取得するための複数のセンサ、或いはスイッチを設ける必要がなくなり、車載ネットワーク装置１００全体の構成の簡単化を図ることができる。
【００１２】
車載中継装置２００には、ＣＰＵ２０１がＲＯＭ２０２に記憶されたプログラムを実行することで実施される機能として、上記したプロトコル変換手段２０５の他、新旧プログラム比較手段２０４、書換優先度管理手段２０６、暗号復号手段２０７、圧縮・解凍手段２０８、フェールセーフ処理手段２０９、リスク情報通知手段２１０が設けられている。
【００１３】
図２に示すように、車載中継装置２００は、プロトコルが異なる複数の車載ネットワーク装置１００を接続する機能として中継機能部２１３を備えていると共に、プログラムの書換機能を実現する機能としてデータ蓄積機能部２１４を備えている。中継機能部２１３は、ＲｘＭＢ（受信用メモリブロック）２１３ａ、ＲＡＭバッファ２１３ｂ、ＴｘＭＢ（送信用メモリブロック）２１３ｃから構成されており、ＴｘＭＢ２１３ｃにおいてプロトコルが変換される。データ蓄積機能部２１４は、暗号処理部２１４ａ、データ記憶部２１４ｂ、データ生成部２１４ｃを備えて構成されている。暗号処理部２１４ａは、公開鍵により暗号化されたデータを復号する処理を実施する。データ記憶部２１４ｂは、暗号処理部２１４ａにより復号された新プログラムを圧縮した状態で蓄積して記憶する。データ生成部２１４ｃは、データ記憶部２１４ｂに記憶されている新プログラムと当該新プログラムに対応する旧プログラムを解凍し、両者を比較することでデータが異なる差分データを検索し、新プログラムにおける差分データをＴｘＭＢ２１３ｃに出力する。ＴｘＭＢ２１３ｃでは、入力したデータを送信先の書換対象のＥＣＵ１０１が所属するネットワークのプロトコルに変換して送信する。
【００１４】
図３に示すように、車載中継装置２００は、大規模メモリとしてフラッシュＲＯＭ２０２ａ（プログラム記憶手段、ユーザ好みの設定記憶手段に相当）を有しており、そのフラッシュＲＯＭ２０２ａに、情報センタ３００から受信した新プログラムを圧縮して旧プログラムとして蓄積記憶する。一方、ＥＣＵ１０１もフラッシュＲＯＭ１０１ａ（記憶手段に相当）を有している。フラッシュＲＯＭ１０１ａは書換対象領域と非書換領域とに区分けされており、書換対象領域に旧プログラムが記憶されている。非書換領域にはＢｏｏｔ領域が設定されており、そのＢｏｏｔ領域に、ＣＰＵ２０１がプログラムを読込可能とするためのブートプログラムが記憶されている。このブートプログラムは部分書換機能を有しており、その部分書換機能により旧プログラムの一部を新プログラムに書換える書換処理を実行することができる。
【００１５】
一方、小規模メモリであるＥＥＰＲＯＭ１０１ｂにはユーザ好みの設定が記憶されている。ユーザ好みとは、例えば複数のユーザが１台の車両をシェアする場面を想定すると、車載中継装置２００にユーザ好みの設定を記憶しておき、ユーザが車載中継装置２００から好みの設定を呼出す機能である。車載中継装置２００は、呼出されたユーザ好みをＥＣＵ１０１に設定するもので、ＥＣＵ１０１がユーザ好みに応じて動作することで、それぞれのユーザが好みの設定で１台の車両を使用することが可能となり、ユーザが受けるストレスを低減することができる。
【００１６】
ユーザ好みの具体的な使用例としては、シートポジション、ステアリングポジション、ミラーポジションなどが代表例であるが、例えばリモコンキーに対する操作によりライトを点滅させることで駐車位置をユーザに通知する設定を追加したり、ドアの開閉、特定のスイッチ操作などにより車両をアンサーバックや吹鳴装置として使用することを可能としたり、メータの表示仕様を変更したりすることが考えられる。このようなユーザ好みを設定することで、ユーザが好む趣向に応じて車両の動作を独自にアレンジすることが可能となる。このような設定は、車載中継装置２００に予め設定されている設定を呼び出してＯＮ／ＯＦＦしたり、複数の設定の中から任意の設定を選択したりすることで行われる。
【００１７】
図１に示す情報センタ３００は、車両製造会社自身或いは車両製造会社から委託された業者が運営するもので、車両製造会社が製造した車両に搭載されたＥＣＵ１０１に記憶されたプログラムを車両毎に管理するサーバを備えている。このサーバには、車両毎のＥＣＵ１０１のプログラムの更新履歴を管理するデータベース（ＤＢ）が設けられている。つまり、ＥＣＵ１０１のプログラムを更新した場合は、更新したプログラムを車両に対応して蓄積記憶する更新プログラム管理ＤＢ３０１が設けられている。また、ＥＣＵ１０１のプログラムを更新した際に車両からの応答により書換えの成否を累積記憶する更新実績管理ＤＢ３０２（更新実績管理手段に相当）が設けられている。情報センタ３００は、車両に搭載された車載中継装置２００毎に宛先情報（例えばＩＰ）を記憶しており、特定車種に搭載された特定のＥＣＵ１０１のプログラムを更新する場合は、新プログラムを圧縮した状態で暗号化して車載中継装置２００に携帯電話回線網４００を通じて送信する。
車載中継装置２００は基地局４０１と無線接続可能な通信機２１２を備えており、情報センタ３００から新プログラムを受信したときは、後述するようにして書換対象のＥＣＵ１０１に記憶されている旧プログラムを新プログラムに更新する。
【００１８】
次に上記構成の作用について説明する。
車両に搭載された特定のＥＣＵ１０１に記憶されたプログラムに例えばバグが発見され、そのプログラムをバグが修正された新プログラムに更新する場合は、情報センタ３００において、新プログラムを圧縮し、さらに公開鍵暗号化方式の公開鍵で暗号化する。公開鍵は、書換対象となる車載中継装置２００が予めメモリに記憶している秘密鍵のペアとなるように作成されたものである。つまり、情報センタ３００には、各車載中継装置２００に対応した交換鍵を記憶しており、特定の車載中継装置２００に新プログラムを送信する場合は、新プログラムを圧縮した状態で交換鍵により暗号化する。このようにＥＣＵ１０１のプログラムを更新する場合は、同一車種の多数の車両に搭載されたＥＣＵ１０１のプログラムを一斉に修正する必要があることから、新プログラムを圧縮した状態でそれぞれの車載中継装置２００に対応した公開鍵で暗号化して一斉送信する。また、書換対象のＥＣＵ１０１が複数存在する場合は、複数の新プログラムを圧縮した状態で公開鍵により暗号化して送信することになる。
【００１９】
情報センタ３００は、ＥＣＵ１０１のプログラムを更新する場合は、図４に示すように書換対象となるＥＣＵ１０１が搭載された車両の車載中継装置２００に書換通知する。この書換通知には、新プログラム及び書換対象となるＥＣＵ１０１を特定可能な情報が含まれている。
車載中継装置２００は、情報センタ３００からの書換通知を受信すると、受信情報を暗号復号手段２０７により自己が保有する秘密鍵を用いて復号化してから、圧縮・解凍手段２０８により解凍することにより新プログラムを取得する。このとき、書換対象となるＥＣＵ１０１に対する前回のプログラム更新時に圧縮して蓄積記憶していた旧プログラム及び旧ユーザ好みの設定を解凍する。これにより、車載中継装置２００は、ＥＣＵ１０１に対する新プログラムと現在ＥＣＵ１０１に記憶されている旧プログラムの両方を保有することになるので、それらのプログラムの差分比較を実施する。つまり、新プログラムと旧プログラムとを単位ブロック毎に比較して異なるデータである差分データを検索し、新プログラムにおける差分データを書換対象と判断するのである。この場合、フラッシュＲＯＭの消去、或いは書込などのアクセスは単位ブロックで行われることから、新プログラムにおいて差分データが含まれる単位ブロックをＥＣＵ１０１に送信することになる。
【００２０】
ここで、単位ブロックにはプログラム領域以外となる空白部が設けられている。これは、単位ブロックに空白部を設けることで、単位ブロックにおけるプログラム領域が増大するような場合であっても、その増大分を空白部により吸収することが可能となる。また、差分データが複数の単位ブロックに分散しているときは、単位ブロックずつ順に書換えを実施することで、分散した差分データの書換えが可能となる。さらに、空白部は、以上のような単純な差分リプログ以外の新機能追加、つまり差分となる新機能ロジック実装やバグ修正が可能となる特長をもつ。
【００２１】
車載中継装置２００は、次に書換優先度管理手段２０６により書換順序を確認・決定する。この書換順序の確認・決定は、書換対象となるＥＣＵ１０１が複数の場合に、書換対象のＥＣＵ１０１として制御系のＥＣＵ１０１が含まれているか否かを確認し、制御系のＥＣＵ１０１が含まれている場合には、制御系のＥＣＵ１０１のプログラムを他の系のＥＣＵ１０１よりも優先的に書換えるように書換順序を決定するものである。つまり、車両の走る、止まる、曲がる等の走行に関わる制御系に関する動作は特に重要であることから、制御系のＥＣＵ１０１のプログラムを優先的に更新することにより車両の制御に支障を生じないようにしているのである。
【００２２】
車載中継装置２００は、次にフェールセーフ処理手段２０９によりフェールセーフ処理を実行する。このフェールセーフ処理は、フェールセーフ処理手段２０９によりＥＣＵ１０１に記憶されているプログラム及びユーザ好みの設定を車載中継装置２００の退避用のＲＡＭ２０３に記憶するものである。つまり、新プログラムへの書換失敗時に、車載中継装置２００に退避しているプログラム及びユーザ好みの設定をＥＣＵ１０１に戻すことで、ＥＣＵ１０１のプログラム及びユーザ好みの設定を復帰することができる。
【００２３】
車載中継装置２００は、次にリスク情報通知手段２１０によりユーザ通知判断を行う。このユーザ通知判断は、書換通知が示す書換対象となるＥＣＵ１０１を特定し、当該ＥＣＵ１０１のプログラムを更新した場合に想定されるリスク情報をユーザに対して通知するものである。リスク情報としては、新プログラムの更新が正常に終了しない場合に利用不可となる車両機能に関するものである。車両機能としては、走行、旋回、停止等の車両の基本機能の他、車両装備に関する機能、さらにはプログラムの更新が失敗した場合における対応に関する情報が含まれる。具体的には、プログラムの更新が失敗した場合のリスクの大きさに応じて、ディーラへの入庫を指示したり、再プログラムの実行を指示したり、再プログラムに要する総時間を通知したりする等である。
【００２４】
ユーザは、ユーザ通知判断が示すリスクを判断して書換えを許可するかを決定する。車載中継装置２００は、ユーザが書換えを許可した場合、上述のようにして決められた書換順序に従い、プロトコル変換手段２０５により差分データの書換処理を実行する。この場合、制御系の車載ネットワーク１０２のバス負荷が例えば２０％以上であれば、書換時間が長くなると判断し、他の車載ネットワーク１０２に接続されたＥＣＵ１０１のプログラムから書換える。これにより、書換対象となるＥＣＵ１０１が複数存在する場合であっても、プログラム全体の書換えを効率よく行うことができ、全体の書換時間の短縮を図ることができる。
【００２５】
一方、ＥＣＵ１０１は、ユーザがカスタマイズした動作を実行するように構成されている。つまり、ＥＣＵ１０１のＣＰＵ１０１ｄは、図３に示すようにＥＥＰＲＯＭ１０１ｂに記憶されているユーザ好みの設定に基づいて制御対象をユーザが好むように制御する機能を有する。
本実施形態では、上述したプログラムの差分データ書換機能をユーザの好み設定にも適用するものである。つまり、車載中継装置２００は、フラッシュＲＯＭ２０２ａにユーザにより設定されたユーザ好みの設定を圧縮して記憶している。そして、ユーザが車両の動作をユーザ好みの設定によりカスタマイズした場合は、新旧プログラム比較手段２０４により今回行われた新ユーザ好みの設定とフラッシュＲＯＭに記憶している旧ユーザ好みの設定とを比較することにより差分データを検索し、新ユーザ好みの設定における差分データをＥＣＵ１０１に送信する。これにより、ＥＣＵ１０１が受信した差分データをＥＥＰＲＯＭ１０１ｂの該当するメモリ領域に記憶することでユーザ好みの設定を更新することができる。この場合、ユーザ好みの設定は、予め設定された動作項目をＯＮ／ＯＦＦしたり、複数の設定のうちから所望の設定を選択したりするという単純なデータの変更であるから、プログラムを更新する場合のように差分データのアドレスが変動することはない。このような事情から、ＥＣＵ１０１がユーザ好みの設定を記憶するメモリとしてメモリアドレス単位で書換可能なＥＥＰＲＯＭ１０１ｂが採用されている。このようなユーザ好みの設定に関しても、差分データの書換えを行うことで、書換時間の短縮が可能となる。
【００２６】
以上のような書換えを実施することにより、ＥＣＵ１０１のプログラムを更新する場合は、単位ブロックの書換えのみで済むことから、プログラム全体を更新する場合に比較して、書換時間の大幅な時間短縮を図ることができる。また、新ユーザ好みの設定と旧ユーザ好みの設定とは設定毎に記憶されるアドレスが同一であることから、アドレス管理処理が不要であり、この点でも書換時間の時間短縮を図ることができる。
【００２７】
車載中継装置２００は、書換えが終了したときは、そのことをユーザに通知する。プログラムが更新されたＥＣＵ１０１の動作が正常であることをユーザが確認したときは、圧縮・解凍手段２０８により新プログラムを圧縮してフラッシュＲＯＭ２０２ａに記憶する。
次に車載中継装置２００は、書換終了を情報センタ３００に通知する。このとき、書換えを失敗したときは、書換失敗を情報センタ３００に送信する。
情報センタ３００は、車載中継装置２００から書換終了（書換失敗）の通知を受信したときは、更新履歴を更新実績管理ＤＢ３０２に保持する。したがって、更新実績管理ＤＢ３０２に複数回の書換えが失敗したことが記憶されている場合には、更新履歴を追跡することで、不具合の発生原因を追究して対応することが可能となる。このように上述したような複数のフェールセーフ処理を行うことで、書込時に発生する不具合を防止することができる。
【００２８】
以上のような本実施形態によれば、次のような効果を奏することができる。
マルチプロトコルで接続されたＥＣＵ１０１のプログラムをオンボード状態で書換える場合に、マルチプロトコルに対応した車載中継装置２００において新プログラムと旧プログラムとを比較することにより差分データを検索し、新プログラムにおける差分データをＥＣＵ１０１に送信して記憶するようにしたので、全てのプログラムを書換える構成に比較して、時間短縮、工数削減を達成でき、ユーザ満足、作業者満足を実現することができる。しかも、車載中継装置２００がマルチプロトコルに対応していることから、プロトコルに対応した複数の書換ツールを用意する必要がなくなり、構成の簡単化を図ることができる。
【００２９】
車載中継装置２００は、複数のＥＣＵ１０１のプログラムを更新する場合は、書換優先度を判定し、書換優先度の高いＥＣＵ１０１から差分データをプロトコル変換して順に送信するので、重要性の高い制御系に属するＥＣＵ１０１のプログラムを優先的に更新することができる。
情報センタ３００は新プログラムを圧縮した状態で公開鍵により暗号化して送信し、車載中継装置２００は、受信した新プログラムを秘密鍵で復号化してから解凍するので、新プログラムを公衆回線網である携帯電話回線網４００を介して送受信するにしても、暗号化により新プログラムが外部の第３者に漏洩してしまうことを防止できると共に、圧縮により新プログラムの容量の低減を図ることができる。
【００３０】
車載中継装置２００は、ＥＣＵ１０１のプログラムを更新した場合に想定される書換時のリスク情報をユーザに対して通知するようにしたので、ユーザは、プログラムの更新を失敗した場合であっても事前に通知されたリスクにより対処することが可能となる。
ＥＣＵ１０１に対するプログラムの更新結果を情報センタ３００に送信し、情報センタ３００の更新実績管理ＤＢ３０２において更新結果を更新実績管理ＤＢに蓄積して記憶するようにしたので、プログラムの更新を連続して失敗した場合は、更新を失敗した内容を解析することにより適切に対処することが可能となる。
【００３１】
ユーザ好みの設定に関しても、上述したプログラムの更新と同様に、新ユーザ好みの設定と旧ユーザ好みの設定とを比較して差分データを検索し、新ユーザ好みの設定における差分データをＥＣＵ１０１に送信して記憶するようにしたので、ユーザ好みの設定を全て書換える構成に比較して、書換時間の短縮を図ることができる。
車載中継装置２００は、ＥＣＵ１０１のプログラム或いはユーザ好みの設定を更新する場合は、ＥＣＵ１０１に記憶されているプログラム及びユーザ好みの設定をＲＡＭ２０３に一時的に記憶して退避させるようにしたので、新プログラムへの書換失敗時に、ＥＣＵ１０１にプログラム及びユーザ好みの設定を復帰させることが可能となる。
【００３２】
それぞれのＥＣＵ１０１は、機能単位ブロックごとに部分リプログできるように、プログラムのメモリ配置をあらかじめブロック単位で分割設定しておき、各ブロックには、所定領域の空白部が残るようにした。空白部は、新機能ロジック実装やバグ修正が可能なようにしている特長をもつ。これにより、中継装置２００が差分リプログする際、単純な差分リプログ以外の新機能追加も高速にリプログできることが可能となる。一方、車載中継装置２００によりプログラムをＥＣＵ１０１のフラッシュＲＯＭ１０１ａの単位ブロックで更新する場合は、差分データの増大分を空白部により吸収することができるので、フラッシュＲＯＭ１０１ａに記憶されているプログラムを確実に書換えることができる。
【００３３】
（その他の実施形態）
本発明は、上記実施形態に限定されることなく、次のように変形または拡張したり、各変形例を上記実施形態と組合せたり、各変形例を組合せるようにしてもよい。
新プログラムを情報センタ３００から車載中継装置２００に無線で送信するようにしたが、情報センタ３００から販売店のサービスツールに送信し、車載中継装置２００にサービスツールを接続することにより新プログラムを供給するようにしてもよい。また、ユーザが携帯する携帯電話機に新プログラムを送信し、携帯電話機から車載中継装置２００に例えばBluetooth（登録商標）により供給するようにしてもよい。
ＥＣＵ１０１のプログラムの書換えを車両の停車時に行うようにしてもよい。
車載中継装置２００の機能を例えばカーナビゲーション装置に持たせるように構成してもよい。
【符号の説明】
【００３４】
図面中、１００は車載ネットワーク装置、２００は車載中継装置、３００は情報センタ（プログラム供給手段）、１０１はＥＣＵ（車載電子制御装置）、１０１ａはフラッシュＲＯＭ（記憶手段）、２０２ａはフラッシュＲＯＭ（プログラム記憶手段、ユーザ好みの設定記憶手段）、２０４は新旧プログラム比較手段、２０５はプロトコル変換手段、２０６は書換優先度管理手段、２０７は暗号復号手段、２０８は圧縮・解凍手段、２０９はフェールセーフ処理手段、２１０はリスク情報通知手段、３０２は更新実績管理ＤＢ（更新実績管理手段）である。
【図１】
2014182571.tif 000003
【図２】
2014182571.tif 000004
【図３】
2014182571.tif 000005
【図４】
2014182571.tif 000006