一種基于單片機的汽車(chē)電子點(diǎn)火系統的設計
1 系統工作原理
發(fā)動(dòng)機點(diǎn)火時(shí)刻是通過(guò)控制點(diǎn)火提前角(即點(diǎn)火時(shí)活塞位置到上止點(diǎn)曲軸轉過(guò)的角度)來(lái)實(shí)現的。影響火花塞點(diǎn)火時(shí)刻的因素主要有發(fā)動(dòng)機轉速、負荷大小、發(fā)動(dòng)機冷卻水溫度以及發(fā)動(dòng)機缸體爆震等。
整個(gè)點(diǎn)火系統硬件電路主要由傳感器及信號調理電路、A/D轉換器、電控單元、點(diǎn)火電路、電源及火花塞等部分組成。系統原理框圖如圖1所示。
各傳感器的輸出信號經(jīng)相應調理電路調理、A/D轉換器轉換后,送入單片機。單片機依據一定的控制策略、算法對輸入信號運算處理,依據運算結果,在合適時(shí)刻給出控制信號??刂菩盘柦?jīng)驅動(dòng)電路后,控制點(diǎn)火控制電路工作,通過(guò)火花塞最終實(shí)現發(fā)動(dòng)機點(diǎn)火。
2 系統硬件設計
2.1 傳感器
及其調理電路
主要包括轉速傳感器、水溫傳感器、爆震傳感器和節氣門(mén)開(kāi)度傳感器及其相應調理電路。
2.1.1 轉速傳感器及其調理電路
采用光電式轉速傳感器,其作用是測量發(fā)動(dòng)機轉速和曲軸轉角位置。傳感器輸出信號經(jīng)調理電路整形、放大后號送入單片機外部計數器T0(P3.4)引腳上,由單片機在一定時(shí)間內對其計數便可測量其轉速和曲軸位置。
2.1.2 水溫傳感器及其調理電路
采用集成溫度傳感器MAX6611測量發(fā)動(dòng)機冷卻水溫度。單片機依據水溫信號對點(diǎn)火提前角作相應調整:當水溫低時(shí)增大點(diǎn)火提前角,而水溫高時(shí)減小點(diǎn)火提前角。傳感器輸出信號經(jīng)二極管雙向限幅和RC濾波電路調理后接到ADC0809的信道0上。
2.1.3 爆震傳感器及其調理電路
采用安裝在發(fā)動(dòng)機缸體上的壓電加速度傳感器來(lái)測量發(fā)動(dòng)機爆震信號,并依據是否發(fā)生爆震而對點(diǎn)火提前角作相應調整。傳感器輸出信號經(jīng)兩級濾波電路調理后接到ADC0809的信道1上。
2.1.4 節氣門(mén)開(kāi)度傳感器調理電路
發(fā)動(dòng)機的負荷的測量是通過(guò)線(xiàn)性輸出型模擬式節氣門(mén)傳感器(TPS)來(lái)實(shí)現的。傳感器輸出信號經(jīng)雙向限幅濾波調理電路后接到ADC0809的信道2上。
2.2 電控單元及A/D轉化電路設計
本系統以AT89C2051單片機作為控制器。A/D轉化器采用ADC0809對前端輸入信號進(jìn)行模/數轉換。系統中需要進(jìn)行A/D轉換的信號有水溫信號、節氣門(mén)開(kāi)度信號和爆震信號。單片機與A/D轉換器的接口電路如圖2所示。
由ADDA,ADDB和ADDC選擇轉化信道,信道0輸入溫度信號、信道1輸入爆震信號、信道2輸入節氣門(mén)開(kāi)度信號,轉化后的信號通過(guò)P1口輸入到單片機內部。其中AT89C2051的P3.4(T0)對曲軸轉速信號計數,確定轉速和曲軸位置。通過(guò)P3.5輸出點(diǎn)火控制信號。
2.3 點(diǎn)火控制電路設計
點(diǎn)火電路的作用是產(chǎn)生火花塞點(diǎn)火所需的高壓。其輸入是來(lái)自單片機P3.5引腳的點(diǎn)火控制信號,輸出端接到火花塞上。電路如圖3所示。
單片機的P3.5輸出高電平時(shí),T1和T2都截止,12 V電壓通過(guò)R4和L1對C7充電。當單片機P3.5輸出低電平時(shí)(發(fā)出點(diǎn)火控制信號),T1,T2導通,則C7兩端的電壓立即變位低電平(即C7迅速放電),從而使流過(guò)L1的電流突變,L2兩端產(chǎn)生點(diǎn)火高壓。其中D1起保護T2的作用。
2.4 電源電路設計
在汽車(chē)系統中一般只提供12 V的直流電壓,而芯片大都需要5 V的電壓。本系統采用集成芯片W78L05設計了12 V到5 V的DC-DC轉換電路。
3 系統軟件設計
系統軟件主要由主程序及延時(shí)子程序、計算基本點(diǎn)火提前角子程序、計數T0中斷服務(wù)子程序、A/D轉化子程序、點(diǎn)火提前角修正子程序和點(diǎn)火子程序組成。本系統采用匯編語(yǔ)言編寫(xiě)了源程序。
3.1 主程序
系統上電后,首先進(jìn)行系統初始化(包括單片機的初始化,ADC0809的初始化,計數器T0的初始化),接著(zhù)獲取轉速信號確定基本點(diǎn)火提前角,再進(jìn)行A/D轉化采集水溫、爆震和節氣門(mén)開(kāi)度信號,對采集的信號進(jìn)行運算處理,最后等待點(diǎn)火時(shí)刻的到來(lái)并發(fā)出點(diǎn)火控制信號實(shí)現系統點(diǎn)火。
3.2 計算基本點(diǎn)火提前角子程序
本系統的基本點(diǎn)火提前角由轉速信號確定,采用查表法確定基本點(diǎn)火提前角。首先建立兩個(gè)數據表,一為轉速表v(v[0],v[1],v[2],…,v[i],v[i+1],…)和基本點(diǎn)火提前角表。兩表中的元素個(gè)數相等,且都以升序排序。Vi對應的基本點(diǎn)火提前為基本點(diǎn)火提前角表中的第i個(gè)元素。為了減少查找的次數,設計時(shí)采用了二分法對轉速表進(jìn)行檢索。
3.3 水溫對點(diǎn)火提前角修正子程序
水溫對點(diǎn)火提前角進(jìn)行雙重修正,即暖機修正和過(guò)熱修正。當水箱溫度過(guò)低,應加大點(diǎn)火提前角,即進(jìn)行暖機修正。當發(fā)動(dòng)機水箱溫度過(guò)高,應減小點(diǎn)火提前角,即進(jìn)行過(guò)熱修正。
本設計中水溫對點(diǎn)火提前角修正也采用查表法,建立2個(gè)修正表:過(guò)熱修正表(升序表)和暖機修正表(降序表)。根據經(jīng)驗水溫對點(diǎn)火提前角最大修正5,采用直接查找法。首先確定對點(diǎn)火提前角零修正的水溫T,測得的水溫t大于T則查找過(guò)熱修正表進(jìn)行過(guò)熱修正,否則查找暖機修正表進(jìn)行暖機修正。
3.4 爆震信號對點(diǎn)火提前角修正子程序
系統對點(diǎn)火提前角修正是為了使發(fā)動(dòng)機始終接近爆震臨界狀態(tài),即處于一種“臨界控制”方式,使發(fā)動(dòng)機既接近爆震區又不進(jìn)入爆震區,此時(shí)缸內燃燒的熱效率最高。測到有爆震信號點(diǎn)火提前角增加2,測得無(wú)爆震信號時(shí)點(diǎn)火提前角減小2。設臨界狀態(tài)對應的爆震信號為F,當測得的爆震信號f大于F時(shí)點(diǎn)火提前角減2,否則點(diǎn)火提前角加2。
另外,節氣門(mén)開(kāi)度對點(diǎn)火提前角修正子程序采用直接查表法。
4 結 語(yǔ)
本點(diǎn)火裝置具有及時(shí)性高、控制精度高等優(yōu)點(diǎn),實(shí)現了對點(diǎn)火提前角的優(yōu)化控制。該系統已調試成功。
評論