李 漢
(廣州航海高等??茖W校輪機系,廣州 510725)
利用瞬時轉速監測柴油機是一種新型的監測方式。柴油機瞬時轉速的波動可以評估柴油機的平均指示壓力[1]、缸內燃燒壓力[2]并對柴油機進行故障診斷[3]。應用瞬時轉速監測柴油機的工作狀態或進行故障診斷時,需要對柴油機瞬時轉速進行快速且準確的測量,因此,船舶柴油機瞬時轉速監測記錄儀是該方法實用化的基礎。
目前測量柴油機瞬時轉速主要采用磁電式傳感器,優點是直接使用飛輪上的齒輪結合磁電式傳感器進行測量,安裝簡便,但是采用齒輪-磁電式傳感器的測量主要誤差有齒圈角度誤差、安裝偏心誤差、計數誤差等[4],測量誤差較大,具有時變性且難以控制,故本文不使用磁電式傳感器,而采用靈敏的增量型光電編碼器。選用編碼器的原則如下:
1)采用抗振性能好的光電編碼器。
2)柴油機振動強烈,不適合采用脈沖數較高的編碼器,滿足評估指標參數即可。
3)采用A、B、Z三相輸出編碼器。
利用柴油機瞬時轉速評估柴油機的平均指示壓力、缸內燃燒壓力或對柴油機進行故障診斷時,需要了解柴油機一個工作循環中轉速的瞬時波動,不論柴油機平均轉速高低,只要一個工作循環內測得足夠的瞬時轉速,即可達到評估的目的,因此,瞬時轉速的測量廣泛采用定角度測量時間的方法。
柴油機運行時產生強烈的振動,為了準確測量瞬時轉速,必須處理振動帶來的問題。光電編碼器的輸出信號如圖1所示,其中(a)為平穩運行時的波形,(b)為有扭振時的波形。光電編碼器輸出A、B兩相信號,以A相信號為測速脈沖信號,B相信號為參考信號。由圖1(a)可看出當A相信號的上升沿時刻測得B相信號的電位與A相信號的下降沿時刻測得B相信號的電位不同時,此次脈沖為真實脈沖,反之脈沖為干擾脈沖。具體如下:在A相信號的上升沿時刻測量B相信號的電位Vu,下降沿時刻測量 B相信號的電位Vd。
圖1 光電編碼器輸出波形圖
當Vu≠Vd時,判定本次脈沖為真實脈沖;
當Vu=Vd時,判定本次脈沖為干擾脈沖。
在測速程序中對真實脈沖計時,對干擾脈沖將忽略,這樣在柴油機轉軸出現扭振的情況下使用光電編碼器測量瞬時轉速的精度將大為提高。
測速編碼器輸出A、B和Z相信號,Z相信號用于定位,其上升沿時刻表示柴油機轉動一周的開始或結束。柴油機振動同樣干擾Z相信號,因此必須對Z相信號采取抗干擾措施。圖2為抗振動測量瞬時轉速的時序圖,圖中Z相信號為經抗干擾電路之后的信號。因柴油機振動對 A、B相信號的干擾情況較為復雜,而且轉速不同編碼器輸出的脈沖寬度和周期也隨之變化,采用硬件抗干擾電路難以達到預期目的,適合采用軟件抗干擾。
圖2 抗振動測速時序圖
測速系統接收到Z相信號,其上升沿時刻產生中斷,處理器響應中斷時清零內部定時器,并重新開始計時。系統接收到A、B相脈沖時,識別出A相的干擾脈沖,從而決定是否記錄A相信號下降沿時刻的計時值。如果A相信號脈沖為干擾脈沖,則不記錄該脈沖下降沿時刻的計時值,如果A相信號脈沖為真實脈沖,則將該脈沖下降沿時刻的計時值記錄到T[k]中。T[N]是長度為N的一維32位整數數組,用于記錄轉軸一周內每個A相真實脈沖下降沿的計時值,N等于編碼器每周脈沖數。假設計時時鐘頻率為fc(MHz),則
采用 PHILIPS公司生產的基于 ARM7TDMI-S內核的32位嵌入式處理器LPC2114,該處理器具有豐富的片內資源,如2個定時器、I2C接口、SPI接口、2個UART接口、PWM、實時時鐘RTC、看門狗、A/D轉換器、多路中斷系統和數量較大的 GPIO,給用戶系統設計帶來較大方便。瞬時轉速監測記錄儀的硬件電路如圖3所示,由信號輸入電路、通訊電路、指示燈、復位和電源等部分組成。
圖3 瞬時轉速監測記錄儀電路圖
光電編碼器輸出A、B、Z三相信號,其中Z相信號輸入到LPC2114的P0.11端,A、B相信號分別輸入到LPC2114的P0.10端和P0.12端。Z相信號需要硬件抗干擾電路,消除因振動而產生的干擾脈沖,避免影響轉軸定位的準確性??梢圆捎秒娙轂V波之后再進行電壓滯回比較的方法消除干擾脈沖信號,也可以采用單穩態定時器消除干擾脈沖。A、B相信號僅需施密特觸發器整形即可輸入到處理器,可見A、B相信號輸入電路簡單,無需復雜的硬件電路,抗干擾和脈沖計時都由處理器的內部定時器和軟件完成。
LPC2114內部具有兩個通用串行接口UART0和UART1,UART1與UART0相同,只是UART1增加了Modem接口。本文使用UART0,其接口P0.0(TxD)和 P0.1(RxD)分別用于發送和接收通訊信號,考慮到機艙到集控室的距離較遠,上位機與瞬時轉速測量系統的通訊采用RS485,故需要轉換電路將通用串口的信號轉換為RS485的差動信號或將 RS485的差動信號轉換為LPC2114通用串口的信號。上位機使用RS485/RS232轉換器,將RS485差動信號轉換為RS232接口信號。上位機與測速系統之間采用雙絞線連接。
LPC2114需要兩種電壓,+3.3 V和+1.8 V,同時邏輯電路和編碼器還需要+5 V的直流電源,所以電源電路需要3種電壓。+5 V電壓由外部供給,再使用三端穩壓器 LM11173-3.3和LM11173-1.8轉換為系統所需的電源。為了提高系統的可靠性,復位電路使用專用復位芯片SP708S。
測速系統采用兩個指示燈,分別為運行指示燈和通訊指示燈。系統上電運行之后運行指示燈亮,柴油機運轉測速系統測得瞬時轉速并向上位機發送數據時通訊指示燈亮。運行指示燈和通訊指示燈分別連接 LPC2114處理器的 P0.22和P0.23端。
LPC2114內部具有兩個32位定時器-定時器0和定時器1,分別具有3路和4路32位的捕獲通道,各有4個匹配寄存器,僅使用一個定時器就完成柴油機瞬時轉速的測速要求,這里選用定時器1。編碼器A相脈沖信號從P0.10端口輸入,測速系統需要在A相信號下降沿和上升沿時刻能夠產生中斷并且捕獲該時刻的定時值,因此P0.10設置為CAP1.0。B相脈沖信號從P0.12端口輸入,因B相信號需要檢測電位,故P0.12設置為GPIO,方向設置為I。編碼器Z相脈沖信號從P0.11端口輸入,系統需要在Z相信號下降沿時刻產生中斷并且清零定時器,重新啟動計時,因此P0.11設置為CAP1.1。測速系統通過通用串口UART0與上位機連接,需要將P0.0設置為TxD,P0.1設置為 RxD。測速系統的兩個發光二極管由端口P0.22、P0.23控制,故 P0.22、P0.23應設置為GPIO,方向為O。
圖4 中斷程序流程圖
抗振動瞬時轉速的測量主要由定時器1的中斷程序完成,瞬時轉速測量的流程圖如圖4所示。定時器 1具有兩個中斷源 CAP1.0和 CAP1.1,CAP1.1由Z相信號產生,CAP1.0由A相信號產生。CAP1.1中斷時,由中斷程序將定時器的TC值清零同時將k置0,重新開始測量轉軸一周的瞬時轉速;CAP1.0中斷時則需要采用本文上述方法識別當前脈沖信號是否為干擾脈沖,才能決定是否記錄計時值。如果 CAP1.0為上升沿中斷則讀取并寄存B相信號的電位值Vu,如果CAP1.0為下降沿中斷則讀取 B相信號的電位值Vd。當Vd≠Vu時當前脈沖判為真實脈沖,將定時器捕獲的計時值T1CR0記錄于T[k]中;當Vd=Vu時判為干擾脈沖,將忽略,不予記錄計時值。獲取A相信號的計時值之后如果在中斷程序中計算瞬時轉速會導致中斷程序執行時間過長,為了避免這種情況,使用聯絡標志位bPro。當CAP1.0為A相信號真實的脈沖下降沿中斷則bPro=“1”,主程序檢測到bPro為“1”則由T[k]、k計算出瞬時轉速,處理完畢bPro清零。這樣將瞬時轉速計算工作交給主程序,降低中斷程序的負擔。
主程序的主要任務是系統初始化、瞬時轉速解算、通訊和顯示輸出等,主程序流程圖如圖 5所示。
1)初始化:初始化需要處理的內容有端口配置;定時器初始化;UATR0接口初始化;中斷配置;P0.22、P0.23電位設置。
圖5 主程序流程圖
2)瞬時轉速解算:檢測到聯絡標志位bPro=1,表示測速中斷程序傳來待處理數據,啟動轉速解算程序,先求出A相脈沖的周期值Tk,再根據式(1)求出當前的轉速nk。
3)通訊:解算出瞬時轉速 nk,啟動串口通訊程序,將數據發送給上位機。
4)顯示輸出:測速系統運行,初始化完成之后運行指示燈亮,表示系統已經運行,如果電源失電,運行指示燈滅。通訊指示燈在數據發送之前點亮,通訊完畢,熄滅通訊指示燈,用戶可借助指示燈了解通訊的情況。
上位機應用程序采用 VC++6.0開發基于對話框應用工程,串口采用 MSComm控件處理上位機和下位機之間的通訊。應用程序具有如下功能:(1)通訊口配置。(2)數據通訊。(3)瞬時轉速數據的儲存。(4)瞬時轉速以曲線的形式顯示。(5)計算有關參數如平均轉速、平均指示壓力、缸內燃燒壓力等。
本文提出一種基于光電編碼器的柴油機抗振動瞬時轉速的測量方法,并研制以32位嵌入式處理器(LPC2114)為控制器的瞬時轉速監測記錄儀,該系統分為兩級,下位機測量柴油機的瞬時轉速,并發送到上位機,上位機接收數據后對數據進行儲存、顯示和運算等處理,可進一步得出平均指示壓力、缸內燃燒壓力等指標,為應用瞬時轉速診斷柴油機故障打下基礎。
[1]蘇鐵熊. 用實測發動機瞬態轉速波動估計平均指示壓力[J]. 燃機工程, 2003, 24(2): 27-32.
[2]蘇鐵熊, 成秋. 利用實測發動機瞬態轉速波動估計缸內燃燒壓力[J]. 內燃機工程, 2004, 5(3): 54-57.
[3]孫云嶺, 樸甲哲, 張永祥. 基于瞬時轉速和雙譜的內燃機故障診斷的研究[J]. 內燃機學報, 1999(1):67-70.
[4]張帆, 陳軍, 丁連生. 柴油機瞬時轉速測量誤差的研究[J].農機化研究, 2006,(9): 218-219.
[5]李漢.一種光電編碼器抗振動測速的方法[J].電氣傳動.2010, 40(6): 78-8.