其他分享
首页 > 其他分享> > 针对域控制器的一种升级测试方案介绍

针对域控制器的一种升级测试方案介绍

作者:互联网

前言

 


传统的汽车ECU通过诊断刷写来实现软件更新,数据量较小,一般在几十KB到几十MB;随着汽车的新四化进程持续推进,汽车上的域控制器或中央计算器的架构已经演变为MPU/SOC+MCU的方案,而针对MPU/SOC软件升级的数据量往往是几百MB甚至几GB,使用DoIP加诊断服务(0x34、0x36)来传输升级包数据,过程比较繁琐,并且带宽利用率较低。通过DoIP发送36服务,需等待传输层的应答即TCP ACK,再等待DoIP的0x8002报文(简化版不使用0x8002),最后必须等待控制器的诊断肯定响应才能继续发送数据。因此,针对数据量较大的升级包,各厂商纷纷采用多种新的方法来实现域控制器软件升级。


上海北汇信息根据既有的经验,为大家介绍其中一种抛弃了传统方案,一种新型软件升级技术及测试方案,该方案基于“一种支持SOA的协议 + 传统IT的传输协议”组合实现。以下简称“SOA协议”和“IT协议”。

 


域控制器升级流程简介

 

图1 升级流程示意图


如上图所示,实现从节点域控升级,是由主节点来发起升级任务,此流程主要在车内进行。主节点首先通过“SOA协议”给从节点建立升级任务,再将升级包通过”IT协议”发送给从节点,同时通过”SOA协议”控制升级流程;相比使用诊断服务实现升级,此流程简洁高效,能快速实现升级软件的目的。

 


测试用例的构成

 


针对从节点的升级测试,主要分为以下几个部分:1.正向流程测试;2.状态跳转测试;3.故障码测试;4.场景测试

 

 

图2 部分测试用例

 


域控制器升级测试的主要环境

 


北汇主要使用Vector的CANoe+VN56xx来开发测试用例与执行测试,加上基本外设,如程控电源等,可以快速搭建好测试环境,示意图如下所示:


图3 测试环境示意图

 


图4 测试脚本框图

 


域控制器升级测试实例

 


数据传输过程


CANoe仿真主节点给从节点建立升级任务后,从节点便发送”IT协议” 请求升级包路径,仿真主节点响应升级包路径,从节点则发送”IT协议” 获取升级包。仿真主节点使用”IT协议”发送升级包,在传输过程中可以使用SOA协议周期读取传输进度,等待传输完成后,仿真主节点发送安装请求,在安装过程中周期读取安装进度。以下是测试报告和测试数据的示例。


图5 建立任务与传输过程测试报告


图6 安装升级包测试报告

 


总结

 


本文介绍实现域控制器升级的一种新兴技术方案,其在汽车电子领域已广为接受并采用。此方案相比使用诊断服务实现升级,主要有以下两个优点:

北汇信息紧跟技术发展的脉搏,在此领域已经积累了测试规范开发、测试脚本开发、测试执行的经验,同时根据北汇在汽车电子丰富的测试经验,开发具有深度的用例覆盖不同场景,为客户的汽车电子产品软件升级质量保驾护航,加快车型研发进度!

 

标签:SOA,升级包,域控制器,协议,升级,测试,节点
来源: https://www.cnblogs.com/polelink/p/15699177.html