ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

智能网联汽车TBOX详解:从硬件架构到OTA与远程诊断实践

智能网联汽车TBOX详解:从硬件架构到OTA与远程诊断实践 做智能网联汽车的这两年哪个岗位都得跟TBOX打交道。不管你是搞车控、搞云端、搞测试还是做售后只要你碰过远程控车、OTA升级、远程诊断这些功能你就绕不开一个藏在车里的通信盒子——TBOX。TBOX全称Telematics Box翻译过来叫远程信息处理终端但它干的事远不止“信息处理”这么简单。在智能网联汽车里它是整车对外通信的核心节点也是手机App和车辆之间的“对话窗”。说人话就是车里的数据要靠它传出去云端下发的指令要靠它接进来甚至很多ECU能不能正常工作都要看它脸色。这篇文章就围绕TBOX的核心功能、软硬件架构、应用场景以及我在实际开发测试中踩过的坑做一次完整梳理。内容覆盖从原理到量产从台架测试到实车联调适合刚入行的工程师也适合产品、测试、售后人员快速建立对TBOX的系统认知。1. 先搞清楚TBOX在整车架构里的位置1.1 一句话定义加生活化类比官方定义不啰嗦了我更喜欢用一个类比来解释TBOX如果整车是一套房子的各个房间那TBOX就是这套房子的门房兼通信总机。各个房间ECU、座舱、自动驾驶域自己内部怎么生活都行但只要需要跟外界联系——手机App、云平台、售后服务器、国家监管平台——消息都必须经过这个门房。从整车网络拓扑来看TBOX的位置非常特殊。它一边接车辆内部网络最常见的是CAN总线现在越来越多是车载以太网另一边接外部网络比如4G/5G蜂窝网、GNSS卫星定位系统某些方案里还接V2X通信。也就是说TBOX是典型的“跨内外部网络的双向网关”。这就带来一个很关键的设计约束它不能只做硬件转发而是要同时管理车内协议和车外协议而且必须做严格的网络隔离。车内是CAN、UDS、SOME/IP、DOIP这些汽车行业协议车外是公网上的TCP/IP、MQTT、HTTPS两边报文格式、通信模型完全不同全靠TBOX在中间做转换和承载。1.2 从“远程锁车盒子”到整车数据出入口TBOX这产品其实不是新东西早期远程控制功能很原始主要就是车主打电话给客服客服再通过后台往TBOX发指令帮忙开门、锁车、定位。那时候TBOX更像一个车载电话加GPS定位器。真正让TBOX从一个“可选配置”变成“刚需零件”背后有三股推力新能源车远程监控监管要求要求车辆实时上报位置、电池电压、整车状态等数据。OTA远程升级成为卖点和售后刚需整车厂要通过TBOX这条链路远程升级车机系统、自动辅助驾驶相关控制器甚至动力域控制器。车联网安全和个人隐私保护要求越来越高TBOX作为对外暴露面积最大的入口被推到信息安全防护的第一线。现在再看TBOX它本质上已经变成整车的“数据出入口”和“安全边界”。甚至在一些中央计算架构里TBOX的很多功能被集成进座舱域控制器或中央网关里但独立TBOX方案依然大量存在原因也很实际独立盒子出了问题不影响其他域、升级不牵连主控、硬件选型和通信模组迭代也更灵活。2. 拆解TBOX的硬件架构与选型逻辑2.1 核心硬件模块清单TBOX的硬件设计方案各家厂商略有差别但主流通用结构基本都包含下面几大块模块常见方案核心职责通信模组4G/5G模组Cat4、Cat1、5G车载模组都有蜂窝网络上下行数据通信GNSS定位模块GPS/北斗双模模块经纬度、时间、车速定位主处理器MCU或SoC常见如瑞萨RH850、英飞凌AURIX、NXP S32K也有用高通/芯驰等SoC的方案运行协议栈与应用逻辑CAN收发器多路CAN通道接动力CAN、车身CAN、诊断CAN以太网接口100M/1000BASE-T1 PHY接网关、座舱域、ADAS域安全芯片/HSM独立SE或MCU内置HSM模块密钥存储、签名验签、安全启动SIM/eSIMeSIM已成主流入网鉴权与数据流量电源管理宽压输入、低功耗LDO、DCDC常电供电、休眠唤醒、电压防反备用电池超级电容或小电池车辆断电时维持TBOX紧急上报这里面最容易被低估的是通信模组选型。很多刚接触TBOX的工程师会问4G模组不是随便选一个都行吗实际上差别很大。车规级模组要满足AEC-Q100工作温度要求覆盖-40℃到85℃要求有很强的抗电磁干扰能力还要支持VoLTE、双卡、GPS组合定位等。更关键的是模组厂家提供的软件SDK成熟度直接决定项目周期如果底层AT指令或PPP拨号不稳定上层应用功能做得再好也会被拖死。2.2 双核主控方案为什么流行很多TBOX内部并不是“一个芯片干所有事”而是用两颗甚至三颗处理器配合这也是我见过最多也是踩过最多坑的架构。一种典型的双核设计是一颗MCU负责CAN通信、电源管理、网络管理、诊断功能一颗SoC/模组负责4G/5G通信、MQTT/HTTPS协议、OTA升级包处理、网络安全。两者之间通过UART、SPI或USB连接再通过一套内部通信协议交换数据。为什么要拆开原因很实际可靠性隔离。MCU侧跑的是跟车辆安全相关的逻辑比如碰撞后上报、远程诊断唤醒、网络休眠唤醒如果和复杂的Linux/高通应用系统绑在一起一旦应用系统崩溃或死机安全功能就废了。认证难度不同。MCU侧通常按ISO 26262功能安全等级要求开发而SoC/模组侧更多按网络安全和稳定性要求做混在一起会大大增加认证难度和测试复杂度。通信软硬件迭代快。4G升5G换模组就可以了不需要动CAN网络管理那一套核心逻辑。当然单SoC方案也有尤其在新架构里用高通车规级平台直接做TBOX主干一样能跑。但量产项目里双核甚至多核方案占的比例还是明显更高原因就是上面说的——各司其职出问题时方便定位。2.3 天线与射频设计经常变成项目隐形杀手TBOX的通信质量不只是看模组性能天线设计和整车安装位置影响特别大。GPS天线放哪、4G主天线放哪、分集天线放哪这些在原型阶段好像无所谓到了整车阶段就会变成隐形杀手。我见过一个很典型的案例项目测试时远程控车时好时坏后台看日志发现TBOX的4G信号RSRP在-105dBm到-118dBm之间反复横跳经常处于弱信号边缘。查到最后发现是GPS天线和4G天线距离太近GPS信号线屏蔽又没做好互相产生干扰。后来把天线在车顶位置重新布置问题直接消失。所以搞TBOX开发从一开始就要请天线工程师介入而不是等实车测试再去“救火”。弱信号下断线重连、弱网丢包、GPS漂移这些车规级指标很多都跟天线布置和整车EMC强相关不是写几行代码就能优化的。3. TBOX的软件栈与通信协议3.1 车载侧软件分层TBOX软件不像座舱那样跑一堆应用它的核心要求是稳定、低功耗、实时响应。软件结构大体分几层底层驱动MCU外设、模组控制、电源管理、看门狗、NVM存储。通信栈CAN/CANFD驱动和协议栈、以太网TCP/IP协议栈、SOME/IP或DoIP等。网络管理CAN网络管理和以太网NM负责总线休眠唤醒。诊断栈UDS诊断协议实现包括28服务、3E服务、19服务、22服务等。应用层包括远程指令处理、数据采集与上报、OTA升级控制、规则引擎、安全管理。上行云协议MQTT/HTTPS/私有二进制协议负责跟云端平台交互。很多初入行的同学会问为什么TBOX要谈网络管理因为TBOX常年挂在蓄电池常电上如果不管理总线、不及时休眠整车静态电流会超标放两天车就没电了。所以TBOX必须根据总线活动、整车电源状态、网络管理报文决定自己什么时候进入休眠、什么时候允许唤醒。这块设计不好会出现“掉电后CAN线上还有报文导致整车无法休眠”“休眠后远程唤醒失败”等经典问题。3.2 车云通信协议选型MQTT、HTTPS、还是私有协议TBOX往云端上报数据主流方案有三种MQTT、HTTPS、私有长连接TCP协议。MQTT是目前用得最多的。它是轻量级发布/订阅协议基于TCP长连接支持QoS等级和质量保证适合大量终端与云端之间频繁小流量交互。远程控车、状态上报、OTA指令下发用MQTT都合适。另一个优点是云平台对MQTT支持成熟像AWS IoT、阿里云IoT、EMQX这些都能直接对接。HTTPS更适合不频繁、请求响应式的交互比如车辆注册、文件上传、查询套餐流量。但每次连接握手成本高不适合做消息实时推送。私有长连接协议主要出现在早期车联网平台好处是报文紧凑、流量可控、控制力强坏处是生态封闭、对接成本高。现在新项目很少从零写私有协议了大多用MQTT再包一层私有业务字段。我的建议是新项目直接选MQTT做消息通道业务数据放在Payload里用JSON或Protobuf编码简单又灵活。但要注意MQTT本身就是明文消息必须叠加TLS加密、双向认证、设备证书等安全措施不能裸着传。3.3 一条远程诊断指令的完整链路TBOX远程诊断是典型“车云协作协议转换”的场景链路很长能体现TBOX关键作用车主的手机App发出一条“读取电池SOC”请求这条请求到云端后云端根据车辆编号定位到对应TBOX连接云端向TBOX下发一条带Token、带签名、带诊断参数指示的消息TBOX收到后先做消息合法性校验然后根据消息里指定的目标ECU地址、诊断服务ID和参数执行一次UDS诊断请求把请求发到对应的CAN通道或者以太网通道上目标ECU返回诊断响应TBOX再按原路径把响应数据封装回传云端最终展示到App界面上。这条链路看起来不复杂实际开发时最容易出问题的地方在哪一是超时控制CAN诊断响应通常要求几十毫秒到几百毫秒而云端链路可能几秒延迟两边超时要协调好。二是DTC状态的转换关系远程诊断后故障码要不要清除、什么时候清除都涉及状态机。三是安全认证不是任何时间任何人都能对车辆下发诊断请求TBOX要实现防盗刷逻辑。4. TBOX的五大核心功能个个都是刚需4.1 远程控制与车辆状态上报远程控车是TBOX最早被用户感知的功能也是最能体现智能化体验的功能。典型场景包括远程解闭锁、远程启动发动机/空调、远程开后备箱、远程寻车、远程充电管理。用户通过手机App点一下按钮App发消息到云端云端下发到TBOXTBOX再控制车身CAN或网关执行对应动作。远程控车背后有两件事容易被忽略。第一件事是状态同步问题App上显示“已解锁”但实际上执行失败这种错误状态如果没做好回滚提示很容易造成用户体验崩溃。所以在我的经验里远程控制的消息链路必须设计完备的执行状态机包括指令下发、执行中、成功、失败、超时而且状态变化要通过推送实时同步给App。第二件事是安全防护车辆解锁这种敏感操作不能只靠简单口令必须做消息签名、时间戳校验和防重放攻击。数据上报则与控车相反它是从车到云的持续数据流包括车辆位置、车速、里程、续航、电池SOC、车门车窗状态、胎压、报警事件等。这些数据是后端所有业务的基础车况查询、行程管理、故障预测、UBI保险计算全都要依赖这些上报数据。4.2 OTA升级通道TBOX是最关键的一环OTAOver-The-Air空中升级是智能网联汽车的一个重要卖点也是售后成本优化的关键工具。TBOX在OTA体系里承担的角色不总是同一种取决于架构设计。在一些架构里TBOX直接把升级包下载下来再通过总线把固件刷到目标ECU这种情况下TBOX是主控者要负责整包或差分包校验、签名验证、ECU刷写时序、失败回滚、Flash缓存管理任务非常重。在另一些架构里TBOX只作为传输通道OTA云平台下发的升级包通过TBOX转交给座舱/智能网关或其他域控制器由目标控制器自行执行升级。TBOX需要做的就是把大数据流可靠转发下来并对升级状态进行上报。不管哪种模式TBOX侧有几个点必须做好断点续传和弱网重试升级包下载一半断网了不能从头再来升级包加密和签名校验防止升级包被篡改或植入恶意代码升级过程中的电源和总线稳定性保障升级途中突然断电很容易把控制器刷成“砖”所以好多方案会限制低电量下不允许OTA升级失败要能回滚到上一个可用版本。4.3 远程诊断与故障预警远程诊断的应用分两个层面。一个层面是售后场景的远程诊断车辆出现故障后售后人员不需要用户必须把车开到4S店先从云端请求TBOX采集故障码和关键数据流远程判断故障原因甚至在很多情况下远程刷写程序或重新标定参数就直接把问题解决掉了。这大大降低售后成本也极大提升用户满意度。另一个层面是主动预警TBOX会上报BMS报警、电机控制器故障码、胎压异常、电池热失控预警等信息云端收到之后根据规则判断风险等级推进给用户App推送或者售后系统生成工单。这部分对数据实时性和可靠性要求更高也直接影响安全管理评价。做远程诊断功能时我最深的一个感受是诊断逻辑本身并不复杂UDS那些服务谁都能写难的是诊断链路的稳定性和可追溯性。需要TBOX在通信日志里把每一次诊断请求、响应、超时、失败原因都记录得清清楚楚出了问题才能快速定位是云端、链路、还是总线上哪个环节的问题。4.4 数据采集与监管合规新能源车远程监控是TBOX的一个硬性刚需。按照新能源车的远程服务与管理相关标准需要把车辆的定位、行驶、动力电池状态包括单体电压最高最低值、温度最高最低值、SOC等以及驱动电机状态、整车状态等数据定期上报到企业平台和国家监管平台。这块功能看起来是“定时上报数据”实际工程量不小。它要求TBOX数据采集能覆盖CAN总线上各种信号并且要和BMS、VCU、MCU等控制器对好周期和信号定义要设计本地缓存机制网络断掉时能屯数据网络恢复后把缓存补传出去保证数据连续性还要做数据差分与压缩毕竟蜂窩流量也是成本不能每天几GB往上跑。另外要说明的是这套上报体系和用户隐私数据采集不一样它属于监控类数据必须做好数据加密传输和访问控制接口权限要严格管理防止数据被泄露或滥用。4.5 信息安全防护体系现在做TBOX“安全功能”不是可选项是默认项。TBOX暴露在公网面临的攻击面非常多网络接入层可以模拟基站、抓包分析应用层可以尝试伪造消息、重放攻击、篡改指令本地接口可以物理探测调试口、读取Flash、提取密钥汽车总线侧可以逆向分析CAN报文。TBOX该做的基础安全建设至少包括安全启动Secure Boot启动过程中逐级校验固件签名防止固件被篡改硬件安全模块HSM/SE把密钥放在硬件里而不是明文存在Flash通信安全车云通道做TLS加密和双向证书认证消息级做签名防重放诊断和远程指令的安全访问执行前必须验证安全等级和权限日志审计记录安全事件。我参与过不少车联网安全测试项目也看过一些信息安全比赛题路径其实很相近。攻击者最常盯的就是TBOX的远程控制协议、OTA协议、调试端口、云端的开放接口。测试思路是先从信息收集开始域名、端口、开放服务、固件下载点再针对能拿到的协议做模糊测试、逆向和越权尝试。对于开发者来说能提前想到这些攻击路径在做设计的时候把它堵上比事后补洞成本低得多。5. 典型应用场景盘点5.1 个人车主日常远程控车、寻车、充电管理对个人车主而言TBOX带来的体验是最直观的。夏天上车前先用App远程开空调停车场找不到车用App寻车车主把车借给朋友不用给实体钥匙App远程授权即可。新能源车主更依赖远程充电管理插上充电枪后从App上看到充电进度设定充电目标远程开启电池加热。这些功能看起来简单落到TBOX上就涉及到大量细节。比如远程寻车时要控制喇叭和灯光APP上反馈的车辆位置还要和GNSS位置校准而GNSS在室内停车场往往失效所以很多TBOX还要融合基站定位或者惯性导航来做补充才能真正满足复杂停车场的寻车需求。5.2 新能源车安全监控场景新能源车电池安全是全行业都高度关注的问题。TBOX作为电池状态数据上传的核心通道在这个场景里的地位无可替代。BMS检测到电池单体电压异常、充电口温度过高、绝缘电阻异常等风险时会通过CAN总线把报警信号发给TBOXTBOX要把这个信息在几百毫秒内上传云端触发报警通知和后台监控。所以TBOX在新能源车里不仅仅是个通信盒子它带上了“安全上报”的使命。也正因为如此很多TBOX设计方案里加入了备用电池或超级电容目的就是在整车发生碰撞断电后TBOX仍然能完成一次紧急上报把碰撞状态、最后位置发出去给救援争取时间。这个东西可能一辈子用不上一次但真到关键时候它比很多花哨功能都有价值。5.3 车队管理与运营调度场景商用车、物流车、租赁车平台TBOX是车队管理的核心数据来源。车队调度需要知道每台车的实时位置、运行轨迹、行驶里程、油耗电耗、驾驶行为数据。运营方要看位置是否偏离路线是否存在疲劳驾驶是否急加速急刹车这些数据全是从TBOX上报数据里算出来的。车队场景跟个人车主场景最大的差异是规模。一个车队的车辆可能几千台甚至几万台TBOX的数据上报策略必须考虑平台压力和流量成本。业界一般会让TBOX支持多种上报模式比如实时上报、停车低功耗上报、事件触发上报、定时批量上报可以按场景灵活切换。5.4 UBI保险与共享出行场景UBI保险基于使用行为的保险也要依赖TBOX采集的数据做定价模型。保险公司根据用户的行驶里程、驾驶时段、急刹车次数、疲劳驾驶指数等给用户更精准的保费报价。这要求TBOX采集的数据足够精确和防篡改。如果用户能自己改里程数那模型再准也没用。共享出行也类似用户租车按分钟计费车辆的开锁、上锁、还车状态、实时位置都要平台实时掌握。很多共享汽车之所以能做到无钥匙取车靠的就是TBOX远程授权指令和车辆状态的及时上报。这种情况下TBOX不仅是通信节点还直接参与业务控制逻辑。5.5 车路协同与远程驾驶场景V2X是智能网联汽车发展的一个重要方向TBOX正在和V2X功能融合。传统TBOX关注的是车和云端的连接V2X则让车可以和路侧设备、其他车辆直接通信。两者融合之后TBOX可以接收红绿灯状态、路口拥堵信息、前车刹车预警等消息也能将车辆信息广播给周围车辆。还有一个比较特殊的场景是远程驾驶。在矿山、港口、园区等限定场景里远程驾驶员需要在远处实时看到车辆周边视频、车辆状态并远程操控车辆。这个场景对通信时延、带宽、稳定性要求极高TBOX的通信能力是整个方案的基础。虽然目前很多远程驾驶方案用专网或5G来实现但TBOX未来作为多模通信出口的位置会越来越明显。6. TBOX开发与测试实战干货6.1 开发流程从需求到量产的节奏TBOX开发一般遵循“需求定义、硬件设计、软件迭代、台架测试、实车联调、整车路试、量产准备”的完整流程。以我个人的经验比较容易出问题的是需求阶段很多需求在早期没有定义成可测试的指标到后期才来扯皮。比如“远程控车成功率99%以上”这种需求就是典型的没定义清楚。远程控车成功率统计口径是什么是App发送到云端算成功还是云端发送到TBOX算成功还是TBOX执行动作且最后状态反馈成功才算成功弱网场景算不算夜间休眠场景算不算如果不在开发前把验收标准定义清楚后面测试和验收就会非常痛苦。另一个建议是尽早搭建持续集成环境。TBOX软件迭代快每次改完代码如果能自动触发编译、静态检查、单元测试、基础通信测试很多低级问题就能早发现。等到整车联调阶段再发现写指针越界这种问题定位成本就高得多了。6.2 台架测试与实车测试怎么分工TBOX测试通常会分成台架测试和实车测试两个阶段。台架测试包括用可编程电源模拟整车电压变化测试TBOX上电工况和掉电工况用CANoe或者PCAN挂到CAN总线上模拟网关、BMS、VCU节点验证TBOX对总线信号的采集用信号发生器模拟GPS信号测试定位是否准确用SIM卡和真实运营商网络做通信信号和断网测试。台架测试的好处是可重复、可自动化、全天候跑环境稳定适合做功能级和异常场景的批量回归。实车测试则主要覆盖整车电磁环境、真实天线位置、真实总线拓扑、真实网络信号环境下的表现。比如地下车库弱网下App控车成功率、高速路段网络频繁切换时数据上传稳定性、带天线和非带天线状态下GPS定位效果这些在台架上很难完全模拟。实车测试问题多、周期长但不可替代。6.3 OTA模拟上位机这个热词很多人搜有些朋友在搜“OTA模拟TBOX上位机”其实说的是两件事一是模拟云端平台来测试TBOX二是模拟TBOX来测试云平台或整车端。这两件事我用几个例子说明白。模拟云端测试TBOX用MQTT客户端软件比如MQTTX、EMQX Desktop编写模拟云平台脚本按TBOX云协议格式发送控制指令给TBOX同时订阅TBOX上报的topic检查上报数据是否准确。这样做的好处是云平台还没开发好或者有bug时TBOX开发可以先行。模拟TBOX测试云平台或者整车端用CANoe、Python脚本、模拟ECU工具在电脑上模拟一个完整的TBOX按照协议上报数据到云平台验证云平台的数据解析、指令下发、OTA流程是否能跑通。也可以用上位机模拟TBOX把OTA升级包分发给被升级控制器验证控制器在升级包异常、版本冲突、校验失败情况下的表现。模拟TBOX这个操作的核心其实是理解TBOX和云端之间交互的协议。我建议做模拟工作前先把字段定义表、状态机、时序图、超时配置这些资料整理好。模拟程序本身不难难的是你模拟出来的行为要和真实TBOX逻辑保持一致否则测出来的结果没有参考价值。6.4 车联网安全测试怎么下手车联网安全测试这几年很热相关比赛也很多。从TBOX角度我认为测试优先级可以这样排第一是越权访问和身份绕过比如能否伪造TBOX身份连接云平台能否绕过认证接口做远程控制第二是协议安全比如远程指令能否重放升级包能否被篡改第三是本地攻击面比如调试口、固件提取、密钥泄露。第四才是各种模糊测试把异常报文砸向TBOX看它会不会崩溃。做这类测试必须明确边界一定要在授权的测试环境和合规的范围内进行用仿真平台或者自己搭的测试车不要随便拿别人车试。天融信杯这类比赛的赛题其实就是把真实车联网环境简化成CTF环境里面涉及固件逆向、协议分析、Web漏洞利用、密码学破解等多类技术非常适合用来练习车联网安全入门。从防御者角度看我很希望每一个做TBOX开发的团队都能自己先做一轮“模拟攻击”。不需要多深度先把固件拿出来看一下暴露了哪些调试接口把云平台的设备身份认证逻辑试一遍有没有可绕过的漏洞把OTA协议的签名校验去掉试试能不能刷入假包。这些自测做完我对这套系统的信心会提升一大截。7. 常见问题与排查思路实录做TBOX时间长了常见问题其实有固定套路。我整理几个出现频率最高的问题并附上排查路径。第一类TBOX不上线后台看不到车辆在线。这是最常见的。排查顺序一般是先看SIM卡状态和APN配置很多问题出在APN设错或者SIM卡停机这两个原因经常被忽略导致一查查半天再看网络注册状态用AT指令查看模组的信号强度和驻网状态如果信号异常优先查天线连接和馈线接着看网络连接和MQTT连接是否正常域名解析、证书、端口都要查最后看TBOX有没有成功通过设备认证。如果是老设备突然全部掉线优先怀疑证书过期或者平台侧接口变更。第二类数据上报丢失或者不连续。这个要先区分是整车断电休眠导致的上报停止还是通信链路问题。如果休眠状态下本就不该上报那不是bug。如果车辆在运行且在线但上报数据有空洞优先查TBOX日志里报文采集是否完整再查网络链路是否有长时间丢包最后查是否本地缓存满了导致早期数据被覆盖。第三类远程控车时成功时失败成功率不稳定。建议先看失败的时候TBOX是不是处于休眠状态很多休眠唤醒机制做得不好的TBOX远程指令到达时TBOX还没完全唤醒导致指令丢失。这种可以通过预先下发“唤醒延迟执行”机制解决。再看指令是否超时CAN上报状态慢也会导致App端显示失败。最后查安全策略是否有并发控车限制、防重放窗口是否过于严格导致合法指令被拒。第四类OTA升级卡在“下载中”或者“待安装”。先看下载阶段网络问题和存储空间问题再检查升级包签名校验是否通过不通过会卡在等待阶段。再看目标ECU是否处于可刷写状态如果总线负载过高或者UDS会话不对刷写也会失败。最后看升级失败后有没有正确的回滚机制没有回滚机制的OTA方案在量产后就是灾难。还有一个通用建议排查TBOX问题一定要先把TBOX完整日志抓下来。我看过太多因为日志不全大家互相猜来猜去最后浪费一整天的场景。TBOX侧日志要把时间戳、模块名、协议消息摘要都打出来能在开发期就定位问题的不要拖到量产期。写在最后一点个人体会TBOX这个东西表面上看起来就是个盒子加一根天线但真正参与到开发里之后你会发现它其实是整个智能网联汽车里跨领域跨度最大、最容易成为瓶颈的一个部件。它要懂嵌入式、懂通信、懂总线协议、懂云平台、懂安全、懂法规一个人很难样样精通所以团队协作特别重要。我个人做项目最大的体会是先把协议定义清楚再把日志做好最后才谈功能开发和优化。很多团队一上来就赶功能结果到联调阶段协议字段对不上、日志缺失、状态机混乱来回扯皮的成本比前期多花一个月做详细设计要高得多。也希望这篇文章能给准备入门或者正在跟TBOX死磕的朋友一点帮助。
返回列表