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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.1 A2L 文件的解析 A2L 文件是依据 ASAP2 标准(表征控制 设备之间的接口定义、测量参数、标定参数、 参数存储形式、参数转换方式的一种通用性 定义)制定的,在发动机开发初期,大部分 电喷厂商在开发电子控制单元时都会将硬件 的参数信息、接口参数的信息和各种发动机 测量和标定的信息都会编制在 A2L 文件内 [2]。 本文对整个 A2L 文件进行解析时只对文件中 MEASUREMENT 参数进行提取如下图 1 所 示,其他参数略过,下面以 A2L 文件中一个 参数为例进行说明。 /begin MEASUREMENT SPEED “Filtered Engine speed” UWORD VfVIOS_n_EngSpd_DS_Scaling 0
2.2 CCP 协议 CCP 协 议 [1](CAN Calibration
Protocol)即 CAN 标定协议属于 CAN 通信
的应用层协议,采用主从通信的方式,该协
22 AUTO TIME
Copyright©博看网 . All Rights Reserved.
连接 获得 DAQ 大小
表2 协议的框架——命令行
设置 DAQ 列表
写 DAQ 列表 N
DAQ 列表是否写完 得到 S 状态(可选) 设置 S 状态(可选)
开始 / 停止采信 结束

1
2
功能
<STX>
/
表3 协议的框架——响应行

1
2
功能
<STX>
/
3...6 功能代码 Sxxx... Exxx... Axxx...
3.2.5 脚本 在脚本中,可以定义各种通用子例程 / 函数。借助这些不同的功能来控制测量装置。 脚本可以通过序列或任何其他脚本调用,这 些脚本可以支持复杂的驱动程序功能,也可 以帮助集成其他设备,通过 vbscript 的强大 功能,也可以提供数学计算、复杂验证或算法。 3.2.6 序列 序列是 CDH 设计的核心部分,它是设备 驱动程序执行的主体。 序 列 也 是 由 名 称 定 义, 序 列 由 CDP 或 PUMA 触发,由起始块、循环块和结束块组 成,所有块都是可选的。起始块包含块条目 命令列表,这些命令可以是报文、硬编码函数、 脚本子例程 / 函数或条件。开始块在开始时 执行一次,循环块还包括报文、硬编码函数、 脚本子程序 / 函数或条件,它是以定义的频 率循环执行,并在定义的结束条件变为真时 结束,结束块是在完成 OK 和完成 NotOK 时 执行的序列。 3.2.7 全局条件 全局条件适用于所有脚本和序列,无论 什么时候定义,都会执行所有脚本和序列, 由于性能原因,全局条件仅适用于输出通道。 4 联合调试 数 据 采 集 系 统 通 过 本 文 的 AK 协 议 与 AVLpuma 台架相连,将 ECU 中的参数变量 通过采集系统采集后传输到台架中并随着台 架上的测量参数一起被记录下来。图 3 为联 合调试现场图。
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>。
0x06
开始/停止
文中提到的 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 的数据开始采集
FRONTIER DISCUSSION | 前沿探讨
表4 拒绝响应的数据块列表
数据显示 K0 OF K0 BS K0 NA K0 DF描述原因离线没有连接
占线
操作不允许
不可用
缺少相关命令
数据错误
发送的数据或数值与允许 的范围不符。
PUMA 中的一个开放的子系统,CDH 的设 计是通过 AK 协议集成外部设备的必经之路。 集成 AVL 公司满足 AK 协议的外部设备很容 易,但是将其他的外部设备(满足 AK 协议) 集成到 AVLpuma 系统里是一项很难的工作, 这里需要 AVL 公司授权许可证并支付一笔高 额的费用。
FRONTIER DISCUSSION | 前沿探讨
基于 CCP 和 AK 协议的 ECU 数据采集系统在 AVLpuma 台架上的试验研究
娄建民 程雷 陈立洋 哈尔滨东安汽车动力股份有限公司 黑龙江省哈尔滨市 150066
摘 要:基 于 C# 开发语言利用 WinForm 友好的界面设计的 ECU 数据采集系统,该系统通过 ASAP2 标准的 A2L 文件解析实现对 A2L 文件中测量信息的读取,再利用串行通信协议 CAN 和 CCP 协议与 ECU 进 行信息交互,最后利用 AK 协议与 AVLpuma 台架实时通信将获取的 ECU 中的测量参数显示在台架上 的 POI 中,同时这些测量参数与台架测量的参数一起记录在 AVLpuma 台架里。该系统已成功普及到 多款增压直喷汽油机的性能测试和可靠性试验中,为发动机试验过程监控提供了更全面的保护。
0.000000
0.000000
8191.875000
ECU_ADDRESS 0x60002A54
DISPLAY_IDENTIFIER VfVIOS_n_EngSpd
/end MEASUREMENT
其 中 /begin 和 /end 是 分 界 符,
MEASUREMENT 为关键字,VRPM 为该关
本文读取 ECU 中的数据通过 C# 按照 图 2 中的流程图进行代码编辑即可实时采集 ECU 反馈的报文,再将反馈的报文进行解析 显示到窗口上。图中为本文用到的每个指令 代码及功能说明如表 1 中所示。
图2 通过CCP协议采集ECU数据的流程图
断开连接
表1 指令代码一览表
指令
代码
功能
备注
CONNECT
3…6 功能代码 Sxxx... Exxx... Axxx...
7 8 9 空格(20 Hex)
K.通道号标识 0.通道号
7 8
空格(20 Hex) 错误个数
n 空格 数据块 <ETX>
n 空格 数据块 <ETX>
AUTO TIME 23
Copyright©博看网 . All Rights Reserved.
0x01
建立逻辑连接
DISCONNECT
0x07
建立逻辑断开
GET_DAQ_SIZE 0x14
获取DAQ大小
SET_DAQ_PTR
0x15
设置DAQ列表
WRITE_DAQ
0x16
写DAQ列表
GET_S_STATUS 0xOD 获取会话状态 可选
SET_S_STATUS 0xOC 设置会话状态 可选
START_STOP
键字内的参数名,“Filtered Engine speed”
该参数名的注释,UWORD 为该参数的数据
类 型,VfVIOS_n_EngSpd_DS_Scaling 为 该
参数的转换标识符用于中间变量的计算等使
用,以下依次为该参数的分辨率、精度、下
限值、上限值,ECU_ADDRESS 为该参数在
ECU 中的存储地址(可选项),DISPLAY_
后数据(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> 开 头, 或 者 函 数 代 码 是 未 知, 系 统 响 应 如 下 为 < STX> ???? n < ETX > 。 如 果 控 制 / 调整命令被正确接收,则不显示数据块。如 果无法执行控制 / 调整命令,则拒绝的原因 将显示在数据块中如下表 4。 3.2 CDH 的设计 CDH( 可 配 置 设 备 处 理 程 序) 是 AVL
IDENTIFIER 为该参数的一个替代名称(可
选项),可选项的意思就是该项内容可以出
现一次或者不出现。
本文对于 A2L 文件中的接口数据(ECU
与采集系统通信的配置信息)可以在采集系
统的界面直接输入,该采集系统未对标定等
关键字进行调用,参考文献 2 中对 A2L 文件
进行了全方位的解析,这里不做过多介绍。
在一款汽油机的开发阶段,台架的测试 是其中最重要的阶段之一,在台架进行 ECU 标定时国内几乎使用都是 EATS 的 INCA 标 定软件,但在开发阶段的样机耐久考核时也 需要随时监控 ECU 的数据变化情况,以便更 早的发现样机的问题,避免一些无法挽回的 损失。而一般试验室都几十个台架全部使用 INCA 造价将非常高,而且耐久考核只监测 ECU 中的测量参数不对所考核样机的 ECU 进行更改,所以使用 INCA 多少有些浪费, 在与 puma 台架通过 ASAM-3MC 协议连接 时需要设置大量的 NormName 来实现记录, 过程较为繁琐而且连接步骤也颇为麻烦。目 前国内及国外大部份车企及主机厂所用的台
FRONTIER DISCUSSION | 前沿探讨
时代汽车
图1 MEASUREMENT参数提取流程图
开始
打开 A2L 文件
读取一行
Y 最后一行?
N
N
开始分界符?
N
Y
测量关键字?
Y 模块化提取 N
最后一行?
Y 关闭 A2L 文件
结束
议主要用于对汽车动力的电子控制单元进行 标定,同时可进行电子控制单元内部的数据 采集和监控。
关键词:CCP 协议;A2L 解析;AK 协议;AVLpuma 台架
1 前言
近年来,随着汽车产业的发展汽车电气 化程度越来越高,虽然目前新能源电动车越 来越多,但是当下在汽车的产销量上还是很 难与传统内燃机的汽车相抗衡,即便是在动 力系统上电机和内燃机在电气化的控制上还 是内燃机的控制稍显复杂。这一点在电机和 内燃机台架测试开发阶段显现的更为明显, 在大家熟知的 AVLpuma 台架中,不论是台 架测量的参数还是电子控制单元的标定参数, 还是台架对动力系统外围冷却系统的控制上, 内燃机的台架还是比电机的台架更复杂。
架基本使用 AVL 公司生产的 puma 系统,该 系统功能强大、稳定、可扩展其他应用。
本文以国内某知名电喷系统为例,介绍 了 A2L 文件解析及 CAN 标定协议通过串口 通信 CAN 协议采集 ECU 数据再通过 AK 协 议和编制 puma 中的 MDD 配置文件实现与台 架通信的试验研究。
2 数据采集系统的设计
相关文档
最新文档