CN113434169B - 一种基于依赖关系生成空中升级并行任务组的方法及系统 - Google Patents
一种基于依赖关系生成空中升级并行任务组的方法及系统 Download PDFInfo
- Publication number
- CN113434169B CN113434169B CN202110690144.4A CN202110690144A CN113434169B CN 113434169 B CN113434169 B CN 113434169B CN 202110690144 A CN202110690144 A CN 202110690144A CN 113434169 B CN113434169 B CN 113434169B
- Authority
- CN
- China
- Prior art keywords
- controllers
- controller
- list
- upgrading
- distributed
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 230000001419 dependent effect Effects 0.000 claims description 14
- 238000001514 detection method Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000007711 solidification Methods 0.000 description 1
- 230000008023 solidification Effects 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
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种基于依赖关系生成空中升级并行任务组的方法及系统,其是根据当前车辆需要升级的控制器清单,和该车型预先设置好的控制器依赖关系,动态生成效率最高的升级组合,将没有依赖关系的控制器动态的合并为一个升级分组,自动为该车辆生成一种最优的同时升级控制器组合方式,可以提高并行升级的效率,降低升级所用的总时间。
Description
技术领域
本发明涉及软件升级和汽车联网技术领域,具体涉及车辆空中升级(OTA)技术。
背景技术
随着车辆空中升级(OTA)技术的发展,越来越多的智能化车辆已经具备了OTA功能,通过在云端上传软件更新包,车辆联网后就能检测到软件更新包,下载后并安装软件更新包,实现控制器软件版本的升级,而无需技术人员现场支持。
随着车辆OTA技术的成熟应用,支持OTA升级的控制器数量也越来越多,从支持娱乐系统中的车机、仪表逐步扩展到中央网关、车身控制器、摄像头等控制器。现有数的车辆空中升级(OTA)系统,当一次需要升级多个控制器时,为了降低升级时间,通常会同时升级多个控制器,然而部分控制器与其他控制器有依赖关系,如果同时升级可能会造成整车异常或无法升级,所以需要在同时升级的控制器清单中移除有依赖关系的控制器,最好是能根据实际升级控制器清单,动态的生成最大化的同时升级控制器数量。现有技术方案通常采用预先给控制器分组的方式解决这个问题,在同一分组的控制器能够同时升级,不同分组之间的控制器不能同时升级。
然而,采用预先将控制器进行分组的方式,不能灵活应对不同的升级任务,效率较低,具体说明如下:
假如某车型的所有控制器升级的依赖关系如附图中的表1和图4。
为了满足上述车型的控制器依赖关系,采用控制器分组的方式,需要预先将控制器进行分组,分组结果如表6所示,每组内的控制器可以同时升级,组与组之间顺序升级。采用分组的方式有一个明显劣势,处于不同分组的控制器不一定是完全有依赖关系,但只要某个分组内有一个控制器需要升级,则需要划分为不同的分组进行升级,升级效率较低。
例如,若某车型某次发布的软件版本如表2,某车辆的实际软件版本状态如表3,该车辆实际需要升级的控制器清单如表4,通过分组方式,得到的升级任务分组如表7。
在上述的依赖关系表和升级场景下,实际上第1组和第2组的控制器没有依赖关系,可以同时升级,但采用分组的方式只能分为3组进行升级,造成升级时间变长。
发明内容
本发明的目的是提供基于依赖关系生成空中升级并行任务组的方法,根据所有控制器依赖关系和需要升级的控制器清单,动态生成效率最高的升级组合,将没有依赖关系的控制器动态的合并为一个升级分组,以提高并行升级的效率,降低升级所用的总时间。
本发明的技术方案如下:
本发明所述的自动生成并行升级任务的方法,涉及依赖关系列表、升级任务明细、升级分组结果,其具体的实现方法和步骤如下:
步骤S1:在云端预先配置某车型的依赖关系表,该依赖关系表与车型及控制器相关,通常固定不变。
步骤S2:根据该车型的软件规划,云端进行软件发布,软件发布包含每个控制器的软件版本和软件包。
步骤S3:在某车辆处于正常工作时,自动收集所有控制器的软件版本,并上传到云端。
步骤S4:云端根据该车辆的软件版本,与软件发布版本进行比对,升级该车辆需要升级的控制器清单,生成升级控制器列表。
步骤S5:云端根据需要升级的控制器清单和依赖关系表,自动生成升级任务组,具体步骤如下:
步骤S5-1:初始化待分配控制器清单,在升级控制器列表中去除已分组的控制器)。
步骤S5-2:判断待分配控制器清单是否为空,若为空,任务分组流程结束,若不为空,创建一个新的任务组,在每次创建新的任务组时序号递增,初始序号为1,执行下一步。
步骤S5-3:依次遍历待分配控制器清单中的所有控制器,并按依赖关系表查找该控制器是否有依赖控制器在待分配控制器清单中,若否,则该控制器不能分配到当前任务分组,若是,则将该控制器分配到当前任务分组中,若遍历完所有控制器后,执行下一步,否则,重复执行该步骤。
步骤S5-4:任务分组流程结束。
步骤S6:将升级任务分组下发到车端,进行升级,处于同一任务组内的控制器可以并行升级。
本发明还提供一种基于依赖关系生成空中升级并行任务组的系统,其包括:
车型控制器依赖关系建立模块:根据车辆实际情况,建立车型控制器依赖关系,依赖关系是控制器之间有先后升级顺序、不能同时升级的依赖关系。
升级任务检测模块:接收车端上传的各个控制器软件信息,并与车型软件发布平台最新的各个控制器的软件信息进行比对,对于软件唯一标识相同的控制器,若云端有更新的软件包,则添加到需要升级的控制器清单中。
升级任务生成模块:通过升级任务检测模块生成的需要升级的控制器清单,结合车型控制器依赖关系,自动生成并行升级任务组,生成升级任务。
升级模块:将升级任务分组下发到车端,进行升级,并对处于同一组内的控制器并行升级,即同时升级。
本发明是根据当前车辆需要升级的控制器清单,和该车型预先设置好的控制器依赖关系,动态生成效率最高的升级组合,将没有依赖关系的控制器动态的合并为一个升级分组,自动为该车辆生成一种最优的同时升级控制器组合方式,可以提高并行升级的效率,降低升级所用的总时间。
附图说明
图1为本发明的系统框图;
图2为本发明的系统流程图;
图3为本发明生成并行任务组的流程图;
图4为本发明举例车型的控制器依赖关系图。
具体实施方式
以下结合附图进一步说明本发明。
本发明用于车辆空中升级(OTA)系统中,对多个控制器需要同时升级时,依据车辆的依赖关系针对每个车辆计算一种高效的任务策略。
如图1所示,基于依赖关系生成空中升级并行任务组的系统包括:
车型软件发布平台:负责维护车型各个控制器的软件信息,包含曾经的和最新的软件包、软件唯一标识、软件版本信息等。
升级任务检测模块:接收车端上传的各个控制器软件信息,并与车型软件发布平台最新的各个控制器的软件信息进行比对,对于软件唯一标识相同的控制器,若云端有更新的软件包(云端软件版本信息比车端软件版本信息更高),则添加到需要升级的控制器清单中。
升级任务生成模块:通过升级任务检测模块生成的需要升级的控制器清单,结合车型控制器依赖关系,采用本方案所属的自动生成并行升级任务组的方法,生成升级任务。
车型控制器依赖关系建立模块:根据该车辆实际情况,建立车型控制器依赖关系,依赖关系指本方案所述的控制器之间有先后升级顺序、不能同时升级的依赖关系。
升级模块:将升级任务分组下发到车端,进行升级,并对处于同一组内的控制器并行升级,即同时升级。
以下以背景技术描述的升级场景为例,结合具体流程图2,说明使用本发明的方法过程:
步骤S1:在云端配置好该车型的控制器依赖关系,表1表达的依赖关系也可以转换为图4的表达方式,箭头表达控制器间的依赖关系,有箭头一端的控制器为无箭头一端的控制器的依赖控制器。
该车型的控制器依赖关系表如表1:
表1
步骤S2:根据该车型的软件规划,在云端发布软件升级包,软件发布包含每个控制器的软件版本和软件包,发布的软件版本举例如表2;
表2
步骤S3:该车辆处于正常工作时,自动收集所有控制器的软件版本,并上传到云端。
该车辆所有控制器实际的软件版本状态举例如表3:
表3
步骤S4:该车辆在上报控制器实际软件版本状态后,云端的升级任务检测模块接收车端上传的各个控制器软件信息,并与车型软件发布平台最新的各个控制器的软件信息进行比对,生成升级控制器列表,如表4;
表4
控制器 | 版本号 |
1A | 2.0 |
2B | 2.0 |
3A | 2.0 |
。
步骤S5:云端根据需要升级的控制器清单和依赖关系表,自动生成升级任务组,处于同一组内的控制器可以并行升级,其具体流程图如图3,具体步骤如下:
步骤S5-1:初始化待分配控制器清单(在升级控制器列表中去除已分组的控制器),得到待分配控制器清单为1A/2B/3A。
步骤S5-2:待分配控制器清单不为空,则创建一个新的任务组1,执行下一步。
步骤S5-3:遍历1A控制器的依赖关系表,其依赖的控制器2A/2B/3A/3B/3C,在待分配控制器清单中,则跳过1A;遍历2B控制器的依赖关系表,其依赖的控制器3B/3C,不在待分配控制器清单中,则将2B加入任务组1;遍历3A控制器的依赖关系表,其依赖的控制器为空,不在待分配控制器清单中,则将3A加入任务组1;遍历完待分配控制器清单后,重复执行步骤S5-1。
步骤S5-1:初始化待分配控制器清单(在升级控制器列表中去除已加入任务组的控制器),得到待分配控制器清单为1A。
步骤S5-2:待分配控制器清单不为空,则创建一个新的任务组2,执行下一步;否则,执行步骤5-4;
步骤S5-3:遍历1A控制器的依赖关系表,其依赖的控制器2A/2B/3A/3B/3C,不在待分配控制器清单中,则将1A加入任务组1;遍历完待分配控制器清单后,重复执行步骤S5-1。
步骤S5-1:初始化待分配控制器清单(在升级控制器列表中去除已加入任务组的控制器),得到待分配控制器清单为空。
步骤S5-4:待分配控制器清单为空,结束流程。
步骤S6:在第1个任务组升级的同时,按步骤S5的方式,升级第2个并行升级任务组,得到第2个升级任务组只有控制器1A,最终动态生成的升级任务组,如表5;
表5为本发明举例车型某车辆实际生成的升级任务组
表6为本发明背景技术采用分组方式的固化分组:
分组号 | 组内控制器清单 |
第1组 | 3A/3B/3C |
第2组 | 2A/2B |
第3组 | 1A |
。
表7为本发明背景技术采用分组方式实际生成的升级任务组;
Claims (3)
1.基于依赖关系生成空中升级并行任务组的方法,其特征在于,包括如下步骤:
S1:在云端预先配置某车型的依赖关系表,该依赖关系表与车型及控制器相关,依赖关系表;
S2:根据该车型的软件规划,云端进行软件发布,软件发布包含每个控制器的软件版本和软件包;
步骤S3:某车辆处于正常工作时,自动收集所有控制器的软件版本,并上传到云端;
步骤S4:云端根据该车辆的软件版本,与软件发布版本进行比对,生成需要升级的控制器列表,云端下发需要升级的控制器清单和依赖关系至车端;
步骤S5:车端根据需要升级的控制器清单和依赖关系,自动生成并行升级任务组;
步骤S5-1:初始化待分配控制器清单,在升级控制器列表中去除已分组的控制器;
步骤S5-2:判断待分配控制器清单是否为空,若为空,任务分组流程结束,若不为空,创建一个新的任务组,每次创建新的任务组序号递增,初始序号为1,执行下一步;
步骤S5-3:依次遍历待分配控制器清单中的所有控制器,并按依赖关系表查找该控制器是否有依赖控制器在待分配控制器清单中,若是,则表明有依赖控制器需要先于该控制器升级,该控制器不能分配到当前任务分组,保留在待分配控制器清单中;若否,则表明没有依赖控制器需要先于该控制器升级,该控制器从待分配控制器清单中移除,分配到当前任务分组中;若遍历完所有控制器后,执行下一步,否则,重复执行该步骤;
步骤S5-4:任务分组流程结束;
步骤S6:将升级任务分组下发到车端,进行升级,并对处于同一组内的控制器并行升级,即可以同时升级。
2.根据权利要求1所述的基于依赖关系生成空中升级并行任务组的方法,其特征在于,生成并行升级任务组的方法如下:待分配控制器清单为1A/2B/3A,遍历1A控制器的依赖关系表,其依赖的控制器有2A/2B/3A/3B/3C,在待分配控制器清单中,则跳过1A;遍历2B控制器的依赖关系表,其依赖的控制器有3B/3C,不在待分配控制器清单中,则将2B加入第1个并行升级任务组;遍历3A控制器的依赖关系表,其依赖的控制器为空,不在待分配控制器清单中,则将3A加入第1个并行升级任务组;完成遍历后,待分配控制器清单为1A,遍历1A控制器的依赖关系表,其依赖的控制器有2A/2B/3A/3B/3C,不在待分配控制器清单中,则将2B加入第1个并行升级任务组;完成遍历后,待分配控制器清单为空,结束任务分组流程。
3.基于依赖关系生成空中升级并行任务组的系统,其特征在于,包括:
车型控制器依赖关系建立模块:根据车辆实际情况,建立车型控制器依赖关系,依赖关系是控制器之间有先后升级顺序、不能同时升级的依赖关系;
升级任务检测模块:接收车端上传的各个控制器软件信息,并与车型软件发布平台最新的各个控制器的软件信息进行比对,对于软件唯一标识相同的控制器,若云端有更新的软件包,则添加到需要升级的控制器清单中;
升级任务生成模块:通过升级任务检测模块生成的需要升级的控制器清单,结合车型控制器依赖关系,自动生成并行升级任务组,生成升级任务;包括:初始化待分配控制器清单,在升级控制器列表中去除已分组的控制器;判断待分配控制器清单是否为空,若为空,任务分组流程结束,若不为空,创建一个新的任务组,每次创建新的任务组序号递增,初始序号为1;依次遍历待分配控制器清单中的所有控制器,并按依赖关系表查找该控制器是否有依赖控制器在待分配控制器清单中,若否,则该控制器不能分配到当前任务分组,若是,则将该控制器分配到当前任务分组中,若遍历完所有控制器后,任务分组流程结束,否则,重复执行该步骤;
升级模块:将升级任务分组下发到车端,进行升级,并对处于同一组内的控制器并行升级,即同时升级。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110690144.4A CN113434169B (zh) | 2021-06-22 | 2021-06-22 | 一种基于依赖关系生成空中升级并行任务组的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110690144.4A CN113434169B (zh) | 2021-06-22 | 2021-06-22 | 一种基于依赖关系生成空中升级并行任务组的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113434169A CN113434169A (zh) | 2021-09-24 |
CN113434169B true CN113434169B (zh) | 2023-03-28 |
Family
ID=77757130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110690144.4A Active CN113434169B (zh) | 2021-06-22 | 2021-06-22 | 一种基于依赖关系生成空中升级并行任务组的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113434169B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113094073B (zh) * | 2021-04-29 | 2024-03-12 | 芜湖雄狮汽车科技有限公司 | 车辆远程升级方法、装置及服务器 |
DE102022205707A1 (de) * | 2022-06-03 | 2023-12-14 | Siemens Aktiengesellschaft | Effiziente Softwareaktualisierung einer Vielzahl von kommunikationsfähigen Niederspannungselementen |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102422262A (zh) * | 2009-05-08 | 2012-04-18 | 松下电器产业株式会社 | 处理器 |
WO2015142548A1 (en) * | 2014-03-21 | 2015-09-24 | Oracle International Corporation | Dependency-aware transaction batching for data replication |
CN107844343A (zh) * | 2017-11-24 | 2018-03-27 | 税友软件集团股份有限公司 | 一种复杂服务端应用系统的升级系统及方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10585916B1 (en) * | 2016-10-07 | 2020-03-10 | Health Catalyst, Inc. | Systems and methods for improved efficiency |
CN111385191B (zh) * | 2018-12-28 | 2022-03-15 | 联合汽车电子有限公司 | 车载互联网关、车辆ota升级系统和方法、计算机存储介质 |
CN110162325A (zh) * | 2019-07-16 | 2019-08-23 | 四川驹马科技有限公司 | 一种车机无感知升级系统及升级方法 |
CN110377311A (zh) * | 2019-07-19 | 2019-10-25 | 上海擎感智能科技有限公司 | 基于软件依赖关系的ota终端升级方法、系统、介质及ota终端 |
CN112104736B (zh) * | 2020-09-17 | 2022-07-26 | 广州汽车集团股份有限公司 | 一种基于ota的多ecu升级方法 |
CN113687853B (zh) * | 2020-09-21 | 2023-12-05 | 华人运通(上海)云计算科技有限公司 | 车辆升级控制方法及计算机存储介质 |
CN112114832B (zh) * | 2020-09-21 | 2024-03-15 | 华人运通(上海)云计算科技有限公司 | 车辆升级控制方法、终端设备、车辆和计算机存储介质 |
-
2021
- 2021-06-22 CN CN202110690144.4A patent/CN113434169B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102422262A (zh) * | 2009-05-08 | 2012-04-18 | 松下电器产业株式会社 | 处理器 |
WO2015142548A1 (en) * | 2014-03-21 | 2015-09-24 | Oracle International Corporation | Dependency-aware transaction batching for data replication |
CN107844343A (zh) * | 2017-11-24 | 2018-03-27 | 税友软件集团股份有限公司 | 一种复杂服务端应用系统的升级系统及方法 |
Non-Patent Citations (1)
Title |
---|
施庆国等.智能网联汽车的OTA升级方案.《2018中国汽车工程学会年会论文集 》.2018,49-55. * |
Also Published As
Publication number | Publication date |
---|---|
CN113434169A (zh) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113434169B (zh) | 一种基于依赖关系生成空中升级并行任务组的方法及系统 | |
CN112104736B (zh) | 一种基于ota的多ecu升级方法 | |
US20200218531A1 (en) | OVER-THE-AIR (OTA) UPDATES OF ELECTRONIC CONTROL UNITS (ECUs) IN VEHICLES | |
CN109828935B (zh) | 一种基于can fd总线的并行刷写方法 | |
JP6666281B2 (ja) | ソフトウェア更新システム、サーバ | |
CN105939213B (zh) | 用于车辆的分系统和相应的车辆 | |
CN104572221B (zh) | 一种车载ecu在线升级系统及方法 | |
US20150331686A1 (en) | Over-the-air vehicle issue resolution | |
DE102015108793A1 (de) | Fahrzeugdownload mittels entfernter Mobilvorrichtung | |
CN109032653A (zh) | 无人驾驶汽车车载终端升级方法、装置、设备及存储介质 | |
CN113434170B (zh) | 一种整车ota数据下载部署方法及装置 | |
CN102799448A (zh) | 用于车载终端设备的软件智能升级方法 | |
CN113190250A (zh) | 座舱软件升级方法、电子设备及可读存储介质 | |
CN113590164A (zh) | 一种整车控制器软件的升级方法及系统 | |
CN115277671A (zh) | 车辆的ota升级方法、装置、车辆及存储介质 | |
DE102017100749A1 (de) | Verfahren und vorrichtung für zyklischen dateienaustauschbei abgeschaltetem fahrzeug | |
CN113504921A (zh) | 整车软件更新方法及系统 | |
CN116627485A (zh) | 汽车控制器软件升级的方法、装置及汽车 | |
CN110045978B (zh) | 一种不同类型ssd设备的固件统一升级方法与系统 | |
CN116679975A (zh) | 一种车身控制适配层实现方法、车身控制方法及系统 | |
CN116192632A (zh) | 一种ap管理方法及装置 | |
CN116126377A (zh) | 一种车辆升级方法、装置及处理设备 | |
US20230168881A1 (en) | Method, System, Computer Program and Storage Medium for Documenting an Update of Software of a Component of a Vehicle | |
CN115495460A (zh) | 一种地图数据更新方法、更新系统、电子设备及存储介质 | |
CN113434164A (zh) | 一种车载娱乐主机的设置项云端配置更新方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |