(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-23
(45)【発行日】2023-10-31
(54)【発明の名称】ソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバ
(51)【国際特許分類】
G06F 8/65 20180101AFI20231024BHJP
B60R 16/02 20060101ALI20231024BHJP
G06F 8/61 20180101ALI20231024BHJP
【FI】
G06F8/65
B60R16/02 660U
G06F8/61
(21)【出願番号】P 2020127515
(22)【出願日】2020-07-28
【審査請求日】2022-06-22
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】110001276
【氏名又は名称】弁理士法人小笠原特許事務所
(72)【発明者】
【氏名】浜崎 隼
【審査官】児玉 崇晶
(56)【参考文献】
【文献】特開2016-071879(JP,A)
【文献】米国特許出願公開第2020/0073651(US,A1)
【文献】米国特許出願公開第2017/0060559(US,A1)
【文献】特開2020-027669(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 8/65
B60R 16/02
G06F 8/61
(57)【特許請求の範囲】
【請求項1】
車両に搭載された電子制御ユニットのソフトウェア更新を制御するソフトウェア更新装置であって、
前記電子制御ユニットのソフトウェアの更新データをサーバからダウンロードする第1通信部と、
前記更新データのインストール前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かを示す確認結果を前記サーバから受信する第2通信部と
、
前記更新データのインストール後、かつ、アクティベート前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かの確認結果を前記サーバから受信する第3通信部と、
前記電子制御ユニットのソフトウェア更新を制御する制御部とを備え、
前記制御部は、前記第2通信部が受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データのインストールを行わ
ず、前記第3通信部が受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データをインストールした電子制御ユニットが実行するソフトウェアを、前記更新データがインストールされる前の旧ソフトウェアとする、ソフトウェア更新装置。
【請求項2】
前記制御部は、前記第3通信部が受信した確認結果に基づいて前記更新データが有効でないと判定され、かつ、更新対象の電子制御ユニットに搭載された不揮発性メモリが2つの格納領域を有する場合、更新後のソフトウェアのアクティベートを行わない、請求項
1に記載のソフトウェア更新装置。
【請求項3】
前記更新データのインストール前に更新対象の電子制御ユニットで実行されていた前記旧ソフトウェアのデータを記憶する記憶部を備え、
前記制御部は、前記第3通信部が受信した確認結果に基づいて前記更新データが有効でないと判定され、かつ、更新対象の電子制御ユニットに搭載された不揮発性メモリが1つの格納領域を有する場合、前記記憶部に記憶される前記旧ソフトウェアのデータを用いて旧ソフトウェアの再インストールを行う、請求項
1に記載のソフトウェア更新装置。
【請求項4】
プロセッサと、メモリと、記憶装置とを備えるコンピュータが、車両に搭載された電子制御ユニットのソフトウェア更新を制御するために実行する更新制御方法であって、
前記電子制御ユニットのソフトウェアの更新データをサーバからダウンロードするステップと、
前記更新データのインストール前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かを示す確認結果を前記サーバから受信するステップと、
前記更新データのインストール後、かつ、アクティベート前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かの確認結果を前記サーバから受信するステップと、
前記電子制御ユニットのソフトウェア更新を制御するステップとを含み、
前記ソフトウェア更新を制御するステップにおいて、
前記更新データのインストール前に前記サーバから受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データのインストールを行わ
ず、前記更新データのインストール後、かつ、アクティベート前に前記サーバから受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データをインストールした電子制御ユニットが実行するソフトウェアを、前記更新データがインストールされる前の旧ソフトウェアとする、更新制御方法。
【請求項5】
プロセッサと、メモリと、記憶装置とを備えるコンピュータが、車両に搭載された電子制御ユニットのソフトウェア更新を制御するために実行する更新制御プログラムであって、
前記電子制御ユニットのソフトウェアの更新データをサーバからダウンロードするステップと、
前記更新データのインストール前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かを示す確認結果を前記サーバから受信するステップと、
前記更新データのインストール後、かつ、アクティベート前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かの確認結果を前記サーバから受信するステップと、
前記電子制御ユニットのソフトウェア更新を制御するステップとを含み、
前記ソフトウェア更新を制御するステップにおいて、
前記更新データのインストール前に前記サーバから受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データのインストールを行わ
ず、前記更新データのインストール後、かつ、アクティベート前に前記サーバから受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データをインストールした電子制御ユニットが実行するソフトウェアを、前記更新データがインストールされる前の旧ソフトウェアとする、更新制御方法。
【請求項6】
車両に搭載された電子制御ユニットのソフトウェア更新を管理するサーバであって、
前記電子制御ユニットのソフトウェアの更新データを前記車両に送信する第1通信部と、
前記更新データが有効であるか否かを確認するための有効性確認要求を
、前記更新データが前記車両においてインストールされる前、および、前記更新データが前記車両においてインストールされた後、かつ、アクティベートされる前に、前記車両から受信すると、
各々のタイミングにおいて前記更新データが有効であるか否かを示す確認結果を前記車両に送信する第2通信部とを備え、
前記第2通信部は、前記更新データを用いたソフトウェア更新がキャンセルされた場合、前記更新データが有効でないことを示す確認結果を前記車両に送信する、サーバ。
【請求項7】
車両に搭載された電子制御ユニットのソフトウェア更新を制御するOTAマスタであって、
前記電子制御ユニットのソフトウェアの更新データをセンタからダウンロードする第1通信部と、
前記更新データのインストール前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記センタに送信し、前記更新データが有効であるか否かを示す確認結果を前記センタから受信する第2通信部と
前記更新データのインストール後、かつ、アクティベート前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かの確認結果を前記サーバから受信する第3通信部と、
前記電子制御ユニットのソフトウェア更新を制御する制御部とを備え、
前記制御部は、前記第2通信部が受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データのインストールを行わ
ず、前記第3通信部が受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データをインストールした電子制御ユニットが実行するソフトウェアを、前記更新データがインストールされる前の旧ソフトウェアとする、OTAマスタ。
【請求項8】
車両に搭載された電子制御ユニットのソフトウェア更新を管理するセンタであって、
前記電子制御ユニットのソフトウェアの更新データを前記車両に送信する第1通信部と、
前記更新データが有効であるか否かを確認するための有効性確認要求を
、前記更新データが前記車両においてインストールされる前、および、前記更新データが前記車両においてインストールされた後、かつ、アクティベートされる前に、前記車両から受信すると、
各々のタイミングにおいて前記更新データが有効であるか否かを示す確認結果を前記車両に送信する第2通信部とを備え、
前記第2通信部は、前記更新データを用いたソフトウェア更新がキャンセルされた場合、前記更新データが有効でないことを示す確認結果を前記車両に送信する、センタ。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、電子制御ユニットのソフトウェアの更新を制御するためのソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバに関する。
【背景技術】
【0002】
車両には、車両の動作を制御するための複数の電子制御ユニット(ECU)が搭載されている。ECUは、プロセッサと、RAMのような一時的な記憶部と、フラッシュROMのような不揮発性の記憶部とを備え、プロセッサが不揮発性の記憶部に記憶されるソフトウェアを実行することによりECUの制御機能を実現する。各ECUが記憶するソフトウェアは書き換え可能であり、より新しいバージョンのソフトウェアに更新することにより、各ECUの機能を改善したり、新たな車両制御機能を追加したりすることができる。
【0003】
ECUのソフトウェアを更新する技術として、車載ネットワークに接続された車載通信機器とインターネット等の通信ネットワークとを無線で接続し、無線通信を介してサーバからソフトウェアをダウンロードし、ダウンロードしたソフトウェアをインストールすることによりECUのプログラム更新や追加を行うOTA(Over The Air)技術が知られている(例えば、特許文献1参照)。
【0004】
OTAによるソフトウェアの更新は、ソフトウェア更新を行うイベント(キャンペーン)がサーバに登録された後、車両がサーバに更新データの有無の確認を要求したことを契機として行われる。ソフトウェア更新のキャンペーンがある場合、車両は、更新データのダウンロード、更新データのインストール及び更新版のソフトウェアのアクティベートを順次行うことにより、更新対象の電子制御ユニットのソフトウェアを更新する。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
車両においては、ダウンロード、インストール及びアクティベートの全処理が連続して行われず、例えば、更新データのダウンロード後、時間が経過してからインストール以降の処理が行われるケースが想定される。一方、サーバにおいては、車両が更新データをダウンロードした後に、ソフトウェア更新のキャンペーンがキャンセルされる可能性がある。キャンペーンがキャンセルされた場合、更新対象の電子制御ユニットのソフトウェアは、キャンセルされたキャンペーンの登録前における有効かつ最新のものであることが必要である。
【0007】
それ故に、本開示は、ソフトウェア更新のキャンペーンがキャンセルされた場合に、更新対象であった電子制御ユニットのソフトウェアを、有効かつ最新の状態に維持できるソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバを提供することを目的とする。
【課題を解決するための手段】
【0008】
本開示に係るソフトウェア更新装置は、電子制御ユニットのソフトウェアの更新データをサーバからダウンロードする第1通信部と、更新データのインストール前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバに送信し、更新データが有効であるか否かを示す確認結果をサーバから受信する第2通信部と、更新データのインストール後、かつ、アクティベート前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバに送信し、更新データが有効であるか否かの確認結果をサーバから受信する第3通信部と、電子制御ユニットのソフトウェア更新を制御する制御部とを備え、制御部は、第2通信部が受信した確認結果に基づいて更新データが有効でないと判定される場合、更新データのインストールを行わず、第3通信部が受信した確認結果に基づいて更新データが有効でないと判定される場合、更新データをインストールした電子制御ユニットが実行するソフトウェアを、更新データがインストールされる前の旧ソフトウェアとするものである。
【0009】
本開示に係る更新制御方法は、プロセッサと、メモリと、記憶装置とを備えるコンピュータが、車両に搭載された電子制御ユニットのソフトウェア更新を制御するために実行する方法であって、電子制御ユニットのソフトウェアの更新データをサーバからダウンロードするステップと、更新データのインストール前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバに送信し、更新データが有効であるか否かを示す確認結果をサーバから受信するステップと、更新データのインストール後、かつ、アクティベート前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバに送信し、更新データが有効であるか否かの確認結果をサーバから受信するステップと、電子制御ユニットのソフトウェア更新を制御するステップとを含み、ソフトウェア更新を制御するステップにおいて、更新データのインストール前に、サーバから受信した確認結果に基づいて更新データが有効でないと判定される場合、更新データのインストールを行わず、更新データのインストール後、かつ、アクティベート前にサーバから受信した確認結果に基づいて更新データが有効でないと判定される場合、更新データをインストールした電子制御ユニットが実行するソフトウェアを、更新データがインストールされる前の旧ソフトウェアとするものである。
【0010】
本開示に係る更新制御プログラムは、プロセッサと、メモリと、記憶装置とを備えるコンピュータが、車両に搭載された電子制御ユニットのソフトウェア更新を制御するために実行するプログラムであって、電子制御ユニットのソフトウェアの更新データをサーバからダウンロードするステップと、更新データのインストール前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバに送信し、更新データが有効であるか否かを示す確認結果をサーバから受信するステップと、更新データのインストール後、かつ、アクティベート前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバに送信し、更新データが有効であるか否かの確認結果をサーバから受信するステップと、電子制御ユニットのソフトウェア更新を制御するステップとを含み、ソフトウェア更新を制御するステップにおいて、更新データのインストール前に、サーバから受信した確認結果に基づいて更新データが有効でないと判定される場合、更新データのインストールを行わず、更新データのインストール後、かつ、アクティベート前にサーバから受信した確認結果に基づいて更新データが有効でないと判定される場合、更新データをインストールした電子制御ユニットが実行するソフトウェアを、更新データがインストールされる前の旧ソフトウェアとするものである。
【0011】
本開示に係るサーバは、電子制御ユニットのソフトウェアの更新データを車両に送信する第1通信部と、更新データが有効であるか否かを確認するための有効性確認要求を、更新データが車両においてインストールされる前、および、更新データが車両においてインストールされた後、かつ、アクティベートされる前に、車両から受信すると、各々のタイミングにおいて更新データが有効であるか否かを示す確認結果を車両に送信する第2通信
部とを備え、第2通信部は、更新データを用いたソフトウェア更新がキャンセルされた場合、更新データが有効でないことを示す確認結果を車両に送信するものである。
【発明の効果】
【0012】
本開示によれば、ソフトウェア更新のキャンペーンがキャンセルされた場合に、更新対象であった電子制御ユニットのソフトウェアを、有効かつ最新の状態に維持できるソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバを提供できる。
【図面の簡単な説明】
【0013】
【
図1】実施形態に係るネットワークシステムの全体構成を示すブロック図
【
図2】
図1に示したサーバの概略構成を示すブロック図
【
図3】
図1に示したソフトウェア更新装置の概略構成を示すブロック図
【
図5】
図1に示したソフトウェア更新装置の機能ブロック図
【
図6】実施形態に係るサーバが実行する制御処理の一例を示すフローチャート
【
図7】実施形態に係るソフトウェア更新装置が実行する制御処理の一例を示すフローチャート
【
図8】
図7に示すインストール/アクティベート処理の詳細を示すフローチャート
【
図9】
図8に示す復元処理の詳細を示すフローチャート
【発明を実施するための形態】
【0014】
(第1の実施形態)
図1は、実施形態に係るネットワークシステムの全体構成を示すブロック図であり、
図2は、
図1に示したサーバの概略構成を示すブロック図であり、
図3は、
図1に示したソフトウェア更新装置の概略構成を示すブロック図である。
【0015】
図1に示すネットワークシステムは、車両に搭載された電子制御ユニット13a~13dのソフトウェアを更新するためのシステムであり、サーバ1(センタ)と、車両に搭載される車載ネットワーク2とを備える。
【0016】
サーバ1は、ネットワーク5を介して車両に搭載されたソフトウェア更新装置11と通信可能であり、車両に搭載された電子制御ユニット13a~13dのソフトウェア更新を管理する。
【0017】
図2に示すように、サーバ1は、CPU21と、RAM22と、記憶装置23と、通信装置24とを備える。記憶装置23は、ハードディスクやSSD等の読み書き可能な記憶媒体を備え、ソフトウェアの更新管理を実行するためのプログラムや、更新管理に用いる情報、電子制御ユニットの更新データを記憶する。サーバ1において、CPU21は、記憶装置23から読み出したプログラムを、RAM22を作業領域として用いて実行することにより、後述する制御処理を実行する。通信装置24は、ネットワークを介してソフトウェア更新装置11と通信を行う機器である。
【0018】
車載ネットワーク2は、ソフトウェア更新装置11(OTAマスタ)と、通信モジュール12と、複数の電子制御ユニット13a~13dと、表示装置14とを備える。ソフトウェア更新装置11は、バス15aを介して通信モジュール12と接続され、バス15bを介して電子制御ユニット13a及び13bと接続され、バス15cを介して電子制御ユニット13c及び13dと接続され、バス15dを介して表示装置14と接続されている。ソフトウェア更新装置11は、通信モジュール12を介してサーバ1と無線での通信が可能である。ソフトウェア更新装置11は、サーバ1から取得した更新データに基づいて、電子制御ユニット13a~13dのうちの更新対象の電子制御ユニットのソフトウェア更新を制御する。ソフトウェア更新装置11は、セントラルゲートウェイと称される場合もある。通信モジュール12は、車載ネットワーク2とサーバ1とを接続する通信機器である。電子制御ユニット13a~13dは、車両の各部の動作を制御する。表示装置14(HMI)は、電子制御ユニット13a~13dのソフトウェアの更新処理時に、更新データがあることの表示や、ユーザや管理者にソフトウェア更新に対する承諾を求めるための承諾要求画面の表示、更新結果の表示等の各種表示を行うために用いられる。表示装置14としては、典型的にはカーナビゲーションシステムの表示装置を用いることができるが、プログラムの更新処理時に必要な情報を表示可能なものであれば特に限定されない。尚、
図1においては、4つの電子制御ユニット13a~13dを例示したが、電子制御ユニットの数は特に限定されない。また、
図1に示すバス15dには、表示装置14以外の電子制御ユニットが更に接続されていても良い。
【0019】
電子制御ユニット13a~13dは、CPUと、RAMと、不揮発性メモリと、通信装置とを備える。CPUは、不揮発性メモリから読み出したソフトウェア(プログラム)を、RAMを作業領域として用いて実行することにより、各電子制御ユニットの機能を実現する。ここで、電子制御ユニットには、ソフトウェアを格納するための1つのデータ格納領域(バンク)を有するものと、ソフトウェアを格納するための2つのデータ格納領域(バンク)を有するものとがある。電子制御ユニットのデータ格納領域には、電子制御ユニットの機能を実現するためのソフトウェアの他に、バージョン情報やパラメータデータ、起動用のブートプログラム、ソフトウェア更新用のプログラム等が格納される場合がある。1つのデータ格納領域を持つ電子制御ユニットにおいては、データ格納領域に更新データをインストールすることにより、電子制御ユニットのソフトウェアに影響が生じる。一方、2つのデータ格納領域を持つ電子ユニットにおいては、2つのデータ格納領域のうち、いずれか一方を読み出し対象の格納領域(運用面)とし、読み出し対象の格納領域に格納されるソフトウェアを実行する。読み出し対象でない他方の格納領域(非運用面)には、読み出し対象の格納領域(運用面)のプログラムの実行中に、バックグラウンドで更新データを書き込み可能である。ソフトウェア更新処理におけるアクティベート時には、CPU41によるプログラムの読み出し対象の格納領域を切り替えることにより、更新版のソフトウェアをアクティベートすることができる。
【0020】
尚、本開示において、2つのデータ格納領域を有する電子制御ユニットには、不揮発性メモリが有する1面のデータ格納領域を擬似的に2面に区画し、一方の面のプログラムを実行中に他方の面にプログラムを書き込み可能にした「1面サスペンドメモリ」と呼ばれる構成のメモリを備えた電子制御ユニットと、1面のデータ格納領域を有する不揮発性メモリに加え、1面のデータ格納領域を有する拡張不揮発性メモリを備え、これら2つの不揮発性メモリを運用面及び非運用面として使用可能な電子制御ユニットも含まれる。
【0021】
図3に示すように、ソフトウェア更新装置11は、CPU31と、RAM32と、ROM33と、記憶装置34とを備えるマイクロコンピュータ35と、通信装置36とを備える。ソフトウェア更新装置11において、マイクロコンピュータ35のCPU31は、ROM33から読み出したプログラムを、RAM32を作業領域として用いて実行することにより、後述する制御処理を実行する。通信装置36は、
図1に示したバス15a~15dを介して、通信モジュール12、電子制御ユニット13a~13d、表示装置14と通信を行う機器である。
【0022】
ここで、ソフトウェアの更新処理は、サーバ1から更新データをダウンロードするフェーズと、ダウンロードした更新データを更新対象の電子制御ユニットに転送し、更新対象の電子制御ユニットの記憶領域に更新データをインストールするフェーズと、更新対象の電子制御ユニットにおいてインストールした更新版のソフトウェアを有効化するアクティベートのフェーズとからなる。
【0023】
ダウンロードは、サーバ1から送信された、電子制御ユニットのソフトウェアを更新するための更新データを受信して記憶する処理である。ダウンロードのフェーズでは、更新データの受信だけでなく、ダウンロードの実行可否判断、更新データの検証等、ダウンロードに関する一連の処理の制御を含む。インストールは、ダウンロードした更新データに基づいて、更新対象の電子制御ユニットに車載機器の記憶部に更新版のプログラム(更新ソフトウェア)を書き込む処理である。インストールのフェーズでは、インストール実行だけでなく、インストールの実行可否判断、更新データの転送および更新版のプログラムの検証等、インストールに関する一連の処理の制御を含む。アクティベートは、インストールした更新版のプログラムを有効化(アクティベート)する処理である。アクティベートする制御は、アクティベート実行だけでなく、アクティベートの実行可否判断、実行結果の検証等、アクティベートに関する一連の制御を含む。
【0024】
サーバ1からソフトウェア更新装置11に送信される更新データは、電子制御ユニットの更新ソフトウェア、更新ソフトウェアを圧縮した圧縮データ、更新ソフトウェアまたは圧縮データを分割した分割データのいずれを含んでいても良い。また、更新データは、更新対象の電子制御ユニットを識別する識別子(ECU ID)と、更新前のソフトウェアを識別する識別子(ECU ソフトウェア ID)を含んでいても良い。更新データは、上述した配信パッケージとしてダウンロードされるが、配信パッケージには、単一または複数の電子制御ユニットの更新データが含まれる。
【0025】
更新データが更新ソフトウェアそのものを含む場合は、インストールのフェーズにおいて、ソフトウェア更新装置が更新データ(更新ソフトウェア)を更新対象の電子制御ユニットに転送する。また、更新データが更新ソフトウェアの圧縮データ、差分データあるいは分割データを含む場合、ソフトウェア更新装置11が更新対象の電子制御ユニットに更新データを転送し、更新対象の電子制御ユニットが更新データから更新ソフトウェアを生成しても良いし、ソフトウェア更新装置11が更新データから更新ソフトウェアを生成してから、更新ソフトウェアを更新対象の電子制御ユニットに転送しても良い。ここで、更新ソフトウェアの生成は、圧縮データの解凍、差分データまたは分割データの組み付けにより行うことができる。
【0026】
更新ソフトウェアのインストールは、ソフトウェア更新装置11からのインストール要求に基づき、更新対象の電子制御ユニットが行うことができる。あるいは、更新データを受信した更新対象の電子制御ユニットが、ソフトウェア更新装置11からの明示の指示を受けることなく、自律的にインストールを行っても良い。
【0027】
更新ソフトウェアのアクティベートは、ソフトウェア更新装置11からのアクティベート要求に基づき、更新対象の電子制御ユニットが行うことができる。あるいは、更新データを受信した更新対象の電子制御ユニットが、ソフトウェア更新装置11からの明示の指示を受けることなく、自律的にアクティベートを行っても良い。
【0028】
尚、ソフトウェアの更新処理は、複数の電子制御ユニットのそれぞれに対して、連続的あるいは並列的に行うことができる。
【0029】
また、本明細書における「プログラム更新処理」は、ダウンロード・インストール・アクティベートの全てを連続して行う処理だけでなく、ダウンロード・インストール・アクティベートの一部のみを行う処理も含む。
【0030】
図4は、
図1に示したサーバの機能ブロック図である。
【0031】
サーバ1は、記憶部26と、第1通信部27aと、第2通信部27bと、制御部28とを備える。第1通信部27a、第2通信部27b及び制御部28は、
図2に示したCPU21がRAM22を用いて記憶装置23に記憶されるプログラムを実行することにより実現され、記憶部26は、
図2に示した記憶装置23により実現される。
【0032】
記憶部26は、車両を識別する車両識別情報(車両ID)毎に、車両に搭載された1以上の電子制御ユニットで利用可能なソフトウェアを示す情報とを関連付けた更新管理情報と、電子制御ユニットのソフトウェアの更新データとを記憶する。電子制御ユニットで利用可能なソフトウェアを示す情報として、例えば、複数の電子制御ユニットのそれぞれのソフトウェアの最新のバージョン情報の組み合わせが定義される。更新管理情報及び更新データは、電子制御ユニットのソフトウェア更新のキャンペーン登録時に記憶部26に格納される。
【0033】
第1通信部27aは、ソフトウェア更新装置11からソフトウェアの更新確認要求を受信可能である。更新確認要求は、例えば、車両において電源またはイグニッションがオンされたときに、ソフトウェア更新装置11からサーバ1へと送信される情報であって、電子制御ユニットの更新データがあるか否かの確認をサーバ1に要求するための情報である。第1通信部27aは、ソフトウェア更新装置11から受信した更新確認要求に応答して、更新データの有無を示す情報をソフトウェア更新装置11に送信する。また、第1通信部27aは、ソフトウェア更新装置11からの配信パッケージの送信要求(ダウンロード要求)を受信可能である。第1通信部27aは、配信パッケージのダウンロード要求を受信すると、電子制御ユニットのソフトウェアの更新データを含む配信パッケージをソフトウェア更新装置11に送信する。
【0034】
第2通信部27bは、ソフトウェア更新装置11から更新データの有効性確認要求を受信可能である。有効性確認要求は、例えば、更新データのダウンロード後、かつ、インストール前にソフトウェア更新装置11からサーバ1へと送信される情報であって、インストール対象の更新データが有効であるか否かの確認をサーバ1に要求するための情報である。第2通信部27bは、更新データの有効性確認要求を受信すると、指定された更新データが有効であるか否かを示す確認結果をソフトウェア更新装置11に送信する。
【0035】
制御部28は、第1通信部27aが更新確認要求を受信すると、記憶部26に記憶される更新管理情報に基づいて、更新確認要求に含まれる車両IDで特定される車両のソフトウェアの更新データがあるか否かを判定する。制御部28による更新データがあるか否かの判定結果は、第1通信部27aによってソフトウェア更新装置11に送信される。制御部28は、電子制御ユニットの更新データがあると判定した場合、ソフトウェア更新装置11から配信パッケージのダウンロード要求を受信すると、記憶部26に記憶される更新データを含む配信パッケージを生成する。この配信パッケージは、第1通信部27aによりソフトウェア更新装置11に送信される。
【0036】
また、制御部28は、第2通信部27bが更新データの有効性確認要求を受信すると、指定された更新データを用いたソフトウェア更新のイベント(キャンペーン)がキャンセルされているか否かを判定する。制御部28は、指定された更新データに係るキャンペーンがキャンセルされている場合は、指定された更新データが有効でないことを示す確認結果を作成し、それ以外の場合は、指定された更新データが有効であることを示す確認結果を作成する。制御部28が作成した確認結果は、第2通信部27bによってソフトウェア更新装置11送信される。
【0037】
図5は、
図1に示したソフトウェア更新装置の機能ブロック図である。
【0038】
ソフトウェア更新装置11は、記憶部37と、第1通信部38aと、第2通信部38bと、第3通信部38cと、制御部39とを備える。記憶部37は、
図3に示した記憶装置34によって実現され、第1通信部38aと、第2通信部38bと、第3通信部38cと、制御部39とは、
図3に示したCPU31がRAM32を用いてROM33に記憶されるプログラムを実行することにより実現される。
【0039】
記憶部37は、電子制御ユニット13a~13dのソフトウェア更新を実行するためのプログラムや、ソフトウェア更新を実行する際に用いる各種データの他、サーバ1からダウンロードしたソフトウェアの更新データを記憶する。また、記憶部37は、更新データのインストール前に電子制御ユニットのデータ格納領域に記憶されているソフトウェアのバックアップ領域として機能する。より詳細には、更新対象の電子制御ユニットがデータ格納領域(バンク)を1つだけ持つ場合、記憶部37は、更新データのインストール前に格納領域に記憶されている旧ソフトウェアのデータを記憶する。旧ソフトウェアのデータは、旧バージョンのソフトウェア全体のデータであっても良いし、更新データを適用した新バージョンのソフトウェアから旧バージョンのソフトウェアを復元するための差分データであっても良い。記憶部37は、旧ソフトウェアのデータ(バックアップデータ)を圧縮データとして記憶しても良い。
【0040】
第1通信部38aは、例えば、車両の電源またはイグニッションがオンされたことを契機として、ソフトウェアの更新確認要求をサーバ1に送信する。更新確認要求は、車両を識別するための車両IDと、車載ネットワーク2に接続される電子制御ユニット13a~13dのソフトウェアのバージョンとを含む。車両ID及び電子制御ユニット13a~13dのソフトウェアのバージョンは、サーバ1が車両ID毎に保持する最新のソフトウェアのバージョンとの比較により、電子制御ユニットのソフトウェアの更新データがあるか否かを判定するために用いられる。また、第1通信部38aは、更新確認要求に対する応答としてサーバ1から更新データの有無を示す通知を受信する。電子制御ユニットのソフトウェアの更新データがある場合、第1通信部38aは、配信パッケージのダウンロード要求をサーバ1に送信し、サーバ1から送信される配信パッケージを受信する。配信パッケージは、更新データの他に、更新データの真正性を検証するための検証用データや、更新データの数、インストール順、ソフトウェア更新時に用いる各種制御情報等を含んでいても良い。
【0041】
第2通信部38bは、サーバ1から受信した更新データのインストール前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバ1に送信する。有効性確認要求は、車両を識別するための車両識別情報(車両ID)と、ダウンロードした配信パッケージまたは更新データを特定するための識別情報とを含む。第2通信部38bは、有効性確認要求に応答してサーバ1から送信される確認結果を受信する。
【0042】
第3通信部38cは、サーバ1から受信した更新データのインストール後、かつ、アクティベート前に、インストールした更新データが有効であるか否かを確認するための有効性確認要求をサーバ1に送信する。有効性確認要求は、車両を識別するための車両識別情報(車両ID)と、ダウンロードした配信パッケージまたは更新データを特定するための識別情報とを含む。第3通信部38cは、有効性確認要求に応答してサーバ1から送信される確認結果を受信する。
【0043】
制御部39は、電子制御ユニットのソフトウェア更新を制御するための種々の処理を行う。制御部39は、第1通信部38aがサーバ1から受信した、更新確認要求に対する確認結果に基づいて、電子制御ユニットのソフトウェアの更新データの有無を判定する。また、制御部39は、第1通信部38aがサーバ1から更新データを含む配信パッケージを受信すると、受信した配信パッケージの真正性を検証する。
【0044】
また、制御部39は、更新データのインストール前に、更新データが有効であるか否かを判定する。上述したように、第2通信部38bは、サーバ1に対して送信した有効性確認要求に対する応答として、有効性確認要求で指定された更新データが有効であるか否かを示す確認結果を受信する。制御部39は、第2通信部38bが受信した確認結果に基づいて、更新データが有効である(すなわち、更新データに係るキャンペーンがキャンセルされていない)か、更新データが有効でない(すなわち、更新データに係るキャンペーンがキャンセルされた)かを判定することができる。制御部39は、第2通信部38bが受信した確認結果に基づいて、更新データが有効であると判定した場合、更新データのインストール処理を開始するが、更新データが有効でないと判定した場合は、更新データのインストールを行わない。更新データのインストール前に更新データの有効性をサーバ1に問い合わせて確認することにより、更新データに係るキャンペーンがキャンセルされた場合に、当該更新データがインストールされることを防止することができる。
【0045】
更に、制御部39は、更新データのインストール後、かつ、アクティベート前に、更新データが有効であるか否かを判定する。上述したように、第3通信部38cは、サーバ1に対して送信した有効性確認要求に対する応答として、有効性確認要求で指定された更新データが有効であるか否かを示す確認結果を受信する。制御部39は、第3通信部38cが受信した確認結果に基づいて、更新データが有効である(すなわち、更新データに係るキャンペーンがキャンセルされていない)か、更新データが有効でない(すなわち、更新データに係るキャンペーンがキャンセルされた)かを判定することができる。制御部39は、第3通信部38cが受信した確認結果に基づいて、更新データが有効であると判定した場合、更新版のソフトウェアのアクティベート処理を開始するが、更新データが有効でないと判定した場合は、更新対象の電子制御ユニットのソフトウェアを更新データのインストール前の状態に復元する。制御部39が行う復元処理は、更新対象の電子制御ユニットが有するデータ格納領域によって異なる。詳細は後述するが、更新対象の電子制御ユニットが1つのデータ格納領域を持つ場合、制御部39は、ロールバックにより、データ格納領域に格納される更新後のソフトウェアを更新前の旧ソフトウェアに戻す処理を行う。一方、更新対象の電子制御ユニットが2つのデータ格納領域を持つ場合、制御部39は、更新版のソフトウェアのアクティベートを行わず、読み出し対象のデータ格納領域を旧ソフトウェアが記憶されたデータ格納領域に維持する。
【0046】
制御部39は、ソフトウェア更新の実行時に、承諾要求処理として、ソフトウェア更新に対して承諾が必要である旨の通知やソフトウェア更新を承諾した旨の入力を促す通知を出力装置に出力させる処理と、ユーザからの操作入力を受け付ける処理とを行う。出力装置としては、車載ネットワーク2に設けられた表示装置14や、音声による通知を行う音声出力装置等を利用できる。例えば、承諾要求処理において、表示装置14を出力装置として用いる場合、制御部39は、ソフトウェア更新の承諾を求めるための承諾要求画面を表示装置14に表示させ、ユーザまたは管理者が承諾した場合に承諾ボタンを押下する等の特定の入力操作を促す通知を表示装置14に表示させる。また、制御部40は、承諾要求処理において、電子制御ユニットのソフトウェアの更新データがあることを通知する文言やアイコン等を表示装置14に表示させたり、ソフトウェア更新処理の実行中における制限事項等を表示装置14に表示させたりする。
【0047】
図6は、実施形態に係るサーバが実行する制御処理の一例を示すフローチャートである。
図6に示す制御処理は、例えば所定の時間間隔で繰り返し実行される。
【0048】
ステップS1において、第1通信部27aは、ソフトウェア更新装置11から更新確認要求を受信したか否かを判定する。ステップS1の判定がYESの場合、処理はステップS2に進み、それ以外の場合、処理はステップS3に進む。
【0049】
ステップS2において、第1通信部27aは、更新確認要求を送信した車両に対して、電子制御ユニットのソフトウェアの更新データがあるか否かを示す情報を送信する。更新データの有無は、例えば、制御部28が、更新確認要求に含まれる車両IDに関連付けて更新管理情報に記憶されているソフトウェアのバージョンの組み合わせと、更新確認要求に含まれる現在のソフトウェアのバージョンの組み合わせとを比較し、更新確認要求に含まれる現在のソフトウェアのバージョンの組み合わせが、更新管理情報に記憶されているバージョンの組み合わせより古い場合に、更新データがあると判定することができる。その後、処理はステップS3に進む。
【0050】
ステップS3において、第1通信部27aは、ソフトウェア更新装置11から配信パッケージのダウンロード要求を受信したか否かを判定する。ステップS3の判定がYESの場合、処理はステップS4に進み、それ以外の場合、処理はステップS5に進む。
【0051】
ステップS4において、第1通信部27aは、制御部28が生成した、ソフトウェアの更新データを含む配信パッケージをソフトウェア更新装置11に送信する。その後、処理はステップS5に進む。
【0052】
ステップS5において、第2通信部27bは、ソフトウェア更新装置11から更新データの有効性確認要求を受信したか否かを判定する。ステップS5の判定がYESの場合、処理はステップS6に進み、それ以外の場合、処理はステップS1に進む。
【0053】
ステップS6において、制御部28は、ソフトウェア更新装置11から指定された更新データの有効性を判定する。例えば、制御部28は、ステップS5で第2通信部27bが受信した有効性確認要求に含まれる更新データの識別情報に基づいて、当該識別情報によって特定される更新データのキャンペーンがキャンセルされているか否かを判定し、キャンペーンが判定されている場合、指定された更新データが有効でないと判定し、それ以外の場合、指定された更新データが有効であると判定する。その後、処理はステップS7に進む。
【0054】
ステップS7において、第2通信部27bは、ステップS6における判定結果、すなわち、指定された更新データが有効であるか否かを示す確認結果をソフトウェア更新装置11に送信する。その後、処理はステップS1に進む。
【0055】
図7は、実施形態に係るソフトウェア更新装置が実行する制御処理の一例を示すフローチャートである。
図7に示す制御処理は、例えば、車両の電源またはイグニッションがオンされたことを契機として実行される。
【0056】
ステップS11において、第1通信部38aは、車両IDと電子制御ユニットのソフトウェアのバージョンの組み合わせとを含む更新確認要求をサーバ1に送信する。その後、処理はステップS12に進む。
【0057】
ステップS12において、第1通信部38aは、サーバ1から更新確認要求に対する確認結果を受信する。その後、処理はステップS13に進む。
【0058】
ステップS13において、制御部39は、ステップS12で受信した確認結果に基づいて、電子制御ユニット13a~13dのいずれかのソフトウェアの更新データがあるか否かを判定する。ステップS13の判定がYESの場合、処理はステップS14に進み、それ以外の場合、処理はステップS16に進む。
【0059】
ステップS14において、第1通信部38aは、ダウンロード処理を実行する。より詳細には、第1通信部38aは、サーバ1に配信パッケージのダウンロード要求を送信し、ダウンロード要求に応答して送信される配信パッケージを受信し、受信した配信パッケージを記憶部37に格納する。制御部39は、受信した配信パッケージに含まれる更新データの真正性を検証する。ステップS14において、ダウンロードの実行可否の判定や、サーバ1に対してダウンロードが完了したことの通知を行っても良い。その後、処理はステップS15に進む。
【0060】
ステップS15において、制御部39は、更新対象の電子制御ユニットに対してインストール処理及びアクティベート処理を実行し、処理を終了する。
【0061】
ステップS16において、制御部39は、ソフトウェア更新処理を実行する指示を受け付けたか否かを判定する。ソフトウェア更新処理は、必ずしも連続して実行されるわけではなく、例えば、ダウンロードが完了した段階、または、インストールが完了した段階で中断され、続きの更新処理が後から実行される場合がある。そこで、本実施形態では、ステップS13において更新データがないと判定された場合に、ステップS16の判定を設けることにより、中断されたソフトウェア更新処理の再開を可能としている。ステップS16の判定は、例えば、中断されたソフトウェア更新処理があることを通知する文言やアイコン等を表示装置14に表示させた後、入力ボタン等を用いた特定の操作入力を受け付けたか否かによって行うことができる。ステップS16の判定がYESの場合、処理はステップS15に進み、それ以外の場合、処理を終了する。
【0062】
図8は、
図7に示すインストール/アクティベート処理の詳細を示すフローチャート
である。
【0063】
ステップS21において、制御部39は、インストールに対する承諾要求処理を実行する。例えば、制御部39は、電子制御ユニットのソフトウェア更新を開始する旨の表示と、ソフトウェア更新に対するユーザの承諾を要求する旨の表示と、必要に応じて、更新データのインストールに要する時間や、インストール中の制限事項や注意事項の表示を表示装置14に表示させ、タッチパネルや操作ボタン等の入力手段を用いたユーザによる操作入力を受け付ける。その後、処理はステップS22に進む。
【0064】
ステップS22において、制御部39は、ソフトウェア更新(インストール)を承諾する旨の操作入力が行われた否かを判定する。インストールを承諾する旨の操作入力は、例えば、表示装置14に表示された「承諾する」あるいは「更新を開始する」等のボタンが押下されたか否かに基づいて判定することができる。また、ユーザがソフトウェアの更新開始(インストール)をすぐに承諾せず、後でソフトウェアの更新開始(インストール)を行うことを希望する場合は、「後で行う」等のボタンを押下することによりその旨を受け付けることができ、この場合、制御部39はステップS22でNOと判定する。ステップS22の判定がYESの場合、処理はステップS23に進み、それ以外の場合、処理を終了する。
【0065】
ステップS23において、第2通信部38bは、インストール対象の更新データが有効であるか否かを確認するための有効性確認要求をサーバ1に送信する。有効性確認要求は、配信パッケージまたはこれに含まれる更新データを特定する情報を含む。その後、処理はステップS24に進む。
【0066】
ステップS24において、制御部39は、第2通信部38bがサーバ1から受信した有効性確認要求に対する確認結果に基づいて、インストール対象の更新データが有効であるか否かを判定する。ステップS24の処理がYESの場合、処理はステップS25に進み、それ以外の場合、処理を終了する。
【0067】
ステップS25において、制御部39は、更新対象の電子制御ユニットに、更新データを転送し、インストールを指示する。その後、処理はステップS25に進む。更新対象の電子制御ユニットは、ソフトウェア更新装置11から受信した更新データをデータ格納領域に書き込む。
【0068】
ステップS26において、制御部39は、アクティベートに対する承諾要求処理を実行する。例えば、制御部39は、例えば、電子制御ユニットのソフトウェア更新の準備が整い、電源またはイグニッションOFF等の特定の操作を行うことによりプログラムが更新される旨の表示と、必要に応じて、アクティベートに要する時間や、アクティベート中の制限事項や注意事項の表示を表示装置14に表示させ、タッチパネルや操作ボタン等の入力手段を用いたユーザによる操作入力を受け付ける。その後、処理はステップS27に進む。
【0069】
ステップS27において、制御部39は、ソフトウェア更新(アクティベート)を承諾する旨の操作入力が行われたか否かを判定する。アクティベートを承諾する旨の操作入力は、例えば、表示装置14に表示された「承諾する」あるいは「更新する」等のボタンが押下されたか否かに基づいて判定することができる。また、ユーザがソフトウェア更新(アクティベート)をすぐに承諾せず、後でソフトウェア更新を行うことを希望する場合は、「後で行う」等のボタンを押下することによりその旨を受け付けることができ、この場合、制御部39はステップS27でNOと判定する。ステップS27の判定がYESの場合、処理はステップS28に進み、それ以外の場合、処理を終了する。
【0070】
ステップS28において、第3通信部38cは、インストールした更新データが有効であるか否かを確認するための有効性確認要求をサーバ1に送信する。有効性確認要求は、配信パッケージまたはこれに含まれる更新データを特定する情報を含む。処理はステップS29に進む。
【0071】
ステップS29において、制御部39は、第3通信部38cがサーバ1から受信した有効性確認要求に対する確認結果に基づいて、インストールした更新データが有効であるか否かを判定する。ステップS29の処理がYESの場合、処理はステップS30に進み、それ以外の場合、処理はステップS31に進む。
【0072】
ステップS30において、制御部39は、更新対象の電子制御ユニットに対して、更新版のソフトウェアのアクティベートを指示する。その後、処理を終了する。尚、更新対象の電子制御ユニットは、電源またはイグニッションOFFにより等の特定の操作が行われたことを契機として、再起動し、更新後のソフトウェアを実行する。これにより、電子制御ユニットのソフトウェア更新(機能更新)が完了する。
【0073】
ステップS31において、制御部39は、復元処理を実行し、処理を終了する。尚、本開示において、復元とは、電子制御ユニットの状態を、更新データのインストール前に実行されていたバージョンのソフトウェア(旧ソフトウェア)を実行可能な状態とすることをいう。
【0074】
尚、更新対象の電子制御ユニットが1つのデータ格納領域を持つ構成である場合、データ格納領域に更新データをインストールした時点で電子制御ユニットのソフトウェアに影響が及ぶため、インストール及びアクティベートを連続して行うことが好ましい。したがって、更新対象の電子制御ユニットが1つのデータ格納領域を持つ構成である場合、アクティベート実行前の承諾に関する処理(ステップS25及びS26)を省略しても良い。
【0075】
図9は、
図8に示す復元処理の詳細を示すフローチャートである。
【0076】
ステップS101において、制御部39は、更新対象の電子制御ユニットが有するデータ格納領域の数が1面であるか2面であるかを判定する。電子制御ユニットが有するデータ格納領域の数は、車両の製造時等に電子制御ユニットの構成に応じて予め記憶部37に格納しておいても良いし、更新対象の電子制御ユニットから通信により取得しても良いし、サーバ1から取得しても良い。ソフトウェア更新装置11がサーバ1から更新対象の電子制御ユニットのデータ格納領域の数を取得する場合、サーバ1は、更新データを含む配信パッケージの中に更新対象の電子制御ユニットの数に関する情報を含めてソフトウェア更新装置11に送信し、制御部39が配信パッケージに含まれる情報に基づいて判定しても良い。更新対象の電子制御ユニットが有するデータ格納領域の数が1面である場合、処理はステップS102に進み、更新対象の電子制御ユニットが有するデータ格納領域の数が2面である場合、処理はステップS103に進む。
【0077】
ステップS102において、制御部39は、復元対象の電子制御ユニットに対して、更新データを適用する前の旧ソフトウェアを再インストールするよう指示する。更新対象の電子制御ユニットに更新データをインストールする前に、旧ソフトウェアのデータがソフトウェア更新装置11の記憶部37にバックアップされている場合、バックアップされているデータを復元対象の電子制御ユニットに転送し、インストールを指示する。その後、処理はステップS103に進む。更新対象の電子制御ユニットは、ソフトウェア更新装置11から受信したデータをデータ格納領域に書き込むことにより、旧ソフトウェアを再インストール(復元)する。その後、処理はステップS104に進む。
【0078】
ステップS103において、制御部39は、更新後のソフトウェアのアクティベートを行わず、旧ソフトウェアのデータ格納領域を読み出し対象のデータ格納領域とするように復元対象の電子制御ユニットに指示する。その後処理はステップS104に進む。
【0079】
ステップS104において、制御部39は、復元対象の全ての電子制御ユニットを復元したか否かを判定する。ステップS104の判定がYESの場合、処理はステップS101に進み、それ以外の場合、処理はステップS105に進む。
【0080】
ステップS105において、制御部39は、復元対象の電子制御ユニットに対して、更新版のソフトウェアのアクティベートを指示する。その後、処理を終了する。尚、更新対象の電子制御ユニットは、電源またはイグニッションOFFにより等の特定の操作が行われたことを契機として、再起動し、旧ソフトウェアを実行する。
図9に示した復元処理により、電子制御ユニットが実行するソフトウェアを旧ソフトウェアに維持することができる。
【0081】
本実施形態に係るソフトウェア更新装置11は、更新データのダウンロード後、かつ、インストール前に、ダウンロードした更新データが有効であるか否かをサーバ1に確認し、ダウンロードした更新データがインストール時に有効でない場合、更新データのインストールを行わない。電子制御ユニットのソフトウェア更新においては、更新データのダウンロード完了から時間が経過してからインストールが実行されるケースが想定される。この場合、ダウンロードした更新データに係るキャンペーンがキャンセルされる可能性がある。しかしながら、本実施形態に係るソフトウェア更新装置11は、更新データのインストール前に更新データの有効性を確認するため、キャンペーンのキャンセルにより無効になったソフトウェアがインストールされることを抑制することができ、ダウンロード時に更新対象であった電子制御ユニットのソフトウェアを、有効かつ最新の状態に維持することが可能となる。
【0082】
また、本実施形態に係るソフトウェア更新装置11は、インストール後、かつ、アクティベート前に、再度、ダウンロードした更新データが有効であるか否かをサーバ1に確認し、ダウンロードした更新データがアクティベート時に有効である場合に、更新後のソフトウェアのアクティベートを行う。このように、ソフトウェア更新処理中に更新データの有効性を複数回確認するようにソフトウェア更新装置11を構成すれば、キャンペーンのキャンセル等によって無効となった更新データが電子制御ユニットに適用されることをより確実に防止することができる。インストール後、かつ、アクティベート前に、ダウンロードした更新データが有効でないと判定された場合、ソフトウェア更新装置11は、旧ソフトウェアを再インストールすること、または、更新後のソフトウェアのアクティベートを実行しないことにより、更新データのインストール前における有効かつ最新のソフトウェア(旧ソフトウェア)を電子制御ユニットが実行可能な状態を復元することができ、無効となった更新データが反映されることを抑制できる。
【0083】
上記の実施形態で例示したサーバ1の機能は、プロセッサ(CPU)とメモリと記憶装置とを備えるコンピュータが実行する更新管理方法、あるいは、当該コンピュータに実行させる更新管理プログラム、更新管理プログラムを記憶したコンピュータ読み取り可能な非一時的記憶媒体として実現することも可能である。同様に、実施形態として例示したソフトウェア更新装置11の機能は、プロセッサ(CPU)とメモリと記憶装置とを備える、車載されたコンピュータが実行する更新制御方法、あるいは、当該車載されたコンピュータに実行させる更新制御プログラム、更新制御プログラムを記憶したコンピュータ読み取り可能な非一時的記憶媒体として実現することも可能である。
【0084】
上記の各実施形態では、車両側において、車載ネットワークに設けられたソフトウェア更新装置11が、マスタ装置として、全ての電子制御ユニット13a~13dのプログラム更新を制御する例を説明したが、ソフトウェア更新装置11を設ける代わりに、電子制御ユニット13a~13dのいずれか1つが
図7~
図9に示した更新制御機能を有しており、他の電子制御ユニットのプログラム更新を制御しても良い。また、ソフトウェア更新装置11を設ける代わりに、
図7~
図9に示した更新制御機能を、車載ネットワーク2に有線で接続可能な外部機器に設け、この外部機器を用いて電子制御ユニット13a~13dのプログラム更新処理を行うことも可能である。
【産業上の利用可能性】
【0085】
本開示技術は、電子制御ユニットのプログラムを更新するためのネットワークシステムに利用できる。
【符号の説明】
【0086】
1 サーバ
2 車載ネットワーク
5 ネットワーク
11 ソフトウェア更新装置
13a~13d 電子制御ユニット
27a 第1通信部
27b 第2通信部
28 制御部
37 記憶部
38a 第1通信部
38b 第2通信部
38a 第3通信部
39 制御部