0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文详解OTA无感升级技术

OTA升级 来源:OTA升级 作者:OTA升级 2022-04-08 11:15 次阅读

OTA正在成为智能汽车不可或缺的关键能力,其具备的减少召回成本、快速响应安全需求、提升用户体验等优势,可以通过远程实现功能的持续迭代,在发现软件故障或漏洞的时候,及时快速地实现线上召回,极大地减少车企线下服务压力和运营成本。

然而“OTA升级”这件事情本身,也不是那么容易的事情,部分新势力造车因升级在路上“趴窝”的事情也不在少数。随着汽车智能化的发展,主机厂以及消费者对OTA的期待不断上升,为了给车主更好的升级体验,很多主机厂宣布实现“无感化”OTA升级。2021广州车展上,小鹏汽车发布了最新一代的 X-EEA3.0 电子电气架构。该电子电气架构的域控制器均作内存分区,一个区用于升级,一个区用于车辆正常运行,从而在升级期间不影响车辆使用,实现了无感化OTA;威马EX5发布实现了娱乐系统的无感OTA,在升级过程中,对用户驾驶体验的影响可以降到最低;福特EVOS拥有了远程OTA无感升级的能力,激起了不少汽车迷的好奇心。相对不打扰用户的情况下,让车端软件实现近乎无感的升级,无感升级技术是怎样做到的?今天我们来聊一聊无感知升级这件事。

1、什么是无感升级?

“无感知升级”,目前没有专业的学术定义。要想理解“无感知升级”,可以从“无缝升级”入手。所谓的“无缝升级”,英文即seamless update。这个概念,在Android领域有广泛的共同认知。我们可以这么理解:传统的安卓设备升级,有一个Android主系统和一个Recovery系统。Android主系统负责提供系统主要的应用功能 ,并完成升级包的下载与部分校验工作,然后进入Recovery系统,在Recovery系统内完成对系统的升级。但是,这里存在的问题就是,一旦Recovery系统内升级出现问题,就会导致系统存在不可用的风险。解决方案之一就是引入A/B系统。可以这样理解,设备具备A/B两个系统,在同一个时刻,只有一个系统处于激活正常工作的状态,另一个系统处于非激活的工作状态。假设当前A系统处于激活态。这样,如果系统性能良好,我们可以实现在A系统正常提供各种应用功能的情况下,去升级B系统。即使B系统升级失败,也不会影响A系统正常提供功能。然后在合适的时机,例如跟随整车电源模式切换而重置设备,切换至新的升级成功的B系统。A/B系统切换方式,从用户使用的感受来看,仅经历了一次重启。在重启过程中即完成了软件系统升级,被定义为“无缝升级”,这也是部分主机厂“无感知升级”的基础实现模式。

2、无感升级的过程

车辆OTA远程升级一般包含“版本检查”、“下载”、“安装”和“激活”四大流程。“无感下载”:如果车辆自动与OTA后台进行版本比对、获取升级任务、并自动完成下载,因此用户对“下载无感知”。“无感安装“:A/B系统切换的过程(从A更新至B系统的过程),这一过程是在车辆运行时执行完成的,因此用户对OTA远程“安装无感知”。最后,车辆重新上电时,设备完成系统切换(这期间就涉及到需要客户授权、确认升级等),这一过程是激活过程,这一过程是能感知到的过程。可见,对具备“无缝升级”能力的设备升流程而言,用户能感知到的过程,仅为新软件系统“激活”的过程。耗时可能达数十分钟的B系统切换。“无感升级”,可以大大缩短集成了复杂功能的域控设备的车辆用户可感知的升级时间,减小了驻车升级时对车辆电量的消耗、缩短了客户的车辆不可用时间,也保证了系统本身始终的可用性。

3、无感升级的应用

目前,我们看到的“无感升级”,还局限于具有Linux、Android等系统的设备。这些设备系统,在支持“无缝升级”的能力之后,就需要去考虑如何在保证设备可正常提供功能的情况下,实现对非激活系统的更新。事实上,“无缝升级”已经在很多车机系统、ADAS系统上都获得了支持,只不过当前很多主机厂仍是在车辆驻车后,去执行对B区域的更新。而“无缝升级”向“无感升级”的跨越,即是在车辆运行时执行完成B系统的升级过程,这对设备系统的性能与安全性也提出了一定要求。目前市场上多数案例还是集中体现在座舱域。随着整车电子架构向域控架构、区域控制架构演进,核心的控制设备,逐渐都会引入“无缝升级”能力。未来,为了追求更短的整车升级时间、为客户提供更好的升级与功能使用体验,也会成为大家追求的一个技术方向。

4、无感升级在SOTA和FOTA上有什么区别?

对于SOTA、FOTA的定义可以笼统的理解为:SOTA指系统“软件”层面的升级,即不影响设备系统运行环境本身,可以在系统持续提供业务功能的情况下,完成对“软件”的升级。例如车机上的各类Android应用软件。而FOTA指系统的“固件”升级,即影响设备系统本身,“固件”的损坏会导致系统主体功能不可用。在SOTA层面,“无感升级”目前得到了较多的应用,这是由Android等系统本身的系统特性,所带来的优势。一般在经历应用本身重启,或者跟随系统一起重启之后,新的软件版本即可被激活使用。而在FOTA层面,除了需要实现针对域控等智能设备从“无缝升级”向“无感升级”的跨越,另一个不可忽视的就是传统的电子控制单元ECU的“无感升级”。对于这一类ECU,一般包含Bootloader,Application与Calibration。Bootloader提供了ECU刷写软件与标定的能力。一方面,受限于成本考量等因素,ECU一般不会具备“A/B”区域环境,即升级时,需要将软件与标定擦除,然后重新写入;另一方面,这类ECU一般是通过CAN以太网总线使用诊断的方式进行刷写,即数据包的传输与写入是在同一时间段内反复执行的,为了保证刷写的成功率、提升诊断数据传输效率,需要静默车辆总线常规通信信号,这会导致整车零件之间丢失通信基础,众多功能无法使用。因此,这一类ECU的升级,往往需要驻车、锁定车辆状态、进入特定的OTA升级模式等,即车辆在升级过程中是无法使用的,升级过程对于车辆用户而言是“有感”的。想要让此类ECU的升级行为也变得“无感”,一方面需要解决数据包的传输问题,另一方面,ECU本身要支持类似于“A/B”的系统特性,提供备份冗余,或者实现软件内容A/B区域的地址映射。虽然技术上,已经有芯片提供了成熟的解决方案,但是在“缺芯”的大环境背景下,价格问题更加凸显,应用的进展较慢。所以一方面我们看到宣传支持“无感升级”的车辆,整车升级时间,仍需要30分钟左右。其实就是节省了具备“无缝升级”能力的设备的B系统升级时间,但是FOTA时常规ECU进入Bootloader的时间暂时仍会拉长整体的升级时间。另一方面,车辆制造商短期内,要善用“时间”换“空间”。即提供预约升级、手机远控升级等方式,将升级时间安排在用户不用车的时间段内,节省引入设备额外存储空间的成本,缓解车辆升级时不可用可能给客户带来的用车焦虑。

最后

“无感升级”的实现,依赖零部件自身需要具备“无缝升级”的能力。针对具备“无缝升级”的零件,艾拉比的差分升级程序,支持“In Place”与“A/B”两种升级模式。无论是Hypervisor架构下的QNX + Android系统,还是Android系统的动态分区特性,都能得到良好的支持。另外,从整车OTA解决方案来看,艾拉比一方面支持为具备“无感升级”的零件,设定独立的升级过程,保证升级无感、安全地执行,另一方面也支持为不具备“无感升级”的零件,提供并行刷新、回滚等升级策略,保证升级成功率、提升升级效率。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 软件
    +关注

    关注

    67

    文章

    4347

    浏览量

    85617
  • OTA
    OTA
    +关注

    关注

    7

    文章

    522

    浏览量

    34591
  • 智能汽车
    +关注

    关注

    30

    文章

    2615

    浏览量

    106388
收藏 人收藏

    评论

    相关推荐

    技术帖 | RK3568开发板的OTA升级教程

    将通过飞凌嵌入式OK3568-C开发板来为大家介绍OTA升级的流程,本地升级程序recovery执行升级的流程及技术细节。
    的头像 发表于 04-20 08:01 333次阅读
    <b class='flag-5'>技术</b>帖 | RK3568开发板的<b class='flag-5'>OTA</b><b class='flag-5'>升级</b>教程

    请问BlueNRG ota升级ota_sw_activation变量上电是随机值吗?

    最近在看BlueNRG ota升级代码时有个疑惑,ota_sw_activation变量是个未初始化的值,按照ram特性上电应该是
    发表于 03-13 08:29

    ota升级是什么意思 ota升级有什么用

    OTA(Over-the-Air)升级是指通过无线网络,将软件、固件或系统的新版本传输到支持的设备上进行更新和安装的过程。这一技术广泛应用于手机、智能电视、汽车等各类智能设备中。本文将详细介绍
    的头像 发表于 02-02 10:25 2489次阅读

    OTA云平台架构及关键技术

    OTA 是 Over the Air 的缩写,通常指的是远程无线方式,OTA 技术可以理解为一种远程无线升级技术。在无特别说明情况下,本文所
    发表于 01-02 10:03 675次阅读
    <b class='flag-5'>OTA</b>云平台架构及关键<b class='flag-5'>技术</b>

    如何通过雅特力AT32WB415的蓝牙模块来进行OTA升级

    概述OTA(Over-The-AirTechnology)即空中下载技术,利用OTA技术可以在不接触(接线)的情况下对芯片程序进行升级。AT
    的头像 发表于 12-20 08:15 284次阅读
    如何通过雅特力AT32WB415的蓝牙模块来进行<b class='flag-5'>OTA</b><b class='flag-5'>升级</b>

    如何通过AT32WB415的蓝牙模块来进行OTA升级

    AT32WB415 OTA Application Note描述了如何通过AT32WB415的蓝牙模块来进行OTA升级
    发表于 10-26 06:43

    如何“助攻”物联设备远程OTA升级

    OTA升级为软件提供持续迭代更新的能力,逐渐成为物联网设备的佳选。本文以ZigBee物联网网关为例,介绍ZWS物联网云平台为物联网设备提供的远程OTA升级服务。应用场景
    的头像 发表于 10-14 08:25 367次阅读
    如何“助攻”物联设备远程<b class='flag-5'>OTA</b><b class='flag-5'>升级</b>

    CH573 CH582 OTA例程讲解(方式:带库升级移植)

    EVT例程中提供了两种OTA方式,在EVT中BLE目录下有个PDF说明:WCH蓝牙空中升级(BLE OTA) 方式是带库
    发表于 09-28 10:57

    手把手教你OTA升级开发

    和misc分区的分区表。updater分区大小不小于32M。 **1、OTA升级实现原理 1.1 OTA实现主要流程:**1.2 升级服务组件 升级
    发表于 08-22 09:13

    详解蓝牙空中升级(BLE OTA)原理与步骤

    如何实现BLE OTA?什么叫DFU?如何通过UART实现固件升级?又如何通过USB实现固件升级?怎么保证升级的安全性?什么叫双区(dual bank)DFU?什么叫单区(single
    的头像 发表于 07-10 09:36 3936次阅读
    <b class='flag-5'>详解</b>蓝牙空中<b class='flag-5'>升级</b>(BLE <b class='flag-5'>OTA</b>)原理与步骤

    嵌入式OTA升级的原理

    OTA:Over-the-Air Technology,即空中下载技术
    发表于 07-05 10:37 522次阅读
    嵌入式<b class='flag-5'>OTA</b><b class='flag-5'>升级</b>的原理

    STM32的OTA远程升级

    上次发过SD卡的Bootloader离线升级后,应大家的要求,这次就讲一下STM32的OTA远程升级OTA又叫空中下载技术,是通过移动通
    的头像 发表于 06-22 10:01 6472次阅读
    STM32的<b class='flag-5'>OTA</b>远程<b class='flag-5'>升级</b>

    帮忙推荐带驱动的方案BLDC方波

    帮忙推荐带驱动的方案 BLDC方波
    发表于 06-16 06:35

    OTA为什么会升级失败?

    如今,几乎所有可联网的电子设备都支持远程升级OTA)功能,OTA 一是让电子设备能够支持更多的功能,二是能够修复一些应用程序中的漏洞。
    发表于 06-15 17:34 1885次阅读
    <b class='flag-5'>OTA</b>为什么会<b class='flag-5'>升级</b>失败?

    基于电流误差和PLL估算的FOC算法MATLAB代码生成技术直播资料

    运行5HZ也能工作。 以上技术包括表贴电机和凸机电机都能做到。 为什么要直播:FOC是行业难点,包括重载,速度闭环等算法是行业难点,也是让广大工程师头疼的事情。苦于没有好的解
    发表于 06-14 11:36