JP2018063659A - ソフトウェア更新装置、ソフトウェア更新方法、ソフトウェア更新システム - Google Patents
ソフトウェア更新装置、ソフトウェア更新方法、ソフトウェア更新システム Download PDFInfo
- Publication number
- JP2018063659A JP2018063659A JP2016202767A JP2016202767A JP2018063659A JP 2018063659 A JP2018063659 A JP 2018063659A JP 2016202767 A JP2016202767 A JP 2016202767A JP 2016202767 A JP2016202767 A JP 2016202767A JP 2018063659 A JP2018063659 A JP 2018063659A
- Authority
- JP
- Japan
- Prior art keywords
- update
- recovery
- ecu
- software
- control information
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 157
- 238000011084 recovery Methods 0.000 claims abstract description 477
- 230000005856 abnormality Effects 0.000 claims abstract description 27
- 230000008569 process Effects 0.000 claims description 73
- 238000003672 processing method Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 abstract description 89
- 238000010586 diagram Methods 0.000 description 84
- 238000004891 communication Methods 0.000 description 53
- 230000015654 memory Effects 0.000 description 35
- 238000007726 management method Methods 0.000 description 32
- 230000006835 compression Effects 0.000 description 22
- 238000007906 compression Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 22
- 238000001994 activation Methods 0.000 description 18
- 230000004913 activation Effects 0.000 description 17
- 238000012546 transfer Methods 0.000 description 16
- 230000004044 response Effects 0.000 description 13
- 230000004048 modification Effects 0.000 description 10
- 238000012986 modification Methods 0.000 description 10
- 238000012508 change request Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 230000007704 transition Effects 0.000 description 6
- 238000012790 confirmation Methods 0.000 description 5
- 238000013523 data management Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 102100021568 B-cell scaffold protein with ankyrin repeats Human genes 0.000 description 2
- 101000971155 Homo sapiens B-cell scaffold protein with ankyrin repeats Proteins 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000004378 air conditioning Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 125000000524 functional group Chemical group 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000000848 angular dependent Auger electron spectroscopy Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000009423 ventilation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1433—Saving, restoring, recovering or retrying at system level during software upgrading
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60L—PROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
- B60L3/00—Electric devices on electrically-propelled vehicles for safety purposes; Monitoring operating variables, e.g. speed, deceleration or energy consumption
- B60L3/0023—Detecting, eliminating, remedying or compensating for drive train abnormalities, e.g. failures within the drive train
- B60L3/0061—Detecting, eliminating, remedying or compensating for drive train abnormalities, e.g. failures within the drive train relating to electrical machines
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60L—PROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
- B60L3/00—Electric devices on electrically-propelled vehicles for safety purposes; Monitoring operating variables, e.g. speed, deceleration or energy consumption
- B60L3/0023—Detecting, eliminating, remedying or compensating for drive train abnormalities, e.g. failures within the drive train
- B60L3/0076—Detecting, eliminating, remedying or compensating for drive train abnormalities, e.g. failures within the drive train relating to braking
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60L—PROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
- B60L3/00—Electric devices on electrically-propelled vehicles for safety purposes; Monitoring operating variables, e.g. speed, deceleration or energy consumption
- B60L3/12—Recording operating variables ; Monitoring of operating variables
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
- B60R16/02—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1658—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2097—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60L—PROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
- B60L2270/00—Problem solutions or means not otherwise provided for
- B60L2270/40—Problem solutions or means not otherwise provided for related to technical updates when adding new parts or software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Life Sciences & Earth Sciences (AREA)
- Sustainable Development (AREA)
- Sustainable Energy (AREA)
- Power Engineering (AREA)
- Transportation (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
Description
たとえば、特許文献1には、実行ソフトウェアを格納するエリアを2面用意し、ソフトウェアの更新異常が発生した場合に、正常なソフトウェアを選択して実行することで更新異常時もシステムに影響を与えない技術が開示されている。
本発明の第2の態様によるソフトウェア更新方法は、制御装置と接続されるソフトウェア更新装置により実行され、前記制御装置のソフトウェアを更新前状態から更新完了状態へと遷移させる更新処理を行うことと、リカバリ制御情報を取得することと、前記更新処理の異常により前記ソフトウェアが前記更新完了状態へと遷移されていない場合に、前記リカバリ制御情報に基づき前記ソフトウェアを前記更新完了状態に遷移させるリカバリ処理を実行することとを有する。
本発明の第3の態様にソフトウェア更新システムは、上記ソフトウェア更新装置と、前記ソフトウェア更新装置に前記リカバリ制御情報を送信するサーバとを備える。
以下、図1〜図24を参照して、第1の実施の形態に係るソフトウェア更新システムを説明する。なお本実施の形態ではソフトウェアの更新について説明するが、ソフトウェアに限定されずパラメータやデータなどに適用可能である。
本実施の形態におけるソフトウェアの「更新」と「リカバリ」を以下のように定義する。すなわち本実施の形態におけるソフトウェアの「更新」とは、ソフトウェアを更新前状態から更新完了状態へと遷移させることである。また本実施の形態におけるソフトウェアの「リカバリ」とは、更新処理の異常によりソフトウェアが更新完了状態へと遷移されていない場合に、更新完了状態に遷移させることである。
ただしソフトウェアは、単一のプログラムから構成されてもよいし、複数のプログラムから構成されてもよい。さらにソフトウェアはプログラムだけでなくプログラムの実行に必要な各種パラメータ、テキスト情報、音声情報、画像情報などを含んでいてもよい。
(システム構成)
図1は、第1の実施の形態にかかるソフトウェア更新システムSの構成を示す図である。ソフトウェア更新システムSは車両1、およびサーバ2を備える。車両1とサーバ2は、アクセスネットワークや拠点を接続するインターネット3、および通信サービスプロバイダが提供するアクセスネットワーク4を介して接続される。
車両1は、ゲートウェイ10、通信モジュール11、Human Machine Interface(HMI)12、エンジン制御ECU13、ブレーキ制御ECU14、自動運転ECU15、先進運転支援システム(ADAS) ECU16、エアバッグECU17、Heating Ventilation Air Conditioning(HVAC) ECU18、および車両管理ECU19等の車両1が走行等の機能を実現するために必要とするECU群と、これらECU群をつなぐ車内ネットワーク10a、10bとを備える。
車内ネットワークはControl Area Network(CAN)(登録商標)、Local Interconnect Network(LIN)、FlexRay、Ethernet(登録商標)などで構成される。本実施の形態では、車内ネットワーク10bはCANで、車内ネットワーク10aはEthernetで構成される。また、図1では図示しないが、各種ECUなどの車両内の各構成要素は電力線で蓄電池に接続され、電力供給を受けている。
通信モジュール11は、ゲートウェイ10やHMI12、各種ECUとサーバ2との通信を中継する。HMI12は、車両1の乗員であるユーザへの情報提示やユーザからの入力を受け付けるための装置であり、画面表示を行う表示装置および各種スイッチ等の入力装置、またはこれらを組み合わせたタッチパネル等により構成される。エンジン制御ECU13は、エンジンの制御を行う。ブレーキ制御ECU14は、ブレーキの制御を行う。自動運転ECU15は、自動運転時に環境の認識や車両の起動指示等を行う。ADAS ECU16は、自動ブレーキなどの運転支援制御を行う。エアバッグECU17は、エアバッグの制御を行う。HVAC ECU18は、車内の空調制御を行う。車両管理ECU19は、車両状態の管理を行う。
図2(a)は、ゲートウェイ10のハードウェア構成を示すブロック図である。ゲートウェイ10は、マイコン101、FROM(FlashROM)102、CAN用の通信I/F104、およびEthernet用の通信I/F105を備える。
マイコン101は、CPU1011、SRAM1012、FROM1013、CAN通信コントローラ1014、およびEthernet通信コントローラ1015を備える。マイコン101のCPU1011は、FROM1013に格納されるプログラムを実行し、ゲートウェイ10内の他の構成要素を制御するとともに、車内ネットワークにより接続された他の機器とデータ送受信指示を行うなどしてゲートウェイ10を機能させる。
通信I/F104は、CAN通信用のインタフェースであり、マイコン101の指示に基づき車内ネットワーク10bを介して、車内ネットワーク10bに接続されたECUとの間でデータの送受信を行う。
通信I/F105は、Ethernet通信用のインタフェースであり、マイコン101の指示に基づき車内ネットワーク10aを介して、車内ネットワーク10aに接続された機器との間でデータの送受信を行う。
ゲートウェイ10の機能を実現するゲートウェイプログラム100は、マイコン101のFROM1013に格納されCPU1011により実行される。図2(b)では、機能的なまとまりをブロックとして表現しており、各ブロックが複数に分割されてもよいし、いくつかのブロックが統合されてもよい。また制御プログラムは、1つのソフトウェアにより実現されてもよいし、2以上のソフトウェアの組合せにより実現されてもよい。
ゲートウェイプログラム100は、更新制御部10001、更新データ管理部10002、更新状態管理部10003、リカバリ制御部10004、リカバリ制御情報管理部10005、車両状態管理部10006、および通信制御部10007を含む。
更新状態管理部10003は、更新制御部10001から更新状態を取得し、FROM1013に更新状態D1として格納する。また、格納した更新状態D1をリカバリ制御部10004に提供する。
リカバリ制御部10004は、通信制御部10007を介して車内ネットワーク10bに接続された機器と通信を行い、ECUを制御してソフトウェアのリカバリ処理を実施する。ここで、ECUのリカバリ処理は、更新状態管理部10003を介して取得した更新状態D1と、リカバリ制御情報管理部10005を介して取得したリカバリ制御情報502と、車両状態管理部10006を介して取得した車両システム状態に基づいて実施される。
車両状態管理部10006は、通信制御部10007を介して車内ネットワーク10aおよび10bに接続された機器と通信を行い車両システムの状態を取得し、車両状態を更新制御部10001及びリカバリ制御部10004に提供する。車両状態とはたとえば、イグニッションのオンやオフ、走行の開始などである。
更新状態D1は、ECU ID D101、更新開始状態D102、処理中ブロックD103、完了コマンドD104、成功ブロックD105のフィールドを備える。
ここではレコードD11とレコードD12の2つのレコードを説明したが、これらのレコードは次の場合に作成される。すなわち、ゲートウェイ10が受信した更新パッケージ5において、更新対象のECUとして記載されていた場合に作成される。またこの更新状態D1は後述するように逐次記録される。このように、更新状態D1を逐次記録することにより、更新中断後に正常に復帰して起動した際に更新が完了せずに中断していることや、更新が中断された箇所を認識して適切なリカバリ処理を開始することができる。
図4(a)は、エンジン制御ECU13のハードウェア構成例を示すブロック図である。ただし本実施の形態においてソフトウェアが更新される対象となるECUはいずれも、少なくとも図4(a)に示すハードウェア構成を備える。エンジン制御ECU13は、マイコン131、およびCAN用の通信I/F133を備える。
マイコン131は、CPU1311、SRAM1312、FROM1313、通信コントローラ1314、およびI/Oコントローラ1315を備える。マイコン131は、FROM1313に格納される制御プログラムを実行し、エンジン制御ECU13内の他の構成要素やI/Oを介して接続されたセンサ/アクチュエータ132を制御するとともに、車内ネットワークで接続された他の機器とデータ送受信指示を行うなどしてエンジン制御を実施する。センサ/アクチュエータ132は、マイコン131の指示によってエンジン制御に必要となるデータを取得しつつ、エンジンの制御を実行する。
ECU13の機能を実現する制御プログラム130は、マイコン131のFROM1313に格納されCPU1311で実行される。図4(b)では、機能的なまとまりをブロックとして表現しており、各ブロックが複数に分割されてもよいし、いくつかのブロックが統合されてもよい。また制御プログラムは、1つのソフトウェアにより実現されてもよいし、2以上のソフトウェアの組合せにより実現されてもよい。
更新制御部13001は、通信制御部10005を介してゲートウェイ10からの動作指令やソフトウェアの更新に用いるデータを受信し、差分/圧縮復元部13002およびFROM制御部13004を制御してソフトウェアの更新を制御する。差分/圧縮復元部13002は、更新制御部13001の指示に従い、受信した差分データや圧縮データから最新版のソフトウェア、すなわちバージョン3のソフトウェアを復元する。
FROM1313は、プログラムエリア1313aP0およびDataエリア1313aD0から構成される。
プログラムエリア1313aP0は、複数のブロックBlock0〜BlockNで構成され、ブートローダP1と制御プログラムP2が格納される。この制御プログラムP2のバージョンは、現行のバージョン2(図中では「Ver.2」と記載)である。Dataエリア1313aD0には、パラメータD2が格納される。パラメータD2は、更新状態D21、および制御パラメータD22を含む。更新状態D21は、ソフトウェア更新の進捗等の状態を示す情報であり、後に詳述する。制御パラメータD22は、ECU本来のエンジン制御やブレーキ制御のために利用するパラメータ群である。
FROM1313は、プログラムエリアおよびDataエリア1313bD0から構成される。プログラムエリアは2つの領域、すなわちBANK0とBANK1から構成され、以下ではそれぞれをプログラムエリア1313bP0、プログラムエリア1313bP1と呼ぶ。
Dataエリア1313bD0には、パラメータD3が格納される。パラメータD3は、更新状態D21、制御パラメータD22、および起動情報D33を含む。
起動情報D33には、2つのプログラムエリアのいずれに記録された制御プログラムを実行するかが設定され、たとえば「プログラムエリア1313bP0」や「プログラムエリア1313bP1」が設定される。更新状態D21、および制御パラメータD22は前述のとおりである。
更新制御情報501は、1つの共通更新制御情報5011と、1つ以上のECU更新制御情報5012と、1つ以上のECU更新データ5013から構成される。ECU更新制御情報5012、およびECU更新データ5013は、更新対象であるECUごとに存在し、共通更新制御情報5011は更新対象であるECUの台数に関わらず1つのみ存在する。
共通更新制御情報5011には、車両システム全体の状態確認に用いられる手順や閾値等の情報が含まれる。たとえば共通更新制御情報5011には、更新開始に必要な状態確認として、電池残量の確認や開始可能な残量閾値、HVACの有無の確認、車両走行状態の確認、に必要なECU IDやCAN ID、確認コマンドの情報が含まれる。
ECU更新データ5013は、更新対象のECU毎に構成されるECUのソフトウェア更新に用いられるデータであり、たとえばソフトウェアそのもの、圧縮されたソフトウェアまたは新旧ソフトウェアの差分データである。
ECUリカバリデータ5022は、ECUのリカバリに追加データが必要な場合に付与されるデータであり、ソフトウェアそのもの、圧縮されたソフトウェアまたはBlock単位でソフトウェアのXORから生成したバックアップデータ等を備える。
ECU ID50211は、ECUを識別するための情報である。リカバリ開始タイミング50212は、ゲートウェイ10によるリカバリ処理を開始するタイミングを示す。リカバリ開始タイミング50212はたとえば、システムが異常から復旧した直後を示す「即時」、走行を開始して電源供給が安定した後を示す「走行開始」、次にエンジンが動作状態から停止状態に遷移するときを示す「IGN−OFF」などが設定される。
リカバリ方式50214は、当該ECUに対してどのような手順でリカバリを行うかを示し、「差分リジューム」、「圧縮リカバリ」、「サーバ連携」、「ブロックリカバリ」、などが設定される。「差分リジューム」は、異常中断した箇所から差分更新を再開するリカバリ処理の方式である。「圧縮リカバリ」は、圧縮されたソフトウェアをリカバリ制御情報502にECUリカバリデータ5022として同梱し、これを用いてソフトウェア全体を置き換えるいわゆるフル更新を行うリカバリ処理の方式である。「サーバ連携」は、サーバ2から圧縮されたソフトウェアを再ダウンロードしていわゆるフル更新を行うリカバリ処理の方式である。「ブロックリカバリ」は、ソフトウェアを複数のブロックに分割し各ブロックのXORを算出して得られたブロックXORデータをECUリカバリデータ5022として同梱し、ソフトウェアの欠損部分をブロックXORデータと欠損のないブロックから回復するリカバリ処理の方式である。
サーバ2のオペレータは、エンジン制御ECU13の新たなソフトウェアが作成されると、このソフトウェアをエンジン制御ECU13に配信するための準備を行い、更新パッケージ5を作成してサーバ2に登録する(S1)。なお更新パッケージ5の作成はオペレータが行ってもよいし、作成された新たなソフトウェアと設定ファイルに基づきサーバ2が行ってもよい。
以下の説明において、ゲートウェイ10におけるデータの送受信は通信制御部10007を介して行われるものとし、エンジン制御ECU13におけるデータの送受信は通信制御部13005を介して行われるものとする。
このように、更新状態を逐次記録することで、更新中断後、正常に復して起動した時に更新が完了せずに中断していること、および更新がどこまで進んだ状態で中断したか、を認識して適切なリカバリ処理を開始することができる。
図9(a)は、メモリの少ないECUにおける復元処理S407の処理を示す概念図である。差分/圧縮復元部13002は、更新制御部13001から復元指示を受けると、ゲートウェイ10から受信し、SRAM1312に格納された更新データ5013aの一部を読み出す。圧縮更新の場合は、更新データは圧縮されているため、これを伸長し復元領域D5にバージョン3の制御プログラムP22として出力する。差分更新の場合は、更新データは差分データであるため、差分/圧縮復元部13002はまず復元のために必要な現行のバージョン2の制御プログラムP21の一部または全部を読み出す。そして差分/圧縮復元部13002は、これらを組み合わせてバージョン3の制御プログラムP22を復元し、復元領域D5に出力する。
ただし、差分データが十分小さくメモリの余剰領域に格納できる場合は、必ずしも本手順に従い逐次復元する必要はなく、すべてのデータを受信後に復元処理を開始してもよい。しかしながらいずれの場合においても、実行中の制御プログラムを上書きする必要があるため、更新が中断した場合、制御プログラムは正常に動作しなくなる。
以上のように、2つ分の制御プログラムを格納するメモリを備えたECUの更新を行う場合は、制御プログラムの格納領域を2重化し、現在実行している制御プログラムを格納している領域とは別の領域に制御プログラムを復元・格納することで、更新が中断した場合も、実行中の制御プログラムを破損せず、正常動作を継続することができる。
図10(a)は、メモリの少ないECUの起動シーケンス図である。
メモリの少ないECUでは、最初にブートローダP1が起動される(S601)。ブートローダP1は、プログラムエリアに格納されている制御プログラムP2を検証する(S602)。検証の結果、制御プログラムP2に問題がないと判断されると(S603:YES)制御プログラムP2が起動される(S604)。また、検証の結果、制御プログラムP2に問題があると判断すると、制御プログラムP2を実行せずに緊急モードとしてゲートウェイ10からの制御指示を待つ(S605)。この時、緊急モード特有の設定としてISO15765−2で規定される転送パラメータであるBlock Sizeを0に設定し、CANフレームのバースト転送を実施してもよい。これにより、通信の効率化を図ることができる。なお制御プログラムP2に問題があると判断する場合とは、たとえばソフトウェアが存在しない場合や、検証結果が異常な場合である。
メモリの多いECUでは、最初にブートローダP3が起動される(S651)。ブートローダP3はDataエリア1313bD0のパラメータD3内の起動情報D33を読み出し(S652)、起動情報D33に記録された制御プログラムを実行する(S653)。たとえば起動情報D33が「プログラムエリア1313bP0」である場合は、プログラムエリア1313bP0上のバージョン2の制御プログラムP4を実行する。
ゲートウェイ10のリカバリ制御部10004は、ゲートウェイ10が起動すると更新状態管理部10003を介して更新状態D1に記録された更新開始状態D102を取得する(S701)。リカバリ制御部10004は、更新が開始済みのECUが存在しない、すなわち、中断した更新がないと判断する場合(S702:NO)は、通常のゲートウェイ10の起動処理を行う(S713)。
開始タイミング50212が「即時」であると判断する場合(S705:YES)は、リカバリ制御情報5021の表示内容50213に従って、HMI12に「緊急」の画面表示の指令を出力し(S706)、リカバリ処理を開始する(S707)。ただしこの場合はリカバリ処理を一刻も早く開始するために、HMI12への指令はリカバリ処理を開始してからでもよいし、2つの処理を同時に実行してもよい。リカバリ処理S707の詳細は後述する。
一方、表示内容が「警告」であると判断する場合は、HMI12に「警告」の画面表示要求を行う(S711)。画面表示要求送信後は、走行開始やIGN−OFF等の更新開始トリガを待つ(S712)。その後、更新開始のトリガイベント発生を検出したら、リカバリ処理を開始する(S707)。リカバリ処理S707が完了すると、通常起動処理を行う(S713)。
ゲートウェイ10のリカバリ制御部10004は、リカバリ制御情報管理部10005を介して、当該ECU IDに対応するリカバリ制御情報5021から、リカバリ方式50214を取得し(S70701)、ステップS70702に進む。
リカバリ方式50214が「差分リジューム」であると判断する場合(S70702:YES)、リカバリ制御部10004は、更新状態管理部10003を介して更新状態D1に記録された処理中ブロックを取得し(S70703)、ECUとの間で当該ブロックから差分更新処理を再開する(S70704)。
リカバリ制御部10004は、ステップS70707またはS70710で圧縮データを取得後、取得した圧縮データを用いてECUとの間でリカバリ処理を実施する(S70708)。
このように、サーバ2から更新制御情報501と共に更新パッケージ5として送信されるリカバリ制御情報502に基づいて更新異常発生時のリカバリ制御処理を実行することで、リソースや特性の異なる多数のECUからなるシステムで更新異常が発生した場合も、車両システムへの影響に応じて、適切なタイミングでリカバリを開始し、更新中断によるシステムへの影響をユーザに的確に伝達し、更新対象のECUの特性に応じたリカバリシーケンスでリカバリ処理を実行して、ソフトウェアを正常に更新することができる。
以下、図13〜図24を用いて、自動運転ECU15、ADAS ECU16、エンジン制御ECU13、ブレーキ制御ECU14、HVAC ECU18、エアバッグECU17のリカバリ処理の動作例を説明する。
図13および図14を用いて、自動運転ECU15に対応する更新パッケージ5aの構成、HMI12への表示例、および動作シーケンスを説明する。
図13(a)は更新対象が自動運転ECU15のみの場合の更新パッケージ5aの構成を示す図、図13(b)はその更新パッケージ5aに含まれる自動運転ECUリカバリ制御情報5021aの構成を示す図、図13(c)は自動運転ECUリカバリ制御情報5021aに基づくHMI12の表示例を示す図である。
自動運転ECUリカバリ制御情報5021aは、図13(b)に示すように、ECU ID50211aには「自動運転ECU」が設定され、開始タイミング50212aには「走行開始」が設定され、表示内容50213aには「注意喚起」および不図示の表示メッセージ情報が設定され、リカバリ方式50214aには「差分リジューム」が設定され、リカバリデータURI50215aには情報が設定されていないことを意味する「NULL」が設定される。
ゲートウェイ10は起動すると図11に示した処理を開始する。すなわち、最初に、ステップS901aにおいて中断中の更新の有無を確認する(図11のS701、S702、図14のS901a)。
ゲートウェイ10は、更新状態D21の更新開始状態D102から自動運転ECU15の更新が中断していると判定すると(S901a)、ステップS903aにおいて以下の処理を行う。すなわちゲートウェイ10は、自動運転ECU15に該当する自動運転ECUリカバリ制御情報5021aから開始タイミング50212aを読み出し、自動運転ECU15のリカバリ処理を開始するタイミングが、走行開始後であると判定する。
ゲートウェイ10は、更新が中断した旨と中断した更新の再開は走行中に自動的に行われる旨を、HMI12に注意喚起画面を表示させることでユーザに伝達する。また更新状態D1に更新状態が記録されているので、中断ポイントからリカバリの実行を開始、すなわち更新を再開し、迅速に更新を完了することができる。
なお前述の例では、自動運転ECU15の更新が中断した際に、注意喚起画面を表示させる例を示した。しかし、例えば自動運転ECU15の更新が走行中などに完全にバックグラウンドで実施されユーザが意識しない間に完了させる場合、注意喚起画面を表示させないように制御してもよい。この場合、図13の表示内容50213aには、「注意喚起」ではなく「画面表示なし」が設定される。
図15および図16を用いて、ADAS ECU16に対応する更新パッケージ5bの構成、HMI12への表示例、および動作シーケンスを説明する。
図15(a)は更新対象がADAS ECU16のみの場合の更新パッケージ5bの構成を示す図、図15(b)はその更新パッケージ5bに含まれるADAS ECUリカバリ制御情報5021bの構成を示す図、図15(c)はADAS ECUリカバリ制御情報5021bに基づくHMI12の表示例を示す図である。
ADAS ECUリカバリ制御情報5021bは、図15(b)に示すように、ECU ID50211bには「ADAS ECU」が設定され、開始タイミング50212bには「IGN−OFF」が設定され、表示内容50213bには「注意喚起」および不図示の表示メッセージ情報が設定され、リカバリ方式50214bには「差分リジューム」が設定され、リカバリデータURI50215bには情報が設定されていないことを意味する「NULL」が設定される。
ゲートウェイ10は起動すると図11に示した処理を開始する。すなわち、最初に、ステップS901bにおいて中断中の更新の有無を確認する(図11のS701、S702、図16のS901b)。
ゲートウェイ10は、更新状態D21の更新開始状態D102からADAS ECU16の更新が中断していると判定すると(S901b)、ステップS903bにおいて以下の処理を行う。すなわちゲートウェイ10は、ADAS ECU16に該当するADAS ECUリカバリ制御情報5021bから開始タイミング50212bを読み出し、ADAS ECU16のリカバリ処理を開始するタイミングが、IGN−OFFであると判定する。
ゲートウェイ10は、ユーザには更新が中断した旨と、中断した更新の再開はイグニッションオフにより行われる旨をHMI12に注意喚起画面を表示させることでユーザに伝達する。また更新状態D1に更新状態が記録されているので、中断ポイントからリカバリの実行を開始、すなわち更新を再開し、迅速に更新を完了することができる。
図17および図18を用いて、エンジン制御ECU13に対応する更新パッケージ5cの構成、HMI12への表示例、および動作シーケンスを説明する。
図17(a)は更新対象がエンジン制御ECU13のみの場合の更新パッケージ5cの構成を示す図、図17(b)はその更新パッケージ5cに含まれるエンジン制御ECUリカバリ制御情報5021cの構成を示す図、図17(c)はエンジン制御ECUリカバリ制御情報5021cに基づくHMI12の表示例を示す図である。
エンジン制御ECUリカバリ制御情報5021cは、図17(b)に示すように、ECU ID50211cには「エンジン制御ECU」が設定され、開始タイミング50212cには「即時」が設定され、表示内容50213cには「緊急」および不図示の表示メッセージ情報が設定され、リカバリ方式50214cには「差分リジューム」が設定され、リカバリデータURI50215cには情報が設定されていないことを意味する「NULL」が設定される。
ゲートウェイ10は起動すると図11に示した処理を開始する。すなわち、最初に、ステップS901cにおいて中断中の更新の有無を確認する(図11のS701、S702、図18のS901c)。
ゲートウェイ10は、更新状態D21の更新開始状態D102からエンジン制御ECU13の更新が中断していると判定すると(S901c)、ステップS903cにおいて以下の処理を行う。すなわちゲートウェイ10は、エンジン制御ECU13に該当するエンジン制御ECUリカバリ制御情報5021cから開始タイミング50212cを読み出し、エンジン制御ECU13のリカバリ処理を開始するタイミングが即時であると判定する。
図19および図20を用いて、ブレーキ制御ECU14に対応する更新パッケージ5dの構成、HMI12への表示例、および動作シーケンスを説明する。
図19(a)は更新対象がブレーキ制御ECU14のみの場合の更新パッケージ5dの構成を示す図、図19(b)はその更新パッケージ5dに含まれるブレーキ制御ECUリカバリ制御情報5021dの構成を示す図、図19(c)はブレーキ制御ECUリカバリ制御情報5021dに基づくHMI12の表示例を示す図である。
ブレーキ制御ECUリカバリ制御情報5021dは、図19(b)に示すように、ECU ID50211dには「ブレーキ制御ECU」が設定され、開始タイミング50212dには「即時」が設定され、表示内容50213dには「緊急」および不図示の表示メッセージ情報が設定され、リカバリ方式50214dには「圧縮リカバリ」が設定され、リカバリデータURI50215dには情報が設定されていないことを意味する「NULL」が設定される。
ゲートウェイ10は起動すると図11に示した処理を開始する。すなわち、最初に、ステップS901dにおいて中断中の更新の有無を確認する(図11のS701、S702、図20のS901d)。
ゲートウェイ10は、更新状態D21の更新開始状態D102からブレーキ制御ECU14の更新が中断していると判定すると(S901d)、ステップS903dにおいて以下の処理を行う。すなわちゲートウェイ10は、ブレーキ制御ECU14に該当するブレーキ制御ECUリカバリ制御情報5021dから開始タイミング50212dを読み出し、ブレーキ制御ECU14のリカバリ処理を開始するタイミングが即時であると判定する。
図21および図22を用いて、HVAC ECU18に対応する更新パッケージ5eの構成、HMI12への表示例、および動作シーケンスを説明する。
図21(a)は更新対象がHVAC ECU18のみの場合の更新パッケージ5eの構成を示す図、図21(b)はその更新パッケージ5eに含まれるHVAC ECUリカバリ制御情報5021eの構成を示す図、図21(c)はHVAC ECUリカバリ制御情報5021eに基づくHMI12の表示例を示す図である。
HVAC ECUリカバリ制御情報5021eは、図21(b)に示すように、ECU ID50211eには「HVAC ECU」が設定され、開始タイミング50212eには「IGN−OFF」が設定され、表示内容50213eには「警告」および不図示の表示メッセージ情報が設定され、リカバリ方式50214eには「サーバ連携」が設定され、リカバリデータURI50215eにはリカバリデータが格納されているURIである「htttps://example.jp/data」が設定される。
ゲートウェイ10は起動すると図11に示した処理を開始する。すなわち、最初に、ステップS901eにおいて中断中の更新の有無を確認する(図11のS701、S702、図22のS901e)。
ゲートウェイ10は、更新状態D21の更新開始状態D102からHVAC ECU18の更新が中断していると判定すると(S901e)、ステップS903eにおいて以下の処理を行う。すなわちゲートウェイ10は、HVAC ECU18に該当するHVAC ECUリカバリ制御情報5021eから開始タイミング50212eを読み出し、HVAC ECU18のリカバリ処理を開始するタイミングがイグニッションOFFであると判断する。
図23および図24を用いて、エアバッグECU17に対応する更新パッケージ5fの構成、HMI12への表示例、および動作シーケンスを説明する。
図23(a)は更新対象がエアバッグECU17のみの場合の更新パッケージ5fの構成を示す図、図23(b)はその更新パッケージ5fに含まれるエアバッグECUリカバリ制御情報5021fの構成を示す図、図23(c)はエアバッグECUリカバリ制御情報5021fに基づくHMI12の表示例を示す図である。
エアバッグECUリカバリ制御情報5021fは、図23(b)に示すように、ECU ID50211fには「エアバッグECU」が設定され、開始タイミング50212fには「IGN−OFF」が設定され、表示内容50213fには「警告」および不図示の表示メッセージ情報が設定され、リカバリ方式50214fには「ブロックリカバリ」が設定され、リカバリデータURI50215fには情報が設定されていないことを意味する「NULL」が設定される。
ゲートウェイ10は起動すると図11に示した処理を開始する。すなわち、最初に、ステップS901fにおいて中断中の更新の有無を確認する(図11のS701、S702、図24のS901f)。
ゲートウェイ10は、更新状態D21の更新開始状態D102からエアバッグECU17の更新が中断していると判定すると(S901f)、ステップS903fにおいて以下の処理を行う。すなわちゲートウェイ10は、エアバッグECU17に該当するエアバッグECUリカバリ制御情報5021fから開始タイミング50212fを読み出し、エアバッグECU17のリカバリ処理を開始するタイミングがイグニッションOFFであると判定する。
(1)ソフトウェア更新装置、たとえばゲートウェイ10は、制御装置、たとえばECUと接続され、ECUのソフトウェア、たとえば制御プログラムを更新前状態から更新完了状態へと遷移させる更新処理を行う更新制御部10001と、リカバリ制御情報502を取得するリカバリ制御情報管理部10005と、更新処理の異常により制御プログラムが更新完了状態へと遷移されていない場合に、リカバリ制御情報502に基づき制御プログラムを更新完了状態に遷移させるリカバリ処理を実行するリカバリ制御部10004とを備える。
ゲートウェイ10は、リカバリ制御情報502に基づきECUのリカバリ処理を実行するので、リカバリ制御情報502の記載に基づき様々なリカバリ処理を実行可能であり、多様な装置、たとえば多様なECUに対応したリカバリ処理を実行できる。換言すると、リカバリ制御情報502に基づいて更新に異常が発生した際のリカバリ制御処理を実行することで、リソースや特性の異なる多数のECUからなるシステムで更新に異常が発生した場合でも、適切なリカバリ処理を行うことができる。
そのためゲートウェイ10は、リカバリ処理の実行中には車両1の機能がどのように制限されるかをユーザに告知することができ、ユーザに状況を伝達することでユーザの利便性を向上させることができる。
上述した実施の形態では、ゲートウェイ10がそれぞれのECUに搭載された制御プログラムを更新する、いわばソフトウェア更新装置の役割を担っていた。しかし、上述したゲートウェイプログラム100が有する機能が通信モジュール11やHMI12に搭載されていてもよい。さらに、車内ネットワーク10aや10bに接続される、不図示の他の装置がゲートウェイプログラム100が有する機能を備えてもよい。
上述した第1の実施の形態では、ゲートウェイ10がリカバリデータURI50215にアクセスすると圧縮されたソフトウェアが得られるとした。しかしリカバリデータURI50215により識別されるリソースは、更新後のソフトウェアから現行のソフトウェアへロールバックするための差分データ、ソフトウエアのブロックのXORデータ、さらには破損したブロックのデータでもよい。そしてゲートウェイ10は、受信したデータに適合する処理を実行する。
リカバリ制御情報502に含まれるリカバリデータURI50215には、リカバリ方式50214が「サーバ連携」以外の場合は、情報が設定されていないことを意味する「NULL」が設定された。しかしリカバリデータがECUリカバリ制御情報502に含まれる場合には、リカバリデータURI50215にそのことを示す「LOCAL」が設定されてもよい。
第1の実施の形態では、リカバリは更新処理の異常によりソフトウェアが更新完了状態へと遷移されていない場合に、更新完了状態に遷移させることであると定義した。しかし、リカバリを更新処理の異常によりソフトウェアが更新完了状態へと遷移されていない場合に、更新前状態に遷移させることとしてもよい。換言すると、いわゆるロールバックをリカバリとしてもよい。この場合は、ECUリカバリデータ5022にロールバックを実行するために必要な情報、たとえば、更新前のソフトウェアのブロック間のXORデータが含まれ、リカバリ制御部10004はECUリカバリデータ5022を用いてロールバックを実行する。
ゲートウェイ10は、リカバリ処理を実行する際にネットワーク帯域を通常より多く使用してもよい。たとえばゲートウェイ10は、通常は1秒あたりのデータ送信回数、または1秒あたりに送信するデータ量をネットワークの負荷に対して十分な余裕を持った設定とする。そしてゲートウェイ10は、リカバリ処理を実行する際は通常よりも多いデータ送信回数、または通常よりも多いデータ量を許容する。これにより、リカバリ処理を迅速に実行できる。
さらにゲートウェイ10は、全てのリカバリ処理についてネットワーク帯域を通常より多く使用するのではなく、特定の条件下においてのみネットワーク帯域を通常より多く使用してもよい。特定の条件とは、たとえばECUリカバリ制御情報5021の表示内容50213が「緊急」であることや、リカバリ方式50214において帯域を増加させることが明示されていることである。
ECU更新制御情報5012に含まれる更新制御手順と、ECUリカバリ制御情報5021のリカバリ方式50214の組み合わせが、特定の組み合わせであってもよい。たとえば更新制御手順が差分更新であり、リカバリ方式50214が圧縮リカバリの組み合わせであってもよい。
図25は、変形例6において更新対象がブレーキ制御ECU14のみの場合の更新パッケージ5dの構成を示す図である。ブレーキ制御ECU更新制御情報5012dは、図25(b)に示すように、たとえばECUを識別するECU ID50121d、更新を開始するタイミングを示す開始タイミング50122d、更新制御手順を示す更新方式50124dから構成される。更新方式50124dが差分更新なので、ブレーキ制御ECU更新データ5013dは最新ソフトウエアと現行ソフトウエアとの差分データである。リカバリ方式50214dは圧縮リカバリなので、ブレーキ制御ECUリカバリデータ5022dは圧縮された最新ソフトウエアである。
なお、更新制御手順が差分更新であり、リカバリ方式50214がサーバ連携であり、リカバリデータURIに基づき取得されるデータが圧縮された最新版のソフトウエアであってもよい。
また、「リカバリ」の定義を、更新処理の異常によりソフトウェアが更新完了状態へと遷移されていない場合に、更新完了状態または更新前の状態に遷移させることとする場合は、図25に示した例は以下のとおりでもよい。すなわち、ブレーキ制御ECU更新データ5013dは最新ソフトウエアと現行ソフトウエアとの差分データであり、ブレーキ制御ECUリカバリデータ5022dは圧縮された現行のソフトウエアであってもよい。
図26〜図27を参照して、ソフトウェア更新システムSの第2の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、ソフトウェアが更新されるECUにリカバリ制御情報が格納されている点で、第1の実施の形態と異なる。
第2の実施の形態におけるゲートウェイ10のハードウェア構成、およびゲートウェイプログラム100の構成は第1の実施の形態と同様である。ただしゲートウェイプログラム100の動作が後述するように一部異なる。
第2の実施の形態におけるECUのハードウェア構成は第1の実施の形態と同様である。ECUの制御プログラムの構成を説明する。
図26は、第2の実施の形態におけるエンジン制御ECU13上で動作する制御プログラム130の構成を示すブロック図である。ただし本実施の形態においてソフトウェアが更新される対象となるECUはいずれも、少なくとも図26に示す制御プログラム130と同様の構成を備える。
図27は、ゲートウェイ10がエンジン制御ECU13からリカバリ制御情報13007を取得する処理を示すシーケンス図である。ゲートウェイ10は、エンジン制御ECU13の制御ソフトウェアを更新する前、たとえば更新の直前に以下のようにエンジン制御ECU13からリカバリ制御情報13007を取得する。
ゲートウェイ10の更新制御部10001は、エンジン制御ECU13にリカバリ制御情報取得要求を送信する(S801)。エンジン制御ECU13の更新制御部13001は、リカバリ制御情報取得要求を受信すると、リカバリ制御情報13007を読み出し、これをゲートウェイ10に送信する(S802)。これを受信したゲートウェイ10は、受信したリカバリ制御情報13007を用いて第1の実施の形態と同様にリカバリ処理を実行する。
なおここでは、エンジン制御ECU13を例に説明を行ったが、他のECUも同様の構成及びシーケンスで実施できる。
(1)ECUは、当該ECUのリカバリ処理に用いられる情報であるリカバリ制御情報13007の記憶領域を備え、ゲートウェイ10からの要求に応じてリカバリ制御情報13007を提供する。
そのためゲートウェイ10は、ECUごとのリカバリ処理に関する情報を、インターネット3を介して接続されるサーバ2ではなく物理的に近くに存在するECUから取得してリカバリ処理を行うことができる。また、ECUの追加・交換等により実際の車両の構成とサーバ2で管理されている車両の構成の不一致が生じた場合にはサーバからは適切なリカバリ制御情報が取得できなくなるが、サーバ2と実際の車両システムの構成に相違生じた場合でも、適切にリカバリ制御を行うことができる。
図28〜図30を参照して、ソフトウェア更新システムSの第3の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、リカバリ制御情報が中断要因ごとに格納されている点で、第1の実施の形態と異なる。また、本実施の形態における「リカバリ」とは、更新処理の異常によりソフトウェアが更新完了状態へと遷移されていない場合であって、かつ、致命的な異常により更新完了状態に遷移させることができない場合に、ユーザにその旨を通知する動作も含む。ユーザは当該通知により、車両に致命的な異常が発生したことを確認し、ディーラに連絡等必要な手段を講じることができる。
第3の実施の形態におけるゲートウェイ10のハードウェア構成、およびゲートウェイプログラム100の構成は第1の実施の形態と同様である。ただしゲートウェイプログラム100の動作が後述するように一部異なる。
第3の実施の形態におけるECUのハードウェア構成は第1の実施の形態と同様である。
図28(b)は、第3の実施の形態におけるECUリカバリ制御情報5023の構成を示す図である。ECUリカバリ制御情報5023は、第1の実施の形態におけるECUリカバリ制御情報5021の構成に加えて、1つのリカバリ制御情報数50231、および1つ以上の中断要因50232をさらに備える。そしてECUリカバリ制御情報5023には、それぞれの中断要因50232に対応する、開始タイミング50212、表示内容50213、リカバリ方式50214、およびリカバリデータURI50215が含まれる。リカバリ制御情報数50231は、ECUリカバリ制御情報5023に中断要因50232がいくつ含まれるかを示す。中断要因50232は、更新が中断した要因を示す。以下では、ECUリカバリ制御情報5023に含まれる中断要因50232、開始タイミング50212、表示内容50213、リカバリ方式50214、およびリカバリデータURI50215の組み合わせを、要因別リカバリ制御情報50230と呼ぶ。
図29及び図30を用いて、自動運転ECU15について、中断要因ごとに異なるリカバリ制御を行う場合の場合のリカバリ制御情報5023aの構成例、HMI12への表示例、更新状態D1aの構成例、および動作シーケンスを示す。
ゲートウェイ10が起動すると、最初に、ステップS901aにおいて中断中の更新の有無を確認する(図11のS701、S702、図30のS901a)。
ゲートウェイ10は、更新状態D21の更新開始状態D102から自動運転ECU15の更新が中断していると判定すると(S901a)、ステップS910a2において以下の処理を行う。すなわちゲートウェイ10は、更新状態D1aから自動運転ECU15に該当する中断要因D106を読み出し、中断要因を判定する。中断要因が「電源断・通信断」の場合(S910a2:「通信断・電源断」)、次に、ステップS911a2において自動運転ECUリカバリ制御情報5023aから中断要因が「電源断・通信断」であるリカバリ制御情報を読み出し、リカバリ制御情報に基づくリカバリ処理を行う。中断要因が「電源断・通信断」であるリカバリ制御情報に基づくリカバリ処理は、図14のステップS903aからステップS909aまでの処理と同じである。中断要因が「FROM故障」である場合(S910a2:「FROM故障」)、次に、ステップS912a2において自動運転ECUリカバリ制御情報5023aから中断要因が「FROM故障」であるリカバリ制御情報を読み出し、リカバリ制御情報に基づくリカバリ処理を行う。
(1)リカバリ制御情報5023は、異常要因ごとのリカバリ制御情報を備え、ゲートウェイ10は、異常要因に応じて適用するリカバリ処理を選択する。
更新が中断する要因がFROMの故障の場合などは、ハードウェアの交換などが必要となり、システム単独でリカバリを行うことが困難であるなど、中断要因によっては、適用可能なリカバリ処理が異なる可能性がある。上記の通りリカバリ制御情報5023を構成し、これを用いることで、ゲートウェイ10は、例えばECUに致命的な異常が発生した場合とそうでない場合で、異なるリカバリ処理を実行し、ユーザに適切な情報を伝えることができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
1 … 車両
2 … サーバ
10 … ゲートウェイ
13 … エンジン制御ECU
14 … ブレーキ制御ECU
10001 … 更新制御部
10004 … リカバリ制御部
10005 … リカバリ制御情報管理部
502 … ECUリカバリ制御情報
5021 … ECUリカバリ制御情報
5022 … ECUリカバリデータ
50212 … リカバリ開始タイミング
50212 … 開始タイミング
50213 … 表示内容
50214 … リカバリ方式
Claims (15)
- 制御装置と接続されるソフトウェア更新装置であって、
前記制御装置のソフトウェアを更新前状態から更新完了状態へと遷移させる更新処理を行う更新制御部と、
リカバリ制御情報を取得するリカバリ制御情報管理部と、
前記更新処理の異常により前記ソフトウェアが前記更新完了状態へと遷移されていない場合に、前記リカバリ制御情報に基づき前記ソフトウェアを前記更新完了状態に遷移させるリカバリ処理を実行するリカバリ制御部とを備えるソフトウェア更新装置。 - 請求項1に記載のソフトウェア更新装置において、
前記リカバリ制御情報は前記リカバリ処理を開始するタイミングの情報を含むソフトウェア更新装置。 - 請求項2に記載のソフトウェア更新装置において、
前記ソフトウェア更新装置は車両に搭載され、
前記制御装置が前記車両のエンジン、およびブレーキの少なくとも一方を制御する装置である場合に、前記リカバリ制御情報は前記リカバリ処理を開始するタイミングが即時であることを示す情報を含むソフトウェア更新装置。 - 請求項1に記載のソフトウェア更新装置において、
前記リカバリ制御情報は前記リカバリ処理の方式を示す情報を含むソフトウェア更新装置。 - 請求項4に記載のソフトウェア更新装置において、
前記リカバリ処理の方式を示す情報は、前記制御装置の構成に基づき決定されたソフトウェア更新装置。 - 請求項4に記載のソフトウェア更新装置において、
前記リカバリ制御情報は、前記リカバリ処理の方式に対応するリカバリデータを含むソフトウェア更新装置。 - 請求項1に記載のソフトウェア更新装置において、
前記ソフトウェア更新装置は、車両に搭載されると共に、画面表示を行う表示装置と接続されており、
前記リカバリ制御情報は前記画面表示のための情報を含み、
前記ソフトウェア更新装置は、
前記画面表示のための情報に基づき、前記リカバリ処理による前記車両の機能制限状態を前記車両の乗員に告知する画面を表示するための信号を前記表示装置に出力する表示制御部をさらに備えるソフトウェア更新装置。 - 制御装置と接続されるソフトウェア更新装置が実行するソフトウェア更新方法であって、
前記制御装置のソフトウェアを更新前状態から更新完了状態へと遷移させる更新処理を行うことと、
リカバリ制御情報を取得することと、
前記更新処理の異常により前記ソフトウェアが前記更新完了状態へと遷移されていない場合に、前記リカバリ制御情報に基づき前記ソフトウェアを前記更新完了状態に遷移させるリカバリ処理を実行することとを有するソフトウェア更新方法。 - 請求項8に記載のソフトウェア更新方法において、
前記リカバリ制御情報は前記リカバリ処理を開始するタイミングの情報を含むソフトウェア更新方法。 - 請求項9に記載のソフトウェア更新方法において、
前記ソフトウェア更新装置は車両に搭載され、
前記制御装置が前記車両のエンジン、およびブレーキの少なくとも一方を制御する装置である場合に、前記リカバリ制御情報は前記リカバリ処理を開始するタイミングが即時であることを示す情報を含むソフトウェア更新方法。 - 請求項8に記載のソフトウェア更新方法において、
前記リカバリ制御情報は前記リカバリ処理の方式を示す情報を含むソフトウェア更新方法。 - 請求項11に記載のソフトウェア更新方法において、
前記リカバリ処理の方式を示す情報は、前記制御装置の構成に基づき決定されたソフトウェア更新方法。 - 請求項11に記載のソフトウェア更新方法において、
前記リカバリ制御情報は、前記リカバリ処理の方式に対応するリカバリデータを含むソフトウェア更新方法。 - 請求項8に記載のソフトウェア更新方法において、
前記ソフトウェア更新装置は、車両に搭載されると共に、画面表示を行う表示装置と接続されており、
前記リカバリ制御情報は前記画面表示のための情報を含み、
前記ソフトウェア更新方法は、
前記画面表示のための情報に基づき、前記リカバリ処理による前記車両の機能制限状態を前記車両の乗員に告知する画面を表示するための信号を前記表示装置に出力することをさらに有するソフトウェア更新方法。 - 請求項1から請求項7までのいずれか1項に記載のソフトウェア更新装置と、
前記ソフトウェア更新装置に前記リカバリ制御情報を送信するサーバとを備えるソフトウェア更新システム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016202767A JP6760813B2 (ja) | 2016-10-14 | 2016-10-14 | ソフトウェア更新装置、ソフトウェア更新方法、ソフトウェア更新システム |
PCT/JP2017/032506 WO2018070156A1 (ja) | 2016-10-14 | 2017-09-08 | ソフトウェア更新装置、ソフトウェア更新方法、ソフトウェア更新システム |
EP17860883.2A EP3528118B1 (en) | 2016-10-14 | 2017-09-08 | Software update device, software update method, and software update system |
US16/341,091 US11467818B2 (en) | 2016-10-14 | 2017-09-08 | Software update device, software update method, and software update system |
CN201780062339.6A CN109804355B (zh) | 2016-10-14 | 2017-09-08 | 软件更新装置、软件更新方法、软件更新*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016202767A JP6760813B2 (ja) | 2016-10-14 | 2016-10-14 | ソフトウェア更新装置、ソフトウェア更新方法、ソフトウェア更新システム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020148013A Division JP7184855B2 (ja) | 2020-09-03 | 2020-09-03 | ソフトウェア更新装置、ソフトウェア更新方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018063659A true JP2018063659A (ja) | 2018-04-19 |
JP6760813B2 JP6760813B2 (ja) | 2020-09-23 |
Family
ID=61906302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016202767A Active JP6760813B2 (ja) | 2016-10-14 | 2016-10-14 | ソフトウェア更新装置、ソフトウェア更新方法、ソフトウェア更新システム |
Country Status (5)
Country | Link |
---|---|
US (1) | US11467818B2 (ja) |
EP (1) | EP3528118B1 (ja) |
JP (1) | JP6760813B2 (ja) |
CN (1) | CN109804355B (ja) |
WO (1) | WO2018070156A1 (ja) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019073932A1 (ja) * | 2017-10-12 | 2019-04-18 | 日立オートモティブシステムズ株式会社 | 情報更新装置、情報更新方法 |
JP2020027630A (ja) * | 2018-08-10 | 2020-02-20 | 株式会社デンソー | 車両用マスタ装置、ロールバックの実行制御方法、ロールバックの実行制御プログラム及び諸元データのデータ構造 |
JP2020027642A (ja) * | 2018-08-10 | 2020-02-20 | 株式会社デンソー | 表示制御装置、書換え進捗状況の表示制御方法及び書換え進捗状況の表示制御プログラム |
KR102111359B1 (ko) * | 2018-12-20 | 2020-05-15 | 주식회사 만도 | Ota 애드온 장치 |
WO2020170407A1 (ja) * | 2019-02-22 | 2020-08-27 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
WO2020170406A1 (ja) * | 2019-02-22 | 2020-08-27 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
JP2020135578A (ja) * | 2019-02-22 | 2020-08-31 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
CN111699471A (zh) * | 2018-05-02 | 2020-09-22 | 奥迪股份公司 | 用于在机动车的控制器中执行软件更新的方法以及相应设计的机动车 |
CN112639724A (zh) * | 2018-08-10 | 2021-04-09 | 株式会社电装 | 车辆用电子控制***、文件的传输控制方法、文件的传输控制程序以及规格数据的数据结构 |
CN112770940A (zh) * | 2018-10-15 | 2021-05-07 | 株式会社自动网络技术研究所 | 车载更新装置、更新处理程序、程序的更新方法及车载更新*** |
JP2022008356A (ja) * | 2019-02-22 | 2022-01-13 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
JP2022120055A (ja) * | 2018-08-10 | 2022-08-17 | 株式会社デンソー | 車両用マスタ装置、ロールバックの実行制御方法及びロールバックの実行制御プログラム |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6915500B2 (ja) * | 2017-11-06 | 2021-08-04 | トヨタ自動車株式会社 | 更新システム、電子制御装置、更新管理装置、及び更新管理方法 |
JP7311245B2 (ja) * | 2018-03-07 | 2023-07-19 | トヨタ自動車株式会社 | マスタ装置、マスタ、制御方法、プログラム及び車両 |
WO2020032197A1 (ja) * | 2018-08-10 | 2020-02-13 | 株式会社デンソー | センター装置,配信パッケージの生成方法及び配信パッケージ生成用プログラム |
WO2020032200A1 (ja) * | 2018-08-10 | 2020-02-13 | 株式会社デンソー | センター装置,諸元データの生成方法及び諸元データ生成用プログラム |
JP7031643B2 (ja) * | 2018-08-10 | 2022-03-08 | 株式会社デンソー | 車両情報通信システム |
CN111158712A (zh) * | 2018-11-07 | 2020-05-15 | 中兴通讯股份有限公司 | 一种车载Tbox升级的方法、装置、设备以及存储介质 |
JP7310891B2 (ja) * | 2019-08-06 | 2023-07-19 | 日本電気株式会社 | モビリティ制御システム、方法、および、プログラム |
WO2021168840A1 (zh) * | 2020-02-28 | 2021-09-02 | 华为技术有限公司 | 一种软件版本回滚方法、装置及*** |
CN112000083A (zh) * | 2020-09-01 | 2020-11-27 | 深圳市元征科技股份有限公司 | Ecu数据刷写方法、刷写装置、刷写设备及存储介质 |
US20240004633A1 (en) * | 2020-12-16 | 2024-01-04 | Hitachi Astemo, Ltd. | Electronic control device |
DE112021004928T5 (de) | 2020-12-16 | 2023-07-06 | Hitachi Astemo, Ltd. | Elektronische steuervorrichtung |
JP7291734B2 (ja) * | 2021-01-14 | 2023-06-15 | 本田技研工業株式会社 | 制御システム、移動体、情報処理装置、制御方法、情報処理方法及びプログラム |
CN113259249B (zh) * | 2021-04-22 | 2023-04-07 | 东风柳州汽车有限公司 | 一种网关程序初始化方法、装置及存储介质 |
CN113950118B (zh) * | 2021-10-14 | 2023-04-28 | 四川九州电子科技股份有限公司 | 基于Mesh的软件升级方法 |
US20230394894A1 (en) * | 2022-06-01 | 2023-12-07 | Toyota Motor North America, Inc. | Setting a mode of a vehicle |
US20240061668A1 (en) * | 2022-08-16 | 2024-02-22 | Sap Se | Automatic upgrade of on-premise software |
CN117130627B (zh) * | 2023-02-28 | 2024-05-17 | 荣耀终端有限公司 | 配件升级方法及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005349878A (ja) * | 2004-06-08 | 2005-12-22 | Fujitsu Ten Ltd | ソフトウェア管理装置 |
JP2010170304A (ja) * | 2009-01-22 | 2010-08-05 | Fujitsu Ten Ltd | 管理装置 |
JP2010198155A (ja) * | 2009-02-24 | 2010-09-09 | Fujitsu Ten Ltd | プログラム更新装置、プログラム更新方法、及び情報処理装置 |
JP2013156216A (ja) * | 2012-01-31 | 2013-08-15 | Clarion Co Ltd | ナビゲーション装置、ソフトウェア更新プログラム、更新方法 |
JP2016170740A (ja) * | 2015-03-16 | 2016-09-23 | 日立オートモティブシステムズ株式会社 | ソフト更新装置、ソフト更新方法 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3716971B2 (ja) | 1994-09-19 | 2005-11-16 | 株式会社日立製作所 | プログラム更新/回復方法 |
JP4285679B2 (ja) | 2002-03-11 | 2009-06-24 | 富士通株式会社 | 差分転送方法、プログラム及びシステム |
JP2004048340A (ja) | 2002-07-11 | 2004-02-12 | Ntt Me Corp | 広域コンピュータ通信ネットワークへのアクセス・接続品質制御システム |
US6836657B2 (en) * | 2002-11-12 | 2004-12-28 | Innopath Software, Inc. | Upgrading of electronic files including automatic recovery from failures and errors occurring during the upgrade |
US7810088B2 (en) * | 2003-06-20 | 2010-10-05 | Samsung Electronics Co., Ltd. | Apparatus and method for performing a fail-safe over-the-air software update in a mobile station |
US7512749B2 (en) * | 2003-06-30 | 2009-03-31 | Intel Corporation | Safe software revision for embedded systems |
US7676448B2 (en) | 2004-03-12 | 2010-03-09 | Microsoft Corporation | Controlling installation update behaviors on a client computer |
JP4548601B2 (ja) | 2005-04-20 | 2010-09-22 | 株式会社デンソー | 自動車用制御ユニット |
US20060259207A1 (en) | 2005-04-20 | 2006-11-16 | Denso Corporation | Electronic control system for automobile |
JP4901955B2 (ja) | 2007-03-30 | 2012-03-21 | 富士通株式会社 | 基地局装置、通信システム及びコンピュータプログラム |
JP5113700B2 (ja) * | 2008-09-24 | 2013-01-09 | 株式会社日立ソリューションズ | ファームウェア更新装置及び方法 |
US8296503B2 (en) * | 2009-05-26 | 2012-10-23 | Mediatek Inc. | Data updating and recovering methods for a non-volatile memory array |
JP5346253B2 (ja) * | 2009-08-24 | 2013-11-20 | 株式会社日立ソリューションズ | ファームウェア更新システム、及び情報機器、並びにプログラム |
JP4935911B2 (ja) | 2010-01-28 | 2012-05-23 | 沖電気工業株式会社 | 通信制御装置 |
US8489922B2 (en) | 2010-11-17 | 2013-07-16 | Apple Inc. | Networked recovery system |
KR101360705B1 (ko) * | 2011-09-22 | 2014-02-07 | 기아자동차주식회사 | 차량 업그레이드 시스템 및 그 방법 |
US8972792B2 (en) * | 2012-04-19 | 2015-03-03 | Blackberry Limited | Methods, apparatus, and systems for electronic device recovery |
US9128798B2 (en) * | 2012-10-17 | 2015-09-08 | Movimento Group | Module updating device |
JP6056424B2 (ja) * | 2012-11-29 | 2017-01-11 | 株式会社デンソー | 車載プログラム更新装置 |
US20140282470A1 (en) * | 2013-03-13 | 2014-09-18 | Arynga Inc. | Remote transfer of electronic images to a vehicle |
JP2015121987A (ja) | 2013-12-24 | 2015-07-02 | 株式会社ノーリツ | プログラム更新システム |
US9529580B2 (en) * | 2015-01-21 | 2016-12-27 | Ford Global Technologies, Llc | Vehicle control update methods and systems |
JP6690136B2 (ja) | 2015-04-27 | 2020-04-28 | 住友ゴム工業株式会社 | ゴルフボール |
-
2016
- 2016-10-14 JP JP2016202767A patent/JP6760813B2/ja active Active
-
2017
- 2017-09-08 EP EP17860883.2A patent/EP3528118B1/en active Active
- 2017-09-08 WO PCT/JP2017/032506 patent/WO2018070156A1/ja unknown
- 2017-09-08 US US16/341,091 patent/US11467818B2/en active Active
- 2017-09-08 CN CN201780062339.6A patent/CN109804355B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005349878A (ja) * | 2004-06-08 | 2005-12-22 | Fujitsu Ten Ltd | ソフトウェア管理装置 |
JP2010170304A (ja) * | 2009-01-22 | 2010-08-05 | Fujitsu Ten Ltd | 管理装置 |
JP2010198155A (ja) * | 2009-02-24 | 2010-09-09 | Fujitsu Ten Ltd | プログラム更新装置、プログラム更新方法、及び情報処理装置 |
JP2013156216A (ja) * | 2012-01-31 | 2013-08-15 | Clarion Co Ltd | ナビゲーション装置、ソフトウェア更新プログラム、更新方法 |
JP2016170740A (ja) * | 2015-03-16 | 2016-09-23 | 日立オートモティブシステムズ株式会社 | ソフト更新装置、ソフト更新方法 |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11360762B2 (en) | 2017-10-12 | 2022-06-14 | Hitachi Astemo, Ltd. | Information update apparatus and information update method |
WO2019073932A1 (ja) * | 2017-10-12 | 2019-04-18 | 日立オートモティブシステムズ株式会社 | 情報更新装置、情報更新方法 |
CN111699471A (zh) * | 2018-05-02 | 2020-09-22 | 奥迪股份公司 | 用于在机动车的控制器中执行软件更新的方法以及相应设计的机动车 |
US11340887B2 (en) | 2018-05-02 | 2022-05-24 | Audi Ag | Method for performing a software update in a control unit of a motor vehicle, and motor vehicle designed accordingly |
CN111699471B (zh) * | 2018-05-02 | 2021-11-02 | 奥迪股份公司 | 用于在机动车的控制器中执行软件更新的方法以及相应设计的机动车 |
CN112639724A (zh) * | 2018-08-10 | 2021-04-09 | 株式会社电装 | 车辆用电子控制***、文件的传输控制方法、文件的传输控制程序以及规格数据的数据结构 |
US11926270B2 (en) | 2018-08-10 | 2024-03-12 | Denso Corporation | Display control device, rewrite progress display control method and computer program product |
JP7115429B2 (ja) | 2018-08-10 | 2022-08-09 | 株式会社デンソー | 車両用マスタ装置、ロールバックの実行制御方法及びロールバックの実行制御プログラム |
JP7439402B2 (ja) | 2018-08-10 | 2024-02-28 | 株式会社デンソー | 表示制御装置、書換え進捗状況の表示制御方法及び書換え進捗状況の表示制御プログラム |
JP7380756B2 (ja) | 2018-08-10 | 2023-11-15 | 株式会社デンソー | 車両用マスタ装置、ロールバックの実行制御方法及びロールバックの実行制御プログラム |
JP2022120055A (ja) * | 2018-08-10 | 2022-08-17 | 株式会社デンソー | 車両用マスタ装置、ロールバックの実行制御方法及びロールバックの実行制御プログラム |
US11999360B2 (en) | 2018-08-10 | 2024-06-04 | Denso Corporation | Vehicle master device, control method for executing rollback, computer program product for executing rollback and data structure of specification data |
JP2020027642A (ja) * | 2018-08-10 | 2020-02-20 | 株式会社デンソー | 表示制御装置、書換え進捗状況の表示制御方法及び書換え進捗状況の表示制御プログラム |
JP2020027630A (ja) * | 2018-08-10 | 2020-02-20 | 株式会社デンソー | 車両用マスタ装置、ロールバックの実行制御方法、ロールバックの実行制御プログラム及び諸元データのデータ構造 |
CN112770940B (zh) * | 2018-10-15 | 2024-04-19 | 株式会社自动网络技术研究所 | 车载更新装置、更新处理程序、程序的更新方法及车载更新*** |
CN112770940A (zh) * | 2018-10-15 | 2021-05-07 | 株式会社自动网络技术研究所 | 车载更新装置、更新处理程序、程序的更新方法及车载更新*** |
KR102111359B1 (ko) * | 2018-12-20 | 2020-05-15 | 주식회사 만도 | Ota 애드온 장치 |
JP2022008356A (ja) * | 2019-02-22 | 2022-01-13 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
JPWO2020170407A1 (ja) * | 2019-02-22 | 2021-10-14 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
US11429370B2 (en) | 2019-02-22 | 2022-08-30 | Honda Motor Co., Ltd. | Software updating apparatus, vehicle, and software updating method |
CN113490910B (zh) * | 2019-02-22 | 2022-09-20 | 本田技研工业株式会社 | 软件更新装置、车辆和软件更新方法 |
US11561789B2 (en) | 2019-02-22 | 2023-01-24 | Honda Motor Co., Ltd. | Software update device, vehicle, and software update method |
JP7212736B2 (ja) | 2019-02-22 | 2023-01-25 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
US11604638B2 (en) | 2019-02-22 | 2023-03-14 | Honda Motor Co., Ltd. | Software update device, vehicle, and software update method |
JPWO2020170406A1 (ja) * | 2019-02-22 | 2021-10-14 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
CN113490910A (zh) * | 2019-02-22 | 2021-10-08 | 本田技研工业株式会社 | 软件更新装置、车辆和软件更新方法 |
JP2020135578A (ja) * | 2019-02-22 | 2020-08-31 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
WO2020170406A1 (ja) * | 2019-02-22 | 2020-08-27 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
WO2020170407A1 (ja) * | 2019-02-22 | 2020-08-27 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
Also Published As
Publication number | Publication date |
---|---|
JP6760813B2 (ja) | 2020-09-23 |
US20200225930A1 (en) | 2020-07-16 |
EP3528118B1 (en) | 2022-11-09 |
EP3528118A4 (en) | 2020-06-03 |
EP3528118A1 (en) | 2019-08-21 |
US11467818B2 (en) | 2022-10-11 |
CN109804355B (zh) | 2022-12-16 |
CN109804355A (zh) | 2019-05-24 |
WO2018070156A1 (ja) | 2018-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018070156A1 (ja) | ソフトウェア更新装置、ソフトウェア更新方法、ソフトウェア更新システム | |
JP2020107355A (ja) | 仮想マシンモニタ、ソフトウェア及びファームウェア更新方法 | |
US11507365B2 (en) | On-board update device, update processing program, program update method, and on-board update system | |
JP7124627B2 (ja) | 車載更新装置、更新処理プログラム及び、プログラムの更新方法 | |
JP6780724B2 (ja) | 車載更新装置、更新処理プログラム及び、プログラムの更新方法 | |
JP7160111B2 (ja) | 監視装置、監視プログラム及び監視方法 | |
JP2019074800A (ja) | 情報更新装置、情報更新方法 | |
WO2021113305A1 (en) | Master agent and distributed agent architecture for vehicles | |
JP2020075580A (ja) | プログラム更新システム及び更新処理プログラム | |
CN110809755B (zh) | 电子控制*** | |
JP7184855B2 (ja) | ソフトウェア更新装置、ソフトウェア更新方法 | |
JP6147791B2 (ja) | プログラム書換装置及びプログラム書換方法 | |
US11714628B2 (en) | Program update system, program transmission device, and program transmission method | |
US11449329B2 (en) | Vehicle control device and program update system | |
JP2021015618A (ja) | 車載更新装置、更新処理プログラム及び、プログラムの更新方法 | |
WO2019038855A1 (ja) | 車載電子機器、サーバ装置、およびソフトウェア更新方法 | |
US20220391192A1 (en) | Ota master, center, system, method, non-transitory storage medium, and vehicle | |
JP2020126452A (ja) | 電子制御装置及び不揮発性メモリの使用方法 | |
US20220317994A1 (en) | Ota master, update control method, and non-transitory storage medium | |
WO2023106072A1 (ja) | 車載装置、プログラム、プログラムの更新方法、及び車載更新システム | |
US20220391193A1 (en) | Ota master, system, method, non-transitory storage medium, and vehicle | |
JP2023131640A (ja) | 車載装置、プログラム、及びプログラムの更新方法 | |
WO2023063068A1 (ja) | 車載装置、プログラム及び、プログラムの更新方法 | |
JP2023119314A (ja) | 電子制御装置 | |
CN116149906A (zh) | 车辆里程信息的备份方法、装置、车辆及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20170126 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20170927 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190311 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200414 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20200611 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200707 |
|
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: 20200804 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200903 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6760813 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |