設(shè)計和運用發(fā)動機低頻振動信號采集系統(tǒng)
摘要:介紹了針對康明斯6BT5.9 型柴油發(fā)動機機體側(cè)壁產(chǎn)生的低頻振動信號的數(shù)據(jù)采集系統(tǒng),該系統(tǒng)綜合運用了RS232 串行通信技術(shù)、單片機技術(shù)以及數(shù)據(jù)采集技術(shù),整個設(shè)計由振動傳感器、數(shù)據(jù)采集板、PC 機應(yīng)用程序3 部分組成。實驗表明該系統(tǒng)具有穩(wěn)定、可靠、實時、性價比高等優(yōu)點。
1 引言
柴油機是往復(fù)運動機械,其激振力主要來源于活塞-曲柄機構(gòu)周期性運動時產(chǎn)生的慣性力,以及氣缸內(nèi)氣體燃燒產(chǎn)生的周期性氣壓力。將傳感器垂直安裝在氣缸體與曲軸箱的連鑄體側(cè)壁采集的機體低頻段振動信號直接反映了柴油機工作中振動激勵源的信息。因此,采用發(fā)動機低頻振動采集系統(tǒng)進行故障測試診斷方面的研究對盡早發(fā)現(xiàn)并排除故障隱患、防止事故發(fā)生、提高柴油機的經(jīng)濟性有著重要的現(xiàn)實意義。目前,通過PC 機的RS232 串行接口與外部設(shè)備進行通訊,是許多測控系統(tǒng)中常用的一種通信解決方案,但當其以查詢方式接收數(shù)據(jù)時,用戶只能等候在計算機當前界面而不能進行其它操做, 直到數(shù)據(jù)接收完畢。本系統(tǒng)運用VS .2008.C# 線程管理功能決了這一問題,改善了人機交互環(huán)境, 優(yōu)化了系統(tǒng)性能。
2 系統(tǒng)簡介
發(fā)動機低頻振動信號采集系統(tǒng)由3 部分組成:振動傳感器、數(shù)據(jù)采集板、PC 機應(yīng)用程序,整個系統(tǒng)結(jié)構(gòu)如圖1 所示。應(yīng)用北京通磁偉業(yè)傳感技術(shù)有限公司生產(chǎn)的ZD24(DC5V)型振動傳感器將EQ6BT5.9 型柴油發(fā)動機機體表面的機械振動轉(zhuǎn)變成0~5V 模擬電信號。數(shù)據(jù)采集板利用AT8 9 S5 1 微控制器以采樣頻率1 . 6 kHz 驅(qū)動ADC0832 完成A/D 變換并將數(shù)據(jù)經(jīng)美信公司的RS223接口芯片MAX232 傳輸給PC 機。PC 機上的應(yīng)用程序通過C#2008.NET 3.5 框架下的線程類和SerialPort 類很好地實現(xiàn)了PC 機與數(shù)據(jù)采集板之間的實時數(shù)據(jù)通信并將采集到的振動數(shù)據(jù)保存為txt 文本文件供MATLAB生成的COM 組件對其進行FFT 分析與顯示。
圖1 柴油發(fā)動機低頻振動信號采集系統(tǒng)結(jié)構(gòu)圖。
3 系統(tǒng)硬件設(shè)計
圖2 數(shù)據(jù)采集板框圖。
圖2 是數(shù)據(jù)采集板框圖,該板主要由單片機AT89S51、A/D轉(zhuǎn)換器ADC0832、電源模塊DC/DC 等組。數(shù)據(jù)采集板采用RS232 串口方式與外界通信,其原理圖如圖3。
圖3 數(shù)據(jù)采集板原理圖。
4 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件設(shè)計包括兩個部份:固件程序設(shè)計、PC 機應(yīng)用程序設(shè)計。二者互相配合,才能完成可靠、實時的數(shù)據(jù)采集與傳輸。固件程序是用C51 語言編寫的,主要作用是啟動A/D 轉(zhuǎn)換、發(fā)送數(shù)據(jù),上位機程序是用最新的C# 3 . 0 語言編寫。
4.1 固件程序設(shè)計
固件程序(又稱單片機程序)是指固化到徽控制器模塊內(nèi)的程序。本系統(tǒng)的固件程序是采用C51 開發(fā)完成的, 其流程圖如圖4 所示。
圖4 固件程序流程圖。
固件程序設(shè)計中的核心部分是A/D 轉(zhuǎn)換程序。當上位機準備好后, 加電啟動采集板自動啟動A/D 轉(zhuǎn)換。
具體的A/D 轉(zhuǎn)換程序如下:
4.2 PC 機應(yīng)用程序設(shè)計
圖5 PC 機數(shù)據(jù)采集界面。
應(yīng)用程序是系統(tǒng)與用戶的接口, 它通過線程和SerialPort 類完成對數(shù)據(jù)采集板的通信和控制。使用線程后, 程序在以查詢方式接收數(shù)據(jù)的同時, 用戶則可以進行其它操作。C# 串行類( Ser i a l Por t ) 是Vi su a lStudio.Net 2008 中一個的類,屬于System.IO.Ports 命名空間, 將它與線程結(jié)合開發(fā)的應(yīng)用程序具有功能強大、界面友好、高效簡便、通信快速、實時性好等特點。數(shù)據(jù)采集界面如圖5。
4.2.1 C# 串行類的初始化設(shè)置
對串口進行初始化設(shè)置,由Ser ialPort 對象的參數(shù)可知主要包括設(shè)置串口號,波特率,奇偶校驗位, 數(shù)據(jù)位數(shù),停止位數(shù)等。以下為各參數(shù)所代表的含義并實例化一個串口對象:
4.2.2 讀操作
從串口輸入緩沖區(qū)的同步讀取一個字節(jié)操作通過執(zhí)行S e r i a l P o r t . R e a d B y t e ( ) 來實現(xiàn)的, 串口類ReadTimeout 屬性可以設(shè)置讀取操作未完成時發(fā)生超時之前的毫秒數(shù)。當程序以查詢方式接收到數(shù)據(jù)采集板發(fā)來的數(shù)據(jù)后, 串行類執(zhí)行此讀方法。
4.2.3 計算采樣頻率
由于固件程序是用C51 語言編寫的,存在計算采集頻率的困難。本系統(tǒng)通過在C # 3 . 0 中調(diào)用Q u e r y P e r f o r m a n c e F r e q u e n c y ( ) 和QueryPerformanceCounter()兩個Windows API 函數(shù)對接收數(shù)據(jù)程序段采用精確計時的方法,巧妙的實現(xiàn)了系統(tǒng)采樣頻率的精確計算。它們的引用代碼如下:
經(jīng)計算,本系統(tǒng)的采樣頻率fs=1600Hz。根據(jù)采集定理,當信號在最高頻率fmax 時,采樣頻率fs ≥ 2fmax就能使采樣信號不發(fā)生“混疊。”通常,把最低允許頻率fs = 2fc 稱為Nyquist 頻率,工程中,為可靠起見,常取fs≥(3~4)fmax。根據(jù)振源的實際情況(康明斯6BT5.9 型柴油發(fā)動機機體側(cè)壁產(chǎn)生的低頻振動信號) , 設(shè)定采樣32768 次,用時20.48 秒。
4.2.4 低頻振動信號分析
發(fā)動機穩(wěn)定怠速工況(750 ± 100r/min)下,進入系統(tǒng)數(shù)據(jù)采集界面開始采集信號,之后程序自動將其保存為txt 文本供在C#3.0 中調(diào)用MATLAB 生成的COM 組件對其進行分析, 其原始信號圖、頻譜分析情況如圖6所示。根據(jù)動力學(xué)分析,EQ6BT5.9 型柴油機在工作過程中對氣缸體的主要振動激勵源如下: (注:F 為柴油機轉(zhuǎn)頻、怠速工況下F=12.5Hz)。
圖6 原始信號及頻譜圖。
3) 整機(六個缸)活塞橫向撞擊氣缸壁; 頻率:6F從實測數(shù)據(jù)頻譜分析的結(jié)果來看與動力學(xué)分析一致, 驗證了該系統(tǒng)的可靠性。
5 結(jié)束語
發(fā)動機低頻振動信號采集系統(tǒng)能夠方便應(yīng)用于振動信號的實時采集與分析, 具備快速連接、靈活快捷獲取數(shù)據(jù)等優(yōu)點, 可實現(xiàn)大批量、無限時的實時數(shù)據(jù)采集。本系統(tǒng)已成功運用于柴油發(fā)動機故障檢測與診斷, 加之PC 機的普及性, 更使得這套系統(tǒng)具有廣闊的應(yīng)用前景。