推荐产品3推荐产品2推荐产品1
新闻内容News

主设备参数在线基于CCP电池控制器在线标定系统的研究方案

摘要:本文介绍了广泛应用于在线标定的*协议(Can Calibration Protocol), 基于该协议设计了一种应用于混合动力汽车电池控制器(Battery Control Unit, BCU)的在线标定系统,通过该系统来设置BCU的相应参数,以达到实时监控电池状态,调节BCU以及整车性能的目的。

1 引言

  在混合动力汽车中,电池管理系统负责监控电池状态,确保电池安全,更重要的是, 实时估算电池可提供的充放电功率,为整车能量分配控制策略提供重要依据。因此,电池 管理系统所测量电池状态,包括电池电压、温度、电流,以及估算的参数,如SOC, SOH,可提供的充放电功率需要实时监控,其估算算法所需要的参数需要根据实车试验结 果修改,因此需要一种方便可靠的方式可以实现实时监控与在线标定。传统的SCI 串行通 信监控和标定方式存在通讯速率慢、协议不统一、扩展性差等缺陷。相对于基于串口的标 定系统,基于* 的标定系统具有如下几个明显的优点:

  (1)基于 CAN 总线通信,标定速度快;

  (2)可读写 ECU 内存范围大;

  (3)可进行 Flash 擦写和编程;

  (4)可同时对多个ECU 标定、测试和诊断。

  作者为HEV 动力系统BCU 设计了一套基于* 协议的标定系统,实现对其的在线标定和实时监控。

  2 * 简介

  2.1 建立连接

  基于 * 协议的ECU 标定采用主、从通信方式,主设备通过CAN 总线与多个从设备 相连,如图1 所示。其中主设备测量标定系为MCS(Measurement Calibration System), 从设 备是需要标定的ECU,在这里为BCU。


  根据* 协议,主设备首先与其中一个从设备建立逻辑连接。建立逻辑连接后,主、 从机之间所有的数据传递均由主机控制,从机执行主机命令后返回包含命令响应值或错误 代码等信息的报文。任何一个从机都可以定时地根据由主机通过控制命令所设置的列表来 传递内部的数据。所以说数据的传递是由主机初始化,由从机来执行,并且是由固定的循 环采样频率或事件触发的。

  2.2 两种工作模式

  * 协议定义了两种工作模式: 一种是Polling(查询)模式,另一种是DAQ(数据采集) 模式。在本文所设计的标定系统中,由于需要监控与标定的变量,如电池电压,温度,电 流,SOC 可提供的充放电功率等均为定时更新,因此采用了DAQ 模式。

  2.3 数据对象

  * 协议规定,主设备发送给从设备的数据对象为CRO(Command Receive Object),传 达主设备下达给从设备的命令;从设备发送给主设备的数据对象为DTO(Data Transmission Object)。

  根据报文PID 的不同,DTO 又可以分为三种形式:

  · 命令返回消息(PID=255):从设备收到CRO,完成命令要求动作后,向主设备发送命令应答。此时该DTO 亦称为CRM(Command Return Message)。

  · 事件消息(PID=254):从设备发生事故或其他需主动向主设备汇报的事件时,由从设备自行向向主设备发送DTO 来进行汇报,报告其当前的运行状态,并请求主设备暂停当前工作进程以处理发生的错误。此时该DTO 被称为Event Message。

  · DAQ—DTO(0≤ PID ≤ 254):若主设备要求,从设备可按某周期自动将需要被实时监视的数据发送给主设备,此时该DTO 被称为DAQ—DTO 帧。

  根据BCU 实际工况,为BCU 开发的* 协议采用DAQ 模式,使主设备可要求该设 备按照制定的周期自动将需监视的数据上传,而无需对每个数据都发一次上传数据命令来 要求从设备上传。

  DAQ 传送的数据由一系列表来组织,这些表被称为ODTs(Object Descriptor Tables)。每 个ODT 表含7 个元素,可描述7 个ECU 内部参数的相对地址及数据长度等属性。这些被 ODT 描述的参数,就是需要从设备用DAQ—DTO 帧周期发送给主设备的被监视数据;而 这些属性被称为“参数描述”,它们可帮助从设备DAQ 处理代码确定该参数的当前值。ODT 中描述参数,及各参数的“参数描述”由主设备通过CRO 命令写入。当从设备的DAQ 机制 被启动时,从设备按主设备要求的周期,将每个ODT 表描述的ECU 参数当前值顺次放入相应的DAQ—DTO 帧中,并发送给主设备。用户可将有相同DAQ—DTO 周期的ODT 组织 为一个DAQ—List,各DAQ—List 使用不同的CAN ID。该周期亦由主设备发送命令写入。

  3 标定系统DAQ 模式实现

  3.1 系统构成

  标定系统的软件设计主要分为两个部分:CAN Driver 和* Driver。本方案的BCU 采 用Freescale 公司的MC9S12DT128 单片机,芯片整合了CAN 通讯模块,因此可以直接应用 芯片提供的接口发送CAN数据。* Driver 是标定系统的核心部分,它主要通过调用CAN Driver 实现与上位机标定软件的通信,从而进行对BCU 的在线标定。

  3.2 实现过程

  标定系统的实现过程如下:

  (1)上层标定软件部分定义List 的数目、各List 中的ODT 数目以及各ODT 中的元素数目。

  (2)BCU 按照上层的定义,确定自己的数据结构。即上下层都定义一个三维的数组(List, ODT,Element),用来存放映射关系。

  (3)上层通过协议命令初始化ODT 。首先, 上层发送GET_DAQ_SIZE 命令(参数为List 号),得到指定的List 大小(number of ODT in this list),并得到该List 中DTO 的第一个PID 号。然后,上层发送SET_DAQ_PTR 命令(参数为List 号、ODT 号、ODT 中的元素号),指 定需要初始化的参数单元。

  最后, 上层根据SET_DAQ_PTR 命令设置的具体元素,发送 WRITE_DAQ 命令(参数为DAQ 元素的byte 大小,DAQ 元素的地址),反复通过SET_PTR 和WRITE_DAQ 两条命令,初始化完一个具体的ODT 表,然后初始化完一个具体的List 表,最后初始化完所有的List 表格。至此,初始化ODT 工作结束。

  (4)开始和停止DAQ 数据的传输。上层发送START_STOP 命令,指定的ODT 数据开始上 传。ODT 将其中的每个元素复制到其对应的DTO(8 个字节,1 个PID 号,7 个存放数据) 中,然后以Data AcquisitionMessage 的形式返回给上层的标定系统。DAQ 模式到此为止。

  4 BCU 在线标定的具体实现

  根据 BCU 实际运行的需要,需要标定的参数设定为电池电压、温度、SOC、SOH 以及 可提供的充放电功率。主设备与BMS 间的通信需要ASAP2 数据库文件(*.a2l)的支持。 该数据库记录了BCU 中各参数的详细信息.包括参数在控制器中的存储地址、存储结构、 数据类型和偏移量等。主设备需要通过该文件来对BCU 的参数寻址。主设备访问某个变量 时,在该数据库文件中根据变量名,找到该变量在控制器中的存储地址、数据长度等信 息,进行修改操作。通过BCU 单片机软件生成的smart linker map file(*.map)文件,该文件 中包括程序中所有变量的详细信息,按照ASAP2 数据库文件的格式做相应的转换,提供给 标定的上位机软件。

  5 结语

  该 BCU 标定软件经过多次实车调试,此标定系统运行稳定可靠,能够对汽车系统中的 ECU 进行在线标定,并可以针对不同用户需求提供不同的定制功能。这个采用* 协议的 汽车发动机标定系统具有符合国际通用标准、通用性好、对不同硬件与不同需求适应性强 的特点,因此有很好的开发应用前景。

  本文作者创新点:应用* 协议实现对BCU 的实时监控和参数的在线标定。

 0.45327997207642 s