基于L9177和CAN总线的摩托车发动机电喷控制单元设计
2012-08-21张宗哲
张宗哲
(同济大学,上海 200092)
目前以8位、16位微处理器为控制核心的数字式电子控制,因其小巧、灵活和较强的数据分析和处理能力推动了摩托车电喷技术的迅速发展.但是由于传统的摩托车电喷一般使用RS232或K线作为对外的通信方式,在进行系统在线标定和数据实时采集时,这种方式的实时性无法得到有效的保证.同时,传统的控制单元大都采用分离器件,这必然使可靠性大大降低,成本上也毫无优势.小排量汽油发动机电控燃油喷射系统能够实现且得到大量应用,成本是其中的关键,而降低成本,必须从喷射系统的结构精简、功能复用和算法优化上进行创新,并为此设计了一种基于集成器件L9177和CAN总线的摩托车发动机电喷控制单元[1-2].
1 总体框架设计
摩托车发动机电喷系统从整体结构上来看,包括各种传感器、电子控制单元 (ECU)和执行机构[3].其中,ECU是整个系统的核心部分,它根据曲轴位置传感器产生的信号计算出曲轴角度和转速;根据进气压力传感器,节气门位置传感器及进气温度计算出发动机进气量;依据进气量和发动机转速计算出基本喷油持续时间,然后进行缸温、电池电压的修正,得到最佳喷油持续时间;同时根据发动机转速和节气门开度得到点火提前角,精确地控制发动机运转.除了正常的维持发动机的运转外,ECU还需要和外部设备进行通信,比如转速信息,故障信息,标定数据等,同时把必要的信息存储到FLSAH或EEPROM中.整个系统的外围框图,如图1所示.
图1 摩托车发动机电子控制单元系统外围框图
2 硬件设计
2.1 系统主要组成部分
电子控制器ECU主要分为以下几部分:
1)电源部分.电源保护模块和电源检测模块.
2)MCU模块.ECU的核心模块,与各模块连接及实现各模块之间的相互联系,处理各种输入输出信息,进行控制算法的运算及输出.
3)输入信号监测处理模块.对各传感器信号进行滤波后输出到MCU.整个系统正常工作的信号来源于各传感器,各传感器测定的准确与否决定了整个系统的控制质量.
4)控制输出模块.包括喷油输出控制处理模块和点火输出控制处理模块.
5)通信模块.通过CAN总线,遵循相关协议,ECU系统可与外部设备完成实时通信,实现诊断,标定,信号采集等工作.
2.2 主要器件选择
根据确定的ECU总体设计方案,控制单元ECU的微处理器选用Renesas公司推出的低功耗16位单片机R8C23,CAN总线的收发器采用NXP公司的TJA1050.电源、曲轴信号输入及控制输出部分采用了ST公司专门为摩托车电喷系统推出的集成器件L9177.主要硬件连接结构示意如图2所示.
图2 系统的主要硬件连接结构示意图
3 软件设计
3.1 后台前台程序设计
摩托车发动机软件有较高的实时性要求和时序要求,结合微处理器外设的中断工作模式,采用“后台程序/前台程序”的结构形式.后台程序处理参数计算等实时性要求较低的部分,在主函数的主循环中实现[4],流程见图3.前台程序负责处理实时性要求很高的部分,如:数据采集、喷油、点火定时等部分,利用微处理器的中断,流程见图4.
后台程序其实就是单片机的主循环.初始化程序设定MCU中相应的寄存器及对控制算法中相应变量的赋值;数据处理模块对前台程序中采集的转速、进气压力、节气门开度、电池电压、温度等信号进行换算和滤波,把AD值变成物理值;“工况判断”根据转速、节气门开度和进气压力判断当前工况;“喷油计算”根据工况和当前转速、进气压力、节气门开度、电池电压和温度等信息计算当前所需的喷油量和喷油时刻;“点火计算”根据工况和当前转速、进气压力、节气门开度和电池电压等信息计算当前所需的点火提前角和点火充电时间;诊断模块用于监控系统的状态;通信模块主要基于CAN通信,可以实时可靠的和外界信息数据通信.
图3 后台程序流程图
图4 前台程序流程图
前台程序的运行主要利用单片机的输入脉宽测量功能对曲轴采集信号产生的中断,在中断中判断当前齿数,并根据不同的齿完成不同的任务.数齿模块判断当前曲轴的位置;AD信号采集模块根据不同的曲轴位置进行相应的信号采集;喷油模块根据后台程序中所计算的喷油时刻及曲轴的位置情况判断是否喷油;点火模块根据后台程序中所计算的点火提前角、点火充电时间并通过转速计算曲轴的点火位置情况判断何时点火.
3.2 CAN模块功能设计
在系统初始化程序中完成对CAN的相关设定,包括ID、数据长度、波特率等.CAN数据的发送和接收主要通过单片机的中断完成.当需要进行实时数据采集、系统标定,或者ECU检测到当前系统故障,或者读取ECU相关信息时,后台程序中的CAN模块主要把接收进来的数据根据不同的命令和功能要求进行相应的处理,然后把处理完的数据发送出去,以完成不同的功能要求.摩托车发动机CAN系统功能结构如图5所示.
图5 CAN系统功能结构
根据CAN系统的功能结构,系统采用CCP协议[5],CAN的波特率为 250 k,ID为标准 ID,0x111代表上位机,0x112代表ECU.基于CCP协议的ECU标定系统采用主-从通信方式,主设备是测量标定系统上位机,从设备是需要标定的ECU.基于CCP协议的标定只占用两帧CAN报文,分别是命令接收对象CRO和数据传输对象DTO,CRO由主设备发给从设备,DTO是从设备反馈的报文.按照CCP协议,CRO数据场的第1个字节为命令代码CMD,从设备通过CMD代码判断主设备请求的是哪条命令.数据场的第2个字节是命令计数器CTR.剩余6个字节均为命令参数,每条命令有各自对应的命令参数.CCP标准帧的数据格式如图6所示.
图6 CCP标准帧的数据格式
4 实验与效果
通过对一台排量为125 ml的摩托车进行标定,得出基本喷油三维图如图7所示,基本点火提前角三维图如图8所示.
利用已经标定好的基本喷油三维表和基本点火提前角表,在对同一台车4档40 km的工况进行验证,测量经过三元催化后的排放数据如表1所示.
表1 排放数据对比表
根据排放看出CO达到了限值27%,HC达到了限值48.5%,NOx达到了限值60%.整个系统可以满足国III排放要求.
5 结论
采用L9177和CAN总线摩托车电喷系统控制单元ECU具有体积小、抗干扰能力强,且工作稳定性强,数据实时性强,而其成本低廉,有较高的工程价值.采用CAN接口的控制单元,既可以作为一个独立的摩托车电喷控制系统进行数据采集、系统标定、诊断等工作,也可以作为构成整个摩托车系统的一个关键部分,为以后各种系统的扩展提供一个高速接口.CAN的各种上层协议都可以在软件代码中实现使得该ECU接口灵活,不受上层协议和功能的限制.
[1] 王预进,江发潮.车载网络的现状与发展 [J].车辆与动力技术,2008(1):54-57.
[2] 张 奇,徐国强.小排量汽油机电控燃油喷射系统技术进展 [J].小型内燃机与摩托车,2011,40(2):89-92.
[3] 郗大光,张 平,杨延相,等.电控发动机开发系统的研究[J].摩托车技术,2002(1):6-9.
[4] 田建勇.摩托车电喷系统电控单元 (ECU)的开发研究 [D].天津:天津大学,2008.
[5] Kleinknecht H.Version 2.1.CAN Calibration Protocol[S].Europe.AUDI AG,BMW AG etc.1999:1-49.