基于CAN总线的整车控制器自动测试系统

2017-06-24 13:13宋超
客车技术与研究 2017年3期
关键词:测试软件自动测试端口

宋超

(湖南中车时代电动汽车股份有限公司,湖南株洲412007)

基于CAN总线的整车控制器自动测试系统

宋超

(湖南中车时代电动汽车股份有限公司,湖南株洲412007)

针对整车控制器大量IO端口测试需求,提出一种基于CAN总线的简易自动测试系统,以已测整车控制器为测试设备,结合自定义测试交互协议,自动实现对被测控制器任意类型、方向、位置端口的批量测试任务。

整车控制器;CAN总线;自动测试

1 基于CAN总线的整车控制器设计

整车控制器作为新能源汽车电控的核心部分,参与了车辆信号状态的采集与部件控制,其IO端口数量占据了整个车辆新增电控系统的绝大部分。目前,行业内整车控制器硬件开发普遍采用OEM方式,即由专业的汽车电子设计公司进行控制器的硬件设计、生产与出厂测试,并提供配套的基础软件库;新能源整车厂家或系统集成商基于模型开发应用功能,通过自动代码生成技术,与基础软件耦合实现整车控制器的完整功能。

为确保整车控制器出厂时的可靠性与可用性,各整车厂家或系统集成商在产品交付前都需要进行控制器端口的功能测试。由于端口数量众多,采用人工方式检测必然导致极低的检测效率和较高的测量成本,所以越来越多地开始采用自动化的检测手段进行控制器的端口测试,常用的方式是采用专业的测试设备,如NI、dSPACE硬件测试产品。自动化的专业测试设备能够提供各类型信号输出与采集,配合自动化测试软件完成所有端口功能的测试。这种测试过程操作简单,效率高,但是带来的问题是测试设备成本较为昂贵[1-4]。

为此,本文提出一种基于CAN总线的整车控制器的自动测试系统,该系统的测试设备与被测控制器均为同类型产品,测试设备已提前采用人工方式测试通过,实际测试时测试设备对被控控制器进行信号生成与采集,再通过自定义的测试协议实现测试任务分解、命令下发、状态校验、结果反馈等过程的自动执行。

新能源系统中,整车控制器承担了核心的控制任务,它收集驾驶员的驾驶行为与操作装置的状态,控制车辆的上下电过程与运行模式,决定系统的动力组成与能量分配,优化部件的燃油消耗与工作效率,监督系统的异常状态与运行故障,实现人-机-车的高效运行与安全保护。

整车控制器主控芯片一般选用16位或32位汽车级单片机,具备强大的输入输出功能与数据处理能力,能够实现车辆的复杂功能控制与众多部件保护。在硬件层面,完成了多路数字量输入(DI)、模拟量输入(AI)、频率量输入(FI)、数字量输出(DO)、模拟量输出(AO)、PWM、CAN等驱动功能。图1为整车控制器硬件的典型

架构[5-8]。

图1 整车控制器硬件架构图

整车控制器采集的车载电气信号,包括由仪表台钥匙、开关、按钮产生的开关量输入(即数字量输入)信号,其他部件、装置的开关量反馈信号,加速踏板、制动踏板构成的模拟量输入信号等。

整车控制器控制车载设备的电气信号,包括驱动继电器、接触器的开关量输出信号,控制风扇、直流电机的PWM(脉冲宽度调制)输出信号,控制发动机油门的模拟量输出信号等。

整车控制器的网络信号具备双向性,主要基于CAN总线与其他部件进行信息交互。以AMT(机械式自动变速器)并联插电式系统为例,上电后,整车控制器需要与驱动电机MCU(电机控制器单元)、动力电池BMS(电池管理系统)、发动机ECU、AMT控制器、打气泵DC/AC、助力转向DC/AC、仪表、空调等部件电控单元进行周期性的数据通信[9],如图2所示。

图2AMT并联插电式系统整车控制器关联信号与部件

整车控制器采样端口较多,但信号种类较为集中,且输入信号可通过输出端口生成,输出信号可通过输入端口进行测量。因此,利用已测量的整车控制器作为测试设备,对其他整车控制器进行测试是完全可行的。

2 测试系统的设计及验证

基于CAN总线的整车控制器自动测试系统(以下测试系统),利用端口类型匹配特点搭建测试设备与被测对象的联合测试环境,通过自定义的CAN协议实现测试设备对被测对象指定类型、方向、位置端口的测量,同时结合自行开发的上位机测试软件,完成被测端口信息的批量导入、下发,测试结果的自动获取,报表生成等功能。

2.1 系统结构

测试系统各部件之间通过CAN总线进行组网,实现数据交互。整个系统由4部分组成:已测试完成的整车控制器,即测试设备;待测试的整车控制器,即被测对象;上位机与自动化测试软件;CAN连接设备。系统结构如图3所示。

图3 整车控制器自动测试系统结构

其中,测试设备与被测整车控制器之间既有普通的IO电气线束连接,也有CAN总线连接,根据被测对象CAN接口数量的不同,CAN总线依此命名为CANA、CANB、CANC等。测试设备通过CAN总线与上位机连接,中间需要CAN连接设备进行协议转换,测试设备与上位机之间的CAN属于测试系统内部CAN。

2.2 通信协议

测试过程中,测试软件将测试命令下发到测试设备,测试设备发起到被测整车控制器的测试任务。测试完成后,测试设备将结果反馈给测试软件。因此,基于CAN总线的整车控制器自动测试系统需要建立测试软件到测试设备、测试设备到被测整车控制器的两条网络链路。

为实现对测试端口方向、类型、数值等多参数的适用性,灵活、可靠的通信协议制定成了整个测试系统的核心。自动测试系统采用CAN2.0协议,基于扩展帧进行信息收发,8个数据字节长度的报文内容被明确分配给不同意义的命令或状态[10]。

自动测试系统的消息帧分为控制帧和状态帧两大类(见表1和表2),根据消息的发送方向进行区别。其中,由测试软件到测试设备的消息帧HC1、测试设备到被测控制器的消息帧TC1属于控制帧,由被测控制器到测试设备的消息帧CS1、测试设备到测试软件的消息帧TS1属于状态帧。

表1 控制帧结构

表2 状态帧结构

命令码分为写命令与读命令两类。写命令时,测试设备产生信号,被测控制器读取信号并进行反馈;读命令时,被测控制产生信号,测试设备读取后进行反馈。

控制器被测端口信号类型分为DI(低有效)、DI(高有效)、DO(低边驱动)、DO(高边驱动)、AI、AO、FI、PWM、CAN。

信号数值根据“控制器被测端口信号类型”进行区分,控制帧发送的是信号的设定值,状态帧反馈的是信号的采样值。

2.3 应答机制

测试开始时,测试系统自动建立测试软件到测试设备、测试设备到被测控制器的“握手”连接;实现测试设备、被测控制器输出端口的初始化操作。

对于DI、AI、FI类型输入端口的测试,测试软件首先发送HC1报文到测试设备,“通知”测试设备在哪个端口输出信号、被测控制器在哪个端口接收信号以及信号的目标值。数字信号的目标值为0、1,模拟量信号的目标值为0~100,频率量信号的目标值包括目标频率与占空比。测试设备接收到HC1报文后,判断命令序号是否更新、目标端口是否为指定类型的输入端口、目标数值是否在正常范围,判断结果在TS1报文进行反馈。如果HC1信息正确,测试设备在目标端口输出信号,同时发送TC1报文给被测控制器,“通知”被测控制器在指定端口接收数据。被测控制器接收到TC1报文后,同样会进行命令序号、端口索引、数值范围的判断,如果正常则在指定端口读取数据后进行反馈,否则直接报错。以上过程持续进行,直到测试软件接收到错误或被测控制器反馈的数据到达目前数值有效范围或超时。

对于DO、AO、PWM类型输出端口的测试,测试软件通知测试设备在哪个端口读取信号、被测控制器在哪个端口输出信号以及信号的目标值,测试过程与输入端口的测试类似。

对于CAN网络通信功能的测试,测试软件将目标周期与目标报文数量通过测试设备转发给被测控制器,被测控制器接收到命令后按设定周期自动进行指定数量报文的发送,发送完成后,被测对象自动退出本次测试任务。测试设备统计本次测试任务接收到CAN报文的通信时间与数量。测试软件对结果进行分析,判断被测控制器的通信功能与时间基准是否满足设计要求。

2.4 超时保护

除了正常的校验错误,测试过程还会出现由于网络中断、延时导致的测试故障。为确保系统实现故障响应与退出,测试系统支持超时保护功能。测试软件到测试设备、测试设备到被测控制器之间的主动连接都会设置超时限制,以500 ms为例,如果没有接收到对应的反馈报文,报文发送方会进行报文的再次发送,如此重复3次。超时确认后,测试软件结束当前测试任务。同样,对于测试设备、被测控制器,如果本次测试任务开启后,待接收的目前报文持续丢失,也会触发超时响应。

2.5 测试系统验证

基于CAN总线的整车控制器自动测试系统示意图如图4所示,最顶部电脑为安装有自动测试软件的上位机。测试设备和被测对象由两个完全相同的整车控制器组成,其中代表测试设备的整车控制器IO端口功能已经测试通过。测试设备和被测对象都集成了自动测试通信协议底层驱动,能够主动响应各项测试任务与功能。为验证测试系统的功能及效果,两台上位机安装标定软件后,对设备与被测对象内部变量数值进行实时监控。车辆实际运行时,整车控制器部分端口信息通过CAN网络发送给仪表进行显示,为验证测试任务与其他任务的优先级关系,测试系统也提供了被测控制器到仪表的连接与信息显示。

图4 整车控制器自动测试系统示意图

利用测试系统对整车控制器的各类端口进行测试,基于测试设备标定软件采集对应端口的目标值、实际值进行实时存储。从各类型端口的历史数据中选择一例作目标信号、实际信号的数值对比,结果如图5所示。由图5可知,目标数值给定后,信号正确给出,测试设备在约一个周期后正确获取到信号的实际值,测试流程正确执行;对于单一的数字量、模拟量、PWM、CAN通信等测试任务,利用自动测试系统均可在100ms内完成,信号给定、状态检测、结果分析等耗时几乎可以忽略,和人工测试方式相比,在测试时间与测试人员数量方面得到极大改善。同时由于测试软件自行开发,测试设备为已有整车控制器产品,整个测试系统成本仅限于线束、CAN连接设备,和动辄数十万的商用测试系统相比,成本大幅降低。

图5 整车控制器端口测试曲线

3 结束语

基于CAN总线的整车控制器自动测试系统,以现有设备为基础构建简易测试环境,不需要额外的专业测试软件与信号生成、采集设备,大幅降低自动测试系统使用成本。通过设计可靠、灵活的自动测试协议,实现不同信号类型、方向、引脚位置的控制器接口测试。通过开发测试报文的应答响应与超时保护机制,建立了测试软件、测试设备、被测整车控制器之间有效的CAN网络连接。整个测试过程协议交互、参数设置、信号输出采集转换等功能均可靠完成,测试过程快速、稳定,能够有效地满足整车控制器端口的自动化测试需求。

[1]邓冠丰.dSPACE系统在整车控制器开发上的应用[J].机电技术,2013(1):80-82.

[2]柳熹,于兰,辛明华,等.电动汽车整车控制器自动检测技术[J].汽车工程师,2014(12):54-56.

[3]张戟,孙泽昌,金明,等.清洁能源汽车整车控制器硬件设计及模拟负载硬件在环仿真系统[J].机械与电子,2007(4):35 -37.

[4]邱静,汤峰.纯电动客车整车控制器设计及测试[J].合肥学院学报:自然科学报,2015,25(2):54-57.

[5]张翔.纯电动汽车整车控制器进展[J].汽车电器,2011(2):1-5.

[6]童志刚,方进,钟峥华.电动汽车整车控制器设计与应用[J].客车技术与研究,2013,35(3):33-36.

[7]孟祥志,孙晓山,边敦新,等.电动客车整车控制器CAN接口设计[J].自动化应用,2013(8):28-29.

[8]郭盟,南金瑞,郭峰.增程式电动客车整车控制器的设计[J].重庆理工大学学报:自然科学,2013,27(1):7-12.

[9]宋超,席力克,罗锐,等.基于AMT并联混合动力系统的CAN通信设计[J].微型机与应用,2015,34(13):59-61.

[10]罗峰,孙泽昌.汽车CAN总线系统原理设计与应用[M].北京:电子工业出版社,2010.

修改稿日期:2017-02-17

Automatic Test System for Vehicle Controller Based on CAN Bus

SongChao
(Hunan CCRCTimes Electric Vehicle Co.,Ltd,Zhuzhou 412007,China)

Accordingtothe test requirements ofvehicle controller's manyIO ports,the author presents a simple automatic test system based on CAN bus,which uses a measured vehicle controller as the test equipment and combines with the custom test communication protocol to automatically implement the batch testing tasks for any type,direction and position ports ofthe controller tobe measured.

vehicle controller;CANbus;automatic test

U463.6

B

1006-3331(2017)03-0056-04

宋超(1987-),男,硕士;工程师;主要从事新能源客车控制软件平台开发与动力系统设计工作。

猜你喜欢
测试软件自动测试端口
故障录波装置自动测试系统设计与实现
华为交换机端口Hybrid 模式的应用
基于CANoe的商用车SAE J1939网络自动测试方法
直升机某型舵机自动测试系统设计分析
一种有源二端口网络参数计算方法
一种端口故障的解决方案
网络自适应测试软件运行方法设计
隔离型三端口变换器的H∞鲁棒控制
液晶显示器及其电源适配器能效自动测试系统的研制
自动化检测EPU10A板卡系统设计与实现