隨著電子技術的發展及對發動機性能要求的提高,微機控制的電子點火系統逐漸取代了傳統的發動機點火系統,實現了更為精確的點火時刻和點火能量的控制。 在發動機點火系統中,采用的每個發動機汽缸各帶一個點火線圈,對各缸點火線圈進行獨立控制的點火系統,稱為無分電器各缸獨立點火系統,也叫高能直接點火系統。采用高能直接點火可有效地增加點火線圈初級回路的儲能,減少點火能量的傳導損失,從而提高點火能量,滿足車用發動機機稀薄燃燒、增壓和使用代用燃料(如天然氣、酒精)等新技術的發展要求。對于多缸發動機,這種高能直接點火系統由于控制事件多,要求的控制電路和控制軟件復雜,因而對微控制器的性能和控制軟件均有較高的要求。 MC9S12系列是MOTOROLA公司開發的一種高性能16們微控制器(MCU),具有豐富的輸入輸出接口功能、較強的數值運算和邏輯運算能力,特別還具有較強的定時控制功能,使其適用于復雜時序控制技術的應用中。本文針對六缸車用發動機高能直接點火控制系統的開發,進行了以MC9S12DP256微控制器為核心的電子控制單元的軟硬件系統設計。 1 高能直接點火系統及控制要求 圖1所示為六缸發動機的高能直接點火系統電路原理圖。系統由輸入信號傳感器、電子控制單元(ECU)及點火執行器三部分組成。其中,點火執行器包括每缸獨立的共六組點火線圈和火花塞。點火線圈作為儲能元件,由匝數比很高的次級繞組和初級繞組構成,其作用相當于變壓器。當初級繞組電路(初級電路)導通時,初級繞組電感線圈中的電流按照指數規律增加,從蓄電池獲得的能力以磁場以能的形式儲存在初級線圈中;當初級電路斷電時,次級繞組感應出高壓電,使火花塞電極間產生電火花,將汽缸內的混合氣點燃。在圖1所示的系統中,由微控制器發出的控制信號經過點火器中的功率三極管的驅動放大,實現了對初級電路的通斷電控制。與傳統點火系統只使用一個點火線圈相比,這種直接點火控制方式可利用更長的時間積蓄點火能量,并可將點火線圈與火花塞安裝在一起,減少高壓電流的傳遞損失,從而獲得較高的點火能量。 點火控制包括點火順序控制、點火定時控制和點火能量控制。點火系統應按發動機的工作順序進行點火,即點火順序應與發動機的工作順序一致,否則不能適時點著混合氣,發動機就不能正常工作。點火定時控制的目的是使發動機功率輸出大、油耗低、爆震小和排放低,點火系統必須在最有利的時刻點火,并需在上述目標之間進行折衷。點火時刻用點火提前角來表示,從火花塞開始跳火到活塞運行至壓縮行程上止點的時間內曲軸轉過的角度被稱為點火提前角。發動機在不同工況下的最佳點火提前角是不同的。在微機控制的點火系統中,根據發動機轉速、負荷等傳感器的信號確定發動機運行工況,計算出最佳的點火時刻,并由微控制器輸出控制信號,使功率三極管截止、初級電路斷電,從而實現控制。 點火能量直接影響發動機的著火情況。對于使用增壓、稀燃及替代燃料等新技術的發動機,只有點火能量足夠高,才能可靠燃燒,達到提高經濟性和改善排放的目的。高能直接點火的關鍵是保證在任何工況下都能夠提供足夠的點火能量。電感儲能式點火系統控制點火能量的實質是控制點火線圈在斷電時刻的初級電流,這是靠控制初級電路的通電時間來實現的。點火時刻初級電流所能達到的值,即初級斷開電流,與初級電路導通的時間長短有關,必須保證初級電路的通電時間來使初級電流達到點火能量的要求。但如果通電時間過長,點火線圈又會發熱并使電能消耗增大。因此,控制一個最佳的初級電路通電時間需兼顧上述兩方面的要求。 綜上所述,對于六缸發動機的高能直接點火系統,為保證發動機的性能要求,需按點火順序、點火時刻和點火能量的要求實現六個獨立點火線圈初級電路的適時通、斷電,即微控制器要完成多通道的復雜時序控制。 2 ECU的硬件結構設計 如圖2所示,適用于六缸發動機的高能直接點火電子控制單元以MC9S12DP256微控制器為核心,并由電源、輸入信號整形處理、驅動放大電路和通訊電路等功能模塊構成。 MC9S12DP256微控制器采用了高性能的16位處理器HCS12,可提供豐富的指令系統,具有較強的數值運算和邏輯運算能力;其內256K字節的FLASH存儲器具有在線編程能力,4K字節的EEPROM和12K字節的RAM可存儲各種控制參數。MC9S12DP256的低功耗晶振、復位控制、看門狗及實時中斷等配置和功能更有助于系統的可靠運行。 MC9S12DP256豐富的接口資源為ECU輸入輸出功能的實現提供了方便。負荷信號(節氣門位置和進氣壓力)、水溫信號、蓄電池電壓信號等系統模擬輸入信號由放大濾波電路處理后,利用MCU的A/D轉換模塊進行采集。通過MCU增強型串行通訊模塊SCI可實現與PC機之間的通訊功能,進行點火系統運行狀態監控和控制參數的匹配標定。由一個16位主定時器和8個可編程輸入捕捉/輸出比較定時通道構成的增強型捕捉定時器提供了較強的定時控制功能,可充分滿足高能直接點火的復雜時序控制要求。在本系統中,兩個定時通道設置為輸入捕捉功能,對經過整形處理后的曲軸位置信號和發動機轉速信號進行采集處理;另六個定時通道設置為輸出比較功能,用于六上汽缸的點火線圈初級電路的通斷電控制。 3 ECU的控制軟件設計 3.1 點火時序的控制方法 點火時序的控制以發動機曲軸位置信號為依據。曲軸位置信號通過安裝于凸輪軸每轉一周,產生七個脈沖信號,其中六個為各缸的點火基準信號,根據發動機的點火順序,按1、5、3、6、2、4的缸號順序均勻排列,各基準脈沖信號的上升沿設置在對應各缸壓縮行程上止點前40%26;#176;,相鄰基準信號間相差120%26;#176;的曲軸轉角。另一個附加的脈沖信號在一缸基準脈沖信號后,其上升沿對應于1號缸的上止點,用于控制系統判定1號缸的位置,使點火系統與發動機的工作同步,稱為判缸同步信號。 MCU利用定時器輸入捕捉與輸出比較功能的配合,采用延時計數法進行點火線圈初級電路通斷電時序控制。如圖3所示,每缸基準信號的上升沿通過MCU輸入捕捉定時器通道觸發中斷,并以此中斷信號作為一個控制周期的開始和點火時序控制的基準。將每相鄰兩基準信號間的時間作為一個控制周期(對應曲軸120%26;#176;轉角),控制周期時間等于主計數器的時鐘周期與兩基準間計數值差的乘積,前者是由MCU預設的常數,記作TC;后者可通過輸入捕捉通道測得,記作NG。若此時的點火提前角為θ,那么當基準信號出現時,只要再過(40%26;#176;-θ)就該進行本缸點火,這一角度被稱為點火延遲角,對應的時間稱被為點火延時,對應的計數器計數值Nd可根據NG值計算如下: 將主計數器的值加上延時計數值Nd后送到本缸點火線圈控制的輸出比較通道寄存器中,啟動該通道的輸出比較功能,并預先規定該通道引腳為低電平。當計數時間到時,該引腳就自動翻轉為低電平,點火線圈初級電路斷電,從而實現了本缸點火。MCU的輸出比較功能可得到非常精確的時間間隔,并且對用戶程序沒有額外的負擔。 同理,在每個控制周期內,為了給即將工作的汽缸進行點火能量的蓄積,還進行了點火線圈初級電路通電的延時計數法控制。如圖3中所示,初級電路的通電時間要求為ton,則從本缸基準信號出現到下一缸初級電路通電延時所對應的計數值Nt的計算如下: 當發動機轉速較低,下一缸通電延遲時間大于控制周期期間(即Nt≥NG)時,則需在下一控制周期開始時首先進行該缸通電延時控制,通電延時計數值為Nt1=Nt-NG,并設置該通道輸出比較中斷,以此中斷為基準進行點火延時控制。其點火延時計數值為: 3.2 點火控制程序設計 點火控制程序由主程序和中斷服務子程序等多個模塊組成。主程序的主要功能是根據發動機運行工況,通過邏輯運算確定最優的點火提前角及初級電路導通時間;中斷服務子程序負責系統輸入信號的采集與處理,而其中輸入捕捉和輸出比較中斷程序是實現點火時序控制的關鍵。 圖4為點火控制主程序流程圖。ECU上電后,主程序首先執行MCU的初始化操作,設置定時器計數周期、各輸入輸出功能和各中斷。初始化完成后,主程序進入循環運行狀態,等待各中斷服務程序發生,檢測各輸入參數,進行故障查詢和處理。如系統狀態正常,則根據發動機運行工況確定最優的點火提前角及初級電路導通時間。由于各缸點火時刻是通過程序控制進行調節的,因此利用CPU內部的存儲器存儲點火控制數據表(點火脈譜)。這樣,點火提前角就能按發動機負荷及轉速信號通過查數據表得到,并可按不同工況進行修正。如此便可使發動機在任何工況下均能提供最佳點火時刻。 輸入捕捉和輸出比較的中斷服務程序流程圖分別如圖5和圖6所示。利用定時器輸入捕捉與輸出比較功能的配合,采用延時計數法實現點火線圈初級電路通斷電時序控制。在進入曲軸位置信號上升沿觸發的輸入捕捉中斷后,首先完成判缸信號拾收、工作缸號確定及控制周期計數值計算等工作。然后進行點火線圈的通斷電延時控制。當發動機轉速較高時,設置本缸的斷電延時和相應的輸出比較通道,以及下一缸的通電延時和相應的輸出比較通道;當發動機轉速較低時,設置本缸的通電延時和相應的輸出比較通道,并開輸出比較中斷。當進入輸出比較中斷時,再以此中斷為基準,設置本缸的斷電延時和相應的輸出比較通道。 以MC912DP256微控制器為核心的發動機高能直接點火系統一方面可實現點火時刻按發動機工況進行最優調節,另一方面利用MCU的增強型捕促定時器,可實現六缸發動機點火的獨立通道控制。而且,將輸入捕捉與輸出比較功能相配合,滿足了六個點火線圈初級電路通斷電的復雜時序控制要求。試驗結果表明,在其工作范圍內的各種轉速工況下,都能獲得可靠的點火,無失火現象發生。 |