CN118069188A - 电子装置和程序更新系统 - Google Patents
电子装置和程序更新系统 Download PDFInfo
- Publication number
- CN118069188A CN118069188A CN202410345185.3A CN202410345185A CN118069188A CN 118069188 A CN118069188 A CN 118069188A CN 202410345185 A CN202410345185 A CN 202410345185A CN 118069188 A CN118069188 A CN 118069188A
- Authority
- CN
- China
- Prior art keywords
- program
- electronic device
- update
- current
- data
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 43
- 238000011084 recovery Methods 0.000 claims abstract description 23
- 230000004044 response Effects 0.000 claims abstract description 8
- 238000012360 testing method Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 55
- 238000012545 processing Methods 0.000 description 28
- 230000006870 function Effects 0.000 description 7
- 230000005856 abnormality Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000004092 self-diagnosis Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
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
- G07—CHECKING-DEVICES
- G07C—TIME 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/00—Registering or indicating the working of vehicles
- G07C5/008—Registering or indicating the working of vehicles communicating information to a remotely located station
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/48—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for in-vehicle communication
-
- 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/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- 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
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)
Abstract
安装于车辆的电子装置,其能够与车辆外部的程序传送装置和安装于车辆的另一电子装置通信。电子装置具有足够的存储区域来同时存储作为要由另一电子装置执行的程序的当前版本的当前程序和作为当前程序的更新版本的更新程序。电子装置配置为:获取和存储代表当前程序的第一数据;从程序传送装置接收并且存储代表更新程序的第二数据;基于存储的第二数据,执行将存储在另一电子装置中的程序从当前程序变更为更新程序的更新处理;在更新处理之后,使用存储的第一数据来执行用于将存储在另一电子装置中的程序从更新程序恢复为当前程序的恢复处理;以及响应于恢复处理的完成,删除存储在电子装置中的所述第一数据。
Description
分案申请声明
本申请是2020年06月24日提交的、发明名称为“程序更新系统、程序传送装置和程序传送方法”、申请号为202010591045.6的中国发明专利申请的分案申请。
技术领域
本发明涉及程序更新系统、程序传送装置和程序传送方法,该程序更新系统用于更新安装在车辆等上的网络系统中包括的电子装置的程序。
背景技术
车辆配备有网络系统,在该网络系统中,多个称为电子控制单元(ECU)的电子装置经由通信线路相互连接。这些电子装置以共享的方式在彼此之间传送和接收消息,并执行车辆的功能。
电子装置通常包括处理器以及诸如随机存取存储器(Random-Access Memory,RAM)的暂态存储单元和诸如闪存只读存储器(Read-Only Memory,ROM)的非易失性存储单元。由处理器执行的程序存储在非易失性存储单元中。通过将程序重写和更新为更新的版本,能够改善电子装置的功能。
日本未审查专利申请公开第2014-191574号(JP 2014-191574 A)公开了:当更新用于第一电子装置的程序时,第二电子装置经由用于车载通信的通信线路读取并存储当前存储在第一电子装置中的该程序,以在更新之前执行备份。根据该方法,第二电子装置将该程序写回入第一电子装置,从而即使第一电子装置的存储单元不具有用于备份的存储区域,用于第一电子装置的该程序也能够恢复到更新之前的状态。
发明内容
在JP 2014-191574A中所描述的方法中,第二电子装置经由网络系统的用于车载通信的通信线路读取当前存储在第一电子装置中的程序,并执行备份。因此,与不执行备份的情况相比,车辆中的通信量增加了。
本发明在用于更新用于车辆的电子装置的程序的程序更新系统中,即使在要更新的电子装置不具有备份存储区域时,也允许在抑制车辆中的通信量的增加的同时将该程序恢复到更新之前的状态。
本发明的第一方面涉及程序更新系统。该程序更新系统包括车辆和程序传送装置。该车辆包括第一电子装置和第二电子装置。该程序传送装置配置为与该车辆通信,并将用于该第一电子装置的程序和用于该第二电子装置的程序传送至该车辆。该第二电子装置配置为存储从该程序传送装置接收的数据。该第一电子装置不具有足够的存储区域来同时存储作为要由该第一电子装置执行的程序的当前版本的当前程序和作为该当前程序的更新版本的更新程序。该第二电子装置配置为与该程序传送装置和该第一电子装置通信,并具有足够的存储区域来同时存储该当前程序和该更新程序。该程序传送装置配置为在从该车辆接收到请求时,将代表该更新程序的数据和代表该当前程序的数据传送至该车辆。该第二电子装置配置为在接收到该代表该更新程序的数据和该代表该当前程序的数据时,存储该代表该更新程序的数据和该代表该当前程序的数据。该第二电子装置配置为基于存储在该第二电子装置中的该代表该更新程序的数据,执行将存储在该第一电子装置中的程序从该当前程序变更为该更新程序的更新处理。该第二电子装置配置为在该更新处理之后,基于预定的判断处理或用户的指令,使用存储在该第二电子装置中的代表该当前程序的数据来执行恢复处理,该恢复处理用于将该存储在该第一电子装置中的程序恢复为该当前程序。
在以上方面的程序更新系统中,该代表该更新程序的数据可以是代表该更新程序与该当前程序之间的差异的数据。
在以上方面的程序更新系统中,该代表该当前程序的数据可以是代表该当前程序与该更新程序之间的差异的数据。
在以上方面的程序更新系统中,第二电子装置可以配置为在执行该更新处理之后,在该车辆的电源被接通然后被断开至少一次之后删除该第二电子装置中存储的该当前程序。
在以上方面的程序更新系统中,在该车辆的该电源被接通时,可以基于该第一电子装置的操作执行该预定的判断处理。
在以上方面的程序更新系统中,该第一电子装置可以配置为在执行该更新处理之后,在该车辆的电源断开时,使用更新后的程序来执行预定的操作测试,作为该预定的判断处理;第二电子装置可以配置为当该预定的操作测试的结果落在允许范围之外时,执行该恢复处理。
本发明的第二方面涉及程序传送装置,该程序传送装置用于传送用于车辆中安装的电子装置的程序。该程序传送装置包括配置为与该车辆通信的通信单元,以及配置为控制该通信单元的控制器。该控制器配置为控制该通信单元,当该通信单元从该车辆接收到请求时,该控制器控制该通信单元,以使得该通信单元将代表作为要由该电子装置执行的程序的当前版本的当前程序的数据和代表作为该当前程序的更新版本的更新程序的数据传送至该车辆。
本发明的第三方面涉及程序传送方法,该程序传送方法由程序传送装置的控制器执行,该程序传送装置包括用于与车辆通信的通信单元,并且该程序传送装置配置为传送用于该车辆中安装的电子装置的程序。该程序传送方法包括:当该通信单元从该车辆接收到请求时,由该控制器控制该通信单元,以使得该通信单元基于该请求将代表作为要由该电子装置执行的程序的当前版本的当前程序的数据和代表作为该当前程序的更新版本的更新程序的数据传送至该车辆。
根据本发明,在用于更新用于车辆的电子装置的程序的程序更新系统中,即使在要更新的电子装置不具有备份存储区域时,也能够在抑制车辆中的通信量的增加的同时将该程序恢复到更新之前的状态。
附图说明
以下将参照附图对本发明的示例性实施例的特征、优点和技术以及工业意义进行描述,其中相似的附图标记表示相似的元素,并且其中:
图1为根据本发明的实施例的程序更新系统的配置图;
图2为示出根据本发明的实施例的处理的时序图;
图3为示出根据本发明的实施例的处理的时序图;
图4为示出根据本发明的实施例的处理的时序图。
具体实施方式
实施例
在本发明的一个实施例中,当作为程序传送装置的服务器向车辆的第二电子装置传送用于第一电子装置的更新程序时,该服务器还传送处于更新之前的状态下的程序以用于备份。第一电子装置不具有用于对处于更新之前的状态下的程序执行备份的存储区域,而替代地,第二电子装置存储处于更新之前的状态下的程序。第二电子装置从服务器接收处于更新之前的状态下的程序,因此第二电子装置不需要从第一电子装置读取处于更新之前的状态下的程序。因此,能够在抑制车辆中的通信量的增加的同时,将用于第一电子装置的程序恢复为处于更新之前的状态下的程序。
配置
图1示出了根据本实施例的程序更新系统1的配置。程序更新系统1包括在其上安装有网络系统101的车辆100和设置在车辆100外部的服务器200。
网络系统101包括多个电子装置。图1示出了作为示例的第一电子装置10和第二电子装置20。例如,第二电子装置20经由中继装置50连接至第一电子装置10和其他电子装置(未图示)。
第一电子装置10包括控制器11和存储单元12。存储单元12存储用于实施第一电子装置10的功能的程序,控制器11从存储单元12读取该程序并执行该程序。存储单元12具有有限的存储容量,并且不具有足够的存储区域来同时存储作为当前存储的程序的当前程序和作为当前程序的新版本的更新程序。在本实施例中,可以更新第一电子装置10或者具有与第一电子装置10的配置相同的配置的其他电子装置的程序。
第二电子装置20包括控制器21、存储单元22和通信单元23。存储单元22存储用于实施第二电子装置20的功能的程序,控制器21从存储单元22读取该程序并执行该程序。在本实施例中,第二电子装置20执行与对用于第一电子装置10的程序进行更新有关的处理等。存储单元22具有足够的存储区域,以除了存储用于第二电子装置20的程序之外,还存储各个电子装置的更新程序和要被更新的当前程序。通信单元23是用于与服务器200通信的无线通信装置。通信单元23可以与第二电子装置20分开地设置。
服务器200是包括控制器201、存储单元202和通信单元203的程序传送装置。存储单元202存储用于实施服务器200的功能的程序,控制器201从存储单元202读取该程序并执行该程序。服务器200可以提供用于各个电子装置的更新程序。存储单元202具有足够的存储区域,以除了存储用于服务器200的程序之外,还存储用于各个电子装置的各个版本的程序。通信单元203是用于与第二电子装置20通信的无线通信装置。如上所述,服务器200与第二电子装置20之间的通信通常是以无线的方式执行的,但是也可以经由有线的方式执行。在本实施例中,代替服务器200地,也可以使用诸如智能电话的通用终端装置或者具有等效功能的专用便携式终端装置。
第一电子装置10和第二电子装置20均包括用于车载通信的通信单元,该通信单元由控制器11和控制器21控制以经由通信线路彼此通信。图1中省略了通信单元。
处理
在下文中,将对根据本实施例的处理进行描述。图2、图3和图4为示出处理的示例的时序图。在本示例中,将用于第一电子装置10的程序设定为更新目标。即使当用于另一电子装置的程序是更新目标时,也可以执行相同的处理。此外,即使当多个电子装置的程序是更新目标时,也可以针对各个电子装置适当地执行相同的处理。
首先,将参照图2对第二电子装置20获取更新程序和当前程序的处理进行描述。
步骤S101
将用于第一电子装置10的更新程序提供至服务器200并且将该用于第一电子装置10的更新程序注册到服务器200中。该更新程序是从例如提供者装置或存储介质提供的。服务器200的控制器201致使存储单元202存储该更新程序。
在通过用户的操作接通车辆100的电源(车辆处于点火开启状态)时,执行步骤S102至S111中的后续处理。
步骤S102
第二电子装置20的控制器21生成指定用于网络系统101中包括的电子装置的各个程序的版本的信息,并控制通信单元23以使得通信单元23将该信息传送至服务器200。在本示例中,该信息包括指定用于第一电子装置10的程序的版本的信息。
步骤S103
当通信单元203接收到指定各个程序的版本的信息时,服务器200的控制器201基于接收到的信息和存储在存储单元202中的更新程序,生成指示是否存在用于各个电子装置的更新程序的信息,并控制通信单元203以使得通信单元203将该信息传送至第二电子装置20。在本示例中,该信息包括指示存在用于第一电子装置10的更新程序的信息。
步骤S104
当通信单元23接收到指示存在更新程序的信息时,第二电子装置20的控制器21控制通信单元23以使得通信单元23发送更新程序请求至服务器200。在本示例中,更新程序请求包括用于请求更新用于第一电子装置10的程序的信息。可替代地,当控制器21在车辆100上所安装的显示装置上显示指示存在更新程序的信息并且经由诸如图形用户界面(Graphical User Interface,GUI)的界面从用户接收到指令时,控制器21可以执行本步骤和后续步骤,以获取更新程序。
步骤S105
当通信单元203接收到更新程序请求时,服务器200的控制器201从存储单元202读取更新程序,并控制通信单元203以使得通信单元203将该更新程序传送至第二电子装置20。在本示例中,传送包括用于第一电子装置10的更新程序的程序。当通信单元23接收到更新程序时,第二电子装置20的控制器21致使存储单元22存储该更新程序。
步骤S106
第二电子装置20的控制器21控制通信单元23以使得通信单元23传送当前程序请求至服务器200。在本示例中,当前程序请求包括用于请求用于第一电子装置10的当前程序的信息。
步骤S107
当通信单元203接收到当前程序请求时,服务器200的控制器201从存储单元202读取当前程序,并控制通信单元203以使得通信单元203将当前程序传送至第二电子装置20。在本示例中,传送用于第一电子装置10的当前程序。当通信单元23接收到当前程序时,第二电子装置20的控制器21致使存储单元22存储该当前程序。代替响应于当前程序请求而传送当前程序地,也可以在步骤S105中传送更新程序之前传送当前程序,或者在步骤S105中传送更新程序之后传送当前程序。
步骤S108
第二电子装置20的控制器21传送当前程序验证信息请求至第一电子装置10。
步骤S109
第一电子装置10的控制器11生成当前程序验证信息,并将当前程序验证信息传送至第二电子装置20。当前程序验证信息是用于验证的信息,其是基于存储在第一电子装置10的存储单元12中的当前程序确定的,并且例如是循环冗余校验(Cyclic RedundancyCheck,CRC)值。
步骤S110
第二电子装置20的控制器21生成从服务器200接收的当前程序的验证信息,或者从服务器200一同获取当前程序和验证信息。然后,控制器21将所生成或所获取的验证信息与从第一电子装置10接收的当前程序验证信息进行比较,以验证从服务器200接收的当前程序与存储在第一电子装置10的存储单元12中的当前程序相同。当没有验证出从服务器200接收的当前程序与存储在第一电子装置10的存储单元12中的当前程序相同时,不执行后续处理。
步骤S111
第二电子装置20的控制器21将更新执行标志设定为ON。
通过以上处理,第二电子装置20获取用于第一电子装置10的更新程序和用于备份的当前程序,从而处于第二电子装置20能够进行接下来的更新处理的状态。
接下来,将参照图3对程序更新处理进行描述。在通过用户的操作断开车辆100的电源(车辆处于点火关闭状态)时,执行步骤S201至S214中的处理。
步骤S201
第二电子装置20的控制器21确认更新执行标志被设定为ON。当无法做出此确认时,不执行后续处理。
步骤S202
第二电子装置20的控制器21传送状态请求至第一电子装置10。可替代地,当控制器21在显示装置上显示关于是否对程序进行更新的确认屏幕,并经由诸如GUI的界面从用户接收到指令时,控制器21可以执行本步骤和后续步骤,以执行更新。
步骤S203
第一电子装置10的控制器11将指示第一电子装置10的状态的信息传送至第二电子装置20。第一电子装置10的控制器11可以执行自我诊断并检测是否存在异常或故障,以作为第一电子装置10的状态。指示第一电子装置10的状态的信息包括该检测结果。
步骤S204
第二电子装置20的控制器21基于第一电子装置10的状态来判断是否执行后续处理。当第一电子装置10中已经发生了异常或故障时,不执行后续处理。
步骤S205
第二电子装置20的控制器21传送更新可能性请求至第一电子装置10。
步骤S206
第一电子装置10的控制器11将指示是否能够执行更新的信息传送至第二电子装置20。第一电子装置10的控制器11可以基于第一电子装置10的操作状态,判断当前是否能够执行通过重写存储在存储单元12中的程序来更新程序的处理。指示是否能够执行更新的信息包括该判断结果。
步骤S207
当接收到指示能够执行更新的信息时,第二电子装置20的控制器21传送更新模式开始请求至第一电子装置10。当第二电子装置20的控制器21未接收到指示能够执行更新的信息时,不执行后续处理。
步骤S208
第一电子装置10的控制器11开始更新模式作为操作状态,并传送指示更新模式的开始的更新模式开始通知至第二电子装置20。
步骤S209
第二电子装置20的控制器21从存储单元22读取更新程序,并将更新程序传送至第一电子装置10。
步骤S210
第一电子装置10的控制器11使用从第二电子装置20接收的更新程序来覆写在存储单元12的程序存储区域中的程序。
步骤S211
当更新程序在存储单元12上的写入完成时,第一电子装置10的控制器11传送更新完成通知至第二电子装置20。
步骤S212
当接收到更新完成通知时,第二电子装置20的控制器21传送更新模式结束请求至第一电子装置10。
步骤S213
第一电子装置10的控制器11结束更新模式,并传送指示更新模式的结束的更新模式结束通知至第二电子装置20。
步骤S214
第二电子装置20的控制器21删除存储在存储单元22中的更新程序。
通过以上处理,更新了用于第一电子装置10的程序。当第二电子装置20的控制器21在一定时间段内未在步骤S211中接收到更新完成通知,或者基于第一电子装置10的控制器11的诊断接收到错误通知而不是更新完成通知时,第二电子装置20的控制器21可以判断更新失败了,并且例如可以重新传送更新程序。可替代地,代替更新程序地,第二电子装置20的控制器21可以传送存储在存储单元22中的当前程序,使用当前程序重写第一电子装置10的存储单元12的存储内容,并停止更新。在步骤S214中,第二电子装置20的控制器21可以控制通信单元23,以使得通信单元23传送指示程序更新已经结束的通知至服务器200。此外,在成功完成了更新之后,当不需要将更新后的程序恢复为原始的当前程序并且不执行稍后描述的恢复处理时,在步骤S214中,第二电子装置20的控制器21可以删除存储在存储单元22中的当前程序。
接下来,将参考图4对用于在更新完成之后将更新后的程序恢复为原始程序的恢复处理进行描述。在通过用户的操作接通车辆100的电源(车辆处于点火开启状态)时执行步骤S301至S302中的处理。
步骤S301
第一电子装置10的控制器11从存储单元12读取更新程序并执行更新程序。
步骤S302
第二电子装置20的控制器21设定恢复执行标志。例如,当经由显示屏上的诸如GUI的界面从用户接收到恢复指令时,执行该处理。例如,当用户对由第一电子装置10的控制器11执行更新程序所提供的功能不满意时,用户可以做出恢复指令。可替代地,代替用户地,第一电子装置10或另一电子装置可以基于预定的判断处理做出恢复指令。在该判断处理中,例如,当由于第一电子装置10的控制器11实际执行更新程序而导致在车辆100或任何电子装置的操作中产生了落在预定的允许范围之外的效果时,可以做出恢复指令。
在通过用户的操作断开车辆100的电源(车辆处于点火关闭状态)时,执行以下步骤S303至S316中的处理。
步骤S303
第二电子装置20的控制器21确认恢复执行标志被设定为ON。当无法做出此确认时,不执行后续处理。
步骤S304
第二电子装置20的控制器21传送状态请求至第一电子装置10。
步骤S305
第一电子装置10的控制器11将指示第一电子装置10的状态的信息传送至第二电子装置20。第一电子装置10的控制器11可以执行自我诊断并检测是否存在异常或故障,以作为第一电子装置10的状态。指示第一电子装置10的状态的信息包括该检测结果。
步骤S306
第二电子装置20的控制器21基于第一电子装置10的状态来判断是否执行后续处理。当第一电子装置10中已经发生了异常或故障时,不执行后续处理。
步骤S307
第二电子装置20的控制器21传送恢复可能性请求至第一电子装置10。
步骤S308
第一电子装置10的控制器11传送指示是否可能恢复的信息至第二电子装置20。第一电子装置10的控制器11可以基于第一电子装置10的操作状态来判断当前是否能够执行重写存储在存储单元12中的程序以恢复程序的处理。指示是否可能恢复的信息包括该判断结果。
步骤S309
在接收到指示可能恢复的信息时,第二电子装置20的控制器21传送恢复模式开始请求至第一电子装置10。当第二电子装置20的控制器21没有接收到指示可能恢复的信息时,不执行后续处理。
步骤S310
第一电子装置10的控制器11开始恢复模式作为操作状态,并且传送指示恢复模式的开始的恢复模式开始通知至第二电子装置20。
步骤S311
第二电子装置20的控制器21从存储单元22读取当前程序作为恢复程序,并将该恢复程序传送至第一电子装置10。
步骤S312
第一电子装置10的控制器11利用从第二电子装置20接收的恢复程序来覆写在存储单元12的程序存储区域中的程序。
步骤S313
当恢复程序在存储单元12上的写入完成时,第一电子装置10的控制器11传送恢复完成通知至第二电子装置20。
步骤S314
当接收到恢复完成通知时,第二电子装置20的控制器21传送恢复模式结束请求至第一电子装置10。
步骤S315
第一电子装置10的控制器11结束恢复模式,并传送指示恢复模式的结束的恢复模式结束通知至第二电子装置20。
步骤S316
第二电子装置20的控制器21删除存储在存储单元22中的当前程序。第二电子装置20的控制器21可以控制通信单元23,以使得通信单元23传送指示程序恢复已经结束的通知至服务器200。
通过以上处理,恢复了用于第一电子装置10的程序。在本示例中,可以基于当电源接通时第一电子装置10的操作及其效果来做出恢复指令。如上所述,当车辆的电源从电源关断状态被接通至少一次,并且第一电子装置10获取执行更新程序的一个或多个结果时,可以基于实际执行该更新指令的结果来做出恢复指令。可替代地,在步骤S214之后的电源关断状态下,第一电子装置10可以使用更新后的程序来执行预定的操作测试以作为判断处理,并且当结果落在允许范围之外时做出恢复指令。在这种情况下,可以执行步骤S303以及后续步骤中的处理而无需切换到电源接通状态。
以上已经描述了根据本实施例的处理,但是可以适当地修改各处理。例如,代替将更新程序或当前程序传送至第二电子装置20地,服务器200也可以适当地以代表更新程序或当前程序的另一种格式来传送数据。数据的其他格式不受限制。例如,代替更新程序地,可以使用代表更新程序与当前程序之间的差异的数据,而代替当前程序地,可以使用代表当前程序与更新程序之间的差异的数据。进一步地,该数据可以是更新程序、当前程序或差异数据的压缩数据。此外,从第二电子装置20传送至第一电子装置10的更新程序或当前程序的格式不受限制。第二电子装置20可以按原样传送从服务器200接收的数据,或者,第二电子装置20可以传送通过对从服务器200接收的数据进行转换而获得的数据,例如通过展开压缩数据而获得的数据或者代表基于差异数据而构造的程序的数据。
效果
在本实施例中,当服务器200将用于第一电子装置10的更新程序传送至第二电子装置20时,服务器200也对处于更新之前的状态下的程序进行传送以用于备份。第一电子装置10不具有用于对处于更新之前的状态下的程序执行备份的存储区域,而替代地,第二电子装置20存储处于更新之前的状态下的程序。由于第二电子装置20从服务器200接收处于更新之前的状态下的程序,因此不需要从第一电子装置10读取处于更新之前的状态下的程序。因此,可以在抑制车辆中的通信量的增加的同时,根据需要将第一电子装置10恢复到处于更新之前的状态下的程序。
对车辆中的通信量的增加的抑制制约了用于车载通信的通信线路的通信频带变窄,从而抑制了引起电子装置之间的通信受到干扰的风险。诸如服务器200的外部装置与车辆100中的电子装置之间的通信速度通常比车辆100中的电子装置之间的通信速度快。因此,与从第一电子装置10读取更新程序的情况相比,当第二电子装置20从服务器200接收更新程序时,能够减少更新程序所需的总时间。
本发明可以应用于程序更新系统、程序传送装置和程序传送方法、由设置在程序更新系统的各个部分中的计算机执行的方法、程序和存储有该程序的计算机可读非暂态性存储介质、以及程序更新系统中包括的配备有网络系统的车辆。
本发明对于安装在车辆等上的电子装置的程序更新系统是有用的。
Claims (12)
1.电子装置,其安装于车辆,并且能够与所述车辆外部的程序传送装置和安装于所述车辆的另一电子装置通信,所述电子装置配置为存储从所述程序传送装置接收的数据,所述电子装置具有足够的存储区域来同时存储作为要由所述另一电子装置执行的程序的当前版本的当前程序和作为所述当前程序的更新版本的更新程序,所述另一电子装置没有足够的存储区域来同时存储所述当前程序和所述更新程序,其中,所述电子装置配置为:
获取和存储代表所述当前程序的第一数据;
从所述程序传送装置接收代表所述更新程序的第二数据,并且存储所述第二数据;
基于存储在所述电子装置中的所述第二数据,执行将存储在所述另一电子装置中的程序从所述当前程序变更为所述更新程序的更新处理;
在所述更新处理之后,使用存储在所述电子装置中的所述第一数据来执行恢复处理,所述恢复处理用于将所述存储在所述另一电子装置中的程序从所述更新程序恢复为所述当前程序;以及
响应于所述恢复处理的完成,删除存储在所述电子装置中的所述第一数据。
2.根据权利要求1所述的电子装置,其特征在于,所述第一数据是代表所述当前程序与所述更新程序之间的差异的数据。
3.根据权利要求1所述的电子装置,其特征在于,所述第二数据是代表所述更新程序与所述当前程序之间的差异的数据。
4.根据权利要求1至3中任一项所述的电子装置,其特征在于,所述电子装置配置为响应于用以发起所述恢复处理的用户指令,执行所述恢复处理。
5.根据权利要求1至3中任一项所述的电子装置,其特征在于,所述另一电子装置配置为在所述更新处理的执行之后,执行预定的操作测试,并且
所述电子装置配置为当所述预定的操作测试的结果落在允许范围之外时,执行所述恢复处理。
6.根据权利要求1至3中任一项所述的电子装置,其特征在于,所述电子装置配置为响应于所述更新处理的完成,删除存储在所述电子装置中的所述第二数据。
7.程序更新系统,包括:
车辆,其包括第一电子装置和第二电子装置;以及
程序传送装置,其配置为与所述车辆通信,并将用于所述第一电子装置的程序传送至所述车辆,其中:
所述第二电子装置配置为存储从所述程序传送装置接收的数据;
所述第一电子装置不具有足够的存储区域来同时存储作为要由所述第一电子装置执行的程序的当前版本的当前程序和作为所述当前程序的更新版本的更新程序;
所述第二电子装置配置为与所述程序传送装置和所述第一电子装置通信,并且具有足够的存储区域来同时存储所述当前程序和所述更新程序;
所述第二电子装置配置为获取和存储代表所述当前程序的第一数据;
所述程序传送装置配置为在从所述车辆接收到请求时,将代表所述更新程序的第二数据传送至所述车辆;
所述第二电子装置配置为接收和存储所述第二数据;
所述第二电子装置配置为基于存储在所述第二电子装置中的所述第二数据,执行将存储在所述第一电子装置中的程序从所述当前程序变更为所述更新程序的更新处理;
所述第二电子装置配置为在所述更新处理之后,使用存储在所述第二电子装置中的所述第一数据来执行恢复处理,所述恢复处理用于将所述存储在所述第一电子装置中的程序从所述更新程序恢复为所述当前程序;以及
所述第二电子装置配置为响应于所述恢复处理的完成,删除存储在所述第二电子装置中的所述第一数据。
8.根据权利要求7所述的程序更新系统,其特征在于,所述第一数据是代表所述当前程序与所述更新程序之间的差异的数据。
9.根据权利要求7所述的程序更新系统,其特征在于,所述第二数据是代表所述更新程序与所述当前程序之间的差异的数据。
10.根据权利要求7至9中任一项所述的程序更新系统,其特征在于,所述恢复处理响应于用以发起所述恢复处理的用户指令而执行。
11.根据权利要求7至9中任一项所述的程序更新系统,其特征在于,所述第一电子装置配置为在所述更新处理的执行之后,执行预定的操作测试,并且
所述第二电子装置配置为当所述预定的操作测试的结果落在允许范围之外时,执行所述恢复处理。
12.根据权利要求7至9中任一项所述的程序更新系统,其特征在于,所述第二电子装置配置为响应于所述更新处理的完成,删除存储在所述第二电子装置中的所述第二数据。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019184535A JP7298427B2 (ja) | 2019-10-07 | 2019-10-07 | プログラム更新システムおよびプログラム更新方法 |
JP2019-184535 | 2019-10-07 | ||
CN202010591045.6A CN112698851B (zh) | 2019-10-07 | 2020-06-24 | 程序更新系统、程序传送装置和程序传送方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010591045.6A Division CN112698851B (zh) | 2019-10-07 | 2020-06-24 | 程序更新系统、程序传送装置和程序传送方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118069188A true CN118069188A (zh) | 2024-05-24 |
Family
ID=71111340
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010591045.6A Active CN112698851B (zh) | 2019-10-07 | 2020-06-24 | 程序更新系统、程序传送装置和程序传送方法 |
CN202410345185.3A Pending CN118069188A (zh) | 2019-10-07 | 2020-06-24 | 电子装置和程序更新系统 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010591045.6A Active CN112698851B (zh) | 2019-10-07 | 2020-06-24 | 程序更新系统、程序传送装置和程序传送方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11714628B2 (zh) |
EP (1) | EP3805918B1 (zh) |
JP (1) | JP7298427B2 (zh) |
CN (2) | CN112698851B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6906176B2 (ja) | 2017-03-31 | 2021-07-21 | パナソニックIpマネジメント株式会社 | 配線器具用ケース、及びそれを備える配線器具装置 |
JP7232785B2 (ja) * | 2020-02-19 | 2023-03-03 | 株式会社デンソー | データ配信装置、データ配信システム及びデータ配信プログラム |
JPWO2022209507A1 (zh) | 2021-03-31 | 2022-10-06 |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3678595B2 (ja) * | 1999-01-18 | 2005-08-03 | 富士通テン株式会社 | 車載端末用プログラムの復旧方式 |
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 | 油分吸着材、及び油分回収方法 |
US9043078B2 (en) * | 2010-08-13 | 2015-05-26 | 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 |
JP5966995B2 (ja) * | 2013-03-27 | 2016-08-10 | 株式会社デンソー | 車両用電子制御装置、及び制御プログラム |
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 | ゲートウェイ装置、車載ネットワークシステム及びファームウェア更新方法 |
DE112016004436T5 (de) * | 2015-09-29 | 2018-06-21 | Hitachi Automotive Systems, Ltd. | Bordsteuerungsvorrichtung und Informationsaktualisierungssystemfür eine Bordsteuervorrichtung |
US10437680B2 (en) * | 2015-11-13 | 2019-10-08 | Kabushiki Kaisha Toshiba | Relay apparatus, relay method, and computer program product |
JP6678548B2 (ja) * | 2015-11-13 | 2020-04-08 | 株式会社東芝 | 中継装置、中継方法およびプログラム |
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 | 日立オートモティブシステムズ株式会社 | 制御装置、プログラム更新システム、プログラム更新方法 |
CN111133412A (zh) * | 2017-07-25 | 2020-05-08 | 奥罗拉实验室有限公司 | 基于工具链构建车辆ecu软件的软件增量更新和异常检测 |
JP7087334B2 (ja) * | 2017-10-13 | 2022-06-21 | 株式会社デンソー | 電子制御装置 |
JP6915500B2 (ja) * | 2017-11-06 | 2021-08-04 | トヨタ自動車株式会社 | 更新システム、電子制御装置、更新管理装置、及び更新管理方法 |
JP6958308B2 (ja) * | 2017-12-11 | 2021-11-02 | 株式会社オートネットワーク技術研究所 | 車載更新装置、プログラム及び、プログラム又はデータの更新方法 |
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 |
WO2020032200A1 (ja) * | 2018-08-10 | 2020-02-13 | 株式会社デンソー | センター装置,諸元データの生成方法及び諸元データ生成用プログラム |
US11163549B2 (en) * | 2018-08-10 | 2021-11-02 | Denso Corporation | Vehicle information communication system |
JP7003975B2 (ja) * | 2018-08-10 | 2022-01-21 | 株式会社デンソー | 車両情報通信システム,センター装置及びセンター装置のメッセージ送信方法 |
JP6973449B2 (ja) * | 2018-08-10 | 2021-12-01 | 株式会社デンソー | 車両用電子制御システム、配信パッケージのダウンロード判定方法及び配信パッケージのダウンロード判定プログラム |
CN109471652A (zh) * | 2018-10-24 | 2019-03-15 | 北汽福田汽车股份有限公司 | 车辆的程序更新方法及其系统、车载终端和电子设备 |
EP3742295A1 (en) * | 2019-05-23 | 2020-11-25 | NXP USA, Inc. | Automatic firmware rollback |
-
2019
- 2019-10-07 JP JP2019184535A patent/JP7298427B2/ja active Active
-
2020
- 2020-06-19 EP EP20181089.2A patent/EP3805918B1/en active Active
- 2020-06-24 CN CN202010591045.6A patent/CN112698851B/zh active Active
- 2020-06-24 CN CN202410345185.3A patent/CN118069188A/zh active Pending
- 2020-06-29 US US16/914,590 patent/US11714628B2/en active Active
-
2023
- 2023-06-09 US US18/207,743 patent/US20230315436A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US11714628B2 (en) | 2023-08-01 |
EP3805918A1 (en) | 2021-04-14 |
CN112698851B (zh) | 2024-04-12 |
US20210103435A1 (en) | 2021-04-08 |
CN112698851A (zh) | 2021-04-23 |
JP2021060797A (ja) | 2021-04-15 |
US20230315436A1 (en) | 2023-10-05 |
JP7298427B2 (ja) | 2023-06-27 |
EP3805918B1 (en) | 2023-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112698851B (zh) | 程序更新系统、程序传送装置和程序传送方法 | |
CN109478155B (zh) | 车载更新装置、车载更新系统及通信装置的更新方法 | |
US11967188B2 (en) | Vehicle mounted update apparatus, update processing program, and program update method | |
US20190057214A1 (en) | Update control device, terminal, and method of controlling | |
JP5708940B2 (ja) | 情報管理装置、情報通信システム | |
EP2375323A1 (en) | Firmware image update and management | |
US20210255845A1 (en) | On-board update apparatus, program, and method for updating program or data | |
CN105897461A (zh) | 多系统ota升级方法和多系统设备 | |
CN111787098B (zh) | 一种耳机升级方法、装置及一种耳机和存储介质 | |
CN114884935A (zh) | 数据升级方法、装置、电子设备和存储介质 | |
CN110045969B (zh) | 应用程序安装方法、服务器、系统、设备及存储介质 | |
KR102610730B1 (ko) | 차량의 업데이트 제공 장치 및 컴퓨터 기록 매체 | |
US20210173634A1 (en) | Vehicle control device and program update system | |
CN106095474A (zh) | 用于更新运输工具中的软件的方法和装置 | |
CN112181455B (zh) | 微控制器的在线升级方法、微控制器及存储介质 | |
CN117369844A (zh) | Ota升级方法、装置、设备以及存储介质 | |
CN112199439A (zh) | 数据存储设备和非暂态有形计算机可读存储介质 | |
KR20200121657A (ko) | 차량의 업데이트 제공 장치 및 방법 | |
KR101917378B1 (ko) | 리프로그래밍 장치, 전자제어유닛 및 이를 이용한 리프로그래밍 방법 | |
CN114253568A (zh) | 应用程序升级方法、装置和设备 | |
CN115515012A (zh) | 一种密钥烧录方法、装置、电子设备板卡及存储介质 | |
CN113342385A (zh) | 软件升级方法及装置、空调控制面板 | |
KR101386464B1 (ko) | 이동단말기에서 터치패널의 응용 프로그램 다운로드 장치및 방법 | |
CN110825406A (zh) | 一种软件升级的方法及相关设备 | |
CN116394762B (zh) | 燃料电池车辆数据处理系统、方法及燃料电池车辆 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |