OTA到底对控制器做了什么?
随着特斯拉将OTA的功能引入到汽车中,汽车行业发生了新的范式革命,智能汽车相比传统汽车成为新物种的存在,OTA不仅是汽车不断成长的“生命通道”,更是成为了车企新商业模式的“黄金通道”。
OTA到底对控制器做了什么?
现如今整车OTA是一个非常热门的话题,无论是新势力还是传统主机厂都极力宣传自己的OTA能力,但目前市面上所有的OTA都是不够彻底的OTA,我们称之为半OTA。
当厂家说OTA时,他在说什么?
OTA:空中升级(ON THE AIR)是通过无线通讯网络,实现对汽车控制器MCU里的软件进行更新。
这里面有一个许多人搞混淆的问题,OTA更新MCU哪一部分的软件?要想回答这个问题需要我们首先得知道汽车控制器是什么?
汽车控制器本质上就是一个嵌入式系统的单片机MCU,可以完整实现特定的功能。
嵌入式单片机MCU的最大特点是,它的硬件结构会根据实现功能的差异而进行裁剪。
与强大的个人计算机(PC)不同的是,结构简单功能单一的控制器单片机的内部软件代码有两大类,一部分是操作系统、用户数据、标定数据等代码,统称为应用程序(APP),另一部分则是运行引导程序(Bootloader)。
Bootloader是一段独立的代码(这段Boot代码一般是出厂预置,或使用编程器烧录的,通常只有1k或4k,占用一块独立的Block,当系统上电之后,Bootloader可以进行关闭WATCHDOG、改变系统时钟、初始化存储控制器、将更多的代码复制到内存中等一系列初始化动作,然后再将操作系统内核复制到内存中运行。
简单地说,Bootloader就是一小段程序,它在系统上电时开始执行,初始化硬件设备、准备好软件环境,最后调用操作系统内核进入工作。与之对应的是PC中的BIOS。
由于Bootloader保存在Flash的首地址,MCU上电后,默认从Flash开始的第一个读取栈指针,第二个字就是复位中断的入口,并根据该指针进度复位处理函数中执行相应的函数,由于中断向量表1寻找复位中断处理函数指向Bootloader,所以必然首先进入Bootloader程序中执行,进行初始化设置,然后再进入下一个中断向量表2中执行APP程序的复位中断处理函数。
Bootloader和APP应用程序在嵌入式存储器中的位置如下:
由于我们所有的操作系统和用户数据都放在APP程序中,通过更改这部分数据可以优化控制器的使用体验,所以许多汽车厂家所谓对MCU进行固件更新(FOTA)实际上就是对MCU内存中的APP存储区域进行刷写。
如何对存储区进行刷写?
刷写(在线编程)目前有两种实现方法:在系统编程(ISP)和在应用编程(IAP)。
ISP一般是通过单片机专用的串行编程接口对单片机内部的Flash存储器进行编程,而IAP技术是从结构上将Flash存储器映射为两个存储体,当运行一个存储体上的用户程序时,可对另一个存储体重新编程,之后将控制从一个存储体转向另一个。ISP和IAP很相似,都是不需要把芯片从板子上拔出来,就达到了用PC-MCU的编程接口(JTAG、串口、双绞线、SPI等)搞定新版本的升级目的,但是又有着很大不同。
IAP技术从结构上将Flash存储器中APP程序运行区映射为两个存储体,当运行一个存储体上的用户程序时,可对另一个存储体重新编程,之后将控制从一个存储体转向另一个。支持在应用编程(IAP)的芯片会将内存分3个程序区:1、引导程序区Bootloader,2、APP程序运行区,3、下载区。芯片通过串口接收到下载命令,进入引导区运行引导程序,在引导程序下将new code内容下载到下载区,下载完毕并校验通过后,Bootloader控制擦除原程序并将下载区内容复制到2区,运行复位程序,则IAP完成。
IAP优势:在不改变引导程序区的前提下,对APP程序运行区进行编程,从而优化应用层的软件体验。
为了方便实现IAP刷写,ISO发布了统一诊断标准UDS(ISO14229),用于诊断仪(客户端)和MCU(服务器)之间的会话控制、安全访问、例程控制、DTC读取,MCU软件刷写(软件下载)等服务。
其中在编程会话模式下(Programming Session),先通过$31 01 FF 00指令将Flash中的APP数据擦除,再通过$34+$36服务指令可将软件数据写入到单片机的RAM中,再通过$31 01 02服务指令对内存进行确认,最后重新启动MCU就完成了刷写。
需要指出的是在数据传输层面,根据传输协议的不同分为基于控制局域网的诊断DoCAN(ISO15765)或者基于以太网的诊断DoIP(ISO13400)。
目前车辆的OTA的大致流程是:
1、云端服务器TSP通过无线通讯协议(DDS/MQTT)将要刷新的软件发送给车辆网联模块T-BOX;
2、车辆网联模块T-BOX通过CAN或者Ehernet传输协议发给车辆网关GATEWAY;
3、将车辆网关GATEWAY作为上位机,通过UDS诊断服务对MCU进行IAP刷写;
4、刷写完成后,重新启动,MCU运行新的APP软件。
而ISP一般是通过单片机专用的串行编程接口直接对单片机内部的Flash存储器进行编程。也就是将PC编译完成的MCU可运行的二进制代码文件通过寻址直接编程入MCU内相应的程序存储器中。ISP刷写不仅可以对APP程序进行在线编程,还可以对引导程序区Bootloader进行在线编程。
ISP刷写的硬线连接框图
由于不同MCU的Bootloader支持的刷写方式以及MCU支持的通讯协议不同,导致ISP刷写工具千花百样。比如飞思卡尔嵌入式单片机常用P&E的Multilink刷写工具,一端通过USB串口与上位机连接,一端通过SWD串口与单片机通讯,进入BDM模式刷写。
P&G Mutilink刷写工具
OTA的短板是无法对控制器的Bootloader进行刷写
嵌入式单片机的最大特点是,它的硬件结构会根据实现功能的差异而进行裁剪。
Bootloader的实现严重依赖于具体硬件,在嵌入式系统中硬件配置千差万别,即使是相同的CPU,它的外设(比如Flash)也可能不同,所以不可能有一个Bootloader支持所有的CPU、所有的电路板。即使是支持CPU架构比较多的U-Boot,也不是直接可以使用的,需要进行移植。
目前整车上的控制器是由不同的供应商来提供,每个供应商都会根据自己控制器的功能特点,选择最合适的嵌入式系统硬件。在产品的开发阶段,工程师使用专用烧录工具对MCU的程序进行烧录;然而到了产品的生产阶段或者售后阶段,进行应用程序烧录或升级操作的往往是生产线上的工人,他们不易掌握程序烧录器的使用方法,贸然对Bootloader刷写可能会造成MCU程序崩溃。因此,在控制器开发完成以后,往往会把控制器的JTAG调试口封住以防软件被窥视。
在OTA中,由于每个控制器的Bootloader不同,上位机(一般是网关)是不支持对所有控制器的Bootloader进行刷新的,只能基于CAN或者Ethernet通讯,使用UDS协议对MCU中的APP软件进行刷写。
例如在Bootloader程序中,要求在编程模式下支持UDS的$14清除故障码的服务,就必须修改Bootloader程序,通过OTA就无法实现此功能。
未来,随着域控制器或者中央控制器的发展,汽车控制器数量会减少,硬件配置则向个人电脑PC看齐,如果整车MCU能像PC那样使用一套标准的配置主板,那么通过OTA对Bootloader进行刷写有望成为现实!
相关文章
- 香烟的软盒和硬盒到底有什么区别?相信很多老烟枪也不知道!
- 一杯好茶的共性,到底都是什么?对好茶的色、香、味等衡量的标准
- 到底早上跑步好还是下午好?90%的人都搞错了
- 冬天,电动车铅酸、石墨烯电池、锂电池,续航到底会降多少?
- 方向盘上的RES、SET和CNL按键,到底有啥用?很多老司机都不清楚
- 女人睡觉夹被子,到底有多爽?
- 新车磨合期到底能不能跑高速?看看车主怎么说
- 手上老长倒刺 到底是不是缺营养
- 热车时到底是挂在P档还是N档?很多车主不知道,老司机来告诉你
- 铁路工人收入到底怎么样呢?
- 工龄到底是怎么计算的?缴纳社保15年,退休金可以拿多少钱?
- 五星酒店的“夜床服务”到底是什么?
- 揭秘鲈鱼身世!它到底是河鲜还是海鲜?
- 腊肠到底蒸还是煮?好多人都做错了,难怪又咸又硬不好吃!多加1步,鲜香下饭
- 自驾游到底费不费钱,看完这10个实例,心里就有谱了
- 五常大米到底是什么米?为什么比普通米好吃?
- D挡切换S挡到底要踩刹车吗?
- 经常运动和不运动的人 到底有啥区别 真相让人吃惊
- 整车OTA:莫把卖点变槽点
- “钟表不挂三处,日子越过越富”!到底是哪3处?原来还有这讲究
- 内卷的汽车“OTA” 被卷的消费者
- 汽车OTA技术解析:它是什么以及有何作用?
- 女性内裤到底有多脏?多久才可扔掉?
- 养老金并轨倒计时,到底意味着什么?
- 你到底爱谁歌词
- 煮饺子时,到底用冷水还是热水?听酒店大厨说完,才知我家做错了
- 关于女性的胸型,到底有几种形状?女性应该如何练胸?
- 茶叶到底要泡多久?很多人不知道,牢记3句口诀,泡什么茶都好喝
- 到底有哪些防身工具是合法的?
- 爱因斯坦错了!2022物理诺奖公布,提及的贝尔不等式到底讲了啥?
- 过门石到底有没有必要装?
- 装修到底应该选择木地板,还是选择地砖呢?
- 那么到底为什么有的酒会上头,有的酒不会上头呢?
- 阿杜坚持到底歌词
- 年薪12万和月薪1万,区别到底有多大?
- 雨雾天到底开雾灯还是开双闪?车上这些灯光的使用你都知道吗
- 带你厘清汽车OTA技术原理
- 才知道,换一组质量好的电池到底需要多少钱?天能好还是超威好?
- 磁铁的磁力为什么不会消失?它的能量到底来自哪里?
- 聚拢文胸,女生到底该不该穿聚拢文胸?
- 黄油到底是什么油?为啥我国产量不高只能靠进口,看完长见识了
- 将爱进行到底主题曲
- “十几块”与“几百上千”的T恤,到底有啥区别?内行看门道
- 热!热!热!高温天到底吃什么才消暑
- “吃姜不去皮,吃错一身疾”?吃姜到底要不要去皮,怎样吃才正确
- 体香到底是怎么来的?这几瓶宝藏国货高级平价!关键真好闻
- dota蛋疼集锦背景音乐
- 一站到底主题曲
- 新能源汽车到底是用完电再充,还是有剩余电量时充电好?
- 4S店宁愿不收利息,也要劝你贷款买车,到底有什么猫腻?
- 人造棉到底是什么“棉”?与纯棉有何不同?
- 将爱情进行到底电视剧主题曲
- 私家车到底能开多少年?对比各方面才知道
- 防晒衣,到底是“神器”还是“智商税”?它和防晒霜有什么区别?
- 火爆全网的醋酸面料到底是什么?和真丝有什么区别?
- 整车控制器VCU简介
- 壁纸、壁布、乳胶漆,到底怎么选?好多业主都后悔当初的选择
- 量子力学中的不确定性原理到底在说什么?
- 男戴观音女戴佛 到底是什么意思?
- 传销的鼻祖,庞氏骗局到底是什么?
- 深度解读比亚迪三电终身质保,到底是“套路”还是“实惠”
- “冰丝”到底是什么?为什么让我们觉得凉快?
- 夏天到了,到底该喝啤酒还是白酒?原来区别很大,弄懂再喝益处多
- 人人称赞的娘惹菜,到底有什么魅力?
- 读研3年和工作3年,到底有什么区别?听一听过来人怎么说
- 一站到底的歌曲
- 夏季汽车轮胎容易爆,到底是因为胎压不足,还是胎压过高?
- 劝退员工到底有没有经济补偿金?
- 职场“小人”的真相到底是什么,如果遇到了该如何破局?
- 购买电动车的时候,你是选择锂电还是铅酸呢?到底哪个好?
- 小龙虾的黄到底能不能吃?吃这么多年,原来一直误会了
- 潮汐是怎样形成的?大量海水凭空消失,退潮的海水到底去了哪里?
- 汽车有划痕自助补漆到底靠谱吗?如果喷坏了怎么办?
- 洋酒中的XO到底是什么酒?有钱人都喜欢买来喝,看完后就全懂了
- 特斯拉的三个区域控制器(Zonal)配置
- 眼睛疲劳,到底热敷好还是冷敷好?3个缓解小方法,赶紧收藏
- 夏天把车子停在太阳下,到底会不会被晒坏?如何避免车子遭受暴晒
- 买车到底看什么?看销量数据行吗?学会了买车不吃亏
- 坚持到底歌词
- 你到底爱不爱我歌词
- total eclipse of the heart
- 戴上安全“紧箍”汽车OTA升级终于有据可循
- 什么是个人养老金?如何缴?怎么领?一问到底
- 新手不要纠结剐蹭,小刮小蹭千万不要补漆,到底有没有道理?
- 反渗透净水器,到底该选有罐机还是无罐机
- 房屋所有权的认定,你的房子到底是谁的
- 光年到底是多长?你得先弄清一年有多少天,一天有多少秒!
- 薛定谔的猫到底是什么意思?如何诠释那只“既死又活”的猫?
- 电动车控制器的作用
- OTA到底对控制器做了什么?
- 既然大红袍、铁观音都是乌龙茶,那么乌龙茶到底是红茶还是绿茶?
- 中国一年吃掉50亿只白羽鸡?45天“速成”的鸡到底能不能吃?
- 发动机护板到底有用没用?只有我说出了实话
- 1.5T和 2.0L的差别有多大?家用车到底该怎么选?最好别被忽悠了
- 门窗填缝,到底用水泥还是发泡胶?
- 后视镜上的小圆镜到底需要不需要安装?
- 速溶咖啡,到底是不是咖啡届的“垃圾”?
- 盾牌座UY到底有多大?以现在地球的交通工具,绕其一圈要多久?
- 一篇文章告诉你,多肉到底应该如何浇水
- 电动汽车和燃油车的使用成本到底谁更低?这样算笔账就知道了
- 《水门桥》到底发生了什么?比《长津湖》的故事更加艰苦
- 到底什么样的行业赚钱厉害?
- 女用避孕套到底靠谱吗?女用避孕套的5大好处,男性开始偷偷乐了
- 科普:临街住宅到底买几楼噪音小?
- XO到底是种什么酒?如今很多有钱人为何都在喝?一次性让你搞明白
- 好白酒和普通白酒,到底差在哪?好喝与否不是唯一标准,看完醒悟
- 海南过冬到底热不热?一篇文章让你看懂海南天气
- 社保卡功能越来越多,领养老金也要用,到底怎么用?丢了怎么办?
- 手持蒸汽熨斗,到底是神器还是智商税,用了两年多,说说真实感受
- 到底几点睡觉才算熬夜?坐多久算久坐?总结3个健康小常识
- 新手司机到底该如何给自己的爱车上保险?
- 空腹,到底不能吃什么食物?
- 你到底爱谁
- 素食中的“战斗机”!弹性素食,到底怎么吃?
- 元宵不等于汤圆,关于元宵和汤圆的区别,到底有哪些?
- 喝酒能让人变成“铜人”?喝酒的危害,到底有多少?
- 蔬菜农药残留排行榜,最脏的蔬菜,到底是什么菜?...
- 辛巴徒弟直播翻车,燕窝变糖水,燕窝的问题到底有多严...
- 血栓的“祸根”,到底是哪些食物?...
- 补钙,到底吃什么最管用?...
- 猪肝含有胆固醇,经常吃猪肝到底好不好?...
- 红枣不补血,红糖也不能补血,到底吃什么能补血?...
- 九毛九的酸奶,到底是用什么做出来的?看清楚这三个字...
- 减肥想省事,代餐减肥效果到底如何?...
- 主食蔬菜天天吃,主食吃多了会肥胖?多吃菜到底吃多少...
- 很多人服用谷维素治疗失眠,谷维素到底是是什么?能治...
- 都说要多喝水才健康,到底喝多少水才行?...
- 丁香医生起底权健骗局,保健品到底还能不能吃?营养师...