CN117999540A - 一种空中下载(ota)升级方法及装置 - Google Patents

一种空中下载(ota)升级方法及装置 Download PDF

Info

Publication number
CN117999540A
CN117999540A CN202180100026.1A CN202180100026A CN117999540A CN 117999540 A CN117999540 A CN 117999540A CN 202180100026 A CN202180100026 A CN 202180100026A CN 117999540 A CN117999540 A CN 117999540A
Authority
CN
China
Prior art keywords
execution
upgrade
task
policy
strategy
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
Application number
CN202180100026.1A
Other languages
English (en)
Inventor
马涛
周铮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN117999540A publication Critical patent/CN117999540A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

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

一种OTA升级方法及装置,应用于车联网领域。具体应用中,服务器发送第一升级任务,对应于该第一升级任务的第一执行策略属于执行策略集合,该执行策略集合中包括第二执行策略,且与第一执行策略不同;终端设备通过接收第一升级任务,确定该第一执行策略,并根据该第一执行策略,控制第一升级任务的执行。采用该方式,通过设计包含至少两种执行策略的执行策略集合,可以实现OTA升级任务的灵活调度,提升升级效率。

Description

一种空中下载(OTA)升级方法及装置 技术领域
本申请实施例涉及车联网技术领域,尤其涉及一种OTA升级方法及装置。
背景技术
随着社会的发展和科技的进步,智能汽车在智能驾驶和无人驾驶领域的应用也越来越广泛。智能汽车是一个复杂的系统,其中包含有几十个甚至上百个电子控制单元(electronic control unit,ECU),智能汽车的各种复杂功能是依靠ECU之间的协作来实现的。
智能汽车的厂商(original equipment manufacturer,OEM)对该智能汽车的各种功能的维护和升级主要通过对与这些功能相关的ECU进行升级来实现。空中下载(over the air,OTA)技术可应用于升级车辆的相关硬件或软件,有利于厂商减少召回成本、快速响应需求、提升用户体验。随着智能汽车的发展,其通过ECU之间协作实现的功能愈加丰富,这导致OTA升级的对象也愈加多样。如何设计一种灵活的OTA升级调度方法,提升升级效率,是本领域人员亟待解决的技术问题。
发明内容
本申请实施例公开了一种OTA升级方法及相应的装置,可以实现OTA升级任务的灵活调度。
第一方面,提供了一种升级方法,该方法可以由终端设备或配置于终端设备中的芯片执行。该方法包括:接收第一升级任务;确定对应于所述第一升级任务的第一执行策略,所述第一执行策略属于执行策略集合,所述执行策略集合中包括第二执行策略,所述第一执行策略不同于所述第二执行策略;根据所述第一执行策略,控制所述第一升级任务的执行。
可选地,该方法也可以由终端设备包括的OTA管理模块或配置于OTA管理模块中的芯片执行。示例性的,该方法可以由OTA管理模块执行。
根据本申请提供的升级方法,通过设计执行策略集合,并将不同的执行策略与不同的升级任务对应,可以实现OTA升级任务的灵活调度,提升升级效率。
结合第一方面,在第一方面的某些实现方式中,该方法还可以包括:获取第一指示信息,所述第一指示信息用于指示所述第一执行策略,或者,指示所述第一升级任务的第一等级,所述第一执行策略对应于所述第一等级。
该方案中,通过第一指示信息,可以实现第一执行策略的灵活指示。示例性地,当第一指示信息指示第一等级,根据该第一等级与执行策略之间的映射关系,确定与该第一等级对应的执行策略为第一执行策略。
结合第一方面,在第一方面的某些实现方式中,该方法还可以包括:根据所述第一升级任务的升级内容或者升级功能,确定所述第一执行策略。
示例性地,根据升级内容与执行策略之间的映射关系,或者根据升级功能与执行策略之间的映射关系,确定第一执行策略。其中,所述映射关系,可以由服务器预先配置,或者由协议规定。
该方案中,通过预先配置或者协议规定的映射关系,确定第一执行策略,可以降低信 令开销。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:向安装提示控制模块和/或OTA升级模块发送第二信息,所述第二信息用于指示所述第一执行策略对应的安装提示。
该方案中,通过第二信息,可以实现安装提示的灵活指示,以实现不同的升级任务可以对应不同的安装提示,从而保证不同的升级任务有区别地被执行,实现OTA任务的调度灵活性,提升升级效率。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:OTA管理模块确定所述第一执行策略后,以所述第一执行策略对应的下载速率下载所述第一升级任务包含的升级包。
通过该方案,可以实现以执行策略对应的下载速率下载该执行策略对应的升级任务包含的升级包,进而实现不同的升级任务可以对应不同的下载速率,从而保证不同的升级任务有区别地被执行,实现OTA任务的调度灵活性,提升升级效率。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:OTA管理模块向电量管理模块发送第三信息,所述第三信息用于指示所述电量管理模块检测终端设备的剩余电量或荷电状态,或者指示所述电量管理模块反馈终端设备的剩余电量或荷电状态。
该方案中,通过第二信息,可以实现剩余电量或荷电状态的灵活指示,以实现不同的升级任务安装可以对应不同的剩余电量或荷电状态,从而保证不同的升级任务有区别地被执行,实现OTA任务的调度灵活性,提升升级效率。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:OTA管理模块根据所述第一执行策略对应的存储策略,控制所述第一升级任务包含的升级包的存储。
该方案中,可以实现以不同的存储资源存储不同的升级任务,进而保证不同的升级任务有区别地被执行,实现OTA任务的调度灵活性,提升升级效率。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:OTA管理模块向OTA升级模块发送第四信息,所述第四信息用于指示所述第一升级任务包含的升级包的最大安装次数。
该方案中,通过第四信息,可以实现最大安装次数的灵活指示,以实现不同的升级任务安装可以对应不同的最大安装次数,从而保证不同的升级任务有区别地被执行,实现OTA任务的调度灵活性,提升升级效率。
第二方面,提供了一种升级方法,该方法可以由服务器或配置于服务器中的芯片执行。该方法包括:生成第一升级任务,对应于所述第一升级任务的第一执行策略属于执行策略集合,所述执行策略集合中包括第二执行策略,所述第一执行策略不同于所述第二执行策略;发送所述第一升级任务。
根据本申请提供的升级方法,服务器可以通过不同的执行策略区分不同的升级任务,通过设计执行策略集合,并将不同的执行策略与不同的升级任务对应,可以实现OTA升级任务的灵活调度,提升升级效率。
结合第二方面,在第二方面的某些实现方式中,该方法还可以包括:发送第一指示信息,所述第一指示信息用于指示所述第一执行策略,或者,指示所述第一升级任务的第一 等级,所述第一执行策略对应于所述第一等级。
该方案中,通过第一指示信息,可以实现第一执行策略的灵活指示。结合第一方面和第二方面,在第一方面和第二方面的某些实现方式中,所述第一等级属于任务执行等级集合,所述任务执行等级集合包括至少两种任务执行等级。可选地,不同的任务执行等级划分原则包括如下一项或多项:根据升级任务对应的升级对象的功能安全等级,划分不同的任务执行等级;根据升级任务所修复的缺陷严重程度不同,划分不同的任务执行等级;根据升级任务所新增的功能对用户驾驶体验的影响不同,划分不同的任务执行等级;根据升级任务的内容对车厂商业价值的不同,划分不同的任务执行等级;根据升级任务对应的升级对象的优先级不同划分不同的任务执行等级;根据升级任务的紧急程度不同划分不同的任务执行等级;根据用户级别,划分不同的任务执行等级。进一步可选地,不同的任务执行等级用于表征OTA升级任务的不同重要性。
结合第一方面和第二方面,在第一方面和第二方面的某些实现方式中,不同的执行策略对应不同的任务执行等级。
该方案中,通过差异化的执行策略对应不同的任务执行等级,可以根据不同任务的重要度采用不同的执行策略,进而保证重要的OTA升级任务能够更优先地或者更可靠地被执行。
结合第一方面和第二方面,在第一方面和第二方面的某些实现方式中,所述执行策略集合包括对应于升级任务的至少两种安装提示,所述第一执行策略和所述第二执行策略对应不同的安装提示。
示例性地,所述安装提示包括以下一项或多项:安装提示的显示位置、安装提示的显示亮度或安装提示的字体大小。
通过不同的安装提示,可以实现不同的升级任务采用不同的安装提示策略,实现OTA升级任务的灵活调度,提升升级效率。
结合第一方面和第二方面,在第一方面和第二方面的某些实现方式中,所述执行策略集合包括对应于升级任务的至少两种下载速率,所述第一执行策略和第二执行策略对应不同的升级任务下载速率。
通过不同的下载速率,可以保证不同的升级任务采用不同的下载速率,实现OTA升级任务的灵活调度,提升升级效率。
结合第一方面和第二方面,在第一方面和第二方面的某些实现方式中,所述执行策略集合包括对应于升级任务的至少两种剩余电量阈值,所述第一执行策略和所述第二执行策略对应不同的剩余电量阈值。
通过不同的剩余电量阈值,可以保证不同的升级任务采用不同的剩余电量阈值,实现OTA升级任务的灵活调度,提升升级效率。
结合第一方面和第二方面,在第一方面和第二方面的某些实现方式中,所述执行策略集合包括对应于升级任务的至少两种存储资源,所述第一执行策略和所述第二执行策略对应不同的存储资源。
示例性地,所述第一执行策略对应的存储资源包含位于K个存储部件内的存储资源,其中所述K为不小于1的整数,所述存储部件包含至少一个电子控制单元。
通过不同的存储资源,可以保证不同的升级任务采用不同的存储资源,实现OTA升级任务的灵活调度,提升升级效率。
结合第一方面和第二方面,在第一方面和第二方面的某些实现方式中,所述执行策略集合包括对应于升级任务的至少两种最大安装次数,所述第一执行策略和所述第二执行策略对应于不同的最大安装次数。
通过不同的最大安装次数,可以保证不同的升级任务采用不同的最大安装次数,实现OTA升级任务的灵活调度,提升升级效率。
结合第一方面和第二方面,在第一方面和第二方面的某些实现方式中,第一执行策略集合和第二执行策略集合对应不同的执行属性,所述执行属性包括如下一项或多项:安装提示策略,下载策略,检测策略,存储策略,安装策略。
结合第一方面和第二方面,在第一方面和第二方面的某些实现方式中,第一执行策略集合和第二执行策略集合对应相同的执行属性,但存在至少一种执行属性的执行方式不同。所述执行属性包括如下一项或多项:安装提示策略,下载策略,检测策略,存储策略,安装策略。
第三方面,提供了一种通信装置,包括处理器和收发器,以执行上述第一方面或第一方面的任意可能的实现方式中的方法,或者以执行上述第二方面或第二方面的任意可能的实现方式中的方法。其中,收发器用于执行与发送和接收相关的功能。可选地,该收发器包括接收器和发射器,或者为发射机和接收机。
结合第三方面,在第三方面的某些实现方式中,该通信装置为通信芯片,该收发器可以为该通信芯片的输入输出电路或者端口。
结合第三方面,在第三方面的某些实现方式中,该通信装置还包括存储器,该存储器与该通信装置包括的处理器耦合,该处理器可用于执行存储器中的指令,以使得该装置执行上述第一方面或第一方面的任意可能的实现方式中的方法,或者执行上述第二方面或第二方面的任意可能的实现方式中的方法。可选地,该装置还可以包括接口电路,处理模块与接口电路耦合。
结合第三方面,在第三方面的某些实现方式中,该通信装置还包括用于执行上述第一方面或第一方面的任意可能的实现方式中的方法的单元,或者用于执行上述第二方面或第二方面的任意可能的实现方式中的方法的单元。
第四方面,提供了一种终端设备,包括用于执行上述第一方面或第一方面的任意可能的实现方式中的方法的通信装置。具体的,所述终端设备可以为车辆、机器人、无人机等。例如:汽车、慢速运输车等。
第五方面,提供了一种服务器,包括用于执行上述第二方面或第二方面的任意可能的实现方式中的方法的通信装置。具体的,所述服务器可以部署在具有无线通信功能和存储功能的电子设备上,还可以部署在云上的虚拟机(virtual machine,VM)或者容器上,其中云可以是多个电子设备组成的集群。
第六方面,提供了一种芯片,该芯片包括一个或多个处理器和接口电路,该芯片用于执行上述第一方面或第一方面的任意可能的实现方式中的方法,或者用于执行上述第二方面或第二方面的任意可能的实现方式中的方法。
第七方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令被通信装置执行时,使得该通信装置执行上述第一方面或第一方面的任意可能的实现方式中的方法,或者使得该通信装置执行上述第二方面或第二方面的任意可能的实现方式中的方法。
第八方面,本申请提供一种计算机程序产品,该计算机程序产品包括计算机程序或指令,当该计算机程序或指令被通信装置执行时,使得该通信装置执行上述第一方面或第一方面的任意可能的实现方式中的方法,或者使得该通信装置执行上述第二方面或第二方面的任意可能的实现方式中的方法。
附图说明
以下对本申请实施例用到的附图进行介绍。
图1是本申请实施例提供的一种升级系统架构的示意图;
图2是本申请实施例提供的终端设备的示意图;
图3是本申请实施例提供的另一种升级系统架构的示意图;
图4是本申请实施例提供的另一种升级系统架构的示意图;
图5是本申请实施例提供的一种升级方法所对应的流程示意图;
图6是本申请实施例提供的一种通信装置的示意图;
图7是本申请实施例提供的另一种通信装置的示意图;
图8是本申请实施例提供的一种芯片结构的示意图。
具体实施方式
下面结合本申请实施例中的附图,对本申请实施例中的技术方案进行详细描述。
需要说明的是,本申请实施例中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
本申请中实施例提到的“和/或”用来描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A、同时存在A和B、单独存在B这三种情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
此外,除非有相反的说明,本申请实施例使用“第一”、“第二”等序数词是用于对多个对象进行区分,不用于限定多个对象的顺序、时序、优先级或者重要程度。例如,第一信息和第二信息,只是为了区分不同的信息,而并不是表示这两种信息的内容、优先级、发送顺序或者重要程度等的不同。
下面先对本申请实施例的系统架构和业务场景进行描述。需要说明的是,本申请描述的系统架构及业务场景是为了更加清楚的说明本申请的技术方案,并不构成对于本申请提供的技术方案的限定,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出 现,本申请提供的技术方案对于类似的技术问题,同样适用。
图1示出了适用于本申请实施例的一个升级系统架构的示意图。如图1所示,该升级系统架构可以包括服务器、无线通信链路和终端设备。
示例性地,本申请实施例中所述的服务器是指能够作为厂商或OEM为终端设备提供OTA升级的装置。具体的,服务器可以部署在具有无线通信功能和存储功能的电子设备上,还可以部署在云上的虚拟机或者容器上,其中云可以是多个电子设备组成的集群。
示例性地,本申请实施例中所述的无线通信链路可以是通过通信网络实现的链路,该通信网络可以是局域网,也可以是通过中继(relay)设备转接的广域网,或者包括局域网和广域网。当该通信网络为局域网时,该通信网络可以是wifi热点网络、wifi点到点(point to point,P2P)网络、蓝牙网络、zigbee网络、近场通信(near field communication,NFC)网或者未来可能的通用短距离通信网络等。当该通信网络为广域网时,该通信网络可以是第三代移动通信技术(3rd-generation wireless telephone technology,3G)网络、第四代移动通信技术(the 4th generation mobile communication technology,4G)网络、第五代移动通信技术(5th-generation mobile communication technology,5G)网络、未来演进的移动通信技术网络(包含但不限于6G等)、公共陆地移动网(public land mobile network,PLMN)或因特网(Internet)等,本申请实施例对此不做限定。
示例性地,本申请实施例中所述的终端设备是指支持该服务器提供的OTA升级服务的装置。例如,该终端设备可以为运输工具或者智能设备。具体的,该运输工具可以包括机动车辆(如无人车、智能汽车、电动车、数字汽车等)、无人机、轨道车、交通灯等,该智能设备可以包括手机、平板电脑、笔记本电脑、个人数字助理、销售终端、车载电脑、增强现实设备、虚拟现实、可穿戴设备、车载终端等。
图2示出了本申请实施例提供的终端设备的示意图,如图2所示,该终端设备包括OTA管理模块(可以称为OTA Master模块)和多个OTA升级模块(可以称为OTA Slave模块)。其中,OTA管理模块用于接收来自服务器的升级包,并向OTA升级模块发送该OTA升级模块负责的升级对象的升级包。OTA升级模块用于安装升级包,并向OTA管理模块反馈该升级包的安装结果。可选地,本申请实施例对升级对象的具体形态不做限定。以智能汽车为例,该升级对象可以为车辆中的部件,也可以为该部件中的软件。
以智能汽车为例,图3示出了适用于本申请实施例的另一个升级系统架构的示意图。如图3所示,该升级系统架构可以包括OTA服务器、无线通信链路和车辆。其中,车辆中至少包括网关(gateway,GW)、用于支撑智能驾驶的软硬件一体化平台即车载计算平台(vehicle computing platform)例如移动数据中心(mobile data center,MDC)、人机交互系统(human-machine interaction,HMI)、远程信息控制单元(telematics control unit,TCU)、汽车盒子(telematics box,Tbox)、电子控制单元ECU等部件。其中,GW是整车电子电气架构中的核心部件,其作为整车网络的数据交互枢纽,可将控制区域网络(controller area network,CAN)、局域互联网络(local interconnect network,LIN)、多媒体软件升级(media oriented system transport,MOST)网络等网络数据在不同网络中进行路由。MDC可以用于实现车辆的自动驾驶功能。HMI是车辆的信息娱乐系统。TCU和Tbox主要用于和车辆外部设备(例如手机、后台系统等)进行通信。ECU是车辆专用微机控制器。ECU包括但不 限于整车集成单元(vehicle integrated/intergration unit,VIU)、座舱域控制器(cockpit domain controller,CDC)和整车域控制器(vehicle domain controller,VDC)等。示例性地,待升级的部件包括但不限于上述GW、MDC、HMI、TCU、Tbox和ECU,待升级的部件可以包括上述GW、MDC、HMI、TCU、Tbox和ECU中的一项或多项。
在整车OTA升级中通常涉及车辆中多个部件的升级,位于智能汽车内的OTA管理模块可以运行在车辆的GW、Tbox等部件上,协调其他部件的OTA升级模块,共同完成整车升级。图4示出了适用于本申请实施例的另一个升级系统架构的示意图。如图4所示,车辆的GW中部署了OTA管理模块,车辆的其他部件中部署了OTA升级模块。其中,OTA管理模块可以协调各部件部署的OTA升级模块,共同完成整车OTA升级。
在升级过程中,OTA管理模块指挥各个OTA升级模块按照升级包之间的依赖关系按顺序安装升级包。然而,不同OTA升级任务所升级的功能或者所修复的缺陷对终端设备的影响是不同的,进而导致不同OTA任务的重要程度或紧急程度不同。例如引入导航辅助驾驶(navigation on pilot,NOP)功能的OTA升级版本相比于增加了副驾驶座椅记忆的OTA升级版本,前者对于车厂和用户而言更为重要。又例如某些OTA升级任务是为了修复重要的安全缺陷,如果不及时修复,甚至会涉及到车辆的召回,相反的,某些OTA升级任务只是修复普通的故障(bug),相比之下,修复重要安全缺陷的OTA升级任务更为重要。如果按照同样的执行策略去安装所有任务的升级包,会导致重要的升级任务得不到足够的资源,进而导致重要的升级任务不能可靠地完成或者完成不及时。
鉴于此,本申请实施例提供一种升级方法,在该方法中,确定对应于第一升级任务的第一执行策略,且根据第一执行策略,控制该第一升级任务的执行。其中,该第一执行策略属于执行策略集合,该执行策略集合中包括第二执行策略,且与第一执行策略不同。采用这种方式,可以通过不同的执行策略区分不同的升级任务,实现OTA升级任务的灵活调度,提升升级效率。
下面结合具体实施例对本申请实施例提供的升级方法进行介绍。需要说明的是,为了描述清楚,下述实施例以OTA管理模块为例进行说明,可替换地,OTA管理模块也可以替换为终端设备。请参见图5,图5是本申请实施例提供的一种升级方法所对应的流程示意图。进一步的,该方法可以基于图1至图4所示的升级系统架构来实现。该方法可以包括:
S501,服务器生成第一升级任务,对应于该第一升级任务的第一执行策略属于执行策略集合,该执行策略集合中包括第二执行策略,该第一执行策略不同于该第二执行策略。
服务器可以创建升级任务并对升级任务进行管理,包括部署升级任务、终止升级任务、暂停升级任务、重新运行升级任务、或多个升级任务之间优先级认定等。示例性地,服务器生成升级任务,可以理解为服务器创建升级任务。升级任务可以包括一个或多个升级包。
示例性地,以汽车为例,升级任务是约定一批待升级汽车的升级过程。例如,升级任务一般约定这一批汽车内的哪些车载设备要升级,升级前需要给用户发送什么样的通知,向用户提示哪些内容,升级使用的升级包等。进一步的,车载设备可以包含HMI,电池管理系统(battery management system,BMS)、信息娱乐系统等,本申请实施例对此不做限定。
示例性地,不同的升级任务可以对应不同的功能。以智能汽车为例,升级任务1用于 修复智能汽车的重大安全缺陷,升级任务2用于改善座舱座椅记忆功能,提供更好的用户体验。
示例性地,不同的升级任务可以对应不同的升级对象。以智能汽车为例,升级任务3对应固件升级(firmware over the air,FOTA),升级任务4对应软件升级(software over the air,SOTA),其中FOTA的升级是涉及硬件的,例如给ECU闪存下载完整的固体镜像,或者修补现有固件、更新闪存;SOTA偏向于应用软件升级,例如智能汽车上HMI界面显示的更新。
在一种实现方式中,执行策略集合包含以下执行属性的一项或多项:安装提示策略,下载策略,检测策略,存储策略,安装策略。
示例性地,安装提示策略包含用于向用户提示安装升级任务的方式。安装提示策略可以包含以下一项或多项执行方式:
(1)在用户界面(user interface,UI)上以何种字体提示升级任务,进一步的,比如,通过宋体在UI上提示升级任务。
(2)在UI上以何种字体大小提示升级任务,进一步的,比如通过字号为12号的字体在UI上提示升级任务。
(3)在UI上以何种字体颜色提示升级任务,进一步的,比如通过红色字体在UI上提示升级任务。
(4)升级任务安装提示在UI上的显示位置,进一步的,比如,安装提示策略可以为在UI的左半部分或者上半部分提示升级任务。
(5)在UI上以何种亮度提示升级任务。
需要说明的是,UI是服务器和用户之间进行交互和信息交换的桥梁,以智能汽车为例,UI可以为车载显示屏或者车载触摸屏,本申请实施例对UI的具体形式不做限定。
示例性地,下载策略包含OTA管理模块下载升级包所对应的下载速率。例如,下载策略中包含N种不同的下载速率比如用download-rate1,download-rate2,……,download-rateN表示,其中N为大于0的整数。这N种不同的下载速率可以理解为下载策略的N种执行方式;或者,下载策略也可以理解为包括“以小于download-rate1的速率下载升级任务中包含的升级包”、“以不小于download-rate1且小于download-rate2的速率下载升级任务中包含的升级包”、……、“以不小于download-rateN-1且小于download-rateN的速率下载升级任务中包含的升级包”和“以不小于download-rateN的速率下载升级任务中包含的升级包”中的一项或多项执行方式;又或者下载策略也可以理解为包括“以不大于download-rate1的速率下载升级任务中包含的升级包”、“以大于download-rate1且不大于download-rate2的速率下载升级任务中包含的升级包”、……、“以大于download-rateN-1且不大于download-rateN的速率下载升级任务中包含的升级包”和“以大于download-rateN的速率下载升级任务中包含的升级包”中的一项或多项执行方式。这里假设N种下载速率满足如下关系:download-ratei<download-ratej,其中i小于j。需要说明的是,下载策略还可以有其他实现形式,不做具体限定。
示例性地,检测策略包含升级包安装所需的检测条件。例如,检测策略中包括M种剩余电量阈值比如用P1、P2、……、PM表示,其中M为大于0的整数。这M种剩余电量 阈值可以理解为检测策略的M种不同执行方式;或者,检测策略也可以理解为包括“安装升级包所需要的剩余电量不小于P1”、“安装升级包所需要的剩余电量不小于P2”、……、和“安装升级包所需要的剩余电量不小于PM”中的一项或多项执行方式;又或者检测策略也可以理解为包括“安装升级包所需要的剩余电量大于P1”、“安装升级包所需要的剩余电量大于P2”、……、和“安装升级包所需要的剩余电量大于PM”中的一项或多项执行方式。其中,剩余电量也可以理解为荷电状态(state of charge,SOC),P1~PM为介于0~1之间的小数,或者为小于1且用百分比表示的数,或者也可以有其他形式,本申请实施例对此不做限定。需要说明的是,检测策略还可以有其他实现形式,不做具体限定。
示例性地,存储策略包含存储升级包所需要的存储资源。例如存储升级包所需要的存储资源为K个存储部件内的存储资源,该K为不小于1的整数。以智能汽车为例,该部件可以包含至少一个ECU。又例如,存储策略为在哪个或者哪些车载设备上存储升级包。进一步的,比如,存储策略为在OTA管理模块和OTA升级模块上都保存该升级包,其中该OTA升级模块可以是负责该升级包安装的升级模块。又比如,存储策略为仅在OTA管理模块保存该升级包。
示例性地,安装策略包含升级包安装的方式。例如安装策略为安装升级包的最大安装次数。最大安装次数,可以理解为终端设备在接收到升级任务之后,在没有成功安装该升级任务包含的升级包之前,可以安装该升级包的最大次数。可以理解的是,安装策略也可以为安装升级包的最大安装重试次数。例如,安装策略中可以包含P种不同的最大安装次数比如用MAX-NUM1、MAX-NUM2、……、MAX-NUMP表示,其中P为大于0的整数。这P种不同的最大安装次数可以理解为安装策略的P种不同执行方式;或者,该安装策略也可以理解为包括最大安装次数为MAX-NUM1、最大安装次数为MAX-NUM2、……、和最大安装次数为MAX-NUMP中的一项或多项执行方式。
在本申请实施例中,执行策略集合内包含至少两种执行策略。为清楚起见,仅以执行策略集合包含第一执行策略和第二执行策略为例进行说明,但应理解,本申请实施例不限于此。下面结合上述描述的执行属性,分别介绍第一执行策略不同于第二执行策略的实现方式。需要说明的是,执行策略可以对应一种或多种执行属性,本申请实施例对此不做限定。
在一种实现方式中,第一执行策略和第二执行策略对应不同的执行属性。
可以理解的是,第一执行策略和第二执行策略对应不同的执行属性,即第一执行策略和第二执行策略所包括的执行属性中,至少存在一种不同的执行属性。例如,第一执行策略对应的为安装提示策略,第二执行策略对应的为下载策略。又例如,第一执行策略对应的为安装提示策略和下载策略,第二执行策略对应的为下载策略。
在另一种实现方式中,第一执行策略和第二执行策略对应相同的执行属性,但存在至少一种执行属性的执行方式不同。例如,第一执行策略和第二执行策略都包括安装提示策略和下载策略,但第一执行策略对应的安装提示策略的执行方式与第二执行策略对应的安装提示策略的执行方式不同;或者,第一执行策略对应的下载策略的执行方式与第二执行策略对应的下载策略的执行方式不同;又或者,第一执行策略对应的安装提示策略的执行方式与第二执行策略对应的安装提示策略的执行方式不同且第一执行策略对应的下载策略 的执行方式与第二执行策略对应的下载策略的执行方式不同。示例性地,至少一种执行属性的执行方式不同可以包括如下一项或多项:
(1)第一执行策略和第二执行策略均包括安装提示策略,但执行方式不同。例如,第一执行策略对应的安装提示的字体不同于第二执行策略对应的安装提示的字体,比如,第一执行策略对应的安装提示的字体为宋体,第二执行策略对应的安装提示的字体为楷体;又例如,第一执行策略对应的安装提示的字体大小不同于第二执行策略对应的安装提示的字体大小,比如第一执行策略对应的安装提示的字体大小不小于12号,第二执行策略对应的安装提示的字体大小小于12号;又例如,第一执行策略对应的安装提示的字体颜色不同于第二执行策略对应的安装提示的字体颜色,比如第一执行策略对应以红色字体显示的安装提示,第二执行策略对应以绿色字体显示的安装提示;又例如,第一执行策略对应的安装提示的显示位置不同于第二执行策略对应的安装提示的显示位置,比如在UI上,第一执行策略对应的安装提示显示于第二执行策略对应的安装提示之上;又例如,第一执行策略对应的安装提示的显示亮度不同于第二执行策略对应的安装提示的显示亮度,比如在UI上,第一执行策略对应的安装提示的显示亮度高于第二执行策略对应的安装提示的显示亮度。可以理解的,该执行策略集合包含至少两种安装提示。可以理解的,该执行策略集合包含至少两种安装提示。进一步可选地,该至少两种安装提示中有一种安装提示可以是默认配置的安装提示。
(2)第一执行策略和第二执行策略均包括下载策略,但执行方式不同。例如,第一执行策略对应的升级任务下载速率不同于第二执行策略对应的升级任务下载速率。比如,第一执行策略为以不小于100Mbps的下载速率下载升级包,第二执行策略为以不小于1Mbps的速率下载升级包;又比如第一执行策略为以不小于100Mbps的下载速率下载升级包,第二执行策略为以小于100Mbps的下载速率下载升级包。可以理解的,该执行策略集合包含至少两种下载速率。进一步可选地,该至少两种下载速率中有一种下载速率可以是默认配置的下载速率。
(3)第一执行策略和第二执行策略均包括检测策略,但执行方式不同。例如,第一执行策略对应的剩余电量阈值不同于第二执行策略对应的剩余电量阈值。比如,在第一执行策略下,当剩余电量阈值不小于30%时,主节点对该升级任务进行后续处理,例如控制该升级任务的执行。而在第二执行策略下,当剩余电量阈值不小于20%时,主节点对该升级任务进行后续处理。可以理解的,该执行策略集合包含至少两种剩余电量阈值。进一步可选地,该至少两种剩余电量阈值中有一种剩余电量阈值可以是默认配置的剩余电量阈值。
(4)第一执行策略和第二执行策略均包括存储策略,但执行方式不同。例如,第一执行策略对应的存储资源不同于第二执行策略对应的存储资源。以智能汽车为例,在第一执行策略下,智能汽车通过车内的K个存储部件存储升级任务包含的升级包,而在第二执行策略下,智能汽车通过车内的K’个部件存储升级任务包含的升级包;又比如,在第一执行策略下,智能汽车在主节点以及从节点存储升级任务包含的升级包,其中,从节点为该升级任务对应的升级对象,而在第二执行策略下,智能汽车仅在主节点存储升级任务包含的升级包。可以理解的,该执行策略集合包含至少两种存储资源。进一步可选地,该至少两种存储资源中有一种存储资源可以是默认配置的存储资源。
(5)第一执行策略和第二执行策略均包括安装策略,但执行方式不同。例如,第一执行策略对应的最大安装次数不同于第二执行策略对应的最大安装次数。比如,在第一执行策略下,在没有成功安装升级任务包含的升级包之前,终端设备最多可以安装该升级包MAX-NUM1次,而在第二执行策略下,在没有成功安装升级任务包含的升级包之前,终端设备最多可以安装升级包MAX-NUM2次。可以理解的是,该执行策略集合包含至少两种最大安装次数。进一步可选地,该至少两种最大安装次数中有一种最大安装次数可以是默认配置的最大安装次数。又例如,第一执行策略对应的安装顺序不同于第二执行策略对应的安装顺序。
需要说明的是,在本申请实施例中,执行策略集合还可以包括除第一执行策略和第二执行策略之外的其他一种或多种执行策略,且执行策略集合中的每种执行策略彼此不同,其中每种执行策略彼此不同的实现方式如上描述,此处不再赘述。
可选地,图5所示的升级方法还包括步骤S502,具体如下:
步骤S502:服务器配置对应于第一升级任务的第一执行策略。
在一种实现方式中,服务器可以直接配置对应于第一升级任务的第一执行策略,其中第一执行策略对应一种或多种执行属性。例如,第一执行策略包含安装提示策略、下载策略、检测策略、存储策略和安装策略中的一种或多种执行属性。需要说明的是,第一执行策略对应一种或多种执行属性,也可以理解为第一执行策略包含一种或多种执行属性及其这一种或多种执行属性所对应的执行方式。例如,服务器配置第一升级任务对应的第一执行策略包括在UI上以何种字体大小显示第一升级任务的安装提示策略,又例如,服务器配置第一升级任务对应的第一执行策略包括在UI上以何种字体颜色提示第一升级任务的安装提示策略和以何种下载速率下载升级包的下载策略。第一执行策略还可以具有其他形式,具体可参考前述对执行策略的详细描述,此处不再赘述。服务器可以根据第一升级任务的升级内容或升级功能配置第一执行策略,也可以根据OEM或者厂商的建议配置第一执行策略,本申请实施例对此不做限定。
在另一种实现方式中,服务器配置第一升级任务的第一等级,该第一等级对应于第一执行策略。
示例性地,第一等级属于任务执行等级集合,该任务执行等级集合中包括至少两种任务执行等级。例如执行策略集合中包括任务执行等级高(high)和任务执行等级低(low);又如,执行策略集合中包括任务执行等级high、任务执行等级low和任务执行等级中(middle)。在本申请实施例中,不同的任务执行等级的划分原则包括如下一项或多项:
(1)根据升级任务对应的升级对象的功能安全等级,划分不同的任务执行等级。例如升级对象的功能安全等级越高,对应的任务执行等级越高。
(2)根据升级任务所修复的缺陷严重程度不同,划分不同的任务执行等级。例如,升级任务所修复的缺陷严重程度越大,对应的任务执行等级越高。
(3)根据升级任务所新增的功能对用户驾驶体验的影响不同,划分不同的任务执行等级。例如,升级任务新增的功能对用户驾驶体验的影响越大,对应的任务执行等级越高。
(4)根据升级任务的内容对商业价值贡献的不同,划分不同的任务执行等级。例如,升级任务的内容对商业价值贡献越大,对应的任务执行等级越高。
(5)根据升级任务对应的升级对象的优先级不同划分不同的任务执行等级。例如,升级对象的优先级越高,对应的任务执行等级越高。
(6)根据升级任务的紧急程度不同划分不同的任务执行等级。例如,越需要及时安装的升级包,对应的任务执行等级越高。
(7)根据用户级别,划分不同的任务执行等级。其中用户级别例如可以用户会员等级。示例性地,用户会员等级越高,其所对应的任务执行等级越高。
需要说明的是,任务执行等级的划分原则还可以包括其他形式,不做具体限定。
进一步示例性地,不同的任务执行等级可用于表征OTA升级任务的不同重要性。例如,任务执行等级高和任务执行等级低分别对应重要的OTA升级任务和非重要的OTA升级任务。在本申请实施例中,不同重要性的OTA升级任务的划分原则与不同任务执行等级的划分原则可以一致,即任务执行等级越高的升级任务越重要。可以理解的是,针对重要的或者任务执行等级高的OTA升级任务,终端设备需要更快或者更可靠地升级该OTA升级任务中包括的升级包。
任务执行等级与执行策略之间的映射关系可以是协议规定的,或者由服务器配置的,也可以通过其他方式实现,在本申请实施例中不做具体限定。
步骤S503:服务器向OTA管理模块发送第一升级任务。
相应地,OTA管理模块接收该第一升级任务。具体的,OTA管理模块接收该第一升级任务。
进一步地,可选地,该第一升级任务中还可以包括升级包。
步骤S504:OTA管理模块确定对应于第一升级任务的第一执行策略。
在一种实现方式,OTA管理模块可以根据第一升级任务的升级内容或者升级功能,确定第一执行策略。例如,第一升级任务为用于修复安全功能缺陷的任务,OTA管理模块可以确定对应于安全功能缺陷修复的执行策略为第一执行策略,比如在UI上能够更吸引用户注意力的安装策略(例如,不小于12号的字体的安装提示,红色字体的安装提示、在UI的上半部分显示安装提示等)为第一执行策略;又比如在OTA管理模块和OTA升级模块存储第一升级任务包含的升级包的存储策略为第一执行策略。应理解,升级任务的升级内容或升级功能与执行策略之间的映射关系,可以由服务器预先配置,或者由协议规定。进一步可选地,服务器可以通过网络设备将该映射关系配置给终端设备。
在另一种实现方式中,图3所示的升级方法还包括步骤S505,具体如下:
步骤S505:服务器向OTA管理模块发送第一指示信息,该第一指示信息用于指示第一执行策略,或者用于指示第一等级。该步骤为可选地。
相应地,OTA管理模块接收该第一指示信息。进一步地,该OTA管理模块根据该第一指示信息,确定第一执行策略。具体的,OTA管理模块根据该第一指示信息,确定第一执行策略。示例性地,当第一指示信息指示第一等级,OTA管理模块根据第一等级与执行策略之间的映射关系,确定与该第一等级对应的执行策略为第一执行策略。应理解,该映射关系为服务器和终端设备都遵循的映射关系,该映射关系可以由服务器预先配置,也可以由协议规定。进一步可选地,服务器可以通过网络设备将该映射关系配置给终端设备。
此外,第一指示信息和第一升级任务可以通过相同的消息发送,或者通过不同的消息 发送。例如,服务器通过消息A发送第一升级任务和第一执行策略,或者,服务器通过消息A发送第一升级任务和第一等级;又如,服务器通过消息A发送第一升级任务,通过消息B发送第一指示信息。
步骤S506:OTA管理模块根据第一执行策略,控制第一升级任务的执行。
OTA管理模块在获取第一升级任务之后,根据第一执行策略,执行第一升级任务的后续操作,例如控制第一升级任务的执行。
OTA管理模块通过如下一项或多项实现方式,控制第一升级任务的执行。
在一种实现方式中,OTA管理模块向安装提示控制模块发送第二信息,该第二信息用于指示第一执行策略对应的安装提示。以智能汽车为例,第二信息可以通过车内的通信介质(例如以太网、CAN总线、蓝牙、wifi或者其他无线通信介质)传输。安装提示控制模块为控制UI显示的控制模块,例如为CDC。应理解,在这种方式下,第一执行策略包含安装提示策略。
OTA管理模块确定第一执行策略之后,可以通过第二信息指示安装提示控制模块,在UI上显示第一执行策略所对应的安装提示。具体的,例如,第一执行策略包含以红色字体显示第一升级任务的安装提示,相应地,安装提示控制模块在获取到第二信息之后,在UI上以红色字体显示第一升级任务的安装提示。又如,第一执行策略包含以红色字体和在UI的上半部分显示第一升级任务的安装提示,相应地,安装提示控制模块在获取到第二信息之后,在UI的上半部分以红色字体显示第一升级任务的安装提示。
可替换地,OTA管理模块可以向OTA升级模块发送第二信息,再由该OTA升级模块控制安装提示控制模块,在UI上显示第一执行策略所对应的安装提示。其中,该OTA升级模块可以是负责安装第一升级任务包含的升级包的升级模块。
在又一种实现方式中,OTA管理模块按照第一执行策略对应的下载策略,获取第一升级任务对应的第一升级包。应理解,在这种方式下,第一执行策略包含下载策略。具体的,例如,第一执行策略为以不小于100Mbps的速率下载第一升级任务包含的升级包,OTA管理模块在确定第一执行策略之后,以不小于100Mbps的速率从服务器下载第一升级任务包含的升级包。
在再一种实现方式中,OTA管理模块向电量管理模块发送第三信息,该第三信息用于指示该电量管理模块检测终端设备的剩余电量或荷电状态,或者指示该电量管理模块反馈终端设备的剩余电量或荷电状态。以智能汽车为例,第三信息可以通过车内的通信介质(例如以太网、CAN总线、蓝牙、wifi或者其他无线通信介质)传输。电量管理模块为能够检测终端设备剩余电量或荷电状态的模块,例如为BMS。应理解,在这种方式下,第一执行策略包含检测策略。以智能汽车为例,OTA管理模块在确定第一执行策略后,向电量管理模块发送第三信息,触发该电量管理模块检测车辆的SOC或指示该电量模块反馈车辆的SOC。电量管理模块在获取车辆的SOC后,将SOC反馈给OTA管理模块或者OTA升级模块,其中,OTA升级模块负责该第一升级任务包括的升级包的安装。进一步的,如果该电量管理模块检测或反馈的SOC结果大于第一执行策略对应的剩余电量阈值,OTA管理模块或者OTA升级模块执行第一升级任务的后续操作。具体的,例如,第一执行策略对应的剩余电量阈值为30%。OTA管理模块在确定第一执行策略中包含剩余电量阈值后,发送第 三信息指示电量管理模块检测智能汽车的SOC。该电量管理模块检测到智能汽车的SOC为70%,并将该结果反馈给OTA管理模块。OTA管理模块根据该结果,确定智能汽车的SOC大于第一执行策略对应的剩余电量阈值,进而可以执行第一升级任务的后续操作,例如将该第一升级任务中包含的升级包发送给OTA升级模块。又或者,第三信息包含电量阈值且指示电量管理模块判断终端设备的剩余电量或荷电状态是否大于该电量阈值。示例性地,电量管理模块接收第三信息后,获取终端设备的SOC,并与第三信息中包含的电量阈值进行比较,进而将比较结果反馈给OTA管理模块。OTA管理模块根据该比较结果,确定是否执行第一升级任务的后续操作,例如,如果电量管理模块反馈的比较结果为终端设备的SOC大于第三信息中包含的电量阈值,则OTA管理模块将该第一升级任务中包含的升级包发送给OTA升级模块。
可替换地,OTA管理模块可以向OTA升级模块发送第三信息,再由该OTA升级模块控制电量管理模块,检测终端设备的剩余电量或荷电状态,或者指示该电量管理模块反馈终端设备的剩余电量或荷电状态,或者指示该电量管理模块反馈终端设备的SOC与第三信息包含的电量阈值之间的比较结果。具体的。例如,第一执行策略对应的剩余电量阈值为30%,OTA管理模块向OTA升级模块发送第三信息,该第三信息指示第一执行策略,OTA升级模块在确定第一执行策略中包含剩余电量阈值后,指示电量管理模块检测智能汽车的SOC,相应的,电量管理模块可以将检测的SOC结果或SOC与电量阈值之间的比较结果反馈给OTA升级模块。OTA升级模块根据该结果,执行第一升级任务的后续操作。例如如果SOC结果大于第一执行策略对应的剩余电量阈值,OTA升级模块安装第一升级任务包含的升级包。
在再一种实现方式中,OTA管理模块按照第一执行策略对应的存储策略,控制第一升级任务包含的升级包的存储。应理解,在这种方式下,第一执行策略包含存储策略。具体的,例如,第一执行策略为在OTA管理模块和OTA升级模块存储该升级包,OTA管理模块在确定第一执行策略后,除了在OTA管理模块保存该升级包之外,还将该升级包分发到OTA升级模块,并指示该OTA升级模块保存该升级包。其中,该OTA升级模块负责该第一升级任务包括的升级包的安装。进一步的,示例性地,在该升级包被成功安装后,该升级包可以在OTA管理模块和OTA升级模块被移除。
在再一种实现方式中,OTA管理模块向OTA升级模块发送第四信息,该第四信息用于指示第一升级任务包含的升级包的最大安装次数。以智能汽车为例,第四信息可以通过车内的通信介质(例如以太网、CAN总线、蓝牙、wifi或者其他无线通信介质)传输。OTA升级模块负责该第一升级任务包括的升级包的安装。具体的,以智能汽车为例,OTA管理模块在确定第一执行策略后,向OTA升级模块发送第四信息;OTA升级模块在获取该第四信息之后,依照第四信息指示的最大安装次数,安装第一升级任务包含的升级包。例如,该最大安装次数为N次,应理解,在该升级包没有被成功安装之前,OTA升级模块可以重复安装该升级包N次。
在本申请实施例中,可选地,不同的执行策略可以对应不同的升级任务。为了方便描述,本申请实施例中将第一升级策略对应的升级任务描述为第一升级任务,将第二升级策 略对应的升级任务描述为第二升级任务。示例性地,第一升级任务为高等级的OTA升级任务,第二升级任务为低等级的OTA升级任务,通过差异化的执行策略执行不同的升级任务,可以实现不同任务的重要度区分,进而保证重要的OTA升级任务能够在车端更优先地或者更可靠地被执行。具体的,
例如,通过不同的安装提示策略,区分高等级的OTA升级任务和低等级的OTA升级任务,能够让用户更容易注意到更高等级的OTA升级任务,进而更快更容易地被用户确认并执行该升级任务。比如通过不同的字体、或者不同的字体大小、或者不同的字体颜色、或者不同的安装提示显示亮度显示不同任务的安装提示,都可以提高用户对高等级OTA升级任务的注意力;又比如当有多个升级任务提醒时,在UI界面上,高等级的OTA升级任务安装提示顺序排在低等级的OTA升级任务安装提示顺序,也可以实现高等级的OTA升级任务有更大的机会被用户确认。
又如,通过不同的下载策略,区分高等级的OTA升级任务和低等级的OTA升级任务,能够实现OTA升级任务的升级包以更快的速率下载至终端设备,进而该升级任务可以被更快地执行。比如在支持服务质量(quality of service,QoS)的通道内,高等级OTA升级任务包含的升级包下载优先级高于低等级OTA升级任务包含的升级包下载优先级,也可以高于普通车辆网业务的升级包,例如车辆网业务包含的音乐、地图对应的升级包。以区分服务Diffserv为例,可以将普通车辆网业务的升级包的下载速率配置为低优先级,将高等级OTA升级任务的升级包的下载速率配置为高优先级,进而服务器可以优先传输高等级OTA升级任务的升级包,或者服务器通过网络设备优先传输高等级OTA升级任务的升级包。
再如,通过不同的检测策略,区分高等级的OTA升级任务和低等级的OTA升级任务,可以保证高等级OTA升级任务的可靠完成。比如,高等级OTA升级任务需要智能汽车的SOC在30%以上才能被执行,而低等级OTA升级任务只需要智能汽车的SOC在20%以上即可被执行,这样就可以降低由于电量耗尽而导致高等级OTA升级任务执行失败的概率。
再如,通过不同的存储策略,区分高等级的OTA升级任务和低等级的OTA升级任务,可以保证更多的存储资源用于高等级的OTA升级任务,进而保证高等级的OTA升级任务的顺利完成。比如,将高等级的OTA升级任务的升级包保留在一个备份部件或者多个部分部件上,当升级包在升级部件的存储或者安装过程中被损坏或者发生读取错误时,智能汽车可以迅速使用备份升级包重新执行该升级任务,从而提高等级的OTA升级任务被成功执行的概率。而低等级的OTA升级任务可以不备份,当出现问题时该升级任务失败,智能汽车可重新下载安装该升级包,所需的安装时间会长于高等级的OTA升级任务。其中,在本申请实施例中,部件可以为至少1个ECU组成的部件。
再如,通过不同的安装策略,区分高等级的OTA升级任务和低等级的OTA升级任务,可以保证高等级的OTA升级任务的升级包能够更可靠更快地被安装。比如,由于安装升级任务的升级包可能会失败,高等级的OTA升级任务可以配置更多的安装重试次数,提高安装成功率;又比如,当存在多个OTA升级任务时,智能汽车可以优先安装高等级的OTA升级任务包含的升级包。
可替换地,在本申请实施例中,不同的执行策略还可以对应不同的升级子任务。在一个升级任务中,可以包含多个升级子任务。例如,服务器可以按照升级任务实现的功能, 将一个升级任务中包含的具体任务进行分类,比如将升级任务中包括的升级电池控制功能任务作为一个子任务,而将该升级任务中包括的升级底盘控制功能作为另外一个子任务;又例如,服务器可以按照升级任务所对应的升级部件,将一个升级任务中包含的多个子任务进行分类,比如将升级任务中对应FOTA的任务作为一个子任务,而将该升级任务中对应SOTA的任务作为另外一个子任务。可以理解的是,在这种情况下第一指示信息可以指示一种或多种升级子任务分别对应的执行策略,或者,可以指示一种或多种升级子任务分别对应的任务等级,该任务等级对应各自子任务的执行策略;亦或者,第一指示信息仍指示包含多个升级子任务的升级任务的执行策略或任务等级,OTA管理模块可以根据该第一指示信息结合其他判断方式,确定该升级任务中包括的子任务对应的执行策略或任务等级,其中其他判断方式例如可以为默认的任务等级划分方式或者执行策略确定方式,也可以具有其他形式,不做具体限定。
参考图5,在另一种实现方式中,在服务器侧,可以保存升级任务与任务等级之间的映射关系,任务等级与执行策略之间的映射关系可以在终端设备侧实现。即服务器生成第一升级任务,对应于该第一升级任务的第一等级属于任务执行等级集合,该任务执行等级集合中包括至少两种任务执行等级。相应的,OTA管理模块在接收到第一升级任务后,可以根据第一等级,以及第一等级与执行策略之间的映射关系,确定第一执行策略。可替换地,在该种实现方式下,升级任务可以替换为升级子任务。即在服务器侧,可以保存升级子任务与任务等级之间的映射关系,升级子任务对应的任务等级与该升级子任务对应的执行策略之间的映射关系可以在终端设备侧实现。
需要说明的是,在本申请实施例中,升级子任务等级的划分原则可以和升级任务等级的划分原则相同,也可以不同,不做具体限定。
采用本申请实施例所示的方式,通过设计包含至少两种执行策略的执行策略集合,可以实现OTA升级任务的灵活调度。进一步地,通过执行策略集合内包括的不同执行策略可以对不同等级的任务进行区分,进而保证重要的OTA升级任务可以被更可靠更快地完成。
上面结合图5介绍了本申请实施例提供的升级方法,下面结合图6至图8详细说明本申请实施例提供的装置。
图6是本申请实施例提供的通信装置的示意性框图。如图6所示,该通信装置可以包括处理器和收发器,以执行上文中任意可能的实现方式中的方法。其中,处理器可以用于进行装置的内部处理,例如确定对应于升级任务的执行策略,又例如根据执行策略,控制升级任务的执行,再例如生成升级任务。收发器用于执行与发送和接收相关的功能,例如向其他装置发送信息或从其他装置接收信息。
上述通信装置可以是终端设备的装置,则该通信装置可以用于执行上文中终端设备所执行的任一方法。或者上述通信装置可以是服务器的装置,则该通信装置可以用于执行上文中服务器所执行的任一方法。
在一种实现方式中,该通信装置为通信芯片,该收发器可以为该通信芯片的输入输出电路或者端口。在又一种实现方式中,该通信装置包括的收发器可以为发射器和接收器,或者为发射机和接收机。
在又一种实现方式中,该通信装置还包括用于执行本申请实施例中任意可能的实现方 式中的方法中的各个模块。
在又一种实现方式中,该通信装置还可以包括存储器,如图7中虚框所示。图7是本申请实施例提供的通信装置的示意性框图。其中,该存储器与该通信装置包括的处理器、收发器耦合,可以理解的是,该存储器、该处理器和该收发器通过内部连接通路互相通信。具体地,该处理器可用于执行存储器中的指令,以使得该装置执行本申请实施例中任意可能的实现方式中的方法。
在本申请实施例中,该通信装置可以对应于本申请实施例中任意可能的实现方式中的终端设备或OTA管理模块。该通信装置可以为终端设备或者配置于终端设备中的芯片,或者可以为OTA管理模块或配置于OTA管理模块中的芯片。
在本申请实施例中,该通信装置可以对应于本申请实施例中任意可能的实现方式中的服务器。该通信装置可以为服务器或者配置于服务器中的芯片。
另外,本申请实施例中还提供了一种芯片,如图8所示。图8示出了一种芯片的结构示意图。芯片包括一个或多个处理器以及接口电路,用于执行本申请实施例中任意可能的实现方式中的方法。可选地,该芯片还可以包括总线。其中:
示例性地,处理器是一种集成电路芯片,具有信号的处理能力。例如,该处理器可以是现场可编程门阵列(field programmable gate array,FPGA),可以是通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,还可以是系统芯片(system on chip,SoC),还可以是中央处理器(central processor unit,CPU),还可以是网络处理器(network processor,NP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
接口电路可以用于数据、指令或者信息的发送或者接收,处理器可以利用接口电路接收的数据、指令或者其它信息,进行加工,可以将加工完成信息通过接口电路发送出去。
可选地,芯片还包括存储器,可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
可选地,芯片可以使用在本申请实施例涉及的通信装置中。
需要说明的是,处理器、接口电路各自对应的功能既可以通过硬件设计实现,也可以通过软件设计来实现,还可以通过软硬件结合的方式来实现,这里不作限制。
需要说明的是,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本申请还提供一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得该计算机执行前述任一方法实施例中由终端设备或服务器或OTA管理模块或OTA控制模块所执行的方法。
本申请还提供一种计算机可读介质,该计算机可读介质存储有程序代码,当该程序代码在计算机上运行时,使得该计算机执行前述任一方法实施例中由终端设备或服务器或OTA管理模块或OTA控制模块所执行的方法。
本申请还提供一种系统,其包括终端设备和服务器,或者包括OTA管理模块和服务器,或者包括OTA管理模块、OTA升级模块和服务器。
本申请实施例还提供了一种处理装置,包括处理器和接口;所述处理器用于执行本申请实施例中任意可能的实现方式中的终端设备或OTA管理模块或OTA控制模块所执行的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(digital video disc,DVD))、或者半导体介质(例如,固态硬盘(solid state disc,SSD))等。
在本说明书中使用的术语“部件”、“模块”、“系统”等用于表示计算机相关的实体、硬件、固件、硬件和软件的组合、软件、或执行中的软件。例如,部件可以是但不限于,在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序或计算机。通过图示,在计算设备上运行的应用和计算设备都可以是部件。一个或多个部件可驻留在进程或执行线程中,部件可位于一个计算机上或分布在2个或更多个计算机之间。此外,这些部件可从在上面存储有各种数据结构的各种计算机可读介质执行。部件可例如根据具有一个或多个数据分组(例如来自与本地系统、分布式系统或网络间的另一部件交互的二个部件的数据, 例如通过信号与其它系统交互的互联网)的信号通过本地或远程进程来通信。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (30)

  1. 一种升级方法,其特征在于,包括:
    接收第一升级任务;
    确定对应于所述第一升级任务的第一执行策略,所述第一执行策略属于执行策略集合,所述执行策略集合中包括第二执行策略,所述第一执行策略不同于所述第二执行策略;
    根据所述第一执行策略,控制所述第一升级任务的执行。
  2. 根据权利要求1所述的方法,其特征在于,所述确定对应于第一升级任务的第一执行策略之前,所述方法还包括:
    获取第一指示信息,所述第一指示信息用于指示所述第一执行策略,或者,指示所述第一升级任务的第一等级,所述第一执行策略对应于所述第一等级。
  3. 根据权利要求1或2所述的方法,其特征在于,所述执行策略集合包括对应于升级任务的至少两种安装提示,所述第一执行策略和所述第二执行策略对应不同的安装提示。
  4. 根据权利要求3所述的方法,其特征在于,所述安装提示包含以下的一项或多项:
    安装提示的显示位置、安装提示的显示亮度或安装提示的字体大小。
  5. 根据权利要求1至4任一项所述的方法,其特征在于,所述执行策略集合包括对应于升级任务的至少两种下载速率,所述第一执行策略和第二执行策略对应不同的升级任务下载速率。
  6. 根据权利要求1至5任一项所述的方法,其特征在于,所述执行策略集合包括对应于升级任务的至少两种剩余电量阈值,所述第一执行策略和所述第二执行策略对应不同的剩余电量阈值。
  7. 根据权利要求1至6任一项所述的方法,其特征在于,所述执行策略集合包括对应于升级任务的至少两种存储资源,所述第一执行策略和所述第二执行策略对应不同的存储资源。
  8. 根据权利要求7所述的方法,其特征在于,所述第一执行策略对应的存储资源包含位于K个存储部件内的存储资源,其中所述K为不小于1的整数,所述存储部件包含至少一个电子控制单元。
  9. 根据权利要求1至8任一项所述的方法,其特征在于,所述执行策略集合包括对应于升级任务的至少两种最大安装次数,所述第一执行策略和所述第二执行策略对应于不同的最大安装次数。
  10. 一种升级方法,其特征在于,包括:
    生成第一升级任务,对应于所述第一升级任务的第一执行策略属于执行策略集合,所述执行策略集合中包括第二执行策略,所述第一执行策略不同于所述第二执行策略;
    发送所述第一升级任务。
  11. 根据权利要求10所述的方法,其特征在于,所述生成第一升级任务之后,所述方法还包括:
    发送第一指示信息,所述第一指示信息用于指示所述第一执行策略,或者,指示所述第一升级任务的第一等级,所述第一执行策略对应于所述第一等级。
  12. 根据权利要求10或11所述的方法,其特征在于,所述执行策略集合包括对应于升级任务的至少两种安装提示,所述第一执行策略和所述第二执行策略对应不同的安装提示。
  13. 根据权利要求12所述的方法,其特征在于,所述安装提示包含以下的一项或多项:
    安装提示的显示位置、安装提示的显示亮度或安装提示的字体大小。
  14. 根据权利要求10至13任一项所述的方法,其特征在于,所述执行策略集合包括对应于升级任务的至少两种下载速率,所述第一执行策略和所述第二执行策略对应不同的升级任务下载速率。
  15. 根据权利要求10至14任一项所述的方法,其特征在于,所述执行策略集合包括对应于升级任务的至少两种剩余电量阈值,所述第一执行策略和所述第二执行策略对应不同的剩余电量阈值。
  16. 根据权利要求10至15任一项所述的方法,其特征在于,所述执行策略集合包括对应于升级任务的至少两种存储资源,所述第一执行策略和所述第二执行策略对应于不同的存储资源。
  17. 根据权利要求16所述的方法,其特征在于,所述第一执行策略对应的存储资源包含位于M个存储部件内的存储资源,其中所述M为不小于1的整数,所述部件为至少一个电子控制单元组成的部件。
  18. 根据权利要求10至17任一项所述的方法,其特征在于,所述执行策略集合包括对应于升级任务的至少两种最大安装次数,所述第一执行策略和所述第二执行策略对应不同的最大安装次数。
  19. 一种通信装置,其特征在于,包括:
    收发器,用于接收第一升级任务;
    处理器,用于确定对应于第一升级任务的第一执行策略,所述第一执行策略属于执行策略集合,所述执行策略集合中包括第二执行策略,所述第一执行策略不同于所述第二执行策略;
    所述处理器还用于根据所述第一执行策略,控制所述第一升级任务的执行。
  20. 根据权利要求19所述的装置,其特征在于,所述收发模块还用于:
    获取第一指示信息,所述第一指示信息用于指示所述第一执行策略,或者,指示所述第一升级任务的第一等级,所述第一执行策略对应于所述第一等级。
  21. 根据权利要求19或20所述的装置,其特征在于,所述执行策略集合包括对应于升级任务的至少两种安装提示,所述第一执行策略和所述第二执行策略对应不同的安装提示。
  22. 根据权利要求19至21任一项所述的装置,其特征在于,所述执行策略集合包括对应于升级任务的至少两种剩余电量阈值,所述第一执行策略和所述第二执行策略对应不同的剩余电量阈值。
  23. 一种通信装置,其特征在于,包括:
    处理器,用于生成第一升级任务,对应于所述第一升级任务的第一执行策略属于执行策略集合,所述执行策略集合中包括第二执行策略,所述第一执行策略不同于所述第二执行策略;
    收发器,用于发送所述第一升级任务。
  24. 根据权利要求23所述的装置,其特征在于,所述收发器还用于:
    发送第一指示信息,所述第一指示信息用于指示所述第一执行策略,或者,指示所述第一升级任务的第一等级,所述第一执行策略对应于所述第一等级。
  25. 根据权利要求23或24所述的装置,其特征在于,所述执行策略集合包括对应于升级任务的至少两种安装提示,所述第一执行策略和所述第二执行策略对应不同的安装提示。
  26. 一种终端设备,其特征在于,包括用于执行如权利要求1至9中的任一项所述方法的通信装置。
  27. 一种服务器,其特征在于,包括用于执行如权利要求10至18中的任一项所述方法的通信装置。
  28. 一种芯片,其特征在于,包括一个或多个处理器和接口电路,所述接口电路用于为所述一个或多个处理器提供信息输入和/或输出,所述芯片用于执行如权利要求1至9、或10至18中的任一项所述方法。
  29. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序或指令,当所述计算机程序或指令被通信装置执行时,实现如权利要求1至9、或10至18中任一项所述的方法。
  30. 一种计算机程序产品,其特征在于,所述计算机程序产品在一个或多个处理器上运行时,实现如权利要求1至9、或10至18中任一项所述的方法。
CN202180100026.1A 2021-07-01 2021-07-01 一种空中下载(ota)升级方法及装置 Pending CN117999540A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2021/104077 WO2023272699A1 (zh) 2021-07-01 2021-07-01 一种空中下载(ota)升级方法及装置

Publications (1)

Publication Number Publication Date
CN117999540A true CN117999540A (zh) 2024-05-07

Family

ID=84692212

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180100026.1A Pending CN117999540A (zh) 2021-07-01 2021-07-01 一种空中下载(ota)升级方法及装置

Country Status (4)

Country Link
EP (1) EP4345604A4 (zh)
JP (1) JP2024526578A (zh)
CN (1) CN117999540A (zh)
WO (1) WO2023272699A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024152148A1 (zh) * 2023-01-16 2024-07-25 华为技术有限公司 一种设备救援方法及相关设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111381843A (zh) * 2018-12-27 2020-07-07 北京骑胜科技有限公司 一种固件升级调度方法、固件升级方法及相关装置
CN111399870A (zh) * 2020-02-28 2020-07-10 浙江吉利新能源商用车集团有限公司 一种车辆控制方法、装置、终端及存储介质
CN111414185B (zh) * 2020-02-28 2023-01-10 浙江吉利新能源商用车集团有限公司 一种终端升级方法、装置、终端及存储介质
CN111399884A (zh) * 2020-04-09 2020-07-10 东风小康汽车有限公司重庆分公司 一种车辆组件的升级方法、装置及电子设备
CN111726749A (zh) * 2020-06-11 2020-09-29 广州小鹏车联网科技有限公司 一种车辆空中下载ota处理方法和装置
CN112416371A (zh) * 2020-10-19 2021-02-26 东风汽车集团有限公司 车载系统的远程升级方法、装置、系统及存储介质
WO2022165711A1 (zh) * 2021-02-04 2022-08-11 华为技术有限公司 基于空中下载技术ota的升级方法及装置
WO2022188069A1 (zh) * 2021-03-10 2022-09-15 华为技术有限公司 获取许可信息的方法、装置、存储介质和芯片系统

Also Published As

Publication number Publication date
JP2024526578A (ja) 2024-07-19
EP4345604A4 (en) 2024-07-03
WO2023272699A1 (zh) 2023-01-05
EP4345604A1 (en) 2024-04-03

Similar Documents

Publication Publication Date Title
US10782955B2 (en) Pre-shutdown swap verification
EP3352079B1 (en) Gateway device, vehicle-mounted network system, and firmware update method
US11314495B2 (en) In-vehicle synthetic sensor orchestration and remote synthetic sensor service
EP4099155B1 (en) Method and apparatus for updating devices in a remote network
US11659370B2 (en) Over-the-air update apparatus in vehicle and method thereof
US11061659B2 (en) Control apparatus, transfer method, and computer program
EP4113287B1 (en) Gateway device, in-vehicle network system, and firmware update method
KR20150144623A (ko) 스마트폰을 이용한 차량용 소프트웨어 갱신 방법 및 시스템
KR20140061128A (ko) 오토사 기반 자동차 전장 및 자동차 전장 업데이트 방법
US20240069905A1 (en) Vehicular electronic control device, vehicular electronic control system, and updated configuration information determination program
CN108196864B (zh) 一种车载电子设备升级系统和方法
US20200272455A1 (en) Vehicle controller configuration backup and restoration using data snapshots
CN117999540A (zh) 一种空中下载(ota)升级方法及装置
WO2022212480A1 (en) In-vehicle distributed computing environment
EP4375802A1 (en) Over-the-air (ota) upgrade method and apparatus
CN114667502A (zh) 车载更新装置、程序以及程序的更新方法
CN115688094B (zh) 一种容器车载应用安全级别的实现方法、装置和电子设备
WO2023141502A1 (en) Technologies for over-the-air updates for telematics systems
US11836482B2 (en) Center device, reprogramming data distribution system, and reprogramming data distribution plan creation program product
WO2023272570A1 (zh) 电子控制单元ecu更新的方法、ecu和终端
WO2024152148A1 (zh) 一种设备救援方法及相关设备
WO2022244588A1 (ja) 車両用電子制御装置、更新プログラム及びデータ構造
US20240362011A1 (en) Techniques For Over-The-Air Software Updates
CN113767034A (zh) 中心装置、数据分发系统以及限制实施程序
KR20230063809A (ko) 차량용 인포테인먼트 테스트 장치 및 그 방법

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