一种基于依赖关系生成空中升级并行任务组的方法及系统技术方案

技术编号:30159799 阅读:23 留言:0更新日期:2021-09-25 15:12
本发明专利技术提供一种基于依赖关系生成空中升级并行任务组的方法及系统,其是根据当前车辆需要升级的控制器清单,和该车型预先设置好的控制器依赖关系,动态生成效率最高的升级组合,将没有依赖关系的控制器动态的合并为一个升级分组,自动为该车辆生成一种最优的同时升级控制器组合方式,可以提高并行升级的效率,降低升级所用的总时间。降低升级所用的总时间。降低升级所用的总时间。

【技术实现步骤摘要】
一种基于依赖关系生成空中升级并行任务组的方法及系统


[0001]本专利技术涉及软件升级和汽车联网
,具体涉及车辆空中升级(OTA)技术。

技术介绍

[0002]随着车辆空中升级(OTA)技术的发展,越来越多的智能化车辆已经具备了OTA功能,通过在云端上传软件更新包,车辆联网后就能检测到软件更新包,下载后并安装软件更新包,实现控制器软件版本的升级,而无需技术人员现场支持。
[0003]随着车辆OTA技术的成熟应用,支持OTA升级的控制器数量也越来越多,从支持娱乐系统中的车机、仪表逐步扩展到中央网关、车身控制器、摄像头等控制器。现有数的车辆空中升级(OTA)系统,当一次需要升级多个控制器时,为了降低升级时间,通常会同时升级多个控制器,然而部分控制器与其他控制器有依赖关系,如果同时升级可能会造成整车异常或无法升级,所以需要在同时升级的控制器清单中移除有依赖关系的控制器,最好是能根据实际升级控制器清单,动态的生成最大化的同时升级控制器数量。现有技术方案通常采用预先给控制器分组的方式解决这个问题,在同一分组的控制器能够同时升级,不同分组之间的控制器不能同时升级。
[0004]然而,采用预先将控制器进行分组的方式,不能灵活应对不同的升级任务,效率较低,具体说明如下:
[0005]假如某车型的所有控制器升级的依赖关系如附图中的表1和图4。
[0006]为了满足上述车型的控制器依赖关系,采用控制器分组的方式,需要预先将控制器进行分组,分组结果如表6所示,每组内的控制器可以同时升级,组与组之间顺序升级。采用分组的方式有一个明显劣势,处于不同分组的控制器不一定是完全有依赖关系,但只要某个分组内有一个控制器需要升级,则需要划分为不同的分组进行升级,升级效率较低。
[0007]例如,若某车型某次发布的软件版本如表2,某车辆的实际软件版本状态如表3,该车辆实际需要升级的控制器清单如表4,通过分组方式,得到的升级任务分组如表7。
[0008]在上述的依赖关系表和升级场景下,实际上第1组和第2组的控制器没有依赖关系,可以同时升级,但采用分组的方式只能分为3组进行升级,造成升级时间变长。

技术实现思路

[0009]本专利技术的目的是提供基于依赖关系生成空中升级并行任务组的方法,根据所有控制器依赖关系和需要升级的控制器清单,动态生成效率最高的升级组合,将没有依赖关系的控制器动态的合并为一个升级分组,以提高并行升级的效率,降低升级所用的总时间。
[0010]本专利技术的技术方案如下:
[0011]本专利技术所述的自动生成并行升级任务的方法,涉及依赖关系列表、升级任务明细、升级分组结果,其具体的实现方法和步骤如下:
[0012]步骤S1:在云端预先配置某车型的依赖关系表,该依赖关系表与车型及控制器相关,通常固定不变。
[0013]步骤S2:根据该车型的软件规划,云端进行软件发布,软件发布包含每个控制器的软件版本和软件包。
[0014]步骤S3:在某车辆处于正常工作时,自动收集所有控制器的软件版本,并上传到云端。
[0015]步骤S4:云端根据该车辆的软件版本,与软件发布版本进行比对,升级该车辆需要升级的控制器清单,生成升级控制器列表。
[0016]步骤S5:云端根据需要升级的控制器清单和依赖关系表,自动生成升级任务组,具体步骤如下:
[0017]步骤S5

1:初始化待分配控制器清单,在升级控制器列表中去除已分组的控制器)。
[0018]步骤S5

2:判断待分配控制器清单是否为空,若为空,任务分组流程结束,若不为空,创建一个新的任务组,在每次创建新的任务组时序号递增,初始序号为1,执行下一步。
[0019]步骤S5

3:依次遍历待分配控制器清单中的所有控制器,并按依赖关系表查找该控制器是否有依赖控制器在待分配控制器清单中,若否,则该控制器不能分配到当前任务分组,若是,则将该控制器分配到当前任务分组中,若遍历完所有控制器后,执行下一步,否则,重复执行该步骤。
[0020]步骤S5

4:任务分组流程结束。
[0021]步骤S6:将升级任务分组下发到车端,进行升级,处于同一任务组内的控制器可以并行升级。
[0022]本专利技术还提供一种基于依赖关系生成空中升级并行任务组的系统,其包括:
[0023]车型控制器依赖关系建立模块:根据车辆实际情况,建立车型控制器依赖关系,依赖关系是控制器之间有先后升级顺序、不能同时升级的依赖关系。
[0024]升级任务检测模块:接收车端上传的各个控制器软件信息,并与车型软件发布平台最新的各个控制器的软件信息进行比对,对于软件唯一标识相同的控制器,若云端有更新的软件包,则添加到需要升级的控制器清单中。
[0025]升级任务生成模块:通过升级任务检测模块生成的需要升级的控制器清单,结合车型控制器依赖关系,自动生成并行升级任务组,生成升级任务。
[0026]升级模块:将升级任务分组下发到车端,进行升级,并对处于同一组内的控制器并行升级,即同时升级。
[0027]本专利技术是根据当前车辆需要升级的控制器清单,和该车型预先设置好的控制器依赖关系,动态生成效率最高的升级组合,将没有依赖关系的控制器动态的合并为一个升级分组,自动为该车辆生成一种最优的同时升级控制器组合方式,可以提高并行升级的效率,降低升级所用的总时间。
附图说明
[0028]图1为本专利技术的系统框图;
[0029]图2为本专利技术的系统流程图;
[0030]图3为本专利技术生成并行任务组的流程图;
[0031]图4为本专利技术举例车型的控制器依赖关系图。
具体实施方式
[0032]以下结合附图进一步说明本专利技术。
[0033]本专利技术用于车辆空中升级(OTA)系统中,对多个控制器需要同时升级时,依据车辆的依赖关系针对每个车辆计算一种高效的任务策略。
[0034]如图1所示,基于依赖关系生成空中升级并行任务组的系统包括:
[0035]车型软件发布平台:负责维护车型各个控制器的软件信息,包含曾经的和最新的软件包、软件唯一标识、软件版本信息等。
[0036]升级任务检测模块:接收车端上传的各个控制器软件信息,并与车型软件发布平台最新的各个控制器的软件信息进行比对,对于软件唯一标识相同的控制器,若云端有更新的软件包(云端软件版本信息比车端软件版本信息更高),则添加到需要升级的控制器清单中。
[0037]升级任务生成模块:通过升级任务检测模块生成的需要升级的控制器清单,结合车型控制器依赖关系,采用本方案所属的自动生成并行升级任务组的方法,生成升级任务。
[0038]车型控制器依赖关系建立模块:根据该车辆实际情况,建立车型控制器依赖关系,依赖关系指本方案所述的控制器之间有先后升级顺序、不能同时升级的依赖关系。
[0039]升级模块:将升级任务分组下发到车端,进行升级本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于依赖关系生成空中升级并行任务组的方法,其特征在于,包括如下步骤:S1:在云端预先配置某车型的依赖关系表,该依赖关系表与车型及控制器相关;S2:根据该车型的软件规划,云端进行软件发布,软件发布包含每个控制器的软件版本和软件包;步骤S3:某车辆处于正常工作时,自动收集所有控制器的软件版本,并上传到云端;步骤S4:云端根据该车辆的软件版本,与软件发布版本进行比对,生成升级控制器列表;步骤S5:云端根据需要升级的控制器清单和依赖关系表,自动生成升级任务组;步骤S6:将升级任务分组下发到车端,进行升级,并对处于同一组内的控制器并行升级,即可以同时升级。2.根据权利要求1所述的基于依赖关系生成空中升级并行任务组的方法,其特征在于,所述步骤S5具体如下:步骤S5

1:初始化待分配控制器清单,在升级控制器列表中去除已分组的控制器;步骤S5

2:判断待分配控制器清单是否为空,若为空,任务分组流程结束,若不为空,创建一个新的任务组,每次创建新的任务组序号递增,初始序号为1,执行下一步;步骤S5

3:依次遍历待分配控制器清单中的所有控制器,并按依赖关系表查找该控制器是否有依赖控制器在待分配控制器清单中,若否,则该控制器不能分配到当前任务分组,若是,则将该控制器分配到当前任务分组中,若遍历完所有控制器后,执行下一步,否则,重复执行该步骤;步骤S5

4:任务分组流程结束。3.根据权利要...

【专利技术属性】
技术研发人员:刘平王刚张鹏王超刘俊
申请(专利权)人:重庆长安汽车股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1