- 柴油機(jī)電控技術(shù)及故障維修
- 母忠林 母哲軒編著
- 3282字
- 2021-12-24 15:01:08
2.3.2 電控系統(tǒng)的中斷服務(wù)體系
ECU的中斷服務(wù)功能是為了滿足一些需要及時(shí)響應(yīng)的控制需求。中斷有外部中斷和內(nèi)部中斷兩類。外部中斷一般是由某些輸入線上電平的突變引發(fā)的,而內(nèi)部中斷則是由ECU微處理器內(nèi)產(chǎn)生的某類條件引發(fā)的。對(duì)于外部中斷而言,ECU的某些輸入線具有這樣的功能:當(dāng)輸入線上的電平發(fā)生突變,就會(huì)引發(fā)對(duì)應(yīng)的中斷。
引發(fā)中斷的可以是電平的上升沿,也可以是下降沿,或者是上升沿與下降沿都引發(fā)中斷。這就是前面提到的單片機(jī)輸入捕獲(input capture,IC)功能。一般的單片機(jī)都有若干個(gè)具有IC功能的輸入口線,通過(guò)ECU的接口與外部器件連接。在ECU基礎(chǔ)軟件系統(tǒng)初始化過(guò)程中,可以對(duì)輸入捕獲功能做出設(shè)置。例如可以設(shè)置成上升沿觸發(fā)、下降沿觸發(fā),或者是上升沿與下降沿都觸發(fā)。
中斷觸發(fā)后,程序會(huì)暫停當(dāng)前的程序執(zhí)行,轉(zhuǎn)移到與中斷對(duì)應(yīng)的服務(wù)程序繼續(xù)運(yùn)行。在中斷服務(wù)程序中,完成該中斷功能對(duì)應(yīng)的工作任務(wù)。一般中斷服務(wù)程序不宜過(guò)長(zhǎng),不能影響下一個(gè)同類中斷信號(hào)的接收。在計(jì)算機(jī)原理課程中有對(duì)中斷管理的較詳細(xì)闡述,這里不再詳細(xì)說(shuō)明。由于目前我們用于柴油機(jī)控制的單片機(jī)的處理功能都很強(qiáng),所以只要注意別將太多的工作放在中斷服務(wù)執(zhí)行,一般就不會(huì)引起對(duì)下一中斷執(zhí)行的屏蔽。
(1)曲軸信號(hào)中斷
曲軸信號(hào)是曲軸上的信號(hào)輪輪齒與曲軸信號(hào)傳感器相對(duì)運(yùn)動(dòng)而產(chǎn)生的,它與凸輪軸的信號(hào)有固定的相位關(guān)系,如圖2?12所示。這里假設(shè)單片機(jī)自由運(yùn)行計(jì)數(shù)器設(shè)置的時(shí)間常數(shù)Ct是3.2μs。

圖2?13 曲軸信號(hào)周期
在初始化時(shí),設(shè)定捕獲的是曲軸信號(hào)的下降沿,如圖2?13所示。在這種情況下,曲軸中斷服務(wù)程序會(huì)給出本次中斷與上次中斷的時(shí)間間隔量Tci。根據(jù)這一間隔量可以算出曲軸轉(zhuǎn)過(guò)一個(gè)齒的時(shí)間,進(jìn)而算出曲軸轉(zhuǎn)速n。
例如:如果這一間隔量為200,則單齒(占據(jù)6°曲軸轉(zhuǎn)角)的轉(zhuǎn)動(dòng)耗時(shí)為:
S=200×3.2=640 (μs)
曲軸轉(zhuǎn)速為:
n=(6/640)×106×(60/360)=1562.5(r/min)
曲軸中斷是柴油機(jī)電控中最重要的組成要素之一。它不僅用于計(jì)算轉(zhuǎn)速,而且用于較精確的相位定位控制,這種相位的控制基于對(duì)信號(hào)輪齒本身的計(jì)數(shù)。針對(duì)60-2的信號(hào)齒輪對(duì)齒的計(jì)數(shù)可以達(dá)到6°的齒輪轉(zhuǎn)角精度,更高的轉(zhuǎn)角控制精度可以在此基礎(chǔ)上通過(guò)時(shí)間量的控制來(lái)實(shí)現(xiàn)。
對(duì)Tci值的動(dòng)態(tài)采樣和處理,可以離散化地計(jì)算曲軸的運(yùn)動(dòng)規(guī)律。由于曲軸齒較密,每轉(zhuǎn)有60個(gè)齒位,因此能夠比較連續(xù)地反映曲軸運(yùn)行規(guī)律的變化。常用Tci0信號(hào)的連續(xù)采樣計(jì)算出曲軸的每轉(zhuǎn)平均轉(zhuǎn)速、每循環(huán)平均轉(zhuǎn)速、每缸平均轉(zhuǎn)速、齒的瞬時(shí)轉(zhuǎn)速、齒的角加速度及在一段轉(zhuǎn)角間的平均角加速度等。這些數(shù)據(jù)對(duì)于柴油機(jī)控制是最根本的依據(jù),只有保證這些數(shù)據(jù)的準(zhǔn)確,才能談得上控制實(shí)施的正確。
對(duì)于曲軸信號(hào)的處理源于對(duì)單片機(jī)內(nèi)自由運(yùn)行計(jì)數(shù)器的計(jì)數(shù)。例如:當(dāng)經(jīng)歷某次曲軸中斷時(shí)自由運(yùn)行計(jì)數(shù)器中的值Tci是300,而下次曲軸中斷時(shí)Tci的值是500,則兩次間差值即為200。這就是兩次中斷間的時(shí)間間隔量。
這里要注意一個(gè)問(wèn)題,就是所謂計(jì)數(shù)器的“溢出”問(wèn)題。例如:如果是16位的計(jì)數(shù)器,則其能夠表達(dá)的最大值是65535,即16位全為2進(jìn)制的1。達(dá)到此數(shù)后,計(jì)數(shù)器會(huì)回到全0狀態(tài)再開(kāi)始按時(shí)間遞增,依此循環(huán)。由此可以區(qū)分三種情況:
① 前后兩次中斷落入同一次計(jì)數(shù)循環(huán)過(guò)程中。這種情況,其兩次中斷的間隔自然是后次減前一次。
② 后一次中斷落入下一次計(jì)數(shù)循環(huán)過(guò)程中,且計(jì)數(shù)值小于第一次中斷的計(jì)數(shù)值。這種情況,由于后一次的值減前一次的值時(shí)發(fā)生借位,本位減法的結(jié)果小于計(jì)數(shù)器的最大值,因此結(jié)果仍是正確的。例如:第一次計(jì)數(shù)是65530,第二次是194。則時(shí)間間隔為:
65536+194-65530=200
③ 后一次中斷落入下一次計(jì)數(shù)循環(huán)過(guò)程中,且計(jì)數(shù)值大于第一次中斷的計(jì)數(shù)值。后一次中斷時(shí)刻符合這種情況或再靠后,都無(wú)法通過(guò)簡(jiǎn)單的本位減法求得正確的時(shí)間間隔。這是因?yàn)閮纱沃袛鄷r(shí)間間隔大于計(jì)數(shù)器的本位最大計(jì)數(shù)能力,這就是所謂的“溢出”現(xiàn)象。在這種情況下,為計(jì)算兩次中斷時(shí)間間隔必須考慮兩次中斷間經(jīng)歷的“溢出”次數(shù)。
以時(shí)間常數(shù)Ct是3.2μs為例,上述的16位自由運(yùn)行計(jì)數(shù)器的最大計(jì)時(shí)量為:
65536×3.2=209715.2(μs)≈0.21s
而對(duì)于曲軸脈沖信號(hào),即使是在較慢的10r/min的轉(zhuǎn)速下,脈沖周期仍有0.1s的較低值,即兩次脈沖間隔不會(huì)超過(guò)16位自由運(yùn)行計(jì)數(shù)器的最大計(jì)時(shí)量,所以幾乎不需要在處理曲軸信號(hào)時(shí)考慮溢出問(wèn)題。但是要注意到這一問(wèn)題的存在,對(duì)于特殊情況下這一問(wèn)題可能造成的影響要有必要的認(rèn)識(shí),避免發(fā)生意外。
(2)凸輪軸信號(hào)中斷
凸輪軸信號(hào)在形式上與曲軸信號(hào)較為相似,也是通過(guò)對(duì)脈沖信號(hào)跳變沿采樣的方式獲得相鄰信號(hào)沿的時(shí)間差值,并由此進(jìn)行進(jìn)一步的利用。凸輪軸信號(hào)輪在不同的電控發(fā)動(dòng)機(jī)上有幾種不同的結(jié)構(gòu)形式:有的在一周內(nèi)只能提供一個(gè)脈沖,這種結(jié)構(gòu)形式只能使凸輪軸信號(hào)起到輔助確定曲軸相位的作用;較常用的倒是我們?cè)贓DBM中設(shè)定的圖2?12中這種4+1型,它不僅能起到輔助確定曲軸相位的作用,也能通過(guò)它的信號(hào)完成柴油機(jī)轉(zhuǎn)速的計(jì)算,并達(dá)到一定的精度。這種利用凸輪軸信號(hào)完成轉(zhuǎn)速計(jì)算的方式,主要能夠在兩種情況下有用。一種情況是針對(duì)電控單體泵的泵臺(tái)試驗(yàn),由于這時(shí)根本沒(méi)有曲軸信號(hào),只能靠凸輪軸信號(hào)來(lái)確定轉(zhuǎn)速和相位;另一種情況是針對(duì)柴油機(jī)車(chē)輛在行駛時(shí)曲軸信號(hào)傳感器的失效,此時(shí)要依靠凸輪軸信號(hào)維持使車(chē)輛實(shí)現(xiàn)“緩慢回家”的功能。
對(duì)于利用凸輪軸信號(hào)齒做轉(zhuǎn)速計(jì)算的這種情況,前面提到的計(jì)數(shù)器溢出問(wèn)題會(huì)影響到計(jì)算過(guò)程。EDBM中設(shè)定的凸輪軸是4+1齒的。考慮4個(gè)齒產(chǎn)生的脈沖間隔時(shí)間,當(dāng)柴油機(jī)轉(zhuǎn)速為60r/min時(shí),凸輪軸的轉(zhuǎn)速為30r/min,即齒速為120齒/min,即2齒/s。齒與齒間隔約為500ms,這大大超過(guò)了16位自由運(yùn)行計(jì)數(shù)器的最大計(jì)時(shí)量0.21s,產(chǎn)生了溢出。因此,處理用凸輪軸信號(hào)齒做轉(zhuǎn)速計(jì)算問(wèn)題時(shí),除了使用A_FTV變量之外,還必須利用A_FTVO。這兩者聯(lián)合使用可以表達(dá)更長(zhǎng)的時(shí)間周期,滿足凸輪軸信號(hào)齒做轉(zhuǎn)速計(jì)算的需求。

圖2?14 高速電磁閥驅(qū)動(dòng)波形要求
(3)供油輸出驅(qū)動(dòng)的中斷控制
對(duì)于供油輸出驅(qū)動(dòng)中斷的設(shè)置有不同的實(shí)現(xiàn)方式。此處介紹的是一種較典型的處理方式。針對(duì)實(shí)際受控環(huán)境,無(wú)論是針對(duì)電控單體泵的供油驅(qū)動(dòng)還是共軌系統(tǒng)的噴射驅(qū)動(dòng),都可以認(rèn)為是同一種大功率的電驅(qū)動(dòng)脈沖實(shí)現(xiàn)方式,目的是產(chǎn)生如圖2?14所示的驅(qū)動(dòng)波形。要在確定的相位產(chǎn)生上述的驅(qū)動(dòng)波形,要把握如下要素:
① 低位開(kāi)關(guān)開(kāi)啟時(shí)刻tq1。
② 高位開(kāi)關(guān)開(kāi)啟時(shí)刻tq2。
③ 高位開(kāi)關(guān)關(guān)閉時(shí)刻tq3。
④ 低位開(kāi)關(guān)關(guān)閉時(shí)刻tq4。
這里所提到的低位開(kāi)關(guān)和高位開(kāi)關(guān)都是在電路中用于控制產(chǎn)生大功率驅(qū)動(dòng)脈沖的電路。大功率驅(qū)動(dòng)脈沖是依靠這兩個(gè)開(kāi)關(guān)與一些IC電路的配合而實(shí)現(xiàn)的。而上述的4個(gè)時(shí)刻不僅決定了驅(qū)動(dòng)脈沖開(kāi)啟與結(jié)束的時(shí)機(jī),也決定和影響了驅(qū)動(dòng)脈沖的形狀特征。
為進(jìn)一步說(shuō)明上面這些時(shí)間量,請(qǐng)參考圖2?15。

圖2?15 供油脈沖與曲軸信號(hào)相位
齒脈沖信號(hào)中斷源取自齒脈沖信號(hào)的下降沿。在一般情況下,供油信號(hào)的相位根據(jù)供油提前角計(jì)算出來(lái),應(yīng)該是相對(duì)于某一齒之后的某一位置tq1,滯后于齒脈沖信號(hào)tq1-tq0=dtq1時(shí)間段。dtq1被用于作為時(shí)間量在齒脈沖信號(hào)處理過(guò)程中設(shè)置一個(gè)比較輸出中斷(OSCOI),對(duì)這一時(shí)間做倒計(jì)數(shù)。當(dāng)?shù)褂?jì)數(shù)達(dá)到0時(shí),即產(chǎn)生中斷,轉(zhuǎn)入中斷處理程序。
在中斷處理程序中,首先打開(kāi)低位開(kāi)關(guān),然后用tq2-tq1=dtq2作為時(shí)間量重設(shè)置比較輸出中斷(OSCOI),再執(zhí)行中斷返回。當(dāng)下一次OSCOI中斷發(fā)生時(shí),時(shí)間剛好過(guò)去dtq2,程序?qū)⒅匦罗D(zhuǎn)入中斷處理程序。
在這次的中斷處理程序中,首先打開(kāi)高位開(kāi)關(guān),然后用tq3-tq2=dtq3作為時(shí)間量重設(shè)置比較輸出中斷(OSCOI),再執(zhí)行中斷返回。當(dāng)下一次OSCOI中斷發(fā)生時(shí),時(shí)間剛好過(guò)去dtq3。程序?qū)⒅匦罗D(zhuǎn)入中斷處理程序。
在這次的中斷處理程序中,首先關(guān)閉高位開(kāi)關(guān),然后用tq4-tq3=dtq4作為時(shí)間量重設(shè)置比較輸出中斷(OSCOI),再執(zhí)行中斷返回。當(dāng)下一次 OSCOI中斷發(fā)生時(shí),時(shí)間剛好過(guò)去dtq4。程序?qū)⒅匦罗D(zhuǎn)入中斷處理程序。
在這次的中斷處理程序中,首先關(guān)閉低位開(kāi)關(guān),再執(zhí)行中斷返回,供油過(guò)程即告結(jié)束。在控制多缸柴油機(jī)過(guò)程中,每缸要有1個(gè)獨(dú)立的上述這種輸出比較中斷控制OCI,以滿足供油控制需求。
在EDBM_ECU軟件資源中,實(shí)現(xiàn)上述功能的函數(shù)較為簡(jiǎn)單。用戶只需執(zhí)行簡(jiǎn)單的函數(shù)調(diào)用, OSCOI中斷功能就在這一函數(shù)中得到運(yùn)用。這一函數(shù)為:
void Oil_Supply?()
其中??表示對(duì)應(yīng)各缸的函數(shù),如第1缸為1、第2缸為2等。另外定義的變量有以下含義:
A_Dtq1=dtq1-dtq0;自齒中斷時(shí)刻到供油低位開(kāi)關(guān)打開(kāi)
A_Dtq2=dtq2-dtq1;自低位開(kāi)關(guān)打開(kāi)到高位開(kāi)關(guān)打開(kāi)
A_Dtg3=dtq3-dtq2;自高位開(kāi)關(guān)打開(kāi)到高位開(kāi)關(guān)關(guān)閉
A_Dtq4=dtq4-dtq3;自高位開(kāi)關(guān)關(guān)閉到低位開(kāi)關(guān)關(guān)閉
這4個(gè)變量都是全局變量,在 Oil_Supply?()執(zhí)行過(guò)程中會(huì)受到這4個(gè)變量的控制,產(chǎn)生不同的效果。
- 電工入門(mén)掌中寶
- 電動(dòng)葫蘆的使用與維修
- 圖解液晶電視機(jī)故障維修速查手冊(cè)
- 太陽(yáng)能熱動(dòng)力發(fā)電技術(shù)
- 中小型電機(jī)修理手冊(cè)
- 燃料電池系統(tǒng)建模與優(yōu)化控制
- 光伏系統(tǒng)清潔維護(hù)技術(shù)
- 柴油發(fā)電機(jī)組新技術(shù)及應(yīng)用
- 電機(jī)與變壓器
- 無(wú)功補(bǔ)償電容器配置·運(yùn)行·維護(hù)
- 物業(yè)電工技能學(xué)用速成(修訂版)
- 畫(huà)說(shuō)電工技能
- 音響設(shè)備技術(shù)(第2版)
- 零基礎(chǔ)學(xué)電動(dòng)機(jī)維修
- 零基礎(chǔ)學(xué)電工