CN111886576A - 用于更新远程网络设备的方法和装置 - Google Patents
用于更新远程网络设备的方法和装置 Download PDFInfo
- Publication number
- CN111886576A CN111886576A CN201880091476.7A CN201880091476A CN111886576A CN 111886576 A CN111886576 A CN 111886576A CN 201880091476 A CN201880091476 A CN 201880091476A CN 111886576 A CN111886576 A CN 111886576A
- Authority
- CN
- China
- Prior art keywords
- update
- controllers
- controller
- policy
- module
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000010200 validation analysis Methods 0.000 claims abstract description 23
- 238000009434 installation Methods 0.000 claims description 39
- 238000012795 verification Methods 0.000 claims description 32
- 238000012545 processing Methods 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 10
- 238000003860 storage Methods 0.000 claims description 3
- 238000009472 formulation Methods 0.000 abstract description 3
- 239000000203 mixture Substances 0.000 abstract description 3
- 239000003795 chemical substances by application Substances 0.000 description 61
- 230000006870 function Effects 0.000 description 23
- 238000004891 communication Methods 0.000 description 14
- 230000000875 corresponding effect Effects 0.000 description 14
- 230000015654 memory Effects 0.000 description 13
- 230000009471 action Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 102100034112 Alkyldihydroxyacetonephosphate synthase, peroxisomal Human genes 0.000 description 4
- 101000799143 Homo sapiens Alkyldihydroxyacetonephosphate synthase, peroxisomal Proteins 0.000 description 4
- 238000000848 angular dependent Auger electron spectroscopy Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 101100521334 Mus musculus Prom1 gene Proteins 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1433—Saving, restoring, recovering or retrying at system level during software upgrading
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种用于更新远程网络中,例如车辆远程网络中的控制单元的网络架构,包括管理模块、验证模块和代理模块。所述管理模块根据提供给所述管理模块的控制单元的上下文信息,制定管理控制单元更新的策略。在制定策略时,所述管理单元会考虑控制单元之间在更新版本方面的兼容性,以便能够成功更新。或者,若整个或部分更新失败,远程网络仍然可以处于稳定状态,因为在更新流程中发生错误时,所述管理模块可以为所述代理模块提供错误处理流程。
Description
技术领域
本发明涉及设备的更新,尤其涉及车辆中控制器的更新。一方面包括根据对车辆远程网络特征的感知,尤其是控制器之间的兼容性,为远程控制器提供兼容更新。另一个方面是为更新中的错误提供错误处理流程。
背景技术
设备中包括固件和嵌入式软件,并且可以提供例如特定功能或控制器的操作系统。通常可以通过补丁来更新控制器的固件或软件。在此,为了方便起见,术语“更新”和“补丁”及其对应的形式可以互换使用。
汽车正在从机械设计向电子设计转变。控制器等车载设备,例如嵌入式系统等车辆中使用的电子控制单元(简称ECU)也可以进行更新。
在任何特定车辆中可以有多个ECU,负责控制车辆的电气系统或子系统的不同部分。ECU可以包括,例如,发动机控制模块或制动控制模块或传输控制模块。ECU可以存在于具有各种结构和配置的复杂系统中,并且,由于设计迭代和部件的可用性,提供给每个ECU的其它更新,名义上在同一车辆之间也可能有所不同。
此外,由于一些汽车与外部网络,例如互联网,具有连接性,因此,通过空口更新固件/软件(分别简称为FOTA/SOTA)的能力已成为所述车辆的特征。
然而,这种能力具有两面性。一方面,新数据、新功能或缺陷修复可以通过空口传送,从而节省了车主的时间和汽车制造商的精力。另一方面,每个补丁包都必须确保正确,并需与特定的目标车辆兼容。否则,可能导致车内控制器出现故障。因此,由于配置不当,可能导致机械部件损坏,系统进入不稳定或不可预知的状态,不仅造成经济损失,还会带来安全问题。
一个相关的方面是安全问题。由于FOTA/SOTA接口的存在,未经授权的第三方可能会对车辆进行黑客攻击和远程控制。
针对上述问题,当前方案如下:
Nilsson、Lei Sun、Tatsuo Nakajima和IEEE GlobalCom 2008共同编写的文件《车载ECU空口固件更新自验证框架》提供了散列和签名方法,以提供汽车领域补丁包的真实性和完整性。该方法采用了车载控制器如何打补丁的控制流,并使用哈希链技术来保证补丁的完整性。车载控制器是单独考虑的。
专利出版物US20030221190A1提出了一种更新一组控制器或控制器的机制。选择一个控制器作为参考。对比其它控制器,确保控制器架构和软件特性保持一致。当一组控制器保持一致,且补丁对被参照的控制器是兼容的,则所有控制器并行启动补丁过程。在这种系统设置中,控制器是同构控制器。
专利出版物US20160170775A1提出了一种兼容性感知补丁系统。每个车载控制器都包括多模块协调器特性(MMCF)功能块。控制器的所有补丁打包成1个包。补丁包下载完成后,各控制器执行MMCF功能块进行兼容性检查。控制器之间根据需要进行交互。各控制器根据检查结果决定是否执行补丁过程。每个控制器都具有多模块兼容特性,这引入了每个控制器的计算成本。
发明内容
发明人意识到当前方案有若干缺点。
本发明实施例的目的在于提供一种方案,以减轻或解决当前方案的缺点和问题。
上述和其它目标通过由独立权利要求的标的物来实现。本发明的其它有利实施方式由从属权利要求界定。进一步的实施方式在说明和附图中显而易见。
根据本发明的第一方面,通过服务器的管理模块实现上述和其它目的,其中,所述管理模块用于:
-制定策略,以管理车辆远程网络中一组控制器中特定一个或多个控制器的更新,
其中,所述策略基于上下文信息制定,所述上下文信息包括以下信息中的至少一种:所述车辆远程网络中的所述一组控制器中的所述特定一个或多个控制器的兼容性、所述车辆的远程网络中的所述一组控制器中的控制器之间的兼容性。
所述上下文信息还可以包括以下信息中的至少一种:所述特定一个或多个控制器的硬件、所述特定一个或多个控制器的结构、所述远程网络的拓扑。
所述管理模块可以是硬件模块,也可以是软件模块或其组合。
所述管理模块可以包括用于制定策略的合适的结构和组件。合适的结构可包括存储器、总线、存储器控制器、输入输出接口和处理器。
所述服务器可以是服务供应商的服务器,也可以是能够托管所述管理模块的任何第三方授权服务器。
所述服务器还可以包括本领域技术人员所熟知的服务器的合适的结构和组件。此外,所述服务器可以包括传输模块,用于将所述策略传输给车辆,以根据所述策略执行更新。
所述服务器可以从更新生成中心接收更新,或者能够自己生成更新。可以生成所述更新以符合所述策略,或者可以选择性地组合所述更新的部分,使得所述结果包符合所述制定的策略。
所述策略通过与更新相关联来管理更新。所述策略可以通过在发送所述策略之前确定或指定更新是否兼容来管理更新。所述策略可以包括与如何在远程网络中执行控制器更新的有关的指令、代码、参数中的任意一个或多个。所述策略可以在不同粒度级别上提供这些信息,例如,至少一个单独的控制器、一组控制器、一组控制器中的控制器分组。
更新或补丁可以是软件数据的更新、软件应用程序的缺陷修复、针对某些软件新提供的功能或控制器固件的不同版本。有相关技术经验的读者还会想到其它更新或补丁的例子。
特定控制器可以是目标控制器,例如,策略及其关联更新所针对的控制器。为了提高更新效率,并考虑到远程网络的复杂性和兼容性问题,在一个策略中可以针对一个以上的控制器。
控制器可以是控制单元,或如上文所公开的ECU。控制单元可以具有本文公开的特定结构和兼容性能力。ECU的优选实施例包括以下至少一种:车辆控制器单元、车身控制器、电池管理单元、电池控制单元和ADAS主控制器。优选地,所述控制器控制与所述车辆的主要功能相关的所述车辆的嵌入式系统,即,车辆的移动,但不一定是辅助系统,如不影响车辆的移动的音频或视频娱乐。
可以根据远程网络的拓扑对控制器进行分组。例如,通过同一总线连接的控制器可以划分为同一个组。在另一示例中,远程网络中与一个域控制器连接的所有控制器可以组成一个组。在另一示例中,可以存在多组控制器,每组控制器具有各自的域控制器和可选的代理模块。中央控制器可以与域控制器一起使用,也可以不与域控制器一起使用。任意组中的控制器可以是异构的或同构的,每个控制器包括一个分组,但不限于此。异构可以表示控制器具有不同的硬件或不同的功能。同构可以表示控制器具有相同的硬件和相同的功能,例如,一组电池控制器,其中每个控制器控制一个电池单元。
所述远程网络可以是系统的全部或者部分,例如车辆的电气系统,没有持续地连接到其它网络。所述远程网络可以结构良好,这表示该网络具有预定义的网络拓扑。所述拓扑是固定的或很少修改。
所述远程网络可以具有用于网络接入的接口,例如,因特网接口。所述远程网络可以与所述管理模块位于不同的域中。优选地,所述远程网络是作为车辆的一部分来部署的网络,因此能够具有移动性,并且连接所述车辆中的ECU。其它的界面和显示器也可能存在。在所述远程网络中,单个ECU或一组ECU可以连接到中央控制器,或者通过本身具有接口的域控制器来连接。也可以采用其它配置。所述远程网络可以不包括所述服务器或所述管理模块。
不考虑动力来源或驱动方式,车辆可以是地面车辆,如汽车、摩托车以及卡车。其它有控制者的车辆也可视为车辆,如水上飞行器和空中飞行器。
上下文信息在制定策略时使用。上下文信息可以由所述远程网络,例如在制定策略之前由策略验证模块提供给所述管理模块。一些上下文信息,例如所述远程网络拓扑和控制器硬件信息,也可以由设计者(例如,所述控制器或所述远程网络的制造公司或设计公司)设为默认的系统设置信息。
所述控制器组中的所述特定一个或多个控制器的兼容性可以给每个控制器提供可以使用的版本更新的一般信息。
所述控制器组中控制器之间的兼容性信息可以是用于指示所述控制器组中控制器是否与所述更新或者各控制器之间存在依赖关系的信息或指示。例如,一个控制器的更新是否依赖于另一个控制器的成功更新,其中,该另一控制器的更新根据版本顺序来进行的,或者更新是否可以任意跳过。在另一示例中,一个控制器是否可以更新取决于同组控制器中的前一个控制器是否更新成功。这些信息还可以是特定控制器是否经历原子性(即,全有或全无)作为一组或分组进行更新。策略可以提供相应的指令或参数或者相应的指令或参数可以根据策略推断出来。
所述特定一个或多个控制器的硬件信息可以包括关于组中控制器是否为同构控制器的信息或指示,因此,这些同构控制器可以一起更新,或者可以包括关于组中控制器是否是不同的控制器的信息,即,异构控制器。一组控制器既可以包括同构控制器组也可以包括异构控制器组。每个分组可以包括各自的信息,具体不受限制。异构控制器各自具有不同的硬件部件和系统配置。相同功能的同构控制器可以使用相同的补丁一起进行更新。异构控制器也可以一起进行更新(原子更新),但是使用不同的补丁。
所述特定一个或多个控制器的结构或远程网络的拓扑的信息可以用于指示控制器如何进行互连,对于每组控制器是否有中心域控制器或者单独的域控制器,其中,补丁代理位于控制器中。
使用综合考虑了远程网络的各方面而制定的策略,更新中的控制器在更新兼容方面有一定的信心。因此提高了兼容性。进一步地,所述策略的使用可减轻所述或每个控制器的验证工作。此外,由于下载不兼容的更新的可能性降低,节省了空口资源。
根据第一方面所述的管理模块的实施方式,其中所述特定一个或多个控制器的兼容性定义每个所述控制器是否与所述更新兼容;或者
该组中的所述特定一个或多个控制器之间的兼容性定义所述控制器组中的控制器的更新顺序是否存在依赖关系,和/或每个组中的控制器是否为进行原子更新的同构组或是否包含异构组。
这样定义的好处是,该策略是该特定的远程网络的定制策略,该网络可以具有多种潜在配置。
一般而言,此处使用的“或”可能包括“和”以及“或”的含义。任意参数列表都应被理解为包括每个参数以及这些参数的任意组合。
根据所述第一方面一种管理模块的实现形式,所述策略包括安装策略,所述安装策略包括与所述控制器的兼容性相关的更新安装指令,用于所述每组控制器中的所述特定一个或多个控制器。所述安装策略可以替代地或附加地包括与控制器之间的兼容性有关的更新指令,所述更新指令针对每组控制器中的所述特定一个或多个控制器。
所述更新安装指令可以明确哪些控制器要进行更新,明确在哪些组,以及明确每个控制器或每组控制器需要应用的具体更新版本。该指令中还明确了其它信息。明确特定控制器有助于提高更新成功的可能性。
根据第一方面所述的管理模块的实现方式,所述管理模块还用于提供所述远程网络参数相关的安装标准,所述安装标准具体包括以下一项或多项:所述远程网络的系统状态、可用电源、可用存储空间、所述远程网络的连接性、所述远程网络的移动性以及所述远程网络的速度。
优选地,策略包括所述安装标准,并且包括与远程网络状态有关的标准。只有满足这些标准,更新才能成功。例如,当车辆从一个小区移动到另一小区,远程网络的移动性和速度都会对连接造成影响。移动性可以是车辆是否处于停止状态以及哪个齿轮处于发动状态。网络连接的类型,包括信号强度和速度,可以包含在标准中。系统的状态可以包括停车模式、驾驶模式或待机模式或任何其它模式。当满足安装条件时,就可以进行更新。
根据所述第一方面的一种管理模块的实现形式,所述管理模块还用于为所述更新提供错误处理信息。
优选地,策略包括所述错误处理信息。所述错误处理信息可包括用于错误检测和/或更新产生的错误的错误处理指令、流程或参数。
根据所述第一方面的一种管理模块的实现方式,所述错误处理信息包括在所述一个或多个控制器的所述更新或一次更新期间发生错误时的错误处理配置信息当中,具体包括回退流程或更新重试次数。
错误处理配置信息可以明确在更新失败时要做什么。例如,在一组同构控制器中,若其中一个控制器更新失败,配置信息明确重试次数。若多次重试仍然失败,则可以明确同构组中的所有控制器回退到软件更新前的版本。相似指令可以提供给每个子集合,例如异构组中各组控制器。当控制器对成功更新或顺序存在单向依赖关系时,还可以明确重试次数。
根据所述第一方面的一种管理模块的实现形式,其中所述管理模块用于根据所述策略为所述特定一个或多个控制器准备所述更新。
通过准备更新,所述管理模块可以控制更新的内容和兼容性。
所述更新和/或策略可以受到保护,例如,在下载之前对所述更新和/或策略进行哈希运算和签名,从而确保完整性和真实性。
根据所述第一方面的一种管理模块的实现形式,所述管理模块设置在服务器中,其中所述服务器用于发送所述一个或多个控制器的所述策略和所述更新,尤其是将所述策略和所述更新一起打包发送。
所述管理模块首先可以根据策略准备更新,然后向远程网络发送更新,或者可选地,一起发送更新和策略。所述更新和所述策略也可以分开发送。将所述更新与所述策略一起发送,一定程度上保证了所发送的策略是针对所发送的更新。关于一起发送的更多优点,可以体现在所述车辆的状态,例如所述远程网络的连接性。所述远程网络的连接性,尤其是在所述车辆移动时,会发生变化。
根据本发明的第二方面,通过用于车辆的远程网络的代理模块以实现上述和其它目标,包括:
所述代理模块,用于根据管理更新的策略,对所述远程网络中的一组控制器中包括的特定一个或多个控制器执行更新流程,
所述策略包括安装策略,所述安装策略包括针对每个控制器组中每个所述特定一个或多个控制器与所述控制器的兼容性相关的相应更新安装指令。
代理模块可以安装在车辆侧,可以是系统的一部分,所述系统包括所述策略验证模块、所述代理模块和用于从所述管理模块接收策略的接口。所述远程网络可以包括所述控制器。所述系统可以包括所述远程网络。
所述更新流程可以是包括用于执行更新的具体动作的更新过程。一般来说,部分或全部动作对所述代理模块来说是已知的。安装指令可包括关于如何执行更新流程、执行哪些操作以及何时执行、针对哪些控制器或控制器组或控制器组修改哪些操作的具体指令。所述特定指令可包括例如在表或字段中提供的参数或值,所述表或字段由所述代理模块获得,例如,进行解析并提供给更新流程。
可以理解的是,所述管理模块和所述代理模块相互通信,通过接收所述策略并更新代理模块,能够根据所述策略实现更新。所述代理模块可能实现部分更新,这取决于哪些部分通过了验证。
优选地,所述代理模块位于所述远程网络中,例如位于所述车辆的系统中。所述代理模块可以灵活地位于所述远程网络中。例如,所述代理模块可位于所述远程网络的中央控制器中。或者所述代理模块也可以位于所述ECU的每个域控制器中。优选地,所述代理模块不位于任何ECU中。
但是,为了某种目的,可以没有代理模块。相反的,通过基于上下文信息制定所述策略,在发送所述更新之前,所述管理模块为所述更新与特定的控制器之间的兼容性提供一定程度的保证。另一方面,如果包括所述代理模块,那么所述代理模块和所述管理模块可以协作以进一步提供保证。
所述代理模块可以是硬件模块、软件模块、固件或其组合。所述代理模块可以是由处理器实现的计算机程序的指令。所述代理模块可以是用于实现所述代理模块功能的电路。
根据所述第二方面的代理模块的实施方式,所述策略还包括一个或多个控制器针对在更新期间发生的错误事件的错误处理配置信息,具体包括回退流程或更新重试次数。
所述代理模块可以进行本文公开的错误检测和错误处理流程。
根据本发明的第三方面,通过策略验证模块实现上述和其它目标,包括:
所述策略验证模块,用于:
-为所述特定一个或多个控制器对管理模块的策略的兼容性进行验证;
-根据验证结果确定所述更新流程中待使用的更新部分。
所述策略验证模块可以提供更新的版本控制。开发过程中会有不同版本的更新。某些版本适用于某些控制器,而其它版本可能不适用。所述策略验证模块的优点在于,根据所述控制器的信息对所述制定的策略进行验证,从而提供了进一步的保证。
由于所述策略是基于粒度级别,因此所述策略验证模块可以确定所述更新的哪些相应部分通过了验证,通过验证的部分则进行安装。
此外,可能会发生各种情况,例如,向所述管理单元传递的控制器上下文信息有误、控制器中干预的变化,或制定所述策略时发生的错误,那么所述策略验证模块可以检测到这些情况并阻止安装全部或部分的所述更新。
所述策略验证模块也可以根据所述远程网络的当前状态检查安装条件。若满足所述安装条件,且所述策略验证通过,则所述策略验证模块可以通知所述更新代理发起更新。
应理解,所述策略验证模块作为包括所述管理模块、所述代理模块和所述策略验证模块的系统或架构的一部分,具有额外优势。
所述策略验证模块的位置可以灵活设置。例如,将车辆作为所述远程网络的一部分,或在其它设备(例如,移动终端)上,所述其它设备也可以与所述远程网络进行通信。进一步地,所述验证模块和所述代理模块可以组合,或所述验证模块和所述代理模块所述验证模块和所述代理模块均包括子模块。
根据所述第三方面的验证模块的实施方式,其中所述策略验证模块用于获取上下文信息,并将所述上下文信息提供给所述第一方面的所述管理模块。
通过及时收集和提供所述上下文信息,可以依据最新的上下文信息制定所述策略。所述上下文信息可以定期提供,如被请求时可主动提供或以其它方式提供。优选地,所述上下文信息在所述策略制定之前通过与所述远程网络进行通信提供给所述管理单元。
根据本发明的第四方面,上述和其它目的通过网络实现,所述网络包括本文所公开的管理模块、代理模块和策略验证模块。
所述管理模块、所述代理模块和所述策略验证模块包括端到端架构,该架构制定兼容策略、验证策略并实现更新,尤其是具有错误处理功能。所述网络可以包括逻辑网络,所述三个模块中的每个模块包括逻辑实体。
本发明的一个方面可以对本文所公开的所述管理模块、所述验证模块和所述代理模块中的至少一个提供对应配置功能的升级方法。一种更新方法可以由包括所述管理模块和所述代理模块的网络提供,并且可选地与验证模块一起提供。
根据本发明的第五方面,上述和其它目的通过用于更新车辆网络中的控制器的方法来实现,所述方法包括:
-制定策略,包括更新与网络中特定控制器之间的所述兼容性有关的安装参数;
-针对所述网络中的所述特定控制器发送所述策略和相应的更新,根据所述更新安装参数制定相应的更新以与所述特定控制器兼容。
本文公开了所述策略和所述更新安装参数以及所述兼容性。
所述策略和/或所述更新是为了与所述目标特定控制器兼容而制定的。在发送之前制定所述策略,避免下载不适用的更新。
根据第五方面所述的方法的一种实现形式,所述方法还包括:
-在制定所述策略之前,接收与所述网络中所述特定控制器间的兼容性相关的上下文信息。
通过及时接收所述上下文信息,该策略针对所述目标控制器。
根据第五方面所述的方法的一种实现形式,所述方法包括:
-所述车辆中负责更新多个控制器的更新代理根据所述策略中的所述更新安装参数实施所述更新。
每个更新代理可以与多个控制器进行通信,并负责更新。因此,不需要额外的硬件,例如MMCF,或者不需要指令来验证每个控制器的更新。
本发明的一个方面可以提供对应于由本文所公开的所述管理模块、所述验证模块和所述代理中的至少一个提供的配置功能的错误处理方法。
根据本发明的第六方面,上述和其它目的通过处理车辆远程网络中控制器的更新流程中的错误的方法来实现,包括:
-在所述远程网络中为每个控制器启动所述更新流程;
-根据与所述更新相关的错误处理配置信息来处理更新错误,所述错误处理配置信息,具体包括回退流程或更新重试次数。
组或某些组中的控制器可以要求每个控制器具有相同版本的软件。若部分更新成功,即,有些控制器是更新了的,但同一组中的其它控制器未更新,因此所述系统可能不稳定或有缺陷。当该组或某些组中的控制器更新失败时,可以先尝试多次更新来处理该错误。若重试失败,该组或某些组中已更新的控制器可以回退到与更新失败的控制器所兼容的版本。优选地,所有的控制器都回退到相同的版本,这个版本可以是尝试更新前的版本。错误处理配置信息可以明确重试尝试次数或明确何时回退或回退到哪个版本。
错误处理配置信息可以与更新相关联,具体地用于该更新。字段可以明确更新版本,也可以以其它方式提供信息。
根据第六方面所述的方法的一种实现形式,其中所述更新流程根据与所述远程网络中的控制器的兼容性和/或控制器之间的兼容性有关的更新安装参数来执行。
本发明实施例还涉及一种计算机程序,其特征为代码装置,其具有用于处理器等处理装置的指令,以执行本发明中的任何方法。因此,当所述计算机程序在所述处理装置上运行时,执行所述方法中的任一方法。此外,本发明还涉及一种计算机程序产品,所述计算机程序产品可以包括计算机可读介质,以及所述计算机程序,其中所述计算机程序包括在所述计算机可读介质中,所述计算机可读介质可以包括来自所述组的一个或多个ROM(只读存储器)、PROM(可编程ROM)、EPROM(可擦写PROM)、Flash存储器、EEPROM(电EPROM)和硬盘驱动器。
本文描述的所述方法、系统和模块可以作为处理器、微控制器或任何其它侧处理器中的软件或专用集成电路、ASIC或现场可编程门阵列中的硬件电路来实施。现场可编程门阵列是设计用于客户或设计者制造后配置的集成电路,因此是“现场可编程的”。
本发明还可以以数字电子电路或计算机硬件、固件、软件或其组合来实施,例如。在传统控制器的可用硬件中或在专用于处理本文所述方法的新硬件中。
所述管理模块、验证模块和代理模块可以是逻辑或虚拟网络组件。
本发明实施例提供了一个更新可能与目标控制器更加兼容的优点。减少了远程网络侧对更新的验证工作,减少了传输更新时对于网络资源的浪费。本发明实施例还提供了更新期间的故障检测和更新期间的错误处理,提高了远程网络中所生成的更新控制器的稳定性和功能性。故障检测可以与管理更新的策略一起提供,也可以单独提供。
本发明进一步的应用和优点将在以下详细描述中显而易见。
附图说明
附图意在阐明和阐释本发明的各项实施例,其中:
图1示出了根据本发明实施例的包括管理模块的架构的概述;
图2示出了根据本发明实施例的示例性实现方式,其中管理模块在功能上是服务器的一部分,代理模块和验证模块位于包括控制单元的远程网络中;
图3示出了根据本发明实施例的示例性实现方式,其示出了实现更新的模块之间的通信流程;
图4示出了车辆远程网络中的控制单元和网络拓扑的示例;
图5示出了本发明的示例性实施例,其中所述策略明确每个ECU要采取的动作;
图6示出了本发明的可替代的示例性实施例,其中ECU直接与中央控制器连接;
图7示出了本发明的可替代的示例性实施例,其中验证模块安装在单独的控制器中;
图8示出了本发明的示例性实施例中更新控制器的方法的一些步骤;
图9示出了本发明的示例性实施例中更新期间处理更新错误的方法的一些步骤。
具体实施方式
在附图中,相同的参考符号表示相同或至少等效的元素、部件、单元或步骤。同一系列可以表示相同或功能相同的部分,但用不同的图形表示。另外,需要说明的是,并不绘制所有附图。
图1示出了根据本发明实施例的管理模块110。代理模块可以定义并提供补丁包的策略。该策略可包括与控制器的兼容性和/或控制器之间的兼容性(也称为依赖关系)有关的任何更新安装指令,提供与远程网络参数(也称为先决条件)有关的安装标准以及错误处理信息。管理模块根据管理模块已知的上下文信息制定策略。
管理模块110可以是独立控制器,也可以是其它控制器的一部分。例如,管理模块110可以是无线网络节点的集成部分,例如,基站;可以是中心网络节点的一部分,例如,无线网络控制器。管理模块可以位于服务器中。在一实施例中,管理模块110包括用于处理数据的处理器。在一实施例中,管理模块110还可包括其它部件,例如技术人员已知的收发器、存储器。在此类实施例中,管理模块110可以通过本领域已知的合适的通信装置耦合到收发器和存储器。
通过使用收发器,管理模块110用于通过合适的有线和/或无线通信接口与其它网络控制器通信,并最终与所述代理模块通信。
在一个实施例中,处理器可以是用于执行本发明中的任意方法和/或算法的专用处理器。在一些实施例中,管理模块110的处理器可以与其它功能共享。
图1还示出了本发明中其它实施例的验证模块120和代理模块130。这些模块用虚线表示,以表明它们在与管理模块一起使用时各自提供了额外的优势。模块之间的双向箭头表示模块之间可以相互通信。进一步地,管理模块110能够与代理模块直接通信。管理模块110、验证模块和代理模块130一起构成用于管理更新的架构100。
验证模块可对特定的一个或多个控制器验证管理模块的策略的兼容性。验证模块可根据验证结果确定更新流程中使用的更新的部分。考虑到控制器之间的依赖关系,验证模块对版本进行控制,并检查网络控制器间的兼容性。验证模块也可以提供补丁状态日志或上报结果。
根据管理更新的策略,代理模块可以对远程网络中的一组控制器中包含的特定一个或多个控制器执行更新流程,其中该策略包括安装策略。所述安装策略包括与控制器兼容性相关的更新安装指令,所述安装策略针对每组控制器中所述特定一个或多个控制器中的每个控制器。根据所述策略,代理模块可以对目标控制器打补丁。在某些控制器补丁失败时,代理模块可以重试打补丁或回退其它相关控制器,例如,控制器。
图2示出了本发明实施例中管理模块110位于服务器240中,验证模块120和代理模块130位于远程网络270中。远程网络270与一个或多个服务器240之间用纵向虚线隔开。
服务器240包括补丁生成系统250和服务供应商260或者说服务器240与补丁生成系统250和服务供应商260通信。补丁生成系统250和服务供应商260可以和管理模块110位于同一个位置,可以和管理模块10进行通信,可以充当管理模块10的一部分功能。服务供应商可以提供在线服务,使得远程网络可以从服务供应商的系统(如网站服务器)下载更新。补丁生成系统可以生成补丁用于更新。为了确保完整性和真实性,在提供给远程网络之前,可对补丁进行哈希运算和签名。
本示例性实施例中的远程网络270包括接口280、补丁编排器290、验证模块120、代理模块130、第一目标控制器293和第二目标控制器295。远程网络可具有预定义的(或管理模块可知的)网络结构和依赖关系的特征。
远程网络中可提供一个或多个接口280。一方面,各个接口可与验证模块和/或代理模块相连接,另一方面,各个接口可以与管理模块通信。这些接口还可以用通信模块(图4中的320)表示。
代理模块120和验证模块130可以合设在远程系统中,也可以分开设置。补丁编排器290可控制代理模块120和验证模块130,或者包括代理模块120和验证模块130。补丁编排器可共享代理模块的部分功能。补丁编排器可包括逻辑实体,该逻辑实体位于远程系统中,负责启动、监控和管理远程系统中的更新过程。通过对比补丁编排器和代理模块,补丁编排器统一协调更新过程。
下面对图1和图2中管理模块110、验证模块120和代理模块130的进一步实现方式进行详细说明。
图3示出了本发明示例实施例中用于更新车辆远程网络中的电子控制单元(英文缩写:ECU)。图3的底部示出了包括管理模块110、验证模块120和代理模块130的架构100以供参考,所述各模块执行更新流程中的上述各个操作。
在本实施例中,示出的远程网络包括通信模块320、显示或控制模块330、包括补丁编排器290的中央控制器340以及编号为ECU 1至ECU 6的目标电子控制单元ECU。所述ECU根据连接总线、同构或异构结构等特性分为两组:组353和组354。组353包括ECU 1、ECU2和ECU3;组354包括ECU 4、ECU 5和ECU 6。通信模块320可以执行接口和/或可包括各种连接功能,例如蜂窝模块、车载诊断II(英文缩写:OBD II)接口、蓝牙/近场通信(英文缩写:NFC)。
更新流程可以通过将远程网络的当前状态310传送至远程网络外部的更新服务供应商来启动。远程网络可以查询更新是否可用,并且向管理模块110提供上下文信息(未示出)。远程网络中的相关功能模块可以与更新服务供应商通信,以确定哪些更新可用以及哪些ECU需要更新。然后,管理模块将制定策略312,在本实施例中,所述策略312下载到针对目标ECU的相关补丁314、316的包中。制订这项策略时,可结合考虑需要更新某些选定的ECU。根据策略,ECU补丁可以针对示出的所有ECU,也可以仅针对选择的ECU。
然后,将下载的包发送给中央控制器340和补丁编排器290,以便由所述验证模块120进行验证,随后发送给所述代理模块130以更新控制器。可以将更新状态报告发送给管理模块。
下文将更详细地阐述更新流程。技术人员可意识到,并非所有所描述的动作都是必要的,所描述的各动作可以以其它方式实施。
策略312可包含安装先决条件、更新策略流程和错误处理流程。先决条件可以包括系统状态的某些限制,例如车辆的行驶速度或电子车辆的可用电池。更新策略可以指定一组控制器进行原子更新,也可以指定目标控制器对另一控制器的单向依赖关系。错误处理流程指定当补丁错误发生时如何应对。例如,定义了重试次数和回退范围(即,哪些控制器需要回退)。
包下载后,补丁编排器会进行完整性、真实性检查等必要步骤。校验模块分析包中的策略,检测当前系统状态,检查先决条件,检查补丁依赖关系。当满足先决条件且所有检查动作都通过时,验证模块通知各个代理模块执行补丁过程。
代理模块分析策略,根据策略进行补丁操作。此外,当遇到任何补丁错误时,代理模块根据上下文感知策略做出响应,例如多次重试或回退其它依赖控制器。代理模块将执行结果上报给验证模块。验证模块保存结果,并可做出相应响应。
图4示出了可以位于远程系统中的控制器的示例,例如图3中车辆的ECU。图4中的每个控制器可以由占位ECU表示,例如图5中的占位ECU,或者其它实施例中的控制器或ECU。
一组控制器可包括异构控制器,其中每个控制器具有不同的硬件组件和系统配置。以车辆为例,一组控制器可以具有如图4所示的结构和拓扑。
图4包括车机401、HMI 402、OBD II 403、车联网终端盒子404、车辆控制器单元412、车身控制器413、电池管理单元422、电池控制器423和ADAS主控制器432。所有这些部件均为控制器。
连接到其它控制器的可能性由未标记模块显示在已标记模块的右侧。HMI表示人机接口,OBD II表示车载诊断II接口,ADAS表示高级驾驶辅助系统。
车机401、HMI 402、OBD II 403、车联网终端盒子404显示为均连接到中心网关340,中心网关340可以充当远程网络或网关功能的中心控制点或接入点。所述中心网关340可以监督域网关410、420和430。
示意性地描绘在所述中央网关340左侧和右侧的控制器在系统中具有不同的功能。例如,HMI可以是驾驶员座舱附近的触摸屏。控制器与HMI之间可以通过网络经由中心网关相互通信。例如,车辆控制单元可以向车机发送速度信息,以向驾驶员显示速度信息。
本实施例中,车辆控制器单元412与车身控制器单元413为同一组。此外,电池管理单元422和电池控制单元423在另一组中。技术人员将意识到在其它情况下可能会不一样,例如,车辆控制器单元和车身控制器单元可以属于两个不同的组。
域控制器410、420和430连接到中心网关340。域控制器分别负责各自连接的不同组的控制器。
域网关410负责通过通信装置411连接到域控制器410的车辆控制器单元412和所述车身控制器413。
域网关420负责通过通信装置431连接到域控制器430的ADAS主控制器432。
域网关430负责通过通信装置421连接到域控制器420的电池管理单元422和电池控制单元423。
图5示出了不同类型的控制器组的实施例以及由管理模块制定的相应策略。该实施例尤其适用于车辆网络为远程网络的情况。
若干域控制器510、520、530与控制器的子组连接。域控制器可以与中央控制器连接。在本实施例中,管理模块110部署在服务供应商侧。验证模块12部署在中央控制器内(未示出)。代理模块130部署在域控制器中。
ECU 1 512、ECU 2 513和ECU 3 514组成一组控制器511。控制器511组是同构的,并且连接到相同的域控制器1(510),该域控制器1包括代理模块130。ECU 1、ECU 2和ECU 3的灰色背景表示这三个控制器发生了原子(全有或者全无)更新。
ECU 4、ECU 5和ECU 6共同组成另一组控制器。ECU 4、ECU 5和ECU 6由域控制器2(520)连接和控制,域控制器2(520)包括代理模块130。域控制器2和代理模块分别不同于域控制器1及域控制器1的代理模块。这组控制器是异构的,也就是说,ECU 4、ECU 5和ECU 6的结构不同。在该组中,从ECU 5和ECU 6的灰色背景可以看出,只有ECU 5和ECU 6经历了原子更新。但是,由于ECU 5和ECU 6不相同,这些控制器的策略540的相应部分也不同。从策略上看,不同之处在于每个控制器具有不同的升级版本。然而,ECU 5和ECU 6会进行原子更新(即,对于目标控制器ECU 5和ECU 6来说是全有或全无)。例如,重试的次数是相同的。由于ECU 5和ECU 6仅进行更新,因此它们示例性构成一组控制器内的分组521。
ECU 7、ECU 8和ECU 9组成另一组控制器。ECU 7、ECU 8和ECU 9由域控制器3(530)连接和控制,域控制器3(530)包括代理模块130。域控制器3和代理模块分别不同于域控制器1及域控制器1的代理模块,域控制器3和代理模块也不同于域控制器2及域控制器2的代理模块。在ECU 7、ECU 8和ECU 9这组中,如ECU 7和ECU 8周围的灰色背景所示,只有ECU 7和ECU 8是有针对性地进行更新。ECU 7和ECU 8没有进行原子更新,而是按顺序进行更新,这称为单向依赖。具体来说,域控制器3下的ECU 7和ECU 8这组的部分策略指定ECU 8仅在ECU 7更新完之后再更新。由于在更新中具有不同的版本,ECU 7和ECU 8进一步描述。下文将更详细地公开该策略和相应的动作。
作为示例但不限于此特定示例,下文将定义策略,更详细地描述补丁系统的执行流程。该策略包含整个包的先决条件、三个控制器子组的更新策略和错误处理步骤。先决条件指定执行更新流程的时间(执行条件)。在这个示例中,这些先决条件包括停车状态、速度、电池、存储空间和连接性。该示例包括三种更新策略。第一种是一组同构控制器的原子更新。若发生错误,域控制器1中的代理模块将最多触发三次更新(在策略中,重试次数定义为三次)。若仍然无法处理错误,则组内其它控制器会进行回退,以保持一致性。第二种是异构控制器组(ECU 5和ECU 6)的原子更新。类似地,若发生错误,域控制器2中的代理模块将最多触发三次更新。若仍然无法处理错误,则另一个控制器(ECU 5或ECU 6)进行回退,以保持一致性。第三种策略是单向依赖,即,ECU 8依赖ECU 7,ECU 7和ECU 8都有补丁。因此,ECU7将先进行更新,若ECU 7更新成功,则ECU 8进行更新。
(可选地)然后,代理模块将结果报告给策略决策和执行点,以记录当前系统状态。
图6示出了本发明的一个实施例,其中,验证模块120和代理模块130在一个物理控制器内合设,例如,中央控制器610。在其它方面,参见图5的实施例。
图7示出了本发明的一个实施例,其中,验证模块120位于远程网络之外,例如,位于移动控制器720中。如图所示,代理模块130位于中央控制器710中,当然,代理模块也可以位于域控制器中。
在本实施例中,移动控制器720与中央控制器710之间进行单向或双向认证流程。经过该认证流程后,移动控制器作为车辆的一部分,执行验证模块120的功能。
图8示出了与管理模块和代理模块执行的动作所对应的方法实施例的部分步骤,具体如下所述。
该方法中,810中,制定更新远程网络中控制器的策略。管理模块在制定策略时,会考虑远程网络的相关信息。该相关信息涉及远程网络中控制器之间的兼容性,使得制定的策略具有兼容性。因此,若该方法应用于图5所示的远程网络,则向管理单元提供三个不同控制器组中的每个控制器组的上下文信息。该上下文信息可参见本文其它实施例中所公开的描述,另外,可以明确每个组是同构还是异构,明确某个控制器使用的具体的更新版本,是否有子组,具体更新哪个目标控制器,明确是否每个组或某些组进行原子更新或单向依赖型更新。
在可选步骤中,制定的策略包括安装标准。该安装标准可包括图5所示策略540中作为先决条件的参数。
在另一个可选步骤中,制定的策略包括针对目标控制器的错误处理信息。这些错误处理信息可包括图5中所示策略540中相应的ECU的回退或重试参数。
820中,所述服务器通过该领域已知的合适的通信信道把制定的策略发送给所述远程网络,这些通信信道包括当前或未来通信标准如LTE、LTE-A、5G等技术提供的传输介质,如无线、Wi-Fi、蓝牙、以太网连接和其它传输介质。
830中,远程网络接收策略。在接收到相应的更新时,不管是是单独的更新还是以组合包的形式进行更新,发起控制器的更新。代理模块执行所述策略以更新目标控制器。代理模块可位于域控制器中,也可位于中心域控制器中。
在可选步骤中,在发起更新之前,验证模块可对测量进行验证,并基于远程网络的信息,尤其是对验证模块来说可用的控制器的信息,确认是否需要安装相应的全部或部分更新。
若更新过程中发生错误,代理模块可根据策略中指定的错误处理配置信息处理这些错误。
图9示出了代理模块执行的错误处理动作所对应的方法实施例的部分步骤。
910中,远程网络中的功能模块如代理模块,基于策略,发起对远程网络中的特定控制器的更新。该策略可以是,例如,图5中的策略540。
920中,当某一控制器第一次更新失败时,代理模块采取适当的错误处理动作来处理更新错误。可进行多次更新尝试,例如3次,或者第一次更新尝试失败后立即对一组控制器中的相关控制器进行回退,或者所有尝试都失败后再进行回退。错误处理配置信息与更新相关联,并且可以随更新一起提供,也可以在策略中提供,或者单独提供。
在可选步骤中,向验证模块和/或管理模块指示更新的状态。该状态可以包括错误处理报告。验证模块可记录该报告。
此外,根据本发明实施例的任意方法可以在具有编码方式的计算机程序中实现,当通过处理动作运行时,可使所述处理动作执行方法步骤。计算机程序包括在计算机程序产品的计算机可读介质之中。计算机可读介质基本可以包括任意存储器,如ROM(只读存储器)、PROM(可编程只读存储器)、EPROM(可擦除可编程只读存储器)、闪存、EEPROM(电可擦可编程只读存储器)以及硬盘驱动器。
此外,技术人员认识到,所述模块可包括执行本方案所需的处理能力,例如,功能、方式、单元、元件等。其它方式、单元、元件和功能的示例有:处理器、存储器、缓存器、控制逻辑、编码器、解码器、速率匹配器、解速率匹配器、映射单元、乘法器、决策单元、选择单元、开关、交织器、解交织器、调制器、解调器、输入器件、输出器件、天线、放大器、接收单元、发射单元、供电单元、电源馈线、通信接口、通信协议等,这些器件适合设置在一起以执行本方案。
特别地,模块110、120和130的处理器可包括中央处理器(CPU)、处理单元、处理电路、处理器、专用集成电路(ASIC)、微处理器或其它可解释和执行指令的处理逻辑中的一个或多个实例。因此,术语“处理器”可表示包括多个处理电路的处理线路,例如以上列举项中的任何、部分或所有项。所述处理电路可进一步执行数据处理功能以进行输入、输出以及数据处理,所述功能包括数据缓冲和控制功能,例如,呼叫处理控制功能、用户界面控制功能等。
最后,应了解,本发明并不局限于上述实施例,而是同时涉及且并入所附独立权利要求书的范围内的所有实施例。
Claims (19)
1.一种服务器的管理模块,其特征在于,包括:
-所述管理模块用于:
-制定策略,以管理车辆远程网络中一组控制器中特定一个或多个控制器的更新,
其中,所述策略基于上下文信息制定,所述上下文信息包括以下信息中的至少一种:所述车辆远程网络中所述一组控制器中的所述特定一个或多个控制器的兼容性、所述车辆远程网络中的所述一组控制器中的控制器之间的兼容性。
2.根据权利要求1中的所述管理模块,其特征在于,
所述特定一个或多个控制器的兼容性定义了所述特定控制器是否分别与所述更新兼容;或者
所述组中控制器之间的兼容性定义了所述控制器组中控制器的更新顺序是否具有依赖关系,和/或每组控制器是否为进行原子更新的同构组或者是否包含异构组。
3.根据权利要求1或2中的所述管理模块,其特征在于,所述策略包括安装策略,所述安装策略包括与控制器的兼容性和/或控制器之间的兼容性相关的更新安装指令,所述更新安装指令针对每个控制器组中的所述特定一个或多个控制器。
4.根据权利要求1至3中的所述管理模块,其特征在于,所述管理模块还用于提供与远程网络参数相关的安装标准,所述安装标准具体包括以下一项或多项:所述远程网络系统的状态、可用电源、可用存储空间、所述远程网络的连接性、所述远程网络的移动性以及所述远程网络的速度。
5.根据权利要求1至4中的所述管理模块,其特征在于,所述管理模块还用于为所述更新提供错误处理信息。
6.根据权利要求5中的所述管理模块,其特征在于,所述错误处理信息包括在所述一个或多个控制器的所述更新或一次更新期间发生错误时的错误处理配置信息,具体包括回退流程或更新重试次数。
7.根据权利要求1至6中的所述管理模块,其特征在于,所述管理模块用于按照所述策略为所述特定一个或多个控制器准备所述更新。
8.一种服务器,其特征在于,包括权利要求1至8中的所述管理模块,其中所述服务器用于发送所述策略和针对所述一个或多个控制器的所述更新,特别是将所述策略和所述更新一起打包发送。
9.一种车辆中远程网络的代理模块,其特征在于,包括:
所述代理模块,用于根据管理所述更新的策略,对远程网络中的一组控制器中包括的特定一个或多个控制器执行更新流程,
其中,所述策略包括安装策略,所述安装策略包括针对每个控制器组中每个所述特定一个或多个控制器与所述控制器兼容性相关的更新安装指令。
10.根据权利要求10所述的代理模块,其特征在于,所述策略还包括所述一个或多个控制器更新期间发生的错误事件的错误处理配置信息,具体包括回退流程或更新重试次数。
11.一种策略验证模块,其特征在于,包括:
所述策略验证模块,用于:
-针对所述特定一个或多个控制器验证权利要求1至8中的所述管理模块的策略兼容性;
-根据验证结果确定更新流程中要使用需要使用的所述更新的部分。
12.根据权利要求11中的所述策略验证模块,其特征在于,所述策略验证模块用于获取上下文信息,并将所述上下文信息提供给权利要求1至8中的所述管理模块。
13.一种网络,其特征在于,包括权利要求1至8中的所述管理模块、权利要求9至10中的所述代理模块和权利要求11至12中的所述策略验证模块。
14.一种用于更新车辆网络中的控制器的方法,其特征在于,所述方法包括:
-制定策略,包括更新与网络中特定控制器之间的兼容性有关的安装参数;
-针对网络中的所述特定控制器发送策略和相应的更新,根据所述更新安装参数制定相应的更新以与所述特定控制器兼容。
15.根据权利要求14中的所述车辆网络中更新控制器的方法,其特征在于,所述方法还包括:
-制定所述策略之前,接收与网络中所述特定控制器之间的兼容性相关的上下文信息。
16.根据权利要求14至15中的所述车辆网络中更新控制器的方法,其特征在于,所述方法还包括:
-所述车辆中负责更新多个控制器的更新代理根据所述策略中的所述更新安装参数进行所述更新。
17.一种处理车辆远程网络中控制器更新流程中的错误的方法,其特征在于,包括:
-在远程网络中为每个控制器启动更新流程;
-根据与所述更新相关的错误处理配置信息来处理更新错误,所述错误处理配置信息特别包括回退流程或更新重试次数。
18.根据权利要求17中的所述错误处理方法,其特征在于,所述更新流程根据与所述远程网络中的控制器的兼容性和/或控制器之间的兼容性有关的更新安装参数执行。
19.一种计算机程序产品,其特征在于,包括由相应处理器执行如权利要求15至18中所述方法的指令。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/SG2018/050119 WO2019182509A1 (en) | 2018-03-19 | 2018-03-19 | Method and apparatus for updating devices in a remote network |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111886576A true CN111886576A (zh) | 2020-11-03 |
Family
ID=61802351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880091476.7A Pending CN111886576A (zh) | 2018-03-19 | 2018-03-19 | 用于更新远程网络设备的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210004221A1 (zh) |
EP (2) | EP4099155B1 (zh) |
CN (1) | CN111886576A (zh) |
WO (1) | WO2019182509A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112506562A (zh) * | 2020-12-29 | 2021-03-16 | 一汽解放汽车有限公司 | 车辆软件升级方法、系统、车辆及存储介质 |
WO2022205200A1 (zh) * | 2021-03-31 | 2022-10-06 | 华为技术有限公司 | 一种版本管理方法和装置 |
WO2023108849A1 (zh) * | 2021-12-13 | 2023-06-22 | 上海仙途智能科技有限公司 | 用于自动驾驶系统的配置数据管理的方法及装置 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3690643B1 (en) | 2017-10-24 | 2023-01-25 | Huawei International Pte. Ltd. | Vehicle-mounted device upgrading method and related device |
US10917764B2 (en) * | 2019-05-02 | 2021-02-09 | GM Global Technology Operations LLC | System and method to responsively send vehicle information to a data center |
CN112477781B (zh) * | 2019-09-12 | 2022-08-26 | 华为技术有限公司 | 实现汽车中电子控制功能的系统、方法以及汽车 |
JP7367626B2 (ja) * | 2020-07-08 | 2023-10-24 | トヨタ自動車株式会社 | ソフトウェア更新装置、方法、プログラムおよび車両 |
WO2022021191A1 (zh) * | 2020-07-30 | 2022-02-03 | 华为技术有限公司 | 软件升级的方法、装置和系统 |
WO2023018986A1 (en) * | 2021-08-13 | 2023-02-16 | Haze Automotive Of America, Inc. | Methods and systems of networked electric vehicle control and communication |
DE102022118843A1 (de) * | 2022-07-27 | 2024-02-01 | Audi Aktiengesellschaft | Verfahren zum Bereitstellen eines Updates für ein Kraftfahrzeug |
CN115469912B (zh) * | 2022-11-02 | 2023-01-24 | 中国人民解放军国防科技大学 | 异构实时信息处理系统设计方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1696900A (zh) * | 2004-05-13 | 2005-11-16 | 通用汽车公司 | 远程刷新的方法和系统 |
CN101699399A (zh) * | 2009-11-03 | 2010-04-28 | 中兴通讯股份有限公司 | 一种软件更新的系统和方法 |
CN104850416A (zh) * | 2014-02-18 | 2015-08-19 | 中国移动通信集团公司 | 一种升级系统、方法、装置及云计算节点 |
CN105691330A (zh) * | 2014-12-11 | 2016-06-22 | 福特全球技术公司 | 远程信息处理更新软件兼容性 |
US20160371076A1 (en) * | 2015-06-16 | 2016-12-22 | Lear Corporation | METHOD FOR UPDATING VEHICLE ECUs USING DIFFERENTIAL UPDATE PACKAGES |
CN107291457A (zh) * | 2017-06-08 | 2017-10-24 | 重庆长安汽车股份有限公司 | 整车控制器软件的远程更新计算系统及方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030221190A1 (en) | 2002-05-22 | 2003-11-27 | Sun Microsystems, Inc. | System and method for performing patch installation on multiple devices |
EP1763766A4 (en) * | 2004-05-04 | 2009-04-01 | Robert M Price | SYSTEM AND METHOD FOR COMMUNICATING ELECTRONIC EQUIPMENT |
US9900756B2 (en) * | 2015-04-24 | 2018-02-20 | Kony, Inc. | Dynamically updating policy controls for mobile devices and applications via policy notifications |
US10944753B2 (en) * | 2017-08-17 | 2021-03-09 | Verizon Patent And Licensing Inc. | IoT devices wireless network connectivity policy management |
-
2018
- 2018-03-19 CN CN201880091476.7A patent/CN111886576A/zh active Pending
- 2018-03-19 EP EP22186986.0A patent/EP4099155B1/en active Active
- 2018-03-19 WO PCT/SG2018/050119 patent/WO2019182509A1/en unknown
- 2018-03-19 EP EP18714084.3A patent/EP3759588B1/en active Active
-
2020
- 2020-09-18 US US17/025,932 patent/US20210004221A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1696900A (zh) * | 2004-05-13 | 2005-11-16 | 通用汽车公司 | 远程刷新的方法和系统 |
CN101699399A (zh) * | 2009-11-03 | 2010-04-28 | 中兴通讯股份有限公司 | 一种软件更新的系统和方法 |
CN104850416A (zh) * | 2014-02-18 | 2015-08-19 | 中国移动通信集团公司 | 一种升级系统、方法、装置及云计算节点 |
CN105691330A (zh) * | 2014-12-11 | 2016-06-22 | 福特全球技术公司 | 远程信息处理更新软件兼容性 |
US20160371076A1 (en) * | 2015-06-16 | 2016-12-22 | Lear Corporation | METHOD FOR UPDATING VEHICLE ECUs USING DIFFERENTIAL UPDATE PACKAGES |
CN107291457A (zh) * | 2017-06-08 | 2017-10-24 | 重庆长安汽车股份有限公司 | 整车控制器软件的远程更新计算系统及方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112506562A (zh) * | 2020-12-29 | 2021-03-16 | 一汽解放汽车有限公司 | 车辆软件升级方法、系统、车辆及存储介质 |
CN112506562B (zh) * | 2020-12-29 | 2023-09-26 | 一汽解放汽车有限公司 | 车辆软件升级方法、系统、车辆及存储介质 |
WO2022205200A1 (zh) * | 2021-03-31 | 2022-10-06 | 华为技术有限公司 | 一种版本管理方法和装置 |
WO2023108849A1 (zh) * | 2021-12-13 | 2023-06-22 | 上海仙途智能科技有限公司 | 用于自动驾驶系统的配置数据管理的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3759588A1 (en) | 2021-01-06 |
EP4099155B1 (en) | 2023-12-20 |
US20210004221A1 (en) | 2021-01-07 |
WO2019182509A1 (en) | 2019-09-26 |
EP3759588B1 (en) | 2022-09-28 |
EP4099155A1 (en) | 2022-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111886576A (zh) | 用于更新远程网络设备的方法和装置 | |
US10866853B2 (en) | Self-healing learning system for one or more controllers | |
EP3623939A1 (en) | Method and apparatus for wirelessly updating software for vehicle | |
US20220156057A1 (en) | In-vehicle update device, update processing program, and program update method | |
US11972247B2 (en) | Software upgrading method, apparatus, and system | |
JP7280412B2 (ja) | ゲートウェイ装置、車載ネットワークシステム及びファームウェア更新方法 | |
CN112913190A (zh) | 基于空中下载技术ota的升级方法及装置 | |
WO2023241458A1 (zh) | 车载控制器的软件升级方法、装置、设备和存储介质 | |
WO2022205200A1 (zh) | 一种版本管理方法和装置 | |
CN112533173B (zh) | 用于确保数据完整性以保证操作安全的方法以及车对外界信息交互的装置 | |
CN116261716A (zh) | 用于更新车辆的车载计算机的软件的更新方法和更新装置,所述车载计算机包括执行存储器、备份存储器和检查存储器 | |
CN117421022A (zh) | 应用更新方法、装置、电子设备及存储介质 | |
CN115280280A (zh) | 用于朝向车辆的车载计算机的存储器更新包括物理地址的软件的更新方法和更新装置 | |
CN115333937A (zh) | 数据下载方法、装置及电子设备 | |
CN116700753A (zh) | 一种基于qnx系统的远程升级方法 |
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 |