湯惠淞,吳長水
(上海工程技術大學機械與汽車工程學院,上海 201620)
隨著電子控制技術的發展,發動機位置管理由原來的機械式發展到精確的電子控制,通過傳感器對曲軸和凸輪軸信號的采集和算法標記,可確定發動機實時位置和最佳噴射正時,實現對噴射系統的實時控制。黃宇[1]研究雙燃料發動機改造關鍵技術,即對噴射系統的改造技術;趙叢姣等[2]研究噴射正時對燃燒規律的影響,即實現噴射系統精確控制,發現燃油噴射系統參數噴射提前角、噴射正時控制等對發動機的燃燒特性、經濟性和排放性等有重要影響;楊騏菲等[3]對曲軸信號處理和倍頻進行研究,發現有效的倍頻信號可提高噴射系統控制精度;張暉等[4]、李利平等[5]對雙燃料發動機的噴射系統進行研究,精確的噴射系統控制都是以準確的曲軸信號為基準,因此曲軸信號精度將影響整個發動機的性能。本文根據TC1728 微控制器的豐富資源,設計高精度倍頻曲軸信號算法,可從倍頻后的曲軸信號獲取豐富的發動機位置信號,實現對發動機精準的噴射控制。
本文以英飛凌公司AUDO MAX 系列中32 位高時鐘頻率微處理器TC1728[6]作為主控芯片。TC1728 具有多個內核,其中央處理器和片上外圍設備的工作頻率相互獨立,中央處理器最高工作頻率可達133MHz,片上外圍設備工作頻率可達80MHz。還具有精簡指令集(RISC)處理器構架、數字信號處理器(DSP)操作和尋址模式、片上存儲器和豐富的外設資源,如中央處理器(CPU)、多通道模數轉換器(ADC)、外圍控制處理器(PCP)、通用定時器陣列(GP?TA)、微妙級通道(MSC)等。同時,還具有豐富的中斷源,具有181 個中斷節點,256 個中斷優先級可向CPU 和PCP請求中斷服務。
定時器陣列GPTA 內部包含一組高速數字信號處理單元:濾波和預分頻單元(FPC)支持輸出信號噪聲濾波和預分頻操作;占空比測量單元(DCM)實現脈沖周期測量;數字鎖相環單元(PLL)在一個輸入信號周期中產生數量可編程的模塊時鐘標記;全局定時器單元(GT)用作全局定時器單元(GTC)的時間基準,GTC 具有捕獲/比較功能,多個GTC 可以邏輯級聯生成復雜的波形并輸出到外部端口;本地定時器單元(LTC)可實現定時、信號捕捉和比較功能,多個LTC 可用于提供觸發或門控信號,同時可觸發LTC 和GTC 相關操作。GPTA 模塊內核關系如圖1 所示。

Fig.1 The kernel relationship of GPTA圖1 GPTA 內核關系
曲軸信號是發動機精準控制的基礎,噴射系統主要依托曲軸信號,因此獲得有效的曲軸信號,是控制發動機的關鍵[7]。為獲得曲軸信號,一般采用光電傳感器和霍爾傳感器進行采集[8-10]。但光電傳感器輸出信號為正弦波信號,必須通過信號處理電路處理后,才能被CPU 處理,增加了電路設計的難度和成本。而霍爾傳感器可直接輸出方波信號并由GPTA 模塊處理,無需特定處理電路,簡單方便,本文使用霍爾傳感器進行曲軸信號采集。
本文研究對象是四缸四沖程發動機,其曲軸信號盤采用均勻布置的60 個齒[9]。為了獲得缸號和上止點位置信息,一般去掉2 個齒,即采用60-2 個齒,并稱去掉的齒為缺齒。正常齒產生的方波信號每個周期為6CA,缺齒為18CA。曲軸信號盤和采集信號波形如圖2 所示。

Fig.2 Crankshaft signal panel and signal waveform圖2 曲軸信號盤和信號波形
曲軸信號通過霍爾傳感器采集,由濾波電路處理后,將得到的方波信號通過I/O 端口輸入到TC1728,由GPTA內核中的各個單元進行倍頻處理。倍頻后的信號由GTC/LTC 單元生成PWM 波控制噴射驅動單元并進行噴射控制[11-12]。曲軸信號控制噴射系統整個過程如圖3 所示。

Fig.3 Crankshaft signal flow relationship圖3 曲軸信號流動關系
3.1.1 濾波單元FPC
曲軸信號為高頻方波信號,容易受到外界干擾,形成錯誤波形。如果采集到錯誤的波形,會對后面的控制產生嚴重影響。利用FPC 對曲軸信號進行濾波處理,得到干凈的曲軸信號。FPC 的濾波模式可分為即時去抖濾波法和延遲去抖濾波法。即時去抖濾波法,檢測到輸入信號邊沿后,在編程設定的時間內對輸入信號的跳變和毛刺進行濾波;延遲去抖濾波法,用一個比選定的時鐘周期和比寄存器值的乘積稍小的信號寬度,對輸入信號上的所有跳變和毛刺進行濾波。根據設計需要,對輸入信號的濾波用兩種濾波法隨意組合,本文采用上升沿延遲濾波、下降沿即時濾波。混合濾波模式下的波形如圖4 所示。
3.1.2 占空比測量單元DCM
GPTA 模塊含有4 個DCM 單元(DCM0-DCM3),每個DCM 由24 位定時器、24 位捕獲寄存器、24 位捕獲/比較寄存器、24 位比較器和DCM 控制單元組成。測量曲軸周期使用DCM 的定時器/捕獲寄存器CAV,設置捕獲寄存器為下降沿觸發中斷,將GPTA 總線時鐘fGPTA遞增計數至下一次觸發,并將捕獲的時鐘個數保存在寄存器DMU 中。捕獲完成后定時器自動復位,重新計數,定時器所記錄的一個曲軸齒的周期長度Cur_period=TGPTA*GPTA_DCMCAV0。
本文根據雙燃料發動機的額定轉速為4 000rpm,曲軸信號的最大頻率小于4KHz,將GPTA 模塊的時鐘頻率fGPTA設置為5MHz。由于輸入信號不一定是fGPTA的整數倍,故存在最大捕獲誤差?δ1為一個周期的TGPTA(圖5 為DCM 捕獲誤差原理圖),即在GPTA 總線fGPTA為5MHz 的頻率下,DCM 捕獲誤差時間控制在0.2us 內。對于傳統的捕獲模式,也會產生相同的誤差?ε1=Tcapture。

Fig.5 Acquisition error principle of DCM unit圖5 DCM 單元捕獲誤差原理
3.1.3 倍頻單元PLL
PLL 是具有倍頻功能的數字鎖相環單元,在一個輸入信號周期內,在規定的時間周期內產生期望數目的時鐘脈沖。PLL 還具有自動調速功能,當自動結束模式位(PLLC?TR.AEN)置位時,可以根據輸入信號的加速和減速進行自動補償。若自動結束模式復位,PLL 將不與輸入信號沿同步連續產生輸出脈沖。與傳統倍頻方式對比可以發現,經過定時陣列GPTA 處理后的倍頻信號,誤差遠小于傳統方式,提高了控制精度。圖6 為TP=20 個TGPTA下,分頻因子n=6 時,兩種方式倍頻后的波形對比,易得出傳統方式形成的波形不均勻,而本文倍頻方式信號更均勻有效。
在實際過程中,發動機的轉速并不是恒定的,存在加減速過程,因此轉速發生變化時,設計的算法應能自動補償。PLL 具有自動補償功能,能有效減少倍頻信號誤差。如在減速情況下,信號周期的長度逐漸變大,因為在PLL設置時GPTA0_PLLMTI 為固定值,在不同的周期長度下將生成相同個數倍頻脈沖,因此倍頻脈沖的周期會發生變化。脈沖周期不同,對GT 單元波形也產生很大誤差。本文設計一種自適應算法,實時監測曲軸信號周期,當監測到曲軸信號周期變化時,將對PLL 中的寄存器GP?TA0_PLLMTI 和GPTA0_PLLREV 進行算法控制,提高倍頻精度。在轉速變化下PLL 倍頻波形如圖7 所示。

Fig.6 PLL frequency doubling waveform圖6 PLL 倍頻波形

Fig.7 PLL frequency doubling waveform comparison圖7 PLL 倍頻波形對比
經過FPC 濾波后得到干凈的曲軸信號,由DCM 測量出周期長度Tp,在PLL 中設置倍頻初始值。設置DCM 和PLL 中斷,在DCM 中斷中,讀取實時的周期長度值Tp,在PLL 中斷中利用測得的Tp設置算法,得到均勻的倍頻信號。經過DCM 測得的實際曲軸信號周期后,輸入到PLL進行倍頻。DCM 測得的周期長度Tp存在如式(1)所示關系:

PLL 根據測得的周期長度Tp和倍頻因子n確定倍頻信號周期的長度。倍頻因子大小,決定了倍頻信號周期的大小。倍頻因子越大,倍頻后的頻率越高,精度越高,反之精度越低。由式(1)可知,PLL 倍頻時存在兩種情況:一種是曲軸周期長度與倍頻因子可整除,只需要計數n次;第二種是不能整除,留有余數,需要計算(n+1)次。PLL 倍頻方式通過余數再分配到每個周期上,使周期更加均勻,有效減少了誤差,誤差最大為:

因此,曲軸信號通過GPTA 模塊處理后的最大誤差為:

傳統的倍頻方式是直接除以分頻因子n,將余數全部放在最后一個周期上,導致產生誤差,最大誤差可達:

式中,Tbus為傳統倍頻時的時鐘周期。傳統方式曲軸信號處理后的最大誤差為:

例如,現以倍頻因子n=20,在2 500rpm 轉速下,GPTA的總線時鐘頻率設置為5MHz,DCM 測量出正常齒的周期長度為:

對于一個曲軸正常齒的轉角為6CA,通過倍頻后,倍頻輸出信號周期Tt為:

角度誤差?θ為:

因此,總誤差為δ=0.006CA,不同轉速下,曲軸信號20倍頻誤差大小如表1 所示。可以得出,在轉速800~4 000rpm 時,曲軸倍頻信號的最大誤差小于0.01CA。雖然隨著轉速增大,倍頻誤差有所增加,但依然滿足倍頻精度要求,倍頻結果符合設計要求。

Table 1 20 times frequency of crankshaft signal at different speeds表1 不同轉速下曲軸信號20 倍頻
進入曲軸信號處理函數crankshaft()運行流程如圖8所示。根據DCM 實時測得兩次中斷之間的時間周期計算發動機速度,獲得以PLL 倍頻后信號為時鐘GT 的當前計數,作為角度計算噴油時刻的基礎。如果當前齒長度大于2.5 倍的上一齒長度,即DCMCurCrksft>2.5×DCMLastCrksft,可判斷當前發動機位置是曲軸缺齒位置,將Flag_Crank?shaft 置1。此時曲軸角度已經同步,可以使用當前同步角度控制噴射時刻。Flag_Syn 復位,等待下一次判缸,使能夠更新同步角度。例如,如果同步后的角度SynAngle=705CA,可知當前發動機位置在凸輪軸多齒的下降沿,目前發動機的位置到1 缸TDC1 的角度TDC_Angle1 為:

計算1 缸噴油時刻:

其中,AdvAng為噴油提前角,CapPLLtime是當前GT 的時鐘。根據曲軸信號盤設計,可以依次計算出剩余缸的噴射時刻。
轉速為2 000rpm 時,1 缸噴射波形如圖9 所示(彩圖掃OSID 碼可見),綠色為噴射脈寬PWM 波,控制噴射正時,黃色為倍頻后的曲軸信號,紅色為1 缸驅動波形。通過MAP 圖可以查得噴油脈寬為2.6ms,對應的曲軸轉角為31.2CA。在傳統控制下,精度為3CA。噴油脈寬整除3CA部分由曲軸齒數控制,剩余余數由定時器控制,增加了程序設計難度,而且控制精度差。本文根據GPTA 獨特功能設計了算法,在倍頻系數為20 倍時,曲軸信號的精度為0.03CA,不需要復雜的控制算法,直接對倍頻信號計數,就可以實現噴油脈寬的控制。控制算法簡單,程序穩定性高。噴射精度也遠大于傳統控制方式。

Fig.8 Function flow圖8 函數流程

Fig.9 Injection waveform圖9 噴射波形
本文利用TC1728 芯片的豐富資源,設計了倍頻曲軸信號算法,在硬件支持上,簡化了算法設計,提高了ECU 的性能利用率。利用GPTA 獨特的功能和算法設計,將倍頻誤差控制在兩個GPTA 時鐘脈沖內,得到了高精度信號。分析實驗結果可知,精準的曲軸信號控制噴射系統更簡單、穩定,精度也更高。下一步工作將研究高精度信號在噴射正時控制中對燃燒過程的影響。未來可將開發的軟件轉化為符合AUTOSAR 架構規范的軟件組件,提高移植性。