(57)【要約】【課題】より適切な通信状況下でデータの送受信を行うことができるソフトウェア更新装置、サーバ装置、およびソフトウェア更新方法を提供すること。【解決手段】一態様に係るソフトウェア更新装置は、車両に搭載された機器のうち少なくとも一部の機器を制御するソフトウェアが組み込まれた機器制御部と、外部装置と通信する通信部と、前記通信部による外部装置との通信により前記機器制御部に組み込まれた前記ソフトウェアを更新する更新制御部と、前記通信部と前記外部装置との通信状況を管理する通信状況管理部とを備え、前記更新制御部は、前記通信状況管理部により管理された通信履歴に基づいて、所定の通信状況以外での通信を抑制する。【選択図】図１
2020190479.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載された機器のうち少なくとも一部の機器を制御するソフトウェアが組み込まれた機器制御部と、
外部装置と通信する通信部と、
前記通信部による外部装置との通信により前記機器制御部に組み込まれた前記ソフトウェアを更新する更新制御部と、
前記通信部と前記外部装置との通信状況を管理する通信状況管理部とを備え、
前記更新制御部は、前記通信状況管理部により管理された通信履歴に基づいて、所定の通信状況以外での通信を抑制する、
ソフトウェア更新装置。
【請求項２】
前記更新制御部は、前記車両の現在位置から目的地までの経路を案内する経路案内部により前記車両の目的地までの経路が設定された場合に、前記経路のうち、前記ソフトウェアの更新を行うための通信を行う領域を設定する、
請求項１に記載のソフトウェア更新装置。
【請求項３】
前記更新制御部は、前記車両の現在位置から目的地までの経路を案内する経路案内部により前記車両の目的地が設定された場合に、前記通信履歴に基づいて、前記所定の通信状況で前記ソフトウェアの更新を行うための通信を行う地点を通過する経路を生成させる、
請求項１または２に記載のソフトウェア更新装置。
【請求項４】
前記通信部は、前記車両の周辺に存在する他車両と通信を行い、前記他車両が前記外部装置と通信を行った他車両の通信履歴を受信し、
前記更新制御部は、前記他車両の通信履歴に基づいて、前記ソフトウェアの更新を行うための通信を行う領域を設定する、
請求項１から３のうち何れか１項に記載のソフトウェア更新装置。
【請求項５】
前記車両の位置を取得する位置取得部を更に備え、
前記通信状況管理部は、前記位置取得部により取得された前記車両の位置に基づき、前記車両が前記通信履歴に含まれる位置情報と異なる位置を走行している場合に、前記異なる位置の通信状況を学習する、
請求項１から４のうち何れか１項に記載のソフトウェア更新装置。
【請求項６】
前記所定の通信状況は、通信履歴に含まれる複数の通信方式のうち、所定速度以上の通信速度で通信が実行可能な状況である、
請求項１から５のうち何れか１項に記載のソフトウェア更新装置。
【請求項７】
前記更新制御部は、更新される前記ソフトウェアが緊急性の高いソフトウェアである場合に、通信状況に関係なく外部装置と通信を行い、前記ソフトウェアのダウンロードを実行する、
請求項１から６のうち何れか１項に記載のソフトウェア更新装置。
【請求項８】
前記車両に搭載された機器に電力を供給する蓄電池のエネルギー残量を管理する管理部を更に備え、
前記更新制御部は、前記管理部により管理される蓄電池のエネルギー残量が所定量以上である、または、前記蓄電池が充電状態である場合であって、且つ前記所定の通信状況での通信が可能である場合に、前記ソフトウェアの更新を行う、
請求項１から７のうち何れか１項に記載のソフトウェア更新装置。
【請求項９】
請求項１から請求項８の何れかに記載のソフトウェア更新装置が搭載された車両と通信を行うサーバ側通信部と、
前記サーバ側通信部により前記車両から受信した通信履歴に基づいて、地図画像に通信状況を含めた通信状況マップを生成するマップ生成部と、
前記マップ生成部により生成された通信状況マップを前記車両に提供する情報提供部と、を備え、
前記マップ生成部は、前記通信履歴に含まれる通信方式に基づいて、所定の通信状況以外での通信を抑制するマップを生成する、
サーバ装置。
【請求項１０】
車両に搭載されるソフトウェア更新装置を実現するコンピュータが、
外部装置と通信し、
前記外部装置との通信により前記車両に搭載された機器のうち少なくとも一部の機器を制御する制御部に組み込まれたソフトウェアを更新し、
前記外部装置との通信状況を管理し、
管理された通信履歴に基づいて、所定の通信状況以外での通信を抑制する、
ソフトウェア更新方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェア更新装置、サーバ装置、およびソフトウェア更新方法に関する。
【背景技術】
【０００２】
従来、サーバから更新プログラムをダウンロードし、ダウンロードした更新プログラムを、機器を制御する制御部に組み込まれたソフトウェアに適用して、ソフトウェアを更新する更新装置が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１３４５４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、更新装置が車両等の移動体に搭載されている場合には、走行時の通信状況が異なるため、通信状況によっては、更新データの送受信が適切に行われない場合があった。
【０００５】
本発明は、このような事情を考慮してなされたものであり、より適切な通信状況下でデータの送受信を行うことができるソフトウェア更新装置、サーバ装置、およびソフトウェア更新方法を提供することを目的の一つとする。
【課題を解決するための手段】
【０００６】
この発明に係るソフトウェア更新装置、サーバ装置、およびソフトウェア更新方法は、以下の構成を採用した。
（１）：この発明の一態様に係るソフトウェア更新装置は、車両に搭載された機器のうち少なくとも一部の機器を制御するソフトウェアが組み込まれた機器制御部と、外部装置と通信する通信部と、前記通信部による外部装置との通信により前記機器制御部に組み込まれた前記ソフトウェアを更新する更新制御部と、前記通信部と前記外部装置との通信状況を管理する通信状況管理部とを備え、前記更新制御部は、前記通信状況管理部により管理された通信履歴に基づいて、所定の通信状況以外での通信を抑制する、ソフトウェア更新装置である。
【０００７】
（２）：上記（１）の態様において、前記更新制御部は、前記車両の現在位置から目的地までの経路を案内する経路案内部により前記車両の目的地までの経路が設定された場合に、前記経路のうち、前記ソフトウェアの更新を行うための通信を行う領域を設定するものである。
【０００８】
（３）：上記（１）または（２）の態様において、前記更新制御部は、前記車両の現在位置から目的地までの経路を案内する経路案内部により前記車両の目的地が設定された場合に、前記通信履歴に基づいて、前記所定の通信状況で前記ソフトウェアの更新を行うための通信を行う地点を通過する経路を生成させるものである。
【０００９】
（４）：上記（１）〜（３）のうち何れか一つの態様において、前記通信部は、前記車両の周辺に存在する他車両と通信を行い、前記他車両が前記外部装置と通信を行った他車両の通信履歴を受信し、前記更新制御部は、前記他車両の通信履歴に基づいて、前記ソフトウェアの更新を行うための通信を行う領域を設定するものである。
【００１０】
（５）：上記（１）〜（４）のうち何れか一つの態様において、前記車両の位置を取得する位置取得部を更に備え、前記通信状況管理部は、前記位置取得部により取得された前記車両の位置に基づき、前記車両が前記通信履歴に含まれる位置情報と異なる位置を走行している場合に、前記異なる位置の通信状況を学習するものである。
【００１１】
（６）：上記（１）〜（５）のうち何れか一つの態様において、前記所定の通信状況は、通信履歴に含まれる複数の通信方式のうち、所定速度以上の通信速度で通信が実行可能な状況である。
【００１２】
（７）：上記（１）〜（６）のうち何れか一つの態様において、前記更新制御部は、更新される前記ソフトウェアが緊急性の高いソフトウェアである場合に、通信状況に関係なく外部装置と通信を行い、前記ソフトウェアのダウンロードを実行するものである。
【００１３】
（８）：上記（１）〜（７）のうち何れか一つの態様において、前記車両に搭載された機器に電力を供給する蓄電池のエネルギー残量を管理する管理部を更に備え、前記更新制御部は、前記管理部により管理される蓄電池のエネルギー残量が所定量以上である、または、前記蓄電池が充電状態である場合であって、且つ前記所定の通信状況での通信が可能である場合に、前記ソフトウェアの更新を行うものである。
【００１４】
（９）：この発明の一態様に係るサーバ装置は、請求項１から請求項８のいずれかに記載のソフトウェア更新装置が搭載された車両と通信を行うサーバ側通信部と、前記サーバ側通信部により前記車両から受信した通信履歴に基づいて、地図画像に通信状況を含めた通信状況マップを生成するマップ生成部と、前記マップ生成部により生成された通信状況マップを前記車両に提供する情報提供部と、を備え、前記マップ生成部は、前記通信履歴に含まれる通信方式に基づいて、所定の通信状況以外での通信を抑制するマップを生成する、サーバ装置である。
【００１５】
（１０）：この発明の一態様に係るソフトウェア更新方法は、車両に搭載されるソフトウェア更新装置を実現するコンピュータが、外部装置と通信し、前記外部装置との通信により前記車両に搭載された機器のうち少なくとも一部の機器を制御する機器制御部に組み込まれたソフトウェアを更新し、前記外部装置との通信状況を管理し、管理された通信履歴に基づいて、所定の通信状況以外での通信を抑制する、ソフトウェア更新方法である。
【発明の効果】
【００１６】
上記（１）〜（１０）によれば、より適切な通信状況下でデータの送受信を行うことができる。
【図面の簡単な説明】
【００１７】
【図１】第１実施形態のソフトウェア更新装置１００を含む車両システム１の構成図である。
【図２】通信履歴情報１６４の内容の一例を示す図である。
【図３】ソフトウェア管理情報１６２の内容の一例を示す図である。
【図４】更新制御部１２０の処理について説明するための図である。
【図５】通信予定情報１６６の内容の一例を示す図である。
【図６】第１実施形態のソフトウェア更新装置１００の処理の一例を示すフローチャートである。
【図７】更新制御部１２０がナビゲーション装置４０で決定される走行経路を変更させることについて説明するための図である。
【図８】第２実施形態のソフトウェア更新装置１００の処理の一例を示すフローチャートである。
【図９】第３実施形態のソフトウェア更新装置１００の処理の一例を示すフローチャートである。
【図１０】第４実施形態に係るソフトウェア更新装置１００を含むソフトウェア更新システム２の構成の一例を示す図である。
【図１１】第４実施形態のサーバ装置２００の構成図である。
【図１２】サーバ側通信履歴情報２５２の内容の一例を示す図である。
【図１３】マップ生成部２４４により生成されるマップの一例を示す図である。
【図１４】第４実施形態のソフトウェア更新装置１００の処理の一例を示すフローチャートである。
【図１５】第４実施形態のサーバ装置２００におけるマップ生成処理の一例を示すフローチャートである。
【図１６】第４実施形態のサーバ装置２００におけるマップ提供処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、図面を参照し、本発明のソフトウェア更新装置、サーバ装置、およびソフトウェア更新方法の実施形態について説明する。なお、以下では、ソフトウェア更新装置が、車両システムの一部として車両に搭載されている例について説明する。車両は、例えば、二輪や三輪、四輪等の車両であり、その駆動源は、ディーゼルエンジンやガソリンエンジン等の内燃機関、電動機、或いはこれらの組み合わせである。電動機は、内燃機関に連結された発電機による発電電力、或いは二次電池や燃料電池の放電電力を使用して動作する。なお、ソフトウェア装置は、車両以外の移動体に搭載されてもよい。
【００１９】
＜第１実施形態＞
図１は、第１実施形態のソフトウェア更新装置１００を含む車両システム１の構成図である。車両システム１は、例えば、車載装置１０と、バッテリ（蓄電池の一例）５０と、表示部６０と、ソフトウェア更新装置１００とを備える。
【００２０】
車載装置１０は、例えば、運転制御装置２０と、駆動制御装置３０と、ナビゲーション装置４０とを備える。運転制御装置２０は、例えば、車両（以下、車両Ｍと称する）の自動運転（自律運転）制御や運転支援制御等を行う。自動運転制御とは、例えば、車両Ｍの乗員による運転操作に依らずに、車両Ｍの操舵または速度のうち一方または双方を制御することである。また、運転支援制御は、例えば、ＡＣＣ（Adaptive Cruise Control System）やＬＫＡＳ（Lane Keeping Assistance System）、ＣＭＢＳ（Collision Mitigation Brake System）等の乗員の運転操作を支援する運転制御である。運転制御装置２０は、車両Ｍの挙動や乗員からの制御指示に対応する運転制御を実行する。ナビゲーション装置４０は、「経路案内部」の一例である。
【００２１】
駆動制御装置３０は、車両Ｍに駆動力等を与えて車両Ｍを走行させるための装置である。駆動制御装置３０は、例えば、車両Ｍが走行するための走行駆動力（トルク）を駆動輪に出力する走行駆動力出力装置と、所定の制動操作に応じたブレーキトルクを各車輪に出力させるブレーキ装置と、転舵輪の向きを変更させるステアリング装置とを含む。
【００２２】
ナビゲーション装置４０は、例えば、ＧＮＳＳ（Global Navigation Satellite System）受信機４１と、ナビＨＭＩ（Human Machine Interface）４２と、経路決定部４３とを備える。ナビゲーション装置４０は、ＨＤＤ（Hard Disk Drive）やフラッシュメモリ等の記憶装置に地図情報４４を保持している。ＧＮＳＳ受信機４１は、ＧＮＳＳ衛星から受信した信号に基づいて、車両Ｍの位置を特定する。車両Ｍの位置は、車両Ｍに搭載された車両センサ（不図示）の出力を利用したＩＮＳ（Inertial Navigation System）によって特定または補完されてもよい。なお、第１実施形態では、ナビゲーション装置４０に代えて、車両ＭにＧＰＳ（Global Positioning System）装置を搭載し、ＧＰＳ装置によって車両Ｍの位置を取得してもよい。ナビゲーション装置４０またはＧＰＳ装置は、車両Ｍの位置を取得する「位置取得部」の一例である。
【００２３】
ナビＨＭＩ４２は、ディスプレイ、スピーカ、タッチパネル、キー等を含む。ナビＨＭＩ４２は、画像や音声等を用いて乗員に目的地等を設定させたり、目的地までの走行経路を乗員に案内する。経路決定部４３は、例えば、ＧＮＳＳ受信機４１により特定された車両Ｍの位置（或いは入力された任意の位置）から、ナビＨＭＩ４２を用いて乗員により入力された目的地までの経路（以下、地図上経路）を、地図情報４４を参照して決定する。地図情報４４は、例えば、道路を示すリンクと、リンクによって接続されたノードとによって道路形状が表現された情報である。地図情報４４は、道路の曲率やＰＯＩ（Point Of Interest）情報等を含んでもよい。また、地図情報４４は、例えば、車線の中央の情報あるいは車線の境界の情報、車線の種別の情報等を含んでもよい。また、地図情報４４には、道路情報、交通規制情報、住所情報（住所・郵便番号）、施設情報、電話番号情報等が含まれてよい。地図情報４４は、通信部１１０が他装置と通信することにより、随時、アップデートされてよい。ナビゲーション装置４０は、地図上経路に基づいて、表示部６０による地図画像表示やスピーカ（不図示）による音声出力によって、経路案内等を行う。
【００２４】
ここで、車載装置１０の運転制御装置２０、駆動制御装置３０、およびナビゲーション装置４０の各機器は、それぞれＥＣＵ（Electronic Control Unit）を中心として構成される。ＥＣＵは、「機器制御部」の一例である。ＥＣＵは、例えば、プロセッサ、メモリ、補助記憶装置、および外部通信インターフェース等が、バスで接続されたものである。ＥＣＵには、ソフトウェアが組み込まれており、ソフトウェアを実行することで、対応する機器の少なくとも一部の制御が実行される。ソフトウェアは、少なくとも一以上のプログラムモジュールを含む。プログラムモジュールとは、例えば、一以上のプログラムを含み、ソフトウェアによって実現できる機能のうち部分的な機能を実行するものである。ソフトウェアは、例えば、更新制御部１２０の制御によってモジュール単位の更新が可能である。以下では、更新用のソフトウェア（以下、更新ソフトウェアと称する）を外部装置（例えば、ソフトウェア提供装置）からダウンロードして機器のソフトウェアを更新する一連の処理を「リプログラミング」と称する場合がある。また、各機器のＥＣＵを区別しない場合には、単に「ＥＣＵ」と称して説明する場合がある。
【００２５】
バッテリ５０は、例えば、車載装置１０や表示部６０、ソフトウェア更新装置１００、その他の車両Ｍ内の電気機器等に電力を供給する。リプログラミングの実行時に用いられる電源は、主にバッテリ５０から更新対象のＥＣＵに供給される。また、車両システム１は、充電コネクタ５２を備えていてもよい。充電コネクタ５２は、充電スポットまたは乗員の自宅に設置された充電設備から供給される電力を取得するために、充電設備の充電プラグと接続される、着脱自在に構成されたコネクタである。例えば、充電コネクタ５２と充電プラグとが接続された状態において、バッテリ５０の充電が行われる。なお、車両Ｍは、充電コネクタ５２に代えて、無線で電力を受信する電力受信部（不図示）を備えてもよい。この場合、電力受信部が充電スポット等に設けられた電力送信部から非接触で電力を受信できる位置に車両Ｍを停車させることで、ワイヤレスでバッテリ５０の充電が行われる。
【００２６】
表示部６０は、例えば、ＬＣＤ（Liquid Crystal Display）や有機ＥＬ（Electro Luminescence）ディスプレイ等の表示装置である。表示部６０は、例えば、表示制御部１４０により生成された画像を表示する。表示部６０は、例えば、タッチパネル装置として、乗員からの操作内容を受け付ける機能を備えていてもよい。また、表示部６０は、ナビゲーション装置４０と一体に構成され、ナビゲーション装置４０による目的地までの経路案内等の表示を行ってもよい。
【００２７】
ソフトウェア更新装置１００は、例えば、通信部１１０と、更新制御部１２０と、通信状況管理部１３０と、表示制御部１４０と、バッテリ管理部１５０と、記憶部１６０とを備える。これらの構成要素は、例えば、ＣＰＵ（Central Processing Unit）等のハードウェアプロセッサがプログラム（ソフトウェア）を実行することにより実現される。また、これらの構成要素のうち一部または全部は、ＬＳＩ（Large Scale Integration）やＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field-Programmable Gate Array）、ＧＰＵ（Graphics Processing Unit）等のハードウェア（回路部；circuitryを含む）によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予め記憶部１６０に格納されていてもよいし、ＤＶＤやＣＤ−ＲＯＭ等の着脱可能な記憶媒体に格納されており、記憶媒体がドライブ装置に装着されることで記憶部１６０にインストールされてもよい。
【００２８】
記憶部１６０は、例えば、ＨＤＤ（Hard Disk Drive）、フラッシュメモリ、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）、ＲＯＭ（Read Only Memory）、またはＲＡＭ（Random Access Memory）等により実現される。記憶部１６０には、例えば、ソフトウェア管理情報１６２、通信履歴情報１６４、通信予定情報１６６、プロセッサによって読み出されて実行されるプログラム、その他各種情報等が格納される。
【００２９】
通信部１１０は、例えば、セルラー網やＷｉ−Ｆｉ網、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＤＳＲＣ（Dedicated Short Range Communication）等を利用して、各種サーバ装置や携帯型端末装置と通信したり、車両Ｍの周辺に存在する周辺車両（他車両）と通信する。各種サーバ装置には、例えば、ＥＣＵに組み込まれるソフトウェアを提供するサーバ装置が含まれる。通信部１１０は、例えば、ＴＣＵ（Telematics control unit）であってもよい。
【００３０】
更新制御部１２０は、例えば、通信部１１０を介して、外部装置からソフトウェアの更新があることを示す情報（以下、更新情報）を受信した場合、表示部６０等を用いて、車両Ｍの乗員または所有者等に、ソフトウェアの更新が有ることを通知する。ソフトウェアとは、上述したＥＣＵに組み込まれるソフトウェアである。また、更新制御部１２０は、車両Ｍの乗員または所有者等からソフトウェアの更新指示を受け付けた場合、ＥＣＵごとに組み込まれるソフトウェアを更新するためのリプログラミング制御を行う。
【００３１】
例えば、更新制御部１２０は、通信部１１０により受信した外部装置からの更新情報と、記憶部１６０に記憶されたソフトウェア管理情報１６２とに基づいて更新の有無を判定し、更新が必要であると判定された場合にリプログラミング制御を行う。また、更新制御部１２０は、記憶部１６０に記憶された通信履歴情報１６４に基づいて、更新を行うタイミングやサーバ装置から更新ソフトウェアをダウンロードするときのデータ容量の調整を行う。更新制御部１２０の機能の詳細については後述する。
【００３２】
通信状況管理部１３０は、車両Ｍが通信部１１０を介して外部装置とデータの送受信を行った場合に、そのときの車両Ｍの位置、通信方式、データ容量等の通信状況を取得する。また、通信状況管理部１３０は、取得した通信状況に基づいて、通信履歴情報１６４を生成し、生成した通信履歴情報１６４を記憶部１６０に記憶させる。
【００３３】
図２は、通信履歴情報１６４の内容の一例を示す図である。通信履歴情報１６４は、日時情報に、位置情報、通信方式情報、データ量、およびデータ内容等が対応付けられている。日時情報とは、通信部１１０により外部と通信を行った日時に関する情報である。日時情報には、例えば、通信開始時刻と通信終了時刻の情報が含まれる。日時情報は、例えば、車両Ｍに搭載された時計（不図示）によって取得される情報である。位置情報は、例えば、通信部１１０により外部との通信が行われたときの車両Ｍの位置である。位置情報は、例えば、通信開始地点から通信終了地点までの情報（区間または経路情報）が含まれてよい。位置情報は、例えば、ナビゲーション装置４０によって取得される情報である。
【００３４】
通信方式情報は、例えば、通信部１１０が外部と通信を行った場合の通信方式に関する情報である。通信方式情報には、例えば、電波通信における通信方式の世代を表す規格情報が含まれる。規格情報には、例えば、第３世代移動通信規格（以下、「３Ｇ」と称する）や、第３．９世代移動通信規格（以下、「ＬＴＥ」と称する）、第４世代移動通信規格（以下、「４Ｇ」と称する）、第５世代移動通信規格（以下、「５Ｇ」と称する）が含まれる。また、通信規格は、世代が大きくなるごとに高速通信が可能となる。したがって、通信方式情報は、通信速度の速度レベルに関する情報に相当する。なお、上記の通信規格は、キャリア（通信事業者）との通信に利用する規格である。また、通信方式情報には、Ｗｉ−Ｆｉ等の無線ＬＡＮ（Local Area Network）の規格に関する情報が含まれてもよい。Ｗｉ−Ｆｉは、例えば、各個人または各企業等が自身のネットワークを自由に使用することができる電波通信の規格である。この通信規格は、電波の到達範囲が非常に狭く、Ｗｉ−Ｆｉのアンテナ位置から約１０［ｍ］程度での利用に限定される。また、Ｗｉ−Ｆｉである場合、通信方式情報として、周波数帯域に関する情報（例えば、５［ＧＨｚ］帯、２．４［ＧＨｚ］帯）や、その帯域での通信規格に関する情報が含まれてもよい。また、通信方式情報には、通信先の設備（無線ルーターや基地局等）を識別する識別情報が含まれていてもよい。
【００３５】
また、通信方式情報には、通信状態に関する情報が含まれてよい。通信状態には、例えば、電波強度に基づく情報や、通信が安定しているか否かの情報が含まれる。電波強度は、例えば、通信部１１０により計測される。通信状況管理部１３０は、例えば、通信部１１０により計測された電波強度の所定時間における変動幅が閾値未満である場合に通信が安定していると判定し、閾値を超える場合に通信が安定していないと判定する。データ量は、例えば、通信開始時刻から通信終了時刻までの期間において通信部１１０が通信を行ったデータ量である。データ量は、外部から受信したデータ量であるが、これに加えて外部に送信したデータ量が含まれてもよい。データ内容は、通信部１１０が外部から取得したデータの内容に関する情報である。データの内容は、例えば、更新ソフトウェアを識別する識別情報（例えば、モジュール種別やバージョン情報）である。また、データ内容には、無線通信により外部からダウンロードした映像コンテンツ、音楽コンテンツ、地図データ等の他のコンテンツデータが含まれてもよい。
【００３６】
通信状況管理部１３０は、外部と通信を行うごとに、通信履歴情報１６４を生成または最新の情報に更新する。また、通信状況管理部１３０は、車両Ｍの位置に基づき、車両Ｍがすでに通信履歴情報１６４に含まれる位置情報とは異なる位置を走行している場合に、異なる位置の通信状況を学習して、通信履歴情報１６４に反映させてもよい。これにより、処理負荷を低減させることができる。
【００３７】
表示制御部１４０は、表示部６０を制御して、ＥＣＵのソフトウェアの更新に関する情報や、運転制御、運転支援に関する情報を含む画像等を生成する。生成する画像には、アイコン等のＧＵＩ（Graphical User Interface）が含まれてもよい。また、表示制御部１４０は、生成した画像やナビゲーション装置４０から得られる経路画像、後述する通信予定情報に関する情報等を表示部６０に表示させる。
【００３８】
バッテリ管理部１５０は、バッテリ５０のエネルギー残量や充放電等のバッテリ状態を管理する。例えば、バッテリ管理部１５０は、バッテリ５０の端子電圧を測定し、測定した端子電圧の大きさに基づいてエネルギー残量を取得する。また、バッテリ管理部１５０は、例えば、電流検出抵抗を使って充電時に蓄えられた電流量を積算しておき、放電時に出力された電流量を求めることでエネルギー残量を取得してもよい。また、バッテリ管理部１５０は、例えば、バッテリ５０の放電特性や温度特性等のデータベースを予め記憶部１６０等に記憶しておき、計測した電圧値や電流値と、データベースとに基づいて残量を取得してもよい。また、バッテリ管理部１５０は、上述した取得手法のうち一部または全部を組み合わせてもよい。また、バッテリ管理部１５０は、上述したエネルギー残量に代えて充電率（ＳＯＣ；State Of Charge）を取得してもよい。
【００３９】
［更新制御部］
次に、更新制御部１２０の機能の詳細について説明する。更新制御部１２０は、例えば、ＯＴＡ（Over The Air）等の無線通信により外部装置（以下、サーバ装置として説明する）と通信を行い、対象機器のＥＣＵに組み込まれているソフトウェアのリプログラミングを行う。具体的には、更新制御部１２０は、車載装置１０の各機器のＥＣＵに組み込まれているソフトウェアのバージョン情報を、記憶部１６０に記憶されたソフトウェア管理情報１６２から取得する。
【００４０】
図３は、ソフトウェア管理情報１６２の内容の一例を示す図である。ソフトウェア管理情報１６２は、ＥＣＵ識別情報に、最新更新日時およびバージョン情報が対応付けられている。ＥＣＵ識別情報とは、車載装置１０の各装置のＥＣＵを識別するための識別情報である。最新更新日は、リプログラミングされたソフトウェアの最新の更新日時である。バージョン情報とは、サーバ装置からダウンロードし、ＥＣＵに組み込まれているソフトウェアのバージョンに関する情報である。
【００４１】
更新制御部１２０は、ソフトウェアの更新が必要であるか否かを判定するため、所定のタイミングで通信部１１０を介してサーバ装置と通信を行い、各ソフトウェアのバージョン情報の問い合わせを行う。そして、更新制御部１２０は、サーバ装置から取得したバージョン情報と、ソフトウェア管理情報１６２から取得したバージョン情報とを比較し、合致していない場合（より具体的には、サーバ装置のバージョンの方が新しい場合）に、対象ソフトウェアの更新を行う。
【００４２】
なお、更新制御部１２０は、ソフトウェアの更新を開始する前に、表示制御部１４０にソフトウェアの更新を実行するか否かを乗員に問い合わせるための画像を生成させ、生成させた画像を表示部６０に表示させてもよい。更新制御部１２０は、表示部６０により更新の実行を拒否する選択を受け付けた場合、ソフトウェアの更新を行わない。また、更新制御部１２０は、表示部６０により更新の実行を許可する選択を受け付けた場合に、ナビゲーション装置４０により目的地までの経路案内と連携させて、ソフトウェアを更新するタイミングを制御する。
【００４３】
図４は、更新制御部１２０の処理について説明するための図である。図４の例では、地図情報４４の一部が表示されている。図４に示す地図画像ＭＡＰ１は、位置や領域が縦１〜５および横Ａ〜Ｅのブロックによって識別可能に区分けされている。各ブロックは、例えば、道路や交差点によって区分けされてもよく、地図座標によって距離単位で区分けされてもよい。以下では、ブロックの区切り部分に道路や交差点が存在しているものとして説明する。
【００４４】
ナビゲーション装置４０は、例えば、ナビＨＭＩ４２により目的地の入力が受け付けられた場合に、車両Ｍの現在位置から目的地までの経路を決定する。図４の例では、自宅ＨＯに駐車している車両Ｍが存在する地点（現在地）Ｐ１から会社ＯＦ（目的地）が存在する地点Ｐ２までの経路Ｋ１が決定されている。次に、更新制御部１２０は、決定された経路Ｋ１における位置情報を用いて、通信履歴情報１６４を参照し、経路Ｋ１における過去の通信状況を取得し、取得した通信状況を地図画像ＭＡＰ１に反映させる。図４の例では、通信履歴情報１６４に基づいて地図画像ＭＡＰ１上に通信方式情報が重畳して示されている。図４には、通信規格が５Ｇで通信された領域（以下、「５Ｇエリア」と称し、他の規格についても同様とする）Ａ５と、４ＧエリアＡ４と、３ＧエリアＡ３と、Ｗｉ−ＦｉエリアＡＷ１〜ＡＷ４とが示されている。図４の例において、経路Ｋ１には、３Ｇ、４Ｇよりも高速通信が可能なＷｉ−ＦｉエリアＡＷ１、ＡＷ２、ＡＷ４、および５ＧエリアＡ５が含まれている。したがって、更新制御部１２０は、Ｗｉ−Ｆｉエリアや５Ｇエリアよりも通信が低速（通信速度が所定速度未満）である３ＧエリアＡ３および４ＧエリアＡ４での更新ソフトウェアのダウンロードを抑制し、高速通信が可能（通信速度が所定速度以上）であるＷｉ−ＦｉエリアＡＷ１、ＡＷ２、ＡＷ４、および５ＧエリアＡ５を車両Ｍが走行しているときに、更新ソフトウェアがダウンロードされるように更新のタイミングを制御する。
【００４５】
また、更新制御部１２０は、高速通信が可能なエリアが複数ある場合に、複数にエリアごとに設定される優先度に基づいて、更新ソフトウェアをダウンロードするタイミングを調整してもよい。優先度は、例えば、通信速度（最高速度）や規格の種類、通信可能エリアの大きさ、セキュリティの強弱、現在位置からの距離等によって設定される。例えば、５ＧエリアＡ５は、Ｗｉ−ＦｉエリアＡＷ１、ＡＷ２、およびＡＷ４よりも通信可能エリアが広域である。また、Ｗｉ−ＦｉエリアＡＷ１は、自宅ＨＯに設置され、乗員が契約したＷｉ−Ｆｉルータにより通信を行うエリアであり、企業や店舗等が提供する誰でも認証が不要または簡単な認証で使用できるＷｉ−Ｆｉエリア（Ｆｒｅｅ  Ｗｉ−Ｆｉエリア）ＡＷ２、ＡＷ４や、キャリアがユーザ認証を行った複数人に提供する５Ｇエリア５Ａよりもセキュリティが強い。したがって、更新制御部１２０は、優先度を高い方から、「Ｗｉ−ＦｉエリアＡＷ１」、「５Ｇエリア５Ａ」、「Ｗｉ−ＦｉエリアＡＷ２、ＡＷ４」と設定し、設定した優先度順にダウンロードする更新ソフトウェアのデータ量を割り当てる。また、更新制御部１２０は、更新ソフトウェアのデータをモジュール等で分割してダウンロードする場合に、どのエリアでどの程度のデータ量をダウンロードするかを設定してもよい。また、更新制御部１２０は、割り当てたダウンロードの予定を通信予定情報１６６として記憶部１６０に記憶させる。
【００４６】
図５は、通信予定情報１６６の内容の一例を示す図である。通信予定情報１６６は、例えば、エリア情報に、通信方式情報、データ量、およびデータ内容が対応付けられている。エリア情報は、例えば、データのダウンロードを行うエリアに関する情報である。データ内容は、例えば、ダウンロードする更新ソフトウェアのバージョン情報（例えば、Ｖ３．０）やモジュール情報等の内容である。例えば、リプログラミングするための更新ソフトウェアに含まれるプログラムモジュールがモジュール１〜５である場合、更新制御部１２０は、一又は複数のモジュール単位でダウンロードするエリア、データ量、データ内容を設定する。
【００４７】
なお、車両Ｍは、赤信号や渋滞等で停止している場合等を除き、目的地まで走行している。そのため、通信可能エリア内に存在する時間は、限られている。したがって、更新制御部１２０は、通信履歴情報１６４の記憶された日時情報、または、地図情報４４を参照して得られる経路上の道路の法定速度に基づいて、車両Ｍが通信可能範囲に存在する時間を推定してもよい。そして、更新制御部１２０は、推定した時間と、そのエリアでの通信速度とに基づいて、エリア通過時において、取得可能なデータ量を推定し、推定したデータ量に対応するダウンロードするデータ内容を設定する。図５の例では、Ｗｉ−ＦｉエリアＡＷ１で更新ソフトウェア（バージョン３．０）のモジュール１をダウンロードし、５ＧエリアＡ５で更新ソフトウェア（バージョン３．０）のモジュール２〜５をダウンロードするように通信予定が設定されている。更新制御部１２０は、設定された通信予定情報１６６に基づいて、更新ソフトウェアのダウンロードを行い、ダウンロード後に更新処理を行う。
【００４８】
また、通信上の混雑や通信強度の低下による通信不良等により、予定通りにデータをダウンロードできずにエリアを通過した場合、更新制御部１２０は、例えば、通信予定に含まれていなかった高速通信可能エリア（Ｗｉ−ＦｉエリアＡＷ２、ＡＷ４）を用いて、更新予定情報を再生成してもよい。なお、更新制御部１２０は、最初に通信予定情報を生成する場合に、再生成することを見越して、予め予備の高速通信エリアを残して通信予定情報を生成してもよい。また、更新制御部１２０は、地点Ｐ１から地点Ｐ２までの往路だけでなく、地点Ｐ２から地点Ｐ１までの復路も含めて通信予定情報を生成してもよい。
【００４９】
また、更新制御部１２０は、更新ソフトウェアが緊急性の高いソフトウェアである場合には、高速通信や低速通信に関係なく、現時点で通信可能な通信方式によって、更新ソフトウェアをダウンロードしてもよい。緊急性の高いソフトウェアとは、例えば、運転制御や駆動制御のように、車両Ｍの挙動への影響度が高いソフトウェアである。したがって、例えば、ナビゲーション装置４０に対する更新ソフトウェアについては、緊急性が高いソフトウェアではないため、上述した更新予定情報に基づいてデータのダウンロードおよび更新処理を実行する。また、緊急性の高いソフトウェアとは、外部から受信した更新情報に、緊急性の高いソフトウェアである旨の通知があったソフトウェアであってもよい。
【００５０】
また、更新制御部１２０は、更新ソフトウェアのデータ量が閾値以内である場合には、現時点で通信可能な通信によって更新ソフトウェアをダウンロードしてもよい。データ量が少ないデータの場合に、低速通信であっても短時間でダウンロードできるため、通信途中で切断されたり、通信状況が切り替わることが少なく、適切なリプログラミングを実現することができる。
【００５１】
また、更新制御部１２０は、データのダウンロード時における通信状況に基づいて、通信履歴情報１６４を更新する。これにより、リアルタイムで通信状況を取得することができ、通信状況の変化等を、より正確に把握することができる。
【００５２】
また、更新制御部１２０は、バッテリ管理部１５０により管理されたバッテリ５０のエネルギー残量や充放電の状態に基づいて、更新するタイミングを設定してもよい。例えば、エネルギー残量が所定量以上である場合に、ソフトウェアのリプログラミングを実行し、エネルギー残量が所定量未満である場合に、リプログラミングを抑制するように制御する。また、更新制御部１２０は、例えば、自宅等に停車している車両の充電コネクタ５２が充電設備に接続されている状態（充電状態）であって、且つ高速通信が可能な状態である場合に、ソフトウェアのリプログラミングを実行するように制御してもよい。これにより、リプログラミングの途中でバッテリ５０の電力がなくなり、リプログラミングが中断することを抑制することができる。したがって、リプログラミングにおける安全性を向上させることができる。
【００５３】
更新制御部１２０は、更新ソフトウェアによるリプログラミングが正常に終了した場合、記憶部１６０に記憶されたソフトウェア管理情報１６２を更新する。また、更新制御部１２０は、更新ソフトウェアによるリプログラミングが正常に終了しなかった場合には、所定のタイミングでリプログラミングを再実行してもよい。
【００５４】
［処理フロー］
図６は、第１実施形態のソフトウェア更新装置１００の処理の一例を示すフローチャートである。まず、更新制御部１２０は、サーバ装置等から送信された更新ソフトウェア情報のバージョン情報と、ソフトウェア管理情報１６２のバージョン情報とに基づいて、ソフトウェアを更新するか否かを判定する（ステップＳ１００）。ソフトウェアを更新すると判定された場合、更新制御部１２０は、緊急性が高い更新か否かを判定する（ステップＳ１０２）。緊急性が高い更新ではないと判定された場合、更新制御部１２０は、ナビゲーション装置４０から車両Ｍの目的地までの経路を取得し（ステップＳ１０４）、取得した経路に基づいて、記憶部１６０に記憶された通信履歴情報１６４を参照し、経路に対応する道路上での通信履歴（過去の通信状況等）を取得する（ステップＳ１０６）。
【００５５】
次に、更新制御部１２０は、通信履歴に基づいて、高速通信エリア（所定の通信状況の一例）以外での通信を抑制した通信予定情報１６６を生成する（ステップＳ１０８）。次に、更新制御部１２０は、生成した通信予定情報１６６に基づいて、予定したエリアで更新ソフトウェアのデータをダウンロードする（ステップＳ１１０）。なお、ステップＳ１０２の処理において、緊急性が高い更新であると判定された場合、更新制御部１２０は、現在位置で通信可能な通信状況下で更新ソフトウェアのデータをダウンロードする（ステップＳ１１２）。
【００５６】
ステップＳ１１０またはステップＳ１１２の処理が終了後、更新制御部１２０は、ソフトウェアを更新する（ステップＳ１１４）。次に、更新制御部１２０は、通信履歴情報１６４およびソフトウェア管理情報１６２を更新する（ステップＳ１１６）。これにより、本フローチャートの処理は、終了する。また、ステップＳ１００の処理において、ソフトウェアを更新しないと判定された場合、本フローチャートの処理は、終了する。
【００５７】
上述した第１実施形態のソフトウェア更新装置によれば、車両Ｍ（自車両）の過去の通信履歴に基づいて、高速通信を用いたデータのダウンロードを行うことができる。これにより、より迅速にソフトウェアの更新を行うことができる。
【００５８】
＜第２実施形態＞
次に、第２実施形態のソフトウェア更新装置１００について説明する。上述した第１実施形態において、更新制御部１２０は、ナビゲーション装置４０により設定された目的地までの経路に基づいて、通信履歴情報１６４を用いて更新ソフトウェアのデータをダウンロードするタイミングを制御した。一方、第２実施形態では、通信履歴情報の通信状況に基づいて、ナビゲーション経路を変更させるように制御する点で、第１実施形態と相違する。したがって、以下では、主に上述した相違点を中心として説明し、それ以外の説明は省略するものとする。また、以下では、第２実施形態では、第１実施形態と同様の車両システム１またはソフトウェア更新装置１００の構成が適用できるため、同様の構成を用いて説明するものとする。
【００５９】
図７は、更新制御部１２０がナビゲーション装置４０で決定される走行経路を変更させることについて説明するための図である。図７の例では、図４と同様に、地図画像ＭＡＰ１に、地図上での通信状況が反映した画像が示されている。例えば、ナビゲーション装置４０は、目的地として店舗ＳＨが設定された場合、地点Ｐ１から店舗ＳＨが存在する地点Ｐ３までの経路を決定する。図７の例において、ナビゲーション装置４０は、最短経路または最短走行時間に基づいて、経路Ｋ２を生成したとする。
【００６０】
更新制御部１２０は、経路Ｋ２に基づいて、通信予定情報を生成するが、経路Ｋ２上には、高速通信が可能な５ＧエリアやＷｉ−Ｆｉエリアが存在しない。そのため、更新制御部１２０は、通信履歴情報１６４に基づいて、経路Ｋ２付近に高速通信が可能なエリアが存在するか否かを判定する。経路Ｋ２付近とは、例えば、経路Ｋ２からの最短距離が所定距離以内の領域であって、経路Ｋ２上からは通信ができない領域である。距離を制限することで、目的地までの走行距離や走行時間が大幅に増加することを抑制することができる。
【００６１】
経路Ｋ２付近に高速通信可能エリアが存在する場合、更新制御部１２０は、その高速通信可能エリアを通過する新たな経路を生成し、生成した経路を、経路変更指示と共にナビゲーション装置４０に出力する。ナビゲーション装置４０は、経路変更指示に基づいて、新たに生成された経路を乗員に案内する経路として設定する。図７の例では、経路Ｋ２から５ＧエリアＡ５を走行する経路Ｋ３に変更されている。
【００６２】
更新制御部１２０は、経路Ｋ３に基づいて通信予定情報１６６を生成し、生成した通信予定情報１６６に基づいて、更新ソフトウェアのダウンロードを行う。
【００６３】
［処理フロー］
図８は、第２実施形態のソフトウェア更新装置１００の処理の一例を示すフローチャートである。図８に示す処理では、上述した第１実施形態のソフトウェア更新装置１００の処理と比較して、ステップＳ１０６とＳ１０８との処理の間に、ステップＳ１２０およびＳ１２２の処理が追加されている点で相違する。したがって、以下では、主にステップＳ１２０およびステップＳ１２２の処理を中心として説明する。
【００６４】
ステップＳ１０６の処理後、更新制御部１２０は、ナビゲーション装置４０によって生成された経路に、高速通信可能エリアが存在するか否かを判定する（ステップＳ１２０）、高速通信可能エリアが存在すると判定された場合、ステップＳ１０８以降の処理を実行する。また、高速通信可能エリアが存在しないと判定された場合、更新制御部１２０は、高速通信可能エリアを含む経路を生成し、生成した経路（変更経路）をナビゲーション装置４０に出力して経路を変更させる（ステップＳ１２２）。ステップＳ１２２の処理後、ソフトウェア更新装置１００は、ステップＳ１０８以降の処理を実行する。
【００６５】
上述した第２実施形態のソフトウェア更新装置によれば、通信履歴に基づいて、目的地までの経路を高速通信が可能な経路に変更することで、ナビゲーション装置４０による経路案内と連携させて、適切なタイミングで更新ソフトウェアのダウンロードを行うことができる。
【００６６】
なお、第２実施形態では、更新制御部１２０は、ナビゲーション装置４０が生成した経路に高速通信可能エリアが存在しない場合にソフトウェアの更新を行わずに、次回以降の処理で生成された目的地までの経路に高速通信可能エリアが含まれる場合に、更新ソフトウェアのデータをダウンロードする処理を行ってもよい。
【００６７】
＜第３実施形態＞
次に、第３実施形態のソフトウェア更新装置１００について説明する。第３実施形態では、他車両の通信履歴情報を取得し、取得した他車両の通信履歴情報に基づいて、更新ソフトウェアのデータをダウンロードするタイミングを制御する点で、第１実施形態と相違する。したがって、以下では、主に上述の相違点を中心として説明し、それ以外の説明は省略するものとする。また、以下では、第３実施形態では、第１実施形態と同様の車両システム１またはソフトウェア更新装置１００の構成が適用できるため、同様の構成を用いて説明するものとする。なお、第３実施形態では、他車両にもソフトウェア更新装置１００が搭載されているものとする。
【００６８】
図９は、第３実施形態のソフトウェア更新装置１００の処理の一例を示すフローチャートである。図９に示す処理では、上述した第３実施形態のソフトウェア更新装置１００の処理と比較して、ステップＳ１０６の処理に代えて、ステップＳ１３０およびＳ１３２の処理を備える点で相違する。したがって、以下では、主にステップＳ１３０およびステップＳ１３２の処理を中心として説明する。
【００６９】
ステップＳ１０４の処理後、通信部１１０は、車両Ｍの周辺（例えば、車両Ｍと車車間通信が可能な範囲、または所定距離以内）に存在する他車両と車車間通信を行い（ステップＳ１３０）、他車両から通信履歴情報を取得する（ステップＳ１３２）。車両Ｍの周辺に存在する他車両から周辺履歴情報を取得することで、車両Ｍの周辺地域における通信履歴情報が取得し易くなる。そして、更新制御部１２０は、他車両の通信履歴情報に基づいて、高速通信エリア以外の通信を抑制する通信予定情報を生成する（ステップＳ１０８）。
【００７０】
上述した第３実施形態のソフトウェア更新装置によれば、例えば、車両Ｍが現在位置の周辺地域の通信履歴情報を有していない場合であっても、他車両から取得した通信履歴情報に基づいて、より適切な通信予定情報を生成することができる。また、第３実施形態において、更新制御部１２０は、他車両の通信履歴情報と自車両（車両Ｍ）の通信履歴情報とを組み合わせてダウンロードするタイミングを制御してもよい。
【００７１】
＜第４実施形態＞
次に、第４実施形態のソフトウェア更新装置１００について説明する。第４実施形態では、サーバ装置側で、一又は複数の車両から通信履歴情報を取集し、収集した通信履歴情報に対する統計処理に基づいて通信状況マップを生成する。ソフトウェア更新装置１００の更新制御部１２０は、サーバ側で生成された通信状況マップを取得し、取得した通信状況マップに基づいて、ナビゲーション装置４０で決定された経路に対する通信予定情報を生成し、生成した通信予定情報に基づいて、更新ソフトウェアのダウンロードを実行する。
【００７２】
図１０は、第４実施形態に係るソフトウェア更新装置１００を含むソフトウェア更新システム２の構成の一例を示す図である。ソフトウェア更新システム２は、例えば、一以上の車両に搭載されたソフトウェア更新装置１００と、サーバ装置２００とを備える。ソフトウェア更新装置１００と、サーバ装置２００とは、ネットワークＮＷを介して互いに通信可能である。ネットワークＮＷは、例えば、セルラー網や、Ｗｉ−Ｆｉ網、Ｂｌｕｅｔｏｏｔｈ（登録商標）、インターネット、ＷＡＮ（Wide Area Network）、ＬＡＮ、公衆回線、プロバイダ装置、専用回線、無線基地局等を含む。また、これらの構成要素は、それぞれネットワークＮＷを介さずに、直接、無線通信を行ってもよい。
【００７３】
ソフトウェア更新装置１００は、例えば、上述第１実施形態〜第３実施形態の何れかで説明したソフトウェア更新装置１００が適用可能である。
【００７４】
図１１は、第４実施形態のサーバ装置２００の構成図である。サーバ装置２００は、例えば、サーバ側通信部２１０と、入力部２２０と、出力部２３０と、サーバ側制御部２４０と、サーバ側記憶部２５０とを備える。また、サーバ装置２００は、例えば、ソフトウェア更新装置１００と、ネットワークＮＷを介して互いに通信し、各種データを送受信するクラウドサーバとして機能してもよい。
【００７５】
サーバ側通信部２１０は、ＮＩＣ等の通信インターフェースを含む。サーバ側通信部２１０は、ネットワークＮＷを介して車両ごとに搭載されたソフトウェア更新装置１００と通信する。
【００７６】
入力部２２０は、例えば、ボタン、キーボードやマウス等のユーザインターフェースである。入力部２２０は、利用者（例えば、管理者等）の操作を受け付けて、受け付けた操作に応じた信号をサーバ側制御部２４０に出力する。入力部２２０は、出力部２３０の表示部と一体として構成されるタッチパネルであってもよい。
【００７７】
出力部２３０は、利用者に情報を出力する。出力部２３０は、例えば、画像を表示する表示部と、音声を出力する音声出力部とを備える。表示部は、例えば、ＬＣＤ（Liquid Crystal Display）や有機ＥＬ（Electro Luminescence）ディスプレイ等の表示装置を含む。表示部は、サーバ側制御部２４０により出力される情報の画像を表示する。音声出力部は、例えば、スピーカである。音声出力部は、サーバ側制御部２４０により出力される情報の音声を出力する。
【００７８】
サーバ側制御部２４０は、例えば、通信履歴取得部２４２と、マップ生成部２４４と、情報提供部２４６とを備える。サーバ側制御部２４０の各構成要素は、例えば、ＣＰＵ等のプロセッサがサーバ側記憶部２５０に格納されたプログラムを実行することにより実現される。また、サーバ側制御部２４０の構成要素の一部または全部は、ＬＳＩ、ＡＳＩＣ、ＦＰＧＡ、またはＧＰＵ等のハードウェア（回路部；circuitry）により実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。
【００７９】
サーバ側記憶部２５０は、例えば、ＨＤＤ、フラッシュメモリ、ＥＥＰＲＯＭ、ＲＯＭ、ＲＡＭ等の記憶装置により実現される。サーバ側記憶部２５０には、サーバ側通信履歴情報２５２、通信状況マップ２５４、プロセッサによって読み出されて実行されるプログラム、およびその他各種情報等が格納される。
【００８０】
通信履歴取得部２４２は、ネットワークＮＷを介して一以上の車両から送信された通信履歴情報を取得し、取得した通信履歴情報をサーバ側通信履歴情報２５２としてサーバ側記憶部２５０に記憶させる。図１２は、サーバ側通信履歴情報２５２の内容の一例を示す図である。サーバ側通信履歴情報２５２は、車両を識別する識別情報としての車両ＩＤに、日時情報、位置情報、通信方式情報、データ量、およびデータ内容が対応付けられている。これにより、通信履歴情報を車両ごとに管理することができる。
【００８１】
マップ生成部２４４は、サーバ側通信履歴情報２５２に基づいて、通信状況を示すマップを生成する。図１３は、マップ生成部２４４により生成されるマップの一例を示す図である。図１３の例では、上述した図４と同様の領域からなる地図画像ＭＡＰ２が示されている。この地図画像ＭＡＰ２は、車両から取得してもよく、サーバ側記憶部２５０に記憶された地図情報（不図示）から取得してもよい。マップ生成部２４４は、例えば、地図画像ＭＡＰ２における位置情報と、サーバ側通信履歴情報２５２の位置情報とを対応付けて、地図画像ＭＡＰ２上に、通信方式ごとに通信可能エリアをプロットする。
【００８２】
この場合、マップ生成部２４４は、高速通信以外の通信方式（例えば、Ｇ３）の通信可能エリアを地図画像ＭＡＰ２上にプロットしないようにしてもよい。これにより、車両側で通信状況マップを用いて通信予定情報を生成する場合に、高速通信以外の通信を抑制することができる。
【００８３】
また、マップ生成部２４４は、個人契約等により第三者が使用することができない通信方式（例えば、Ｆｒｅｅ  Ｗｉ−Ｆｉではなく、プライベートＷｉ−Ｆｉ（自宅Ｗｉ−Ｆｉ）の通信可能エリアを地図画像ＭＡＰ２上にプロットしないようにしてもよい。これにより、車両の乗員が個人で契約した情報を含めずに通信状況マップを生成することができる。したがって、通信状況マップに含まれる通信可能な領域だけの情報から、適切な通信予定を生成することができる。図１３の例では、５ＧエリアＡ５と、４ＧエリアＡ４、Ａ４２と、Ｗｉ−ＦｉエリアＡＷ２〜ＡＷ７とが示されている。マップ生成部２４４は、生成した通信状況マップ２５４をサーバ側記憶部２５０に記憶させる。なお、マップ生成部２４４は、所定の周期またはタイミングでマップ生成を繰り返し行うことで、リアルタイムな通信状況を管理することができる。
【００８４】
情報提供部２４６は、車両からの通信状況マップの取得要求に基づいて、サーバ側記憶部２５０に記憶された通信状況マップ２５４を要求のあった車両に送信する。なお、情報提供部２４６は、車両から現在位置や目的地に関する情報が送信された場合、通信状況マップ２５４のうち、車両の現在位置および目的地を含むマップを抽出し、抽出したマップを車両に送信してもよい。これにより、データ量を削減することができる。
【００８５】
なお、第４実施形態におけるサーバ装置２００は、通信状況マップの生成や提供を行う機能に加えて、更新ソフトウェアを配信する機能を備えていてもよい。この場合、情報提供部２４６は、車両のＥＣＵ等に対してソフトウェアの更新があり場合に、更新情報をソフトウェア更新装置１００に送信する。また、情報提供部２４６は、例えば、ソフトウェア更新装置１００の通知に応じて、車両の乗員または所有者等から更新指示を受け付けた場合に、ソフトウェア更新装置１００によって制御されたダウンロードのタイミングに基づいて、更新に用いられる情報（更新ソフトウェア等）を、ネットワークＮＷを介して送信する。
【００８６】
また、情報提供部２４６は、通信状況マップを提供するのに代えて（または加えて）、サーバ側通信履歴情報２５２を用いた統計処理等の学習結果に基づいて、車両ごとの行動パターンを予測し、予測した行動パターンを用いた将来の行動予測に基づいて、車両ごとに、更新データをダウンロードする通信予定情報を生成してもよい。また、情報提供部２４６は、予測した行動パターンに基づいて、運転者の感情等を推定し、推定した結果に基づいて通信予定情報を生成してもよい。ソフトウェア更新装置１００は、情報提供部２４６から提供された通信予定情報を用いて更新データのダウンロードを行うことで、通信予定を設定するための処理負荷を低減させることができる。
【００８７】
［処理フロー］
図１４は、第４実施形態のソフトウェア更新装置１００の処理の一例を示すフローチャートである。図１４に示す処理では、上述した第１実施形態のソフトウェア更新装置１００の処理と比較して、ステップＳ１０６およびＳ１０８の処理に代えてステップＳ１４０およびＳ１４２の処理を備える点、ステップＳ１１６の処理に代えてステップＳ１４４およびＳ１４６の処理を備える点で相違する。したがって、以下では、主にステップＳ１４０〜Ｓ１４６の処理を中心として説明する。
【００８８】
第４実施形態において、更新制御部１２０は、ステップＳ１０４の処理後に、通信部１１０を介してサーバ装置２００と通信を行い、ステップＳ１０４の処理において取得した経路を含む地域の通信状況マップを取得する（ステップＳ１４０）。次に、更新制御部１２０は、目的地までの経路および通信状況マップに基づいて通信予定情報を生成し（ステップＳ１４２）、ステップＳ１１０以降の処理を行う。
【００８９】
また、第４実施形態において、更新制御部１２０は、ステップＳ１１４の処理が終了後、ソフトウェア管理情報１６２を更新し（ステップＳ１４４）、この度のソフトウェア更新における通信履歴情報をサーバ装置２００に送信する（ステップＳ１４６）。
【００９０】
図１５は、第４実施形態のサーバ装置２００におけるマップ生成処理の一例を示すフローチャートである。通信履歴取得部２４２は、ネットワークＮＷを介して各車両から通信履歴情報を取得し（ステップＳ２００）、取得した通信履歴情報に基づいてサーバ側通信履歴情報２５２にサーバ側記憶部２５０に記憶させる（ステップＳ２０２）。次に、マップ生成部２４４は、サーバ側通信履歴情報の統計処理を行い、通信状況マップを生成し（ステップＳ２０４）、生成した通信状況マップ２５４をサーバ側記憶部２５０に記憶させる（ステップＳ２０６）。これにより、本フローチャートの処理は、終了する。
【００９１】
図１６は、第４実施形態のサーバ装置２００におけるマップ提供処理の一例を示すフローチャートである。情報提供部２４６は、車両からマップ取得要求を取得したか否かを判定する（ステップＳ２１０）。マップ取得要求を取得した場合、情報提供部２４６は、車両の現在位置および目的地までの経路を含む通信状況マップを取得し（ステップＳ２１２）、取得した通信状況マップを車両に送信する（ステップＳ２１４）。これにより、本フローチャートの処理は、終了する。また、ステップＳ２１０の処理において、車両からマップ取得要求を取得していないと判定された場合、本フローチャートの処理は、終了する。
【００９２】
上述した第４実施形態によれば、サーバ装置２００によって通信履歴情報が管理させたり、通信状況マップが生成されるため、ソフトウェア更新装置１００は、更新処理の負担を低減させることができる。また、第４実施形態のソフトウェア更新装置によれば、サーバ装置２００によって生成された通信状況に基づいて通信予定情報を生成することができるため、より適切なタイミングでデータをダウンロードすることができる。
【００９３】
上述した第１〜第４実施形態のそれぞれは、他の実施形態の一部または全部を組み合わせてもよい。上述した各実施形態によれば、高速通信環境化でデータの送受信を行うことによりリアルタイム性を担保することができ、例えば、車両のイグニッションサイクル（イグニッションがオン状態）中にデータをダウンロードすることができる。また、各実施形態によれば、低速通信が可能であっても、敢えてデータの送受信を行わないことで、通信占有による障害を抑制することができ、大容量のデータであっても迅速にダウンロードすることができる。
【００９４】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形および置換を加えることができる。
【符号の説明】
【００９５】
１…車両システム、２…ソフトウェア更新システム、１０…車載装置、２０…運転制御装置、３０…駆動制御装置、４０…ナビゲーション装置４０…バッテリ、６０…表示部、１００…ソフトウェア更新装置、１１０…通信部、１２０…更新制御部、１３０…通信状況管理部、１４０…表示制御部、１５０…バッテリ管理部、１６０…記憶部、２００…サーバ装置、２１０…サーバ側通信部、２２０…入力部、２３０…出力部、２４０…サーバ側制御部、２５０…サーバ側記憶部
【図１】
2020190479.tif 000003
【図２】
2020190479.tif 000004
【図３】
2020190479.tif 000005
【図４】
2020190479.tif 000006
【図５】
2020190479.tif 000007
【図６】
2020190479.tif 000008
【図７】
2020190479.tif 000009
【図８】
2020190479.tif 000010
【図９】
2020190479.tif 000011
【図１０】
2020190479.tif 000012
【図１１】
2020190479.tif 000013
【図１２】
2020190479.tif 000014
【図１３】
2020190479.tif 000015
【図１４】
2020190479.tif 000016
【図１５】
2020190479.tif 000017
【図１６】
2020190479.tif 000018