IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ トヨタ自動車株式会社の特許一覧

特開2025-15640マスタ、ネットワークシステム、方法、プログラム、センタ、および車両
<>
  • 特開-マスタ、ネットワークシステム、方法、プログラム、センタ、および車両 図1
  • 特開-マスタ、ネットワークシステム、方法、プログラム、センタ、および車両 図2
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025015640
(43)【公開日】2025-01-30
(54)【発明の名称】マスタ、ネットワークシステム、方法、プログラム、センタ、および車両
(51)【国際特許分類】
   G06F 8/65 20180101AFI20250123BHJP
   B60R 16/02 20060101ALI20250123BHJP
【FI】
G06F8/65
B60R16/02 660U
【審査請求】有
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2024198735
(22)【出願日】2024-11-14
(62)【分割の表示】P 2023065362の分割
【原出願日】2020-06-18
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】110001276
【氏名又は名称】弁理士法人小笠原特許事務所
(72)【発明者】
【氏名】石川 智康
(72)【発明者】
【氏名】佐藤 雄介
(72)【発明者】
【氏名】福與 賢
(57)【要約】
【課題】マスタの記憶可能なサイズに応じてプログラムを好適に更新できるマスタを提供する。
【解決手段】車両に搭載された複数の電子制御ユニットのうちソフトウェアの更新対象となるターゲット電子制御ユニットのソフトウェア更新を制御するマスタであって、複数の電子制御ユニットのうち、特定の電子制御ユニットのストレージの空き容量を取得し、空き容量に基づいて、ソフトウェア更新のための更新データのダウンロード要求をセンタに送信し、センタから更新データを受信し、受信した更新データを用いて、ターゲット電子制御ユニットのソフトウェアを車両の電源オフ時に、ターゲット電子制御ユニットにアクティベートさせる。
【選択図】図1
【特許請求の範囲】
【請求項1】
車両に搭載された複数の電子制御ユニットのうちソフトウェアの更新対象となるターゲット電子制御ユニットのソフトウェア更新を制御するマスタであって、
前記複数の電子制御ユニットのうち、特定の電子制御ユニットのストレージの空き容量を取得し、
前記空き容量に基づいて、前記ソフトウェア更新のための更新データのダウンロード要求をセンタに送信し、
前記センタから前記更新データを受信し、
受信した前記更新データを用いて、前記ターゲット電子制御ユニットのソフトウェアを、前記車両の電源オフ時に、前記ターゲット電子制御ユニットにアクティベートさせる、マスタ。
【請求項2】
前記更新データは、前記空き容量に基づいて、前記センタによって圧縮または分割されたデータである、請求項1に記載のマスタ。
【請求項3】
車両に搭載された複数の電子制御ユニットと、前記複数の電子制御ユニットのうちソフトウェアの更新対象となるターゲット電子制御ユニットのソフトウェア更新を制御するマスタとを有する、ネットワークシステムであって、
前記マスタは、前記複数の電子制御ユニットのうち、特定の電子制御ユニットのストレージの空き容量を取得し、
前記マスタは、前記空き容量に基づいて、前記ソフトウェア更新のための更新データのダウンロード要求をセンタに送信し、
前記マスタは、前記センタから前記更新データを受信し、
前記マスタは、受信した前記更新データを用いて、前記ターゲット電子制御ユニットのソフトウェアを、前記車両の電源オフ時に、前記ターゲット電子制御ユニットにアクティベートさせる、ネットワークシステム。
【請求項4】
前記更新データは、前記空き容量に基づいて、前記センタによって圧縮または分割されたデータである、請求項3に記載のネットワークシステム。
【請求項5】
前記センタからダウンロードした前記更新データを保存する第1ストレージと、
前記特定の電子制御ユニットのストレージの空き容量として前記第1ストレージの空き容量を確認し、前記更新データを用いて、前記ターゲット電子制御ユニットのソフトウェアの更新を実行する制御部と、を備える、請求項1または2に記載のマスタ。
【請求項6】
前記特定の電子制御ユニットのストレージの空き容量として前記ターゲット電子制御ユニットの第2ストレージの空き容量を確認し、前記更新データを用いて、前記ターゲット電子制御ユニットのソフトウェアの更新を実行する制御部と、を備える、請求項1または2に記載のマスタ。
【請求項7】
マスタのコンピューターが実行する方法であって、
センタからのダウンロードの実行に際して、車両に搭載された複数の電子制御ユニットのうち、特定の電子制御ユニットのストレージの空き容量を取得するステップと、
前記空き容量に基づいて、前記ソフトウェア更新のための更新データのダウンロード要求をセンタに送信するステップと、
前記センタから前記更新データを受信するステップと、
受信した前記更新データを用いて、ターゲット電子制御ユニットのソフトウェアを、前記車両の電源オフ時に、前記ターゲット電子制御ユニットにアクティベートさせるステップと、を含む、方法。
【請求項8】
マスタのコンピューターに実行させるプログラムであって、
センタからのダウンロードの実行に際して、車両に搭載された複数の電子制御ユニットのうち、特定の電子制御ユニットのストレージの空き容量を取得するステップと、
前記空き容量に基づいて、前記ソフトウェア更新のための更新データのダウンロード要求をセンタに送信するステップと、
前記センタから前記更新データを受信するステップと、
受信した前記更新データを用いて、ターゲット電子制御ユニットのソフトウェアを、前記車両の電源オフ時に、前記ターゲット電子制御ユニットにアクティベートさせるステップと、を含む、プログラム。
【請求項9】
請求項1、2、5、6のいずれか1項に記載のマスタに、前記更新データを送信するセンタであって、
前記マスタから受信するダウンロードの要求に基づいて、前記更新データを前記マスタに送信する、センタ。
【請求項10】
請求項1、2、5、6のいずれか1項に記載のマスタを備える、車両。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、車両等に搭載されるネットワークシステムに含まれるソフトウェア更新装置(マスタ)等に関する。
【背景技術】
【0002】
車両には、複数のECU(Electronic Control Unit:電子制御ユニット)と呼ばれる車載機器が通信線を介して互いに接続されて構成されたネットワークシステムが搭載されている。各車載機器は、互いにメッセージを送受信して、車両の各機能を分担して実行する。
【0003】
車載機器は、典型的にはプロセッサと、RAMのような一時的な記憶部やフラッシュROMのような不揮発性の記憶部とを備えている。プロセッサが実行するプログラム(ソフトウェア)は、不揮発性の記憶部に記憶される。プログラムをより新しいバージョンに書き変えて更新することにより、車載機器の機能の向上、改善を図ることができる。
【0004】
プログラムの更新には、外部装置(センタ)から無線通信等により更新データを受信するダウンロード、ダウンロードした更新データに基づいて更新プログラム(更新ソフトウェア)を車載機器の記憶部に書き込むインストールのステップがある。インストールには、車載機器の仕様に応じて、ダウンロードした更新プログラムを、記憶部の記憶領域のうち、プログラム記憶用の領域として定められた1つの領域(1面:シングルバンク)に、現在のプログラム(旧プログラム)を上書きして書き込む上書きインストールと、プログラム記憶用の領域として定められた2つの領域(2面:デュアルバンク)のうち、現在のプログラム(旧プログラム)が記憶された領域(一方の面)でないほうの領域(他面)に書き込む他面インストールとがある。
【0005】
他面インストールの場合は、プログラム更新のステップには、ダウンロード、インストールの各ステップに加えて、インストールした更新プログラムを実行可能とするよう、更新プログラムの開始アドレス等の設定値をコンフィグレーションするアクティベートのステップがある。
【0006】
ECUのプログラム更新に関連して、特許文献1は、特定のECUがマスタECUとして機能し、サーバーとの通信を行い、マスタECU自身や他のスレーブECUのプログラムの更新を行うことを開示している。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2011-148398号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
上述のダウンロードやインストールは、ネットワークシステムに含まれるソフトウェア更新装置によって制御される。ソフトウェア更新装置は、例えば、外部装置から複数の車載機器のそれぞれの更新プログラムをまとめてダウンロードし、ソフトウェア更新装置が備える記憶部に一時的に記憶させ、その後、各車載機器に更新プログラムを送信して、各車載機器にインストールや、あるいはさらにアクティベートを行わせる。記憶部は、他の車載機器と共用され、多様なデータの記憶に利用されることも考えられる。記憶部の空き容量のようなさらに記憶可能な領域は、記憶している各種データの量によって変動するので、空記憶可能な領域が少ないときは、更新プログラムをまとめてダウンロードして記憶できないおそれがある。
【0009】
本開示は、上記課題を鑑みてなされたものであり、ソフトウェア更新装置(マスタ)等の記憶可能なサイズに応じてプログラムを好適に更新できるソフトウェア更新装置(マスタ)等を提供することを目的とする。
【課題を解決するための手段】
【0010】
上記課題を解決するために、本開示技術の一局面は、車両に搭載された複数の電子制御ユニットのうちソフトウェアの更新対象となるターゲット電子制御ユニットのソフトウェア更新を制御するマスタであって、複数の電子制御ユニットのうち、特定の電子制御ユニットのストレージの空き容量を取得し、空き容量に基づいて、ソフトウェア更新のための更新データのダウンロード要求をセンタに送信し、センタから更新データを受信し、受信した更新データを用いて、ターゲット電子制御ユニットのソフトウェアを車両の電源オフ時に、ターゲット電子制御ユニットにアクティベートさせる、マスタである。
【発明の効果】
【0011】
本開示技術によれば、ソフトウェア更新装置(マスタ)等は、センタから、ソフトウェア更新装置等が記憶領域不足とならないように生成された更新データを受信することができるので、車載機器のプログラム更新を好適に行うことができる。
【図面の簡単な説明】
【0012】
図1】一実施形態に係るネットワークシステムの構成図
図2】一実施形態に係る処理を示すシーケンス図
【発明を実施するための形態】
【0013】
(実施形態)
<構成>
図1に、本実施形態に係るネットワークシステム1の構成例を示す。ネットワークシステム1は、車両に搭載される。ネットワークシステム1は、ソフトウェア更新装置50を含む。ソフトウェア更新装置(OTAマスタ)50には、複数のバス10、20、30…が接続されている。複数の車載機器(電子制御ユニット)11、12…が、バス10に接続されている。複数の車載機器21、22…が、バス20に接続されている。複数のアクチュエータ31、32…が、バス30に接続されている。図1および以降の説明においては、バスとして、バス10、20、30を例示し、車載機器として、車載機器11、12、21、22を例示し、アクチュエータ31、32を例示するが、これらの数は限定されない。
【0014】
ソフトウェア更新装置(マスタ)50は、車外に設置された外部装置(センタ)100と通信可能な通信部(通信モジュール)51、各種データを記憶する第1記憶部(ストレージ)52、第1記憶部52へのアクセスを制御、管理し、第1記憶部52の空き容量の確認が可能な確認部53、制御部54を含む。
【0015】
各車載機器11、12、21、22は、ネットワークを介して互いに通信を行い、車両の制御のための各種処理を行う。これらの車載機器は、図示を省略するが、フラッシュROMのような不揮発性の第2記憶部(ストレージ)と、第2記憶部からプログラム(ソフトウェア)を読み出して実行することで各種処理を行う制御部(プロセッサ)と、プログラムの一部やデータを記憶するRAMのような一時的な記憶部とを含む。なお、ソフトウェア更新装置50も同様に第1記憶部52にソフトウェア更新装置50用のプログラムを記憶しており、制御部(プロセッサ)がプログラムを読み出して実行することで、確認部53、制御部54の機能を実行することができる。すなわち、各車載機器11、12、21、22およびソフトウェア更新装置50は、プロセッサを含むコンピューターとして実装可能である。また、第1記憶部52は、車載機器11、12、21、22から読み書きのアクセスが可能であり、共用の記憶装置として利用されてもよい。
【0016】
また、ソフトウェア更新装置50の制御部は、各バス10、20、30を介して、外部装置100と各車載機器11、12、21、22との間の通信、各車載機器11、12、21、22間の通信、各車載機器11、12、21、22と各アクチュエータ31、32との間の通信の制御や中継を行う。このように、ソフトウェア更新装置50は、通信を中継する中継装置としても機能する。
【0017】
アクチュエータ31、32は、ブレーキ、エンジン、あるいはパワーステアリング装置のように車両やその部品に対して力学的な作用を発生させる機器であり、車載機器11、12、21、22からの指示に基づいて動作する。
【0018】
ソフトウェア更新装置50の制御部54は、車載機器11、12、21、22のそれぞれの第2記憶部が記憶しているプログラムを更新することができる。すなわち、ソフトウェア更新装置50は、ダウンロードする制御、インストールする制御、あるいはさらにアクティベートする制御を行う。ダウンロードは、外部装置100から送信された車載機器11、12、21、22のいずれかのプログラムを更新するための更新データ(配信パッケージ)を受信して記憶する処理である。ダウンロードする制御は、ダウンロード実行だけでなく、ダウンロードの実行可否判断、更新データの検証等、ダウンロードに関する一連の処理の制御を含みうる。インストールは、ダウンロードした更新データに基づいて、更新対象の車載機器の記憶部に更新版のプログラム(更新ソフトウェア)を書き込む処理である。インストールする制御は、インストール実行だけでなく、インストールの実行可否判断、更新データの転送および更新版のプログラムの検証等、インストールに関する一連の処理の制御を含みうる。アクティベートは、インストールした更新版のプログラムを有効化(アクティベート)する処理である。アクティベートする制御は、アクティベート実行だけでなく、アクティベートの実行可否判断、実行結果の検証等、アクティベートに関する一連の制御を含みうる。
【0019】
インストールする制御においては、更新データが更新プログラム自体を含む場合、制御部54が、更新プログラムを、車載機器に送信することができる。また、更新データが、更新プログラムの圧縮データ、差分データ、あるいは、分割データを含む場合、制御部54が、更新データの展開あるいは組付け等を行って更新プログラムを生成して車載機器に送信してもよい。あるいは、制御部54が、更新データを車載機器に送信し、車載機器が、更新データの展開あるいは組付け等を行って更新プログラムを生成してもよい。
【0020】
更新プログラムを車載機器の第2記憶部に書き込むインストール自体の実行は、制御部54が行ってもよいし、制御部54の指示を受けた車載機器が行ってもよいし、更新データ(あるいは更新プログラム)を受信した車載機器が、制御部54の明示の指示がなくても自律的に行ってもよい。
【0021】
インストールした更新プログラムを有効化するアクティベート自体の実行は、制御部54が行ってもよいし、制御部54の指示を受けた車載機器が行ってもよいし、車載機器が、制御部54の明示の指示がなくても、インストールに引き続いて自律的に行ってもよい。
【0022】
なお、このようなプログラムの更新処理は、複数の車載機器のそれぞれに対して、連続して、あるいは並列的に行うことができる。更新データは、更新プログラムを生成するのに用いられるデータであり、内容や形式は限定されず、例えば更新プログラム自体、更新プログラムを生成するための差分データ、あるいは、これら圧縮データまたは分割データ等を含む。また、更新データは、プログラム更新対象の車載機器(ターゲット電子制御ユニット)の識別子(ECUID)や更新前のプログラムのバージョンの識別子(WCU Software ID)を含んでもよい。
【0023】
外部装置100は、一例として、特定のセンタ等に設置されたサーバー等のコンピューター装置である。外部装置100はソフトウェア更新装置50と通信する通信部111および通信部111を管理する通信管理部(制御部)112を含む。また、外部装置100は、図示しない記憶部を備え、複数の車載機器のそれぞれのプログラムを更新するためのデータを外部から受け付けて記憶することができる。
【0024】
<処理例1>
以下に、本実施形態に係る処理の例を説明する。図2に、本処理の例を示すシーケンス図を示す。まず、ソフトウェア更新装置50の第1記憶部52の記憶可能な領域のサイズに応じて行う処理の例を示す。
【0025】
(ステップS101)
ソフトウェア更新装置50の制御部54は、通信部51を制御して、外部装置100に、更新プログラムの有無の問い合わせを行う。この問い合わせは、例えば定期的に行ってもよいし、車両の電源オン(イグニッションオン、パワーオン)等の所定の操作が行われたタイミングで行ってもよい。
【0026】
(ステップS102)
外部装置100の通信部111が、問い合わせを受信すると、送信管理部112は、更新プログラムが存在する場合は通信部111を制御してソフトウェア更新装置50に更新あり通知を送信する。送信管理部112は、例えば、ネットワークシステム1に含まれる複数の車載機器の種類や現在のプログラムのバージョンを表す情報に基づいて、これらの車載機器用のプログラムの更新バージョンである更新プログラムの有無を判定することができる。このような情報は、予め外部装置100が記憶していてもよいし、ソフトウェア更新装置50から問い合わせとともに受信してもよい。なお、送信管理部112は、更新プログラムが存在しない場合は通信部111を制御してソフトウェア更新装置50に更新なし通知を送信する。
【0027】
(ステップS103)
ソフトウェア更新装置50の通信部51が更新あり通知を受信すると、制御部54は、確認部53から第1記憶部52が記憶可能なサイズを取得して、通信部51を制御して記憶可能なサイズを外部装置100に通知する。なお、通信部51が更新なし通知を受信すると、処理は終了となる。なお、記憶可能なサイズとは、第1記憶部52が、そのサイズのデータを、ソフトウェア更新装置50の処理に影響が生ずることなく記憶することができるサイズをいい、典型的には空き領域のサイズである。
【0028】
(ステップS104)
外部装置100の通信部111が、記憶可能なサイズを受信すると、送信管理部112は、車載機器のプログラムを更新するための更新データを生成する。すなわち、更新データには、1つ以上の車載機器のプログラムを更新するデータが含まれる。例えば送信管理部112は、プログラムの更新対象となる1つ以上の車載機器(ターゲット電子制御ユニット)のそれぞれの更新プログラム、あるいは、更新プログラムを生成するのに用いる差分データ(各車載機器ごとの更新データ)を、合計サイズが記憶可能なサイズ以下となるよう、圧縮率を調整して圧縮することによって更新データを作成する。なお、一連のデータが、圧縮しなくても第1記憶部52の記憶可能なサイズ以下である場合、外部装置100は、圧縮を行わなくてもよい。以後、1つ以上の車載機器のプログラムを更新するためのデータのパッケージのことを単に更新データとよび、更新データに含まれる、1つの車載機器のプログラムを更新するデータのことを、その車載機器の更新データとよぶ。
【0029】
(ステップS105)
ソフトウェア更新装置50の制御部54は、通信部51を制御して、外部装置100に、更新データの送信要求を表すダウンロード要求を行う。なお、ダウンロード要求は、ステップS103において、記憶可能なサイズの通知に含めて行ってもよいし、記憶可能なサイズの通知と連続的に行ってもよい。また、ステップS104の外部装置100の処理は、ダウンロード要求の後に行ってもよい。
【0030】
(ステップS106)
外部装置100の送信管理部112は、通信部111を制御して、更新データを1つの送信単位としてソフトウェア更新装置50に送信する。
【0031】
(ステップS107)
ソフトウェア更新装置50の通信部51が更新データを受信すると、確認部53は、更新データを第1記憶部52の空き領域に記憶させる(ダウンロード)。
【0032】
(ステップS108)
ソフトウェア更新装置50の制御部54は、第1記憶部52から更新データを読み出し、プログラムの更新対象となる各車載機器の更新データを生成する。例えば、制御部54は、第1記憶部52から読み出した更新データを展開し、各車載機器の更新データに分割する。また、制御部54は、通信部51を制御して、更新データを更新対象の車載機器に送信する。本ステップでは、一例として車載機器11がプログラムの更新対象の車載機器に含まれており、制御部54は車載機器11の更新データを車載機器11に送信する。
【0033】
(ステップS109)
車載機器11は、更新データを受信すると、受信した更新データに基づいて、自機が実行するプログラムを更新する。すなわち、車載機器11が、シングルバンクタイプである場合、車載機器11は、上述した上書きインストールを行う。また、車載機器11が、上述のデュアルバンクタイプである場合、車載機器11は、上述した他面インストールとアクティベートとをこの順に行う。
【0034】
(ステップS110)
ソフトウェア更新装置50の制御部54は、各車載機器用に分割した更新データのうち未送信のものがあれば、通信部51を制御して、更新データを更新対象の車載機器に送信する。本ステップでは、一例として車載機器12がプログラムの更新対象の車載機器に含まれており、制御部54は車載機器12の更新データを車載機器12に送信する。
【0035】
(ステップS111)
車載機器12は、更新データを受信すると、受信した更新データに基づいて、ステップS109の車載機器11と同様にして、自機が実行するプログラムの上書きインストールまたは他面インストールとアクティベートとを行う。
【0036】
以上の例は、外部装置100から受信する更新データが、車載機器11、12の更新データを含んでおり、車載機器11、12のプログラムを更新する場合の例であるが、他の車載機器のプログラムの更新も同様に行うことができる。また、更新対象の車載機器の数は2に限定されず、1でも3以上でもよい。
【0037】
このように、外部装置100が、ソフトウェア更新装置50の第1記憶部52の記憶可能なサイズに収まるよう更新データの圧縮率を変えることによって、ソフトウェア更新装置50は、第1記憶部52に更新データを確実に記憶することができる。また、外部装置100が、ソフトウェア更新装置50の第1記憶部52の記憶可能なサイズに応じて、このサイズ以下となるように圧縮率でデータ圧縮処理を行うので、必要以上に圧縮率を大きくすることを抑制でき、外部装置100によるデータ圧縮処理の負荷をなるべく抑制することができる。
【0038】
また、ステップS104において、圧縮率を大きくしても、1つの更新データでは、記憶可能なサイズ以下にできない場合は、記憶可能なサイズ以下の更新データを複数生成してもよい。例えば、更新対象の車載機器が車載機器11、12、21、22でありこれらの車載機器のプログラムを更新するためのデータの総量が大きくて、最大圧縮率でも、更新データが記憶可能なサイズ以下にならない場合、車載機器11、12の更新データと、車載機器21、22の更新データとのそれぞれを送信単位として生成してもよい。この場合、ステップS106~S111のような、更新データの送信から各車載機器におけるプログラムの更新実行までの処理を、生成した送信単位の数だけ繰り返す。なお、このように、外部装置100が、複数の送信単位に分けて更新データを生成する場合、それぞれの更新データの圧縮の要否や圧縮する場合の圧縮率は、更新データのサイズが第1記憶部52の記憶可能なサイズ以下となるように、それぞれ設定することができる。なお、ソフトウェア更新装置50の制御部54は、更新データの圧縮と分割とのうち、いずれを優先的に行うかをステップS103において指定してもよい。
【0039】
また、ステップS102において、送信管理部112は、更新あり通知を行う場合、更新データを圧縮および分割しない場合のサイズを取得して、ソフトウェア更新装置50に送信してもよい。この場合、例えば、ステップS103において、ソフトウェア更新装置50の制御部54は、受信したサイズが、記憶可能なサイズ以下であれば、記憶可能なサイズを外部装置100に通知する代わりに、更新データを圧縮および分割せずに送信することを要求する通知を行う。また、この場合、ステップS104において、外部装置100の送信管理部112は、第1記憶部52の記憶可能なサイズが更新データを圧縮しなくても記憶できる十分なサイズであると判定できるので、更新データを圧縮および分割せずに生成する。これにより、外部装置100が、記憶可能なサイズに基づいてデータの圧縮率を決定して圧縮する処理等を行わなくてよいので処理負荷を抑制することができる。
【0040】
また、ステップS103において、ソフトウェア更新装置50の制御部54は、確認部53を制御して第1記憶部52の記憶可能なサイズを増加させ、外部装置100には、増加後の記憶可能なサイズを通知してもよい。これにより、外部装置100は、圧縮率を小さくすることができデータ圧縮処理の負荷を抑制できる。記憶可能なサイズは、例えば、第1記憶部52の記憶領域のうち、制御部54や第1記憶部52を共用する車載機器が、それぞれ使用中の領域として確保している領域のうち、確保を維持する必要性のない領域や必要性の低い領域を解放することによって、増加させることができる。なお、この処理は、制御部54が、更新データを圧縮および分割しない場合のサイズを外部装置100から受信し、受信したサイズが、第1記憶部52の現在の記憶可能なサイズより大きい場合に行うようにしてもよい。
【0041】
<処理例2>
次に、プログラム更新対象となる車載機器の第2記憶部の記憶可能な領域のサイズに応じて行う処理の例を示す。本例においても、図2のシーケンス図を参照し上述の処理例1の処置と対応する処理を同一のステップ番号で参照する。また、上述の処理例1と同様の事項については適宜説明を省略する。
【0042】
(ステップS101)
処理例1と同様、ソフトウェア更新装置50の制御部54は、通信部51を制御して、外部装置100に、更新プログラムの有無の問い合わせを行なう。
【0043】
(ステップS102)
処理例1と同様、外部装置100の通信部111が、問い合わせを受信すると、送信管理部112は、更新プログラムが存在する場合は通信部111を制御してソフトウェア更新装置50に更新あり通知を送信する。
【0044】
(ステップS103)
ソフトウェア更新装置50の通信部51が更新あり通知を受信すると、制御部54は、各車載機器の第2記憶部が記憶可能なサイズをそれぞれ取得して、通信部51を制御して記憶可能なサイズを外部装置100に通知する。なお、上述の更新あり通知に、更新対象となる車載機器を特定する情報が含まれていてもよく、制御部54は、特定された車載機器の記憶可能なサイズをそれぞれ取得してもよい。なお、本例では、記憶可能なサイズとは、車載機器が、そのサイズのデータを、車載機器の処理に影響が生ずることなく記憶でき、またプログラムの更新処理を行うことができるサイズをいい、典型的には空き領域である。
【0045】
(ステップS104)
外部装置100の通信部111が、記憶可能なサイズを受信すると、送信管理部112は、車載機器のプログラムを更新するための更新データを生成する。例えば送信管理部112は、各車載機器ごとの更新データを、そのサイズがその車載機器の記憶領域が不足しないよう、圧縮率を調整して圧縮し圧縮後のデータをまとめることによって更新データを作成する。なお、車載機器の記憶可能なサイズが、その車載機器の更新データを圧縮しなくても記憶領域が不足しない場合、外部装置100は、圧縮を行わなくてもよい。
【0046】
(ステップS105)
処理例1と同様、ソフトウェア更新装置50の制御部54は、通信部51を制御して、外部装置100に、更新データの送信要求を表すダウンロード要求を行う。なお、ダウンロード要求は、ステップS103において、記憶可能なサイズの通知に含めて行ってもよいし、記憶可能なサイズの通知と連続的に行なってもよい。また、ステップS104の外部装置100の処理は、ダウンロード要求の後に行ってもよい。
【0047】
(ステップS106)
処理例1と同様、外部装置100の送信管理部112は、通信部111を制御して、更新データを1つの送信単位としてソフトウェア更新装置50に送信する。
【0048】
(ステップS107)
処理例1と同様、確認部53は、更新データを第1記憶部52の空き領域に記憶させる(ダウンロード)。
【0049】
(ステップS108)
処理例1と同様、ソフトウェア更新装置50の制御部54は、プログラムの更新対象となる各車載機器の更新データを生成し各更新データを更新対象の車載機器に送信する。本ステップでは、一例として制御部54は車載機器11の更新データを車載機器11に送信する。
【0050】
(ステップS109)
車載機器11は、更新データを受信すると、受信した更新データに基づいて、自機が実行するプログラムを更新する。すなわち、車載機器11が、上述のシングルバンクタイプである場合、車載機器11は、上書きインストールを行う。また、車載機器11が、上述のデュアルバンクタイプである場合、車載機器11は、他面インストールとアクティベートとをこの順に行う。これにより、例えば、車載機器11が、圧縮された更新データを、ソフトウェア更新装置50から受信して、空き領域に一時的に記憶しておき、これを展開して更新プログラムを生成して、インストールを行うといった処理を、記憶容量不足となることなく実行できるので、ソフトウェア更新装置50側で更新プログラムを生成する場合に比べてソフトウェア更新装置50の負荷を低減することができる。
【0051】
(ステップS110)
処理例1と同様、ソフトウェア更新装置50の制御部54は、各車載機器用に分割した更新データのうち未送信のものがあれば、通信部51を制御して、更新データを更新対象の車載機器に送信する。本ステップでは、一例として制御部54は車載機器12の更新データを車載機器12に送信する。
【0052】
(ステップS111)
車載機器12は、更新データを受信すると、受信した更新データに基づいて、ステップS109の車載機器11と同様にして、自機が実行するプログラムの上書きインストールまたは他面インストールとアクティベートとを行う。
【0053】
以上と同様にして他の車載機器のプログラムの更新も行うことができる。
【0054】
このように、外部装置100が、プログラム更新対象となる各車載機器の記憶可能なサイズに収まるよう、それぞれの車載機器ごとの更新データの圧縮率を変えることによって、各車載機器は、更新データを確実に記憶することができる。また、外部装置100が、各車載機器の記憶可能なサイズに応じて、このサイズ以下となるように圧縮率でデータ圧縮処理を行うので、必要以上に圧縮率を大きくすることを抑制でき、外部装置100によるデータ圧縮処理の負荷をなるべく抑制することができる。
【0055】
また、ステップS104において、圧縮率を大きくしても、1つの更新データでは、記憶可能なサイズ以下にできない車載機器がある場合は、その車載機器の更新データを、記憶可能なサイズ以下に分割してもよい。例えば、車載機器11の更新データが大きくて、最大圧縮率でも、車載機器11の記憶可能サイズ以下にならない場合、車載機器11の更新データを分割し、分割したそれぞれを異なる送信単位として生成してもよい。この場合、ステップS106~S109の処理においては、車載機器11の更新データの一部の送信、ダウンロード、および、インストールの処理が、生成した送信単位の数だけ繰り返される。なお、車載機器11がデュアルバンクタイプであれば、インストールが完了したのちアクティベートが行われることになる。このように1つの車載機器の更新データの分割を、外部装置100が実行することで、ソフトウェア更新装置50は、更新データの分割処理を行わなくてもよいので、ソフトウェア更新装置50の処理負荷を抑制できる。なお、ソフトウェア更新装置50の制御部54は、各車載機器の更新データについて、圧縮と分割とのうち、いずれを優先的に行うかをステップS103において指定してもよい。
【0056】
あるいは、ステップS108、S110において、ソフトウェア更新装置50の制御部54は、プログラムの更新対象となる各車載機器の更新データを、そのサイズによらず、2つ以上に分割して、更新対象の車載機器に送信してもよい。例えば、車載機器11の更新データが、車載機器11の記憶可能サイズ以下であっても、制御部54が更新データを分割し、複数のタイミングに分けて送信してもよい。これにより、ネットワークシステム1の通信負荷を分散させて動作を安定させることができる。
【0057】
また、ステップS102において、送信管理部112は、更新あり通知を行う場合、プログラムの更新対象となる1つ以上の車載機器のそれぞれの更新データを圧縮および分割しない場合のサイズを取得して、ソフトウェア更新装置50に送信してもよい。この場合、例えば、ステップS103において、ソフトウェア更新装置50の制御部54は、受信した更新データのサイズが、その更新データを記憶させる車載機器の記憶可能なサイズ以下であれば、その車載機器の記憶可能なサイズを外部装置100に通知する代わりに、その車載機器の更新データについては圧縮および分割せずに、通知されたサイズのまま送信することを要求する通知を行う。また、この場合、ステップS104において、外部装置100の送信管理部112は、その車載機器の記憶可能なサイズが圧縮しなくても更新データを記憶できる十分なサイズであると判定できるので、データを圧縮せずにそのまま更新データとする。これにより、外部装置100が、記憶可能なサイズに基づいてデータの圧縮率を決定して圧縮する処理等を行わなくてよいので処理負荷を抑制することができる。
【0058】
また、ステップS103において、ソフトウェア更新装置50の制御部54は、各車載機器を制御してその第2記憶部の記憶可能なサイズを増加させ、外部装置100には、増加後の記憶可能なサイズを通知してもよい。これにより、外部装置100は、圧縮率を小さくすることができデータ圧縮処理の負荷を抑制できる。なお、この処理は、制御部54が、1つ以上の車載機器のそれぞれの更新データを圧縮および分割しない場合のサイズを外部装置100から受信し、自機器の更新データのサイズが、現在の記憶可能なサイズより大きい車載機器に対して行うようにしてもよい。
【0059】
以上、処理例1および処理例2を説明した。処理例1は、ソフトウェア更新装置50の記憶可能な領域が不足するおそれがあるが、各車載機器の記憶可能な領域が不足するおそれがない場合に好適に適用できる。処理例2はソフトウェア更新装置50の記憶可能な領域が不足するおそれがないが、各車載機器の記憶可能な領域が不足するおそれがある場合に好適に適用できる。ソフトウェア更新装置50と各車載機器とのいずれの記憶可能な領域が不足するおそれがある場合、処理例1と処理例2とを組み合わせて実施することができる。すなわち、外部装置100からソフトウェア更新装置50が受け取る更新データは、ソフトウェア更新装置50によって記憶可能であり、かつ、ソフトウェア更新装置50が各車載機器から受け取る、それぞれの車載機器ごとの更新データは、その車載機器によって記憶可能であるようにすることができる。また、ソフトウェア更新装置50やソフトウェア更新対象となる車載機器以外の他の機器が、共用的な記憶装置として利用され、一時的に更新データを記憶する場合も考えられるが、同様の方法を好適に適用することができる。例えば処理例1において、ソフトウェア更新装置50の代わりに他の機器が更新データを記憶する場合、ソフトウェア更新装置50に記憶可能なサイズの代わりに他の機器が記憶可能なサイズに基づいて同様の処理を行えばよい。このように、本実施形態は、車載ネットワークに含まれる複数の車載機器から選択された特定の車載機器が記憶可能なサイズに基づいて、外部装置100に特定の車載機器の記憶領域が不足しないように構成された更新データを送信させることができる。
【0060】
また、処理例1においてソフトウェア更新装置50の記憶可能なサイズが不足して、プログラム更新対象の全ての車載機器の更新データを記憶できない場合がある。この場合例えば、ステップS106で、外部装置100の送信管理部112は、このことを検知して、更新データを、許容されるサイズの範囲内で、車載機器ごとに定められた優先度に基づいて、高い優先度の車載機器から順に選択された車載機器の更新データが含まれるよう生成し、ソフトウェア更新装置50に送信してもよい。優先度は、例えば、走行性能や安全性能に関する車載機器に対して比較的高く設定することができる。また、処理例2において、プログラム更新対象の車載機器であっても、その車載機器の記憶可能なサイズが不足して、プログラムの更新ができない場合もありうる。この場合、例えば、ステップS106で、外部装置100の送信管理部112は、このことを検知して、更新データを記憶可能なサイズが不足する車載機器の更新データを含めず、他の車載機器の更新データを含めて生成し、ソフトウェア更新装置50に送信してもよい。また、送信管理部112は、このように記憶可能なサイズが不足することが原因でプログラムの更新を行わない車載機器を特定する情報を生成してソフトウェア更新装置50に通知し、ソフトウェア更新装置50の制御部54は、プログラムの更新が行われなかった車載機器があること、あるいはさらに、その車載機器を特定する情報をユーザーに通知してもよい。なお、プログラムの更新が行われなかった車載機器の優先度が所定の優先度より低い場合は、通知をしなくてもよい。
【0061】
なお、上述の各ステップにおける車両側の処理、とくに、ステップS108、S110のような各車載機器への更新データの送信や、ステップS109、S111のような各車載機器におけるインストールやアクティベートの処理については、適宜制限を設けてもよい。例えば、車両の電源オフ(イグニッションオフ、パワーオフ)操作が行われた時には、制御部54は、バッテリ上がりの抑制のため、これらの処理を中断してもよい。あるいは、予め定められた、あるいは、外部装置100から更新データ内で指定された車載機器のみ、電源オフ時の処理実行を許容し、他の車載機器については処理を中断してもよい。また、制御部54は、更新の各処理に必要な電力量とバッテリの残容量とを適宜算出あるいは取得し、電源オフ時に処理を実行してもバッテリの残容量が所定以下にならないと推定される場合に、各車載機器の処理を実行してもよいし、あるいは、バッテリの残容量が所定以下にならないと推定される範囲内で、一部の車載機器の処理を実行してもよい。また、電源オフ時に処理を実行する場合、車載機器は、電源オン時等の通常起動時よりも機能を制限して、インストールやアクティベートのような更新に必要な処理のみを実行して消費電力を抑制してもよい。このように、電源オフ時にもなるべく処理を継続するようにすると、プログラム更新の完了が早くなり、利便性が向上する。
【0062】
<効果>
本実施形態においては、ソフトウェア更新装置50は、外部装置100から、それぞれの車載機器が記憶領域不足とならないように生成された更新データを受信することができ、車載機器のプログラム更新を好適に行うことができる。
【0063】
本開示技術は、ソフトウェア更新装置(マスタ)、外部装置だけでなく、ソフトウェア更新装置を含むネットワークシステム、ソフトウェア更新装置および外部装置が備えるコンピューターのそれぞれが実行する方法、プログラムおよびこれを記憶したコンピューター読み取り可能な非一時的記憶媒体、ソフトウェア更新装置を備えた車両等として捉えることが可能である。
【産業上の利用可能性】
【0064】
本開示技術は、車両等に搭載されるネットワークシステムに有用である。
【符号の説明】
【0065】
1 ネットワークシステム
10、20、30 バス
11、12、21、22 車載機器
31、32 アクチュエータ
50 ソフトウェア更新装置(マスタ)
51 通信部
52 第1記憶部
53 確認部
54 制御部
100 外部装置(センタ)
111 通信部
112 送信管理部
図1
図2
【手続補正書】
【提出日】2024-12-12
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
車両に搭載された複数の電子制御ユニットの更新対象となるターゲット電子制御ユニットのソフトウェア更新を制御するマスタに更新データを送信するセンタであって、
前記マスタから前記更新データが存在するか否かを示す問合せを受信し、前記更新データが存在する場合は、前記マスタに前記更新データが存在することを示す通知を送信し、
前記通知の送信後に、前記ターゲット電子制御ユニットの前記更新データを保存する特定の電子制御ユニットのストレージの空き容量に基づいて要求される前記更新データのダウンロード要求を前記マスタから受信した場合に、前記更新データを前記マスタに送信する、センタ。
【請求項2】
前記更新データは、前記空き容量に基づいて圧縮または分割されたデータである、請求項1に記載のセンタ
【請求項3】
車両に搭載された複数の電子制御ユニットの更新対象となるターゲット電子制御ユニットのソフトウェア更新を制御するマスタに更新データを送信するセンタのコンピューターが実行する方法であって、
前記マスタから前記更新データが存在するか否かを示す問合せを受信するステップと、
前記更新データが存在する場合は、前記マスタに前記更新データが存在することを示す通知を送信するステップと、
前記通知の送信後に、前記ターゲット電子制御ユニットの前記更新データを保存する特定の電子制御ユニットのストレージの空き容量に基づいて要求される前記更新データのダウンロード要求を前記マスタから受信した場合に、前記更新データを前記マスタに送信するステップと、を含む、方法。
【請求項4】
車両に搭載された複数の電子制御ユニットの更新対象となるターゲット電子制御ユニットのソフトウェア更新を制御するマスタに更新データを送信するセンタのコンピューターに実行させるプログラムであって、
前記マスタから前記更新データが存在するか否かを示す問合せを受信するステップと、
前記更新データが存在する場合は、前記マスタに前記更新データが存在することを示す通知を送信するステップと、
前記通知の送信後に、前記ターゲット電子制御ユニットの前記更新データを保存する特定の電子制御ユニットのストレージの空き容量に基づいて要求される前記更新データのダウンロード要求を前記マスタから受信した場合に、前記更新データを前記マスタに送信するステップと、を含む、プログラム。