JP7371585B2 - ソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバ - Google Patents

ソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバ Download PDF

Info

Publication number
JP7371585B2
JP7371585B2 JP2020127515A JP2020127515A JP7371585B2 JP 7371585 B2 JP7371585 B2 JP 7371585B2 JP 2020127515 A JP2020127515 A JP 2020127515A JP 2020127515 A JP2020127515 A JP 2020127515A JP 7371585 B2 JP7371585 B2 JP 7371585B2
Authority
JP
Japan
Prior art keywords
update data
software
update
control unit
server
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.)
Active
Application number
JP2020127515A
Other languages
English (en)
Other versions
JP2022024746A (ja
Inventor
隼 浜崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2020127515A priority Critical patent/JP7371585B2/ja
Priority to US17/358,596 priority patent/US11995429B2/en
Priority to EP21182002.2A priority patent/EP3945417A1/en
Priority to CN202110750401.9A priority patent/CN114003242A/zh
Publication of JP2022024746A publication Critical patent/JP2022024746A/ja
Application granted granted Critical
Publication of JP7371585B2 publication Critical patent/JP7371585B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Description

本開示は、電子制御ユニットのソフトウェアの更新を制御するためのソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバに関する。
車両には、車両の動作を制御するための複数の電子制御ユニット(ECU)が搭載されている。ECUは、プロセッサと、RAMのような一時的な記憶部と、フラッシュROMのような不揮発性の記憶部とを備え、プロセッサが不揮発性の記憶部に記憶されるソフトウェアを実行することによりECUの制御機能を実現する。各ECUが記憶するソフトウェアは書き換え可能であり、より新しいバージョンのソフトウェアに更新することにより、各ECUの機能を改善したり、新たな車両制御機能を追加したりすることができる。
ECUのソフトウェアを更新する技術として、車載ネットワークに接続された車載通信機器とインターネット等の通信ネットワークとを無線で接続し、無線通信を介してサーバからソフトウェアをダウンロードし、ダウンロードしたソフトウェアをインストールすることによりECUのプログラム更新や追加を行うOTA(Over The Air)技術が知られている(例えば、特許文献1参照)。
OTAによるソフトウェアの更新は、ソフトウェア更新を行うイベント(キャンペーン)がサーバに登録された後、車両がサーバに更新データの有無の確認を要求したことを契機として行われる。ソフトウェア更新のキャンペーンがある場合、車両は、更新データのダウンロード、更新データのインストール及び更新版のソフトウェアのアクティベートを順次行うことにより、更新対象の電子制御ユニットのソフトウェアを更新する。
特開2004-326689号公報
車両においては、ダウンロード、インストール及びアクティベートの全処理が連続して行われず、例えば、更新データのダウンロード後、時間が経過してからインストール以降の処理が行われるケースが想定される。一方、サーバにおいては、車両が更新データをダウンロードした後に、ソフトウェア更新のキャンペーンがキャンセルされる可能性がある。キャンペーンがキャンセルされた場合、更新対象の電子制御ユニットのソフトウェアは、キャンセルされたキャンペーンの登録前における有効かつ最新のものであることが必要である。
それ故に、本開示は、ソフトウェア更新のキャンペーンがキャンセルされた場合に、更新対象であった電子制御ユニットのソフトウェアを、有効かつ最新の状態に維持できるソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバを提供することを目的とする。
本開示に係るソフトウェア更新装置は、電子制御ユニットのソフトウェアの更新データをサーバからダウンロードする第1通信部と、更新データのインストール前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバに送信し、更新データが有効であるか否かを示す確認結果をサーバから受信する第2通信部と、更新データのインストール後、かつ、アクティベート前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバに送信し、更新データが有効であるか否かの確認結果をサーバから受信する第3通信部と、電子制御ユニットのソフトウェア更新を制御する制御部とを備え、制御部は、第2通信部が受信した確認結果に基づいて更新データが有効でないと判定される場合、更新データのインストールを行わず、第3通信部が受信した確認結果に基づいて更新データが有効でないと判定される場合、更新データをインストールした電子制御ユニットが実行するソフトウェアを、更新データがインストールされる前の旧ソフトウェアとするものである。
本開示に係る更新制御方法は、プロセッサと、メモリと、記憶装置とを備えるコンピュータが、車両に搭載された電子制御ユニットのソフトウェア更新を制御するために実行する方法であって、電子制御ユニットのソフトウェアの更新データをサーバからダウンロードするステップと、更新データのインストール前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバに送信し、更新データが有効であるか否かを示す確認結果をサーバから受信するステップと、更新データのインストール後、かつ、アクティベート前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバに送信し、更新データが有効であるか否かの確認結果をサーバから受信するステップと、電子制御ユニットのソフトウェア更新を制御するステップとを含み、ソフトウェア更新を制御するステップにおいて、更新データのインストール前に、サーバから受信した確認結果に基づいて更新データが有効でないと判定される場合、更新データのインストールを行わず、更新データのインストール後、かつ、アクティベート前にサーバから受信した確認結果に基づいて更新データが有効でないと判定される場合、更新データをインストールした電子制御ユニットが実行するソフトウェアを、更新データがインストールされる前の旧ソフトウェアとするものである。
本開示に係る更新制御プログラムは、プロセッサと、メモリと、記憶装置とを備えるコンピュータが、車両に搭載された電子制御ユニットのソフトウェア更新を制御するために実行するプログラムであって、電子制御ユニットのソフトウェアの更新データをサーバからダウンロードするステップと、更新データのインストール前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバに送信し、更新データが有効であるか否かを示す確認結果をサーバから受信するステップと、更新データのインストール後、かつ、アクティベート前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバに送信し、更新データが有効であるか否かの確認結果をサーバから受信するステップと、電子制御ユニットのソフトウェア更新を制御するステップとを含み、ソフトウェア更新を制御するステップにおいて、更新データのインストール前に、サーバから受信した確認結果に基づいて更新データが有効でないと判定される場合、更新データのインストールを行わず、更新データのインストール後、かつ、アクティベート前にサーバから受信した確認結果に基づいて更新データが有効でないと判定される場合、更新データをインストールした電子制御ユニットが実行するソフトウェアを、更新データがインストールされる前の旧ソフトウェアとするものである。
本開示に係るサーバは、電子制御ユニットのソフトウェアの更新データを車両に送信する第1通信部と、更新データが有効であるか否かを確認するための有効性確認要求を、更新データが車両においてインストールされる前、および、更新データが車両においてインストールされた後、かつ、アクティベートされる前に、車両から受信すると、各々のタイミングにおいて更新データが有効であるか否かを示す確認結果を車両に送信する第2通信
部とを備え、第2通信部は、更新データを用いたソフトウェア更新がキャンセルされた場合、更新データが有効でないことを示す確認結果を車両に送信するものである。
本開示によれば、ソフトウェア更新のキャンペーンがキャンセルされた場合に、更新対象であった電子制御ユニットのソフトウェアを、有効かつ最新の状態に維持できるソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバを提供できる。
実施形態に係るネットワークシステムの全体構成を示すブロック図 図1に示したサーバの概略構成を示すブロック図 図1に示したソフトウェア更新装置の概略構成を示すブロック図 図1に示したサーバの機能ブロック図 図1に示したソフトウェア更新装置の機能ブロック図 実施形態に係るサーバが実行する制御処理の一例を示すフローチャート 実施形態に係るソフトウェア更新装置が実行する制御処理の一例を示すフローチャート 図7に示すインストール/アクティベート処理の詳細を示すフローチャート 図8に示す復元処理の詳細を示すフローチャート
(第1の実施形態)
図1は、実施形態に係るネットワークシステムの全体構成を示すブロック図であり、図2は、図1に示したサーバの概略構成を示すブロック図であり、図3は、図1に示したソフトウェア更新装置の概略構成を示すブロック図である。
図1に示すネットワークシステムは、車両に搭載された電子制御ユニット13a~13dのソフトウェアを更新するためのシステムであり、サーバ1(センタ)と、車両に搭載される車載ネットワーク2とを備える。
サーバ1は、ネットワーク5を介して車両に搭載されたソフトウェア更新装置11と通信可能であり、車両に搭載された電子制御ユニット13a~13dのソフトウェア更新を管理する。
図2に示すように、サーバ1は、CPU21と、RAM22と、記憶装置23と、通信装置24とを備える。記憶装置23は、ハードディスクやSSD等の読み書き可能な記憶媒体を備え、ソフトウェアの更新管理を実行するためのプログラムや、更新管理に用いる情報、電子制御ユニットの更新データを記憶する。サーバ1において、CPU21は、記憶装置23から読み出したプログラムを、RAM22を作業領域として用いて実行することにより、後述する制御処理を実行する。通信装置24は、ネットワークを介してソフトウェア更新装置11と通信を行う機器である。
車載ネットワーク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以外の電子制御ユニットが更に接続されていても良い。
電子制御ユニット13a~13dは、CPUと、RAMと、不揮発性メモリと、通信装置とを備える。CPUは、不揮発性メモリから読み出したソフトウェア(プログラム)を、RAMを作業領域として用いて実行することにより、各電子制御ユニットの機能を実現する。ここで、電子制御ユニットには、ソフトウェアを格納するための1つのデータ格納領域(バンク)を有するものと、ソフトウェアを格納するための2つのデータ格納領域(バンク)を有するものとがある。電子制御ユニットのデータ格納領域には、電子制御ユニットの機能を実現するためのソフトウェアの他に、バージョン情報やパラメータデータ、起動用のブートプログラム、ソフトウェア更新用のプログラム等が格納される場合がある。1つのデータ格納領域を持つ電子制御ユニットにおいては、データ格納領域に更新データをインストールすることにより、電子制御ユニットのソフトウェアに影響が生じる。一方、2つのデータ格納領域を持つ電子ユニットにおいては、2つのデータ格納領域のうち、いずれか一方を読み出し対象の格納領域(運用面)とし、読み出し対象の格納領域に格納されるソフトウェアを実行する。読み出し対象でない他方の格納領域(非運用面)には、読み出し対象の格納領域(運用面)のプログラムの実行中に、バックグラウンドで更新データを書き込み可能である。ソフトウェア更新処理におけるアクティベート時には、CPU41によるプログラムの読み出し対象の格納領域を切り替えることにより、更新版のソフトウェアをアクティベートすることができる。
尚、本開示において、2つのデータ格納領域を有する電子制御ユニットには、不揮発性メモリが有する1面のデータ格納領域を擬似的に2面に区画し、一方の面のプログラムを実行中に他方の面にプログラムを書き込み可能にした「1面サスペンドメモリ」と呼ばれる構成のメモリを備えた電子制御ユニットと、1面のデータ格納領域を有する不揮発性メモリに加え、1面のデータ格納領域を有する拡張不揮発性メモリを備え、これら2つの不揮発性メモリを運用面及び非運用面として使用可能な電子制御ユニットも含まれる。
図3に示すように、ソフトウェア更新装置11は、CPU31と、RAM32と、ROM33と、記憶装置34とを備えるマイクロコンピュータ35と、通信装置36とを備える。ソフトウェア更新装置11において、マイクロコンピュータ35のCPU31は、ROM33から読み出したプログラムを、RAM32を作業領域として用いて実行することにより、後述する制御処理を実行する。通信装置36は、図1に示したバス15a~15dを介して、通信モジュール12、電子制御ユニット13a~13d、表示装置14と通信を行う機器である。
ここで、ソフトウェアの更新処理は、サーバ1から更新データをダウンロードするフェーズと、ダウンロードした更新データを更新対象の電子制御ユニットに転送し、更新対象の電子制御ユニットの記憶領域に更新データをインストールするフェーズと、更新対象の電子制御ユニットにおいてインストールした更新版のソフトウェアを有効化するアクティベートのフェーズとからなる。
ダウンロードは、サーバ1から送信された、電子制御ユニットのソフトウェアを更新するための更新データを受信して記憶する処理である。ダウンロードのフェーズでは、更新データの受信だけでなく、ダウンロードの実行可否判断、更新データの検証等、ダウンロードに関する一連の処理の制御を含む。インストールは、ダウンロードした更新データに基づいて、更新対象の電子制御ユニットに車載機器の記憶部に更新版のプログラム(更新ソフトウェア)を書き込む処理である。インストールのフェーズでは、インストール実行だけでなく、インストールの実行可否判断、更新データの転送および更新版のプログラムの検証等、インストールに関する一連の処理の制御を含む。アクティベートは、インストールした更新版のプログラムを有効化(アクティベート)する処理である。アクティベートする制御は、アクティベート実行だけでなく、アクティベートの実行可否判断、実行結果の検証等、アクティベートに関する一連の制御を含む。
サーバ1からソフトウェア更新装置11に送信される更新データは、電子制御ユニットの更新ソフトウェア、更新ソフトウェアを圧縮した圧縮データ、更新ソフトウェアまたは圧縮データを分割した分割データのいずれを含んでいても良い。また、更新データは、更新対象の電子制御ユニットを識別する識別子(ECU ID)と、更新前のソフトウェアを識別する識別子(ECU ソフトウェア ID)を含んでいても良い。更新データは、上述した配信パッケージとしてダウンロードされるが、配信パッケージには、単一または複数の電子制御ユニットの更新データが含まれる。
更新データが更新ソフトウェアそのものを含む場合は、インストールのフェーズにおいて、ソフトウェア更新装置が更新データ(更新ソフトウェア)を更新対象の電子制御ユニットに転送する。また、更新データが更新ソフトウェアの圧縮データ、差分データあるいは分割データを含む場合、ソフトウェア更新装置11が更新対象の電子制御ユニットに更新データを転送し、更新対象の電子制御ユニットが更新データから更新ソフトウェアを生成しても良いし、ソフトウェア更新装置11が更新データから更新ソフトウェアを生成してから、更新ソフトウェアを更新対象の電子制御ユニットに転送しても良い。ここで、更新ソフトウェアの生成は、圧縮データの解凍、差分データまたは分割データの組み付けにより行うことができる。
更新ソフトウェアのインストールは、ソフトウェア更新装置11からのインストール要求に基づき、更新対象の電子制御ユニットが行うことができる。あるいは、更新データを受信した更新対象の電子制御ユニットが、ソフトウェア更新装置11からの明示の指示を受けることなく、自律的にインストールを行っても良い。
更新ソフトウェアのアクティベートは、ソフトウェア更新装置11からのアクティベート要求に基づき、更新対象の電子制御ユニットが行うことができる。あるいは、更新データを受信した更新対象の電子制御ユニットが、ソフトウェア更新装置11からの明示の指示を受けることなく、自律的にアクティベートを行っても良い。
尚、ソフトウェアの更新処理は、複数の電子制御ユニットのそれぞれに対して、連続的あるいは並列的に行うことができる。
また、本明細書における「プログラム更新処理」は、ダウンロード・インストール・アクティベートの全てを連続して行う処理だけでなく、ダウンロード・インストール・アクティベートの一部のみを行う処理も含む。
図4は、図1に示したサーバの機能ブロック図である。
サーバ1は、記憶部26と、第1通信部27aと、第2通信部27bと、制御部28とを備える。第1通信部27a、第2通信部27b及び制御部28は、図2に示したCPU21がRAM22を用いて記憶装置23に記憶されるプログラムを実行することにより実現され、記憶部26は、図2に示した記憶装置23により実現される。
記憶部26は、車両を識別する車両識別情報(車両ID)毎に、車両に搭載された1以上の電子制御ユニットで利用可能なソフトウェアを示す情報とを関連付けた更新管理情報と、電子制御ユニットのソフトウェアの更新データとを記憶する。電子制御ユニットで利用可能なソフトウェアを示す情報として、例えば、複数の電子制御ユニットのそれぞれのソフトウェアの最新のバージョン情報の組み合わせが定義される。更新管理情報及び更新データは、電子制御ユニットのソフトウェア更新のキャンペーン登録時に記憶部26に格納される。
第1通信部27aは、ソフトウェア更新装置11からソフトウェアの更新確認要求を受信可能である。更新確認要求は、例えば、車両において電源またはイグニッションがオンされたときに、ソフトウェア更新装置11からサーバ1へと送信される情報であって、電子制御ユニットの更新データがあるか否かの確認をサーバ1に要求するための情報である。第1通信部27aは、ソフトウェア更新装置11から受信した更新確認要求に応答して、更新データの有無を示す情報をソフトウェア更新装置11に送信する。また、第1通信部27aは、ソフトウェア更新装置11からの配信パッケージの送信要求(ダウンロード要求)を受信可能である。第1通信部27aは、配信パッケージのダウンロード要求を受信すると、電子制御ユニットのソフトウェアの更新データを含む配信パッケージをソフトウェア更新装置11に送信する。
第2通信部27bは、ソフトウェア更新装置11から更新データの有効性確認要求を受信可能である。有効性確認要求は、例えば、更新データのダウンロード後、かつ、インストール前にソフトウェア更新装置11からサーバ1へと送信される情報であって、インストール対象の更新データが有効であるか否かの確認をサーバ1に要求するための情報である。第2通信部27bは、更新データの有効性確認要求を受信すると、指定された更新データが有効であるか否かを示す確認結果をソフトウェア更新装置11に送信する。
制御部28は、第1通信部27aが更新確認要求を受信すると、記憶部26に記憶される更新管理情報に基づいて、更新確認要求に含まれる車両IDで特定される車両のソフトウェアの更新データがあるか否かを判定する。制御部28による更新データがあるか否かの判定結果は、第1通信部27aによってソフトウェア更新装置11に送信される。制御部28は、電子制御ユニットの更新データがあると判定した場合、ソフトウェア更新装置11から配信パッケージのダウンロード要求を受信すると、記憶部26に記憶される更新データを含む配信パッケージを生成する。この配信パッケージは、第1通信部27aによりソフトウェア更新装置11に送信される。
また、制御部28は、第2通信部27bが更新データの有効性確認要求を受信すると、指定された更新データを用いたソフトウェア更新のイベント(キャンペーン)がキャンセルされているか否かを判定する。制御部28は、指定された更新データに係るキャンペーンがキャンセルされている場合は、指定された更新データが有効でないことを示す確認結果を作成し、それ以外の場合は、指定された更新データが有効であることを示す確認結果を作成する。制御部28が作成した確認結果は、第2通信部27bによってソフトウェア更新装置11送信される。
図5は、図1に示したソフトウェア更新装置の機能ブロック図である。
ソフトウェア更新装置11は、記憶部37と、第1通信部38aと、第2通信部38bと、第3通信部38cと、制御部39とを備える。記憶部37は、図3に示した記憶装置34によって実現され、第1通信部38aと、第2通信部38bと、第3通信部38cと、制御部39とは、図3に示したCPU31がRAM32を用いてROM33に記憶されるプログラムを実行することにより実現される。
記憶部37は、電子制御ユニット13a~13dのソフトウェア更新を実行するためのプログラムや、ソフトウェア更新を実行する際に用いる各種データの他、サーバ1からダウンロードしたソフトウェアの更新データを記憶する。また、記憶部37は、更新データのインストール前に電子制御ユニットのデータ格納領域に記憶されているソフトウェアのバックアップ領域として機能する。より詳細には、更新対象の電子制御ユニットがデータ格納領域(バンク)を1つだけ持つ場合、記憶部37は、更新データのインストール前に格納領域に記憶されている旧ソフトウェアのデータを記憶する。旧ソフトウェアのデータは、旧バージョンのソフトウェア全体のデータであっても良いし、更新データを適用した新バージョンのソフトウェアから旧バージョンのソフトウェアを復元するための差分データであっても良い。記憶部37は、旧ソフトウェアのデータ(バックアップデータ)を圧縮データとして記憶しても良い。
第1通信部38aは、例えば、車両の電源またはイグニッションがオンされたことを契機として、ソフトウェアの更新確認要求をサーバ1に送信する。更新確認要求は、車両を識別するための車両IDと、車載ネットワーク2に接続される電子制御ユニット13a~13dのソフトウェアのバージョンとを含む。車両ID及び電子制御ユニット13a~13dのソフトウェアのバージョンは、サーバ1が車両ID毎に保持する最新のソフトウェアのバージョンとの比較により、電子制御ユニットのソフトウェアの更新データがあるか否かを判定するために用いられる。また、第1通信部38aは、更新確認要求に対する応答としてサーバ1から更新データの有無を示す通知を受信する。電子制御ユニットのソフトウェアの更新データがある場合、第1通信部38aは、配信パッケージのダウンロード要求をサーバ1に送信し、サーバ1から送信される配信パッケージを受信する。配信パッケージは、更新データの他に、更新データの真正性を検証するための検証用データや、更新データの数、インストール順、ソフトウェア更新時に用いる各種制御情報等を含んでいても良い。
第2通信部38bは、サーバ1から受信した更新データのインストール前に、更新データが有効であるか否かを確認するための有効性確認要求をサーバ1に送信する。有効性確認要求は、車両を識別するための車両識別情報(車両ID)と、ダウンロードした配信パッケージまたは更新データを特定するための識別情報とを含む。第2通信部38bは、有効性確認要求に応答してサーバ1から送信される確認結果を受信する。
第3通信部38cは、サーバ1から受信した更新データのインストール後、かつ、アクティベート前に、インストールした更新データが有効であるか否かを確認するための有効性確認要求をサーバ1に送信する。有効性確認要求は、車両を識別するための車両識別情報(車両ID)と、ダウンロードした配信パッケージまたは更新データを特定するための識別情報とを含む。第3通信部38cは、有効性確認要求に応答してサーバ1から送信される確認結果を受信する。
制御部39は、電子制御ユニットのソフトウェア更新を制御するための種々の処理を行う。制御部39は、第1通信部38aがサーバ1から受信した、更新確認要求に対する確認結果に基づいて、電子制御ユニットのソフトウェアの更新データの有無を判定する。また、制御部39は、第1通信部38aがサーバ1から更新データを含む配信パッケージを受信すると、受信した配信パッケージの真正性を検証する。
また、制御部39は、更新データのインストール前に、更新データが有効であるか否かを判定する。上述したように、第2通信部38bは、サーバ1に対して送信した有効性確認要求に対する応答として、有効性確認要求で指定された更新データが有効であるか否かを示す確認結果を受信する。制御部39は、第2通信部38bが受信した確認結果に基づいて、更新データが有効である(すなわち、更新データに係るキャンペーンがキャンセルされていない)か、更新データが有効でない(すなわち、更新データに係るキャンペーンがキャンセルされた)かを判定することができる。制御部39は、第2通信部38bが受信した確認結果に基づいて、更新データが有効であると判定した場合、更新データのインストール処理を開始するが、更新データが有効でないと判定した場合は、更新データのインストールを行わない。更新データのインストール前に更新データの有効性をサーバ1に問い合わせて確認することにより、更新データに係るキャンペーンがキャンセルされた場合に、当該更新データがインストールされることを防止することができる。
更に、制御部39は、更新データのインストール後、かつ、アクティベート前に、更新データが有効であるか否かを判定する。上述したように、第3通信部38cは、サーバ1に対して送信した有効性確認要求に対する応答として、有効性確認要求で指定された更新データが有効であるか否かを示す確認結果を受信する。制御部39は、第3通信部38cが受信した確認結果に基づいて、更新データが有効である(すなわち、更新データに係るキャンペーンがキャンセルされていない)か、更新データが有効でない(すなわち、更新データに係るキャンペーンがキャンセルされた)かを判定することができる。制御部39は、第3通信部38cが受信した確認結果に基づいて、更新データが有効であると判定した場合、更新版のソフトウェアのアクティベート処理を開始するが、更新データが有効でないと判定した場合は、更新対象の電子制御ユニットのソフトウェアを更新データのインストール前の状態に復元する。制御部39が行う復元処理は、更新対象の電子制御ユニットが有するデータ格納領域によって異なる。詳細は後述するが、更新対象の電子制御ユニットが1つのデータ格納領域を持つ場合、制御部39は、ロールバックにより、データ格納領域に格納される更新後のソフトウェアを更新前の旧ソフトウェアに戻す処理を行う。一方、更新対象の電子制御ユニットが2つのデータ格納領域を持つ場合、制御部39は、更新版のソフトウェアのアクティベートを行わず、読み出し対象のデータ格納領域を旧ソフトウェアが記憶されたデータ格納領域に維持する。
制御部39は、ソフトウェア更新の実行時に、承諾要求処理として、ソフトウェア更新に対して承諾が必要である旨の通知やソフトウェア更新を承諾した旨の入力を促す通知を出力装置に出力させる処理と、ユーザからの操作入力を受け付ける処理とを行う。出力装置としては、車載ネットワーク2に設けられた表示装置14や、音声による通知を行う音声出力装置等を利用できる。例えば、承諾要求処理において、表示装置14を出力装置として用いる場合、制御部39は、ソフトウェア更新の承諾を求めるための承諾要求画面を表示装置14に表示させ、ユーザまたは管理者が承諾した場合に承諾ボタンを押下する等の特定の入力操作を促す通知を表示装置14に表示させる。また、制御部40は、承諾要求処理において、電子制御ユニットのソフトウェアの更新データがあることを通知する文言やアイコン等を表示装置14に表示させたり、ソフトウェア更新処理の実行中における制限事項等を表示装置14に表示させたりする。
図6は、実施形態に係るサーバが実行する制御処理の一例を示すフローチャートである。図6に示す制御処理は、例えば所定の時間間隔で繰り返し実行される。
ステップS1において、第1通信部27aは、ソフトウェア更新装置11から更新確認要求を受信したか否かを判定する。ステップS1の判定がYESの場合、処理はステップS2に進み、それ以外の場合、処理はステップS3に進む。
ステップS2において、第1通信部27aは、更新確認要求を送信した車両に対して、電子制御ユニットのソフトウェアの更新データがあるか否かを示す情報を送信する。更新データの有無は、例えば、制御部28が、更新確認要求に含まれる車両IDに関連付けて更新管理情報に記憶されているソフトウェアのバージョンの組み合わせと、更新確認要求に含まれる現在のソフトウェアのバージョンの組み合わせとを比較し、更新確認要求に含まれる現在のソフトウェアのバージョンの組み合わせが、更新管理情報に記憶されているバージョンの組み合わせより古い場合に、更新データがあると判定することができる。その後、処理はステップS3に進む。
ステップS3において、第1通信部27aは、ソフトウェア更新装置11から配信パッケージのダウンロード要求を受信したか否かを判定する。ステップS3の判定がYESの場合、処理はステップS4に進み、それ以外の場合、処理はステップS5に進む。
ステップS4において、第1通信部27aは、制御部28が生成した、ソフトウェアの更新データを含む配信パッケージをソフトウェア更新装置11に送信する。その後、処理はステップS5に進む。
ステップS5において、第2通信部27bは、ソフトウェア更新装置11から更新データの有効性確認要求を受信したか否かを判定する。ステップS5の判定がYESの場合、処理はステップS6に進み、それ以外の場合、処理はステップS1に進む。
ステップS6において、制御部28は、ソフトウェア更新装置11から指定された更新データの有効性を判定する。例えば、制御部28は、ステップS5で第2通信部27bが受信した有効性確認要求に含まれる更新データの識別情報に基づいて、当該識別情報によって特定される更新データのキャンペーンがキャンセルされているか否かを判定し、キャンペーンが判定されている場合、指定された更新データが有効でないと判定し、それ以外の場合、指定された更新データが有効であると判定する。その後、処理はステップS7に進む。
ステップS7において、第2通信部27bは、ステップS6における判定結果、すなわち、指定された更新データが有効であるか否かを示す確認結果をソフトウェア更新装置11に送信する。その後、処理はステップS1に進む。
図7は、実施形態に係るソフトウェア更新装置が実行する制御処理の一例を示すフローチャートである。図7に示す制御処理は、例えば、車両の電源またはイグニッションがオンされたことを契機として実行される。
ステップS11において、第1通信部38aは、車両IDと電子制御ユニットのソフトウェアのバージョンの組み合わせとを含む更新確認要求をサーバ1に送信する。その後、処理はステップS12に進む。
ステップS12において、第1通信部38aは、サーバ1から更新確認要求に対する確認結果を受信する。その後、処理はステップS13に進む。
ステップS13において、制御部39は、ステップS12で受信した確認結果に基づいて、電子制御ユニット13a~13dのいずれかのソフトウェアの更新データがあるか否かを判定する。ステップS13の判定がYESの場合、処理はステップS14に進み、それ以外の場合、処理はステップS16に進む。
ステップS14において、第1通信部38aは、ダウンロード処理を実行する。より詳細には、第1通信部38aは、サーバ1に配信パッケージのダウンロード要求を送信し、ダウンロード要求に応答して送信される配信パッケージを受信し、受信した配信パッケージを記憶部37に格納する。制御部39は、受信した配信パッケージに含まれる更新データの真正性を検証する。ステップS14において、ダウンロードの実行可否の判定や、サーバ1に対してダウンロードが完了したことの通知を行っても良い。その後、処理はステップS15に進む。
ステップS15において、制御部39は、更新対象の電子制御ユニットに対してインストール処理及びアクティベート処理を実行し、処理を終了する。
ステップS16において、制御部39は、ソフトウェア更新処理を実行する指示を受け付けたか否かを判定する。ソフトウェア更新処理は、必ずしも連続して実行されるわけではなく、例えば、ダウンロードが完了した段階、または、インストールが完了した段階で中断され、続きの更新処理が後から実行される場合がある。そこで、本実施形態では、ステップS13において更新データがないと判定された場合に、ステップS16の判定を設けることにより、中断されたソフトウェア更新処理の再開を可能としている。ステップS16の判定は、例えば、中断されたソフトウェア更新処理があることを通知する文言やアイコン等を表示装置14に表示させた後、入力ボタン等を用いた特定の操作入力を受け付けたか否かによって行うことができる。ステップS16の判定がYESの場合、処理はステップS15に進み、それ以外の場合、処理を終了する。
図8は、図7に示すインストール/アクティベート処理の詳細を示すフローチャート
である。
ステップS21において、制御部39は、インストールに対する承諾要求処理を実行する。例えば、制御部39は、電子制御ユニットのソフトウェア更新を開始する旨の表示と、ソフトウェア更新に対するユーザの承諾を要求する旨の表示と、必要に応じて、更新データのインストールに要する時間や、インストール中の制限事項や注意事項の表示を表示装置14に表示させ、タッチパネルや操作ボタン等の入力手段を用いたユーザによる操作入力を受け付ける。その後、処理はステップS22に進む。
ステップS22において、制御部39は、ソフトウェア更新(インストール)を承諾する旨の操作入力が行われた否かを判定する。インストールを承諾する旨の操作入力は、例えば、表示装置14に表示された「承諾する」あるいは「更新を開始する」等のボタンが押下されたか否かに基づいて判定することができる。また、ユーザがソフトウェアの更新開始(インストール)をすぐに承諾せず、後でソフトウェアの更新開始(インストール)を行うことを希望する場合は、「後で行う」等のボタンを押下することによりその旨を受け付けることができ、この場合、制御部39はステップS22でNOと判定する。ステップS22の判定がYESの場合、処理はステップS23に進み、それ以外の場合、処理を終了する。
ステップS23において、第2通信部38bは、インストール対象の更新データが有効であるか否かを確認するための有効性確認要求をサーバ1に送信する。有効性確認要求は、配信パッケージまたはこれに含まれる更新データを特定する情報を含む。その後、処理はステップS24に進む。
ステップS24において、制御部39は、第2通信部38bがサーバ1から受信した有効性確認要求に対する確認結果に基づいて、インストール対象の更新データが有効であるか否かを判定する。ステップS24の処理がYESの場合、処理はステップS25に進み、それ以外の場合、処理を終了する。
ステップS25において、制御部39は、更新対象の電子制御ユニットに、更新データを転送し、インストールを指示する。その後、処理はステップS25に進む。更新対象の電子制御ユニットは、ソフトウェア更新装置11から受信した更新データをデータ格納領域に書き込む。
ステップS26において、制御部39は、アクティベートに対する承諾要求処理を実行する。例えば、制御部39は、例えば、電子制御ユニットのソフトウェア更新の準備が整い、電源またはイグニッションOFF等の特定の操作を行うことによりプログラムが更新される旨の表示と、必要に応じて、アクティベートに要する時間や、アクティベート中の制限事項や注意事項の表示を表示装置14に表示させ、タッチパネルや操作ボタン等の入力手段を用いたユーザによる操作入力を受け付ける。その後、処理はステップS27に進む。
ステップS27において、制御部39は、ソフトウェア更新(アクティベート)を承諾する旨の操作入力が行われたか否かを判定する。アクティベートを承諾する旨の操作入力は、例えば、表示装置14に表示された「承諾する」あるいは「更新する」等のボタンが押下されたか否かに基づいて判定することができる。また、ユーザがソフトウェア更新(アクティベート)をすぐに承諾せず、後でソフトウェア更新を行うことを希望する場合は、「後で行う」等のボタンを押下することによりその旨を受け付けることができ、この場合、制御部39はステップS27でNOと判定する。ステップS27の判定がYESの場合、処理はステップS28に進み、それ以外の場合、処理を終了する。
ステップS28において、第3通信部38cは、インストールした更新データが有効であるか否かを確認するための有効性確認要求をサーバ1に送信する。有効性確認要求は、配信パッケージまたはこれに含まれる更新データを特定する情報を含む。処理はステップS29に進む。
ステップS29において、制御部39は、第3通信部38cがサーバ1から受信した有効性確認要求に対する確認結果に基づいて、インストールした更新データが有効であるか否かを判定する。ステップS29の処理がYESの場合、処理はステップS30に進み、それ以外の場合、処理はステップS31に進む。
ステップS30において、制御部39は、更新対象の電子制御ユニットに対して、更新版のソフトウェアのアクティベートを指示する。その後、処理を終了する。尚、更新対象の電子制御ユニットは、電源またはイグニッションOFFにより等の特定の操作が行われたことを契機として、再起動し、更新後のソフトウェアを実行する。これにより、電子制御ユニットのソフトウェア更新(機能更新)が完了する。
ステップS31において、制御部39は、復元処理を実行し、処理を終了する。尚、本開示において、復元とは、電子制御ユニットの状態を、更新データのインストール前に実行されていたバージョンのソフトウェア(旧ソフトウェア)を実行可能な状態とすることをいう。
尚、更新対象の電子制御ユニットが1つのデータ格納領域を持つ構成である場合、データ格納領域に更新データをインストールした時点で電子制御ユニットのソフトウェアに影響が及ぶため、インストール及びアクティベートを連続して行うことが好ましい。したがって、更新対象の電子制御ユニットが1つのデータ格納領域を持つ構成である場合、アクティベート実行前の承諾に関する処理(ステップS25及びS26)を省略しても良い。
図9は、図8に示す復元処理の詳細を示すフローチャートである。
ステップS101において、制御部39は、更新対象の電子制御ユニットが有するデータ格納領域の数が1面であるか2面であるかを判定する。電子制御ユニットが有するデータ格納領域の数は、車両の製造時等に電子制御ユニットの構成に応じて予め記憶部37に格納しておいても良いし、更新対象の電子制御ユニットから通信により取得しても良いし、サーバ1から取得しても良い。ソフトウェア更新装置11がサーバ1から更新対象の電子制御ユニットのデータ格納領域の数を取得する場合、サーバ1は、更新データを含む配信パッケージの中に更新対象の電子制御ユニットの数に関する情報を含めてソフトウェア更新装置11に送信し、制御部39が配信パッケージに含まれる情報に基づいて判定しても良い。更新対象の電子制御ユニットが有するデータ格納領域の数が1面である場合、処理はステップS102に進み、更新対象の電子制御ユニットが有するデータ格納領域の数が2面である場合、処理はステップS103に進む。
ステップS102において、制御部39は、復元対象の電子制御ユニットに対して、更新データを適用する前の旧ソフトウェアを再インストールするよう指示する。更新対象の電子制御ユニットに更新データをインストールする前に、旧ソフトウェアのデータがソフトウェア更新装置11の記憶部37にバックアップされている場合、バックアップされているデータを復元対象の電子制御ユニットに転送し、インストールを指示する。その後、処理はステップS103に進む。更新対象の電子制御ユニットは、ソフトウェア更新装置11から受信したデータをデータ格納領域に書き込むことにより、旧ソフトウェアを再インストール(復元)する。その後、処理はステップS104に進む。
ステップS103において、制御部39は、更新後のソフトウェアのアクティベートを行わず、旧ソフトウェアのデータ格納領域を読み出し対象のデータ格納領域とするように復元対象の電子制御ユニットに指示する。その後処理はステップS104に進む。
ステップS104において、制御部39は、復元対象の全ての電子制御ユニットを復元したか否かを判定する。ステップS104の判定がYESの場合、処理はステップS101に進み、それ以外の場合、処理はステップS105に進む。
ステップS105において、制御部39は、復元対象の電子制御ユニットに対して、更新版のソフトウェアのアクティベートを指示する。その後、処理を終了する。尚、更新対象の電子制御ユニットは、電源またはイグニッションOFFにより等の特定の操作が行われたことを契機として、再起動し、旧ソフトウェアを実行する。図9に示した復元処理により、電子制御ユニットが実行するソフトウェアを旧ソフトウェアに維持することができる。
本実施形態に係るソフトウェア更新装置11は、更新データのダウンロード後、かつ、インストール前に、ダウンロードした更新データが有効であるか否かをサーバ1に確認し、ダウンロードした更新データがインストール時に有効でない場合、更新データのインストールを行わない。電子制御ユニットのソフトウェア更新においては、更新データのダウンロード完了から時間が経過してからインストールが実行されるケースが想定される。この場合、ダウンロードした更新データに係るキャンペーンがキャンセルされる可能性がある。しかしながら、本実施形態に係るソフトウェア更新装置11は、更新データのインストール前に更新データの有効性を確認するため、キャンペーンのキャンセルにより無効になったソフトウェアがインストールされることを抑制することができ、ダウンロード時に更新対象であった電子制御ユニットのソフトウェアを、有効かつ最新の状態に維持することが可能となる。
また、本実施形態に係るソフトウェア更新装置11は、インストール後、かつ、アクティベート前に、再度、ダウンロードした更新データが有効であるか否かをサーバ1に確認し、ダウンロードした更新データがアクティベート時に有効である場合に、更新後のソフトウェアのアクティベートを行う。このように、ソフトウェア更新処理中に更新データの有効性を複数回確認するようにソフトウェア更新装置11を構成すれば、キャンペーンのキャンセル等によって無効となった更新データが電子制御ユニットに適用されることをより確実に防止することができる。インストール後、かつ、アクティベート前に、ダウンロードした更新データが有効でないと判定された場合、ソフトウェア更新装置11は、旧ソフトウェアを再インストールすること、または、更新後のソフトウェアのアクティベートを実行しないことにより、更新データのインストール前における有効かつ最新のソフトウェア(旧ソフトウェア)を電子制御ユニットが実行可能な状態を復元することができ、無効となった更新データが反映されることを抑制できる。
上記の実施形態で例示したサーバ1の機能は、プロセッサ(CPU)とメモリと記憶装置とを備えるコンピュータが実行する更新管理方法、あるいは、当該コンピュータに実行させる更新管理プログラム、更新管理プログラムを記憶したコンピュータ読み取り可能な非一時的記憶媒体として実現することも可能である。同様に、実施形態として例示したソフトウェア更新装置11の機能は、プロセッサ(CPU)とメモリと記憶装置とを備える、車載されたコンピュータが実行する更新制御方法、あるいは、当該車載されたコンピュータに実行させる更新制御プログラム、更新制御プログラムを記憶したコンピュータ読み取り可能な非一時的記憶媒体として実現することも可能である。
上記の各実施形態では、車両側において、車載ネットワークに設けられたソフトウェア更新装置11が、マスタ装置として、全ての電子制御ユニット13a~13dのプログラム更新を制御する例を説明したが、ソフトウェア更新装置11を設ける代わりに、電子制御ユニット13a~13dのいずれか1つが図7~図9に示した更新制御機能を有しており、他の電子制御ユニットのプログラム更新を制御しても良い。また、ソフトウェア更新装置11を設ける代わりに、図7~図9に示した更新制御機能を、車載ネットワーク2に有線で接続可能な外部機器に設け、この外部機器を用いて電子制御ユニット13a~13dのプログラム更新処理を行うことも可能である。
本開示技術は、電子制御ユニットのプログラムを更新するためのネットワークシステムに利用できる。
1 サーバ
2 車載ネットワーク
5 ネットワーク
11 ソフトウェア更新装置
13a~13d 電子制御ユニット
27a 第1通信部
27b 第2通信部
28 制御部
37 記憶部
38a 第1通信部
38b 第2通信部
38a 第3通信部
39 制御部

Claims (8)

  1. 車両に搭載された電子制御ユニットのソフトウェア更新を制御するソフトウェア更新装置であって、
    前記電子制御ユニットのソフトウェアの更新データをサーバからダウンロードする第1通信部と、
    前記更新データのインストール前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かを示す確認結果を前記サーバから受信する第2通信部と
    前記更新データのインストール後、かつ、アクティベート前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かの確認結果を前記サーバから受信する第3通信部と、
    前記電子制御ユニットのソフトウェア更新を制御する制御部とを備え、
    前記制御部は、前記第2通信部が受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データのインストールを行わず、前記第3通信部が受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データをインストールした電子制御ユニットが実行するソフトウェアを、前記更新データがインストールされる前の旧ソフトウェアとする、ソフトウェア更新装置。
  2. 前記制御部は、前記第3通信部が受信した確認結果に基づいて前記更新データが有効でないと判定され、かつ、更新対象の電子制御ユニットに搭載された不揮発性メモリが2つの格納領域を有する場合、更新後のソフトウェアのアクティベートを行わない、請求項に記載のソフトウェア更新装置。
  3. 前記更新データのインストール前に更新対象の電子制御ユニットで実行されていた前記旧ソフトウェアのデータを記憶する記憶部を備え、
    前記制御部は、前記第3通信部が受信した確認結果に基づいて前記更新データが有効でないと判定され、かつ、更新対象の電子制御ユニットに搭載された不揮発性メモリが1つの格納領域を有する場合、前記記憶部に記憶される前記旧ソフトウェアのデータを用いて旧ソフトウェアの再インストールを行う、請求項に記載のソフトウェア更新装置。
  4. プロセッサと、メモリと、記憶装置とを備えるコンピュータが、車両に搭載された電子制御ユニットのソフトウェア更新を制御するために実行する更新制御方法であって、
    前記電子制御ユニットのソフトウェアの更新データをサーバからダウンロードするステップと、
    前記更新データのインストール前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かを示す確認結果を前記サーバから受信するステップと、
    前記更新データのインストール後、かつ、アクティベート前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かの確認結果を前記サーバから受信するステップと、
    前記電子制御ユニットのソフトウェア更新を制御するステップとを含み、
    前記ソフトウェア更新を制御するステップにおいて、前記更新データのインストール前に前記サーバから受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データのインストールを行わず、前記更新データのインストール後、かつ、アクティベート前に前記サーバから受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データをインストールした電子制御ユニットが実行するソフトウェアを、前記更新データがインストールされる前の旧ソフトウェアとする、更新制御方法。
  5. プロセッサと、メモリと、記憶装置とを備えるコンピュータが、車両に搭載された電子制御ユニットのソフトウェア更新を制御するために実行する更新制御プログラムであって、
    前記電子制御ユニットのソフトウェアの更新データをサーバからダウンロードするステップと、
    前記更新データのインストール前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かを示す確認結果を前記サーバから受信するステップと、
    前記更新データのインストール後、かつ、アクティベート前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かの確認結果を前記サーバから受信するステップと、
    前記電子制御ユニットのソフトウェア更新を制御するステップとを含み、
    前記ソフトウェア更新を制御するステップにおいて、前記更新データのインストール前に前記サーバから受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データのインストールを行わず、前記更新データのインストール後、かつ、アクティベート前に前記サーバから受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データをインストールした電子制御ユニットが実行するソフトウェアを、前記更新データがインストールされる前の旧ソフトウェアとする、更新制御方法。
  6. 車両に搭載された電子制御ユニットのソフトウェア更新を管理するサーバであって、
    前記電子制御ユニットのソフトウェアの更新データを前記車両に送信する第1通信部と、
    前記更新データが有効であるか否かを確認するための有効性確認要求を、前記更新データが前記車両においてインストールされる前、および、前記更新データが前記車両においてインストールされた後、かつ、アクティベートされる前に、前記車両から受信すると、各々のタイミングにおいて前記更新データが有効であるか否かを示す確認結果を前記車両に送信する第2通信部とを備え、
    前記第2通信部は、前記更新データを用いたソフトウェア更新がキャンセルされた場合、前記更新データが有効でないことを示す確認結果を前記車両に送信する、サーバ。
  7. 車両に搭載された電子制御ユニットのソフトウェア更新を制御するOTAマスタであって、
    前記電子制御ユニットのソフトウェアの更新データをセンタからダウンロードする第1通信部と、
    前記更新データのインストール前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記センタに送信し、前記更新データが有効であるか否かを示す確認結果を前記センタから受信する第2通信部と
    前記更新データのインストール後、かつ、アクティベート前に、前記更新データが有効であるか否かを確認するための有効性確認要求を前記サーバに送信し、前記更新データが有効であるか否かの確認結果を前記サーバから受信する第3通信部と、
    前記電子制御ユニットのソフトウェア更新を制御する制御部とを備え、
    前記制御部は、前記第2通信部が受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データのインストールを行わず、前記第3通信部が受信した確認結果に基づいて前記更新データが有効でないと判定される場合、前記更新データをインストールした電子制御ユニットが実行するソフトウェアを、前記更新データがインストールされる前の旧ソフトウェアとする、OTAマスタ。
  8. 車両に搭載された電子制御ユニットのソフトウェア更新を管理するセンタであって、
    前記電子制御ユニットのソフトウェアの更新データを前記車両に送信する第1通信部と、
    前記更新データが有効であるか否かを確認するための有効性確認要求を、前記更新データが前記車両においてインストールされる前、および、前記更新データが前記車両においてインストールされた後、かつ、アクティベートされる前に、前記車両から受信すると、各々のタイミングにおいて前記更新データが有効であるか否かを示す確認結果を前記車両に送信する第2通信部とを備え、
    前記第2通信部は、前記更新データを用いたソフトウェア更新がキャンセルされた場合、前記更新データが有効でないことを示す確認結果を前記車両に送信する、センタ。
JP2020127515A 2020-07-28 2020-07-28 ソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバ Active JP7371585B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2020127515A JP7371585B2 (ja) 2020-07-28 2020-07-28 ソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバ
US17/358,596 US11995429B2 (en) 2020-07-28 2021-06-25 Software update device, update control method, non-transitory storage medium, and server
EP21182002.2A EP3945417A1 (en) 2020-07-28 2021-06-28 Software update device, update control method, non-transitory storage medium, and server
CN202110750401.9A CN114003242A (zh) 2020-07-28 2021-07-02 软件更新装置、更新控制方法、非临时存储介质及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020127515A JP7371585B2 (ja) 2020-07-28 2020-07-28 ソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバ

Publications (2)

Publication Number Publication Date
JP2022024746A JP2022024746A (ja) 2022-02-09
JP7371585B2 true JP7371585B2 (ja) 2023-10-31

Family

ID=76695544

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020127515A Active JP7371585B2 (ja) 2020-07-28 2020-07-28 ソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバ

Country Status (4)

Country Link
US (1) US11995429B2 (ja)
EP (1) EP3945417A1 (ja)
JP (1) JP7371585B2 (ja)
CN (1) CN114003242A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220132864A (ko) * 2021-03-24 2022-10-04 현대자동차주식회사 차량 및 차량 제어 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016071879A (ja) 2014-10-01 2016-05-09 シャープ株式会社 情報処理装置、ソフトウェア配信システム、およびソフトウェア配信方法
US20170060559A1 (en) 2015-08-25 2017-03-02 Ford Global Technologies, Llc Multiple-stage secure vehicle software updating
JP2020027669A (ja) 2018-08-10 2020-02-20 株式会社デンソー 車両用プログラム書換えシステム,車両用プログラム書換え方法,パッケージ配信用プログラム,センター装置及びパッケージ配信方法
US20200073651A1 (en) 2018-09-05 2020-03-05 International Business Machines Corporation Multi-variable based secure download of vehicle updates

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004326689A (ja) 2003-04-28 2004-11-18 Nissan Motor Co Ltd 車載機器のソフトウェア書き換え方法、テレマティクスシステムおよびテレマティクス装置
CA2537910C (en) * 2003-09-05 2012-11-06 Itron, Inc. Synchronizing and controlling software downloads, such as for utility meter-reading data collection and processing
KR100754198B1 (ko) * 2005-12-12 2007-09-03 삼성전자주식회사 소프트웨어 자동 업데이트 방법 및 시스템
KR100782080B1 (ko) * 2006-09-07 2007-12-04 삼성전자주식회사 이동 통신 단말기 및 시스템의 펌웨어 갱신 방법
US9276749B2 (en) * 2012-07-31 2016-03-01 Adobe Systems Incorporated Distributed validation of digitally signed electronic documents
US9626174B2 (en) * 2013-04-15 2017-04-18 Cellco Partnership Cancelling device over the air software update
JP6507895B2 (ja) * 2015-07-09 2019-05-08 富士通株式会社 更新制御プログラム、方法、及び装置
JP2019036238A (ja) * 2017-08-21 2019-03-07 株式会社東芝 更新制御装置、端末、更新制御方法およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016071879A (ja) 2014-10-01 2016-05-09 シャープ株式会社 情報処理装置、ソフトウェア配信システム、およびソフトウェア配信方法
US20170060559A1 (en) 2015-08-25 2017-03-02 Ford Global Technologies, Llc Multiple-stage secure vehicle software updating
JP2020027669A (ja) 2018-08-10 2020-02-20 株式会社デンソー 車両用プログラム書換えシステム,車両用プログラム書換え方法,パッケージ配信用プログラム,センター装置及びパッケージ配信方法
US20200073651A1 (en) 2018-09-05 2020-03-05 International Business Machines Corporation Multi-variable based secure download of vehicle updates

Also Published As

Publication number Publication date
US20220035620A1 (en) 2022-02-03
US11995429B2 (en) 2024-05-28
EP3945417A1 (en) 2022-02-02
CN114003242A (zh) 2022-02-01
JP2022024746A (ja) 2022-02-09

Similar Documents

Publication Publication Date Title
JP2024015111A (ja) ソフトウェア更新装置、更新制御方法、更新制御プログラム及びotaマスタ
JP7371585B2 (ja) ソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバ
JP7452452B2 (ja) Otaマスタ、ソフトウェアの更新制御方法及び更新制御プログラム、otaマスタを備える車両
JP7484791B2 (ja) Otaマスタ、更新制御方法、及び更新制御プログラム
CN115454462A (zh) Ota管理器、系统、方法、非暂时性存储介质以及车辆
CN115514742A (zh) Ota管理器、中心、系统、方法、非暂时性存储介质
JP7380468B2 (ja) ソフトウェア更新装置、更新制御方法、更新制御プログラム、サーバ、otaマスタ及びセンタ
JP7363853B2 (ja) Otaマスタ、センタ、システム、更新方法、更新プログラム、及び車両
KR102669611B1 (ko) Ota 마스터, 갱신 제어 방법, 비일시적인 기억 매체, 및 차량
US20220391193A1 (en) Ota master, system, method, non-transitory storage medium, and vehicle
US20220405083A1 (en) Ota master, system, method, non-transitory storage medium, and vehicle
JP7355061B2 (ja) センタ、otaマスタ、システム、配信方法、配信プログラム、及び車両
KR20240078424A (ko) Ota 마스터, 갱신 제어 방법, 비일시적인 기억 매체, 및 차량
JP2022109039A (ja) センタ、更新管理方法及び更新管理プログラム
JP2022109037A (ja) センタ、管理方法および管理プログラム
JP2023002193A (ja) センタ、otaマスタ、システム、方法、プログラム、及び車両
JP2023001993A (ja) Otaマスタ、システム、方法、プログラム、及び車両
JP2022163396A (ja) Otaマスタ、更新制御方法、更新制御プログラム及びotaセンタ
JP2022126194A (ja) Otaマスタ、センタ、システム、方法、プログラム、及び車両

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220622

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230517

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230530

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230718

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230919

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231002

R151 Written notification of patent or utility model registration

Ref document number: 7371585

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151