一种车载网关路由失效故障的排查与研究
2021-12-30马伯祥段冲磊聂泽宇李志宁陈树星
马伯祥,段冲磊,聂泽宇,李志宁,陈树星,王 鑫
(一汽解放 商用车开发院,吉林 长春 130011)
为了提升汽车的安全、舒适等性能,汽车上的电控单元不断增多,汽车已由简单的机械产品发展为复杂的机电一体化产品。在汽车中往往将不同控制器按照功能或者通信速率等划分为不同网段,不同网段间的信息互换通常采用网关实现,汽车网关是整车电子电气架构中的关键部件,其作为整车网络的数据交换枢纽,可将不同网段的数据进行路由,因此网关的高速率、多通道及安全性对汽车而言至关重要。
1 故障现象
4S店售后反馈某重卡车型故障:部分该车型,在将点火开关打到OFF挡位后,如驾驶员没有拔钥匙下车,而选择短时间内再次起动车辆,则液晶显示屏报多个控制器故障灯,且车辆无法点火起动。
2 整车故障排查
根据4S店反馈的故障现象,对该车型进行故障排查:利用诊断仪对整车上各控制器进行故障读取,结果显示①TBOX报出发动机和液晶显示屏丢失故障;②发动机报出TBOX和车身控制器丢失故障;③液晶显示屏对诊断仪的故障读取无诊断响应。
通过诊断仪对整车各控制器进行故障诊断的结果可以看出,整车上多个控制器丢失,结合该重卡车型的网络拓扑,如图1所示,可以发现舒适域上的控制器报出动力域上的节点丢失故障,同样,动力域上的控制器报出舒适域上的节点丢失故障。故初步判断造成该问题的原因是网关控制器路由功能失效。
图1 某重卡车型网络拓扑简图
为进一步确认此问题,结合该重卡车型的网关路由表,监测整车动力CAN网段路由到舒适CAN网段报文、舒适CAN网段路由到动力CAN网段报文:①在舒适CAN网段上未监测到发动机控制器、液晶显示屏等动力域上路由到舒适CAN网段上的报文;②在动力CAN网段上未监测到TBOX、车身控制器等舒适域上路由到动力CAN网段上的相关报文。
综上,进一步判断,网关控制器路由功能失效,是产生整车故障的主要原因。
3 制定试验策略
3.1 睡眠唤醒原理
以上述故障排查为基础,以该网络睡眠唤醒策略为出发点,对该车型网关控制器路由功能进行分析验证策略定义。该车型执行的睡眠唤醒策略如图2所示。
图2 整车舒适CAN网络睡眠唤醒逻辑
3.2 试验方法设计
在制定试验方法阶段结合整车的睡眠唤醒策略,从整车可能出现的不同工况对网关控制器进行测试。
图3是对网关控制器在整车上可能出现的工况按睡眠唤醒和睡眠中断进行故障分析的原理图。
4 验证
进行试验前搭建测试环境如图4所示,PC控制测试机柜对网关控制器舒适CAN和动力CAN报文进行采集并模拟发送报文。
根据上述网关故障分析原理图以及所搭建的测试环境对该车型网关的睡眠唤醒和睡眠中断分别进行测试。将网关收到睡眠指令而进入睡眠的方式定义为睡眠方式1,将网关连续10s没有在舒适CAN总线上接收到报文而进入睡眠状态定义为睡眠方式2。在网关控制器的睡眠唤醒测试中需保证网关在睡眠方式1及睡眠方式2中处于KL15 OFF状态的时间分别大于5s和10s,使网关进入睡眠状态;在网关控制器的睡眠中断测试中需保证网关在睡眠方式1和睡眠方式2中处于KL15 OFF状态的时间分别小于5s和10s,使网关未进入睡眠状态。
图3 网关故障分析原理图
图4 测试环境搭建
在本次验证试验中,对睡眠方式1以及睡眠方式2采用间隔时间1s,每秒重复5次的原则进行试验,共得到255组数据。表1和表2分别为网关控制器的睡眠唤醒和睡眠中断测试的部分数据。
表1 网关睡眠唤醒试验结果
表2 网关睡眠中断试验结果
从表1和表2的测试结果可以看出,在网关睡眠中断测试中,当点火开关打到OFF挡,在短时间内将点火开关打到ON挡,网关睡眠被中断,网关路由功能失效。通过筛选以KL15 ON的方式进行中断试验的数据,最终确定当点火开关打到OFF挡位后5s内将点火开关打到ON挡,网关控制器路由功能失效,表3为采用KL15 ON方式分别对睡眠方式1和睡眠方式2进行中断试验的部分数据。
表3 KL15 ON中断时间部分试验数据
5 解决方案
网关路由功能失效造成该重型卡车无法起动并报出大量故障,后果十分严重,对网关控制器睡眠管理模块进行排查,发现网关控制器在点火开关由ON挡打到OFF挡后立即开始存储电源管理数据和诊断数据,网关控制器为保证此部分功能的正常运行在睡眠管理模块中采用延时函数来延迟网关睡眠,点火开关打到OFF挡后5s内再次打到ON挡影响了延时函数,故造成网关路由功能失效。针对此故障,提出以下解决方案,详见表4。
表4 整改方案特点
方案1:针对试验结果,并结合整车功能,采用对功能设置优先级并且增加判断的方式对此睡眠管理模块进行修改,为保证网关在点火开关由ON挡打到OFF挡后能够正常存储电源管理数据和诊断数据,将其优先级设置成最高,即延时函数不会被影响,采用此方法修改,当点火开关打到ON挡5s内网关不唤醒同时也不会起动车辆,当延时函数超时后可以正常起动车辆。
方案2:综合考虑整车功能、中断资源、优先级等因素将延时函数升级为中断函数,根据整车功能设计中断优先级,将KL15 ON进行睡眠中断的优先级设置为最高,网关控制器的睡眠进程被KL15 ON中断后将会停止进行电源管理和诊断数据的存储,默认为上一次的存储数据;将网关存储电源管理数据和诊断数据的优先级设置为中,并结合睡眠方式,将接收到睡眠指令后,CAN报文中断睡眠进程的优先级设置为低,使网关控制器接收到睡眠指令后,不会被CAN报文中断睡眠进程;而当网关控制器10s内接收到CAN报文而中断睡眠进程,由于属于睡眠条件不满足,其优先级设置为高,其可中断电源管理数据和诊断数据的存储,同样默认为上一次的存储数据。采用该方案,在睡眠唤醒功能模块里将中断优先级按照KL15 ON中断>网关未接收到睡眠指令并在10s内接受CAN报文中断>网关存储电源管理数据和诊断数据功能>网关接收到睡眠指令后5s内中断进行设置,使整车功能不受影响,在升级后进行全功能复验以保证网关控制器功能正常,并且未引发新问题。
方案1将延时函数的优先级设置成最高,即禁止KL15 ON中断网关控制器睡眠进程,该方案的特点是软件修改方法简单,周期相对较短,且在修改软件过程中不易引入新问题,但可能对实际操作体验产生影响,不易广泛使用,可以作为临时方案;方案2针对当前故障现象对网关控制器的应用程序进行升级,并在升级后需要对网关控制器进行全功能复验,以保证升级成功并未引发新问题。该方案的特点是不会影响整车功能,但修改难度较大,复验周期较长,容易引发其它问题。
根据该车型功能、客户需求以及修改成本,同时结合方案1和方案2的特点,采用先使用方案1修改此问题,以保证该问题能够在短时间内快速解决,而后将采用方案2对其进行二次升级。经测试验证,采用方案1修复此故障,故障现象未复现,对客户进行跟踪调查发现,该方案基本不影响实际操作体验。后续采用方案2修复网关控制器,通过复验后对该网关进行软件升级。
6 结论
本文通过整车出现的故障,对网关控制器路由功能失效的情况进行故障排查、分析和试验方法设计,并结合整车功能提出整改方案,对控制器网络测试、整车故障排查及整车问题整改工作具有一定参考意义。