本文中设计了基于控制器局域网标定协议(CAN calibration protocol,CCP)的纯电动车VCU标定系统,研究了核心控制策略,针对控制策略利用CAN总线快速传输数据的特性,对VCU进行有效的监控和标定,验证了VCU的各项性能。
1 CCP协议
1.1 通信方式
CCP是基于CAN的应用层协议,CAN总线通信速率最高为1 Mbps,且每帧报文可缓存8个字节数据,故通过CAN总线传输数据实时性好。采用主从通信模式,上位机标定工具作为主设备,可以连接多个控制器从设备。但任意时刻,只允许一个从设备与主设备进行通信,需要断开与当前控制器的连接,才能建立与其他控制器的通信。基于该CCP协议可随机读取控制器中 RAM和 ROM数据,进行FLASH编程来测量和标定数据。
1.2 消息对象
使用命令接收对象CRO(command receive object)和数据发送对象 DTO(data transmit object)两条报文完成信息交互。CRO报文用于上位机向控制器传输命令,DTO报文用于控制器反馈给上位机应答数据。控制器接收CRO后,会响应DTO报文。根据ID不同可将DTO分为3类:ID=255的CRM(command return message)是 VCU反馈给上位机CRO命令的执行情况;ID=254是VCU检测到内部发生错误时,向上位机报告其运行状态,并请求暂停当前任务以处理错误;ID=0-253用在DAQ模式(data acquisition command)中,由从设备组织周期性向主设备发送。
1.3 工作模式
CCP协议规定了查询(Polling)和数据获取(data acquisition,DAQ)命令两种工作模式。Polling模式是上位机发送CRO命令,VCU接收该命令后再反馈,两者之间不断交互实现数据交换,实现简单、占用资源小,但效率较低。DAQ模式不需要请求,VCU自主按照一定周期向CANape上传数据,通信效率高,但过程复杂,且数据较多时会占用较大的空间。
2 整车控制器的控制策略
VCU作为整车的核心主控制器,通过采集加速踏板行程等信号并由总线与控制器进行信息交互,来处理接收的信息以判断整车状态,并输出指令协调各控制器,实现整车的加电、断电、挡位切换、驾驶驱动、能量回馈和故障处理等功能。
2.1 整车加电、断电策略
只要出现断电重新连接电源、钥匙切换至非OFF挡、通信网络上检测到CAN信号任意一种情况,就执行低压加电策略进行自检。未处于高压电时,检测到OFF挡或无网络管理报文,才允许进入低压断电处理。
电池管理系统和VCU共同控制高压继电器,以满足高压负载的加电、断电需求,同时通过高压连接互锁确认高压插件的可靠连接。低压加电成功的前提下,检测到ON挡、插枪充电请求、DC/DC请求等高压连接需求后,执行高压加电流程。检测到钥匙关闭、充电完成,执行高压断电,然后执行主动放电,放电结束后进入休眠状态。
2.2 挡位切换策略
当钥匙处于ON挡时,检测由挡位执行器发出的硬线信号。若请求挡位和当前目标挡位相同,表明不需要切换挡位;若不同,则根据制动踏板、车速和挡位等条件进行换挡判断,解析得到当前挡位信号,并将其发送至其他控制器。
2.3 驾驶驱动策略
通过牵引电机逆变器将锂离子电池的直流电转换为交流电,并用该交流电操作牵引电机以产生牵引力。综合考虑加速踏板行程、制动踏板行程、车速(或电机转速)、电池状态、电机状态、挡位、转矩限制信号,根据整车设计要求的踏板软硬属性要求制定的比例图计算得出目标转矩命令请求[5],通过该信号驱动电机输出转矩,通过模式指令控制电机旋转方向。
若检测到加速踏板和制动踏板信号同时有效,则制动功能优先,仅响应制动请求。若判断车辆充电连接线为连接状态,则禁止车辆驱动。一旦触发高压断电流程,无论条件是否满足,均须快速将转矩降到0。
2.4 能量回馈策略
车辆滑行或减速制动时,根据挡位、车速、制动踏板、加速踏板、电池、制动防抱死系统状态等信息计算目标转矩,并将其发送至电机控制器。此时,电机工作在发电状态,在保证滑行或制动需求的基础上,最大程度地将能量回馈给蓄电池,以延长行驶里程。
2.5 故障处理策略
各控制器负责检测自身故障并上报故障等级,整车故障分为无故障、轻微故障、一般故障、严重故障和重大故障。发生故障时,根据故障等级协调整车故障处理,记录故障并施行报警显示、降功率保护和切断高压等保护措施。故障消除后,依据自身定义的故障恢复机制解除故障。
3 标定系统总体设计
为实现标定功能,设计了如图1所示的标定系统,该系统主要由下位机VCU、CAN通信工具CAN-case和上位机CANape组成。上位机和下位机都集成了CCP驱动,故通过通信工具可相互解析。如今,CAN网络广泛应用于汽车中,大多数微控制器都集成了CAN模块且可参与网络通信,只要控制器支持CAN通信,通过集成CCP驱动即可使用该系统对其进行标定,具有较好的扩展性。
图1 标定系统结构
CANape是用于测量、标定和诊断电子控制单元的工具[6],可以使用多种窗口进行图形化显示、通信报文的跟踪分析和数据的记录与管理。A2L文件是工业标准文件,描述变量在控制器中的存储地址、存储结构、数据类型、限值和转换公式[7]。设计VCU应用程序时,会根据需要为每个标定参数和测量数据命名,如电机驱动转矩和制动回馈系数等。当需要访问某个变量时,根据变量名即可在A2L文件中找到该变量的相关信息,通过指令对其进行读取和修改。
3.1 硬件部分
VCU硬件平台主要由单片机、单片机外围、电源调理、数字与模拟输入调理、低边与高边驱动和CAN通信模块组成。选用英飞凌公司的XC2267M芯片作为主控芯片,处理速度快,片上和外设资源丰富,832 KB的FLASH存储区和32 KB的RAM存储区。内部集成了CAN通信模块,可直接收发数据。中断节点多,采样速率快,满足系统唤醒需求且性能稳定、功耗较低。
3.2 软件部分
为高效管理复杂的软件系统,采用模块化方案设计了CCP驱动、CAN驱动和FLASH驱动程序,通过调用 I/O、时钟、定时器、串口通信、ADC、看门狗和外围芯片等基础驱动程序访问硬件实现各功能,提高程序的复用率和可移植性。
3.2.1 CCP驱动
CCP驱动由头文件ccp.h、源文件ccp.c和配置文件ccpar.h 3部分组成,通过调用CAN驱动程序收、发报文实现数据交换。ccp.h文件中包含了28条命令的宏定义,定义了相关数据结构,声明了驱动的所有函数。ccp.c文件包含了DAQ处理模块和命令处理模块程序。首先进行初始化,解释并执行CRO命令,然后确认前一个DTO发送成功,再发送下一个DTO命令。DAQ模式下根据事件通道发送DAQ-DTO消息。ccpar.h是配置文件,通过更改配置实现不同的功能。定义ECU地址、CRO和DTO的ID标识符,匹配DAQ通信模式信息,配置可选命令等。
3.2.2 CAN驱动
CAN通信程序包括接收报文和发送报文两部分。在主程序中发送CAN报文,采用中断方式接收报文,可降低系统功耗。由于初始化时已经设置了报文的ID等内容,所以发送报文时,只需要按照通信协议,编辑准备发送报文的数据内容,主程序以一定周期循环发送报文。由于设置了接收中断,在中断服务函数中接收报文,一旦相应的消息对象发生中断,则从接收FIFO(缓冲区)获取报文。
3.2.3 FLASH驱动
将数据写入FLASH前,需要先给它解锁,先擦除存储区域,确定擦除完毕后即可写入数据。为防止系统掉电后丢失标定参数信息,应将其存放在FLASH或ROM中,起始地址为0xE01000,VCU加电并初始化后,会将标定参数的初始值复制到RAM中。在标定工具中用来存放标定参数的RAM称为Calibration RAM,起始地址为0xCBD000。标定工具修改该段RAM中的参数值,完成全部标定后,再将更新后的参数值统一复制回FLASH或ROM。标定区域地址映射程序如下:
4 实车标定
4.1 控制参数标定过程
使用CAN通信工具连接VCU与上位机,运行CANape软件,新建项目工程文件。选择CCP协议作为通信协议,配置网络通道和波特率,导入VCU编译生成的map文件,并根据该文件创建并编辑A2L文件。设置与VCU内部软件相同的主、从设备和ECU地址,然后测试主、从设备的连接情况。
在Trace窗口中监控的通信报文如图2所示。ID是43的报文为CRO报文,第0、1、2字节分别为测试命令05、命令计数值02和ECU地址00,其他字节无实际意义。ID是44的报文为DTO报文,第0、1、2字节分别为VCU反馈CRO命令的执行情况FF、命令返回值00(代表无错误)和命令计数值02,其他字节无实际意义。图2中的通信报文表明测试连接成功,已建立通信。
图2 主、从设备测试连接的通信报文
根据VCU程序保护情况确定是否勾选Seed&key和选择相应的dll文件,定义需要测量或标定的变量,并将其与VCU内部变量进行关联。完成上述配置后,开始进行测量和标定。通过CANape软件读取RAM内存储的控制参数,按照需求进行修改,利用CAN总线传送修改后的参数,最后将其存储至FLASH中。
4.2 实车控制参数的标定
标定过程中,首先在不同模式下分别调整驱动转矩或回馈转矩等单一控制参数,然后根据实际运行情况并行处理多个转矩参数。对于转矩限值等参数处理,则需要综合考虑不同工况下的运行状态,以提高标定的准确性。同时记录、存储实时数据,标定完成后,可使用存储的数据进行离线分析。
4.2.1 驱动模式整车目标转矩的标定
电机转速 加速踏板行程-电机转矩特性曲线如图3所示。不同电机转速和加速踏板行程下,根据该曲线可得到需求转矩。再根据理论最大、最小限值和整车功率等条件进行修正,最后再取平均值得到目标转矩。通过修改数据表对该曲线进行标定,优化整车需求转矩。更换电机时无需修改程序,直接通过标定更新该曲线即可。
图3 电机转速 加速踏板行程-电机转矩特性曲线
加速特性测试曲线如图4所示。挡位为N挡时,加速踏板信号有效,转矩为0。挡位切换至D挡后,制动踏板无效时,随着加速踏板行程的增大,电机转速升高,转矩增大。转矩达到最大值后,电机转速继续升高,直至当加速踏板释放时又开始下降,转矩逐渐减小。
图4 加速特性测试曲线
4.2.2 滑行回馈、制动回馈模式下转矩的标定
滑行和制动模式下的转速 回馈转矩特性曲线分别如图5(a)和图5(b)所示。不同电机转速下,根据该曲线即可得到回馈转矩。通过对该曲线进行标定,最大限度地回收能量。
图5 转速 回馈转矩特性曲线
制动能量回馈测试曲线如图6(a)所示。制动踏板有效时,转矩迅速降至负值,进入制动能量回馈模式,电机转速下降。滑行能量回馈测试曲线如图6(b)所示,加速踏板行程下降至0时,进入滑行回馈模式,转矩迅速降为负值,电机转速下降,待转速降至较小值后,转矩缓慢上升恢复至0。整车驾驶驱动控制策略能准确响应驾驶员意图,并在滑行和制动过程中回收能量。
4.2.3 不同工况的转矩平滑处理
根据不同驾驶工况,分别对转矩进行平滑处理,不同电机转速下电机转矩的最大、最小限值分别如图7(a)和图7(b)所示,通过标定满足VCU的动力性、舒适性和经济性要求。
5 结论
图6 滑行、制动能量回馈测试曲线
图7 转速-限值转矩特性曲线
设计了VCU的控制策略,针对控制策略使用CANape软件对VCU的转矩等控制参数进行测量和标定,对不同工况的转矩进行了平滑处理。经过反复实车调试,VCU可较好地实现预期控制策略,运行稳定、可靠,达到了性能要求。基于CCP协议的标定系统可实现对变量的快速准确监控、基于地址的数据标定、FLASH编程和程序刷写操作,能够满足数据采集的实时性要求,且具有较好的扩展性,缩短了VCU的开发周期,节约了开发成本。