一种基于文件系统的ECU更新方法及系统技术方案

技术编号:23932219 阅读:24 留言:0更新日期:2020-04-25 01:52
本发明专利技术提供一种基于文件系统的ECU更新方法及系统,具体包括:通过车载以太网将外部设备与含有操作系统的ECU进行连接,当建立安全连接后,外部设备将需要升级的文件传输给ECU,ECU内的操作系统根据升级需求,将相应升级文件对旧文件进行替换、增加等操作,然后进行重启升级。在升级过程中,增加文件的安全性、完整性验证以及升级前后的自动备份。相比于现有技术,采用了基于车载以太网传输,更新时间降低50%以上,考虑到文件更新有增加,修改,删除等特点增加部分命令,对原来14229‑2定义的flashbootloader更新流程进行简化和更新,依据ECU的操作系统的特点,只需要对模块的文件进行更新即可,无须向传统的ECU升级方法那样进行整体刷机。

ECU update method and system based on file system

【技术实现步骤摘要】
一种基于文件系统的ECU更新方法及系统
本专利技术涉及汽车领域,尤其涉及一种基于文件系统的ECU更新方法及系统。
技术介绍
随着汽车的普及,越来越多的汽车进入千家万户,人民生活消费水平的不断提高,汽车的数量也不断的增多,大家对车内电器的智能化要求越来越高,车内各种软件逐渐增多,各种模块的功能都是在不断开发完善中。尽管汽车也在出售给消费者了,但是为了提高效率和功能完善,出售的汽车仍然需要升级。在智能汽车中,很多ECU(控制器),如车载中控和仪表控制等需要大数量处理单元的控制器都采用MCU(MicrocontrollerUnit)和SOC(SystemonChip)进行结合,MCU负责控制指令,SOC负责需要进行大量数据处理的场景,如车载摄像头传输的图像处理、主动刹车场景的计算处理。现阶段,对控制器进行升级通常都是通过整体刷机方式进行,如采用Flashbootloader的流程更新固件。当在MCU平台,这种方式是比较好的方式,但是在带有操作系统的SOC平台,则出现如下问题,由于SOC芯片安装有操作系统,其bootlaoder是作为操作启动引导使用,若通过通过bootloader更新,只能更新整个固件,由于固件本身占据的容量较大,需要花费大量的时间和占据大量的内存。如果只想更新某个模块,则没有办法,只能全部固件更新。现有技术(CN110147244A)本专利技术公开了一种车载软件升级的方法,包括:向MCU请求版本号;根据MCU版本号匹配更新的差分文件包版本;读取更新的差分文件包并校验所述差分文件包是否完整;如果存在至少两个更新的所述差分文件包,则将所有差分文件包组合成一个差分文件组合包;将所述差分文件包或差分文件组合包转换成预定格式,并发送给所述MCU;所述MCU将所述差分文件包或差分文件组合包发送给SOC;由所述SOC读取所述差分文件包或差分文件组合包,并完成升级。采用该技术方案可以缩短软件升级时间。该专利技术(CN110147244A)其是通过CAN总线将文件传输给MCU,然后MCU将文件传输给SOC,然后进行整体刷新工作。而CAN总线传输速率慢,SOC更新是整体替换,导致其花费时间较长,这可能会影响驾驶员对车辆的使用。因此,降低SOC的升级时间以及降低升级占用的SOC内存成为当前需要解决的关键性技术问题。
技术实现思路
本专利技术为解决上述问题,提供了一种基于文件系统的ECU更新方法及系统。一种基于文件系统的ECU更新方法,包括:步骤S1,外部设备通过中央网关用DoIP协议与待升级的ECU建立连接,当连接成功后,外部设备与待升级的ECU进行诊断会话;步骤S2,待升级的ECU与外部设备进行安全访问验证,判断是否需要进行文件更新,若需要更新则进入请求文件更新模式;步骤S3,外部设备发送请求传输文件的报文给ECU,ECU接收到请求后,判断是否需要升级,若需要升级,则发送升级文件响应给外部设备,外部设备收到升级文件响应后,开始传送升级文件给ECU;步骤S4,当所有需要升级的文件传输完成后,对传输完成的文件进行完整性检查,当检查所有文件都完整后对含有待升级的ECU进行重启。一种基于文件系统的ECU更新方法,进一步地,包括:步骤S5,对升级完成后的ECU的操作系统进行功能验证,判断升级后的ECU功能是否正常。一种基于文件系统的ECU更新方法,进一步地,所述步骤S1具体包括以下步骤:步骤S11,外部设备与车内ECU申明自身存在网络。一种基于文件系统的ECU更新方法,进一步地,所述外部设备与车内ECU申明自身存在网络具体包括:外部设备申明自身在网络存在和ECU申明在网络存在;外部设备申明自身在网络存在包括:外接设备通过中央网关接入车内网络,外部设备接入车内网络并通知车内ECU,包括:外部设备和ECU分别从网络中获取配置IP地址和端口号,外部设备通过广播UDP协议发送车辆识别请求给ECU,若ECU收到车辆识别请求后将外部设备信息加入外部设备信息管理状态表,ECU通过单播UDP协议发送车辆识别响应给外部设备,外部设备将收到的车辆识别响应放入ECU管理状态表;ECU申明在网络存在包括:当新的ECU接入网络时,ECU从网络中获取配置的IP地址和端口号,ECU通过广播的UDP协议发送三次车辆公告信息给外部设备,外部设备收到ECU的车辆公告信息后将ECU设备信息加入ECU管理状态表,然后发送车辆识别请求给ECU,ECU收到车辆识别请求后,发送车辆识别响应给外部设备,外部设备将收到的车辆识别响应放入ECU管理状态表。一种基于文件系统的ECU更新方法,进一步地,在车内网络中任意选择一个ECU作为周期的ECU,让其在预设时间周期进行申明自身在车内网络的存在,外部设备接收到周期ECU的车公告消息后,发送反馈带有外部设备的信息给周期ECU,周期性ECU收到所有在线的外部设备的消息后,删除没有发送反馈信息的外部设备,更新外部设备信息管理状态表,然后周期的ECU通过广播UDP协议发送更新后的外部设备管理状态表给其余的ECU,其余的ECU收到更新后的外部设备管理状态表后对自身的外部设备状态表进行更新;ECU在启动后,需要主动广播车公告消息,车公告消息包括带有ECU的信息,如果此时有外部设备在线,外部设备就获取ECU的信息。一种基于文件系统的ECU更新方法,进一步地,步骤S1具体还包括以下步骤:步骤S12,外部设备与车内ECU通过TCP/IP协议建立路由激活,从而完成外部设备与车内ECU建立连接的过程;步骤S13,外部设备发送拓展模式请求报文给待升级ECU,待升级ECU接受后进入拓展诊断会话;步骤S14,程序控制,发送例程控制服务,检查待升级的ECU电源、当前工作状态是否满足更新条件。一种基于文件系统的ECU更新方法,进一步地,所述ECU包括Bootloader和文件系统,其中,文件系统采用Window、QNX、Android、Lunix操作系统中的一种。一种基于文件系统的ECU更新方法,进一步地,所述步骤S2具体包括:步骤S21,待升级的ECU与外部设备进行安全访问成功,则继续执行步骤S22,若外部设备与待升级的ECU进行安全访问失败,则等待预设时间,继续进行下一次的安全访问,若在预设的访问次数或预设时间内建立安全访问失败,则结束进程。一种基于文件系统的ECU更新方法,进一步地,在安全访问过程中,操作系统存储有外部设备的数字证书和ECU数字证书,数字证书由可信的数字证书中心分别颁发,采用双向认证模式,搭建PKI平台,负责客户证书的发放和管理,并采用动态对称秘钥加密通信通道;ECU操作系统与外部设备通过各自的数字证书并遵循HTTPS协议进行双向认证,并确定两者通信的会话密钥sessionkey,两者的后续通信均通过会话密钥sessionkey加密。一种基于文件系统的ECU更新方法,进一步地,安全访问失败包括ECU被锁住,锁住的条件包括:接收到另外一个安全访问请求或切换到另外一个诊断会话,或切换到相同的诊断会话时;本文档来自技高网
...

【技术保护点】
1.一种基于文件系统的ECU更新方法,其特征在于,包括:步骤S1,外部设备通过中央网关用DoIP协议与待升级的ECU建立连接,当连接成功后,外部设备与待升级的ECU进行诊断会话;/n步骤S2,待升级的ECU与外部设备进行安全访问验证,判断是否需要进行文件更新,若需要更新则进入请求文件更新模式;/n步骤S3,外部设备发送请求传输文件的报文给ECU,ECU接收到请求后,判断是否需要升级,若需要升级,则发送升级文件响应给外部设备,外部设备收到升级文件响应后,开始传送升级文件给ECU;/n步骤S4,当所有需要升级的文件传输完成后,对传输完成的文件进行完整性检查,当检查所有文件都完整后对含有待升级的ECU进行重启。/n

【技术特征摘要】
1.一种基于文件系统的ECU更新方法,其特征在于,包括:步骤S1,外部设备通过中央网关用DoIP协议与待升级的ECU建立连接,当连接成功后,外部设备与待升级的ECU进行诊断会话;
步骤S2,待升级的ECU与外部设备进行安全访问验证,判断是否需要进行文件更新,若需要更新则进入请求文件更新模式;
步骤S3,外部设备发送请求传输文件的报文给ECU,ECU接收到请求后,判断是否需要升级,若需要升级,则发送升级文件响应给外部设备,外部设备收到升级文件响应后,开始传送升级文件给ECU;
步骤S4,当所有需要升级的文件传输完成后,对传输完成的文件进行完整性检查,当检查所有文件都完整后对含有待升级的ECU进行重启。


2.根据权利要求1所述的一种基于文件系统的ECU更新方法,其特征在于,包括:步骤S5,对升级完成后的ECU的操作系统进行功能验证,判断升级后的ECU功能是否正常。


3.根据权利要求1所述的一种基于文件系统的ECU更新方法,其特征在于,所述步骤S1具体包括以下步骤:步骤S11,外部设备与车内ECU申明自身存在网络。


4.根据权利要求3所述的一种基于文件系统的ECU更新方法,其特征在于,所述外部设备与车内ECU申明自身存在网络具体包括:外部设备申明自身在网络存在和ECU申明在网络存在;
外部设备申明自身在网络存在包括:外接设备通过中央网关接入车内网络,外部设备接入车内网络并通知车内ECU,包括:外部设备和ECU分别从网络中获取配置IP地址和端口号,外部设备通过广播UDP协议发送车辆识别请求给ECU,若ECU收到车辆识别请求后将外部设备信息加入外部设备信息管理状态表,ECU通过单播UDP协议发送车辆识别响应给外部设备,外部设备将收到的车辆识别响应放入ECU管理状态表;
ECU申明在网络存在包括:当新的ECU接入网络时,ECU从网络中获取配置的IP地址和端口号,ECU通过广播的UDP协议发送三次车辆公告信息给外部设备,外部设备收到ECU的车辆公告信息后将ECU设备信息加入ECU管理状态表,然后发送车辆识别请求给ECU,ECU收到车辆识别请求后,发送车辆识别响应给外部设备,外部设备将收到的车辆识别响应放入ECU管理状态表。


5.根据权利要求4所述的一种基于文件系统的ECU更新方法,其特征在于,在车内网络中任意选择一个ECU作为周期的ECU,让其在预设时间周期进行申明自身在车内网络的存在,外部设备接收到周期ECU的车公告消息后,发送反馈带有外部设备的信息给周期ECU,周期性ECU收到所有在线的外部设备的消息后,删除没有发送反馈信息的外部设备,更新外部设备信息管理状态表,然后周期的ECU通过广播UDP协议发送更新后的外部设备管理状态表给其余的ECU,其余的ECU收到更新后的外部设备管理状态表后对自身的外部设备状态表进行更新;
ECU在启动后,需要主动广播车公告消息,车公告消息包括带有ECU的信息,如果此时有外部设备在线,外部设备就获取ECU的信息。


6.根据权利要求3所述的一种基于文件系统的ECU更新方法,其特征在于,步骤S1具体还包括以下步骤:
步骤S12,外部设备与车内ECU通过TCP/IP协议建立路由激活,从而完成外部设备与车内ECU建立连接的过程;
步骤S13,外部设备发送拓展模式请求报文给待升级ECU,待升级ECU接受后进入拓展诊断会话;
步骤S14,程序控制,发送例程控制服务,检查待升级的ECU电源、当前工作状态是否满足更新条件。


7.根据权利要求1所述的一种基于文件系统的ECU更新方法,其特征在于,所述ECU包括Bootloader和文件系统,其中,文件系统采用Window、QNX、Android、Lunix操作系统中的一种。


8.根据权利要求7所述的一种基于文件系统的ECU更新方法,其特征在于,所述步骤S2具体包括:
步骤S21,待升级的ECU与外部设备进行安全访问成功,则继续执行步骤S22,若外部设备与待升级的ECU进行安全访问失败,则等待预设时间,继续进行下一次的安全访问,若在预设的访问次数或预设时间内建立安全访问失败,则结束进程。


9.根据权利要求8所述的一种基于文件系统的ECU更新方法,其特征在于,在安全访问过程中,操作系统存储有外部设备的数字证书和ECU数字证书,数字证书由可信的数字证书中心分别颁发,采用双向认证模式,搭建PKI平台,负责客户证书的发放和管理,并采用动态对称密钥加密通信通道;
ECU操作系统与外部设备通过各自的数字证书并遵循HTTPS协议进行双向认证,并确定两者通信的会话密钥sessionkey,两者的后续通信均通过会话密钥sessionkey加密。


10.根据权利要求8所述的一种基于文件系统的ECU更新方法,其特征在于,安全访问失败包括ECU被锁住,锁住的条件包括:接收到另外一个安全访问请求...

【专利技术属性】
技术研发人员:肖文平黄飞张航陈柱
申请(专利权)人:上海赫千电子科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1