(57)【要約】【課題】車両に搭載される電子制御装置のプログラムの更新に用いられる更新データを、車両に配信するプログラム更新システムにおいて、車両に配信される不要な更新データを低減させる。【解決手段】プログラム更新システムは車両と管理装置とを含み、車両は、電子制御装置から状態情報を取得する状態情報取得部と、状態情報を含む車両情報を管理装置に送信する車両情報送信部と、を有し、管理装置は、更新データを適用する条件を示す情報と車両から受信する車両情報とを用いて、車両に配信する更新データを選択する更新データ選択部と、更新データ選択部が選択する更新データを車両に配信する更新データ配信部と、を有し、更新データ選択部は、更新データのうち、車両情報に含まれる所定の機能の設定状態又は各機器の状態が、更新データを適用する条件を満たさない更新データを車両に配信する更新データから除外する。【選択図】図１
2018090176.tif 000002
【特許請求の範囲】
【請求項１】
所定の機能を制御する電子制御装置を有する車両と、前記電子制御装置のプログラムの更新に用いられる更新データを前記車両に配信する管理装置と、を含むプログラム更新システムであって、
前記車両は、
前記電子制御装置から、前記所定の機能の設定状態、及び／又は前記所定の機能を実現する各機器の状態を示す情報を取得する状態情報取得部と、
前記状態情報取得部が取得した情報を含む車両情報を前記管理装置に送信する車両情報送信部と、
を有し、
前記管理装置は、
前記更新データを適用する条件を示す情報と、前記車両から受信する前記車両情報とを用いて、前記車両に配信する更新データを選択する更新データ選択部と、
前記更新データ選択部が選択する前記更新データを、前記車両に配信する更新データ配信部と、
を有し、
前記更新データ選択部は、前記更新データのうち、前記車両情報に含まれる前記所定の機能の設定状態又は前記各機器の状態が、前記更新データを適用する条件を満たさない更新データを、前記車両に配信する更新データから除外する、プログラム更新システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム更新システムに関する。
【背景技術】
【０００２】
車両に搭載される電子制御装置（ＥＣＵ：Electronic Control System）のプログラムの更新に用いられる更新データを、車両に配信するプログラム更新システムが知られている。
【０００３】
例えば、車両ＩＤ毎にプログラムのバージョン情報を管理し、車両から送信される車両ＩＤに基づいて更新ファイルが用意されていると判断した場合に、車両に更新ファイルを配信するプログラム更新システムが知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−１４８３９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
自動車等の車両では、同じ形式の車両であっても、オプション装備の違い等により、電子制御装置の構成が異なる場合がある。また、ユーザによる設定や、所定の機能を実現するセンサ、アクチュエータ等の機器の故障等により、所定の機能が無効になっている場合もある。
【０００６】
しかし、特許文献１に開示されたプログラム更新システムでは、車両ＩＤに応じて更新データを車両に配信するので、電子制御装置が制御する所定の機能が、設定や故障等により無効になっている場合でも、不要な更新データが車両に配信されるという問題がある。
【０００７】
本発明の実施の形態は、上記の問題点に鑑みてなされたものであって、車両に搭載される電子制御装置のプログラムの更新に用いられる更新データを、車両に配信するプログラム更新システムにおいて、車両に配信される不要な更新データを低減させる。
【課題を解決するための手段】
【０００８】
上記の課題を解決するため、本発明の一実施形態に係るプログラム更新システムは、所定の機能を制御する電子制御装置を有する車両と、前記電子制御装置のプログラムの更新に用いられる更新データを前記車両に配信する管理装置と、を含むプログラム更新システムであって、
前記車両は、前記電子制御装置から、前記所定の機能の設定状態、及び／又は前記所定の機能を実現する各機器の状態を示す情報を取得する状態情報取得部と、前記状態情報取得部が取得した情報を含む車両情報を前記管理装置に送信する車両情報送信部と、を有し、
前記管理装置は、前記更新データを適用する条件を示す情報と、前記車両から受信する前記車両情報とを用いて、前記車両に配信する更新データを選択する更新データ選択部と、前記更新データ選択部が選択する前記更新データを、前記車両に配信する更新データ配信部と、を有し、
前記更新データ選択部は、前記更新データのうち、前記車両情報に含まれる前記所定の機能の設定状態又は前記各機器の状態が、前記更新データを適用する条件を満たさない更新データを、前記車両に配信する更新データから除外する。
【０００９】
上記の構成により、車両は、電子制御装置が制御する所定の機能の設定状態、及び／又は前記所定の機能を実現する各機器（センサ、アクチュエータ等）の状態を含む車両情報を、管理装置に送信する。
【００１０】
また、管理装置は、車両情報に含まれる所定の機能の設定状態又は各機器の状態が、更新データを適用する条件を満たさない更新データを、車両に配信する更新データから除外する。
【００１１】
これにより、本実施形態に係る管理装置は、例えば、ユーザの設定や各機器の故障等により車両の状態が変化した場合でも、更新が不要な更新データを判断し、車両に配信される不要な更新データを低減させることができる。
【発明の効果】
【００１２】
本発明の実施の形態によれば、車両に搭載される電子制御装置のプログラムの更新に用いられる更新データを、車両に配信するプログラム更新システムにおいて、車両に配信される不要な更新データを低減させることができる。
【図面の簡単な説明】
【００１３】
【図１】一実施形態に係るプログラム更新システムのシステム構成の例を示すブロック図である。
【図２】一実施形態に係る更新データ、構成情報、及び車両情報の例を示す図である。
【図３】一実施形態に係る管理装置の処理の例を示すフローチャートである。
【図４】一実施形態に係る管理ＥＣＵの処理の例を示すフローチャートである。
【図５】一実施形態に係るＥＣＵの処理の例を示すフローチャートである。
【図６】一実施形態に係るプログラム更新システムの処理の例を示すシーケンス図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照して発明を実施するための形態について説明する。
【００１５】
＜システム構成＞
図１は、一実施形態に係るプログラム更新システムのシステム構成の例を示すブロック図である。プログラム更新システム１は、所定の機能を制御する１つ以上のＥＣＵ（Electronic Control System）２２を有する自動車等の車両２０と、ＥＣＵ２２のプログラムの更新に用いられる更新データを車両２０に配信する管理装置１０とを含む。
【００１６】
管理装置１０は、通信装置１６を用いて１台以上の車両２０と無線通信３０によるデータの送受信が可能である。また、車両２０は、通信装置２４を用いて管理装置１０と無線通信３０によるデータの送受信が可能である。
【００１７】
（車両の構成）
車両２０は、例えば、車両制御系、ボディー系、マルチメディア系等の所定の機能を制御する１つ以上のＥＣＵ２２と、各ＥＣＵ２２によって制御される１つ以上のセンサ、アクチュエータ２３と、各ＥＣＵ２２と通信可能に接続される管理ＥＣＵ２１と、を有する。
【００１８】
管理ＥＣＵ２１は、例えば、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Read Only Memory）、フラッシュＲＯＭ（Read Only Memory）、及び通信インタフェース等を有し、複数の通信プロトコルに対応するマルチプロトコルゲートウェイ等の電子制御装置である。管理ＥＣＵ２１は、１つ以上のＥＣＵ２２と所定の通信プロトコルを用いて通信が可能であるとともに、通信装置２４を用いて、管理装置１０と無線通信３０による通信が可能である。
【００１９】
管理ＥＣＵ２１は、例えば、フラッシュＲＯＭ等に格納されたプログラムをＣＰＵで実行することにより、状態情報取得部２１１、車両情報送信部２１２、及び更新制御部２１３等を実現している。
【００２０】
状態情報取得部２１１は、車両２０に搭載されている各ＥＣＵ２２から、各ＥＣＵ２２が制御する所定の機能の設定状態（例えば、オン／オフの設定等）、及び所定の機能を実現するための各機器（センサ、アクチュエータ２３）の状態を示す状態情報を取得する。例えば、状態情報取得部２１１は、各ＥＣＵ２２に、状態情報の取得を要求する取得要求を送信し、各ＥＣＵ２２から送信される状態情報を収集する。
【００２１】
車両情報送信部２１２は、状態情報取得部２１１が各ＥＣＵ２２から収集した情報を含む車両情報４０を作成し、作成した車両情報４０を、通信装置２４を用いて管理装置１０に送信する。なお、車両情報４０の例については、図２を用いて後述する。
【００２２】
更新制御部２１３は、管理装置１０から送信される、ＥＣＵ２２のプログラムの更新に用いられる更新データ５０に基づいて、ＥＣＵ２２のプログラムの更新を制御する。例えば、更新制御部２１３は、管理装置１０からＥＣＵ２２のプログラムを更新するための更新データ５０を受信すると、更新データ５０の更新対象となるＥＣＵ２２にプログラムの更新を指示する。また、更新制御部２１３は、プログラムの更新を指示したＥＣＵ２２から、プログラムの更新が完了したことを示す更新完了通知を受け付けると、受け付けた更新完了通知を、通信装置２４を用いて管理装置１０に通知する。
【００２３】
ＥＣＵ（電子制御装置）２２は、例えば、ＣＰＵ、ＲＡＭ、フラッシュＲＯＭ、通信インタフェース、及びセンサ、アクチュエータ２３を制御する制御インタフェース等を有する。ＥＣＵ２２は、例えば、フラッシュＲＯＭ等に格納されたプログラムをＣＰＵで実行することにより、センサ、アクチュエータ２３を制御し、所定の機能を実現する。
【００２４】
また、本実施形態に係るＥＣＵ２２は、例えば、フラッシュＲＯＭ等に格納されたプログラムをＣＰＵで実行することにより、状態確認部２２１、及び更新部２２２を実現している。
【００２５】
状態確認部２２１は、管理ＥＣＵ２１から、状態情報の取得を要求する取得要求を受け付けると、ＥＣＵ２２が制御する所定の機能の設定状態（例えば、オン／オフの設定等）を取得する。また、状態確認部２２１は、ＥＣＵ２２の制御下にあるセンサ、アクチュエータ２３の動作確認を行い、センサ、アクチュエータ２３の状態（例えば、有／無、正常／故障等の状態）を取得する。さらに、状態確認部２２１は、取得した所定の機能の設定状態、及び／又はセンサ、アクチュエータ２３の状態を示す状態情報を、管理ＥＣＵ２１に通知する。
【００２６】
更新部２２２は、管理ＥＣＵ２１から、プログラムの更新指示を受信すると、更新指示に従ってＥＣＵ２２のプログラムを更新（リプログラム）する。
【００２７】
センサ、アクチュエータ２３は、ＥＣＵ２２が所定の機能を実現するための情報を取得するセンサや、ＥＣＵ２２からの制御信号に従って動作する各種の作動装置等の機器を含む。
【００２８】
上記の構成により、車両２０は、各ＥＣＵ２２が制御する所定の機能の設定状態、及び／又は前記所定の機能を実現するためのセンサ、アクチュエータ２３の状態を示す情報を取得し、取得した情報を含む車両情報４０を管理装置に送信する。
【００２９】
（管理装置の構成）
管理装置１０は、一般的なコンピュータの構成を有しており、例えば、ＣＰＵ、ＲＡＭ、ＲＯＭ、ストレージ装置、及び通信インタフェース等を有する。管理装置１０は、例えば、ストレージ装置等に記憶したプログラムをＣＰＵで実行することにより、車両情報管理部１１、更新データ選択部１２、更新データ配信部１３、更新データＤＢ（Database）１４、及び構成情報ＤＢ１５等を実現している。
【００３０】
車両情報管理部１１は、管理装置１０の管理対象となる１台以上の車両２０の車両情報４０を管理する。例えば、車両情報管理部１１は、車両２０に車両情報の取得を要求する要求情報を送信し、車両２０から返信される車両情報４０を、ストレージ装置等に記憶して管理する。
【００３１】
更新データ選択部１２は、ＥＣＵ２２のプログラムを更新する更新データを適用する条件を示す構成情報と、車両２０から受信する車両情報４０とを用いて、更新データＤＢ１４に格納された更新データの中から、車両２０に配信する更新データを選択する。例えば、更新データ選択部１２は、更新データのうち、車両情報４０に含まれる所定の機能の設定状態又は所定の機能を実現するための各機器の状態が、構成情報が示す条件を満たさない更新データを、車両２０に配信する更新データから除外する。
【００３２】
ここで、更新データＤＢ１４に格納されている更新データ、構成情報ＤＢ１５に格納されている構成情報、及び車両２０から管理装置１０に送信される車両情報４０の例について説明する。
【００３３】
図２は、一実施形態に係る更新データ、構成情報、及び車両情報の例を示す図である。
【００３４】
（更新データ）
図２に示すように、更新データＤＢ１４には、複数の更新データ２０１−１、２０１−２、２０１−３、・・・が記憶されている。なお、以下の説明の中で、複数の更新データ２０１−１、２０１−２、２０１−３、・・・のうち、任意の更新データを示す場合、「更新データ２０１」を用いる。
【００３５】
更新データ２０１には、例えば、「ＩＤ」、「リプログラムデータ」、及び「構成情報」等の情報が含まれる。
【００３６】
「ＩＤ」の情報は、更新データ２０１を識別するための識別情報（以下、更新データＩＤと呼ぶ）である。
【００３７】
「リプログラムデータ」の情報は、ＥＣＵ２２のプログラムの更新（リプログラム）を行うためのデータである。
【００３８】
「構成情報」の情報は、更新データ２０１を適用するための条件を示す構成情報を示す情報である。
【００３９】
例えば、図２において、更新データ２０１−１の更新データＩＤは「Ａ１」であり、更新データ２０１−１を適用するための条件を示す構成情報は「Ｂ１」であることが示されている。また、更新データ２０１−１には、「プリクラッシュセーフティ」の機能を実現するプログラムを更新（リプログラム）するためのリプログラムデータが含まれている。
【００４０】
同様に、図２において、更新データ２０１−２の更新データＩＤは「Ａ２」であり、更新データ２０１−２を適用するための条件を示す構成情報は「Ｂ２」であることが示されている。また、更新データ２０１−２には、「レーンキーピングアシスト」の機能を実現するプログラムを更新（リプログラム）するためのリプログラムデータが含まれている。
【００４１】
（構成情報）
図２に示すように、構成情報ＤＢ１５には、複数の構成情報２０２−１、２０２−２、・・・が記憶されている。なお、以下の説明の中で、複数の構成情報２０２−１、２０２−２、・・・のうち、任意の構成情報を示す場合「構成情報２０２」を用いる。
【００４２】
構成情報２０２には、例えば、「ＩＤ」、「項目」、及び「条件」等の情報が含まれる。
【００４３】
「ＩＤ」の情報は、構成情報を識別するための識別情報（以下、構成情報ＩＤと呼ぶ）である。この構成情報ＩＤは、更新データ２０１の「構成情報」の情報に対応しており、この構成情報ＩＤを用いて、更新データ２０１に対応する構成情報２０２を特定することができる。例えば、図２において、更新データ２０１−１の「構成情報」はＢ１なので、更新データ２０１−１に対応する構成情報２０２は、構成情報ＩＤがＢ１の構成情報２０２−１であると特定することができる。
【００４４】
「項目」の情報には、例えば、更新データ２０１に対応する機能を実現するためのセンサ、アクチュエータ２３の構成、設定の状態、及び仕向地等の項目が含まれる。
【００４５】
例えば、図２において、「項目」の「センサ＆アクチュエータ」には、単眼カメラ、レーザーレーダー、伝導ブレーキ、マルチインフォメーションディスプレイ、警報ブザー等、所定の機能を実現するための各機器が列記されている。
【００４６】
また、「項目」の「設定」には、更新データ２０１に対応する所定の機能の設定状態が示されている。このうち、「ユーザ設定」は、ユーザによって設定された、所定の機能の設定状態を示しており、「メーカ設定」は、メーカによって設定された、所定の機能の設定状態を示している。
【００４７】
さらに、「項目」の「他」には、例えば、更新データ２０１の対象となる車両２０の仕向地の情報等が示されている。
【００４８】
「条件」の情報は、更新データ２０１を適用する条件を示す情報である。例えば、図２において、「項目」の「センサ＆アクチュエータ」に含まれる各機器の条件は、「あり・正常」であることが示されている。これは、各機器が車両２０に搭載されており、正常に動作していること（故障等により無効になっていないこと）が、更新データ２０１を適用する条件の１つであることを示している。
【００４９】
また、「項目」の「設定」に含まれる「ユーザ設定」、「メーカ設定」の条件は、「ＯＮ」であることが示されている。これは、車両２０において、更新データ２０１に対応する機能の「メーカ設定」が有効（ＯＮ）であり、かつ「ユーザ設定」が有効（ＯＮ）であることが、更新データ２０１を適用する条件の１つであることを示している。
【００５０】
さらに、「項目」の「他」に含まれる「仕向地」等の情報を、車両２０における更新データ２０１を適用する条件として用いるものであっても良い。例えば、図２の例では、「仕向地」が、日本（ＪＰ）、米国（ＵＳ）、又は英国（ＵＫ）のいずれかであることが条件として示されている。なお、「仕向地」の情報を、更新データ２０１を適用する条件として用いることは必須ではない。
【００５１】
好ましくは、「条件」の情報は、車両２０において、例えば、ユーザの設定や故障等により更新データ２０１に対応する所定の機能が無効になっている場合、更新データ２０１が適用されないように、各条件が予め定められている。
【００５２】
（車両情報）
車両情報４０は、車両２０の状態情報取得部２１１が、１つ以上のＥＣＵ２２から取得した状態情報に基づいて、車両情報送信部２１２によって作成される。車両情報送信部２１２によって作成される車両情報４０は、一例として、各ＥＣＵ２２から取得した複数の状態情報を集計して作成される。
【００５３】
また、別の一例として、車両２０が管理装置１０に送信する車両情報は、車両２０の状態情報取得部２１１が各ＥＣＵ２２から取得した複数の状態情報であっても良い。
【００５４】
図２において、車両情報４０には、「ＩＤ」、「項目」、及び「状態」の情報が含まれる。
【００５５】
「ＩＤ」の情報は、車両情報４０（又は車両２０）を識別するための識別情報（以下、車両ＩＤと呼ぶ）である。
【００５６】
「項目」の情報は、車両２０に搭載されているセンサ、アクチュエータ２３の構成、各機能の設定状態、及び仕向地等の項目が含まれる。図２の例では、車両情報４０に含まれる「項目」のうち、構成情報２０２−１に対応する項目のみ、抜粋して記載している。
【００５７】
「状態」の情報は、車両２０における各「項目」の状態を示す情報である。
【００５８】
例えば、図２において、「項目」の「単眼カメラ」の状態は、「あり・故障」である。これは、車両２０に「単眼カメラ」が搭載されており、「単眼カメラ」が故障していることを示している。また、「項目」の「電動ブレーキ」の状態は、「あり・正常」である。これは、車両２０に「電動ブレーキ」が搭載されており、「電動ブレーキ」が正常に動作していることを示している。
【００５９】
また、「項目」の「ユーザ設定」の状態は、無効（ＯＦＦ）であり、「メーカ設定」の状態は、有効（ＯＮ）であることが示されている。
【００６０】
さらに、「項目」の「仕向地」の状態は、ＪＰ（日本）であることが示されている。
【００６１】
上記の車両情報４０と構成情報２０２（例えば、構成情報２０２−１）とを用いて、管理装置１０の更新データ選択部１２は、車両２０が、更新データ２０１（例えば、更新データ２０１−１）を更新するための条件を満たしているかを判断することができる。
【００６２】
例えば、図２において、構成情報２０２−１の「項目」の「単眼カメラ」の条件は「あり・正常」である。一方、車両情報４０の「項目」の「単眼カメラ」の状態２０３−１は、「あり・故障」である。この場合、車両情報４０の「単眼カメラ」の状態が、構成情報２０２−１の「単眼カメラ」の条件を満たしていない。
【００６３】
この場合、管理装置１０の更新データ選択部１２は、構成情報２０２−１に対応する更新データ２０１−１を、車両２０に配信する更新データ２０１から除外する。これにより、管理装置１０は、車両２０に配信される不要な更新データ２０１を低減させることができる。
【００６４】
ここで、図１に戻り、管理装置１０の構成の説明を続ける。
【００６５】
更新データＤＢ１４は、例えば、図２に示すような１つ以上の更新データ２０１を記憶するデータベースである。更新データＤＢ１４は、例えば、管理装置１０のストレージ装置、及び管理装置１０のＣＰＵで実行されるプログラム等によって実現される。或いは、更新データＤＢ１４は、管理装置１０とは異なる情報処理装置によって実現されるものであっても良い。
【００６６】
更新データＤＢ１４には、例えば、新たな機能が開発されたとき等に、新たな機能に対応する更新データ２０１が格納されるものとする。この更新データ２０１を用いて、ＥＣＵ２２のプログラムを更新することにより、例えば、既に市販され、稼動中の車両２０に対して、新たな機能を提供することができる。
【００６７】
構成情報ＤＢ１５は、例えば、図２に示すような１つ以上の構成情報２０２を記憶するデータベースである。構成情報ＤＢ１５は、例えば、管理装置１０のストレージ装置、及び管理装置１０のＣＰＵで実行されるプログラム等によって実現される。或いは、構成情報ＤＢ１５は、管理装置１０とは異なる情報処理装置によって実現されるものであっても良い。
【００６８】
構成情報ＤＢ１５には、例えば、更新データＤＢ１４に新たな更新データ２０１が登録されたとき等に、登録された更新データ２０１に対応する構成情報２０２が格納されるものとする。
【００６９】
上記の構成により、管理装置１０は、ＥＣＵ２２のプログラムの更新に用いられる更新データ２０１を適用する条件を示す構成情報と、車両２０から取得した車両情報４０とを用いて、更新データ２０１のうち、車両２０に配信する更新データを選択する。
【００７０】
このとき、管理装置１０は、更新データ２０１のうち、車両情報４０に含まれる所定の機能の設定状態、又は各機器の状態が、構成情報２０２が示す条件を満たさない更新データ２０１を、車両２０に配信する更新データ２０１から除外する。これにより、管理装置１０は、ＥＣＵ２２のプログラムの更新が必要な車両２０にのみ、更新データ２０１を配信することができるようになる。
【００７１】
＜処理の流れ＞
続いて、本実施形態によるプログラムの更新処理の例について説明する。
【００７２】
（管理装置の処理）
図３は、一実施形態に係る管理装置の処理の例を示すフローチャートである。この処理は、管理装置１０が、例えば、車両２０に、ＥＣＵ２２のプログラムを更新する更新データを配信する処理の例を示している。管理装置１０は、例えば、図３に示す処理を、管理対象となる車両２０の各々に対して実行する。
【００７３】
ステップＳ３０１において、管理装置１０の車両情報管理部１１は、通信装置１６を用いて、車両２０に車両情報４０の取得を要求する。
【００７４】
ステップＳ３０２において、管理装置１０の車両情報管理部１１は、車両情報４０の取得を要求した車両２０から返信される、車両情報４０を受信する。
【００７５】
ステップＳ３０３において、管理装置１０の更新データ選択部１２は、車両情報管理部１１が取得した車両情報４０を、各更新データ２０１に対応する構成情報２０２と比較する。
【００７６】
ステップＳ３０４において、管理装置１０の更新データ選択部１２は、車両情報４０を用いて、車両２０の状態が、構成情報２０２の条件を満たさない更新データ２０１を、車両２０に配信する更新データ２０１から除外する。例えば、更新データ選択部１２は、車両情報４０に含まれる所定の機能の設定状態、又は所定の機能を実現する各機器の状態が、構成情報２０２が示す条件を満たさない更新データ２０１を、車両２０に配信する更新データ２０１から除外する。
【００７７】
ステップＳ３０５において、管理装置１０の更新データ配信部１３は、車両２０に配信する更新データ２０１（ステップＳ３０４で除外されていない更新データ２０１）があるかを判断する。
【００７８】
車両２０に配信する更新データ２０１がない場合、更新データ配信部１３は処理を終了させる。一方、車両２０に配信する更新データ２０１がある場合、更新データ配信部１３は処理をステップＳ３０６に移行させる。
【００７９】
ステップＳ３０６に移行すると、管理装置１０の更新データ配信部１３は、車両２０に配信する更新データ２０１を、通信装置１６を用いて車両２０に送信する。
【００８０】
ステップＳ３０７において、管理装置１０の更新データ配信部１３は、更新データ２０１を配信した車両２０から、プログラムの更新が完了したことを示す更新完了通知を受信した後、処理を終了させる。
【００８１】
上記の処理により、管理装置１０は、ＥＣＵ２２のプログラムの更新が必要な車両２０にのみ、更新データ２０１を配信することができるようになる。
【００８２】
（管理ＥＣＵの処理）
図４は、一実施形態に係る管理ＥＣＵの処理の例を示すフローチャートである。この処理は、車両２０の管理ＥＣＵ２１による処理の例を示している。
【００８３】
ステップＳ４０１において、車両２０の管理ＥＣＵ２１は、管理装置１０から車両情報４０の取得要求を受信すると、ステップＳ４０２以降の処理を実行する。
【００８４】
ステップＳ４０２において、管理ＥＣＵ２１の状態情報取得部２１１は、車両２０の各ＥＣＵ２２に状態情報の取得を要求する。
【００８５】
ステップＳ４０３において、状態情報取得部２１１は、各ＥＣＵ２２から送信される状態情報を受信する。
【００８６】
ステップＳ４０４において、管理ＥＣＵ２１の車両情報送信部２１２は、状態情報取得部２１１が取得した情報を含む車両情報４０を作成し、作成した車両情報４０を、通信装置２４を用いて管理装置１０に送信する。
【００８７】
ステップＳ４０５において、管理ＥＣＵ２１の更新制御部２１３は、例えば、車両情報送信部２１２が車両情報４０を管理装置１０に送信した後、所定の時間内に管理装置１０から更新データ２０１を受信したかを判断する。
【００８８】
管理装置１０から更新データ２０１を受信していない場合、更新制御部２１３は、処理を終了させる。一方、管理装置１０から更新データ２０１を受信した場合、更新制御部２１３は、処理をステップＳ４０６に移行させる。
【００８９】
ステップＳ４０６に移行すると、更新制御部２１３は、受信した更新データ２０１の更新の対象となるＥＣＵ２２に、プログラムの更新を指示する。例えば、更新制御部２１３は、更新の対象となるＥＣＵ２２に更新データ２０１を送信する。
【００９０】
ステップＳ４０７において、更新制御部２１３は、プログラムの更新を指示したＥＣＵ２２から、プログラムの更新が完了したことを示す更新完了通知を受信する。
【００９１】
ステップＳ４０８において、更新制御部２１３は、更新データ２０１によるプログラムの更新が完了したことを示す更新完了通知を、通信装置２４を用いて管理装置１０に送信し、処理を終了する。
【００９２】
（ＥＣＵの処理）
図５は、一実施形態に係るＥＣＵの処理の例を示すフローチャートである。この処理は、車両２０の各ＥＣＵ２２による処理の例を示している。
【００９３】
ステップＳ５０１において、ＥＣＵ２２は、管理ＥＣＵ２１から状態情報の取得要求を受信すると、ステップＳ５０２以降の処理を実行する。
【００９４】
ステップＳ５０２において、ＥＣＵ２２の状態確認部２２１は、ＥＣＵ２２の設定状態を確認する。例えば、状態確認部２２１は、ＥＣＵ２２が制御する所定の機能のユーザ設定が有効（ＯＮ）に設定されているか、無効（ＯＦＦ）に設定されているかを確認する。また、状態確認部２２１は、必要に応じて、ＥＣＵ２２が制御する所定の機能のメーカ設定が有効（ＯＮ）に設定されているか、無効（ＯＦＦ）に設定されているかを確認する。
【００９５】
ステップＳ５０３において、状態確認部２２１は、ＥＣＵ２２の制御下にある各センサ、アクチュエータ２３の状態を確認する。例えば、状態確認部２２１は、ＥＣＵ２２の制御下にある各センサ、アクチュエータ２３に動作を指示し、各センサ、アクチュエータ２３の有無、及び正常に動作しているか否かを確認する。
【００９６】
ステップＳ５０４において、ＥＣＵ２２の状態確認部２２１は、ステップＳ５０２で確認した設定状態と、ステップＳ５５０３で確認した各機器（センサ、アクチュエータ２３）の状態を示す状態情報を、管理ＥＣＵ２１に通知する。
【００９７】
ステップＳ５０５において、ＥＣＵ２２の更新部２２２は、例えば、状態確認部２２１が状態情報を管理ＥＣＵ２１に送信した後、所定の時間内に、管理ＥＣＵ２１からプログラムの更新指示を受信したかを判断する。
【００９８】
管理ＥＣＵ２１からプログラムの更新指示を受信していない場合、更新部２２２は、処理を終了させる。一方、管理ＥＣＵ２１からプログラムの更新指示を受信した場合、更新部２２２は、処理をステップＳ５０６に移行させる。
【００９９】
ステップＳ５０６に移行すると、ＥＣＵ２２の更新部２２２は、管理ＥＣＵ２１から受信したプログラムの更新指示に従って、ＥＣＵ２２のプログラムを更新する。
【０１００】
ステップＳ５０７において、ＥＣＵ２２の更新部２２２は、ＥＣＵ２２のプログラムの更新が完了すると、プログラムの更新が完了したことを示す更新完了通知を、管理ＥＣＵ２１に送信し、処理を終了する。
【０１０１】
（プログラム更新システムの処理）
図６は、一実施形態に係るプログラム更新システムの処理の例を示すシーケンス図である。プログラム更新システム１による全体の処理の例を示している。
【０１０２】
ステップＳ６０１において、管理装置１０の車両情報管理部１１は、車両２０に、車両情報４０の取得を要求する。
【０１０３】
ステップＳ６０２において、管理ＥＣＵ２１の状態情報取得部２１１は、管理装置１０から車両情報の取得要求を受け付けると、車両２０の各ＥＣＵ２２に対して、状態情報の取得を要求する。
【０１０４】
ステップＳ６０３において、各ＥＣＵ２２の状態確認部２２１は、管理ＥＣＵ２１から状態情報の取得要求を受け付けると、ＥＣＵ２２が制御する所定の機能の設定状態（例えば、ユーザ設定及びメーカ設定の有効／無効等）を確認する。
【０１０５】
ステップＳ６０４において、各ＥＣＵ２２の状態確認部２２１は、制御下にある各センサ、アクチュエータ２３（以下、各機器と呼ぶ）に動作指示を出す。一例として、状態確認部２２１は、制御下にある各機器に、各機器の動作確認（セルフテスト）の実行を要求する動作指示を送信する。
【０１０６】
また、別の一例として、状態確認部２２１は、各機器に所定の処理を要求し、正しい応答が得られるかを判断するもの等であっても良い。ここでは、状態確認部２２１は、制御下にある各機器に、各機器の動作確認の実行を要求する動作指示を送信するものとして、以下の説明を行う。
【０１０７】
ステップＳ６０５において、各機器は、ＥＣＵ２２から受信した動作指示に従って、動作確認を実行する。
【０１０８】
ステップＳ６０６において、各機器は、要求元のＥＣＵ２２に動作確認結果を送信する。この動作確認結果には、例えば、各機器が状態（正常であるか、故障中であるか等）を示す情報が含まれる。
【０１０９】
ステップＳ６０７において、各ＥＣＵ２２の状態確認部２２１は、ステップＳ６０３で確認した設定状態、及びステップＳ６０４〜Ｓ６０６で取得した各機器の状態を示す状態情報を、管理ＥＣＵ２１に送信する。
【０１１０】
ステップＳ６０８において、管理ＥＣＵ２１の車両情報送信部２１２は、各ＥＣＵ２２から受信した設定状態、及び各機器の状態を示す情報を含む車両情報４０を作成し、作成した車両情報４０を管理装置１０に送信する。
【０１１１】
ステップＳ６０９において、管理装置１０の更新データ選択部１２は、更新データＤＢ１４に記憶された更新データ２０１のうち、車両情報４０の状態が、構成情報２０２の条件を満たさない更新データ２０１を除外する。この処理は、図２のステップＳ３０３、Ｓ３０４の処理に対応している。
【０１１２】
ステップＳ６１０において、管理装置１０の更新データ配信部１３は、車両２０に配信する更新データ２０１の有無を判断する。
【０１１３】
車両２０に配信する更新データ２０１がある場合、プログラム更新システム１は、ステップＳ６１１〜Ｓ６１５の処理を実行する。一方、車両２０に配信する更新データ２０１がない場合、プログラム更新システム１は処理を終了させる。
【０１１４】
ステップＳ６１１に移行すると、管理装置１０の更新データ配信部１３は、更新データ２０１を車両２０に配信する。
【０１１５】
ステップＳ６１２において、管理ＥＣＵ２１の更新制御部２１３は、更新データ２０１によるプログラムの更新対象となるＥＣＵ２２に、プログラムの更新指示を送信する。この処理は、例えば、図４のステップＳ４０６の処理に対応している。
【０１１６】
ステップＳ６１３において、ＥＣＵ２２の更新部２２２は、管理ＥＣＵ２１から受信したプログラムの更新指示に従って、ＥＣＵ２２のプログラムの更新処理を実行する。
【０１１７】
ステップＳ６１４において、ＥＣＵ２２の更新部２２２は、ＥＣＵ２２のプログラムの更新が完了したことを示す更新完了通知を、管理ＥＣＵ２１に送信する。
【０１１８】
ステップＳ６１５において、管理ＥＣＵ２１の更新制御部２１３は、更新データ２０１によるプログラムの更新が完了したことを示す更新完了通知を、管理装置１０に送信する。
【０１１９】
上記の処理により、管理装置１０は、更新データＤＢ１４に記憶された更新データ２０１のうち、車両２０で利用されていない機能に対応する更新データ２０１を、車両２０に配信する更新データ２０１から除外することができる。
【０１２０】
これにより、本実施形態によれば、車両２０に搭載されるＥＣＵ２２のプログラムの更新に用いられる更新データ２０１を、車両２０に配信するプログラム更新システム１において、車両２０に配信される不要な更新データ２０１を低減させることができる。
【符号の説明】
【０１２１】
１        プログラム更新システム
１０      管理装置
１２      更新データ選択部
１３      更新データ配信部
２０      車両
２２      ＥＣＵ（電子制御装置）
２３      センサ、アクチュエータ（機器）
２１１    状態情報取得部
２１２    車両情報送信部
【図１】
2018090176.tif 000003
【図２】
2018090176.tif 000004
【図３】
2018090176.tif 000005
【図４】
2018090176.tif 000006
【図５】
2018090176.tif 000007
【図６】
2018090176.tif 000008