JP2023012131A - ソフトウェアの更新を行うシステム - Google Patents
ソフトウェアの更新を行うシステム Download PDFInfo
- Publication number
- JP2023012131A JP2023012131A JP2021115603A JP2021115603A JP2023012131A JP 2023012131 A JP2023012131 A JP 2023012131A JP 2021115603 A JP2021115603 A JP 2021115603A JP 2021115603 A JP2021115603 A JP 2021115603A JP 2023012131 A JP2023012131 A JP 2023012131A
- Authority
- JP
- Japan
- Prior art keywords
- software
- update
- update data
- electronic control
- control unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 claims abstract description 29
- 238000009434 installation Methods 0.000 abstract description 59
- 230000004913 activation Effects 0.000 abstract description 55
- 238000000034 method Methods 0.000 description 70
- 230000008569 process Effects 0.000 description 62
- 238000001994 activation Methods 0.000 description 57
- 238000004891 communication Methods 0.000 description 49
- 230000015654 memory Effects 0.000 description 24
- 230000006870 function Effects 0.000 description 21
- 238000012790 confirmation Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 10
- 230000004044 response Effects 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 238000012795 verification Methods 0.000 description 5
- 230000003213 activating effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000011900 installation process Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000007420 reactivation Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
【解決手段】車両に搭載された電子制御ユニットのソフトウェアを更新するための更新データを送信するセンタと、センタから受信した更新データに基づいて、電子制御ユニットのソフトウェアの更新処理を制御するOTAマスタを備えた車両と、を含むシステムであって、センタは、第1更新データと、第1更新データに紐付いた第2更新データとを、車両に送信し、OTAマスタは、第1更新データに基づいて電子制御ユニットのソフトウェアの更新処理を行い、第1更新データに基づいた電子制御ユニットのソフトウェアの更新が失敗した場合は、第2更新データに基づくソフトウェアを実行する。
【選択図】図1
Description
以下、本開示の一実施形態について、図面を参照しながら詳細に説明する。
[システム構成]
図1は、本開示の一実施形態に係るネットワークで繋がるシステムの全体構成を示すブロック図である。図1に示すシステムは、車両に搭載された複数の電子制御ユニット(ECU)50a~50dのソフトウェアを更新するためのシステムであり、車両外にあるセンタ10と、車両内に構築される車載ネットワーク90と、車両外にある表示装置95と、を備える。
センタ10は、ネットワーク100を介して、車載ネットワーク90が備える後述のOTAマスタ30と通信可能であり、電子制御ユニット50a~50dのソフトウェアの更新データ及び更新処理の手順を定義した情報の送信や、ソフトウェア更新処理の進捗状況を示す通知の受信などを行って、OTAマスタ30に接続された複数の電子制御ユニット50a~50dのソフトウェア更新を制御及び管理することができる。このセンタ10は、いわゆるサーバーとしての機能を有する。また、センタ10は、ネットワーク100を介して、表示装置95と通信可能であり、電子制御ユニット50a~50dのソフトウェア更新の情報を通知することができる。
車載ネットワーク90は、OTAマスタ30と、複数の電子制御ユニット50a~50dと、表示装置70と、通信モジュール80と、を備える。OTAマスタ30と通信モジュール80とは、バス60aを介して接続されている。OTAマスタ30と電子制御ユニット50a及び50bとは、バス60bを介して接続されている。OTAマスタ30と電子制御ユニット50c及び50dとは、バス60cを介して接続されている。OTAマスタ30と表示装置70とは、バス60dを介して接続されている。
OTAマスタ30は、例えば、車両の電源ONを契機として、ソフトウェアの更新確認要求をセンタ10に送信する。更新確認要求は、車両を識別するための車両IDと、車載ネットワーク90に接続される電子制御ユニット50a~50dのハードウェア及びソフトウェアの現バージョンなどの電子制御ユニットの状態(システム構成)に関する情報である車両構成情報と、を含む。車両構成情報は、車載ネットワーク90に接続される電子制御ユニット50a~50dから電子制御ユニットの識別番号(ECU_ID)と、電子制御ユニットのソフトウェアバージョンの識別番号(ECU_Software_ID)とを、取得することで作成可能である。車両ID及び電子制御ユニット50a~50dのソフトウェアの現バージョンは、センタ10が車両IDごとに保持するソフトウェアの最新バージョンとの比較により、電子制御ユニット50a~50dのソフトウェアの更新データがあるか否かを判定するために用いられる。センタ10は、OTAマスタ30から受信した更新確認要求に対する応答として、更新データの有無を示す通知をOTAマスタ30に送信する。電子制御ユニット50a~50dのソフトウェアの更新データがある場合、OTAマスタ30は、配信パッケージのダウンロード要求をセンタ10に送信する。センタ10は、OTAマスタ30から受信したダウンロード要求に応じて、更新データ(第1更新データ及び第2更新データ)などを含む配信パッケージをOTAマスタ30に送信する。配信パッケージは、更新データの他に、更新データの真正性を検証するための検証用データや、更新データの数、種別情報、ソフトウェア更新時に用いる各種の制御情報などを含んでいてもよい。
次に、図6、図7、図8A、及び図8Bをさらに参照して、本実施形態に係るシステムにおいて実行されるソフトウェア更新処理に関する具体例をいくつか説明する。
図6は、センタ10の各構成が実行するダウンロードの具体例を説明するフローチャートである。この図6に示すダウンロード処理は、OTAマスタ30が送信する更新確認要求を、センタ10が受信することによって開始される。
センタ10の通信部17は、OTAマスタ30からソフトウェアの更新確認要求があったか否かを判断する。更新確認要求があった場合は(ステップS601、はい)、ステップS602に処理が進み、更新確認要求がない場合は(ステップS601、いいえ)、ステップS604に処理が進む。
センタ10の制御部18は、更新が必要なソフトウェアの有無をチェックする。このチェックは、更新確認要求に含まれる車両構成情報から取得する車両に搭載される各電子制御ユニット50a~50dのソフトウェアの現バージョンと、センタ10の記憶部16に記憶されている各ソフトウェアの最新バージョンとに、基づいて行われる。更新が必要なソフトウェアの有無のチェックが行われると、ステップS603に処理が進む。
センタ10の制御部18は、センタ10の記憶部16に記憶されている更新管理情報に基づいて、更新確認要求に含まれる車両に搭載された電子制御ユニット50a~50dについてソフトウェアの更新データがあるか否かを判断し、判断結果に基づいて更新データの有無を示す情報をOTAマスタ30に送信する。更新データの有無が送信されると、ステップS604に処理が進む。
センタ10の通信部17は、OTAマスタ30から配信パッケージのダウンロード要求があったか否かを判断する。ダウンロード要求があった場合は(ステップS604、はい)、ステップS605に処理が進み、ダウンロード要求がない場合は(ステップS604、いいえ)、ステップS601に処理が進む。
センタ10の制御部18は、ソフトウェアの更新データがあると判断した電子制御ユニットであるターゲット電子制御ユニット(以下「ターゲットECU」という)について、第1更新データ及び第2更新データなどを含んだ配信パッケージを生成する。なお、第1更新データと第2更新データとは、同一の配信パッケージに含めずに、個別の配信パッケージに含められてもよい。配信パッケージが生成されると、ステップS606に処理が進む。
センタ10の通信部17は、配信パッケージをOTAマスタ30に送信する。配信パッケージが送信されると、ステップS601に処理が進む。
図7は、OTAマスタ30及びターゲットECUが行う具体例1によるインストール及びアクティベートの処理手順を説明するフローチャートである。この具体例1による更新処理は、第2更新データに基づくソフトウェアをOTAマスタ30が実行する場合の例である。
OTAマスタ30の制御部39は、センタ10から配信パッケージによって取得した第1更新データ及び第2更新データを記憶部37に記憶する。第1更新データ及び第2更新データが記憶されると、ステップS702に処理が進む。
OTAマスタ30の制御部39は、記憶部37に記憶した更新データ(第1更新データ及び第2更新データ)の検証を行う。更新データの検証が成功した場合は(ステップS702、成功)、ステップS703に処理が進み、更新データの検証が失敗した場合は(ステップS702、失敗)、インストールを開始することなく本インストール及びアクティベートの処理を終了する。
OTAマスタ30の制御部39及びターゲットECUは、第1更新データに基づくソフトウェアを、ターゲットECUの不揮発性メモリの格納領域に書き込む処理であるインストールを実行する。ターゲットECUが複数ある場合には、一斉に又は所定の順序でインストールが行われる。ターゲットECUに対するインストールが実行されると、ステップS704に処理が進む。
OTAマスタ30の判定部40は、ターゲットECUにおける第1更新データに基づくソフトウェアのインストールが完了したか否かを判定する。OTAマスタ30は、インストールの完了を、ターゲットECUからの完了通知がそれぞれあったことで判断してもよいし、インストールの開始から所定の時間が経過後したことで判断してもよい。所定の時間は、例えばインストールに要する最大の時間以上に設定することができる。第1更新データに基づくソフトウェアのインストールが完了したと判定された場合は(ステップS704、成功)、ステップS705に処理が進む。一方、エラーを検知したなど、第1更新データに基づくソフトウェアのインストールが正常に完了していないと判定された場合は(ステップS704、失敗)、ステップS708に処理が進む。この場合、OTAマスタ30から更新制御の途中であるターゲットECUに対して、更新制御の停止/中止を指示してもよい。
OTAマスタ30の制御部39及びターゲットECUは、ターゲットECUの不揮発性メモリの格納領域に書き込まれた第1更新データに基づくソフトウェアを有効化するアクティベートを実行する。ターゲットECUが複数ある場合には、一斉に又は所定の順序でアクティベートが行われる。ターゲットECUに対するアクティベートが実行されると、ステップS706に処理が進む。
OTAマスタ30の判定部40は、ターゲットECUにおける第1更新データに基づくソフトウェアのアクティベートが完了したか否かを判定する。OTAマスタ30は、アクティベートの完了を、ターゲットECUからの完了通知があったことで判断してもよいし、アクティベートの開始から所定の時間が経過後したことで判断してもよい。所定の時間は、例えばアクティベートに要する時間以上に設定することができる。ターゲットECUにおける第1更新データに基づくソフトウェアのアクティベートが完了したと判定された場合は(ステップS706、成功)、ステップS707に処理が進む。一方、エラーを検知したなど、ターゲットECUにおける第1更新データに基づくソフトウェアのアクティベートが正常に完了していないと判定された場合は(ステップS706、失敗)、ステップS708に処理が進む。この場合、OTAマスタ30から更新制御の途中であるターゲットECUに対して、更新制御の停止/中止を指示してもよい。
ターゲットECUは、不揮発性メモリの格納領域に書き込まれ、かつ、アクティベートが完了した第1更新データに基づくソフトウェアを実行する。これにより、ターゲットECUに対するソフトウェアの更新が完了し、本インストール及びアクティベートの処理が終了する。
OTAマスタ30の制御部39は、記憶部37に記憶した第2更新データに基づくソフトウェアを実行する。この第2更新データに基づくソフトウェアの実行に際し、OTAマスタ30は、車両に搭載された表示装置70や、ネットワーク100で接続されるユーザー所有の車両に搭載されていない表示装置95などに、第2更新データに基づくソフトウェアを実行する旨(一部の制御が利用できないことなど)を通知してもよい。表示装置95の通知にあたっては、OTAマスタ30が直接行ってもよいし、センタ10がOTAマスタ30から取得する情報に基づいて間接的に行ってもよい。また、OTAマスタ30は、各電子制御ユニット50a~50dに対して、第2更新データに基づくソフトウェアの実行に伴う通信ネットワーク90の通信仕様(CANなど)の変更を実施してもよい。これにより、ターゲットECUに対するソフトウェアの簡易的な更新が完了し、本インストール及びアクティベートの処理が終了する。なお、ターゲットECUに対する簡易的なソフトウェアの更新は、再度実施される第1更新データに基づくソフトウェアの更新が正常に完了するまでの一時的な措置として用いられる。
図8A及び図8Bは、OTAマスタ30及びターゲットECUが行う具体例2によるインストール及びアクティベートの処理手順を説明するフローチャートである。図8Aの処理と図8Bの処理とは、結合子X、Y、及びZでそれぞれ結ばれる。この具体例2による更新処理は、第2更新データに基づくソフトウェアをターゲットECUが実行する場合の例である。
OTAマスタ30の制御部39は、センタ10から配信パッケージによって取得した第1更新データ及び第2更新データを記憶部37に記憶する。第1更新データ及び第2更新データが記憶されると、ステップS802に処理が進む。
OTAマスタ30の制御部39は、記憶部37に記憶した更新データ(第1更新データ及び第2更新データ)の検証を行う。更新データの検証が成功した場合は(ステップS802、成功)、ステップS803に処理が進み、更新データの検証が失敗した場合は(ステップS802、失敗)、インストールを開始することなく本インストール及びアクティベートの処理を終了する。
OTAマスタ30の制御部39及びターゲットECUは、第1更新データに基づくソフトウェアを、ターゲットECUの不揮発性メモリの格納領域に書き込む処理であるインストールを実行する。ターゲットECUが複数ある場合には、一斉に又は所定の順序でインストールが行われる。ターゲットECUに対する第1更新データに基づくソフトウェアインストールが実行されると、ステップS804に処理が進む。
OTAマスタ30の判定部40は、ターゲットECUにおける第1更新データに基づくソフトウェアのインストールが完了したか否かを判定する。OTAマスタ30は、インストールの完了を、ターゲットECUからの完了通知がそれぞれあったことで判断してもよいし、インストールの開始から所定の時間が経過後したことで判断してもよい。所定の時間は、例えばインストールに要する最大の時間以上に設定することができる。第1更新データに基づくソフトウェアのインストールが完了したと判定された場合は(ステップS804、成功)、ステップS805に処理が進む。一方、エラーを検知したなど、第1更新データに基づくソフトウェアのインストールが正常に完了していないと判定された場合は(ステップS804、失敗)、ステップS807に処理が進む。この場合、OTAマスタ30から更新制御の途中であるターゲットECUに対して、更新制御の停止/中止を指示してもよい。
OTAマスタ30の制御部39及びターゲットECUは、ターゲットECUの不揮発性メモリの格納領域に書き込まれた第1更新データに基づくソフトウェアを有効化するアクティベートを実行する。ターゲットECUが複数ある場合には、一斉に又は所定の順序でアクティベートが行われる。ターゲットECUに対する第1更新データに基づくソフトウェアのアクティベートが実行されると、ステップS806に処理が進む。
OTAマスタ30の判定部40は、ターゲットECUにおける第1更新データに基づくソフトウェアのアクティベートが完了したか否かを判定する。OTAマスタ30は、アクティベートの完了を、ターゲットECUからの完了通知があったことで判断してもよいし、アクティベートの開始から所定の時間が経過後したことで判断してもよい。所定の時間は、例えばアクティベートに要する時間以上に設定することができる。ターゲットECUにおける第1更新データに基づくソフトウェアのアクティベートが完了したと判定された場合は(ステップS806、成功)、ステップS811に処理が進む。一方、エラーを検知したなど、ターゲットECUにおける第1更新データに基づくソフトウェアのアクティベートが正常に完了していないと判定された場合は(ステップS806、失敗)、ステップS807に処理が進む。この場合、OTAマスタ30から更新制御の途中であるターゲットECUに対して、更新制御の停止/中止を指示してもよい。
OTAマスタ30の制御部39及びターゲットECUは、第2更新データに基づくソフトウェアを、ターゲットECUの不揮発性メモリの格納領域に書き込む処理であるインストールを実行する。ターゲットECUが複数ある場合には、一斉に又は所定の順序でインストールが行われる。ターゲットECUに対する第2更新データに基づくソフトウェアのインストールが実行されると、ステップS808に処理が進む。
OTAマスタ30の判定部40は、ターゲットECUにおける第2更新データに基づくソフトウェアのインストールが完了したか否かを判定する。OTAマスタ30は、インストールの完了を、ターゲットECUからの完了通知がそれぞれあったことで判断してもよいし、インストールの開始から所定の時間が経過後したことで判断してもよい。所定の時間は、例えばインストールに要する最大の時間以上に設定することができる。第2更新データに基づくソフトウェアのインストールが完了したと判定された場合は(ステップS808、成功)、ステップS809に処理が進み、第2更新データに基づくソフトウェアのインストールが正常に完了していないと判定された場合は(ステップS808、失敗)、本インストール及びアクティベートの処理を終了する。
OTAマスタ30の制御部39及びターゲットECUは、ターゲットECUの不揮発性メモリの格納領域に書き込まれた第2更新データに基づくソフトウェアを有効化するアクティベートを実行する。ターゲットECUが複数ある場合には、一斉に又は所定の順序でアクティベートが行われる。ターゲットECUに対する第2更新データに基づくソフトウェアのアクティベートが実行されると、ステップS810に処理が進む。
OTAマスタ30の判定部40は、ターゲットECUにおける第2更新データに基づくソフトウェアのアクティベートが完了したか否かを判定する。OTAマスタ30は、アクティベートの完了を、ターゲットECUからの完了通知があったことで判断してもよいし、アクティベートの開始から所定の時間が経過後したことで判断してもよい。所定の時間は、例えばアクティベートに要する時間以上に設定することができる。ターゲットECUにおける第2更新データに基づくソフトウェアのアクティベートが完了したと判定された場合は(ステップS810、成功)、ステップS811に処理が進み、ターゲットECUにおける第2更新データに基づくソフトウェアのアクティベートが正常に完了していないと判定された場合は(ステップS810、失敗)、本インストール及びアクティベートの処理を終了する。
ターゲットECUは、不揮発性メモリの格納領域に書き込まれ、かつ、アクティベートが完了した第1更新データに基づくソフトウェア(ステップS806で成功)又は第2更新データに基づくソフトウェア(ステップS810で成功)を実行する。これにより、ターゲットECUに対するソフトウェアの更新又は簡易的な更新が完了し、本インストール及びアクティベートの処理が終了する。
以上のように、本開示の一実施形態に係るシステムによれば、センタ10は、更新によってソフトウェアに提供される機能の全てに対応した第1更新データと、第1更新データに紐付く更新によってソフトウェアに提供される機能の一部のみに対応した第2更新データとを、OTAセンタ30に送信する。そして、OTAマスタは、第1更新データに基づいてターゲット電子制御ユニットのソフトウェアの更新処理をまず行い、第1更新データに基づいたターゲット電子制御ユニットのソフトウェアの更新が失敗した場合は、第2更新データに基づくソフトウェアを実行する。
11、31、51 CPU
12、32、52 RAM
13、34 記憶装置
14、36、54 通信装置
16、37 記憶部
17、38 通信部
18、39 制御部
30 OTAマスタ
33 ROM
35 マイクロコンピューター
40 判定部
50a~50d 電子制御ユニット(ECU)
53a、53b 不揮発性メモリ
55、56a、56b 格納領域
60a~60d バス
70、95 表示装置
80 通信モジュール
90 車載ネットワーク
100 ネットワーク
Claims (1)
- 車両に搭載された電子制御ユニットのソフトウェアを更新するための更新データを送信するセンタと、
前記センタから受信した前記更新データに基づいて、前記電子制御ユニットのソフトウェアの更新処理を制御するOTAマスタを備えた車両と、
を含むシステムであって、
前記センタは、第1更新データと、前記第1更新データに紐付いた第2更新データとを、前記車両に送信し、
前記OTAマスタは、前記第1更新データに基づいて前記電子制御ユニットのソフトウェアの更新処理を行い、前記第1更新データに基づいた前記電子制御ユニットのソフトウェアの更新が失敗した場合は、前記第2更新データに基づくソフトウェアを実行する、
システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021115603A JP2023012131A (ja) | 2021-07-13 | 2021-07-13 | ソフトウェアの更新を行うシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021115603A JP2023012131A (ja) | 2021-07-13 | 2021-07-13 | ソフトウェアの更新を行うシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023012131A true JP2023012131A (ja) | 2023-01-25 |
Family
ID=85381579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021115603A Pending JP2023012131A (ja) | 2021-07-13 | 2021-07-13 | ソフトウェアの更新を行うシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023012131A (ja) |
-
2021
- 2021-07-13 JP JP2021115603A patent/JP2023012131A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12056481B2 (en) | Software update device, update control method, and non-transitory storage medium | |
US11995429B2 (en) | Software update device, update control method, non-transitory storage medium, and server | |
US12050903B2 (en) | OTA master, system, method, non-transitory storage medium, and vehicle | |
US12190100B2 (en) | OTA software update based on ECU non-volatile memory type | |
US11853742B2 (en) | Server, software update system, distribution method, and non-transitory storage medium | |
JP7613529B2 (ja) | 制御装置、方法、プログラム、及び車両 | |
JP2022126194A (ja) | Otaマスタ、センタ、システム、方法、プログラム、及び車両 | |
US12307230B2 (en) | Over-the-air (OTA) master, center, system, method, non-transitory storage medium, and vehicle | |
US20220405080A1 (en) | Ota master, system, method, non-transitory storage medium, and vehicle | |
JP2025015783A (ja) | センタ、方法、及びプログラム | |
JP7484791B2 (ja) | Otaマスタ、更新制御方法、及び更新制御プログラム | |
JP2022135372A (ja) | センタ、更新管理方法、及び更新管理プログラム | |
JP2022160125A (ja) | センタ、配信制御方法、及び配信制御プログラム | |
KR102693194B1 (ko) | 센터, ota 마스터, 시스템, 배신 방법, 비일시적인 기억 매체 및 차량 | |
US11954480B2 (en) | Center, OTA master, system, method, non-transitory storage medium, and vehicle | |
JP7540401B2 (ja) | センタ、otaマスタ、方法、プログラム、及び車両 | |
JP2023012131A (ja) | ソフトウェアの更新を行うシステム | |
JP2023023616A (ja) | ソフトウェアの更新を制御するセンタ | |
JP2023019042A (ja) | 車両用のシステム、センタ、方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240212 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20241025 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20241029 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20241119 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20250121 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250203 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20250401 |