空中ECU更新的制作方法

文档序号:19905874发布日期:2020-02-11 14:29阅读:318来源:国知局
空中ECU更新的制作方法

本公开总体上涉及用于更新交通工具电子控制单元(ecu)的方法和系统。更具体地,本公开涉及使用具有暂停和恢复能力的飞行中压缩(on-the-flycompression)来更新交通工具ecu。



背景技术:

现代交通工具配备有由软件/应用操作的各种ecu。为了使软件保持最新,通常对那些ecu进行空中更新。使用远程信息处理控制单元(tcu)和无线连接装置(诸如手机)或机载调制解调器,交通工具可以访问从交通工具远程存储的各种数据。在一些情况下,交通工具中网络将ecu连接到各种交通工具模块,允许各种模块和ecu之间的交叉通信。



技术实现要素:

在一个或多个说明性实施例中,一种系统包括处理器,所述处理器被编程为:将地址范围发送到服务器,所述地址范围对应于控制器执行更新的能力;响应于从所述服务器接收到更新数据,将所述更新数据写入所述控制器;并且响应于接收到从暂停状态恢复所述更新的恢复信号,基于从所述控制器接收的最后成功写入的地址来将新的地址范围发送到所述服务器。

在一个或多个说明性实施例中,一种方法包括:将https地址范围发送到服务器,所述https地址范围是基于ecu的更新能力计算的;从服务器接收压缩数据;将从压缩数据获得的更新数据按段写入ecu;使用来自ecu的段的最后成功写入的地址来修改https地址范围;以及在最后成功写入的字节地址处恢复写入更新。

在一个或多个说明性实施例中,服务器包括处理器,所述处理器被编程为:响应于从交通工具接收到第一https地址范围,创建压缩窗口以对ecu更新数据执行飞行中压缩以发送到交通工具,并且响应于从交通工具接收到第二https地址范围,基于第二https地址范围来移动压缩窗口。

附图说明

为了更好地理解本发明并示出可以如何执行本发明,现在将参考附图仅通过非限制性示例来描述其实施例,在附图中:

图1示出了本公开的一个实施例的交通工具系统的示例性框式拓扑图;

图2示出了本公开的一个实施例的交通工具系统的示例性框图;以及

图3示出了本公开的一个实施例的交通工具系统的数据流程图。

具体实施方式

根据需要,本文公开了本发明的详细实施例;然而,应当理解,所公开的实施例仅仅是可以体现为各种和替代形式的本发明的示例。附图不一定按比例绘制;一些特征可能被放大或最小化以示出特定部件的细节。因此,本文中公开的具体结构细节和功能细节不应被解释为是限制性的,而是仅仅作为教导本领域技术人员以不同方式采用本发明的代表性基础。

本公开总体上提供了多个电路或其他电气装置。所有对电路和其他电气装置以及各自提供的功能的引用均不旨在被限制为仅包括本文所示出和描述的内容。虽然可以将特定标签分配给各种电路或其他电气装置。但是,基于所需的电气实现方式的具体类型,此类电路和其他电气装置可以以任何方式彼此组合和/或分开。应当认识到,本文公开的任何电路或其他电气装置可以包括任意数量的微处理器、集成电路、存储器装置(例如,闪存、随机存取存储器(ram)、只读存储器(rom)、电可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)或它们的其他适当变型)以及软件,它们彼此协作以执行本文公开的操作。另外,电气装置中的任何一个或多个可以被配置来执行体现在被编程来执行如所公开的任何数量的功能的非暂时性计算机可读介质中的计算机程序。

除了其他以外,本公开提出了用于使用飞行中(otf)压缩技术来更新交通工具ecu的系统和方法。所述系统可以从来自目标ecu的最后成功写入的字节地址暂停和恢复更新过程,并基于所述地址来计算新的https范围。

参考图1,示出了本公开的一个实施例的交通工具系统100的示例性框式拓扑图。交通工具102可以包括各种类型的汽车、交叉多用途交通工具(cuv)、运动型多用途交通工具(suv)、卡车、休闲交通工具(rv)、船、飞机或用于运输人员或货物的其他移动机器。在许多情况下,交通工具102可以由内燃发动机提供动力。作为另一种可能性,交通工具102可以是由内燃发动机和一个或多个电动马达两者提供动力的混合动力电动交通工具(hev),诸如串联混合动力电动交通工具(shev)、并联混合动力电动交通工具(phev)或并联/串联混合动力交通工具(pshev)、船只、飞机或用于运输人员或货物的其他移动机器。作为示例,系统100可以包括由密歇根州迪尔伯恩的福特汽车公司(thefordmotorcompanyofdearborn,michigan)制造的sync系统。应注意,所示系统100仅为示例,并且可以使用更多、更少和/或以不同方式定位的元件。

如图1所示,计算平台104可以包括一个或多个处理器112,所述一个或多个处理器112被配置成执行支持本文描述的过程的指令、命令和其他例程。例如,计算平台104可以被配置成执行交通工具应用108的指令以提供诸如导航、卫星无线电解码和交通工具设置调整等特征。可以使用多种类型的计算机可读存储介质106以非易失性方式维持这类指令和其他数据。计算机可读介质106(也称为处理器可读介质或存储装置)包括参与提供可以由计算平台104的处理器112读取的指令或其他数据的任何非暂时性介质(例如,有形介质)。可以根据使用多种编程语言和/或技术创建的计算机程序来编译或解译计算机可执行指令,所述多种编程语言和/或技术包括但不限于以下的单独或组合形式:java、c、c++、c#、objectivec、fortran、pascal、javascript、python、perl和pl/sql。

计算平台104可以具备允许交通工具乘员/用户与计算平台104交互的各种特征。例如,计算平台104可以从人机界面(hmi)控件118接收输入,所述人机界面(hmi)控件118被配置成提供乘员与交通工具102的交互。作为示例,计算平台104可以与被配置成调用计算平台104上的功能的一个或多个按钮(未示出)或其他hmi控件(例如,方向盘音频按钮、按键通话按钮、仪表板控件等)交互。

计算平台104还可以驱动一个或多个显示器116或以其他方式与之通信,所述一个或多个显示器116被配置成通过视频控制器114向交通工具乘员提供视觉输出。在一些情况下,显示器116可以是进一步被配置成经由视频控制器114接收用户触摸输入的触摸屏,而在其他情况下,显示器116可以仅是显示器,而没有触摸输入能力。计算平台104还可以驱动一个或多个扬声器122和传声器124或以其他方式与之通信,所述一个或多个扬声器122和传声器124被配置成通过音频控制器120向交通工具乘员提供音频输出以及由交通工具乘员提供音频输入。扬声器122和传声器124可以启用各种特征,诸如来自交通工具用户的语音命令输入/对交通工具用户的音频输出。

计算平台104还可以通过导航控制器128而具备导航和路线规划特征,导航控制器128被配置成响应于经由例如hmi控件118的用户输入而计算导航路线,并经由扬声器122和显示器116输出规划路线和指令。可以从被配置成与全球定位系统(gps)卫星通信并计算交通工具102的位置的gps控制器126收集导航所需的位置数据。用于路线规划的地图数据可以作为交通工具数据110的一部分存储在存储装置106中。替代地,地图数据可以在存储在或没有存储在存储装置106中的情况下从云实时流传输。作为示例,计算平台104使用的地图数据不仅可以包括诸如街道和地形的常规信息,还可以包括诸如交通数据和计算平台104订阅的无线网络的覆盖状况的高级信息。导航软件可以作为交通工具应用108的一部分存储在存储装置116中。

计算平台104可以被配置成经由无线连接162与交通工具乘员的移动装置140通信。移动装置140可以是各种类型的便携式计算装置中的任何一种,诸如蜂窝电话、平板计算机、智能手表、膝上型计算机、便携式音乐播放器或能够与计算平台104通信的其他装置。在许多示例中,计算平台104可以包括与wifi控制器130、蓝牙控制器132以及被配置成与移动装置140的可兼容无线收发器160通信的其他控制器通信的无线收发器134,诸如zigbee收发器、irda收发器、rfid收发器(未示出)。

移动装置140可以经由无线收发器160而具备通信能力,所述无线收发器160与wifi控制器150、蓝牙控制器154和被配置成与计算平台104的可兼容无线收发器134通信的其他控制器通信。移动装置140还可以具备经由无线连接166与无线网络190通信的能力。

移动装置140可以提供有处理器148,所述处理器148被配置成执行支持诸如导航、呼叫、无线通信和多媒体处理的过程的指令、命令和其他例程。例如,移动装置140可以经由导航控制器158和gps控制器156而具备定位和导航功能,所述导航控制器158和gps控制器156由作为存储在非易失性存储装置142中的移动应用144的一部分的应用控制。用于导航目的的地图数据可以作为移动数据146的一部分存储在存储装置142中。替代地,移动装置140可以被配置成经由通信网络190通过无线连接194从远程服务器下载实时地图和交通数据。例如,通信网络190可以是蜂窝网络。移动装置140可以具备允许交通工具乘员/用户与移动装置140交互的各种特征。例如,移动装置140可以从被配置成提供乘员与移动装置140以及交通工具102的交互的人机界面(hmi)控件152接收输入。

计算平台104还可以被配置成经由一个或多个交通工具中网络170与各种电子控制单元(ecu)通信。作为一些示例,交通工具中网络170可以包括但不限于控制器局域网(can)、以太网网络和面向媒体的系统传输(most)中的一者或多者。

交通工具102可以包括多个ecu,所述ecu被配置成控制和操作交通工具102的各种功能。例如,计算平台104可以与远程信息处理控制单元174通信,远程信息处理控制单元174被配置成控制交通工具102的电信。在许多情况下,可以将tcu174提供为调制解调器176,其被配置成调制和解调交通工具102与服务器192之间经由无线网络190的通信。tcu174可以具备存储容量以存储软件(固件或应用)178以控制tcu174的操作。另外或替代地,tcu软件178可以完全或部分地存储在tcu174的本地存储装置以外的其他地方。例如,软件178可以作为交通工具应用108的一部分存储在计算平台104的存储装置106中。

计算平台104还可以被配置成与各种ecu180通信以控制和操作交通工具102的各种功能。作为一些非限制性示例,ecu180可以包括:动力传动系统控制模块(pcm),其被配置成控制动力传动系统(例如,发动机和/或变速器);车身控制模块(bcm),其被配置成控制车身操作(例如,门和/或窗户);和气候控件,其被配置成控制交通工具102的ac和气候系统。每个ecu可以具备本地存储装置以存储被配置成控制和执行各种功能的软件182。另外或替代地,软件182可以在ecu本地存储装置现场外并且存储在其他地方,诸如作为交通工具应用108的一部分存储在计算平台104的存储装置106。在另一示例中,可以将ecu软件182作为移动应用144的一部分存储在移动装置140中。

计算平台104可以被配置成对本地或非现场存储的ecu软件182执行空中(ota)更新。软件更新数据可以使用tcu174通过无线网络190从远程服务器192下载并传送到相关存储装置。另外或替代地,移动装置140还可以用于下载ecu更新数据。端到端飞行中压缩技术可以在服务器192和计算平台104两者上使用,以便于下载。

参考图2,示出了本公开的一个实施例的拓扑系统图200。继续参考图1,计算平台104经由无线网络190与服务器192通信以对目标ecu180执行ota软件更新。更新软件数据202可以存储在服务器192中。特定更新数据202可以对应于与服务器192相关联的特定超文本传输协议安全(https)地址206。在更新期间,计算平台104可以经由tcu174从服务器下载更新数据202,并将更新数据202发送到目标ecu180。计算平台104可以被配置成根据目标ecu180的更新能力220计算要下载的https地址范围232。例如,计算平台104可以基于目标ecu180的ram配置、处理能力和/或流水线配置,来计算https地址范围232以在特定时间从服务器192下载。计算平台104可以进一步使用预测的无线网络覆盖/速度228来计算https地址范围232。网络覆盖/速度228可以使用来自gps控制器126的交通工具位置和通过导航控制器128预测交通工具102在更新下载期间的特定时间将处于特定位置而规划的路线而获得,与从服务器192下载的网络覆盖数据组合或作为地图数据的一部分存储在存储装置106中。

服务器192可以被配置成支持目标ecu压缩方法并在发送到交通工具102之前压缩204更新数据202。响应于接收到压缩的更新数据,计算平台104可以在写入/闪送到目标ecu180之前对数据执行解压缩222。另外,出于安全目的,服务器192可以支持更新数据202的加密208。计算平台104可以在将所接收的数据发送到ecu180以进行写入之前对所接收的数据执行解密226。替代地,解压缩222和解密226可以在目标ecu180处执行。

目标ecu180可以被配置成从计算平台104接收更新数据202并且按段写入本地存储装置182,同时更多更新数据202正在或将被下载。换句话说,ecu180可以开始将更新数据202写入本地存储装置184,而无需首先完成下载所有需要的更新数据202。可以为目标ecu180提供或创建备份软件文件244,以在更新失败的情况下进行恢复。计算平台104可以被配置成在需要时启用暂停和恢复224更新过程。对于要写入的每个段,计算平台104可以被配置成从来自目标ecu180的最后成功写入的字节地址246恢复。此外,计算平台104基于从目标ecu180写入的地址计算新的https地址范围232,并将其发送到服务器192。响应于接收到新的https地址范围232,服务器192可以将压缩窗口移动到在https范围232中接收到的新地址。

参考图3,示出了ecu更新过程的系统数据流程图300。在操作302处,计算平台104在与目标ecu180通信之后启动ecu软件更新。启动302可以由各种因素触发。例如,计算平台104可以从服务器192接收指示新软件可用于目标ecu180的消息(例如,推送消息)。替代地,可以由交通工具用户通过hmi控件118手动触发启动操作320,例如通过向触摸屏116输入或通过传声器124发出语音命令。

响应于更新启动302,在操作304处,计算平台104基于目标ecu能力230来计算用于服务器192的https地址范围232。如上所述,目标ecu能力可以包括目标ecu180的处理能力、ram、流水线和其他配置。另外,计算平台104还可以使用预测的无线网络状况228来计算与服务器192相关联的https地址范围232。

在操作306处,计算平台104将计算的https地址范围232发送到服务器192。作为响应,服务器192在操作308处根据从计算平台104接收的https地址范围232设置压缩窗口210,并开始为目标ecu180压缩更新数据202。在操作310处,服务器192将压缩的更新数据发送到计算平台104,计算平台104在操作312处响应地解压缩数据并将其发送到目标ecu180。作为示例,计算平台104可以飞行中执行解压缩并且在没有完整文件的情况下发送到目标ecu180。替代地,计算平台104可以从服务器192下载所有压缩文件并飞行中进行解压缩。在这种情况下,计算平台可以仅具有压缩文件,并且目标ecu180接收解压缩文件。替代地,取决于具体的配置,可以在目标ecu180处完全或部分地执行解压缩操作。为了进一步增强安全性,可以对来自服务器192的压缩数据进行加密,并且计算平台104可以进一步对接收到的数据执行解密。在成功解压缩(和可能的解密)之后,计算平台104在操作314处将更新软件数据发送到目标ecu180以进行写入/闪送。在操作316处,目标ecu180按每个段将更新数据写入本地存储装置182,同时更多的更新数据仍在从服务器192下载到计算平台104。为了向计算平台104通知更新状态,目标ecu180将本地存储装置182上的最新的成功写入的字节地址246发送到计算平台104。

由于各种原因,计算平台104可以在操作320处暂停更新过程。例如,由于无线网络190的临时不可用,计算平台104可以暂停更新下载。暂停的其他原因可能包括遇到具有较高优先级的任务、用户手动输入、来自目标ecu180的指示暂停的信号等。响应于恢复信号,计算平台104在操作322处基于从目标ecu180接收的最后成功写入的地址246来计算新的https地址范围232并将新计算的https地址范围232发送到服务器192。响应于从计算平台104接收的新的https地址范围232,服务器192在操作326处根据新范围移动压缩窗口并继续压缩并将压缩数据328发送到计算平台104。更新过程继续,直到其完成为止。

虽然以上描述了示例性实施例,但并不意味着这些实施例描述了本发明的所有可能形式。相反,说明书中使用的词语是描述性词语而不是限制性词语,并且应当理解,在不脱离本发明的精神和范围的情况下,可以进行各种改变。此外,可以组合各种实施的实施例的特征以形成本发明的另外实施例。

根据本发明,提供了一种系统,其具有:处理器,所述处理器被编程为:将地址范围发送到服务器,所述地址范围对应于控制器执行更新的能力;响应于从所述服务器接收到更新数据,将所述更新数据写入所述控制器;并且响应于接收到从暂停状态恢复所述更新的恢复信号,基于从所述控制器接收的最后成功写入的地址来将新的地址范围发送到所述服务器。

根据实施例,控制器的能力包括以下中的至少一者:处理配置、随机存取存储器(ram)配置和流水线配置。

根据实施例,处理器还被编程为基于预测的无线网络覆盖来计算地址范围。

根据实施例,处理器还被编程为基于位置和规划路线来确定预测的无线网络覆盖。

根据实施例,处理器还被编程为:从控制器接收成功写入的字节地址;并且从来自控制器的最后成功写入的字节地址恢复。

根据实施例,处理器还被编程为对从服务器接收的更新数据执行飞行中解压缩。

根据实施例,处理器还被编程为对从服务器接收的更新数据执行解密。

根据实施例,处理器还被编程为触发控制器恢复到备份文件。

根据实施例,地址范围是超文本传输协议安全(https)地址范围。

根据本发明,一种方法包括:将https地址范围发送到服务器,所述https地址范围是基于ecu的更新能力计算的;从服务器接收压缩数据;将从压缩数据获得的更新数据按段写入ecu;使用来自ecu的段的最后成功写入的地址来修改https地址范围;以及在最后成功写入的字节地址处恢复写入更新。

根据实施例,更新能力包括以下中的至少一者:处理配置、ram配置和流水线配置。

根据实施例,本发明的特征还在于,基于预测的无线网络覆盖来计算https地址范围。

根据实施例,本发明的特征还在于,基于位置和规划路线来确定预测的无线网络覆盖。

根据实施例,使用飞行中压缩技术来压缩压缩数据。

根据实施例,本发明的特征还在于,对从服务器接收的压缩数据进行解密。

根据本发明,提供了一种服务器,其具有处理器,所述处理器被编程为:响应于从交通工具接收到第一https地址范围,创建压缩窗口以对ecu更新数据执行飞行中压缩以发送到交通工具,并且响应于从交通工具接收到第二https地址范围,基于第二https地址范围来移动压缩窗口。

根据实施例,处理器还被编程为对ecu更新数据执行加密以发送到交通工具。

根据实施例,处理器还被编程为向交通工具发送消息,通知ecu更新数据可用。

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