CN108279917B - 软件更新管理 - Google Patents
软件更新管理 Download PDFInfo
- Publication number
- CN108279917B CN108279917B CN201810003513.6A CN201810003513A CN108279917B CN 108279917 B CN108279917 B CN 108279917B CN 201810003513 A CN201810003513 A CN 201810003513A CN 108279917 B CN108279917 B CN 108279917B
- Authority
- CN
- China
- Prior art keywords
- vehicle
- controller
- transmission
- state
- installation
- 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
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/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Stored Programmes (AREA)
Abstract
本公开涉及软件更新管理。一种用于车辆的系统包括:控制器;远程信息处理控制单元,被配置为:响应于接收到指示控制器支持的用于利用软件更新来更新控制器的传输技术和安装技术的指令而执行以下处理:响应于车辆状态与所述传输技术兼容而将软件更新传送到控制器,并且响应于车辆状态与所述安装技术兼容而将软件更新安装到控制器。
Description
技术领域
本公开涉及用于向支持相同或不同更新技术的多个控制器提供空中下载(OTA)软件更新的系统和方法。
背景技术
车辆的一个或更多个软件和/或硬件组件可能需要定期或偶尔的电子更新。在一个示例中,更新可包括对车辆的软件或设置的改变,以解决问题或对当前软件或设置提供改进功能。在另一示例中,更新可包括针对一个或更多个车辆控制器的更新配置设置和/或将被安装在一个或更多个车辆控制器上的软件或固件的更新版本。
车辆可被配置为经由有线或无线连接来接收电子更新。在一示例中,汽车经销商或服务站的技术人员可使用有线局域网(LAN)连接将更新下载到车辆中。在另一示例中,车辆可被配置为接收空中下载(OTA)软件更新,诸如经由到服务器的无线连接接收的软件更新。
发明内容
一种用于车辆的系统包括:控制器;远程信息处理控制单元,被配置为:响应于接收到指示控制器支持的用于利用软件更新来更新控制器的传输技术和安装技术的指令而执行以下处理:响应于车辆状态与所述传输技术兼容而将软件更新传送到控制器,并且响应于车辆状态与所述安装技术兼容而将软件更新安装到控制器。
一种用于车辆的方法包括:响应于远程信息处理控制单元接收到用于指示控制器支持的利用软件更新来更新控制器的传输技术和安装技术的指令而执行以下步骤:响应于车辆状态与所述传输技术兼容而将软件更新传送到控制器;响应于车辆状态与所述安装技术兼容而将软件更新安装到控制器。
一种方法包括:接收用于更新第一控制器和第二控制器的指令,所述指令指示各个控制器支持的不同的传输技术和安装技术;响应于车辆状态与第一传输技术兼容而将第一软件更新传送到第一控制器;响应于车辆状态与第二传输技术兼容而将第二软件更新传送到第二控制器;响应于车辆状态与用于第一控制器和第二控制器两者的安装技术兼容而将第一软件更新安装到第一控制器并且将第二软件更新安装到第二控制器。
附图说明
图1是示出用于传送软件更新和在车辆控制器上安装软件更新的系统的框图;
图2是示出用于基于控制器的硬件或软件配置来识别传输技术和安装技术的系统的框图;
图3是示出用于根据控制器支持的传输技术和安装技术来传送和安装软件更新的算法的流程图。
具体实施方式
在此描述了本公开的实施例。然而,应该理解的是,所公开的实施例仅是示例,并且其它实施例可采用各种可替代的形式。附图无需按比例绘制;可夸大或最小化一些特征以示出特定组件的细节。因此,在此公开的具体结构和功能细节不应被解释为具有限制性,而仅仅是作为用于教导本领域技术人员以多种方式利用本发明的代表性基础。如本领域普通技术人员将理解的是,参照任一附图示出和描述的各个特征可与在一个或更多个其他附图中示出的特征相结合,以产生未被明确示出或描述的实施例。示出的特征的组合提供了用于典型应用的代表性实施例。然而,与本公开的教导一致的特征的各种组合和修改可被期望用于特定的应用或实施方式。
执行车辆上的各种功能的多个控制器可被配置为接收定期或偶尔的软件和固件(在此统称为软件)更新。作为一些非限制性示例,软件更新可帮助解决不在现场中或不在客户手中的车辆的效率问题、功能改变和安全漏洞。然而,车辆控制器的硬件可指示控制器支持哪些软件更新技术。此外,同时在多个控制器上实施软件更新可包括协调更新的时间和顺序。
针对车辆控制器的多个软件更新可从更新服务器下载。例如,车辆的远程信息处理控制单元(TCU)可被配置为接收指示将被应用到控制器的软件文件集的指令文件,并且可从更新服务器下载针对控制器的这些软件更新。这些软件更新随后可根据各个车辆控制器支持的传输技术和安装技术而被应用到车辆控制器。作为一些示例,传输技术和安装技术可包括交换(A|B)技术、擦除替换(E|R)技术或外部闪存E|R技术。控制器支持的传输技术和安装技术可在从更新服务器接收的指令文件中被指定。TCU可相应地使用在指令文件中指示的传输技术来将下载的软件更新传送到相应的控制器。TCU还可使用在指令文件中指示的安装技术将软件更新安装到相应的控制器。
另外或可选地,TCU可被配置为选择适当的点火周期或另一车辆状态来启动每个控制器中的软件更新的传输和安装。因此,TCU可响应于车辆状态与相应的传输技术和安装技术兼容而传送和安装软件更新。该处理相应地允许对支持不同传输技术和安装技术的车辆控制器上的软件更新进行有效传输和安装。
图1示出用于向车辆102提供软件更新120的示例系统100。车辆102可包括具有(例如,直接地或者经由车辆乘员的移动装置)通过网络126与更新服务器128进行通信的调制解调器106的远程信息处理控制单元(TCU)104。更新服务器128可与数据存储区130进行通信,数据存储区130被配置为保存用于下载的软件更新120。系统100还可包括软件更新管理器112,软件更新管理器112被安装到车辆102且被配置为将软件更新120传送并安装到TCU104本身或者车辆102的其它控制器116。虽然在图1中示出了示例系统100,但是在该图中示出的示例组件并不意在限制。实际上,系统100可具有更多或更少的组件,并可使用附加的或可选的组件和/或实施方式。作为一个非限制性示例,软件更新管理器112及其相应的功能可存在于除了TCU 104之外的车辆102的一个或更多个控制器116中。
车辆102可包括各种类型的汽车、混合型多用途车辆(CUV)、运动型多用途车辆(SUV)、卡车、休旅车(RV)、船、飞机或用于运输人或货物的其它移动机器。在许多情况下,车辆102可由内燃发动机来驱动。作为另一可行方式,车辆102可以是由内燃发动机和一个或更多个电动马达二者驱动的混合动力电动车辆(HEV),诸如,串联式混合动力电动车辆(SHEV)、并联式混合动力电动车辆(PHEV)或并联/串联式混合动力电动车辆(PSHEV)。由于车辆102的类型和配置可能不同,因此车辆102的操作特性可能相应地不同。作为一些其它可行方式,车辆102在乘客容量、牵引能力和性能以及存储容量方面可具有不同的特性。
当车辆102被组装时,车辆102可包括各种硬件和软件组件,诸如但不限于,一个或更多个车辆控制器116(被表示为独立的控制器116-A至116-G)。控制器116可被配置为在车辆电池和/或动力传动系统的动力下监测和管理车辆102的各种功能。如将参照图2进一步详细描述的,控制器116可包括一个或更多个处理器(例如,微处理器),所述一个或更多个处理器被配置为执行存储在控制器116的一个或更多个存储装置中的固件或软件程序。虽然控制器116被示出为独立的组件,但是车辆控制器116可共享物理硬件、固件和/或软件,使得来自多个控制器116的功能可被集成到单个控制器116中,且多个这样的控制器116的功能可分布在多个控制器116中。
例如,车辆控制器116可包括但不限于:动力传动系统控制器116-A,被配置为管理发动机运行组件;车身控制器116-B,被配置为管理各种电力控制功能,诸如,外部照明、内部照明、无钥匙进入、远程启动和接入点状态验证;无线电收发器控制器116-C,被配置为与遥控钥匙、移动装置或车辆102的其它本地装置进行通信;娱乐控制器116-D,被配置为支持与驾驶员和驾驶员携带装置的蓝牙交互和语音命令;气候控制管理控制器116-E,被配置为监测和管理制热和制冷系统组件(例如,压缩机离合器、鼓风机风扇、温度传感器等);全球定位系统(GPS)控制器116-F,被配置为提供车辆位置信息;人机界面(HMI)控制器116-G,被配置为经由各种按钮或其它控制件接收用户输入,以及向驾驶员提供车辆状态信息。
车辆总线118可包括在车辆控制器116之间以及在TCU 104与车辆控制器116之间可用的各种通信方法。车辆总线118还可包括一个或更多个车辆控制器局域网(CAN)、以太网和面向媒体的系统传输(MOST)网络。
TCU 104可包括一个或更多个处理器110(例如,微处理器),所述一个或更多个处理器110被配置为执行存储在TCU 104的一个或更多个存储装置108中的固件或软件程序。TCU 104还可包括网络硬件,网络硬件被配置为帮助在车辆控制器116之间进行通信以及帮助经由网络126在车辆102与系统100的其它装置之间进行通信。作为一些非限制性示例,网络126可包括一个或更多个互联的通信网络,诸如,互联网、有线电视分布网络、卫星链路网络、本地局域网、广域网以及电话网。作为另一示例,TCU 104可被配置为经由蓝牙、Wi-Fi和有线USB网络连接中的一个或更多个进行通信并且帮助网络126与移动装置(未示出)之间的数据传输。
数据存储区130可被配置为存储软件更新120。软件更新120可包括对车辆102的软件或设置的改变,以解决当前软件或设置的问题或者提供对当前软件的改进功能。例如,软件更新120可包括针对一个或更多个车辆控制器116的更新的配置设置和/或将被安装在一个或更多个车辆控制器116上的软件或固件的更新版本。在一些情况下,软件更新120可包括单个数据段,而在其它情况下,软件更新120可被组织成多个数据段、数据元素或数据块,为了完成将被安装的整个软件更新120,可能需要下载所有的数据段、数据元素或数据块。
数据存储区130还可被配置为存储关于软件更新120的附加信息。例如,数据存储区130可被配置为识别哪些车辆控制器116与哪些软件更新120相关联。数据存储区130还可存储指示软件更新120与车辆102的规格的兼容性的信息。例如,用于软件更新120的存储条目可指示软件更新120与车辆102的特定品牌和型号兼容,或者,指示软件更新120与车辆控制器116的特定版本相关联。
数据存储区130还可被配置为存储传输技术标识符122和安装技术标识符132,传输技术标识符122和安装技术标识符132分别指示每个控制器116支持的传输技术和安装技术。传输技术和安装技术可基于给定车辆控制器116的固件和/或软件配置,并且可包括例如交换(A|B)技术、E|R技术、外部闪存E|R技术等。例如,传输技术可包括用于执行一个或更多个操作、控制和功能的处理器指令,以完成软件更新文件120到车辆控制器116的传送。作为另一示例,安装技术可包括用于执行一个或更多个操作、控制和功能的处理器指令,以启动安装事件,使得软件更新120在被更新的车辆控制器116上被实施。由于车辆102中的车辆控制器116的不同配置,与车辆控制器116关联的传输技术和安装技术也可能不同。作为一示例,传输技术和安装技术可与彼此不同的车辆状态都兼容。因此,系统可响应于当前车辆状态与支持的传输技术和安装技术兼容而对多个车辆控制器116上的软件更新120的传输和/或安装进行协调(或同步)。
作为示例,用于支持交换(A|B)技术的车辆控制器116的处理器指令可包括用于响应于车辆102状态是点火开关接通和点火开关断开中的一个而将软件更新120传送到车辆控制器116的指令。用于交换技术的指令还可包括响应于车辆102的当前状态是点火开关接通和点火开关断开中的一个而将软件更新120安装到控制器116。换句话说,与交换更新的控制器116的传输技术和安装技术兼容的车辆状态可能相同,使得软件更新120的安装可在软件更新120传送到控制器116之后被执行,并且无需车辆状态上的改变。
作为另一示例,针对被配置为使用外部闪存E|R技术来更新的车辆控制器116,处理器指令可包括:响应于车辆状态是点火开关接通和点火开关断开中的一个而将软件更新120传送到车辆控制器116,响应于车辆状态是点火开关断开而将软件更新120安装到车辆控制器116。因此,与支持使用交换的更新的车辆控制器116不同,使用外部闪存E|R技术的车辆控制器116的配置可能不允许在车辆102正被驱动时安装更新。相反,在支持使用外部闪存E|R的更新的车辆控制器116上的更新的安装可响应于当前车辆状态的改变(例如,车辆102状态改变为点火开关断开)而发生。
作为另一示例,使用E|R技术的车辆控制器116的配置可能不允许将软件更新120传送到车辆控制器116或者不允许车辆控制器116在车辆被驱动的时候安装软件更新120。换句话说,支持使用擦除替换的车辆控制器116上的软件更新120的传输和安装可响应于当前车辆102状态为点火开关断开而被执行。
接下来是用于交换更新的控制器116和外部闪存E|R更新的控制器116的软件更新120可在车辆102被驱动的同时被传送,并且可在不同的时间被安装(例如,当车辆102仍被驱动时将软件更新120安装到交换更新的控制器116以及响应于车辆102状态为点火开关断开而将软件更新120安装到外部闪存E|R更新的控制器116)。虽然车辆状态的示例被指示为车辆102的点火开关的状态,但是指示车辆状态的其它参数的状态(诸如,但不限于,车辆速度、变速器挡位、制动踏板位置、转向角等)也可被预期。
车辆信息124可包括被配置为识别车辆102或车辆102的配置的信息。例如,车辆信息124可包括公布给车辆总线118的车辆识别码(VIN)或调制解调器106的用户身份模块(SIM)信息(诸如,国际移动站设备身份(IMEI))。此外或可选地,车辆信息124可包括针对车辆102的车辆控制器116的硬件和软件组件的至少一部分的版本信息。
更新服务器128可包括被配置为将数据存储区130存储的软件更新120发送给车辆102的一个或更多个装置。例如,更新服务器128可被配置为从车辆102接收对于可用软件更新120的请求。请求可包括用于允许更新服务器128在数据存储区130中查询与当前配置的车辆102关联的软件更新120的车辆信息124。更新服务器128可响应于请求而提供用于更新请求车辆102的可用软件更新120(或软件更新120本身)的指示。
更新服务器128还可被配置为向车辆102的更新管理器112发送与被更新的车辆控制器116关联的一个或更多个传输技术标识符122和安装技术标识符132。例如,响应于识别出软件更新120可用于车辆102,更新服务器128可在数据存储区130中查询与车辆控制器116关联的传输技术标识符122和安装技术标识符132,其中,可用的软件更新120已针对所述车辆控制器116被识别出。
更新管理器112可被配置为对车辆102的软件更新120的传输和安装进行管理。更新管理器112可被配置为利用TCU 104对车辆总线118的访问来与车辆控制器116进行通信。当车辆102组装时或者在车辆102组装之后,更新管理器112可被配置为查询针对限定车辆控制器116的硬件和软件组件的至少一部分的存在信息和版本信息。在一个示例中,更新管理器112可触发针对新的软件更新120的周期性检查。在另一个示例中,更新管理器112可从用户接收指示用于检查软件更新120的请求的命令。
当周期性检查被触发时,更新管理器112可被配置为将更新请求发送到更新服务器128,以询问针对车辆102的软件更新120是否可用。例如,更新管理器112可使用车辆信息124(或者,如果数据存储区130保存了当前车辆信息124,则使用车辆102的标识符)来查询更新服务器128,并且可从更新服务器128接收指示针对车辆102的新的软件更新120是否可用的响应(例如,包括用于下载的针对车辆102的软件更新120的链接或其它标识符的指令文件)。如果对更新管理器112的响应指示软件更新120可用于车辆102,则更新管理器112还可被配置为下载、传输和安装指示的更新,或者,在其它情况下将已下载的软件更新120放入队列以进行传送和安装。
更新管理器112可被配置为有助于将软件更新120下载到车辆102。例如,更新管理器112可被配置为接收由更新服务器120标识为可用于下载和安装的软件更新120的列表。更新管理器112还可被配置为检测车辆102何时经由例如调制解调器106连接到网络126,并且在连接时执行软件更新120的下载。
更新管理器112还可被配置为根据由各个车辆控制器116支持的传输和安装技术传送下载的软件更新120并在车辆控制器116上安装下载的软件更新120。例如,由更新管理器112从更新服务器128接收的指令文件可使用例如标识符122和132等来指定被更新的车辆控制器116支持的传输技术和安装技术。作为一些示例,这些传输技术和安装技术可包括交换(A|B)技术、E|R技术或外部闪存E|R技术,每个车辆控制器116可支持相同或不同的传输技术和安装技术。
更新管理器112可被配置为响应于车辆102状态与支持的传输技术和安装技术兼容而对针对各个车辆控制器116的软件更新120的传输和安装的时间和顺序进行优化。例如,更新管理器112可参照传输技术和安装技术表114来识别与支持的传输技术和安装技术兼容的一个或更多个车辆102状态。当车辆102处于与车辆控制器116的传输技术兼容的预定义操作状态时,更新管理器112随后可将下载的软件更新129传送到相应的车辆控制器116。更新管理器112还可响应于车辆102处于与车辆控制器116的安装技术兼容的预定义操作状态而在相应的车辆控制器116上启动对传送的软件更新120的安装。
例如,更新管理器112可选择适当的车辆状态以将软件更新120传送到每个相应的车辆控制器116,使得更新事件(例如,更新120的安装)可发生。因此,在适当的车辆状态(例如,与车辆控制器116支持的传输技术兼容的点火状态),车辆控制器116可将软件更新120传送到与被更新的每个车辆控制器116关联的内部或外部存储器位置。更新管理器112可相应地对下载的实施不同传输技术的车辆控制器116上的软件更新120的传输进行优化。
在另一示例中,更新管理器112可在相同或不同的车辆状态期间将传送的软件更新120安装到每个相应的车辆控制器116。换句话说,在适当的车辆状态(例如,与车辆控制器116支持的安装技术兼容的点火状态)下,更新管理器112可将软件更新120安装到与被更新的每个车辆控制器116关联的活动存储器位置。更新管理器112从而允许对传送的实施不同安装技术的车辆控制器116上的软件更新120的安装进行优化。
图2示出用于车辆102的软件更新系统200。更新管理器112可参照优化的数据标识符列表(ODL)文件212,优化的数据标识符列表文件212定义了要从控制器116中查询的特定信息以及这种信息位于何处。在一些情况下,ODL文件212可作为软件安装的一部分被安装在TCU 104上。更新管理器112可使用查询的数据来生成询问器日志214。询问器日志214可以是包括从车辆102收集的用于在识别车辆102的当前软件版本状态时使用的信息的文件或其它数据结构。询问器日志214可包括使用参数和值(诸如,但不限于,控制器名称、控制器序列号、VIN、硬件部件号、MAC地址、软件应用的部件号、语言以及安装在控制器上的服务包、控制器上的可用存储空间和关于先前更新的安装的状态信息)来标识特定车辆102以及一个或更多个车辆控制器116的信息。
更新管理器112可使用网络126与更新服务器128连接。在一示例中,更新管理器112可向更新服务器128发送询问器日志124,询问器日志124包括标识特定车辆102的信息以及与车辆102的控制器116的当前软件版本有关的信息。更新服务器128可从车辆102接收这些通信,并且可保存链接到车辆102的标识符(例如,链接到车辆102的VIN)的硬件配置和软件(例如,固件等)版本的数据存储。更新服务器128还可保存与车辆102的控制器116关联的当前软件版本以及控制器116支持的传输技术的传输技术标识符122和安装技术的安装技术标识符132的数据存储。
更新服务器128可向更新管理器112发送指令文件(以下简称指令)215,以用于对每个车辆控制器116进行更新。指令215可指示将被应用到控制器116的更新文件集以及这些文件可被下载到何处。指令215还可包括分别指示被更新的车辆控制器116支持的一个或更多个传输技术208的传输技术标识符216以及被更新的车辆控制器116支持的一个或更多个安装技术220的安装技术标识符218。在一示例中,更新管理器112可查询传输技术和安装技术表206以识别与包括在来自更新服务器128的指令215中的各个传输技术标识符216和安装技术标识符218对应的传输技术208和安装技术220。
给定车辆控制器116支持的传输技术208和安装技术220可基于该车辆控制器116的固件和/或软件配置。在一示例中,限定每个车辆控制器116的固件和/或软件组件可以彼此相同或不同。例如,每个控制器116可包括一个或更多个处理器202(例如,微处理器)(例如,图2中示出的202-A至202-C),一个或更多个处理器202被配置为执行存储在车辆控制器116的一个或更多个存储装置204(例如,图2中示出的204-A至204-C)上的固件或软件程序。基于给定控制器116的特定软件和/或固件配置,控制器116支持的安装技术可以是例如交换(A|B)技术、E|R技术和外部闪存E|R技术。
作为示意性示例,用于具有活动(主要)存储部和非活动(次要)存储部的车辆控制器116的传输技术208和安装技术220可包括用于将软件更新120传送到车辆控制器116的操作或控制,以用于安装到次要存储区并将安装的软件更新120从次要存储区传送(“交换”)到主要存储区。
每个传输技术208和安装技术220可包括一个或更多个对应的传输车辆状态210和安装车辆状态222。传输车辆状态210和安装车辆状态222可由对应的车辆控制器116的配置来限定,并且可包括车辆系统参数的一个或更多个操作状态和/或参数值,诸如,但不限于,与车辆动力传动系统、变速器、转向、悬架、制动、排气、气候控制、信息娱乐系统等和/或这些车辆系统的子系统或组件关联的一个或更多个参数。在一个示例中,传输车辆状态210和安装车辆状态222可以是预定义车速阈值、预定义点火状态(例如,点火开关接通或点火开关断开)、预定义变速器挡位状态(例如,驻车挡、空挡、前进挡)等中的一个或更多个。为了在包括非易失性或永久性存储器的车辆控制器116上实施下载的软件更新120,更新管理器112可相应地被配置为在车辆102的点火开关断开的操作状态期间传送软件更新120并使用传送的软件更新120覆盖先前的软件版本。
虽然传输技术208的传输车辆状态210和安装技术220的安装车辆状态222分别被描述为与车辆控制器116的存储区204的配置有关,但是车辆控制器116的其它硬件和软件组件的配置也是可行的,并且均可限定与参照存储区204的配置描述的那些相同或不同的传输技术208和安装技术222。
响应于车辆102的当前车辆状态与限定传输技术208和安装技术220的传输车辆状态210和安装车辆状态222兼容,更新管理器112传送下载的软件更新120,并在相应的车辆控制器116上安装下载的软件更新120。例如,包括活动和非活动存储部204的车辆控制器116-A可支持具有关联的传输车辆状态210的传输技术208-A。更新管理器112可响应于车辆102的操作状态与和传输技术208-A关联的传输车辆状态210兼容而相应地将下载的软件更新120传送到车辆控制器116-A。
车辆控制器116-A还可支持安装技术220-A,安装技术220-A定义了用于将传送的软件更新120从非活动存储部交换到(或切换到)活动存储部204的一个或更多个操作。例如,安装技术220-A包括对应的安装车辆状态222,诸如,点火开关接通或点火开关断开、车速为零或不为零等。更新管理器112可响应于车辆102的操作状态与和安装技术220-A关联的安装车辆状态222兼容而相应地将传送的软件更新120安装到车辆控制器116-A。
在另一示例中,车辆控制器116-B可支持传输技术208-B和安装技术220-B,传输技术208-B和安装技术220-B共同限定了擦除替换(E|R)更新。例如,更新管理器112可响应于车辆102状态与传输技术208-B的传输车辆状态210(例如,车速为零、点火开关断开等)兼容而将下载的软件更新120传送到车辆控制器116-B。更新管理器122还可响应于车辆102的状态与安装技术220-B的安装车辆状态222(例如,车速为零、点火开关断开等)兼容而将传送的软件更新120安装到车辆控制器116-B中。
在另一示例中,车辆控制器116-C可支持传输技术208-C和安装技术220-C,传输技术208-C和安装技术220-C共同定义了外部闪存擦除替换(E|R)更新。作为示例,更新管理器112可响应于车辆102状态与传输技术208-C的传输车辆状态210(例如,点火开关接通、临时存储部活动等)兼容而将下载的软件更新120传送到车辆控制器116-C。更新管理器112可响应于车辆102状态与安装技术220-C的安装车辆状态222(例如,点火开关接通、临时存储部活动等)兼容而将传送的软件更新120安装到车辆控制器116-C。
此外或可选地,更新管理器112可对与对应的车辆控制器116的每个传输技术208兼容的传输车辆状态210以及与对应的车辆控制器116的每个安装技术220兼容的安装车辆状态222进行累积,使得与当前车辆状态兼容的所有传输和安装可同时完成。另外,响应于检测到车辆状态改变,更新管理器112可完成与新的车辆状态等兼容的传输和安装。更新管理器112可被配置为响应于从一个或更多个传感器或其它车辆控制器116接收到对应的信号而检测车辆状态的改变。
图3示出了用于响应于检测到车辆状态与传输技术和安装技术中的一个兼容而使用各个车辆控制器支持的传输技术和安装技术来传送和安装软件更新的示例处理300。例如,处理300可由通过网络126与更新服务器128通信的TCU 104的更新管理器112执行。
在操作302,更新管理器112接收指示可用于车辆102的软件更新120的指令215。指令215还可包括指示被更新的控制器116支持的传输技术208的一个或更多个传输技术标识符216以及指示被更新的控制器116支持的安装技术220的一个或更多个安装技术标识符218。更新管理器112可从如在指令215中指示的一个或更多个更新服务器128位置下载可用的软件更新120。
在操作304,更新管理器112识别被更新的控制器116支持的传输技术208。例如,更新管理器112可参照表114来识别与如在指令215中设置的传输技术标识符216关联的传输技术208。更新管理器112还可确定与每个传输技术208兼容的一个或更多个传输车辆状态210。
在操作306,更新管理器112确定当前车辆102状态是否与被更新的控制器116支持的至少一个传输技术208兼容。在一个示例中,更新管理器112确定当前车辆102状态是否与和传输技术208兼容的传输车辆状态210匹配。
在操作318,响应于确定车辆102的当前状态与控制器116支持的任一传输技术208均不兼容(例如,确定当前车辆102状态与任一传输车辆状态210均不匹配),更新管理器112检测车辆102状态的改变。当车辆102从点火开关接通到点火开关断开时,更新管理器112可确定车辆102状态已改变,等等。
响应于确定当前车辆102状态与控制器116支持的传输技术208兼容,在操作308,更新管理器112根据支持的传输技术208将下载的软件更新120传送到对应的控制器116。处理300随后可进行至操作310。
在操作310,更新管理器112识别被更新的控制器116支持的安装技术220。如参照图2描述的,更新管理器112可参照表114来确定与如在指令215中设置的安装技术标识符218关联的安装技术220。更新管理器112还可确定与每个安装技术220兼容的一个或更多个安装车辆状态222。
在操作312,更新管理器112确定当前车辆102状态是否与控制器116支持的至少一个安装技术220兼容。在一个示例中,更新管理器112确定当前车辆102状态与和安装技术220兼容的安装车辆状态222匹配。处理300可响应于在操作312确定车辆102的当前状态与被更新的控制器116支持的安装技术220不兼容而进行至操作316。
在操作314,响应于检测到当前车辆102状态与至少一个安装技术220兼容,更新管理器112根据每个控制器116支持的安装技术220在对应的控制器116上安装传送的软件更新120。
在操作316,更新管理器112确定任何下载的软件更新120是否仍需要被传送到被更新的车辆控制器116。在一个实例中,支持传输技术208的车辆控制器116的下载的软件更新120(其可能在与当前车辆102状态不同的车辆102状态期间执行)可能仍需被传送。
响应于确定至少一个下载的软件更新120需要被传送,处理300可进行至操作318,在操作318,更新管理器112确定车辆102状态是否已改变。更新管理器112可响应于来自一个或更多个车辆控制器116的对应的信号和/或响应于检测到车速、点火开关状态、变速器挡位等的改变而确定车辆102状态已改变。此外或可选地,更新管理器112可响应于车速、点火开关状态、变速器挡位等为预定义值而确定车辆102状态已改变。在另一示例中,响应于确定车辆102状态尚未改变,更新管理器112在预定义时间段之后检查车辆102状态。
在操作320,响应于确定所有下载的软件更新120已被传送到对应的车辆控制器116,更新管理器112确定任何传送的软件更新120是否保持以在对应的控制器116上进行安装。处理300可响应于确定至少一个传送的软件更新120需要被安装在对应的控制器116上而进行至操作322。在操作322,更新管理器112检测车辆102状态是否已改变。在一个示例中,更新管理器112响应于确定车辆102状态尚未改变而在预定义时间段之后检查车辆102状态。
响应于检测到车辆102状态改变,处理300进行至操作312,在操作312,更新管理器112确定当前车辆102状态是否与被更新的控制器116支持的安装技术兼容。更新管理器112随后可根据每个控制器116支持的安装技术将传送的软件更新120安装到对应的车辆控制器116。
处理300可响应于更新管理器112在操作320确定没有需要安装的传送的软件更新120(例如,确定所有传送的软件更新120根据控制器116支持的安装技术已被安装)而结束。在一些示例中,处理300可响应于更新管理器112接收到指示可用软件更新120以及被更新的控制器116支持的传输技术和安装技术的指令而被重复执行。
在此公开的处理、方法或算法可被交付到处理装置、控制器或计算机,或者,通过处理装置、控制器或计算机来实现,所述处理装置、控制器或计算机可包括任何现有的可编程电子控制单元或专用的电子控制单元。类似地,所述处理、方法或算法可以以多种形式被存储为可由控制器或计算机执行的数据和指令,所述多种形式包括但不限于永久存储在非可写存储介质(诸如ROM装置)上的信息以及可改变地存储在可写存储介质(诸如软盘、磁带、CD、RAM装置和其它磁性和光学介质)上的信息。所述处理、方法或算法还可在软件可执行对象中被实现。可选地,所述处理、方法或算法可使用适合的硬件组件(诸如,专用集成电路(ASIC)、现场可编程门阵列(FPGA)、状态机、控制器或其它硬件组件或装置)或者硬件、软件和固件组件的组合来被全部或者部分地实现。
说明书中所使用的词语是描述性的词语而非限制性的词语,并且应理解的是,可在不脱离本公开的精神和范围的情况下做出各种改变。如前所述,可将各种实施例的特征进行组合以形成本发明的可能未被明确描述或示出的进一步的实施例。尽管针对一个或更多个期望特性,各种实施例可能已经被描述为提供在其它实施例或者现有技术实施方式之上的优点或优于其它实施例或者现有技术实施方式,但是本领域的普通技术人员应认识到,一个或更多个特征或特性可被折衷以实现依赖于特定应用和实施方式的期望的整体系统属性。这些属性可包括但不限于成本、强度、耐久性、生命周期成本、市场性、外观、包装、尺寸、可维护性、重量、可制造性、组装的容易性等。因此,被描述为在一个或更多个特性方面不如其它实施例或现有技术实施方式的实施例并未在本公开的范围之外,并可被期望用于特定应用。
Claims (20)
1.一种用于车辆的系统,包括:
第一控制器;
远程信息处理控制单元,被配置为:响应于接收到包含分别指示第一控制器支持的用于利用软件更新来更新第一控制器的传输技术和安装技术的传输标识符和安装标识符的指令而执行以下处理:
利用技术表识别与相应的传输技术和安装技术兼容的传输状态和安装状态;
响应于检测到车辆处于所述传输状态而将软件更新传送到第一控制器;
响应于检测到车辆处于所述安装状态而将软件更新安装到第一控制器,
其中,所述传输状态由与变速器挡位状态和车速相关联的一个或更多个参数限定,所述安装状态由与点火开关状态和变速器挡位状态相关联的一个或更多个参数限定。
2.如权利要求1所述的系统,其中,传输技术包括擦除替换、使用外部存储的擦除替换和A/B交换中的一种。
3.如权利要求1所述的系统,其中,传输技术是基于第一控制器的硬件配置的。
4.如权利要求1所述的系统,其中,软件更新的传输和安装还是响应于检测到车辆状态改变的。
5.如权利要求1所述的系统,其中,所述安装状态还由与车辆的制动踏板、加速踏板和车轮中的一个关联的操作参数来限定。
6.如权利要求1所述的系统,其中,所述传输状态和所述安装状态是不同的。
7.如权利要求1所述的系统,还包括第二控制器,其中,远程信息处理控制单元还被配置为:响应于接收到所述指令而执行以下处理:
响应于车辆状态与第一控制器支持的传输技术和第二控制器支持的传输技术两者兼容,将软件更新传送到第一控制器和第二控制器。
8.如权利要求7所述的系统,其中,远程信息处理控制单元还被配置为:响应于检测到车辆状态改变,将软件更新安装到第二控制器。
9.一种用于车辆的方法,包括:
响应于远程信息处理控制单元接收到包含分别指示控制器支持的利用软件更新来更新控制器的传输技术和安装技术的传输标识符和安装标识符的指令而执行以下步骤:
利用技术表识别与相应的传输技术和安装技术兼容的传输状态和安装状态;
响应于车辆处于所述传输状态而将软件更新传送到控制器;
响应于车辆处于所述安装状态而将软件更新安装到控制器,
其中,所述传输状态由与变速器挡位状态和制动踏板位置相关联的一个或更多个参数限定,所述安装状态由与点火开关状态和转向角相关联的一个或更多个参数限定。
10.如权利要求9所述的方法,其中,所述传输技术包括擦除替换、使用外部存储的擦除替换和A/B交换中的一种。
11.如权利要求9所述的方法,其中,传输技术是基于控制器的硬件配置的。
12.如权利要求9所述的方法,其中,软件更新的传输和安装还是响应于检测到车辆状态改变的。
13.如权利要求9所述的方法,其中,所述传输状态还由与车辆的点火开关状态、加速踏板位置和车轮中的一个关联的操作参数来限定。
14.如权利要求9所述的方法,其中,所述传输状态和所述安装状态是不同的车辆状态。
15.如权利要求9所述的方法,还包括:响应于接收到用于更新两个控制器的指令而执行以下步骤:
在车辆状态改变之前,响应于当前车辆状态与所述两个控制器中的每个均支持的传输技术兼容而将软件更新传送到所述两个控制器。
16.如权利要求15所述的方法,还包括:响应于检测到车辆状态改变,将软件更新安装到所述两个控制器中的一个。
17.一种用于车辆软件更新的方法,包括:
接收用于更新第一控制器和第二控制器的指令,所述指令包括指示各个控制器支持的不同的传输技术和安装技术的标识符;
利用技术表识别与相应的传输技术和安装技术兼容的多个传输状态和安装状态;
响应于车辆处于第一传输状态而将第一软件更新传送到第一控制器;
响应于车辆处于第二传输状态而将第二软件更新传送到第二控制器;
响应于车辆处于与用于第一控制器和第二控制器两者的安装技术兼容的安装状态而将第一软件更新安装到第一控制器并且将第二软件更新安装到第二控制器,
其中,第一传输状态由与变速器挡位状态和气候控制设置相关联的一个或更多个参数限定,第二传输状态和所述安装状态由与点火开关状态和变速器挡位状态相关联的一个或更多个参数限定。
18.如权利要求17所述的方法,其中,传输技术包括擦除替换、使用外部存储的擦除替换和A/B交换中的一个。
19.如权利要求17所述的方法,其中,传输技术和安装技术是基于第一控制器和第二控制器中的每个的硬件配置的。
20.如权利要求17所述的方法,其中,软件更新的安装是响应于检测到车辆状态改变的。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/399,913 | 2017-01-06 | ||
US15/399,913 US11036484B2 (en) | 2017-01-06 | 2017-01-06 | Software update management |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108279917A CN108279917A (zh) | 2018-07-13 |
CN108279917B true CN108279917B (zh) | 2023-07-25 |
Family
ID=62636555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810003513.6A Active CN108279917B (zh) | 2017-01-06 | 2018-01-03 | 软件更新管理 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11036484B2 (zh) |
CN (1) | CN108279917B (zh) |
DE (1) | DE102018100095A1 (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI607912B (zh) * | 2016-10-14 | 2017-12-11 | 光陽工業股份有限公司 | Program updating method and system of vehicle |
US10922424B2 (en) * | 2017-08-17 | 2021-02-16 | M2MD Technologies, Inc. | Method and system for securely providing vehicle services data to a vehicle |
US10922070B2 (en) * | 2017-09-21 | 2021-02-16 | Western Digital Technologies, Inc. | Hardware assisted firmware download syncing |
DE102017217807A1 (de) * | 2017-10-06 | 2019-04-11 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren und vorrichtung zum verarbeiten einer software-aktualisierung |
JP6885361B2 (ja) * | 2018-03-07 | 2021-06-16 | 株式会社オートネットワーク技術研究所 | 処理装置及び処理方法 |
CN111221548B (zh) * | 2018-11-27 | 2023-03-24 | 环达电脑(上海)有限公司 | 用于现场可程序逻辑闸阵列的韧体更新方法 |
JP7200708B2 (ja) * | 2019-01-31 | 2023-01-10 | 富士通株式会社 | 車載システム及びecu |
KR20200141296A (ko) * | 2019-06-10 | 2020-12-18 | 현대자동차주식회사 | 차량 업데이트 제어 장치 및 방법 |
CN112114840B (zh) * | 2019-06-21 | 2023-01-06 | 华为技术有限公司 | 软件升级方法、装置及系统 |
CN110928561B (zh) * | 2019-08-09 | 2023-04-07 | 中国第一汽车股份有限公司 | 车辆控制器软件版本管理方法、装置、车辆和存储介质 |
US11461087B2 (en) * | 2020-02-28 | 2022-10-04 | Toyota Motor North America, Inc. | Transport sensor data update |
US11514729B2 (en) | 2020-02-28 | 2022-11-29 | Toyota Motor North America, Inc. | Transport behavior observation |
CN111371615B (zh) * | 2020-03-04 | 2023-07-14 | 深信服科技股份有限公司 | 在线服务器、运维工具的更新方法及系统和可读存储介质 |
DE112021001453T5 (de) * | 2020-03-06 | 2023-01-05 | Denso Corporation | Fahrzeugdatenkommunikationsvorrichtung, zentralvorrichtung, datenkommunikationsverfahren und computerprogramm |
EP3915912A1 (en) * | 2020-05-29 | 2021-12-01 | KONE Corporation | A people conveyor system and a method for updating software of a people conveyor component in a people conveyor system |
US11887411B2 (en) * | 2021-01-27 | 2024-01-30 | Amazon Technologies, Inc. | Vehicle data extraction service |
JP7406522B2 (ja) * | 2021-03-25 | 2023-12-27 | 本田技研工業株式会社 | 制御装置、及び、端末装置 |
JP2022174678A (ja) * | 2021-05-11 | 2022-11-24 | トヨタ自動車株式会社 | 情報処理装置、情報処理方法、及び、プログラム |
CN113552851A (zh) * | 2021-05-31 | 2021-10-26 | 江铃汽车股份有限公司 | 一种平台化汽车下线配置方法及系统 |
US11868755B2 (en) * | 2021-07-30 | 2024-01-09 | Toyota Motor Engineering & Manufacturing North America, Inc. | Updating software installed on an electronic unit on a vehicle |
CN113867317B (zh) * | 2021-09-28 | 2023-07-25 | 重庆长安汽车股份有限公司 | 一种汽车控制器软件刷写方法及系统 |
US11681518B2 (en) * | 2021-09-29 | 2023-06-20 | Geotab Inc. | Systems and methods for safe over-the-air update of electronic control units in vehicles |
US11829748B1 (en) | 2021-09-29 | 2023-11-28 | Geotab Inc. | Systems and methods for safe over-the-air update of electronic control units in vehicles |
US11902374B2 (en) | 2021-11-29 | 2024-02-13 | Amazon Technologies, Inc. | Dynamic vehicle data extraction service |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572141A (zh) * | 2013-10-10 | 2015-04-29 | 上海信耀电子有限公司 | 车用电控单元ecu的引导程序的在线更新方法 |
CN105974830A (zh) * | 2016-05-10 | 2016-09-28 | 北京新能源汽车股份有限公司 | 电动汽车及其远程程序更新控制方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090119657A1 (en) * | 2007-10-24 | 2009-05-07 | Link Ii Charles M | Methods and systems for software upgrades |
US8245214B2 (en) | 2008-06-05 | 2012-08-14 | International Business Machines Corporation | Reliably updating computer firmware while performing command and control functions on a power/thermal component in a high-availability, fault-tolerant, high-performance server |
KR101261956B1 (ko) * | 2011-11-03 | 2013-05-09 | 기아자동차주식회사 | 자동차 배터리 관리 시스템 및 그 방법 |
WO2013074919A2 (en) | 2011-11-16 | 2013-05-23 | Flextronics Ap , Llc | Universal bus in the car |
US9128798B2 (en) | 2012-10-17 | 2015-09-08 | Movimento Group | Module updating device |
WO2014088567A1 (en) * | 2012-12-05 | 2014-06-12 | Bendix Commercial Vehicle Systems Llc | Methods and apparatus for updating software components in coordination with operational modes of a motor vehicle |
WO2014164893A2 (en) * | 2013-03-13 | 2014-10-09 | Arynga Inc. | Remote transfer of electronic images to a vehicle |
WO2014200895A1 (en) * | 2013-06-11 | 2014-12-18 | Mad Catz Interactive, Inc. | Systems and methods for transmitting data using selected transmission technology from among other transmission technologies |
JP5864510B2 (ja) * | 2013-10-18 | 2016-02-17 | 富士通株式会社 | 修正プログラム確認方法、修正プログラム確認プログラム、及び情報処理装置 |
KR101724486B1 (ko) * | 2015-09-21 | 2017-04-18 | 현대자동차 주식회사 | 차량 단말의 소프트웨어 업데이트 제어장치 및 그 방법이 구현된 컴퓨터로 판독 가능한 기록매체 |
KR101792046B1 (ko) * | 2015-10-29 | 2017-11-20 | 현대자동차주식회사 | 단말기, 차량 및 그 제어 방법 |
-
2017
- 2017-01-06 US US15/399,913 patent/US11036484B2/en active Active
-
2018
- 2018-01-03 DE DE102018100095.2A patent/DE102018100095A1/de active Pending
- 2018-01-03 CN CN201810003513.6A patent/CN108279917B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572141A (zh) * | 2013-10-10 | 2015-04-29 | 上海信耀电子有限公司 | 车用电控单元ecu的引导程序的在线更新方法 |
CN105974830A (zh) * | 2016-05-10 | 2016-09-28 | 北京新能源汽车股份有限公司 | 电动汽车及其远程程序更新控制方法 |
Non-Patent Citations (2)
Title |
---|
"Controlled Charging of Electric Vehicles to Minimize Energy Losses in Distribution Systems";S.M. Mousavi 等;《IFAC-PapersOnLine》;第49卷(第27期);第324-329页 * |
"哈曼软件更新网关为整车实现安全OTA更新";哈曼;《汽车零部件》;第71页 * |
Also Published As
Publication number | Publication date |
---|---|
US11036484B2 (en) | 2021-06-15 |
CN108279917A (zh) | 2018-07-13 |
DE102018100095A1 (de) | 2018-07-12 |
US20180196656A1 (en) | 2018-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108279917B (zh) | 软件更新管理 | |
CN105691330B (zh) | 远程信息处理更新软件兼容性 | |
US10782955B2 (en) | Pre-shutdown swap verification | |
US10564954B2 (en) | Hybrid electric vehicle with automated software update system | |
CN106484457B (zh) | 多阶段的安全的车辆软件更新的方法及系统 | |
JP2020027623A5 (zh) | ||
US20170344355A1 (en) | Updating vehicle system modules | |
US11017616B2 (en) | Smart over-the-air updates using learned vehicle usage | |
US11146659B2 (en) | Optimized TCU transit power | |
US20200218531A1 (en) | OVER-THE-AIR (OTA) UPDATES OF ELECTRONIC CONTROL UNITS (ECUs) IN VEHICLES | |
CN107872511B (zh) | 车载的辅助存储装置 | |
US20230004381A1 (en) | Software version rollback method, apparatus, and system | |
US10744937B2 (en) | Automated vehicle software update feedback system | |
US20180349157A1 (en) | Processor-implemented systems and methods for vehicle updating over-the-air | |
CN114115930A (zh) | 用于管理车辆的电子控制单元的更新的装置、方法和系统 | |
CN108574945B (zh) | 车辆通信 | |
CN104396218A (zh) | 用于对计算机网络中车辆可安装控制器进行操作的设备、车辆可安装控制器及方法 | |
CN107948954A (zh) | 用于适于使用两种不同srwc协议的车辆的短距离无线通信(srwc)模块 | |
CN111031087A (zh) | 经由地理围栏时区解析的调度简化 | |
CN111064630A (zh) | 更新前和更新后交通工具总线流量指纹识别 | |
KR102450914B1 (ko) | 차량 간 통신 기반 차량 무선 업데이트 방법 및 시스템 | |
CN111526174A (zh) | 分布式远程数据请求操作器 | |
KR20200137840A (ko) | 차량의 동작 제어 장치 및 방법 | |
US20230315440A1 (en) | Vehicle software compatibility | |
US20230045256A1 (en) | Computing device updating |
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 |