谈谈对整车OTA系统的理解
汽车OTA系统概述 汽车OTA(Over-The-Air)技术分为SOTA(软件升级)和FOTA(固件升级)。
OTA 类别
从更新的范围来看,OTA分为SOTA(software-OTA)和FOTA(firmware-OTA)。
SOTA通俗点说是应用程序升级,是一种小范围的应用软件更新,比如你在手机上更新个抖音,这种就是SOTA。SOTA通常应用在座舱控制器,以及后续电子电气架构升级后的中央计算单元以及大型域控制器等。比如座舱控制器中的地图更新、主题壁纸更新、仪表盘风格更新等,特斯拉2019年10月的V10车机更新中影院模式、卡拉OK、地图功能升级、茶杯头游戏,这些就是SOTA。
由于SOTA的升级范围比较小,对控制器的影响也比较小,因此升级的前置条件也比较宽松,比如在主机厂的控制器的UDS升级规范中,通常要求在升级前检查蓄电池电压是否合适、车辆档位、车速、高压等,对于SOTA来说,可能档位、车速、高压都不用看了,车边开边升级。
FOTA是固件升级,需要将控制器的整个软件重新刷一遍,来达到系统功能完整的升级更新或者是bug的修复,这里就类似于以前Android手机的刷机,电脑的重装系统。目前像整车控制器、DCDC、电机控制器、BMS的升级都是FOTA,比如电机控制器的IGBT的过流故障的保护策略有漏洞,需要更新软件;2020年4月特斯拉为Model S和Model X Peformance的升级,将百公里加速缩短至2.3s,车辆热性能提升3倍,升级弹射模式,这些就是FOTA。
由于FOTA升级会影响整个控制器的功能,因此升级前置条件会很严苛,正如前面说,升级前需要检查蓄电池电压是否合适、车辆档位、车速、高压、点火信号等。
车辆OTA系统组成
为了实现车辆上控制器的OTA,主机厂必须搭建整个OTA系统,其简要架构如图所示。整个系统由OTA云端服务器,OTA终端,一般为T-Box,OTA对象——车载控制器组成。
OTA云端服务器
OTA云端服务器包含主机厂支持OTA升级的控制器全部的完整的升级包。OTA云端的设计要求是独立的平台,支持多车型、多型号规格、多种类型ECU软件的升级。OTA云端的框架结构主要包括五部分:OTA管理平台、OTA升级服务、任务调度、文件服务、任务管理,如图所示。在安全性方面,支持多种安全加密和解密算法,例如常用的对称加密算法DES、AES等和非对称加密算法RSA、DSA。
OTA终端
OTA终端主要包含OTA引擎和OTA适配器,其中OTA引擎是一个连接OTA终端与OTA云端的桥梁,实现云端同终端的安全通信,包括升级包下载、升级包解密、差分包重构等功能。OTA适配器是为兼容不同的软件或设备的不同更新逻辑或流程,根据统一的接口要求封装的不同实现。升级适配器由需要OTA升级的各个ECU软件实现提供。
OTA对象
OTA对象就是车上能支持OTA的控制器,主要包括座舱控制器、ADAS控制器,以及车内嵌入式控制器。为了支持OTA功能,控制器必须具有软件备份功能,也就是A/B分区,简单的来说,控制器会存两份软件,一份为当前最新,另一份为上一次的。当更新异常或者更新失败后,可以用回上一版的软件。保证控制器不会刷死。
OTA流程
在车辆出厂之前,主机厂通常需要将车型和车辆信息录入到OTA云端的信息管理系统中。然后当车出售给用户后,车辆OTA终端首先要在OTA云端进行注册激活。OTA终端上传自身 SN 及车辆 VIN 向OTA云端服务端申请证书, VIN 及 SN 验证合法后(SN 是否在已激活列表中),后台将下发证书,修改车辆状态为已激活。这样终端与云端的通信链路已经建立。
当市场用户反馈或者是主机厂内部测试控制器软件存在Bug时,各个控制器的供应商修复问题,然后后向主机厂提供软件升级包,在主机厂内部走完测试、验证和签字发布流程后,进入到OTA云端服务器的待升级软件列表。
然后由OTA的管理人员创建OTA升级对象,升级计划以及升级内容,并下发通知到对应的用户车辆。
用户根据中控屏幕的提示,在合适的时候确认升级,OTA终端开始从云端将软件包下载下来。这里有两种情况,如果本地没有当前版本软件包的备份,则申请下载当前版本的全量包,如果有,则下载当前软件包的差分包。
差分包的原理是通过差分算法,常用的为Xdelta 算法、 Vcdiff 算法、 Bsdiff 算法 ,在OTA云端对比新软件包与旧软件包的差别,然后生成一个差分包,将差分包下载到OTA终端后,再将其与本地存的旧文件进行对比,还原新软件包。
当OTA终端完成新软件包的下载,以及校验和验签后,在满足对应ECU的刷写条件的时候,比如上面提到的车辆的状态:蓄电池电压、车速、高压状态,以及OTA终端当前的状态(如图所示),都符合条件后对ECU进行软件更新。
在升级过程中,OTA终端要把ECU升级进度及时上传给OTA管理服务器 ,升级完成后汇报升级成功结果 。
整个OTA升级流程

OTA系统的安全机制
整个OTA系统的安全需要从OTA云端到OTA终端以及OTA对象的整个链路进行全方位的防护。从软件上传到OTA云端、OTA云端到OTA终端以及车辆内部升级过程的各个环节,都采用适宜的加密机制来提升整个升级过程的安全性,包括OTA云端的权限限制、证书验证、签名验证和权限验证。
在软件包下载前,OTA云端和终端首先使用 PKI/CA 认证系统进行双向身份验证。验证通过后,云端和车辆端会建立基于 TLS 安全协议的安全通信通道,该通道保证云端与车辆端之间信息传输的安全性。在车辆内部, T-Box、IVI车机和网关之间的交互信息采用私有协议密文传输,升级固件的加解密通过在 T-Box、 IVI 和网关内部集成的硬件安全模块进行,同时硬件安全模块还能保存加密秘钥,防止软件包被篡改。
当OTA终端对新软件包完成安全校验后,开始对特性控制器进行软件更新,这里的安全策略通常是采用对软件包二进制文件的CRC校验,诊断的0x27或者SFD进行权限校验来保证。这些验证后,开始通过UDS协议将新软件下载到控制器中。
优质知识付费,不定期更新,欢迎大家加入,前50名加入者可联系本人领取优惠券~~!先到先得哦。。。。。。
更多推荐


所有评论(0)