一种VCU软件空中升级方法及装置与流程

文档序号:17490033发布日期:2019-04-23 20:23阅读:872来源:国知局
一种VCU软件空中升级方法及装置与流程

本发明涉及空中升级领域,特别是涉及一种vcu软件空中升级方法及装置。



背景技术:

目前新能源汽车销量逐年递增,新能源汽车电子化程度越来越高,汽车嵌入式软件功能更新以及软件漏洞的修复频次较高,而较多次的进行修复不仅成本较高,而且不断的更新会严重影响用户的使用体验,同时,若出现严重漏洞,可能还需要线下召回更新软件。



技术实现要素:

本发明目的是提供一种vcu软件空中升级方法及装置,能够提高用户的使用体验,减少成本,降低线下召回更新软件的问题。

根据本发明的第一方面,提供了一种vcu软件空中升级方法,包括:

当收到网关发送来的软件升级请求时,检测当前车速、蓄电池和高压继电器的工作状态;

当当前车速、蓄电池和高压继电器的工作状态均满足刷新条件时,刷新识别存储区a与存储区b中版本号低的存储区进行更新;

在所述存储区的固定flash写入标识信息。

进一步的,“刷新识别存储区a与存储区b中版本号低的存储区进行更新”之后还包括:

使诊断会话切换至扩展模式;

进入安全验证。

进一步的,“在所述存储区的固定flash写入标识信息”之后还包括:

判断标识信息是否写入成功;

若写入成功,则对车辆重新上电;

若写入失败,则重新判断是否满足刷新条件。

进一步的,“若写入成功,则对车辆重新上电”之后还包括:

判断升级后的所述存储区的版本号是否大于没有升级的所述存储区的版本号;

若是,则运行升级后的所述存储区的应用程序;

若否,则运行没有升级的所述存储区的应用程序。

根据本发明的第二方面,提供了一种vcu软件空中升级装置,包括:

判断模块,当收到网关发送来的软件升级请求时,检测当前车速、蓄电池和高压继电器的工作状态;

更新模块,当当前车速、蓄电池和高压继电器的工作状态均满足刷新条件时,刷新识别存储区a与存储区b中版本号低的存储区进行更新;

写入模块,在所述存储区的固定flash写入标识信息。

进一步的,“刷新识别存储区a与存储区b中版本号低的存储区进行更新”之后还包括:

切换模块,使诊断会话切换至扩展模式;

验证模块,进入安全验证。

进一步的,“在所述存储区的固定flash写入标识信息”之后还包括:

根据所述判断模块判断标识信息是否写入成功;

若写入成功,则对车辆重新上电;

若写入失败,则重新判断是否满足刷新条件。

进一步的,“若写入成功,则对车辆重新上电”之后还包括:

根据所述判断模块判断升级后的所述存储区的版本号是否大于没有升级的所述存储区的版本号;

若是,则运行升级后的所述存储区的应用程序;

若否,则运行没有升级的所述存储区的应用程序。

根据本发明的第三方面,提供了一种电子设备,包括存储器、处理器、总线以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述的一种vcu软件空中升级方法的步骤。

根据本发明的第四方面,提供了一种存储介质,其上存储有计算机程序,程序被处理器执行时实现第一方面所述的一种vcu软件空中升级方法的步骤。

本发明的有益效果为:与现有技术相比,本发明通过ota空中升级软件方法,基于uds刷新流程通过版本识别来对a/b区软件无缝升级更新,更新结束重新上电后对应用程序版本识别,运行最新区域中应用程序,这样能够确保升级时设备上始终有一个可以工作的系统,降低成本的同时便于后续的维护,还提升了用户的使用体验。

附图说明

图1是根据本发明一实施例的vcu软件空中升级方法的流程图;

图2是根据本发明一实施例的vcu软件空中升级装置的结构图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1示出了根据本发明一实施例的vcu软件空中升级方法的流程,包括:

s11、当收到网关发送来的软件升级请求时,检测当前车速、蓄电池和高压继电器的工作状态。

本方法的执行主体可以是vcu。

在本说明书实施例中,数据传送主要通过网关与vcu进行通讯,其主要是以can通讯方式进行数据传送。can协议的特点为多主控制总线空闲时,所有单元都可发送消息,而两个以上的单元同时开始发送消息时,根据标识符决定优先级;系统柔软性连接总线的单元,没有类似“地址”的信息;速度快;具有错误检测、错误通知和错误恢复功能。vcu即整车控制器接收到网关发送来的ota即空中下载技术软件升级请求后,确认是否可以刷新,其中ota是通过移动通信的空中接口对sim卡数据及应用进行远程管理的技术。

s12、当当前车速、蓄电池和高压继电器的工作状态均满足刷新条件时,刷新识别存储区a与存储区b中版本号低的存储区进行更新。

在本说明书实施例中,vcu在接收到ota软件升级请求后,对刷新条件进行判断后对网关进行回复。刷新条件判断内容可以是汽车当前的车速、蓄电池的电压、高压继电器的工作状态。网关根据vcu的反馈刷新状态来确认是否可以刷新。当满足刷新条件时,网关与vcu基于uds刷新流程进行刷新,uds诊断通信可以类比client-server通信方式,即客户端发送request,服务器收到request之后进行处理,然后向客户端发送response,但诊断协议有自己的特色,它规定了在request和response的格式,在接收request的时候要做到格式的检查,同时由于寻址方式的不同,有无sub-function的支持等,也会影响request和response的处理方式和结果。基于uds技术,在刷新前首先识别a、b区的版本号,例如当前应用程序运行在a区且a区应用程序版本大于b区应用程序版本,b区则为上一版本应用程序,更新低版本程序存储区b。其中a/b系统可以理解为设备上有a和b两套可以工作的系统,可以理解为一套系统分区另外一套为备份分区,通过升级,其中的旧版本也能更新为新版本,实现无缝升级。

在本说明书实施例中,所述刷新条件具体包括:当前车速为零、蓄电池电压大于12v、高压继电器为断开状态。

在本说明书实施例中,需要判断的刷新条件可以包括当前车速是否为零,如车速处于非静止状态,则反馈不满足刷新条件;蓄电池电压大于12v,如电压小于12v,则反馈不满足刷新条件;高压继电器为断开状态,如继电器处于吸合状态,则请求bms断开高压继电器,vcu反馈当前状态给网关。

s13、在所述存储区的固定flash写入标识信息;

在本说明书实施例中,在应用程序刷新成功后,还需要在固定flash写入版本的有效性标识以及版本号。

进一步的,“刷新识别存储区a与存储区b中版本号低的存储区进行更新”之后还包括:

使诊断会话切换至扩展模式;

进入安全验证。

在本说明书实施例中,诊断服务有三种会话:默认会话、编程会话、扩展会话,默认会话等级最低,支持几个安全等级低的服务,也是会话的初始状态,编程会话和扩展会话,可以支持如dtc控制,写did标志,routinecontrol等服务。在对版本号低的存储区进行更新后将诊断会话切换至扩展模式。

在本说明书实施例中,将诊断会话切换至扩展模式后还需要进入安全验证。

进一步的,“在所述存储区的固定flash写入标识信息”之后还包括:

判断标识信息是否写入成功;

若写入成功,则对车辆重新上电;

若写入失败,则重新判断是否满足刷新条件。

在本说明书实施例中,固定flash写入标识信息后vcu还要判断表示信息是否写入成功,如果写入成功,则可以对车辆重新上电使用,如果写入失败,则vcu重新判断车辆是否满足刷新条件。

进一步的,“若写入成功,则对车辆重新上电”之后还包括:

判断升级后的所述存储区的版本号是否大于没有升级的所述存储区的版本号;

若是,则运行升级后的所述存储区的应用程序;

若否,则运行没有升级的所述存储区的应用程序。

在本说明书实施例中,整车点火信号kl15对车辆重新上电,在上电初始化的过程中对版本有效性标识以及版本号进行判断,例如当a区的版本号大于b区的版本号,升级结束后,检测到b区的版本有效性标识且b区版本号大于a区版本号,则运行b区应用程序,否则运行a区应用程序。

图2示出了根据本发明一实施例的vcu软件空中升级装置的结构,包括:

判断模块21,当收到网关发送来的软件升级请求时,检测当前车速、蓄电池和高压继电器的工作状态;

更新模块22,当当前车速、蓄电池和高压继电器的工作状态均满足刷新条件时,刷新识别存储区a与存储区b中版本号低的存储区进行更新;

写入模块23,在所述存储区的固定flash写入标识信息。进一步的,“使所述中控大屏变为可操作状态”具体包括:

进一步的,“刷新识别存储区a与存储区b中版本号低的存储区进行更新”之后还包括:

切换模块,使诊断会话切换至扩展模式;

验证模块,进入安全验证。

进一步的,“在所述存储区的固定flash写入标识信息”之后还包括:

根据所述判断模块判断标识信息是否写入成功;

若写入成功,则对车辆重新上电;

若写入失败,则重新判断是否满足刷新条件。

进一步的,“若写入成功,则对车辆重新上电”之后还包括:

根据所述判断模块判断升级后的所述存储区的版本号是否大于没有升级的所述存储区的版本号;

若是,则运行升级后的所述存储区的应用程序;

若否,则运行没有升级的所述存储区的应用程序。

本发明又一实施例公开一种电子设备,包括存储器、处理器、总线以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述方法实施例的步骤。本发明又一实施例公开一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述方法实施例的步骤。例如包括:当收到网关发送来的软件升级请求时,检测当前车速、蓄电池和高压继电器的工作状态;当当前车速、蓄电池和高压继电器的工作状态均满足刷新条件时,刷新识别存储区a与存储区b中版本号低的存储区进行更新;在所述存储区的固定flash写入标识信息。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其他实施例中所包括的某些特征而不是其他特征,但是不同的实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求的保护的实施例的任意之一都可以以任意的组合方式来使用。

本领域普通技术人员可以理解:以上各实施例仅用以说明本发明的技术方案,而非对其限制,尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换,而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求所限定的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1