座舱软件升级方法、电子设备及可读存储介质与流程

文档序号:26101521发布日期:2021-07-30 18:12阅读:90来源:国知局
座舱软件升级方法、电子设备及可读存储介质与流程

本发明属于通信技术领域,特别涉及一种座舱软件升级方法、电子设备及可读存储介质。



背景技术:

汽车ota(空中下载技术)升级是指对汽车的软件、固件等的版本的更新,现有汽车ota解决方案一般是通过云、管、端全链路一站式实现,由云端的ota管理平台、汽车端的升级逻辑控制及升级代理程序、连接汽车端和云端的通信管道三部分组成。汽车ota提供了云端管理及车端的落地方案,支持整车升级。但是目前升级一般都是针对整个软件进行更新,云端会提供一个完整安装包,但是该安装包一般都是包含某类型车用ecu的所有应用的通用安装包,并不会根据实际使用汽车的类型以及车用ecu(车载控制器)的不同需求进行区分。



技术实现要素:

本发明要解决的技术问题是为了克服现有技术中汽车ota升级没有针对性导致用户体验不佳的缺陷,提供一种座舱软件升级方法、电子设备及可读存储介质。

本发明是通过下述技术方案来解决上述技术问题:

一种座舱软件升级方法,所述方法包括:

云端根据升级请求生成目标座舱的升级包列表,并将所述升级包列表发送至所述目标座舱的控制器;所述升级请求包括所述目标座舱的座舱信息和控制器信息,所述升级包列表包括待升级软件的软件信息以及与所述待升级软件关联的依赖软件的软件信息;

所述控制器基于所述升级包列表发起下载请求;

所述云端根据所述下载请求获取升级包,并将所述升级包发送至所述控制器;所述升级包包括所述待升级软件和所述依赖软件;

所述控制器根据所述升级包进行所述目标座舱的软件升级。

较佳地,所述云端根据升级请求生成目标座舱的升级包列表的步骤之前,所述方法还包括:

所述控制器发起所述升级请求。

较佳地,所述升级请求还包括时间信息,所述云端根据升级请求生成目标座舱的升级包列表的步骤具体包括:

根据所述时间信息、所述座舱信息和所述控制器信息获取所述目标座舱的历史升级信息;

基于所述历史升级信息和所述控制器信息获取待升级软件和所述依赖软件的信息生成所述升级包列表。

较佳地,所述控制器包括主节点和多个从节点,每个从节点分别对应所述控制器的不同升级模块,所述将所述升级包发送至所述控制器的步骤具体包括:

将所述升级包发送至所述主节点;

所述主节点将所述升级包中的多个软件分别发送至对应的从节点;

所述控制器根据所述升级包进行所述目标座舱的软件升级的步骤具体包括:

与所述从节点对应的升级模块分别基于所述多个软件对所述目标座舱进行软件升级。

较佳地,所述将所述升级包发送至所述控制器的步骤具体包括:

基于微服务集群将所述升级包发送至所述控制器。

一种座舱软件升级系统,所述系统包括:云端和控制器,所述控制器设于座舱内;

云端用于根据升级请求生成目标座舱的升级包列表,并将所述升级包列表发送至所述目标座舱的控制器;所述升级请求包括所述目标座舱的座舱信息和控制器信息,所述升级包列表包括待升级软件的软件信息以及与所述待升级软件关联的依赖软件的软件信息;

所述控制器用于基于所述升级包列表发起下载请求;

所述云端还用于根据所述下载请求获取升级包,并将所述升级包发送至所述控制器;所述升级包包括所述待升级软件和所述依赖软件;

所述控制器还用于根据所述升级包进行所述目标座舱的软件升级。

较佳地,所述控制器还用于发起所述升级请求。

较佳地,所述控制器还用于根据所述时间信息、所述座舱信息和所述控制器信息获取所述目标座舱的历史升级信息;

所述控制器还用于基于所述历史升级信息和所述控制器信息获取待升级软件和所述依赖软件的信息生成所述升级包列表。

较佳地,所述控制器包括主节点和多个从节点,所述控制器还包括与每个从节点分别对应的不同升级模块;

所述云端用于将所述升级包发送至所述主节点;

所述主节点用于将所述升级包中的多个软件分别发送至对应的从节点;

与所述从节点对应的升级模块用于分别基于所述多个软件对所述目标座舱进行软件升级。

较佳地,所述云端用于基于微服务集群将所述升级包发送至所述控制器。

一种座舱软件升级方法,所述升级方法应用于车端,所述方法包括:

目标座舱的控制器发起升级请求;

接收根据所述升级请求生成的目标座舱的升级包列表;所述升级请求包括所述目标座舱的座舱信息和控制器信息,所述升级包列表包括待升级软件的软件信息以及与所述待升级软件关联的依赖软件的软件信息;

所述目标座舱的控制器基于所述升级包列表发起下载请求,以对所述待升级软件和所述依赖软件进行下载;

所述控制器根据下载好的所述待升级软件和所述依赖软件进行所述目标座舱的软件升级。

较佳地,所述控制器包括主节点和多个从节点,每个从节点分别对应所述控制器的不同升级模块,所述控制器根据完成下载的所述待升级软件和所述依赖软件进行所述目标座舱的软件升级的步骤具体包括:

所述主节点接收所述待升级软件和所述依赖软件;

所述多个从节点分别从所述从节点接收对应每个从节点的任一待升级软件和/或任一依赖软件;

与每个从节点对应的升级模块基于所述任一待升级软件和/或所述任一依赖软件对所述目标座舱进行软件升级。

一种座舱软件升级系统,所述升级系统应用于车端,所述系统包括:控制器和数据接收模块;

目标座舱的控制器用于发起升级请求;

数据接收模块用于接收根据所述升级请求生成的目标座舱的升级包列表;所述升级请求包括所述目标座舱的座舱信息和控制器信息,所述升级包列表包括待升级软件的软件信息以及与所述待升级软件关联的依赖软件的软件信息;

所述控制器还用于基于所述升级包列表发起下载请求,以对所述待升级软件和所述依赖软件进行下载;

所述控制器根据下载好的所述待升级软件和所述依赖软件进行所述目标座舱的软件升级。

较佳地,所述控制器包括主节点和多个从节点,所述控制器还包括与每个从节点分别对应的不同升级模块;

所述主节点用于接收所述待升级软件和所述依赖软件;

所述多个从节点用于分别从所述从节点接收对应每个从节点的任一待升级软件和/或任一依赖软件;

与每个从节点对应的升级模块用于基于所述任一待升级软件和/或所述任一依赖软件对所述目标座舱进行软件升级。

一种座舱软件升级方法,所述升级方法应用于云端,所述方法包括:

接收目标座舱的控制器的升级请求;所述升级请求包括所述目标座舱的座舱信息和控制器信息;

根据所述升级请求生成所述目标座舱的升级包列表,所述升级包列表包括待升级软件的软件信息以及与所述待升级软件关联的依赖软件的软件信息;

接收所述控制器基于所述升级包列表发起的下载请求;

根据下载请求获取升级包,并将所述升级包发送至所述目标座舱,以使得所述目标座舱根据所述升级包进行软件升级,所述升级包包括所述待升级软件和所述依赖软件。

较佳地,所述升级请求还包括时间信息,所述根据所述升级请求生成所述目标座舱的升级包列表的步骤具体包括:

根据所述时间信息、所述座舱信息和所述控制器信息获取所述目标座舱的历史升级信息;

基于所述历史升级信息和所述控制器信息获取待升级软件和所述依赖软件的信息生成所述升级包列表。

较佳地,所述将所述升级包发送至所述目标座舱的步骤具体包括:

基于微服务集群将所述升级包发送至所述目标座舱。

一种座舱软件升级系统,所述升级方法应用于云端,所述系统包括:升级请求接收模块、列表生成模块、下载请求接收模块和升级包获取模块;

升级请求接收模块用于接收目标座舱的控制器的升级请求;所述升级请求包括所述目标座舱的座舱信息和控制器信息;

列表生成模块用于根据所述升级请求生成所述目标座舱的升级包列表,所述升级包列表包括待升级软件的软件信息以及与所述待升级软件关联的依赖软件的软件信息;

下载请求接收模块用于接收所述目标座舱基于所述升级包列表发起的下载请求;

升级包获取模块用于根据下载请求获取升级包,并将所述升级包发送至所述目标座舱,以使得所述目标座舱根据所述升级包进行软件升级,所述升级包包括所述待升级软件和所述依赖软件。

较佳地,所述升级请求还包括时间信息;

列表生成模块用于根据所述时间信息、所述座舱信息和所述控制器信息获取所述目标座舱的历史升级信息,并基于所述历史升级信息和所述控制器信息获取待升级软件和所述依赖软件的信息生成所述升级包列表。

较佳地,所述系统还包括:升级包发送模块;

升级包发送模块用于基于微服务集群将所述升级包发送至所述目标座舱。

一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述的座舱软件升级方法。

一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述的座舱软件升级方法的步骤。

本发明的积极进步效果在于:针对座舱的座舱信息和控制器信息生成对应的定制升级包列表,进而基于云端实现对应的升级包的下载,最终由座舱的主从节点架构实现座舱软件的升级,本申请的座舱软件升级方法统一和简化了软件升级的管理和维护,实现定制化软件升级,提高了用户体验。

附图说明

图1为本发明实施例1的座舱软件升级方法的流程图。

图2为本发明实施例1的座舱软件升级方法中步骤12的流程图。

图3为本发明实施例1的座舱软件升级方法中步骤16的流程图。

图4为本发明实施例2的座舱软件升级方法的流程图。

图5为本发明实施例2的座舱软件升级方法中步骤24的流程图。

图6为本发明实施例3的座舱软件升级方法的流程图。

图7为本发明实施例3的座舱软件升级方法中步骤32的流程图。

图8为本发明实施例6的座舱软件升级系统的模块示意图。

图9为本发明实施例7的电子设备的结构示意图。

具体实施方式

下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。

实施例1

一种座舱软件升级方法,如图1所示,所述方法包括:

步骤11、目标座舱的控制器发起升级请求;升级请求包括目标座舱的座舱信息和控制器信息;

其中,座舱可以为交通工具座舱、汽车座舱、汽车智能座舱等,控制器可以具体为车载控制器(ecu)。在对座舱进行软件升级过程中,为了获取与不同座舱对应的可升级包列表,升级请求中需要进一步包含座舱信息和控制器信息,以实现座舱的定制化软件升级。另外,采用座舱主动发起升级请求,进而获取升级包列表的方式,无论何时均能获得与座舱情况相匹配的升级包列表。

步骤12、云端根据升级请求生成目标座舱的升级包列表;升级包列表包括待升级软件的软件信息以及与待升级软件关联的依赖软件的软件信息;

其中,座舱软件升级过程中,考虑到座舱系统一般为多芯片多系统的复杂架构,为了保证不同功能模块不同版本间的安装依赖关系,升级包列表中还需要包含有依赖软件的列表信息,以确保座舱关联软件的下载或者同步升级。另外,软件信息包括但不限于软件的版本,大小,类型,目标芯片及目标系统等,升级包列表内容可以为压缩或非压缩的二进制内容。

步骤13、将升级包列表发送至目标座舱的控制器;

步骤14、控制器基于升级包列表发起下载请求;

步骤15、云端根据下载请求获取升级包;升级包包括待升级软件和依赖软件;

步骤16、将升级包发送至控制器;

步骤17、控制器根据升级包进行目标座舱的软件升级。

本实施例中,所述升级请求还包括时间信息,如图2所示,步骤12具体包括:

步骤121、根据时间信息、座舱信息和控制器信息获取目标座舱的历史升级信息;

步骤122、基于历史升级信息和控制器信息获取待升级软件和依赖软件的信息生成升级包列表。

其中,每辆车的升级包列表根据座舱信息、时间信息以及控制器信息过滤该座舱过往的升级记录而成,进而实现让车辆获取符合自身情况的升级包列表。另外,升级包列表为程序动态生成,也可以针对每辆车的具体型号、车架号等信息增加针对各车的定制升级包列表。

本实施例中,所述控制器包括主节点和多个从节点,每个从节点分别对应所述控制器的不同升级模块,如图3所示,步骤16具体包括:

步骤161、将升级包发送至主节点;

其中,基于微服务集群将所述升级包发送至所述主节点。利用最新云计算集群技术,实现并发负载,可省去租赁内容分发网络的费用,且对升级过程有更多的控制及安全性。具体的,大量并发请求通过负载平衡服务器转发给对称的微服务集群的容器中处理,容器中的微服务直接访问云端存储。对于座舱软件更新来说,下载速度无需达到网络视频直播的水准,因此可以用这种分布式对称微服务取代内容分发网络进行数据传输。

步骤162、主节点将升级包中的多个软件分别发送至对应的从节点;

其中,采用一个主节点多个从节点的架构,主节点负责管理维护整车软件包的下载、更新,从节点从主节点获取软件包并执行更新,该架构统一和简化了座舱软件升级的管理和维护。

进一步的,步骤17具体包括:与所述从节点对应的升级模块分别基于所述多个软件对所述目标座舱进行软件升级。需要说明的是,升级完成后,主节点会获取执行升级任务的从节点的安装结果发送至云端进行存储,以用于下一次的软件升级用。

其中,采用单独软件升级包的概念,针对座舱系统不同的芯片或系统,分别设置不同的升级方式,并由不同的升级模块来实现,比如:针对不同升级目标,软件包被定义为以下类型:固件包(fota)系统固件(用于重启并更新系统分区)、软件包(sota)应用程序(用于指定应用程序)、数据包(data)(用于指定位置的数据更新),相应的分别由不同的升级模块实现对应的软件升级。单独软件升级包具备了更多的升级灵活性及可定制性。

本实施例中,针对座舱的座舱信息和控制器信息生成对应的定制升级包列表,进而基于云端实现对应的升级包的下载,最终由座舱的主从节点架构实现座舱软件的升级,本实施例的座舱软件升级方法统一和简化了软件升级的管理和维护,实现定制化软件升级,提高了用户体验。

实施例2

一种座舱软件升级方法,所述升级方法应用于车端,如图4所示,所述方法包括:

步骤21、目标座舱的控制器发起升级请求;

其中,座舱可以为交通工具座舱、汽车座舱、汽车智能座舱等,控制器可以具体为车载控制器(ecu)。在对座舱进行软件升级过程中,为了获取与不同座舱对应的可升级包列表,升级请求中需要进一步包含座舱信息和控制器信息,以实现座舱的定制化软件升级。另外,采用座舱主动发起升级请求,进而获取升级包列表的方式,无论何时均能获得与座舱情况相匹配的升级包列表。

步骤22、接收根据升级请求生成的目标座舱的升级包列表;升级请求包括目标座舱的座舱信息和控制器信息,升级包列表包括待升级软件的软件信息以及与待升级软件关联的依赖软件的软件信息;

其中,座舱软件升级过程中,考虑到座舱系统一般为多芯片多系统的复杂架构,为了保证不同功能模块不同版本间的安装依赖关系,升级包列表中还需要包含有依赖软件的列表信息,以确保座舱关联软件的下载或者同步升级。另外,软件信息包括但不限于软件的版本,大小,类型,目标芯片及目标系统等,升级包列表内容可以为压缩或非压缩的二进制内容。

步骤23、目标座舱的控制器基于升级包列表发起下载请求,以对待升级软件和依赖软件进行下载;

步骤24、控制器根据下载好的待升级软件和依赖软件进行目标座舱的软件升级。

其中,所述控制器包括主节点和多个从节点,每个从节点分别对应所述控制器的不同升级模块,如图5所示,步骤24具体包括:

步骤241、主节点接收待升级软件和依赖软件;

步骤242、多个从节点分别从从节点接收对应每个从节点的任一待升级软件和/或任一依赖软件;

其中,采用一个主节点多个从节点的架构,主节点负责管理维护整车软件包的下载、更新,从节点从主节点获取软件包并执行更新,该架构统一和简化了座舱软件升级的管理和维护。

步骤243、与每个从节点对应的升级模块基于任一待升级软件和/或任一依赖软件对目标座舱进行软件升级。

其中,采用单独软件升级包的概念,针对座舱系统不同的芯片或系统,分别设置不同的升级方式,并由不同的升级模块来实现,比如:针对不同升级目标,软件包被定义为以下类型:固件包(fota)系统固件(用于重启并更新系统分区)、软件包(sota)应用程序(用于指定应用程序)、数据包(data)(用于指定位置的数据更新),相应的分别由不同的升级模块实现对应的软件升级。单独软件升级包具备了更多的升级灵活性及可定制性。

实施例3

一种座舱软件升级方法,所述升级方法应用于云端,如图6所示,所述方法包括:

步骤31、接收目标座舱的控制器的升级请求;升级请求包括目标座舱的座舱信息和控制器信息;

其中,座舱可以为交通工具座舱、汽车座舱、汽车智能座舱等,控制器可以具体为车载控制器(ecu)。在对座舱进行软件升级过程中,为了获取与不同座舱对应的可升级包列表,升级请求中需要进一步包含座舱信息和控制器信息,以实现座舱的定制化软件升级。

步骤32、根据升级请求生成目标座舱的升级包列表;升级包列表包括待升级软件的软件信息以及与待升级软件关联的依赖软件的软件信息;

其中,座舱软件升级过程中,考虑到座舱系统一般为多芯片多系统的复杂架构,为了保证不同功能模块不同版本间的安装依赖关系,升级包列表中还需要包含有依赖软件的列表信息,以确保座舱关联软件的下载或者同步升级。

步骤33、接收控制器基于升级包列表发起的下载请求;

步骤34、根据下载请求获取升级包,并将升级包发送至目标座舱,以使得目标座舱根据升级包进行软件升级;升级包包括待升级软件和依赖软件。

其中,基于微服务集群将所述升级包发送至控制器。利用最新云计算集群技术,实现并发负载,可省去租赁内容分发网络的费用,且对升级过程有更多的控制及安全性。具体的,大量并发请求通过负载平衡服务器转发给对称的微服务集群的容器中处理,容器中的微服务直接访问云端存储。对于座舱软件更新来说,下载速度无需达到网络视频直播的水准,因此可以用这种分布式对称微服务取代内容分发网络进行数据传输。

其中,所述升级请求还包括时间信息,如图7所示,步骤32具体包括:

步骤321、根据时间信息、座舱信息和控制器信息获取目标座舱的历史升级信息;

步骤322、基于历史升级信息和控制器信息获取待升级软件和依赖软件的信息生成升级包列表。

其中,每辆车的升级包列表根据座舱信息、时间信息以及控制器信息过滤该座舱过往的升级记录而成,进而实现让车辆获取符合自身情况的升级包列表。另外,升级包列表为程序动态生成,也可以针对每辆车的具体型号、车架号等信息增加针对各车的定制升级包列表。

实施例4

一种座舱软件升级系统,所述系统包括:云端和控制器,所述控制器设于座舱内;

云端用于根据升级请求生成目标座舱的升级包列表,并将所述升级包列表发送至所述目标座舱的控制器;所述升级请求包括所述目标座舱的座舱信息和控制器信息,所述升级包列表包括待升级软件的软件信息以及与所述待升级软件关联的依赖软件的软件信息;

其中,座舱可以为交通工具座舱、汽车座舱、汽车智能座舱等,控制器可以具体为车载控制器(ecu)。在对座舱进行软件升级过程中,为了获取与不同座舱对应的可升级包列表,升级请求中需要进一步包含座舱信息和控制器信息,以实现座舱的定制化软件升级。另外,座舱软件升级过程中,考虑到座舱系统一般为多芯片多系统的复杂架构,为了保证不同功能模块不同版本间的安装依赖关系,升级包列表中还需要包含有依赖软件的列表信息,以确保座舱关联软件的下载或者同步升级。另外,软件信息包括但不限于软件的版本,大小,类型,目标芯片及目标系统等,升级包列表内容可以为压缩或非压缩的二进制内容。

所述控制器用于基于所述升级包列表发起下载请求;

所述云端还用于根据所述下载请求获取升级包,并将所述升级包发送至所述控制器;所述升级包包括所述待升级软件和所述依赖软件;

所述控制器还用于根据所述升级包进行所述目标座舱的软件升级。

本实施例中,所述控制器还用于发起所述升级请求。

其中,采用座舱主动发起升级请求,进而获取升级包列表的方式,无论何时均能获得与座舱情况相匹配的升级包列表。

本实施例中,所述控制器还用于根据所述时间信息、所述座舱信息和所述控制器信息获取所述目标座舱的历史升级信息;

所述控制器还用于基于所述历史升级信息和所述控制器信息获取待升级软件和所述依赖软件的信息生成所述升级包列表。

其中,每辆车的升级包列表根据座舱信息、时间信息以及控制器信息过滤该座舱过往的升级记录而成,进而实现让车辆获取符合自身情况的升级包列表。另外,升级包列表为程序动态生成,也可以针对每辆车的具体型号、车架号等信息增加针对各车的定制升级包列表。

本实施例中,所述控制器包括主节点和多个从节点,所述控制器还包括与每个从节点分别对应的不同升级模块;

所述云端用于将所述升级包发送至所述主节点;

所述主节点用于将所述升级包中的多个软件分别发送至对应的从节点;

其中,采用一个主节点多个从节点的架构,主节点负责管理维护整车软件包的下载、更新,从节点从主节点获取软件包并执行更新,该架构统一和简化了座舱软件升级的管理和维护。

与所述从节点对应的升级模块用于分别基于所述多个软件对所述目标座舱进行软件升级。需要说明的是,升级完成后,主节点会获取执行升级任务的从节点的安装结果发送至云端进行存储,以用于下一次的软件升级用。

其中,本申请采用单独软件升级包的概念,针对座舱系统不同的芯片或系统,分别设置不同的升级方式,并由不同的升级模块来实现,比如:针对不同升级目标,软件包被定义为以下类型:固件包(fota)系统固件(用于重启并更新系统分区)、软件包(sota)应用程序(用于指定应用程序)、数据包(data)(用于指定位置的数据更新),相应的分别由不同的升级模块实现对应的软件升级。单独软件升级包具备了更多的升级灵活性及可定制性。

本实施例中,所述云端用于基于微服务集群将所述升级包发送至所述控制器。

其中,利用最新云计算集群技术,实现并发负载,可省去租赁内容分发网络的费用,且对升级过程有更多的控制及安全性。具体的,大量并发请求通过负载平衡服务器转发给对称的微服务集群的容器中处理,容器中的微服务直接访问云端存储。对于座舱软件更新来说,下载速度无需达到网络视频直播的水准,因此可以用这种分布式对称微服务取代内容分发网络进行数据传输。

本实施例中,针对座舱的座舱信息和控制器信息生成对应的定制升级包列表,进而基于云端实现对应的升级包的下载,最终由座舱的主从节点架构实现座舱软件的升级,本实施例的座舱软件升级方法统一和简化了软件升级的管理和维护,实现定制化软件升级,提高了用户体验。

实施例5

一种座舱软件升级系统,所述升级系统应用于车端,所述系统包括:控制器和数据接收模块;

目标座舱的控制器用于发起升级请求;

其中,座舱可以为交通工具座舱、汽车座舱、汽车智能座舱等,控制器可以具体为车载控制器(ecu)。在对座舱进行软件升级过程中,为了获取与不同座舱对应的可升级包列表,升级请求中需要进一步包含座舱信息和控制器信息,以实现座舱的定制化软件升级。另外,采用座舱主动发起升级请求,进而获取升级包列表的方式,无论何时均能获得与座舱情况相匹配的升级包列表。

数据接收模块用于接收根据所述升级请求生成的目标座舱的升级包列表;所述升级请求包括所述目标座舱的座舱信息和控制器信息,所述升级包列表包括待升级软件的软件信息以及与所述待升级软件关联的依赖软件的软件信息;

其中,座舱软件升级过程中,考虑到座舱系统一般为多芯片多系统的复杂架构,为了保证不同功能模块不同版本间的安装依赖关系,升级包列表中还需要包含有依赖软件的列表信息,以确保座舱关联软件的下载或者同步升级。另外,软件信息包括但不限于软件的版本,大小,类型,目标芯片及目标系统等,升级包列表内容可以为压缩或非压缩的二进制内容。

所述控制器还用于基于所述升级包列表发起下载请求,以对所述待升级软件和所述依赖软件进行下载;

所述控制器根据下载好的所述待升级软件和所述依赖软件进行所述目标座舱的软件升级。

本实施例中,所述控制器包括主节点和多个从节点,所述控制器还包括与每个从节点分别对应的不同升级模块;

所述主节点用于接收所述待升级软件和所述依赖软件;

所述多个从节点用于分别从所述从节点接收对应每个从节点的任一待升级软件和/或任一依赖软件;

其中,采用一个主节点多个从节点的架构,主节点负责管理维护整车软件包的下载、更新,从节点从主节点获取软件包并执行更新,该架构统一和简化了座舱软件升级的管理和维护。

与每个从节点对应的升级模块用于基于所述任一待升级软件和/或所述任一依赖软件对所述目标座舱进行软件升级。

其中,采用单独软件升级包的概念,针对座舱系统不同的芯片或系统,分别设置不同的升级方式,并由不同的升级模块来实现,比如:针对不同升级目标,软件包被定义为以下类型:固件包(fota)系统固件(用于重启并更新系统分区)、软件包(sota)应用程序(用于指定应用程序)、数据包(data)(用于指定位置的数据更新),相应的分别由不同的升级模块实现对应的软件升级。单独软件升级包具备了更多的升级灵活性及可定制性。

实施例6

一种座舱软件升级系统,所述升级方法应用于云端,如图8所示,所述系统包括:升级请求接收模块1、列表生成模块2、下载请求接收模块3和升级包获取模块4;

升级请求接收模块1用于接收目标座舱的控制器的升级请求;所述升级请求包括所述目标座舱的座舱信息和控制器信息;

其中,座舱可以为交通工具座舱、汽车座舱、汽车智能座舱等,控制器可以具体为车载控制器(ecu)。在对座舱进行软件升级过程中,为了获取与不同座舱对应的可升级包列表,升级请求中需要进一步包含座舱信息和控制器信息,以实现座舱的定制化软件升级。

列表生成模块2用于根据所述升级请求生成所述目标座舱的升级包列表,所述升级包列表包括待升级软件的软件信息以及与所述待升级软件关联的依赖软件的软件信息;

其中,座舱软件升级过程中,考虑到座舱系统一般为多芯片多系统的复杂架构,为了保证不同功能模块不同版本间的安装依赖关系,升级包列表中还需要包含有依赖软件的列表信息,以确保座舱关联软件的下载或者同步升级。

下载请求接收模块3用于接收所述目标座舱基于所述升级包列表发起的下载请求;

升级包获取模块4用于根据下载请求获取升级包,并将所述升级包发送至所述目标座舱,以使得所述目标座舱根据所述升级包进行软件升级,所述升级包包括所述待升级软件和所述依赖软件。

本实施例中,所述升级请求还包括时间信息;

列表生成模块2用于根据所述时间信息、所述座舱信息和所述控制器信息获取所述目标座舱的历史升级信息,并基于所述历史升级信息和所述控制器信息获取待升级软件和所述依赖软件的信息生成所述升级包列表。

其中,每辆车的升级包列表根据座舱信息、时间信息以及控制器信息过滤该座舱过往的升级记录而成,进而实现让车辆获取符合自身情况的升级包列表。另外,升级包列表为程序动态生成,也可以针对每辆车的具体型号、车架号等信息增加针对各车的定制升级包列表。

本实施例中,参见图8,所述系统还包括:升级包发送模块5;

升级包发送模块5用于基于微服务集群将所述升级包发送至所述目标座舱。

其中,基于微服务集群将所述升级包发送至控制器。利用最新云计算集群技术,实现并发负载,可省去租赁内容分发网络的费用,且对升级过程有更多的控制及安全性。具体的,大量并发请求通过负载平衡服务器转发给对称的微服务集群的容器中处理,容器中的微服务直接访问云端存储。对于座舱软件更新来说,下载速度无需达到网络视频直播的水准,因此可以用这种分布式对称微服务取代内容分发网络进行数据传输。

实施例7

一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现实施例1-3中任意一个实施例所述的座舱软件升级方法。

图9为本实施例提供的一种电子设备的结构示意图。图9示出了适于用来实现本发明实施方式的示例性电子设备90的框图。图9显示的电子设备90仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图9所示,电子设备90可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备90的组件可以包括但不限于:至少一个处理器91、至少一个存储器92、连接不同系统组件(包括存储器92和处理器91)的总线93。

总线93包括数据总线、地址总线和控制总线。

存储器92可以包括易失性存储器,例如随机存取存储器(ram)921和/或高速缓存存储器922,还可以进一步包括只读存储器(rom)923。

存储器92还可以包括具有一组(至少一个)程序模块924的程序工具925,这样的程序模块924包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

处理器91通过运行存储在存储器92中的计算机程序,从而执行各种功能应用以及数据处理。

电子设备90也可以与一个或多个外部设备94(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(i/o)接口95进行。并且,电子设备90还可以通过网络适配器96与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器96通过总线93与电子设备90的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备90使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。

应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。

实施例8

一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现实施例1-3中任意一个实施例所述的座舱软件升级方法的步骤。

其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。

在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行实现实施例1-3中任意一个实施例所述的座舱软件升级方法的步骤。

其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

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