發(fā)動(dòng)機(jī)噴油控制方法及發(fā)動(dòng)機(jī)電控單元的制作方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明涉及發(fā)動(dòng)機(jī)的技術(shù)領(lǐng)域,尤其是一種發(fā)動(dòng)機(jī)噴油控制方法及發(fā)動(dòng)機(jī)電控單元,主要用于發(fā)動(dòng)機(jī)的噴油控制。
【背景技術(shù)】
[0002 ]目前汽車發(fā)動(dòng)機(jī)一般采用多個(gè)氣缸,常用缸數(shù)有3缸、4缸、6缸、8缸、1缸、12缸等。如圖1a至圖1d所示,為發(fā)動(dòng)機(jī)氣缸的四沖程工作行程的示意圖,發(fā)動(dòng)機(jī)氣缸共有進(jìn)氣行程(如圖la)、壓縮行程(如圖lb)、做功行程(如圖1c)和排氣行程(如圖1d)四個(gè)行程。發(fā)動(dòng)機(jī)氣缸包括進(jìn)氣門11、排氣門12、噴油器13、活塞14、曲柄連桿機(jī)構(gòu)15等部件。在做功行程中,曲柄連桿機(jī)構(gòu)將活塞的往復(fù)運(yùn)動(dòng)轉(zhuǎn)變成曲軸的旋轉(zhuǎn)運(yùn)動(dòng),把燃料燃燒后發(fā)出的熱能轉(zhuǎn)變?yōu)闄C(jī)械能,對(duì)外輸出動(dòng)力;而在其他三個(gè)行程中,由于慣性作用又把曲軸的旋轉(zhuǎn)運(yùn)動(dòng)轉(zhuǎn)變成活塞的往復(fù)直線運(yùn)動(dòng),完成進(jìn)氣、壓縮和排氣動(dòng)作。在每完成進(jìn)氣-壓縮-做功-排氣的四個(gè)工作行程中,曲軸轉(zhuǎn)動(dòng)兩圈,即在每個(gè)工作行程中曲軸轉(zhuǎn)動(dòng)半圈。
[0003]發(fā)動(dòng)機(jī)氣缸在完成一次做功的過程中,需要在正確的時(shí)間通過噴油器噴出正確的油量,噴油開始時(shí)間和噴油量多少的精確性對(duì)發(fā)動(dòng)機(jī)性能影響較大。圖2為發(fā)動(dòng)機(jī)氣缸的噴油時(shí)序圖,發(fā)動(dòng)機(jī)電控單元(ECU)根據(jù)發(fā)動(dòng)機(jī)的各項(xiàng)運(yùn)行參數(shù)確定最佳噴油量,然后輸出一個(gè)觸發(fā)噴油器的控制信號(hào),在這個(gè)控制信號(hào)中,包含了噴油開始點(diǎn)和噴油脈寬,其中噴油脈寬是噴油器每次噴油的時(shí)間長(zhǎng)度,噴油脈寬決定了噴油量的多少。由于發(fā)動(dòng)機(jī)轉(zhuǎn)速較高,每次噴油時(shí)間很短,因此發(fā)動(dòng)機(jī)電控單元給出的噴油控制信號(hào)是一個(gè)很短暫的脈沖信號(hào),這個(gè)脈沖信號(hào)的時(shí)間寬度就是噴油脈寬。每次噴油的噴油脈寬不是固定的,它隨著發(fā)動(dòng)機(jī)轉(zhuǎn)速、負(fù)荷和進(jìn)氣量等參數(shù)的不同而變化,發(fā)動(dòng)機(jī)電控單元根據(jù)這些參數(shù)計(jì)算并更新每一次噴油的具體噴油脈寬。
[0004]發(fā)動(dòng)機(jī)都安裝有曲軸,為了隨時(shí)得知發(fā)動(dòng)機(jī)氣缸的行程(進(jìn)氣、壓縮、做功、排氣),在曲軸上還安裝有一個(gè)曲軸信號(hào)盤,是為了識(shí)別曲軸運(yùn)行位置(發(fā)動(dòng)機(jī)行程)而增加的部件,且隨著曲軸轉(zhuǎn)動(dòng)而轉(zhuǎn)動(dòng)。曲軸信號(hào)盤一般具有(60-2)個(gè)齒,即有2個(gè)缺齒,這是為了方便識(shí)別曲軸的位置。曲軸信號(hào)盤為齒狀是為了方便磁電傳感器和霍爾傳感器工作,利于形成高、低電平的方波,這樣軟件可以根據(jù)高、低電平的方波推斷曲軸的詳細(xì)運(yùn)動(dòng)情況。曲軸轉(zhuǎn)動(dòng)一圈為360度,共60個(gè)曲軸齒,每一個(gè)曲軸齒為6度。曲軸信號(hào)盤的半圈即30個(gè)曲軸齒(180度)。
[0005]如上面提到,每次噴油的噴油脈寬和噴油相位等噴油變量是變化的,現(xiàn)有針對(duì)噴油相位和噴油脈寬等噴油變量的更新,一般是采用角度周期(如每隔曲軸半圈即180度更新一次)。如果采用每曲軸半圈(即曲軸每轉(zhuǎn)動(dòng)半圈即180度)更新一次噴油變量,就要在曲軸信號(hào)盤一圈的60個(gè)齒中,找其中2個(gè)曲軸齒做為進(jìn)行噴油變量更新的更新齒(曲軸半圈更新齒),這2個(gè)曲軸齒相隔半圈(30齒),如選取在曲軸信號(hào)盤每轉(zhuǎn)動(dòng)到第2齒和第32齒時(shí),更新一次噴油變量(即噴油相位和噴油脈寬)。
[0006]發(fā)動(dòng)機(jī)電控單元中針對(duì)噴油控制設(shè)有上層軟件(即應(yīng)用層軟件)和下層軟件(即底層軟件)。應(yīng)用層軟件與底層軟件之間關(guān)系如圖3所示,應(yīng)用層軟件主要用于處理復(fù)雜邏輯計(jì)算,底層軟件主要用于驅(qū)動(dòng)發(fā)動(dòng)機(jī)執(zhí)行器(如噴油執(zhí)行器,即噴油器)。針對(duì)噴油控制,應(yīng)用層軟件每曲軸半圈會(huì)計(jì)算并更新一次噴油變量如噴油相位和噴油脈寬,并把計(jì)算出的噴油相位和噴油脈寬傳遞給底層軟件;底層軟件通過調(diào)用噴油驅(qū)動(dòng)函數(shù)(即驅(qū)動(dòng)硬件工作的函數(shù)),使用應(yīng)用層軟件傳遞過來的噴油脈寬和噴油相位計(jì)算出噴油開始點(diǎn),再根據(jù)該噴油開始點(diǎn)設(shè)置單片機(jī)計(jì)時(shí)器,在計(jì)時(shí)器計(jì)時(shí)到達(dá)該噴油開始點(diǎn)時(shí)觸發(fā)噴油器執(zhí)行噴油。在此,噴油脈寬即噴油持續(xù)時(shí)間,與發(fā)動(dòng)機(jī)的功率需求或扭矩需求等正相關(guān);噴油相位即噴油位置,用于推斷噴油結(jié)束點(diǎn),目的是得到最佳的噴油時(shí)機(jī),使發(fā)動(dòng)機(jī)燃燒最好。
[0007]目前發(fā)動(dòng)機(jī)噴油控制算法多為如下兩種方法,第一種是底層軟件采用一個(gè)固定的曲軸齒來觸發(fā)噴油驅(qū)動(dòng)函數(shù),利用應(yīng)用層軟件傳遞過來的噴油脈寬和噴油相位計(jì)算出噴油開始點(diǎn)和噴油結(jié)束點(diǎn);第二種是采用轉(zhuǎn)速分段法,在不同階段的發(fā)動(dòng)機(jī)轉(zhuǎn)速,采用不同的曲軸齒來觸發(fā)噴油驅(qū)動(dòng)函數(shù),利用應(yīng)用層軟件傳遞過來的噴油脈寬和噴油相位計(jì)算出噴油開始點(diǎn)和噴油結(jié)束點(diǎn)。上述兩種方法,由底層軟件執(zhí)行的噴油脈寬、噴油相位與應(yīng)用層軟件計(jì)算出的噴油相位、噴油脈寬都不同程度存在有延遲性,影響噴油閉環(huán)控制,尤其是怠速穩(wěn)定控制。
[0008]圖4為氣缸噴油與半圈更新齒之間關(guān)系圖,由圖4可看出,應(yīng)用層軟件把曲軸信號(hào)盤的第2齒和第32齒當(dāng)作每曲軸半圈的觸發(fā)點(diǎn),來更新點(diǎn)火、噴油變量?,F(xiàn)發(fā)動(dòng)機(jī)噴油控制多為底層軟件采用一個(gè)噴油驅(qū)動(dòng)觸發(fā)點(diǎn)方式,由于噴油相位是一個(gè)變化量,噴油開始點(diǎn)是由噴油相位、噴油脈寬逆推回來得到的,如圖2所示。為了保證底層軟件噴油驅(qū)動(dòng)觸發(fā)點(diǎn)在噴油開始點(diǎn)的前面,通常把底層軟件噴油驅(qū)動(dòng)觸發(fā)點(diǎn)選在最大噴油脈寬和最大噴油相位逆推回來的噴油開始點(diǎn)前面(如前面2個(gè)曲軸齒)。
[0009]結(jié)合圖2與圖4可看出,如果噴油脈寬和噴油相位足夠小,底層軟件噴油驅(qū)動(dòng)觸發(fā)點(diǎn)可能會(huì)選在圖4的①之前、①到②之間、或②到③之間(其中①②③均為半圈更新齒)。由于應(yīng)用層軟件在半圈更新齒會(huì)計(jì)算并更新噴油變量,因此把底層軟件噴油驅(qū)動(dòng)觸發(fā)點(diǎn)選在圖4的①之前,底層軟件與應(yīng)用層軟件之間交互噴油變量(即應(yīng)用層軟件將計(jì)算的噴油變量傳給底層軟件)的實(shí)時(shí)性最差(因?yàn)樵趪娪烷_始點(diǎn)之前還要經(jīng)歷①②③三次噴油變量更新);選在①到②之間,底層軟件與應(yīng)用層軟件之間交互噴油變量的實(shí)時(shí)性次之(因?yàn)樵趪娪烷_始點(diǎn)之前要經(jīng)歷②③兩次噴油變量更新);選在②到③之間,底層軟件與應(yīng)用層軟件之間交互噴油變量的實(shí)時(shí)性較好(因?yàn)樵趪娪烷_始點(diǎn)之前只需經(jīng)歷③一次噴油變量更新)。如果圖4的噴油開始點(diǎn)在半圈更新齒③之后觸發(fā),則選在半圈更新齒③到噴油開始點(diǎn)之間,底層軟件與應(yīng)用層軟件之間交互噴油變量的實(shí)時(shí)性最好(因?yàn)榇藭r(shí)是利用最新更新的噴油變量進(jìn)行噴油驅(qū)動(dòng)的)。
[0010]從上面分析可以看出,無論是選擇一個(gè)固定的曲軸齒還是采用轉(zhuǎn)速分段法來觸發(fā)噴油驅(qū)動(dòng)函數(shù),都難以做到底層軟件與應(yīng)用層軟件之間交互噴油變量的最好實(shí)時(shí)性。
【發(fā)明內(nèi)容】
[0011]本發(fā)明的目的在于提供一種發(fā)動(dòng)機(jī)噴油控制方法,以解決底層軟件與應(yīng)用層軟件之間交互噴油變量的實(shí)時(shí)性較差的問題。
[0012]本發(fā)明實(shí)施例提供一種發(fā)動(dòng)機(jī)噴油控制方法,包括如下步驟:
[0013]由最大噴油脈寬和最大噴油相位得出最早噴油開始點(diǎn);
[0014]在該最早噴油開始點(diǎn)之前底層軟件第一次觸發(fā)噴油驅(qū)動(dòng)函數(shù)以計(jì)算得到初始噴油開始點(diǎn),并根據(jù)該初始噴油開始點(diǎn)設(shè)置執(zhí)行噴油的計(jì)時(shí);
[0015]判斷第一次觸發(fā)噴油驅(qū)動(dòng)函數(shù)的觸發(fā)點(diǎn)到該初始噴油開始點(diǎn)之間的曲軸角度差范圍內(nèi)是否存在有曲軸半圈更新齒;
[0016]若第一次觸發(fā)噴油驅(qū)動(dòng)函數(shù)的觸發(fā)點(diǎn)到該初始噴油開始點(diǎn)之間的曲軸角度差范圍內(nèi)存在有曲軸半圈更新齒,則選擇在最接近該初始噴油開始點(diǎn)的曲軸半圈更新齒之后且在該初始噴油開始點(diǎn)之前,該底層軟件再次觸發(fā)噴油驅(qū)動(dòng)函數(shù)以計(jì)算得到實(shí)際噴油開始點(diǎn),并