(中國(guó)北方發(fā)動(dòng)機(jī)研究所1,天津 300400;山西柴油機(jī)工業(yè)有限責(zé)任公司2,山西 大同 037036)
增壓系統(tǒng)是實(shí)現(xiàn)內(nèi)燃機(jī)功率提升的重要組成部分。不同工況的內(nèi)燃機(jī)均有與之相適應(yīng)的渦輪增壓器轉(zhuǎn)速。增壓器的工作狀態(tài)決定了內(nèi)燃機(jī)的功率[1]。若增壓器轉(zhuǎn)速超出與內(nèi)燃機(jī)功率輸出相匹配的允許范圍或者出現(xiàn)異常,將影響內(nèi)燃機(jī)功率的發(fā)揮,嚴(yán)重時(shí)會(huì)影響其使用壽命。此外,由于增壓器工作于高溫、高壓、密閉的環(huán)境,故障率較高,在試驗(yàn)及日常檢修過程中,增壓器轉(zhuǎn)速也是不可缺少的參數(shù)之一。通常通過轉(zhuǎn)速偏離正常值的大小來判斷其是否出現(xiàn)故障[2],因此精確測(cè)量增壓器轉(zhuǎn)速具有十分現(xiàn)實(shí)的意義。
本文設(shè)計(jì)的增壓器轉(zhuǎn)速表(以下簡(jiǎn)稱轉(zhuǎn)速表)采用220 V市電供電,輕巧便攜,所測(cè)轉(zhuǎn)速通過數(shù)碼管實(shí)時(shí)顯示,左右通道轉(zhuǎn)速切換方便,測(cè)量精度高,抗干擾能力強(qiáng),具有很強(qiáng)的實(shí)用價(jià)值。
轉(zhuǎn)速表系統(tǒng)總體結(jié)構(gòu)如圖1所示。該系統(tǒng)主要包括電源供電模塊、信號(hào)調(diào)理模塊、數(shù)碼管顯示模塊及系統(tǒng)核心C8051F310單片機(jī)。
圖1 轉(zhuǎn)速表系統(tǒng)結(jié)構(gòu)圖
當(dāng)增壓器工作時(shí),傳感器會(huì)輸出微弱的正弦波信號(hào),且信號(hào)頻率與轉(zhuǎn)速信號(hào)頻率相同。該測(cè)量系統(tǒng)的整體設(shè)計(jì)思路為:通過調(diào)理電路將微弱的電壓信號(hào)放大、整形后,轉(zhuǎn)換為單片機(jī)可以識(shí)別的方波信號(hào);經(jīng)CPU內(nèi)置的比較器整形,并運(yùn)用PCA捕捉/比較模塊進(jìn)行數(shù)據(jù)計(jì)算、處理得到轉(zhuǎn)速信號(hào)頻率,然后轉(zhuǎn)換成轉(zhuǎn)速[2],通過顯示電路實(shí)時(shí)顯示。
通過C8051F310內(nèi)置的增強(qiáng)型捕捉定時(shí)器PCA,運(yùn)用測(cè)周法測(cè)量轉(zhuǎn)速信號(hào)頻率,再將其轉(zhuǎn)換為本轉(zhuǎn)速表的轉(zhuǎn)速為:測(cè)周法計(jì)算頻率的誤差是由于計(jì)數(shù)器只能進(jìn)行整數(shù)計(jì)數(shù)而引起的±1誤差[3]:
ε=ΔN/N=±1/N=±fx/fs
(1)
式中:fx為待測(cè)信號(hào)頻率;fs為基準(zhǔn)時(shí)鐘頻率;N為一個(gè)脈沖周期內(nèi)的計(jì)數(shù)值。
由式(1)可知,如果進(jìn)行n次重復(fù)測(cè)量并取平均,則±1誤差會(huì)減小[4]。本系統(tǒng)的外部晶振頻率為22.118 4 MHz。在保證計(jì)算精度的同時(shí),為避免PCA計(jì)數(shù)器頻繁溢出而引發(fā)定時(shí)器中斷,將PCA時(shí)鐘頻率設(shè)為系統(tǒng)時(shí)鐘頻率的4分頻。對(duì)于給定的脈沖信號(hào),如果通過PCA捕捉寄存器測(cè)得一個(gè)脈沖周期包含N個(gè)系統(tǒng)時(shí)鐘,則信號(hào)頻率為f=1/[N/(fSYSCLK/4)],繼而得到實(shí)際轉(zhuǎn)速v=f×60。
C8051F310是完全集成的混合信號(hào)片上系統(tǒng)型MCU。CPU速度可達(dá)25 MHz,具有豐富的片上模擬外設(shè)和數(shù)字外設(shè),有效減少硬件設(shè)計(jì)的擴(kuò)展芯片,使電路結(jié)構(gòu)更加緊湊、可靠性更高。片內(nèi)上電復(fù)位、軟件看門狗等都是能真正獨(dú)立工作的片上外設(shè)[5]。
增壓器是內(nèi)燃機(jī)車中轉(zhuǎn)速最高的部件,轉(zhuǎn)子工作轉(zhuǎn)速根據(jù)工況的不同,一般在每分鐘幾萬轉(zhuǎn)至幾十萬轉(zhuǎn)之間。某型號(hào)柴油機(jī)配備的磁電式轉(zhuǎn)速傳感器,輸出電壓幅度為±(10~40 mV)。為準(zhǔn)確獲取增壓器轉(zhuǎn)速信號(hào),設(shè)計(jì)了信號(hào)調(diào)理電路[6],電路框圖如圖2所示。
傳感器輸出的電壓信號(hào)通過一階高通濾波后加在運(yùn)算放大器的正向輸入端,通過信號(hào)放大后,輸出電壓約為1 V;此電壓加在滯回比較器的反向輸入端,通過設(shè)置閾值電壓,使其輸出的正向電壓約7 V,負(fù)向電壓為6 mV左右;此電壓信號(hào)通過控制開關(guān)三極管的通斷轉(zhuǎn)換成幅值為0~3.3 V的方波信號(hào),送入單片機(jī)內(nèi)部集成的模擬比較器,再轉(zhuǎn)換為規(guī)則方波。
圖2 調(diào)理電路框圖
本文通過單片開關(guān)電源芯片TNY266實(shí)現(xiàn)了由220 V市電到3.3 V、±8 V電源電壓之間的變換[7]。此單片開關(guān)電源集成電路具有高集成度、高性價(jià)比、最簡(jiǎn)外圍電路和最佳性能指標(biāo)等優(yōu)點(diǎn)。電源電路原理圖如圖3所示。
圖3 電源電路
220 V市電通過整流橋整流、電解電容濾波后,轉(zhuǎn)換為直流高壓。經(jīng)高頻變壓器初級(jí)加在開關(guān)電源TNY266的漏極。當(dāng)TNY266關(guān)斷時(shí),高頻變壓器漏感產(chǎn)生的尖峰電壓疊加在直流高壓和感應(yīng)電壓上,可使功率開關(guān)管的漏極電壓超過700 V而損壞芯片。為此,在初級(jí)繞組兩端增加了漏極鉗位保護(hù)電路。D6、D7、D8為輸出整流二極管,輸出電壓經(jīng)過π型濾波電路吸收整流二極管反向恢復(fù)過程中產(chǎn)生的噪聲。電磁干擾濾波器在抑制從電網(wǎng)引入的電磁干擾(EMI)的同時(shí),防止開關(guān)電源產(chǎn)生的噪聲經(jīng)電源線向外傳輸。
該電路采用配TL431的精密光耦反饋電路,對(duì)輸出電壓作精細(xì)調(diào)整。當(dāng)輸出電壓發(fā)生波動(dòng)且變化量為ΔVO時(shí),通過取樣電阻R5、R6分壓,使TL431輸出電壓VK產(chǎn)生相應(yīng)變化量,進(jìn)而使LED的工作電流IF改變;最后通過控制端電流IC的變化量來關(guān)斷或開啟MOSFET,使VO產(chǎn)生相反的變化,從而抵消ΔVO的波動(dòng)。
由于增壓器在工作時(shí),轉(zhuǎn)速會(huì)迅速上升至幾萬轉(zhuǎn),且?guī)资D(zhuǎn)的轉(zhuǎn)速對(duì)于幾萬轉(zhuǎn)的轉(zhuǎn)速可以忽略不計(jì),因此本設(shè)計(jì)通過4位數(shù)碼管只顯示轉(zhuǎn)速計(jì)算值百位及以上位數(shù)。顯示電路如圖4所示。
通過單片機(jī)P0口并行驅(qū)動(dòng)4位數(shù)碼管;P2口控制開關(guān)管的通斷,分時(shí)輪流控制各個(gè)數(shù)碼管的COM端,使各個(gè)數(shù)碼管輪流受控顯示,每位數(shù)碼管的點(diǎn)亮?xí)r間為5 ms,運(yùn)用人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),使數(shù)碼管顯示的數(shù)據(jù)穩(wěn)定,且沒有閃爍感。以上就是數(shù)碼管動(dòng)態(tài)顯示技術(shù)。該技術(shù)具有使用硬件I/O端口少、節(jié)省線路板空間、功耗低等優(yōu)點(diǎn)。
圖4 顯示電路
為提高系統(tǒng)程序的可移植性和易維護(hù)性,采用模塊化設(shè)計(jì)方法。整個(gè)程序由主程序、初始化子程序、轉(zhuǎn)速計(jì)算子程序、濾波子程序、定時(shí)器中斷服務(wù)子程序、看門狗子程序、按鍵掃描子程序等部分組成[8]。主程序主要完成系統(tǒng)初始化及實(shí)際轉(zhuǎn)速測(cè)量過程中各個(gè)功能模塊的協(xié)調(diào)。按鍵掃描和轉(zhuǎn)速計(jì)算等子程序利用C8051F310豐富的中斷資源,在外部中斷、PCA捕捉定時(shí)器中斷和定時(shí)器中斷子程序中完成[5,9]。
PCA中斷服務(wù)子程序主要完成脈沖周期計(jì)算,為轉(zhuǎn)速計(jì)算提供依據(jù)。由于PCA定時(shí)器和捕捉比較模塊使用同一個(gè)中斷向量,而中斷引發(fā)到中斷得到響應(yīng)會(huì)有幾個(gè)機(jī)器周期的延時(shí)。因此,在計(jì)算脈沖周期時(shí)的重點(diǎn)是對(duì)緊鄰PCA定時(shí)器中斷產(chǎn)生的PCA捕捉比較中斷的發(fā)生先后順序做出判斷。
當(dāng)系統(tǒng)沒有信號(hào)輸入時(shí),PCA計(jì)數(shù)器也在運(yùn)行,因此當(dāng)有信號(hào)輸入時(shí),第一次進(jìn)入捕捉中斷時(shí)的PCA溢出計(jì)數(shù)器的值不一定為0。為保證第一個(gè)脈沖周期計(jì)算值的準(zhǔn)確性,程序?qū)κ欠袷恰暗谝淮芜M(jìn)入PCA捕捉中斷”作了判斷。具體做法是當(dāng)過了設(shè)定的時(shí)間沒有信號(hào)輸入時(shí),給無脈沖標(biāo)志賦1,脈沖周期設(shè)為0xAFFFFF,代表無窮大。程序流程如圖5所示。
圖5 PCA中斷服務(wù)子程序流程圖
為增強(qiáng)系統(tǒng)的可靠性,降低實(shí)際應(yīng)用過程中隨機(jī)噪聲和低頻脈沖的干擾,在硬件濾波的基礎(chǔ)上,采用數(shù)字濾波算法降低干擾信號(hào)在有用信號(hào)中的比例。數(shù)字濾波的優(yōu)點(diǎn)是在不增加任何硬件設(shè)備的情況下,改變?yōu)V波程序或參數(shù),就可以方便地改變?yōu)V波特性[10]。因此在脈沖周期計(jì)算及轉(zhuǎn)速計(jì)算過程中均調(diào)用一階低通濾波算法。算法公式為y(n)=ax(n)+by(n-1),系數(shù)a+b=1。經(jīng)過試驗(yàn)調(diào)試,該系統(tǒng)的a、b參數(shù)值分別為0.3、0.7。
為保證程序運(yùn)行的可靠性,同時(shí)節(jié)省成本,充分利用C8051F310片上資源,加入軟件看門狗[5]。為兼顧系統(tǒng)中的每個(gè)模塊及子程序,在每段子程序末尾置標(biāo)志,在定時(shí)中斷中復(fù)位看門狗,復(fù)位看門狗之前先檢測(cè)程序運(yùn)行標(biāo)志是否置位。如果標(biāo)志置位,則說明程序運(yùn)行正常,清看門狗同時(shí)清程序運(yùn)行標(biāo)志;反之復(fù)位。這樣保證了在正常時(shí)間內(nèi),只要有一個(gè)子程序沒有跑到,看門狗都能使系統(tǒng)復(fù)位,防止系統(tǒng)陷入死循環(huán)或跑飛。
假設(shè)很長(zhǎng)一段時(shí)間都沒有信號(hào)輸入,PCA捕捉中斷就不會(huì)執(zhí)行。為防止在這種情況下程序陷入死循環(huán),每隔5 min給一個(gè)復(fù)位指令。
為增強(qiáng)轉(zhuǎn)速表的實(shí)用性、可操作性,采用一鍵多功能識(shí)別技術(shù),通過一個(gè)按鈕控制要顯示的通道的轉(zhuǎn)速。系統(tǒng)上電時(shí),默認(rèn)的按鍵ID號(hào)為0,此時(shí)左右通道轉(zhuǎn)速以3 s為間隔交替顯示,對(duì)應(yīng)各通道轉(zhuǎn)速的LED指示燈交替點(diǎn)亮。鍵每按下一次,ID號(hào)加1,ID號(hào)最大值為2。ID號(hào)為1時(shí)只顯示左通道轉(zhuǎn)速,相應(yīng)指示燈點(diǎn)亮;ID號(hào)為2時(shí),只顯示右通道轉(zhuǎn)速,相應(yīng)指示燈點(diǎn)亮。
為降低系統(tǒng)功耗,節(jié)能減排,在ID號(hào)為0時(shí),如果有一路轉(zhuǎn)速變?yōu)?,則在30 s后,只顯示不為0的轉(zhuǎn)速,并點(diǎn)亮相應(yīng)的指示燈;如果兩路轉(zhuǎn)速均變?yōu)?,則在交替顯示1 min后,系統(tǒng)進(jìn)入低功耗模式,顯示屏不顯示任何數(shù)字,只點(diǎn)亮上面的LED指示燈,系統(tǒng)進(jìn)入休眠模式。在這種情況下,只要有轉(zhuǎn)速輸入,系統(tǒng)便被喚醒,恢復(fù)到正常運(yùn)行模式。
程序流程如圖6所示。
圖6 程序流程圖(ID=0)
本文設(shè)計(jì)了一款便攜式增壓器轉(zhuǎn)速表。該轉(zhuǎn)速表以高性能的C8051F310單片機(jī)[11]為核心,采用內(nèi)置的PCA捕捉模塊基于測(cè)周法測(cè)量轉(zhuǎn)速,在硬件濾波的基礎(chǔ)上結(jié)合軟件濾波,能快速準(zhǔn)確測(cè)量增壓器轉(zhuǎn)速,且抗干擾能力強(qiáng)。利用信號(hào)發(fā)生器進(jìn)行模擬增壓器轉(zhuǎn)速測(cè)量,結(jié)果表明在28~280 000 rad/min范圍內(nèi)的任意轉(zhuǎn)速,增壓器轉(zhuǎn)速表測(cè)得的數(shù)值與信號(hào)發(fā)生器顯示值相比,誤差<±0.5%。逐漸增大或減小轉(zhuǎn)速時(shí),轉(zhuǎn)速表顯示的數(shù)值隨之增大或減小,且響應(yīng)速度快,數(shù)字顯示穩(wěn)定。一鍵多功能識(shí)別模式使得要顯示的數(shù)據(jù)在左右通道間方便切換,應(yīng)用靈活。經(jīng)過試驗(yàn)考核及數(shù)臺(tái)樣機(jī)近一年的現(xiàn)場(chǎng)使用,證明該轉(zhuǎn)速表工作性能穩(wěn)定,測(cè)量精度高,響應(yīng)速度快,各項(xiàng)指標(biāo)均達(dá)到設(shè)計(jì)要求。
[1] 鐘旭,李飛燕,程政.實(shí)用高性能機(jī)車渦輪增壓器轉(zhuǎn)速測(cè)量新方法[J].儀表技術(shù)與傳感器,2007(5):53-55.
[2] 胡曉依,馮庚斌.基于振動(dòng)原理的便攜式增壓器轉(zhuǎn)速測(cè)量?jī)x[J].儀器與儀表,2000(2):17-20.
[3] 張雪平.單片機(jī)提高頻率測(cè)量精確度的新方法[J].微計(jì)算機(jī)應(yīng)用,2004,25(1):114-117.
[4] 張杰,姚劍,葉林,等.頻率測(cè)量的新方法[J].工業(yè)儀表與自動(dòng)化裝置,2003(1):63-66.
[5] 童長(zhǎng)飛.C805IF系列單片機(jī)開發(fā)與C語言編程[M].北京:北京航空航天大學(xué)出版社,2005: 142-143.
[6] 童詩(shī)白,華成英.模擬電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,2006:309-326,414-417.
[7] 沙占友.新型單片開關(guān)電源的設(shè)計(jì)與應(yīng)用[M].北京:電子工業(yè)出版社,2001:10-37.
[8] 馬忠梅,籍順心,張凱,等.單片機(jī)的C語言應(yīng)用程序設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,2007:143-151.
[9] 張俊謨.SoC單片機(jī)原理與應(yīng)用——基于C8051F系列[M].北京:北京航空航天大學(xué)出版社,2007:110-120,178-197.
[10]楊劍,劉光斌.單片機(jī)系統(tǒng)中應(yīng)用的幾種數(shù)字濾波方式[J].微計(jì)算機(jī)應(yīng)用,2006,27(1):114-116.
[11]王東峰.單片機(jī)C語言應(yīng)用100例[M].北京:電子工業(yè)出版社,2009:151-161.