摘要:本文提出一种基于Kvaser总线设备的测试解决方案,应用于汽车控制器的Bootloader功能测试验证。通过硬件和软件设计方案全面介绍该测试方案的实现方式,最后通过测试执行和测试效果进一步阐述该系统的优势。
随着汽车电子电气技术的快速发展,车载电子控制单元数量日益增多,对控制器软件的更新需求也越来越多。Bootloader是在主程序运行前的一段小程序,主要完成应用数据下载和更新任务,是底层硬件与上层应用软件之间的交互接口,与用户应用程序完全独立,由于其刷写速度快、车载接口方便的特点,得到了大家的普遍使用。
目前,控制单元Bootloader刷新流程的设置主要基于ISO 14229和ISO 15765标准,在此基础上,各主机厂根据不同情况略有不同。针对控制单元Bootloader刷新测试,目前采用的软硬件工具主要有Vector公司的CANcaseXL /CANoe, Softing公司的EDICusb / DTS (Diagnostic Tool Set)工具集等;但以上工具都不是针对Bootloader测试开发,所以设置繁琐、价格昂贵。本文提出了一种基于Kvaser LeafLight v2设备的车载控制单元Bootloader测试系统(以下简称测试系统),能够实现控制单元Bootloader刷新流程中的预刷新、刷新程序、刷新后处理的自动化测试,并自动判断测试结果。
1 测试系统的硬件环境建立
Kvaser Leaf Light v2是瑞典Kva.ser公司推出的用于CAN总线的单通道高速USB接口,具有价格低廉、方便携带等特点。
测试系统主要由PC机、Kvaser Leaf Light v2总线通信设备、被测ECU组成。其中,PC机通过USB接口连接KvaserLeaf Light v2总线通信设备,Kvaser Leaf Light v2设备通过DB9接头连接网关Diag-CAN,再由网关连接相应总线上的被测ECU,具体连接情况如图1所示。实际应用中,也可以通过OBD接口连接。
2 测试系统的软件设计方案
图2为测试软件初始界面一一测试界面。本系统网络层遵循ISO 15765-2 "'标准,应用层遵循ISO 15765-3标准,诊断服务参考ISO 14229 151标准。测试系统的人机接口分为测试界面和配置界面两部分。软件运行后的初始界面为测试界面,在此界面中主要包括4个方面的内容。
1)装载内容窗体显示装载的下载文件的内容,可加载*.hex, *.s19, *.bin, *.mot等多种格式的flash文件。
2)配置窗体用于配置下载过程中的参数,包括安全算法MASK值、装载文件个数、连续刷写次数、连续刷写间隔、诊断口波特率、ECU类型、文件分段个数、文件分段大小、文件分段使能、刷写失败后可继续发送、暂停下载后可继续下载、直接进入编程会话下载、配置管理按钮、确认按钮等。
3)操作窗体包括装载文件按钮、下载按钮、暂停下载按钮、继续下载按钮、清除显示按钮、存储Trace按钮、停止显示按钮等。
4)运行信息窗体主要显示外部下载工具的初始化信息、下载过程中的数据信息、下载结果状态信息等。
通过测试界面的配置管理按钮,可以打开配置界面,如图3所示。
在整个下载过程中,需要首先通过此界面制作或导入下载时所用的配置文件。此界面主要包括三大窗体的内容。
1)命令及参数设置框用来编辑下载所需的配置文件及配置某些下载参数,包括基础参数如数据下载延时(STmin)、P2CAN_ ECUmax, P2N(,AN_ECUmax以及被测控制器的请求响应11)等。
2)命令操作①加入命令:把目前命令框中显示的具体数值按照命令列表窗口中所需的内容加入到命令列表中,形成一条下载命令。②删除命令:删除最近加入的一条命令。③导入配置:导入已经生成的命令列表配置文件,文件格式为*.TXT文件,并在命令列表窗口中完全显示。④存储配置:将当前命令集存储为*.TXT文件。⑤确认:将当前命令集读入系统内存,做好下载准备。⑥退出:退出图3所示的配置管理界面,命令列表窗口中的命令集不会被读入内存。
3)命令列表窗体在此窗体中,通过修改、删除、插入动作,实现对命令的修正。