基于MC33810的电控ECU点火驱动设计

2018-01-05 00:59吴长水黄敏涛汪志斌
计算机测量与控制 2017年12期
关键词:凸轮曲轴线圈

冯 琛,吴长水,黄敏涛,汪志斌

(上海工程技术大学 汽车工程学院,上海 201620)

基于MC33810的电控ECU点火驱动设计

冯 琛,吴长水,黄敏涛,汪志斌

(上海工程技术大学 汽车工程学院,上海 201620)

针对某六缸气体机电控系统,选择Infineon XC2785芯片作为微控制器,采用MC33810作为点火预驱动芯片设计了一套点火驱动;利用曲轴和凸轮信号进行相位信号分析与判断,以诊断得转速传感器工作是否正常;根据所判断的转速传感器信号正常或缺失情况,设计相应的点火输出控制策略;利用曲轴和凸轮轴进行压缩上止点相位判断并进行点火正时控制;根据转速的高低所带来的不同曲轴转角延迟,设计了数齿及计时的点火输出策略;最终通过试验验证了该算法的可行性。

诊断;点火提前角;脉谱;点火延迟

0 引言

点火系统是发动机的重要组成部分,对发动机的性能有绝对性的影响。在发动机工作时,为了精确控制喷油定时和点火时刻,ECU 需要准确的发动机转速信号以及各缸活塞在其工作循环的位置信号[1]。曲轴凸轮轴信号作为ECU计算转速和相位的主要输入信号,对曲轴凸轮轴信号的控制策略研究尤为重要[2-3]。为了准确输出点火信号首先就必须要对曲轴和凸轮信号进行处理。处理过程包括:信号诊断、判断齿间时间的合理性、判断数齿是否正常、分频、计算平均转速、给出同步信号等。诊断主要是判断有无信号输入MCU。本算法中使用Infineon XC2785芯片的捕获比较模块CCUx来处理曲轴和凸轮信号。如果信号输入正常,在每次检测到曲轴信号上升沿或者凸轮信号下降沿时进入捕获中断,如果发动机转速不为零但单片机判断长时间不进捕获中断则可断定传感器故障。对齿间时间合理性的判断是为了进行滤波、转速限制和判断发动机是否停止。曲轴和凸轮传感器信号输入单片机可能会有些许干扰。这样就导致信号上出现较多毛刺,干扰之后的转速计算。滤波算法是指首先给出一个发动机正常运行的转速区间,计算出相邻两齿间时间的范围。如果单片机捕获的齿间时间小于最小值则可认为是出现了毛刺或者是超出了最大转速。对于曲轴信号来说捕获模块定时器溢出时间为836 ms,预分频为12.8 us,如果信号齿间时间超出最大值甚至溢出就认为是停机。判断数齿是否正常是指在每次捕获到缺齿时(第一次相位不确定除外)判断上一齿是否是57或117号齿。捕获到多齿判断上一齿是否是7号齿(凸轮数齿整体加一)。曲轴平均转速是在对缺齿分频后叠加20次齿间时间并根据曲轴所转过的角度计算得出。凸轮平均转速是计时一周所得。同步信号是当缺齿来临并且靠近多齿时同步。点火信号在同步之后给出。

1 曲轴凸轮信号

本算法所使用的曲轴信号盘为通用60-2型。曲轴旋转一周共有58个正常齿、2个缺齿。凸轮信号为通用6+1型。凸轮一周共有6个正常齿分别代表发动机6个气缸以及1个多齿,多齿处于两个正常齿的1/2处。曲轴凸轮信号盘如图1所示。曲轴相邻两正常齿间角度为6 CA,缺齿为3倍正常齿间角度;凸轮相邻两正常齿间角度为60 CA,多齿位于两正常齿中间位置。

图1 曲轴凸轮信号盘

2 信号处理与计算

2.1 曲轴和凸轮轴信号处理

在ECU对曲轴和凸轮信号进行计算之前要先对信号进行处理。处理过程包括:信号诊断、判断齿间时间的合理性、判断数齿是否正常、分频等。诊断主要是判断有无信号输入MCU。本算法中使用Infineon XC2785芯片的捕获比较模块CCUx来处理曲轴和凸轮信号。使用英飞凌开发软件DaVE配置单片机的捕获比较单元,使用CCU60和CCU62模块分别捕捉曲轴信号和凸轮信号。设置捕获定时器T12和T13加入捕获中断和定时器溢出中断并使能输入通道。如果信号输入正常,在每次检测到曲轴信号上升沿或者凸轮信号下降沿时进入捕获中断,在中断中要区分是否是首次进入捕获中断,首次进入中断对应第一齿的开始时刻。算法认为每个齿的开始计时时刻都应该为零。所以首次进入捕获中断时置标志位F_FirstCrkInterrupt和F_FirstCamInterrupt为零,表示已经捕获到第一齿并清零定时器和重启定时器。如果发动机转速不为零而且单片机判断长时间不进捕获中断则可断定传感器故障。对齿间时间合理性的判断是为了进行滤波、转速限制和判断发动机是否停止。曲轴和凸轮传感器信号输入单片机可能会有些许干扰。这样就导致信号上出现较多毛刺,干扰之后的转速计算。滤波算法是指首先给出一个发动机正常运行的转速区间,计算出相邻两齿间时间的范围。如图2所示。(t2,t3)为下次曲轴信号下降沿的合理性范围。若下次的曲轴信号下降沿的位置在(t2,t3)区间内,则认为曲轴信号是合理的。若该下降沿落在区间(t1,t2),则表明发动机加速过快在大速度区间;如果下降沿的位置位于区间(t3,+∞),则表明减速过快在小速度区间。同时对于出现在(t1,t2)的曲轴信号下降沿,也有可能是高频干扰导致出现了毛刺。软件中认为如果齿间时间错误计数大于等于5则置标志位F_CrkSensor和F_CamSensor为0,该标志位指示曲轴和凸轮信号齿间时间是否正常。

图2 信号合理性判断示意图

2.2 曲轴凸轮转速计算

转速计算分为瞬时转速和平均转速的计算。对于点火和喷油过程来说,持续时间都在几毫秒内完成。在这么短时间内需要使用瞬时转速计算点火和喷油脉宽。首先计算发动机的平均转速,由于定时器溢出时间为836 ms并且对于每个齿都是从零开始计时所以不用考虑在单个齿间时定时器会溢出中断,因此捕获到的时间即为齿间间隔时间。设无符号整型变量i_Vary为累加次数。当本次齿间时间大于上次齿间时间的2.5倍时即捕获到了缺齿。然后对本次齿间时间除以3进行分频再累加,当条件i_Vary%20为零时调用曲轴平均转速计算函数计算平均转速。瞬时转速则在分频后每经过一齿便调用一次曲轴瞬时转速计算函数计算瞬时转速。凸轮信号由于相邻齿间间距较大,单片机在相邻齿间时可能会产生溢出中断,因此,需要设置一个变量F_Caminterrupt来记录溢出次数。这样一来凸轮齿间计数值就可以表示成:当前计数值+65536*F_Caminterrupt,累加一周后调用凸轮平均转速计算函数。

3 发动机相位判断

3.1 数齿正确性判断

在本算法中发动机要同步的首要任务是凸轮数齿正确。由于凸轮多齿在正常齿中间所以设凸轮多齿后第一齿为7号齿。如果凸轮信号正常,在缺齿来临时若此时凸轮齿为6号齿则置曲轴齿号为0号;若此时凸轮齿为2号齿则置曲轴齿号为60号。并且同时置同步标志位F_Syn为1。当下次缺齿来临判断上一齿号是否为57或117号齿,如果连续三次判断错误则置标志位F_CrkTeeth为0,表示数齿错误停止判断。

3.2 判缸方式

根据曲轴凸轮信号正常标志位的值可以将判缸方式分为4类。若曲轴信号正常、凸轮信号正常则使用方式1;若曲轴信号不正常、凸轮信号正常则使用方式2;若曲轴信号正常、凸轮信号不正常则使用方式3;最后,若曲轴和凸轮信号均不正常则输出判缸错误。如图3是发动机真实相位图。

图3 发动机曲轴凸轮信号

1)曲轴凸轮联合判缸:此模式下核心工作是准确找到缺齿后第一齿的齿号。已知真实发动机每缸所对应的压缩上止点(4-1-5-3-6-2)为12、32、52、72、92、112。当遇到缺齿时,凸轮位置可能处于2号齿范围和6号齿范围。若此时凸轮齿等于6,则缺齿后第一齿为0号齿;若此时凸轮齿等于2,则缺齿后第一齿为60齿。一旦确定了缺齿后第一齿的齿号则数齿就可准确找到各缸压缩上止点位置。

2)凸轮单独判缸:当曲轴信号失效时,要求发动机能由凸轮信号单独判缸成功。此为“跛车回家”模式,定义在每检测到一个凸轮齿后,在此凸轮齿之后72 CA处为相应气缸压缩上止点。如检测到凸轮齿1号齿,在此位置根据转速定时可输出1号缸压缩上止点;同理2号齿来临,则72 CA之后输出5号缸压缩上止点。

3)曲轴猜缸:当凸轮信号失效时,要求发动机能在曲轴信号单独作用下判缸成功。这种方法为“猜缸”模式。当缺齿来临时后一齿可能为0号齿或60号齿。首次猜缸时假设为0号齿则数齿12次后为4缸压缩上止点。如果一系列猜缸动作正确的话转速会上升,否则转速就下降。转速上升则程序认为猜缸正确,在齿号为12、32、52、72、92、112时输出4-1-5-3-6-2点火时序;如果转速下降则缺齿后第一齿为60号齿,然后在72、92、112、12、32、52输出3-6-2-4-1-5时序。连续猜缸三次不对就停止猜缸。

4)判缸错误:当曲轴和凸轮轴信号均失效时,判缸模式错误不进行判缸。

4 点火驱动设计

利用Infineon XC2785作为主芯片来驱动MC33810。MC33810作为Freescale新一代点火/喷油驱动芯片,具有响应速度快、耗能低等优点[4-5]。广泛应用于汽油机和气体机ECU中。MC33810通过SPI总线与主芯片进行同步串口通讯。本算法中MC33810的门控预驱动采用并行控制,即主芯片通过定时器输出高电平脉宽到MC33810的门控输入端GINx,相应的在门控预驱动GDx端口处输出相同脉宽波形来驱动火花塞点火。

4.1 点火提前角计算

点火模块在发动机相位确定后输出点火信息。要想在正确的时刻点火首先要计算出准确的点火提前角。为了使发动机动力性和经济性达到最佳,需要制定合理可靠的点火正时控制策略,点火时刻直接影响发动机的性能和燃料经济性,点火过早会导致爆燃,延迟点火能有效降低HC排放,减少爆燃。从而提高气体机的性能,达到环保的效果。但过迟点火又会降低发动机功率。点火提前角计算主要分为启动工况、怠速工况及正常运行工况。

1)起动工况点火提前角根据发动机转速和进气歧管绝对压力,查询起动工况的脉谱图获得起动条件的点火提前角。

2)怠速工况的基本点火提前角的确定是根据是否接通空调使能开关,用相应的代替值来作为点火提前角。

3)在发动机的正常运转中,实际点火提前角等于基本点火提前角和修正后的点火提前角之和。

电控发动机中点火提前角由一系列复杂的控制逻辑得出,其中核心是通过查转速和进气歧管压力的二维脉谱表得出基本点火提前角,然后再经过其他控制算法进行实时修正得到该工况下精确的点火提前角[6]。点火驱动中提前角大概在7~24 CA之间。

4.2 点火时间确定

点火能量是指发动机点火时火花塞两级之间跳火所释放的能量,是点火系统中重要的指标。确定点火能量水平的高低是由点火线圈初级绕组电流和初级绕组电流的通电时间决定,时间越长,在次级绕组的感应电动势就更高。但另一方面,确保初级线圈可以提供足够高的电流产生足够高的次级电压,但也要防止通电过长导致点火线圈过热。气体机所需要的点火能量一般比汽油机要大。为了确保不失火,点火能量一般在50~80 mJ范围内。所以程序中设置点火脉宽为3 ms。

4.3 点火驱动程序设计

在发动机电控中,点火提前角是从点火脉冲下降沿开始算起。点火脉冲结束,次级线圈开始触发点火。程序中在得到点火提前角之后还应计算出总提前角,其包含点火持续期内曲轴转过的角度加上在该工况下经点火控制策略得出的点火提前角。在算法中设变量IGN_Adv_total为总提前角,IGN_Adv为点火提前角,上止点齿号为TDC_Next,点火齿为IGN_Teeth,点火持续期为T_ms。则IGN_Adv_total=IGN_Adv+(6.0f*T_ms*CrkAvrgSpeed)/1000,公式后半部是将此转速下的点火脉宽转化成曲轴转角,CrkAvrgSpeed是平均转速,然后再计算IGN_Adv_total/6的值。若为整数则表示在上止点前提前整数个曲轴齿,此时不需要定时器输出延迟,点火齿IGN_Teeth=TDC_Next-IGN_Adv_total/6。点火齿来临即输出点火时刻,否则不为整数则表示在上止点前提前的曲轴齿数不为整数,此时需要定时器输出延迟,点火齿IGN_Teeth=TDC_Next- IGN_Adv_total /6-1,定时延迟结束输出点火时刻。点火算法流程如图4所示。

图4 点火程序流程图

5 试验与结果

对所设计的点火驱动进行试验测试,首先以点火芯片和IGBT为测量目标,测得点火芯片MC33810的GINx端输入信号和IGBT基极信号,如图5所示。图中上半部波形为GINx端输入信号,下半部波形为IGBT基极信号。此时,MC33810芯片接收来自主芯片的控制信号,输出相应的控制逻辑。脉冲波形稳定无其他波形干扰。

图5 点火脉宽3 ms时波形

再以点火线圈为测试目标,通过电流卡钳和示波器测得点火线圈电流和输入信号,如图6所示。图6上半部分为点火输入GINx信号,下半部分为线圈电流信号。点火线圈电流在3 ms点火脉宽高电平结束时电流立刻降到零,从而激发次级线圈产生高压,火花塞跳火。图中电流波形在点火信号高电平来临之后逐渐上升,如果DAC值或采样点阻值设置不当,波形后半部分会有下降趋势,原因则是MC33810芯片中电流DAC值与硬件电路上采样电阻未完全匹配,点火芯片在电流上升到DAC值之后进行了过流保护。

图6 输入信号和初级线圈电流波形

选择Infienon XC2785芯片作为微控制器,采用MC33810作为点火驱动芯片设计了设计了该点火算法。利用曲轴和凸轮信号进行相位信号分析与判断,以诊断得转速传感器工作是否正常。根据所判断的转速传感器信号正常或缺失情况,设计相应的点火输出控制策略。利用曲轴和凸轮轴进行压缩上止点相位判断并进行点火正时控制。通过试验表明,该算法可以很好地实现点火线圈的驱动,并且具有代码量小、执行效率高等优点。具有一定的应用意义。

6 结束语

选择Freescale MC33810与Infineon XC2785搭配作为点火系统硬件电路核心。能实现如下功能:

1) 以MC33810为核心的点火芯片可以直接驱动点火线圈,省去了复杂的驱动电路,减轻了CPU的任务负担;

2) MC33810具有门控驱动和低边驱动两类输出口。两类驱动输出均可由SPI串口控制,或由GINx和DINx并口单独输入控制。驱动方式灵活;

3)MC33810通过内部DAC设置电流比较阈值能够实时监测外部点火线圈电流。并可以通过IO口向XC2785发出点火驱动电流的反馈监控信号,保护点火线圈;

4)MC33810 能够实时监测点火电压、点火电流、线圈温度等,并可以诊断驱动电路是否出现短路或线圈开路等。通过试验表明,该算法可以较好地实现点火线圈的驱动,并且软件架构简单、代码执行效率高。具有一定的工程应用性。

[1] Jawad B, Hachem N, Bowerman W, et al. Engine control inputs and signal conditioning for crankshaft and camshaft position[C].SAE Paper, 2010-01-3092.

[2]朱 澄,龚依明,陈志超.汽车发动机曲轴和凸轮轴信号及汽缸压力信号模拟系统[J].自动技术与运用,2015(6):67-69.

[3]霍志毅.汽油发动机电子控制燃油喷射系统试验研究[D],河北工业大学,2013.

[4]飞思卡尔半导体有限公司.MC33810.pdf[EB/OL].http://cache.freescalecom/files/analog,doc/data_sheet/MC33810pdf?fsrch=1&sr=1,2010-07-01.

[5]谢春华,戴 华.MC33810 在四缸汽油机喷油与点火系统中的应用[J].集成电路应用,2012,38(3):60-63.

[6]凌宪政,吴长水,刘扬柏.基于openECU的点火正时控制策略设[J].计算机测量与控制,2016.24(8):96-98.

Design of Ignition Driven Based on MC33810 for ECU

Feng Chen,Wu Changshui,Huang Mintao,Wang Zhibin

(College of Automotive Engineering, Shanghai University of Engineering Science, Shanghai 201620,China)

In view of the electrical control system of a 6 cylinder gas machine,we selected Infineon XC2785 as the micro control union and designed a set of ignition driven based on MC33810.Through the analysis and diagnosis of crankshaft and camshaft signal,ECU could judge the state of speed sensor. According to the judgment of normal or missing state of speed sensor signal,we designed the corresponding output ignition control strategy.ECU used the crankshaft and camshaft signals to judge the compression TDC and controlled the ignition timing.According to the different crankshaft rotation delay on account of different rotating speed,the ignition output strategy of counting teeth and timing was designed.Finally the feasibility of the algorithm was verified by experiment.

diagnosis;spark advance angle;MAP;ignition delay

2017-04-02;

2017-06-07。

上海市科委“创新行动计划”项目(17030501300)。

冯 琛(1991-),男,河南周口人,硕士研究生,主要从事发动机电控方向的研究。

1671-4598(2017)12-0146-04

10.16526/j.cnki.11-4762/tp.2017.12.038

TP273

A

猜你喜欢
凸轮曲轴线圈
基于LSTM的汽轮发电机线圈的早期异常检测
超小型薄壁线圈架注射模设计
基于ANSYSWorkbench对凸轮结构动力学分析
浅谈共轭凸轮机构设计的方法
2007款日产贵士车点火线圈频繁烧毁
大连重工曲轴产值全国第一
以优化曲轴为目的的创新轴承设计
凸轮检测方法的误差分析
创新的曲轴零件试验方法
Moving On