JP2019191943A - 車載装置、プログラムの更新方法、プログラム更新システム - Google Patents

車載装置、プログラムの更新方法、プログラム更新システム Download PDF

Info

Publication number
JP2019191943A
JP2019191943A JP2018084220A JP2018084220A JP2019191943A JP 2019191943 A JP2019191943 A JP 2019191943A JP 2018084220 A JP2018084220 A JP 2018084220A JP 2018084220 A JP2018084220 A JP 2018084220A JP 2019191943 A JP2019191943 A JP 2019191943A
Authority
JP
Japan
Prior art keywords
update
program
information
vehicle
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
Application number
JP2018084220A
Other languages
English (en)
Inventor
晋司 川村
Shinji Kawamura
晋司 川村
義孝 住友
Yoshitaka Sumitomo
義孝 住友
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.)
Faurecia Clarion Electronics Co Ltd
Original Assignee
Clarion Co Ltd
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 Clarion Co Ltd filed Critical Clarion Co Ltd
Priority to JP2018084220A priority Critical patent/JP2019191943A/ja
Publication of JP2019191943A publication Critical patent/JP2019191943A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】バッテリ残量を考慮したプログラムの更新ができる。【解決手段】車載装置は、バッテリを備える車両に搭載され車両に搭載される他の装置のプログラムを更新する車載装置であって、バッテリの残容量の情報であるバッテリ残量を取得する電源管理部と、プログラムの更新に関する情報である更新情報を通信により取得する更新情報取得部と、更新情報およびバッテリ残量に基づき更新するプログラムを決定する更新プログラム決定部と、更新プログラム決定部の決定に基づきプログラムを更新する情報である更新本体を通信により取得する更新本体取得部と、更新本体を他の装置に送信しプログラムの更新を実行させる転送部とを備える。【選択図】図2

Description

本発明は、車載装置、プログラムの更新方法、およびプログラム更新システムに関する。
近年、車両内で実行される演算の複雑化が進み、車載装置のプログラムを更新する頻度が高くなっている。車載装置のプログラムは、従来はオペレータにより手作業で更新されたが、自動処理によりサーバと通信して更新することが求められている。特許文献1には、車両に搭載される車載プログラム更新装置であって、車載ネットワークシステムを構成する複数の電子制御装置について該電子制御装置毎に、実装されているプログラムが更新可能な車両負荷状態を個々に示す更新条件テーブルを記憶している記憶手段と、外部のセンタ装置との間で無線通信を行うことによって、該センタ装置から前記プログラムを更新するための更新ファイルを受信する更新ファイル受信手段と、前記更新ファイル受信手段により前記更新ファイルを受信する場合、前記記憶手段に記憶されている更新条件テーブルに基づき、現在の車両負荷状態が該更新ファイルに対応するプログラムを更新可能な低負荷状態であるか該プログラムを更新不能な高負荷状態であるかを判定する更新判定手段と、前記更新判定手段により前記低負荷状態であると判定した場合、前記更新ファイル受信手段により受信した更新ファイルを用いて、該更新ファイルに対応するプログラムを更新するプログラム更新手段と、前記更新判定手段により前記高負荷状態であると判定した場合、前記記憶手段に記憶されている更新条件テーブルに基づき、現在の車両負荷状態を前記低負荷状態に変更するための環境整備制御を実行する環境整備制御手段と、を備えることを特徴とする車載プログラム更新装置が開示されている。
特開2014−106875号公報
特許文献1に記載されている発明では、バッテリ残量を考慮したプログラムの更新ができない。
本発明の第1の態様による車載装置は、バッテリを備える車両に搭載され前記車両に搭載される他の装置のプログラムを更新する車載装置であって、前記バッテリの残容量の情報であるバッテリ残量を取得する電源管理部と、プログラムの更新に関する情報である更新情報を通信により取得する更新情報取得部と、前記更新情報および前記バッテリ残量に基づき更新するプログラムを決定する更新プログラム決定部と、前記更新プログラム決定部の決定に基づきプログラムを更新する情報である更新本体を通信により取得する更新本体取得部と、前記更新本体を前記他の装置に送信しプログラムの更新を実行させる転送部とを備える。
本発明の第2の態様によるプログラムの更新方法は、バッテリを備える車両に搭載され前記車両に搭載される他の装置のプログラムを更新するプログラムの更新方法であって、前記バッテリの残容量の情報であるバッテリ残量を取得することと、プログラムの更新に関する情報である更新情報を通信により取得することと、前記更新情報および前記バッテリ残量に基づき更新するプログラムの決定を行うことと、前記決定に基づきプログラムを更新する情報である更新本体を取得することと、前記更新本体を前記他の装置に送信しプログラムの更新を実行させることとを含む。
本発明の第3の態様によるプログラム更新システムは、バッテリを備える車両に搭載され前記車両に搭載される他の装置のプログラムを更新する車載装置、および前記車載装置と通信可能なサーバを備えるプログラム更新システムであって、前記車載装置は、前記バッテリの残容量の情報であるバッテリ残量を取得する電源管理部と、前記他の装置に関する情報を現状情報として前記サーバに送信し、前記サーバからプログラムの更新に関する情報である更新情報を取得する更新情報取得部と、前記更新情報および前記バッテリ残量に基づき更新するプログラムを決定する更新プログラム決定部と、前記更新プログラム決定部の決定に基づきプログラムを更新する情報である更新本体を通信により取得する更新本体取得部と、前記更新本体を前記他の装置に送信しプログラムの更新を実行させる転送部とを備え、前記サーバは、受信した前記現状情報に基づき前記更新情報を作成し前記車載装置に送信する更新情報作成部を備える。
本発明によれば、バッテリ残量を考慮したプログラムの更新ができる。
プログラム更新システムSのハードウエア構成図 TCU1の機能ブロック図 更新情報171の一例を示す図 現状情報172の一例を示す図 受信強度表173の一例を示す図 ノイズレベル表174の一例を示す図 通過数表175の一例を示す図 取得コストの算出例を示す図 更新コストの算出例を示す図 取得プログラムおよび更新プログラムを決定する例を示す図 TCU1の更新処理を表すフローチャート サーバ4の処理を表すフローチャート
―実施の形態―
以下、図1〜図12を参照して、本発明にかかるプログラム更新システムの実施の形態を説明する。本実施の形態では、装置ごとに更新するプログラムは1つのみとする。そのため本実施の形態では、更新対象のプログラムを特定することと、更新対象のプログラムが動作している装置を特定することは同じ意味である。
(ハードウエア構成)
図1はプログラム更新システムSのハードウエア構成図である。プログラム更新システムSは、車両5とサーバ4とから構成される。ただし図1では車両5は1台のみ記載しているがプログラム更新システムSには複数の車両5が含まれてもよい。車両5は、TCU1と、バッテリ2と、第1ECU31と、第2ECU32と、第3ECU33と、第4ECU34と、ゲートウェイECU(以下、「GW」とも呼ぶ)35とを備える。
TCU1は、CPU11と、ROM12と、RAM13と、無線通信部14と、車内通信部15と、バッテリセンサ16と、フラッシュメモリ17とを備える。CPU11は中央演算装置であり、ROM12に格納されるプログラムをRAM13に展開して実行することにより後述する機能を実現する。無線通信部14は、無線通信モジュールであり、たとえば3Gや4Gの通信規格に対応する。無線通信部14は、最寄りの基地局を介してインターネットXに接続し、インターネットXを経由してサーバ4と通信する。
車内通信部15は、車両5の内部に存在する他の装置と通信する通信モジュールであり、たとえばIEEE802.3に対応する。車内通信部15はGW35と接続され、GW35を介して第1ECU31、第2ECU32、第3ECU33、および第4ECU34と通信する。バッテリセンサ16は、バッテリ2の残容量を検出するセンサであり、たとえば電圧計である。バッテリ2は電圧と残容量の関係が既知なので、電圧を測定することにより残容量を推定できる。以下では、バッテリ2の残容量を示す情報を「バッテリ残量」と呼ぶ。フラッシュメモリ17は、後述する情報を記憶する不揮発性の記憶装置である。ただしTCU1がフラッシュメモリ17を備えず、ROM12に必要な情報を全て記憶してもよい。
バッテリ2は、不図示の電力供給線によりTCU1、第1ECU31、第2ECU32、第3ECU33、第4ECU34、およびGW35に電力を供給する。この電力の供給は車両5のイグニションスイッチの状態を問わずに行われるので、たとえばイグニッションスイッチがオフにされた後もTCU1などは動作可能である。バッテリ2は電圧と残容量の関係が既知である。
第1ECU31、第2ECU32、第3ECU33、および第4ECU34はいずれも、車両5に内蔵され車両5の動作に関する何らかの演算を行う電子制御装置(Electronic Control Unit)、すなわちECUである。以下では、第1ECU31、第2ECU32、第3ECU33、および第4ECU34をまとめてECU30と呼ぶ。ここではECU30が担う具体的な機能は説明しないが、それぞれのECU30はプログラムを実行することによりそれぞれの機能を実現する。
各ECU30が実行するプログラムにはバージョン番号が付与されており、新しいプログラム、すなわちより大きい番号のバージョン番号を有するプログラムがサーバ4で作成されることがある。そのような場合は、その新しいプログラムを実行するための情報(以下、「更新本体」と呼ぶ)がTCU1からGW35を介して各ECU30に送信される。各ECU30は、受信した更新本体を用いてプログラムを更新し、更新の完了をTCU1に伝達する。
なお更新本体は、新たなプログラムの全体でもよいし、現在のプログラムと新たなプログラムの差分でもよい。また更新本体は圧縮されていてもよいし、事前に取り決めた暗号化が施されていてもよい。さらに更新本体には、電子署名が付加されていてもよい。
またTCU1およびGW35もECU30と同様にプログラムを実行しており、これらのプログラムは同様の手順で更新される。以下では、TCU1、ECU30、およびGW35をまとめて「更新可能機器」と呼ぶ。更新可能機器はプログラムを不揮発性の記憶装置に格納しており、プログラムは適宜書き換えられる。ただし装置ごとにこの記憶装置の特性が異なり、たとえば書き込み速度が異なる。それぞれの更新可能機器における記憶装置の書き込み速度は既知であり、TCU1に格納されている。
GW35は、車内通信部15とECU30との通信を中継する装置である。GW35はたとえば、車内通信部15とはIEEE802.3の規格に則った通信を行い、ECU30とは別の通信規格、たとえばCAN(登録商標)に則った通信を行う。
サーバ4は、CPU41と、ROM42と、RAM43と、HDD44と、サーバ通信部45とを備える。CPU41は中央演算装置であり、ROM42に格納されるプログラムをRAM43に展開して実行することにより後述する機能を実現する。HDD44は不揮発性の記憶装置、たとえばハードディスクドライブである。HDD44にはデータベース(以下、「DB」)441、および様々なプログラムに対応する更新本体が格納される。DB441には、サーバ4に接続される様々な車両5に搭載される機器で動作しているプログラムの現在のバージョン番号、および各プログラムの最新バージョン番号が格納される。たとえば新しいバージョンのプログラムが作成されると、そのプログラムの更新本体がHDD44に格納され、DB441に記載されるそのプログラムの最新バージョン番号が更新される。サーバ通信部45は、インターネットXを経由してTCU1と通信する。
(機能構成)
図2は、TCU1が備える機能を示す機能ブロック図である。ただし図2にはフラッシュメモリ17に格納される情報も示している。TCU1はその機能として、電源管理部111と、更新情報取得部112と、更新プログラム決定部113と、更新本体取得部114と、転送部115と、監視部116とを備える。またフラッシュメモリ17には、更新情報171と、現状情報172と、受信強度表173と、ノイズレベル表174と、通過数表175と、更新本体179とが格納される。ただし更新情報171、現状情報172、および更新本体179は必ずしも常にフラッシュメモリ17に格納されていなくてもよい。
(更新情報171)
図3は更新情報171の一例を示す図である。更新情報171は、サーバ4により作成されTCU1に送信される。更新情報171には、更新可能機器のそれぞれについて、最新のプログラムのバージョン、更新の優先度、同時に更新すべきプログラムを示す関連情報、ダウンロードする更新本体のデータ容量(以下、「DLサイズ」とも呼ぶ)などが含まれる。ただし図3に示す例ではTCU1の情報を記載していない。なお図3に示す例において第2ECUのDLサイズが記載されていないのは、第2ECU32ではすでに最新のバージョン6.0が動作しており、新たにダウンロードをする必要がないからである。
(現状情報172)
図4は現状情報172の一例を示す図である。現状情報172はTCU1が更新可能機器の情報を収集した情報であり、TCU1からサーバ4に送信される。ただし図4に示す例ではTCU1の情報を記載していない。現状情報172にはTCU1を識別する情報、および更新可能機器に搭載されるプログラムのバージョン情報が含まれる。たとえば現状情報172は、TCU1を識別する情報として識別番号、仕向、およびモデルの情報が含まれ、第1ECU31〜第4ECU34、およびGW35のプログラムのバージョンが含まれる。
(受信強度表173)
図5は受信強度表173の一例を示す図である。受信強度表173はフラッシュメモリ17にあらかじめ格納される。受信強度表173は、無線通信部14が受信する信号の強度、すなわち受信強度と、後の演算で使用する受信係数との関係を表している。受信強度は、最も良好な通信状態では「100」であり、強度の低下により「1」まで減少して最後は「圏外」となる。図5に示すように受信強度が強いほど受信係数は小さく、受信強度が弱いほど受信係数は大きくなる。ただし圏外の場合は後述するように更新本体を取得しないので受信係数を「対象外」としている。
(ノイズレベル表174)
図6はノイズレベル表174の一例を示す図である。ノイズレベル表174はフラッシュメモリ17にあらかじめ格納される。ノイズレベル表174は無線通信部14が受信する信号のノイズレベルと、後の演算で使用するノイズ係数との関係を表している。ノイズレベルは、最も良好な通信状態では「1」であり、最も劣悪な通信状態では「100」である。図6に示すようにノイズレベルが低いほどノイズ係数は小さく、ノイズレベルが高いほどノイズ係数は大きくなる。
(通過数表175)
図7は通過数表175の一例を示す図である。通過数表175はフラッシュメモリ17にあらかじめ格納される。通過数表175はTCU1を起点として更新対象のECUに至るまでに通過する他のECUの数と、後の演算で使用する通過係数との関係を表している。すなわち更新対象のECUがTCU1自身の場合は通過するECUが「1」なので通過係数が「1.0」、更新対象のECUがGW35の場合は通過するECUが「2」なので通過係数が「2.0」、更新対象のECUがECU30の場合は通過するECUが「3」なので通過係数が「3.0」である。なお図7に示す例では、「通過ECU個数」のフィールドと「対象ECU」のフィールドを備えたが、いずれか一方だけを備えてもよい。
電源管理部111は、CPU11において実行されるプログラムおよびバッテリセンサ16により実現される。電源管理部111は、バッテリ2の電圧を測定し既知の関係式によりバッテリ残量を算出する。そして車両5の次回の起動に必要な既知の電力量を除いたバッテリ残量でTCU1、ECU30およびGW35が動作可能な時間を算出する。たとえば測定したバッテリ2の電圧が11.5Vの場合に既知の関係式からバッテリ残量が10whと算出し、次回の起動に必要な電力量であるたとえば4whを除いた6whを使用可能と判断する。そしてたとえばTCU1、ECU30およびGW35の消費電力が合計で10wの場合は、動作可能な時間は0.6時間、すなわち36分または2160秒と算出する。
更新情報取得部112は、CPU11において実行されるプログラムおよび無線通信部14により実現される。更新情報取得部112は、現状情報172を作成してサーバ4に送信し、サーバ4から更新情報171を取得する。更新プログラム決定部113はCPU11において実行されるプログラムにより実現される。更新プログラム決定部113は、更新情報171およびバッテリ残量に基づき更新するプログラムを決定する。可能ならば全てのプログラムを更新したいがバッテリ残量には限りがあるので、更新プログラム決定部113は後述する手法により優先度が高いプログラムを優先して選択する。
更新本体取得部114は、CPU11において実行されるプログラムおよび無線通信部14により実現される。更新本体取得部114は、更新プログラム決定部113が更新を決定したプログラムの更新本体179をサーバ4から取得しフラッシュメモリ17に保存する。ただし更新本体取得部114は、取得した更新本体179をRAM13に保存してもよい。
転送部115は、CPU11において実行されるプログラムおよび車内通信部15により実現される。転送部115は、フラッシュメモリ17に保存された更新本体179を対応するECUに転送し、それぞれのECUにおいてプログラムの更新を実行させる。また転送部115は、各ECUから更新完了通知を受信するとサーバ4にその旨を伝達する。監視部116は、CPU11において実行されるプログラムおよび無線通信部14により実現される。監視部116は無線通信部14の通信状態、すなわちノイズレベルおよび電波強度を監視する。監視部116は監視結果を更新プログラム決定部113に出力する。
(更新プログラムの決定)
更新プログラム決定部113による更新プログラムの決定を説明する。更新プログラム決定部113は、まず、更新が必要なプログラムごとに、優先度が高いプログラムから順番に、更新本体の取得に要する電力のコスト(以下、「取得コスト」と呼ぶ)、および更新に要する電力のコスト(以下、「更新コスト」と呼ぶ)を算出する。更新プログラム決定部113は次に、利用可能な消費電力から優先度が最も高いプログラムの取得コストおよび更新コストを差し引き、利用可能な消費電力の残余が正であれば次に優先度が高いプログラムの取得コストおよび更新コストを差し引く。更新プログラム決定部113は、このように利用可能な消費電力から各プログラムの取得コストおよび更新コストを順番に差し引き、利用可能な消費電力が負になる直前までのプログラムを取得対象および更新対象として決定する。ただし本実施の形態では、消費電力やコストを装置を稼働可能な時間で代替する。
更新プログラム決定部113は、各プログラムの取得コストを以下の式1のように算出する。
取得コスト=(DLサイズ÷標準速度)×受信係数×ノイズ係数×通過係数・・・(式1)
ただしDLサイズとは前述のとおりダウンロードする更新本体のデータ容量である。標準速度とは、既知である無線通信部14の標準的なダウンロード速度である。なお無線通信部14の通信速度は通信環境により変動するが、その変動分は受信係数およびノイズ係数に反映されるので、標準速度は通信環境にかかわらず一定である。受信係数は、受信強度表173および監視部116が監視した無線通信部14の受信強度から特定される。ノイズ係数は、ノイズレベル表174および監視部116が監視した無線通信部14のノイズレベルから特定される。通過係数は、通過数表175および各プログラムが実行される装置から特定される。
更新プログラム決定部113は、各プログラムの更新コストを以下の式2のように算出する。
更新コスト=DLサイズ÷書き込み速度・・・(式2)
ただしDLサイズとは前述のとおりダウンロードする更新本体のデータ容量である。また書き込み速度とは、それぞれの更新可能機器におけるプログラムが格納される記憶装置の書き込み速度である。書き込み速度は機器ごとに異なり、それぞれの書き込み速度は既知である。
このように更新プログラム決定部113は、各プログラムの取得コストおよび更新コストを処理に要する時間、すなわち秒数として見積もる。
(取得コストの算出例)
図8は取得コストの算出例を示す図である。図8に示す例は、図3に示した更新情報171、図5に示した受信強度表173、図6に示したノイズレベル表174、および図7に示した通過数表175を用いて作成した。ただし第2ECU32は更新が不要なため図8には記載していない。図8に示す例において、たとえば受信強度は90であったために受信係数は「1.0」となっており、ノイズレベルが30であったためにノイズ係数は「2.0」となっている。受信係数およびノイズ係数は全ての更新可能機器に共通する値である。
図8において通過係数は、図1に示す物理的な配置により、第1ECU31、第3ECU33、および第4ECU34が「3.0」、GW35が「2.0」となっている。図8に示す例では式1の標準速度を1MB/sとしたので、たとえば第1ECUの取得コストは以下の式3に示すように計算される。
第1ECUの取得コスト=(120÷1)×1.0×2.0×3.0=720・・・(式3)
このような計算によりそれぞれの取得コストが算出される。次に更新プログラム決定部113が取得対象を決定する具体例を続けて説明する。図8に示す例では優先度は上から「緊急」、「低」、「低」、「中」と設定されているが、優先度が「低」である第3ECU33は優先度が「緊急」である第1ECU31に関連する。そのため第3ECU33の更新は第1ECU31と同様に優先される。そして次に優先度が「中」であるGW35が検討され、最後に優先度が「低」の第4ECU34が検討される。
(更新コストの算出例)
図9は更新コストの算出例を示す図である。図9に示す更新可能機器の書き込み速度は、TCU1にあらかじめ格納されている情報である。第1ECUの更新コストは以下の式4に示すように算出される。
第1ECUの更新コスト=120÷10=12・・・(式4)
このような計算によりそれぞれの更新コストが算出される。次に更新プログラム決定部113が取得対象および更新対象を決定する具体例を続けて説明する。
図10は、取得プログラムおよび更新プログラムを決定する例を示す図である。図10は、図8および図9を抜粋し、検討すべき順に並べ替えたものである。そして右端の累計の欄は、検討順における取得コストおよび更新コストの累計が示されている。たとえば最上段の第1ECUの累計は、第1ECUの取得コストと更新コストの和である。次の第3ECUの累計は、第1ECUの取得コストと更新コストに、第3ECUの取得コストと更新コストを追加したものである。同様にGWと第4ECUの累計も算出された。動作可能な時間が2160秒の場合は、第1ECU,第3ECU,およびGWが取得プログラムおよび更新プログラムとして決定される。
(TCU1のフローチャート)
図11は、TCU1の更新処理を表すフローチャートである。以下に説明する各ステップの実行主体はTCU1のCPU11である。TCU1は、車両5のイグニションスイッチがオフにされると図11に示す動作を開始する。すなわち以下に説明する処理が実行されている間は、車両5は停止している。
車両5のイグニションスイッチがオフにされるとTCU1は、まずS601において無線通信部14からノイズレベルおよび電波強度を取得する。続くS602ではTCU1は、S601において取得した電波強度から圏外であるか否か、換言するとサーバ4との通信が不可能な状態であるか否かを判断する。TCU1は、圏外であると判断する場合は図11に示す処理を終了し、圏外ではないと判断する場合はS603に進む。S603ではTCU1は、更新情報取得部112がサーバ4と通信を行い更新情報171を取得する。詳述すると更新情報取得部112は、現状情報172を作成してサーバ4に送信し、サーバ4が現状情報172に対応して作成した更新情報171を受信する。
続くS604ではTCU1は、S603において取得した更新情報171を参照し、更新可能なプログラムが存在するか否かを判断する。たとえばTCU1は、更新情報171に記載された各機器の最新バージョンと現状情報172に記載のバージョン番号の一致によりこの判断を行ってもよいし、更新情報171に記載されたDLサイズの有無により判断してもよい。更新可能なプログラムが存在すると判断する場合はS610に進み、更新可能なプログラムが存在しない、すなわち全てのプログラムがすでに最新であると判断する場合は図11に示す処理を終了する。
S610では更新プログラム決定部113は、S603において取得した更新情報171を参照して、前述のように各装置の取得コストおよび更新コストを算出する。続くS611では更新プログラム決定部113は、前述のように電源管理部111が算出した動作可能な時間を考慮して取得対象および更新対象のプログラムを決定する。続くS612では更新本体取得部114は、S611において更新プログラム決定部113が決定したプログラムの更新本体をサーバ4から取得、すなわちダウンロードの実行を行いフラッシュメモリ17に格納する。
続くS616では転送部115は、更新可能と判断された装置に更新本体を送信する。続くS618ではTCU1は、所定時間以内に更新成功の通知を受信したか否かを判断する。TCU1は、受信したと判断する場合はS619に進みサーバ4に更新完了を通知し、S620でスリープ状態に移行して図11に示す処理を終了する。S618において否定判断をするとTCU1はS625に進み、更新成功を所定時間以内に送信しなかった装置にロールバック指令、すなわち更新前のプログラムに書き戻すように指令して図11に示す処理を終了する。
(サーバ4のフローチャート)
図12は、サーバ4の処理を表すフローチャートである。サーバ4は、TCU1から現状情報172を受信すると図12に示す処理を開始する。以下に説明する各ステップの実行主体は、サーバ4のCPU41である。
サーバ4は現状情報172を受信するとまずS701において、DB441を参照して現状情報172に基づき更新情報171を作成してTCU1に送信する。具体的にはサーバ4は、現状情報172に記載された機器ごとにDB44からプログラムの最新のバージョン番号、優先度、関連情報、およびDLサイズを取得して更新情報171とする。ただし現状情報172に記載されたバージョン番号が最新のバージョン番号の場合は、そのプログラムのDLサイズは記載しない。続くS702ではサーバ4は、更新情報171の送信から所定時間以内にデータ要求を受けたか否かを判断する。サーバ4は、データ要求を受けたと判断する場合はS703に進んで要求されたデータを配信してS704に進む。サーバ4は、S702において否定判断すると図12に示す処理を終了する。
S704ではサーバ4は、更新完了通知を受信したか否かを判断する。サーバ4はS704において肯定判断をするまでS704に留まる。サーバ4はS704において肯定判断をすると、すなわち受信したと判断するとS705に進みDB441を更新して図12に示す処理を終了する。なおS705におけるDB441の更新は、S703において配信した更新本体により送信先の装置のプログラムのバージョン番号が最新に書き換えられたことの記録である。
上述した実施の形態によれば、次の作用効果が得られる。
(1)TCU1は、バッテリ2を備える車両5に搭載され、車両5に搭載されるECU30やGW35のプログラムを更新する。TCU1は、バッテリ2の残容量の情報であるバッテリ残量を取得する電源管理部111と、プログラムの更新に関する情報である更新情報171を通信により取得する更新情報取得部112と、更新情報112およびバッテリ残量に基づき更新するプログラムを決定する更新プログラム決定部113と、更新プログラム決定部113の決定に基づき更新本体179を取得する更新本体取得部114と、更新本体179を他の装置に送信しプログラムの更新を実行させる転送部115とを備える。そのためバッテリ残量に応じて更新するプログラムを適切に選択するので、バッテリ残量を考慮したプログラムの更新ができる。
(2)更新プログラム決定部は、更新情報に含まれるプログラムごとの優先度に基づき更新するプログラムを決定する。そのため重要な更新を優先的に実行できる。
(3)更新情報171には同時に更新すべきプログラムを示す関連情報が含まれ、更新プログラム決定部113は、関連情報に基づき更新するプログラムを決定する。そのため複数のプログラムを矛盾なく更新することができる。
(4)更新プログラム決定部113は、更新本体179を取得する消費電力に基づき更新するプログラムを決定する。そのため更新本体179をダウンロードしている最中に電力が不足し、ダウンロードを中断することを避けられる。
(5)更新本体取得部114の通信状態を監視する監視部116を備える。更新プログラム決定部は113、監視部116の監視結果である受信強度およびノイズレベル、受信係数が記載された受信強度表173、ならびにノイズ係数が記載されたノイズレベル表174に基づき消費電力を補正する。具体的には式1に示したように、更新本体179のダウンロードに要すると見込まれる時間に受信係数およびノイズ係数をかけ合わせて取得コストを算出する。そのためTCU1は、通信状態を考慮して更新本体179の取得コストを算出できる。
(6)更新本体取得部114は、車両5のイグニションスイッチがオフの際に更新本体179を取得する。そのためTCU1は、通信による情報の取得など車両5の稼働を阻害することなく更新本体179をサーバ4から取得できる。
(7)転送部115は、車両5のイグニションスイッチがオフの際に更新本体179を他の装置に送信しプログラムの更新を実行させる。そのためTCU1は、車両5の稼働を阻害することなくプログラムを更新できる。詳述すると、プログラムの更新にはプログラムの動作を一時停止することがあるので、イグニッションスイッチがオンの際に更新を実行すると不都合が生じる可能性がある。しかしイグニションスイッチがオフの際にはそのような問題が生じない。
(変形例1)
上述した実施の形態では、取得データの決定に取得コストと更新コストの両方を考慮した。しかし取得データの決定には取得コストのみを考慮し、その後に更新コストを考慮してプログラムごとに更新の可否を判断してもよい。
(変形例2)
上述した実施の形態では、TCU1は車両5のイグニションスイッチがオフにされると図11のS601の処理を開始した。しかしTCU1は、S601を実行する前に取得済みであるがまだ転送していない更新本体179がフラッシュメモリ17に存在するか否かを判断し、そのような更新本体179が存在する場合には以下のように処理してもよい。すなわちTCU1は、サーバ4から新たに更新情報171を取得することなくS616に進み、転送部115にフラッシュメモリ17に格納されている更新本体179を送信させる。なお転送していない更新本体179の優先度を確認し、優先度がAの場合のみS613に進み、優先度がA以外の場合はS601から処理を開始してもよい。
(変形例3)
図11のS602において肯定判断がされた場合に、取得済みであるがまだ転送していない更新本体179がフラッシュメモリ17に存在するか否かを判断し、そのような更新本体179が存在する場合には、S613に進んでもよい。
(変形例4)
監視部116は、サーバ4との通信の混雑度を加味してもよい。たとえばサーバ4が他の装置との間で大量にデータ伝送を行っている場合やサーバ4の周辺のネットワークが混雑している場合には、無線通信部14の通信が良好であっても更新本体179のダウンロードは低速になる。監視部116はたとえばtracerouteコマンド、またはtracertコマンドによりサーバ4までの通信経路および各経路間の応答時間を取得し、この応答時間によって混雑度を評価できる。評価した混雑度は、たとえば混雑係数として式1の右辺に追加して取得コストに反映できる。この変形例4によれば、通信ネットワークの混雑度を考慮することができる。
(変形例5)
上述した実施の形態では、サーバ4は1つの物理的な装置であった。しかしサーバ4が有する機能を複数の物理的な装置で分担してもよい。たとえばサーバ4の機能を2つの異なる装置に分担させ、一方は要求に応じて更新本体179を提供する機能を有し、他方はその余の機能を有してもよい。この変形例5によれば、サーバ4を様々な形態で実現でき、容易にスケールアウトが可能である。
(変形例6)
TCU1とECU30との接続形態は上述した実施の形態に示した例に限定されない。すなわち上述した実施の形態では、ECU30はGW35を介してTCU1と接続されたが、GW35を介さずにTCU1と直接に接続されてもよい。またGW35以外に1または複数の装置を介してTCU1と接続されてもよい。
(変形例7)
上述した実施の形態では、TCU1、ECU30、およびGW35を更新可能機器とした。しかしいずれかの機器がプログラムを更新可能であればよい。特にTCU1がTCU1のプログラムを更新しなくてもよい。
(変形例8)
上述した実施の形態では、それぞれの更新可能機器は1つのプログラムのみを更新対象とした。しかし1つの更新可能機器が複数のプログラムを更新可能であってもよい。この場合は、更新可能機器ごとに、更新情報171および現状情報172においてプログラムが識別可能に記載されればよい。
(変形例9)
上述した実施の形態では、消費電力やコストを装置を稼働可能な時間で代替した。しかし時間以外で代替してもよいし、電力そのものを用いて演算を行ってもよい。
上述した各実施の形態および変形例において、プログラムはROM12に格納されるとしたが、プログラムはフラッシュメモリ17に格納されていてもよい。また、TCU1が不図示の入出力インタフェースを備え、必要なときに入出力インタフェースとTCU1が利用可能な媒体を介して、他の装置からプログラムが読み込まれてもよい。ここで媒体とは、例えば入出力インタフェースに着脱可能な記憶媒体、または通信媒体、すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号、を指す。また、プログラムにより実現される機能の一部または全部がハードウエア回路やFPGAにより実現されてもよい。
上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
1…TCU
2…バッテリ
4…サーバ
5…車両
14…無線通信部
17…フラッシュメモリ
111…電源管理部
112…更新情報取得部
113…更新プログラム決定部
114…更新本体取得部
115…転送部
116…監視部
171…更新情報
172…現状情報
173…受信強度表
174…ノイズレベル表
175…通過数表
176…優先度表
179…更新本体

Claims (10)

  1. バッテリを備える車両に搭載され前記車両に搭載される他の装置のプログラムを更新する車載装置であって、
    前記バッテリの残容量の情報であるバッテリ残量を取得する電源管理部と、
    プログラムの更新に関する情報である更新情報を通信により取得する更新情報取得部と、
    前記更新情報および前記バッテリ残量に基づき更新するプログラムを決定する更新プログラム決定部と、
    前記更新プログラム決定部の決定に基づきプログラムを更新する情報である更新本体を通信により取得する更新本体取得部と、
    前記更新本体を前記他の装置に送信しプログラムの更新を実行させる転送部とを備える車載装置。
  2. 請求項1に記載の車載装置において、
    前記更新プログラム決定部は、前記更新情報に含まれるプログラムごとの優先度に基づき更新するプログラムを決定する車載装置。
  3. 請求項1または請求項2に記載の車載装置において、
    前記更新情報には同時に更新すべきプログラムを示す関連情報が含まれ、
    前記更新プログラム決定部は、前記関連情報に基づき更新するプログラムを決定する車載装置。
  4. 請求項1から請求項3までのいずれか一項に記載の車載装置において、
    前記更新プログラム決定部は、プログラムを取得する消費電力に基づき更新するプログラムを決定する車載装置。
  5. 請求項4に記載の車載装置において、
    前記更新本体取得部の通信状態を監視する監視部をさらに備え、
    前記更新プログラム決定部は、前記監視部の監視結果に基づき前記消費電力を補正する車載装置。
  6. 請求項1から請求項5までのいずれか一項に記載の車載装置において、
    前記更新本体を格納する格納部をさらに備え、
    前記更新情報取得部は、前記格納部に前記更新本体が格納されている場合は、新たに前記更新情報を取得することなく前記転送部に前記格納部に格納されている前記更新本体を送信させる車載装置。
  7. 請求項1から請求項6までのいずれか一項に記載の車載装置において、
    前記更新本体取得部は、前記車両のイグニションスイッチがオフの際に前記更新本体を取得する車載装置。
  8. 請求項1から請求項7までのいずれか一項に記載の車載装置において、
    前記転送部は、前記車両のイグニションスイッチがオフの際に前記更新本体を前記他の装置に送信しプログラムの更新を実行させる車載装置。
  9. バッテリを備える車両に搭載され前記車両に搭載される他の装置のプログラムを更新するプログラムの更新方法であって、
    前記バッテリの残容量の情報であるバッテリ残量を取得することと、
    プログラムの更新に関する情報である更新情報を通信により取得することと、
    前記更新情報および前記バッテリ残量に基づき更新するプログラムの決定を行うことと、
    前記決定に基づきプログラムを更新する情報である更新本体を通信により取得することと、
    前記更新本体を前記他の装置に送信しプログラムの更新を実行させることとを含むプログラムの更新方法。
  10. バッテリを備える車両に搭載され前記車両に搭載される他の装置のプログラムを更新する車載装置、および前記車載装置と通信可能なサーバを備えるプログラム更新システムであって、
    前記車載装置は、
    前記バッテリの残容量の情報であるバッテリ残量を取得する電源管理部と、
    前記他の装置に関する情報を現状情報として前記サーバに送信し、前記サーバからプログラムの更新に関する情報である更新情報を取得する更新情報取得部と、
    前記更新情報および前記バッテリ残量に基づき更新するプログラムを決定する更新プログラム決定部と、
    前記更新プログラム決定部の決定に基づきプログラムを更新する情報である更新本体を通信により取得する更新本体取得部と、
    前記更新本体を前記他の装置に送信しプログラムの更新を実行させる転送部とを備え、
    前記サーバは、
    受信した前記現状情報に基づき前記更新情報を作成し前記車載装置に送信する更新情報作成部を備えるプログラム更新システム。
JP2018084220A 2018-04-25 2018-04-25 車載装置、プログラムの更新方法、プログラム更新システム Pending JP2019191943A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018084220A JP2019191943A (ja) 2018-04-25 2018-04-25 車載装置、プログラムの更新方法、プログラム更新システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018084220A JP2019191943A (ja) 2018-04-25 2018-04-25 車載装置、プログラムの更新方法、プログラム更新システム

Publications (1)

Publication Number Publication Date
JP2019191943A true JP2019191943A (ja) 2019-10-31

Family

ID=68391351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018084220A Pending JP2019191943A (ja) 2018-04-25 2018-04-25 車載装置、プログラムの更新方法、プログラム更新システム

Country Status (1)

Country Link
JP (1) JP2019191943A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023195460A1 (ja) * 2022-04-04 2023-10-12 株式会社オートネットワーク技術研究所 車載装置、コンピュータプログラム及びプログラム更新方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023195460A1 (ja) * 2022-04-04 2023-10-12 株式会社オートネットワーク技術研究所 車載装置、コンピュータプログラム及びプログラム更新方法

Similar Documents

Publication Publication Date Title
US11221840B2 (en) Centralized management of mobile-assisted motor vehicle software upgrading
US10678530B2 (en) Vehicle update systems and methods
US10915310B2 (en) Control apparatus, program updating method, and computer program
KR101724486B1 (ko) 차량 단말의 소프트웨어 업데이트 제어장치 및 그 방법이 구현된 컴퓨터로 판독 가능한 기록매체
CN109643254B (zh) 车载更新系统、车载更新装置及通信装置的更新方法
WO2018025685A1 (ja) 車載更新装置、車載更新システム及び通信装置の更新方法
CN111694579B (zh) 储能系统的远程升级方法、能量管理系统和电池管理系统
US10990379B2 (en) Vehicular software update apparatus
CN104978217B (zh) 具有电池soc估计器的智能车辆重新刷新
US11061659B2 (en) Control apparatus, transfer method, and computer program
US10203949B2 (en) System and method for providing software updates
JP2018037059A (ja) 車載更新装置及び車載更新システム
US20140052330A1 (en) Methods and Apparatus for Vehicle Computing System Software Updates
US20200215930A1 (en) Control apparatus, control method, and computer program
CN111989658B (zh) 车载更新装置、车载更新系统、更新处理方法及更新处理程序
US9442716B2 (en) Methods and apparatus for adjusting a variable rate of requesting software data from a vehicle
CN108279916A (zh) 电子控制单元程序更新方法和装置
WO2018043107A1 (ja) 車載更新装置及び車載更新システム
KR20160045191A (ko) 차량의 소프트웨어 업데이트 장치 및 방법
CN107102849B (zh) 用于周期性点火开关断开的文件替换的方法和设备
JP2019191943A (ja) 車載装置、プログラムの更新方法、プログラム更新システム
JP5545149B2 (ja) 制御装置
JP7279707B2 (ja) 制御装置、制御方法、およびコンピュータプログラム
JP2018181376A (ja) 中継装置、プログラム更新システム、およびプログラム更新方法
US11736577B2 (en) Server, update management method, non-transitory storage medium, software update device, and system including server and software update device