JP7298427B2 - プログラム更新システムおよびプログラム更新方法 - Google Patents

プログラム更新システムおよびプログラム更新方法 Download PDF

Info

Publication number
JP7298427B2
JP7298427B2 JP2019184535A JP2019184535A JP7298427B2 JP 7298427 B2 JP7298427 B2 JP 7298427B2 JP 2019184535 A JP2019184535 A JP 2019184535A JP 2019184535 A JP2019184535 A JP 2019184535A JP 7298427 B2 JP7298427 B2 JP 7298427B2
Authority
JP
Japan
Prior art keywords
program
electronic device
update
vehicle
current
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
JP2019184535A
Other languages
English (en)
Other versions
JP2021060797A (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 JP2019184535A priority Critical patent/JP7298427B2/ja
Priority to EP20181089.2A priority patent/EP3805918B1/en
Priority to CN202410345185.3A priority patent/CN118069188A/zh
Priority to CN202010591045.6A priority patent/CN112698851B/zh
Priority to US16/914,590 priority patent/US11714628B2/en
Publication of JP2021060797A publication Critical patent/JP2021060797A/ja
Priority to US18/207,743 priority patent/US20230315436A1/en
Application granted granted Critical
Publication of JP7298427B2 publication Critical patent/JP7298427B2/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
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/48Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for in-vehicle communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates

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(Electronic Control Unit)と呼ばれる電子機器が通信線を介して互いに接続されたネットワークシステムが搭載されている。各電子機器は、互いにメッセージを送受信して、車両の各機能を分担して実行する。
電子機器は、典型的にはプロセッサと、RAMのような一時的な記憶部やフラッシュROMのような不揮発性の記憶部とを備えている。プロセッサが実行するプログラムは、不揮発性の記憶部に記憶される。プログラムをより新しいバージョンに書き変えて更新することにより、電子機器の機能の向上、改善を図ることができる。
特許文献1は、第1電子機器のプログラムの更新の際、更新に先立って、第2電子機器が、第1電子機器が現在記憶しているプログラムを、車内通信用の通信線を介して読み出して記憶することでバックアップすることを開示している。この方法によれば、第2電子機器がプログラムを第1電子機器に書き戻すことで、第1電子機器の記憶部がバックアップ用の記憶領域を有していなくても、第1電子機器のプログラムを更新前の状態に復旧することが可能となる。
特開2014-191574号公報
特許文献1の方法では、第2電子機器が、第1電子機器が現在記憶しているプログラムをネットワークシステムの車内通信用の通信線を介して読み出してバックアップする。そのため、バックアップしない場合に比べて車内の通信量が増加する。
本発明は、上記課題を鑑みてなされたものであり、車両の電子機器のプログラムを更新するプログラム更新システムにおいて、更新対象の電子機器がバックアップ用の記憶領域を有していなくても、車内の通信量の増大を抑制しつつ、更新前のプログラムに復旧可能にすることを目的とする。
上記課題を解決するために、本発明の一局面は、車両と、車両に搭載される電子機器のプログラムを送信する、車両と通信可能なプログラム送信装置とを備えるプログラム更新システムであって、車両は、第1電子機器と、プログラム送信装置から受信するデータを記憶可能な第2電子機器とを含み、第1電子機器は、第1電子機器が実行するプログラムの現在のバージョンである現プログラムと現プログラムの更新版である更新プログラムとを同時に記憶可能な記憶領域を有さず、第2電子機器は、プログラム送信装置および第1電子機器と通信可能であり、現プログラムと更新プログラムとを同時に記憶可能な記憶領域を有し、プログラム送信装置は、車両から要求を受信すると、車両に更新プログラムを表すデータおよび現プログラムを表すデータを車両に送信し、車両の第2電子機器は、更新プログラムを表すデータおよび現プログラムを表すデータを受信すると、更新プログラムを表すデータおよび現プログラムを表すデータを記憶し、車両の第2電子機器は、記憶した更新プログラムを表すデータに基づいて、車両の第1電子機器が記憶しているプログラムを現プログラムから更新プログラムに変更する更新処理を実行し、車両の第2電子機器は、更新処理の後、所定の判定処理の結果またはユーザー指示に応じて、記憶した現プログラムを表すデータにより、車両の第1電子機器が記憶しているプログラムを現プログラムに復旧することが可能な、プログラム更新システムである。
上記課題を解決するために、本発明の他の局面は、車両に搭載される電子機器のプログラムを送信するプログラム送信装置であって、車両と通信する通信部と、通信部を制御する制御部とを備え、制御部は、車両からの要求を通信部が受信すると、要求に応じて、電子機器が実行するプログラムの現在のバージョンである現プログラムを表すデータおよび現プログラムの更新版である更新プログラムを表すデータとを、通信部を制御して、車両に送信する、プログラム送信装置である。
上記課題を解決するために、本発明の他の局面は、車両と通信する通信部を備え、車両に搭載される電子機器のプログラムを送信するプログラム送信装置の制御部が実行するプログラム送信方法であって、車両からの要求を通信部が受信すると、要求に応じて、電子機器が実行するプログラムの現在のバージョンである現プログラムを表すデータおよび現プログラムの更新版である更新プログラムを表すデータとを、通信部を制御して、車両に送信するステップを含む、プログラム送信方法である。
本発明によれば、車両の電子機器のプログラムを更新するプログラム更新システムにおいて、更新対象の電子機器がバックアップ用の記憶領域を有していなくても、車内の通信量の増大を抑制しつつ、更新前のプログラムに復旧可能にすることができる。
本発明の一実施形態に係るプログラム更新システムの構成図 本発明の一実施形態に係る処理を示すシーケンス図 本発明の一実施形態に係る処理を示すシーケンス図 本発明の一実施形態に係る処理を示すシーケンス図
(実施形態)
本発明の一実施形態においては、プログラム送信装置であるサーバーは、車両の第2電子機器に第1電子機器用の更新プログラムを送信する際に、バックアップ用の更新前のプログラムも送信する。第1電子機器は、更新前のプログラムをバックアップする記憶領域を有しておらず、代わりに第2電子機器が更新前のプログラムを記憶するが、第2電子機器は、更新前のプログラムをサーバーから受信するので、第1電子機器から更新前のプログラムを読み出す必要がない。そのため車内の通信量の増大を抑制しつつ第1電子機器を更新前のプログラムに復旧可能にすることができる。
<構成>
図1に、本実施形態に係るプログラム更新システム1の構成を示す。プログラム更新システム1は、ネットワークシステム101が搭載された車両100と車両100の外部に設けられるサーバー200とを含む。
ネットワークシステム101は、複数の電子機器を含む、図1には、第1電子機器10と第2電子機器20とを図示する。第2電子機器20は、一例として中継装置50を介して、第1電子機器10および図示しない他の電子機器と通信可能に接続されている。
第1電子機器10は、制御部11と記憶部12とを備える。記憶部12は、第1電子機器10の機能を実現するためのプログラムを記憶しており、制御部11は、記憶部12からプログラムを読み出して実行する。記憶部12は、記憶容量が限定的であり、現在記憶しているプログラムである現プログラムと、その新しいバージョンである更新プログラムとを両方記憶するのに十分な記憶領域を有しない。本実施形態では、第1電子機器10や同等の構成を有する他の電子機器をプログラムの更新対象とすることができる。
第2電子機器20は、制御部21と、記憶部22と、通信部23とを備える。記憶部22は、第2電子機器20の機能を実現するためのプログラムを記憶しており、制御部21は、記憶部22からプログラムを読み出して実行する。本実施形態では、第2電子機器20が、第1電子機器10等のプログラムの更新に関する処理を行う。記憶部22は、第2電子機器20のプログラムだけでなく、更新対象の各電子機器の更新プログラムや現プログラムも記憶できるだけの十分な記憶領域を有する。また、通信部23は、サーバー200と通信するための無線通信機である。なお、通信部23は、第2電子機器20とは別体に設けられてもよい。
サーバー200は、制御部201と、記憶部202と、通信部203とを備えるプログラム送信装置である。記憶部202は、サーバー200の機能を実現するためのプログラムを記憶しており、制御部201は、記憶部202からプログラムを読み出して実行する。サーバー200は、各電子機器の更新プログラムを提供することができる。記憶部202は、十分な記憶領域を有し、サーバー200のプログラムだけでなく、各電子機器の各バージョンのプログラムも記憶できるだけの記憶領域を有する。また、通信部203は、第2電子機器20と通信するための無線通信機である。サーバー200と第2電子機器20との通信は、このように、典型的には無線によって行うが、有線によって行ってもよい。また、本実施形態において、サーバー200の代わりに、同等の機能を有するスマートフォンのような汎用端末装置や、専用携帯端末装置を用いてもよい。
なお、第1電子機器10および第2電子機器20は、通信線を介して互いに通信するため制御部11および制御部21によって制御される車内通信用の通信部もそれぞれ含むが、図示を省略する。
<処理>
以下に、本実施形態に係る処理を説明する。図2、図3、図4は、処理の一例を説明するシーケンス図である。本例では、第1電子機器10がプログラムの更新対象であるものとして説明するが、他の電子機器が更新対象であっても同様に処理することができる。また、複数の電子機器が更新対象であっても、電子機器ごとに適宜同様の処理を行うことができる。
まず、図2を参照して、第2電子機器20が更新プログラムおよび現プログラムを取得する処理を説明する。
(ステップS101):サーバー200に対して第1電子機器10の更新プログラムが提供されて登録される。更新プログラムは、例えば、提供元の装置や記憶媒体から提供され、サーバー200の制御部201が記憶部202に記憶させる。
以降のステップS102~S111の処理は、ユーザー操作によって車両100が電源オン(イグニッションオン)状態となっている間に実行される。
(ステップS102):第2電子機器20の制御部21は、ネットワークシステム101に含まれる電子機器の各プログラムのバージョンを特定する情報を生成し、通信部23を制御してサーバー200宛てに送信させる。本例では、この情報には、第1電子機器10のプログラムのバージョンを特定する情報が含まれる。
(ステップS103):サーバー200の制御部201は、各プログラムのバージョンを特定する情報を通信部203が受信すると、受信した情報と、記憶部202が記憶している更新プログラムとに基づいて、各電子機器の更新プログラムの有無を表す情報を生成し、通信部203を制御して第2電子機器20宛てに送信させる。本例では、この情報には、第1電子機器10の更新プログラムが存在することを表す情報が含まれる。
(ステップS104):第2電子機器20の制御部21は、更新プログラムの有無を表す情報を通信部23が受信し、更新プログラムが存在する場合、通信部23を制御して更新プログラム要求をサーバー200宛てに送信させる。本例では、更新プログラム要求には第1電子機器10の更新プログラムを要求する情報が含まれる。なお、制御部21は、更新プログラムが存在することを車両100が備える表示装置に表示し、GUI等のインターフェースを介してユーザーから更新プログラムの取得を実行する指示を受け付けた場合に、本ステップ以降を実行するようにしてもよい。
(ステップS105):サーバー200の制御部201は、更新プログラム要求を通信部203が受信すると、記憶部202から更新プログラムを読み出し、通信部203を制御して、第2電子機器20宛てに送信させる。本例では、第1電子機器10の更新プログラムを含むプログラムが送信される。第2電子機器20の制御部21は、通信部23が更新プログラムを受信すると、記憶部22に記憶させる。
(ステップS106):第2電子機器20の制御部21は、通信部23を制御して、現プログラム要求をサーバー200宛てに送信させる。本例では、現プログラム要求には第1電子機器10の現プログラムを要求する情報が含まれる。
(ステップS107):サーバー200の制御部201は、現プログラム要求を通信部203が受信すると、記憶部202から現プログラムを読み出し、通信部203を制御して、第2電子機器20宛てに送信させる。本例では、第1電子機器10の現プログラムが送信される。第2電子機器20の制御部21は、通信部23が現プログラムを受信すると、記憶部22に記憶させる。なお、現プログラムは、現プログラム要求に応じて送信するのではなく、ステップS105で更新プログラムの送信の際、その前や後に連続して送信してもよい。
(ステップS108):第2電子機器20の制御部21は、第1電子機器10宛てに現プログラム検証情報要求を送信する。
(ステップS109):第1電子機器10の制御部11は、現プログラム検証情報を生成して、第2電子機器20宛てに送信する。現プログラム検証情報は、第1電子機器10の記憶部12が記憶している現プログラムに基づいて定まる検証用の情報であり、例えば、CRC(Cyclic Redundancy Check)値である。
(ステップS110):第2電子機器20の制御部21は、サーバー200から受信した現プログラムの検証情報を生成し、あるいは、サーバー200から現プログラムと合わせて取得し、生成または取得した検証情報と、第1電子機器10から受信した現プログラム検証情報とを比較し、サーバー200から受信した現プログラムが、第1電子機器10の記憶部12が記憶している現プログラムと同一のものであることを検証する。この検証ができない場合は、以降の処理を行わない。
(ステップS111):第2電子機器20の制御部21は、更新実施フラグをオンに設定する。
以上の処理により、第2電子機器20は、第1電子機器10の更新プログラムと、バックアップ用の現プログラムとを取得し、次の更新処理に進むことができる状態となる。
次に、図3を参照して、プログラムの更新処理について説明する。ステップS201~S214の処理は、ユーザー操作によって車両100が電源オフ(イグニッションオフ)状態となっている間に実行される。
(ステップS201):第2電子機器20の制御部21は、更新実施フラグがオンに設定されていることを確認する。この確認ができない場合は、以降の処理を行わない。
(ステップS202):第2電子機器20の制御部21は、第1電子機器10宛てに状態要求を送信する。なお、制御部21は、プログラムの更新を行うかどうかの確認画面を表示装置に表示し、GUI等のインターフェースを介してユーザーから更新を実行する指示を受け付けた場合に、本ステップ以降を実行するようにしてもよい。
(ステップS203):第1電子機器10の制御部11は、第2電子機器20宛てに、自装置の状態を表す情報を送信する。第1電子機器10の制御部11は、自己診断を実行して、自装置の状態として、異常や故障の有無を検出することができる。自装置の状態を表す情報には、この検出結果が含まれる。
(ステップS204):第2電子機器20の制御部21は、第1電子機器10の状態に基づいて以降の処理を行うか否かを判定する。第1電子機器10に異常や故障が発生している場合は、以降の処理を行わない。
(ステップS205):第2電子機器20の制御部21は、第1電子機器10宛てに更新可否要求を送信する。
(ステップS206):第1電子機器10の制御部11は、第2電子機器20宛てに、更新可否を表す情報を送信する。第1電子機器10の制御部11は、自装置の動作状態に基づいて、記憶部12を書き替えてプログラムを更新する処理を、現在実行可能であるか否かを判定することができる。更新可否を表す情報には、この判定結果が含まれる。
(ステップS207):第2電子機器20の制御部21は、更新可能であることを表す情報を受信すると、更新モード開始要求を第1電子機器10宛てに送信する。更新可能であることを表す情報を受信できない場合は、以降の処理を行わない。
(ステップS208):第1電子機器10の制御部11は、動作状態として更新モードを開始し、そのことを表す更新モード開始通知を、第2電子機器20宛てに送信する。
(ステップS209):第2電子機器20の制御部21は、記憶部22から更新プログラムを読み出し、第1電子機器10宛てに送信する。
(ステップS210):第1電子機器10の制御部11は、第2電子機器20から受信した更新プログラムを、記憶部12のプログラム記憶領域に上書きする。
(ステップS211):第1電子機器10の制御部11は、更新プログラムの記憶部12への書き込みが完了すると、更新完了通知を第2電子機器20宛てに送信する。
(ステップS212):第2電子機器20の制御部21は、更新完了通知を受信すると、更新モード終了要求を第1電子機器10宛てに送信する。
(ステップS213):第1電子機器10の制御部11は、更新モードを終了し、そのことを表す更新モード終了通知を、第2電子機器20宛てに送信する。
(ステップS214):第2電子機器20の制御部21は、記憶部22に記憶されている更新プログラムを削除する。
以上の処理により、第1電子機器10のプログラムの更新が行われる。なお、第2電子機器20の制御部21は、ステップS211の更新完了通知を一定期間受信できない場合や、更新完了通知の代わりに、第1電子機器10の制御部11の診断によるエラー通知を受信した場合は、更新失敗と判断して、例えば、更新プログラムを再送してもよい。あるいは、更新プログラムの代わりに、記憶部22が記憶している現プログラムを送信して、第1電子機器10の記憶部12の記憶内容を現プログラムで書き直して、更新を中止してもよい。また、ステップS214において、第2電子機器20の制御部21は、通信部23を制御して、プログラムの更新が終了した通知をサーバー200宛てに送信させてもよい。また、更新が成功した後は、元の現プログラムに戻す必要性がなく後述の復旧処理を行わない場合は、ステップS214において、第2電子機器20の制御部21は、記憶部22に記憶されている現プログラムを削除してもよい。
次に、図4を参照して、更新完了後に元のプログラムに戻す復旧処理について説明する。ステップS301、S302の処理は、ユーザー操作によって車両100が電源オン(イグニッションオン)状態となっている間に実行される。
(ステップS301):第1電子機器10の制御部11は、記憶部12から更新プログラムを読み出して実行する。
(ステップS302):第2電子機器20の制御部21は、復旧実施フラグを設定する。この処理は、一例として、表示画面上のGUI等のインターフェースを介して、ユーザーから復旧指示を受け付けた場合に実行される。ユーザーは、例えば、第1電子機器10の制御部11が更新プログラムを実行することで提供する機能に不満足である場合、復旧指示を行うことができる。あるいは、復旧指示は、ユーザーが行うのではなく、第1電子機器10や他の電子機器が所定の判定処理に基づいて行ってもよい。判定処理においては、例えば、第1電子機器10の制御部11が更新プログラムを実際に実行した結果、車両100やいずれかの電子機器の動作に、所定の許容範囲外の影響が発生した場合、復旧指示を行うものとすることができる。
以降のステップS303~S316の処理は、ユーザー操作によって車両100が電源オフ(イグニッションオフ)状態となっている間に実行される。
(ステップS303):第2電子機器20の制御部21は、復旧実施フラグがオンに設定されていることを確認する。この確認ができない場合は、以降の処理を行わない。
(ステップS304):第2電子機器20の制御部21は、第1電子機器10宛てに状態要求を送信する。
(ステップS305):第1電子機器10の制御部11は、第2電子機器20宛てに、自装置の状態を表す情報を送信する。第1電子機器10の制御部11は、自己診断を実行して、自装置の状態として、異常や故障の有無を検出することができる。自装置の状態を表す情報には、この検出結果が含まれる。
(ステップS306):第2電子機器20の制御部21は、第1電子機器10の状態に基づいて以降の処理を行うか否かを判定する。第1電子機器10に異常や故障が発生している場合は、以降の処理を行わない。
(ステップS307):第2電子機器20の制御部21は、第1電子機器10宛てに復旧可否要求を送信する。
(ステップS308):第1電子機器10の制御部11は、第2電子機器20宛てに、復旧可否を表す情報を送信する。第1電子機器10の制御部11は、自装置の動作状態に基づいて、記憶部12を書き替えてプログラムを復旧する処理を、現在実行可能であるか否かを判定することができる。復旧可否を表す情報には、この判定結果が含まれる。
(ステップS309):第2電子機器20の制御部21は、復旧可能であることを表す情報を受信すると、復旧モード開始要求を第1電子機器10に送信する。復旧可能であることを表す情報を受信できない場合は、以降の処理を行わない。
(ステップS310):第1電子機器10の制御部11は、動作状態として復旧モードを開始し、そのことを表す復旧モード開始通知を、第2電子機器20に送信する。
(ステップS311):第2電子機器20の制御部21は、記憶部22から現プログラムを復旧用のプログラムとして読み出し、第1電子機器10に送信する。
(ステップS312):第1電子機器10の制御部11は、第2電子機器20から受信した復旧用のプログラムを、記憶部12のプログラム記憶領域に上書きする。
(ステップS313):第1電子機器10の制御部11は、復旧用のプログラムの記憶部12への書き込みが完了すると、復旧完了通知を第2電子機器20宛てに送信する。
(ステップS314):第2電子機器20の制御部21は、復旧完了通知を受信すると、復旧モード終了要求を第1電子機器10宛てに送信する。
(ステップS315):第1電子機器10の制御部11は、復旧モードを終了し、そのことを表す復旧モード終了通知を、第2電子機器20宛てに送信する。
(ステップS316):第2電子機器20の制御部21は、記憶部22に記憶されている現プログラムを削除する。また、第2電子機器20の制御部21は、通信部23を制御して、プログラムの復旧が終了した通知をサーバー200宛てに送信させてもよい。
以上の処理により、第1電子機器10のプログラムの復旧が行われる。本例では、電源オン時の第1電子機器10の動作やその影響に基づいて、復旧指示を行うことができる。このように、少なくとも1回、車両が電源オフからオンとなり、第1電子機器10が更新プログラムを実行した1つ以上の結果が得られれば、更新プログラムを実際に実行させた結果に基づいて、復旧指示を行うことができる。あるいは、ステップS214の後の電源オフ状態において、第1電子機器10が、判定処理として更新後のプログラムを用いた所定の動作テストを行い、この結果が許容外であった場合に復旧指示を行い、電源オン状態に一度も移行しないまま、ステップS303以降の処理が実行されてもよい。
以上、本実施形態に係る処理について説明したが、各処理は適宜変形可能である。例えばサーバー200は、第2電子機器20に更新プログラムや現プログラムを送信する代わりに、適宜これらを表す他の形式のデータを送信してもよい。他の形式のデータは限定されず、例えば、更新プログラムの代わりに、現プログラムからの差分データであってもよいし、現プログラムの代わりに更新プログラムからの差分データであってもよい。また、更新プログラム、現プログラム、あるいは差分データの圧縮データであってもよい。また、第2電子機器20から第1電子機器10に送信する更新プログラムや現プログラムの形式も、限定されず、サーバー200から受信したデータをそのまま転送してもよく、例えば圧縮データを展開したデータや、差分データからプログラムを構築したデータのように、サーバー200から受信したデータを変換したデータを送信してもよい。
<効果>
本実施形態においては、サーバー200は、第2電子機器20に第1電子機器10用の更新プログラムを送信する際に、バックアップ用の更新前のプログラムも送信する。第1電子機器10は、更新前のプログラムをバックアップする記憶領域を有しておらず、代わりに第2電子機器20が更新前のプログラムを記憶するが、第2電子機器20は、更新前のプログラムをサーバーから受信するので、第1電子機器10から更新前のプログラムを読み出す必要がない。そのため車内の通信量の増大を抑制しつつ、必要に応じて第1電子機器10を更新前のプログラムに復旧することができる。
車内の通信量が増大することを抑制できるので、車内通信用の通信線の通信帯域が逼迫せず、電子機器間の通信の支障が発生するリスクを抑制できる。また、一般にサーバー200のような外部の装置と車両100内の電子機器との間の通信速度は、車両100内の電子機器間の通信速度より速いため、第2電子機器20が更新プログラムをサーバー200から受信する場合、第1電子機器10から読み出す場合に比べて、プログラム更新に要する総所要時間を短縮することができる。
本発明は、プログラム更新システム、プログラム送信装置およびプログラム送信方法、プログラム更新システムの各部が備えるコンピュータが実行する方法、プログラムおよびこれを記憶したコンピュータ読み取り可能な非一時的記憶媒体、プログラム更新システムに含まれるネットワークシステムを備えた車両等として捉えることが可能である。
本発明は、車両等の電子機器のプログラム更新システムに有用である。
1 プログラム更新システム
10 第1電子機器
11 制御部
12 記憶部
20 第2電子機器
21 制御部
22 記憶部
23 通信部
100 車両
101 ネットワークシステム
200 サーバー
201 制御部
202 記憶部
203 通信部

Claims (5)

  1. 車両と、前記車両に搭載される電子機器のプログラムを送信する、前記車両と通信可能なプログラム送信装置とを備えるプログラム更新システムであって、
    前記車両は、第1電子機器と、前記プログラム送信装置から受信するデータを記憶可能な第2電子機器とを含み、
    前記第1電子機器は、前記第1電子機器が実行するプログラムの現在のバージョンである現プログラムと前記現プログラムの更新版である更新プログラムとを同時に記憶可能な記憶領域を有さず、
    前記第2電子機器は、前記プログラム送信装置および前記第1電子機器と通信可能であり、前記現プログラムと前記更新プログラムとを同時に記憶可能な記憶領域を有し、
    前記プログラム送信装置は、前記車両から要求を受信すると、前記更新プログラムを表すデータおよび前記現プログラムを表すデータを前記車両に送信し、
    前記車両の前記第2電子機器は、前記更新プログラムを表すデータおよび前記現プログラムを表すデータを受信すると、前記更新プログラムを表すデータおよび前記現プログラムを表すデータを記憶し、
    前記車両の前記第2電子機器は、記憶した前記更新プログラムを表すデータに基づいて、前記車両の前記第1電子機器が記憶しているプログラムを前記現プログラムから前記更新プログラムに変更する更新処理を実行し、
    前記車両の前記第2電子機器は、前記更新処理の後、所定の判定処理の結果またはユーザー指示に応じて、記憶した前記現プログラムを表すデータにより、前記車両の前記第1電子機器が記憶しているプログラムを前記現プログラムに復旧することが可能であり、
    前記車両の前記第2電子機器は、前記更新処理の実行後、少なくとも1回、前記車両の電源がオンとなりその後オフとなった後、前記第2電子機器が記憶している前記現プログラムを削除する、プログラム更新システム。
  2. 前記更新プログラムを表すデータは、前記更新プログラムの前記現プログラムからの差分を表すデータである、請求項1に記載のプログラム更新システム。
  3. 前記現プログラムを表すデータは、前記現プログラムの前記更新プログラムからの差分を表すデータである、請求項1または2に記載のプログラム更新システム。
  4. 前記所定の判定処理は、前記車両の電源がオンとなっている間の前記第1電子機器の動作に基づいて行われる、請求項1~3のいずれかに記載のプログラム更新システム。
  5. 車両と、前記車両に搭載される電子機器のプログラムを送信する、前記車両と通信可能なプログラム送信装置と、を備えるプログラム更新システムによって実行されるプログラム更新方法であって、
    前記車両は、第1電子機器と、前記プログラム送信装置から受信するデータを記憶可能な第2電子機器とを含み、
    前記第1電子機器は、前記第1電子機器が実行するプログラムの現在のバージョンである現プログラムと前記現プログラムの更新版である更新プログラムとを同時に記憶可能な記憶領域を有さず、
    前記第2電子機器は、前記プログラム送信装置および前記第1電子機器と通信可能であり、前記現プログラムと前記更新プログラムとを同時に記憶可能な記憶領域を有し、
    前記プログラム送信装置は、前記車両から要求を受信すると、前記更新プログラムの前記現プログラムからの差分を表すデータである更新プログラムを表すデータおよび前記現プログラムの前記更新プログラムからの差分を表すデータである現プログラムを表すデータを前記車両に送信するステップと、
    前記車両の前記第2電子機器は、前記更新プログラムを表すデータおよび前記現プログラムを表すデータを受信すると、前記更新プログラムを表すデータおよび前記現プログラムを表すデータを記憶するステップと、
    前記車両の前記第2電子機器は、記憶した前記更新プログラムを表すデータに基づいて、前記車両の前記第1電子機器が記憶しているプログラムを前記現プログラムから前記更新プログラムに変更する更新処理を実行するステップと、
    前記車両の前記第2電子機器は、前記更新処理の後、所定の判定処理の結果またはユーザー指示に応じて、記憶した前記現プログラムを表すデータにより、前記車両の前記第1電子機器が記憶しているプログラムを前記現プログラムに復旧するステップと、
    前記車両の前記第2電子機器は、前記更新処理の実行後、少なくとも1回、前記車両の電源がオンとなりその後オフとなった後、前記第2電子機器が記憶している前記現プログラムを削除するステップと、を含む、プログラム更新方法。
JP2019184535A 2019-10-07 2019-10-07 プログラム更新システムおよびプログラム更新方法 Active JP7298427B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2019184535A JP7298427B2 (ja) 2019-10-07 2019-10-07 プログラム更新システムおよびプログラム更新方法
EP20181089.2A EP3805918B1 (en) 2019-10-07 2020-06-19 Program update system, program transmission device, and program transmission method
CN202410345185.3A CN118069188A (zh) 2019-10-07 2020-06-24 电子装置和程序更新***
CN202010591045.6A CN112698851B (zh) 2019-10-07 2020-06-24 程序更新***、程序传送装置和程序传送方法
US16/914,590 US11714628B2 (en) 2019-10-07 2020-06-29 Program update system, program transmission device, and program transmission method
US18/207,743 US20230315436A1 (en) 2019-10-07 2023-06-09 Program update system, program transmission device, and program transmission method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019184535A JP7298427B2 (ja) 2019-10-07 2019-10-07 プログラム更新システムおよびプログラム更新方法

Publications (2)

Publication Number Publication Date
JP2021060797A JP2021060797A (ja) 2021-04-15
JP7298427B2 true JP7298427B2 (ja) 2023-06-27

Family

ID=71111340

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019184535A Active JP7298427B2 (ja) 2019-10-07 2019-10-07 プログラム更新システムおよびプログラム更新方法

Country Status (4)

Country Link
US (2) US11714628B2 (ja)
EP (1) EP3805918B1 (ja)
JP (1) JP7298427B2 (ja)
CN (2) CN118069188A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7407400B2 (ja) 2017-03-31 2024-01-04 パナソニックIpマネジメント株式会社 配線器具用ケース、及びそれを備える配線器具装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7232785B2 (ja) * 2020-02-19 2023-03-03 株式会社デンソー データ配信装置、データ配信システム及びデータ配信プログラム
EP4317500A1 (en) 2021-03-31 2024-02-07 Sumitomo Chemical Company Limited Negative electrode for lithium secondary battery, and lithium secondary battery

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000207681A (ja) 1999-01-18 2000-07-28 Fujitsu Ten Ltd 車載端末用プログラムの復旧方式
JP2014191574A (ja) 2013-03-27 2014-10-06 Denso Corp 車両用電子制御装置、及び制御プログラム
JP2017097851A (ja) 2015-11-13 2017-06-01 株式会社東芝 中継装置、中継方法およびプログラム
JP2019074847A (ja) 2017-10-13 2019-05-16 株式会社デンソー 電子制御装置
JP2019084941A (ja) 2017-11-06 2019-06-06 トヨタ自動車株式会社 更新システム、電子制御装置、更新管理装置、及び更新管理方法
JP2019105945A (ja) 2017-12-11 2019-06-27 株式会社オートネットワーク技術研究所 車載更新装置、プログラム及び、プログラム又はデータの更新方法

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7366589B2 (en) * 2004-05-13 2008-04-29 General Motors Corporation Method and system for remote reflash
US8638207B2 (en) * 2007-08-09 2014-01-28 Drew Technologies Modular vehicular diagnostic tool
JP2010207681A (ja) * 2009-03-09 2010-09-24 Toshiba Corp 油分吸着材、及び油分回収方法
US8412406B2 (en) * 2010-08-13 2013-04-02 Deere & Company Method and system for performing diagnostics or software maintenance for a vehicle
US11150885B2 (en) * 2012-08-22 2021-10-19 Transportation Ip Holdings, Llc Method and system for vehicle software management
US10162625B2 (en) * 2015-04-14 2018-12-25 Ford Global Technologies, Llc Vehicle control storage methods and systems
JP6723829B2 (ja) * 2015-09-14 2020-07-15 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America ゲートウェイ装置、ファームウェア更新方法及び制御プログラム
JP6675271B2 (ja) * 2015-09-14 2020-04-01 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America ゲートウェイ装置、車載ネットワークシステム及びファームウェア更新方法
US10880404B2 (en) * 2015-09-29 2020-12-29 Hitachi Automotive Systems, Ltd. On-vehicle control device and on-vehicle control device information update system
US10437680B2 (en) * 2015-11-13 2019-10-08 Kabushiki Kaisha Toshiba Relay apparatus, relay method, and computer program product
JP6361671B2 (ja) * 2016-03-02 2018-07-25 住友電気工業株式会社 プログラム更新システム、プログラム更新方法、中継装置及びコンピュータプログラム
CN107332867A (zh) * 2016-04-29 2017-11-07 杭州三花研究院有限公司 车载设备、该车载设备的更新***及更新方法
US20170315797A1 (en) * 2016-05-02 2017-11-02 Ford Global Technologies, Llc Vehicle connection location regional software delivery
JP6696468B2 (ja) * 2016-08-30 2020-05-20 株式会社オートネットワーク技術研究所 車載更新装置及び車載更新システム
JP6756225B2 (ja) * 2016-10-04 2020-09-16 株式会社オートネットワーク技術研究所 車載更新システム、車載更新装置及び更新方法
US10782955B2 (en) * 2017-01-03 2020-09-22 Ford Global Technologies, Llc Pre-shutdown swap verification
JP6784636B2 (ja) * 2017-04-13 2020-11-11 日立オートモティブシステムズ株式会社 制御装置、プログラム更新システム、プログラム更新方法
US10496469B2 (en) * 2017-07-25 2019-12-03 Aurora Labs Ltd. Orchestrator reporting of probability of downtime from machine learning process
US10678530B2 (en) * 2018-01-09 2020-06-09 Ford Global Technologies, Llc Vehicle update systems and methods
JP6969410B2 (ja) * 2018-01-26 2021-11-24 トヨタ自動車株式会社 車載中継装置、中継方法、情報処理システム、及び車両
JP7047444B2 (ja) * 2018-02-16 2022-04-05 トヨタ自動車株式会社 車両制御装置、電子制御ユニット、制御方法、制御プログラム、車両、otaマスタ、システム及びセンタ
JP6962252B2 (ja) * 2018-03-23 2021-11-05 株式会社オートネットワーク技術研究所 プログラム更新システム、プログラム更新方法及びコンピュータプログラム
US20190324858A1 (en) * 2018-04-24 2019-10-24 GM Global Technology Operations LLC Rollback recovery from partial failure in multiple electronic control unit over-the-air updates
US20190394046A1 (en) * 2018-06-22 2019-12-26 Sf Motors, Inc. Secure firmware updates for remote vehicles
JP7003975B2 (ja) * 2018-08-10 2022-01-21 株式会社デンソー 車両情報通信システム,センター装置及びセンター装置のメッセージ送信方法
WO2020032200A1 (ja) * 2018-08-10 2020-02-13 株式会社デンソー センター装置,諸元データの生成方法及び諸元データ生成用プログラム
JP6973449B2 (ja) * 2018-08-10 2021-12-01 株式会社デンソー 車両用電子制御システム、配信パッケージのダウンロード判定方法及び配信パッケージのダウンロード判定プログラム
US11163549B2 (en) * 2018-08-10 2021-11-02 Denso Corporation Vehicle information communication system
CN109471652A (zh) * 2018-10-24 2019-03-15 北汽福田汽车股份有限公司 车辆的程序更新方法及其***、车载终端和电子设备
EP3742295A1 (en) * 2019-05-23 2020-11-25 NXP USA, Inc. Automatic firmware rollback

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000207681A (ja) 1999-01-18 2000-07-28 Fujitsu Ten Ltd 車載端末用プログラムの復旧方式
JP2014191574A (ja) 2013-03-27 2014-10-06 Denso Corp 車両用電子制御装置、及び制御プログラム
JP2017097851A (ja) 2015-11-13 2017-06-01 株式会社東芝 中継装置、中継方法およびプログラム
JP2019074847A (ja) 2017-10-13 2019-05-16 株式会社デンソー 電子制御装置
JP2019084941A (ja) 2017-11-06 2019-06-06 トヨタ自動車株式会社 更新システム、電子制御装置、更新管理装置、及び更新管理方法
JP2019105945A (ja) 2017-12-11 2019-06-27 株式会社オートネットワーク技術研究所 車載更新装置、プログラム及び、プログラム又はデータの更新方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7407400B2 (ja) 2017-03-31 2024-01-04 パナソニックIpマネジメント株式会社 配線器具用ケース、及びそれを備える配線器具装置

Also Published As

Publication number Publication date
US20210103435A1 (en) 2021-04-08
CN112698851A (zh) 2021-04-23
EP3805918A1 (en) 2021-04-14
EP3805918B1 (en) 2023-06-28
US11714628B2 (en) 2023-08-01
JP2021060797A (ja) 2021-04-15
US20230315436A1 (en) 2023-10-05
CN118069188A (zh) 2024-05-24
CN112698851B (zh) 2024-04-12

Similar Documents

Publication Publication Date Title
JP7298427B2 (ja) プログラム更新システムおよびプログラム更新方法
US10437680B2 (en) Relay apparatus, relay method, and computer program product
CN110178114B (zh) 车辆控制装置以及程序更新***
EP2375323A1 (en) Firmware image update and management
JP6571602B2 (ja) 車両制御装置、車載ネットワークシステム
CN106775610B (zh) 一种电子设备启动方法及一种电子设备
CN112416406B (zh) 终端设备升级方法、装置、终端设备和介质
CN111240722B (zh) 空中升级固件的方法及其所应用的终端、服务器及***
US11449329B2 (en) Vehicle control device and program update system
CN106095474A (zh) 用于更新运输工具中的软件的方法和装置
US20220276851A1 (en) Vehicle controller, updated program, program updating system, and writing device
JP5966995B2 (ja) 車両用電子制御装置、及び制御プログラム
US20220244946A1 (en) Ota master, update control method, non-transitory storage medium, and vehicle
US20220391192A1 (en) Ota master, center, system, method, non-transitory storage medium, and vehicle
KR20200121657A (ko) 차량의 업데이트 제공 장치 및 방법
CN114915554A (zh) 远程升级方法、装置、计算机设备和存储介质
CN114003242A (zh) 软件更新装置、更新控制方法、非临时存储介质及服务器
KR101436135B1 (ko) 하부장치에 대한 소프트웨어 업데이트 장치
CN116149906A (zh) 车辆里程信息的备份方法、装置、车辆及存储介质
CN112988201A (zh) 程序更新方法、装置以及电子设备
CN116483409A (zh) 一种远程固件更新的方法、***、电子设备及存储介质
CN116204209A (zh) 一种ota升级方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211020

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220817

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220823

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220906

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230119

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: 20230516

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230529

R151 Written notification of patent or utility model registration

Ref document number: 7298427

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151