APP下载

基于CCP和AK协议的ECU数据采集系统在AVLpuma台架上的试验研究

2020-04-20娄建民程雷陈立洋

时代汽车 2020年3期

娄建民 程雷 陈立洋

摘 要:基于C#开发语言利用WinForm友好的界面设计的ECU数据采集系统,该系统通过ASAP2标准的A2L文件解析实现对A2L文件中测量信息的读取,再利用串行通信协议CAN和CCP协议与ECU进行信息交互,最后利用AK协议与AVLpuma台架实时通信将获取的ECU中的测量参数显示在台架上的POI中,同时这些测量参数与台架测量的参数一起记录在AVLpuma台架里。该系统已成功普及到多款增压直喷汽油机的性能测试和可靠性试验中,为发动机试验过程监控提供了更全面的保护。

关键词:CCP协议;A2L解析;AK协议;AVLpuma台架

1 前言

近年来,随着汽车产业的发展汽车电气化程度越来越高,虽然目前新能源电动车越来越多,但是当下在汽车的产销量上还是很难与传统内燃机的汽车相抗衡,即便是在动力系统上电机和内燃机在电气化的控制上还是内燃机的控制稍显复杂。这一点在电机和内燃机台架测试开发阶段显现的更为明显,在大家熟知的AVLpuma台架中,不论是台架测量的参数还是电子控制单元的标定参数,还是台架对动力系统外围冷却系统的控制上,内燃机的台架还是比电机的台架更复杂。

在一款汽油机的开发阶段,台架的测试是其中最重要的阶段之一,在台架进行ECU标定时国内几乎使用都是EATS的INCA标定软件,但在开发阶段的样机耐久考核时也需要随时监控ECU的数据变化情况,以便更早的发现样机的问题,避免一些无法挽回的损失。而一般试验室都几十个台架全部使用INCA造价将非常高,而且耐久考核只监测ECU中的测量参数不对所考核样机的ECU进行更改,所以使用INCA多少有些浪费,在与puma台架通过ASAM-3MC协议连接时需要设置大量的NormName来实现记录,过程较为繁琐而且连接步骤也颇为麻烦。目前国内及国外大部份车企及主机厂所用的台架基本使用AVL公司生产的puma系统,该系统功能强大、稳定、可扩展其他应用。

本文以国内某知名电喷系统为例,介绍了A2L文件解析及CAN标定协议通过串口通信CAN协议采集ECU数据再通过AK协议和编制puma中的MDD配置文件实现与台架通信的试验研究。

2 数据采集系统的设计

2.1 A2L文件的解析

A2L文件是依据ASAP2标准(表征控制设备之间的接口定义、测量参数、标定参数、参数存储形式、参数转换方式的一种通用性定义)制定的,在发动机开发初期,大部分电喷厂商在开发电子控制单元时都会将硬件的参数信息、接口参数的信息和各种发动机测量和标定的信息都会编制在A2L文件内[2]。本文对整个A2L文件进行解析时只对文件中MEASUREMENT参数进行提取如下图1所示,其他参数略过,下面以A2L文件中一个参数为例进行说明。

/begin MEASUREMENT

SPEED

“Filtered Engine speed”

UWORD

VfVIOS_n_EngSpd_DS_Scaling

0

0.000000

0.000000

8191.875000

ECU_ADDRESS 0x60002A54    DISPLAY_IDENTIFIER VfVIOS_n_EngSpd

/end MEASUREMENT

其中/begin和/end是分界符,MEASUREMENT为关键字,VRPM为该关键字内的参数名,“Filtered Engine speed”该参数名的注释,UWORD为该参数的数据类型,VfVIOS_n_EngSpd_DS_Scaling为该参数的转换标识符用于中间变量的计算等使用,以下依次为该参数的分辨率、精度、下限值、上限值,ECU_ADDRESS为该参数在ECU中的存储地址(可选项),DISPLAY_IDENTIFIER为该参数的一个替代名称(可选项),可选项的意思就是该项内容可以出现一次或者不出现。

本文对于A2L文件中的接口数据(ECU与采集系统通信的配置信息)可以在采集系统的界面直接输入,该采集系统未对标定等关键字进行调用,参考文献2中对A2L文件进行了全方位的解析,这里不做过多介绍。

2.2 CCP协议

CCP协议[1](CAN Calibration Protocol)即CAN标定协议属于CAN通信的应用层协议,采用主从通信的方式,该协议主要用于对汽车动力的电子控制单元进行标定,同时可进行电子控制单元内部的数据采集和监控。

本文读取ECU中的数据通过C#按照图2中的流程图进行代码编辑即可实时采集ECU反馈的报文,再将反馈的报文进行解析显示到窗口上。图中为本文用到的每个指令代码及功能说明如表1中所示。

文中提到的DAQ为数据采集即从ECU中定义一个程序和从设备到主设备之间的信号发送,以实现数据的快速读取,ODT为对象描述符表即用于接收数据组的变量元素列表,这里面选取上面SPEED的测量参数来说明采集和解析的过程。

依据图2中的流程发送数据07D0 15 07 00 00 01 00 00 00(15为命令代码、07为命令计数器、00为DAQ列表数目为0、00为对象描述表ODT数目为0、01为单元数目在ODT里面位置),07D0 16 08 02 00 60 00 2A 54(16为命令代码、08为命令计数器,后四位为SPEED的DAQ单元的地址)给ECU(电子控制单元)的数据,其中07D0为数据ID,发送命令代码06的数据开始采集后数据(07D5 00 EC 13 72 27 00 00 00)将周期返回,根据返回的报文和SPEED參数在A2L中的描述可以计算出此时转速为873rpm。

3 puma台架通信设计

3.1 AK协议

AK协议[14]源于德国汽车工业协会,通过串口通信来实现各种外部设备与主控系统进行信息交互,本文涉及的主控系统为AVL公司的PUMA系统,在该系统内很多的外部设备都利用其特有的AK协议进行通信,例如AVL735、AVL442、AVL753C等。下面针对AVLpuma系统进行AK协议的进一步解读。

AK协议是建立在RS232接口上的一种通信形式,基于主从原则,所有命令和数据以ASCII格式传输。命令定义为四字符功能代码。它们可以分为三组:控制命令(从“S”开始,如SREM)、查询命令(以“A”开头,例如ASTZ)、调整命令(从“E”开始,例如ESOL)系统接收一个命令后就发送响应的数据。

如果命令行不是以开头,或者函数代码是未知,系统响应如下为< STX>????n 。如果控制/调整命令被正确接收,则不显示数据块。如果无法执行控制/调整命令,则拒绝的原因将显示在数据块中如下表4。

3.2 CDH的设计

CDH(可配置设备处理程序)是AVL PUMA中的一个开放的子系统,CDH的设计是通过AK协议集成外部设备的必经之路。集成AVL公司满足AK协议的外部设备很容易,但是将其他的外部设备(满足AK协议)集成到AVLpuma系统里是一项很难的工作,这里需要AVL公司授权许可证并支付一笔高额的费用。

3.2.1 新建设备描述文件

先定义要与AVLPuma 集成的测量设备,您可以集成预配置的设备或新设备。对话框中MDD文件的名称将是你定义的设备名称。

3.2.2 连接类型设计

在该步骤中设置协议类型为AK协议,连接形式为RS232。

3.2.3 设备变量的设置

输入变量通过报文、序列、脚本和全局条件来控制设备,输出变量将相应的测量值从设备传输到自动化系统,通过这些输入输出变量来控制系统的各种功能。

3.2.4 报文

报文是定义一个读-写的元素对;即一条消息发送到设备(发送文本),一条消息从设备(接收文本)读取,所以必须定义发送文本或接收文本。一个MDD文件包括一个报文列表,每个报文唯一的标识就是其名称,每个名称都有对应的描述,发送给数据采集系统的报文为<02> ALEV K0<03> ,这里有三种响应方式分别是无响应、等待响应和等待及分析响应,本文选择的是第三种等待及分析响应,这个报文功能就是将数据采集系统采集的电喷参数传递给AVLpuma系统,该本文的响应为<02> ALEV #DA01# #DA02# #DA03# #DA04# #DA05# #DA06# #DA07# #DA08# #DA09# #DA10# #DA11# #DA12# #DA13# #DA14# #DA15# <03>。

3.2.5 脚本

在脚本中,可以定义各种通用子例程/函数。借助这些不同的功能来控制测量装置。脚本可以通过序列或任何其他脚本调用,这些脚本可以支持复杂的驱动程序功能,也可以帮助集成其他设备,通过vbscript的强大功能,也可以提供数学计算、复杂验证或算法。

3.2.6 序列

序列是CDH设计的核心部分,它是设备驱动程序执行的主体。

序列也是由名称定义,序列由CDP或PUMA触发,由起始块、循环块和结束块组成,所有块都是可选的。起始块包含块条目命令列表,这些命令可以是报文、硬编码函数、脚本子例程/函数或条件。开始块在开始时执行一次,循环块还包括报文、硬编码函数、脚本子程序/函数或条件,它是以定义的频率循环执行,并在定义的结束条件变为真时结束,结束块是在完成OK和完成NotOK时执行的序列。

3.2.7 全局条件

全局条件适用于所有脚本和序列,无论什么时候定义,都会执行所有脚本和序列,由于性能原因,全局条件仅适用于输出通道。

4 联合调试

数据采集系统通过本文的AK协议与AVLpuma台架相连,将ECU中的参数变量通过采集系统采集后传输到台架中并随着台架上的测量参数一起被记录下来。图3为联合调试现场图。

联合调试选取的是一款12TGDI型三缸发动机Delphi电喷系统,图中的工况及具体参数见下表5所示。

其余参数为ECU中独有的变量,例如点火角AVG等等,表5中AVLpuma参数与数据采集系统参数稍有差别,原因在于二个参数是不同部位的不同传感器采集出来的,所以会存在一定的误差。

5 结束语

使用C#开发语言利用WinForm友好的界面(图3下半部分)設计的ECU数据采集系统,基于CAN总线,采用CCP协议及AK协议开发了一套适用于发动机开发的试验参数监控平台。

该平台在Delphi系统的12TGDI发动机台架试验中得到了广泛的应用,试验结果表明:该平台可以可以移植到所有电喷厂家匹配的所有发动机台架试验中。

通过该监控平台可以对所有产品开发过程中的台架试验数据和电喷参数数据有序的结合在一起,有利于提高发动机产品开发的进度、提高产品试验过程中的故障诊断能力、方便试验人员对电喷参数调整和即时优化,降低试验开发设备投入成本,可以随时通过二次开发来达到试验目的,最重要的是可与AVLpuma台架无条件集成[14]。

参考文献:

[1]CCP CAN Calibration Protocol. ASAP Standard . 1999.

[2]基于ASAP2标准的A2L文件生成与解析技术实现[D].马亮.武汉理工大学.2015.

[3]基于CCP协议的电控发动机标定系统CAN通信模块的研发[J]. 冯静,王俊席,卓斌.内燃机工程.2003(05) .

[4]发动机自动化性能试验及标定系统[J]. 张跃涛,王绍光,张云龙.清华大学学报(自然科学版).2001(08).

[5]基于CCP协议的ESP在线标定系统的研究[D].杨攀.吉林大学 2016.

[6]基于CCP协议的电控单元标定系统通信模块[J]. 李高坚,袁观练,周洋,侯献军,邹斌.武汉理工大学学报(信息与管理工程版).2012(04) .

[7]基于ASAP架构的发动机ECU标定系统开发[J]. 庄继晖,谢辉,李苏苏,朱仲文.中国机械工程.2012(02) .

[8]电控柴油机产品ECU标定系统的开发与实现[J]. 穆春阳,孙立宁,杜志江,陈燕春.汽车工程.2007(07) .

[9]基于CCP协议的HEV用ECU标定系统设计[J]. 李雅博,张俊智,甘海云,卢青春.汽车工程. 2004(04) .

[10]INCA Manual R5.3. ETAS Group. 2005.

[11]基于CAN总线的电控发动机标定系统的开发[J]. 嵇翠华,孔峰,赵不贿,张育华.内燃机工程. 2006(05).

[12]基于CAN总线的汽油机管理系统标定平台开发[J]. 吴锋,于海威,邹博文.汽车工程.2006(06).

[13]计算机与AVL排放测试设备的数据通信实现[J]. 邱兆文,彭小红,李晓霞,王生昌.交通与计算机.2004(04)

[14]遵循AK与ASAM-3 MC协议完善内燃机测控系统[J].宋建中,申立中,郑永光,毕玉华,暴秀超.内燃机工程.2006(12).