文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2013)05-0008-04
某型航空發(fā)動機(jī)溫控盒通過熱電偶測量渦輪后溫度,從而保證排氣溫度不超過規(guī)定值。溫控盒是否正常工作直接關(guān)系到發(fā)動機(jī)工作安全,需定期檢測。航空兵部隊(duì)曾經(jīng)就發(fā)生過因溫控盒故障而導(dǎo)致的飛行事故,因此溫控盒的檢測非常重要。
溫控盒將噴管中K型熱電偶輸出的熱電動勢值與設(shè)定的限制電壓比較來判斷發(fā)動機(jī)是否超溫。超溫時,將溫差信號調(diào)制、放大、解調(diào)、功率放大,輸出供油控制信號及座艙內(nèi)告警信號。超過700℃時,輸出一定頻率和占空比的方波信號限制燃油供油量;超過730 ℃時,輸出連續(xù)直流信號停止供油。溫控盒檢測儀的主要任務(wù)是模擬熱電偶工作,測量溫控盒輸出的溫控信號是否正確。
目前已有兩種檢測儀,實(shí)際使用情況如下:
(1)基于單片機(jī)。優(yōu)點(diǎn):成本小。缺點(diǎn):操作復(fù)雜,顯示信息有限,人機(jī)交互性能相對不足(熱電偶模擬信號需手動轉(zhuǎn)把手調(diào)節(jié)),精度較低,檢測內(nèi)容的切換需要通過手動開關(guān)完成,可存儲數(shù)據(jù)量小,利用數(shù)碼管顯示信息,無法顯示漢字,查看歷史數(shù)據(jù)不方便。
(2)基于PC104工業(yè)計算機(jī)。優(yōu)點(diǎn):運(yùn)行桌面Windows系統(tǒng),顯示信息多,人機(jī)交互性較理想,開發(fā)周期相對較短。缺點(diǎn):成本太高,體積較大,功耗較大。PC104主板及A/D功能板卡價格都在萬元以上,VGA顯示器體積大,功耗10 W以上。
這兩種檢測儀都不能很好地滿足實(shí)際需求。因此提出了一種基于ARM-WinCE的改進(jìn)設(shè)計方案,該檢測儀結(jié)合了已有兩種方案優(yōu)點(diǎn),可鼠標(biāo)操作,顯示信息多,人機(jī)交互性好,開發(fā)周期短,體積小,功耗小,且支持觸屏。與原檢測儀設(shè)計復(fù)雜電路測量熱電偶冷端溫度和手動控制輸出模擬熱電勢信號相比[1],本文利用DS1820測量冷端溫度,D/A模擬輸出熱電勢信號,縮短了開發(fā)周期與檢測時間,提高了測量精度與實(shí)時性,同時降低了成本。
1 檢測儀需求分析
1.1 常遇故障
常遇故障概括起來就是在一定排氣溫度下,溫控盒輸出錯誤的溫控信號,主要有兩種情況:
(1)未到限制溫度卻切油、停車、告警,影響飛機(jī)飛行性能或造成空中停車;
(2)超過限制溫度未切油、停車、告警,燒壞發(fā)動機(jī)。
1.2 參數(shù)需求分析
根據(jù)維護(hù)規(guī)程規(guī)定,溫控盒需檢測參數(shù)及最大允許誤差如表1。
2 檢測儀總體設(shè)計
首先進(jìn)行自檢。系統(tǒng)根據(jù)輸入的幅值、頻率和占空比控制D/A輸出對應(yīng)的方波信號,該信號不經(jīng)溫控盒直接進(jìn)入檢測儀進(jìn)行測量,檢測儀通過對比測試結(jié)果與原始輸入來判斷系統(tǒng)是否正常。
正常檢測時,輸入待檢溫度,系統(tǒng)讀取冷端溫度,根據(jù)熱電偶工作原理,控制D/A輸出熱電勢到溫控盒,溫控盒輸出溫控信號,溫控信號經(jīng)調(diào)理后分為兩路:一路進(jìn)入I/O端口觸發(fā)中斷,另一路進(jìn)入A/D采樣。設(shè)置中斷觸發(fā)為雙邊沿,則方波信號邊沿到來時觸發(fā)中斷,系統(tǒng)轉(zhuǎn)入中斷處理進(jìn)行計時或采樣,完成溫控信號物理量測量,同時實(shí)時顯示并保存測量結(jié)果。檢測儀主要由5個模塊組成,如圖1所示。
(1)電源模塊:主要由電源和分壓電路等組成,提供檢測所需電壓。
(2)信號調(diào)理模塊:由信號調(diào)理電路與穩(wěn)壓傳感器、模擬開關(guān)等組成,實(shí)現(xiàn)A/D、D/A輸入/輸出信號調(diào)理及其他信號通斷控制。
(3)信號轉(zhuǎn)換模塊:包括激勵信號源和信號測量電路,是完成測量功能、保證測量精度的關(guān)鍵。
(4)控制模塊:主要由ARM處理器(S3C2440)及外圍芯片組成,檢測流程控制,實(shí)現(xiàn)實(shí)時數(shù)據(jù)處理,。
(5)顯示模塊:由支持觸屏的顯示器組成,提供檢測界面并實(shí)時顯示檢測結(jié)果。
3 硬件設(shè)計
硬件設(shè)計難點(diǎn)主要是激勵信號源,需模擬熱電偶輸出0~80 mV,且最大允許誤差為0.04 mV。
3.2 激勵信號源
激勵信號源主要由DS1820、D/A及調(diào)理電路組成。DS1820測溫范圍為-55 ℃~+125 ℃,精度為0.5 ℃,兼容TTL電平,可直接與處理器進(jìn)行串行數(shù)據(jù)交互,簡化了冷端溫度測量的問題。D/A選用18位分辨率的AD760,經(jīng)分壓后串行輸出0~80 mV電壓。系統(tǒng)軟件讀取DS1820測得的冷端溫度和用戶輸入的待檢溫度,根據(jù)3.1所示的熱電偶工作原理直接控制D/A向溫控盒輸出一定大小的激勵熱電勢,無需檢測人員手動調(diào)節(jié)。
3.3 溫控信號測量電路
A/D轉(zhuǎn)換器選用A/D7190。A/D7190是一款適合高精度測量應(yīng)用的低噪聲完整模擬前端,可直接輸入小信號,具有24位轉(zhuǎn)換,分辨率可達(dá)微伏級,能較好地滿足激勵信號檢測的精度要求。
4 檢測儀軟件設(shè)計
軟件是檢測儀設(shè)計的核心,負(fù)責(zé)根據(jù)待測溫度計算激勵信號幅值,并實(shí)時測量、顯示溫控信號參數(shù)。軟件開發(fā)主要包括操作系統(tǒng)定制、驅(qū)動程序開發(fā)、應(yīng)用程序開發(fā)三部分。驅(qū)動程序負(fù)責(zé)具體數(shù)據(jù)采集;應(yīng)用程序負(fù)責(zé)數(shù)據(jù)處理,控制檢測儀工作邏輯,提供人機(jī)交互界面,在VS2008中基于MFC開發(fā)。
ThreadTemp和ThreadData分別表示冷端溫度測量線程與數(shù)據(jù)處理線程,IST為中斷處理線程。正常檢測時,軟件總體流程圖如圖2所示。
4.1 操作系統(tǒng)定制
檢測儀選用WinCE6.0操作系統(tǒng), 主要為應(yīng)用程序提供運(yùn)行環(huán)境和文件管理,并為檢測人員提供人機(jī)交互平臺,簡化操作。WinCE對 Win32API子集的支持使桌面Windows程序開發(fā)經(jīng)驗(yàn)可直接應(yīng)用到檢測儀應(yīng)用程序開發(fā)中,縮短了開發(fā)時間。
檢測儀操作系統(tǒng)是在Platform Builder軟件中根據(jù)測試需求及硬件特點(diǎn)進(jìn)行系統(tǒng)組件及相關(guān)信息配置、調(diào)試及編譯定制的ARM_V4I模式操作系統(tǒng)。為支持應(yīng)用程序,操作系統(tǒng)定制時選擇MFC支持模塊,不選擇檢測所不需要的網(wǎng)絡(luò)、串口等模塊以最大限度減少系統(tǒng)大小,提高系統(tǒng)運(yùn)行速度。
4.2 驅(qū)動程序開發(fā)
WinCE下驅(qū)動程序采用流式接口驅(qū)動,以用戶態(tài)下DLL形式存在。外設(shè)被抽象成一個文件,應(yīng)用程序通過使用操作系統(tǒng)提供的文件API調(diào)用對應(yīng)的流式接口函數(shù)來訪問外設(shè),這不同于桌面Windows中直接以函數(shù)名調(diào)用DLL中函數(shù)。流式接口函數(shù)包括xxx_Open(),xxx_Close(),xxx_Init(),xxx_Deinit(),xxx_Read(),xxx_Write(),xxx_IoControl()等12個函數(shù),其中,xxx為自定義設(shè)備名[2]。
檢測儀驅(qū)動開發(fā)實(shí)質(zhì)是在固定的流式接口函數(shù)中實(shí)現(xiàn)對硬件部分的具體操作。
4.3 冷端溫度實(shí)時測量
應(yīng)用程序通過ThreadTemp實(shí)現(xiàn)測溫并顯示結(jié)果,完成對冷端溫度的實(shí)時測量[3]。DS1820與S3C2440單線連接,關(guān)鍵是保證正確的時序:初始化→ROM操作→存儲器操作→數(shù)據(jù)處理[4]。
4.4 自檢輸出信號及溫控信號測量的實(shí)現(xiàn)
利用TX1100A電位計校準(zhǔn)激勵信號源后,控制激勵信號輸出大小對系統(tǒng)進(jìn)行自檢。自檢時,ARM處理器根據(jù)檢測人指定的占空比、頻率、幅值,控制D/A輸出相同參數(shù)的模擬量,模擬量進(jìn)入A/D轉(zhuǎn)換實(shí)現(xiàn)自檢,自檢時程序的運(yùn)行如圖3所示。正常檢時,溫控盒輸出溫控信號。檢測結(jié)束后,系統(tǒng)自動以設(shè)備編號為標(biāo)記將結(jié)果分文件夾保存,設(shè)備編號統(tǒng)一存儲在文本文檔中,讀寫由系統(tǒng)軟件完成。
自檢信號及溫控信號的實(shí)時測量通過在溫控盒驅(qū)動程序WKH_Open()中創(chuàng)建的IST實(shí)現(xiàn)。中斷到來時,IST完成計時或A/D轉(zhuǎn)換。如圖2所示,IST先創(chuàng)建中斷關(guān)聯(lián)事件,然后利用WaitforSingleObject()一直等待;方波信號輸入檢測儀觸發(fā)中斷后,IST轉(zhuǎn)入計時或采樣中斷處理完成測量。
測量頻率、占空比、幅值的原理如圖4所示。計時之前,先調(diào)用QueryPerformanceFrequency()函數(shù)獲取機(jī)器內(nèi)部定時器時鐘頻率a[0],在連續(xù)的3次邊沿到來時調(diào)用QueryPerformanceCounter()函數(shù)獲得當(dāng)前計數(shù)值到a[1]、a[2]、a[3],兩次計數(shù)之差除以時鐘頻率即可得出精確到微秒的間隔時間,開啟A/D轉(zhuǎn)換可得到方波幅值。以duty表示占空比,f表示頻率,則:
測試結(jié)果的實(shí)時顯示主要通過ThreadData實(shí)現(xiàn)。如圖2所示,在檢測停止前,ThreadData循環(huán)完成獲取IST所測量到數(shù)據(jù)、處理數(shù)據(jù)、顯示數(shù)據(jù)、保存數(shù)據(jù)的任務(wù)。
4.5 數(shù)據(jù)保存與故障分析
檢測過程中,系統(tǒng)將檢測結(jié)果同時寫入文本文檔中完成對檢測結(jié)果的保存,檢測人員以后可在不運(yùn)行測試軟件的情況下直接查看歷史數(shù)據(jù)。故障出現(xiàn)時,系統(tǒng)查詢故障數(shù)據(jù)庫,提示檢測人員可能的故障結(jié)果。
5 檢測結(jié)果及分析
以幅值(mV)、頻率(Hz)、占空比為一組數(shù)據(jù),系統(tǒng)自檢結(jié)果如表2所示。其中誤差取3次測量中所出現(xiàn)的最大誤差。
由表2可得,測得數(shù)據(jù)誤差均在表1所示范圍內(nèi)。分析數(shù)據(jù)可得以下3點(diǎn):
(1)幅值誤差穩(wěn)定在0.010 mV~0.020 mV之間,比較理想。
(2)頻率為5 Hz、6 Hz或8 Hz時,頻率誤差均小于0.02 mV,占空比誤差不超過0.1%。
(3)頻率達(dá)到20 Hz時,誤差開始大于0.1 Hz;頻率達(dá)到80 Hz時,會出現(xiàn)結(jié)果未顯示或占空比為0.0%。
調(diào)試發(fā)現(xiàn),輸入信號為80 Hz、占空比出現(xiàn)0.0%時,a[2]=0。其原因?yàn)锳RM不支持同級嵌套[5],系統(tǒng)響應(yīng)第1次中斷時,將中斷屏蔽器相應(yīng)位置1,80 Hz中斷間隔相對較短,第1次中斷未處理完時,第2次中斷到來,中斷請求未被服務(wù),a[2]=0,由式(4),高電平時間為0,故占空比出現(xiàn)0.0%。而第3次中斷可被服務(wù),a[3]值正確,頻率正確。
結(jié)果未顯示的原因是數(shù)據(jù)線程中消息響應(yīng)函數(shù)的算法繁瑣,消耗時間過長,數(shù)據(jù)未正常顯示。簡化算法后,結(jié)果可正常顯示。
由表1,溫控盒輸出溫控信號頻率為5~8 Hz,在此范圍內(nèi),采用圖4方法檢測出誤差在規(guī)定范圍之內(nèi)。增大輸入頻率再進(jìn)行測試,以測量10次內(nèi)有無出現(xiàn)結(jié)果不正常顯示來進(jìn)行統(tǒng)計,結(jié)果如表3所示。表3中,當(dāng)頻率較高(大于80 Hz)時,圖4中連續(xù)計時或采樣的測量方法將難以實(shí)現(xiàn)測量功能,需間隔采樣,結(jié)合中斷計數(shù)計算方波物理量,以提高測量精度,但測量實(shí)時性減弱。
本文設(shè)計的檢測儀已通過部隊(duì)實(shí)際應(yīng)用,作為內(nèi)場離位檢測設(shè)備,具有精度高、檢測時間短等優(yōu)點(diǎn),有效地保障了航空兵部隊(duì)的作戰(zhàn)和訓(xùn)練任務(wù)。設(shè)計思想和工程實(shí)現(xiàn)方法對于低頻方波信號的物理量實(shí)時檢測具有借鑒意義。加上蓄電池電源后,可以拓展為各種體積小、重量輕、功耗低的內(nèi)外場便攜式檢測設(shè)備,具有一定的推廣前景。
參考文獻(xiàn)
[1] 蔡傳凱,謝斌,蔣寧,等.某型飛機(jī)發(fā)動機(jī)溫度控制盒檢測系統(tǒng)設(shè)計[J].裝備制造技術(shù),2009(1):55-57.
[2] 姚連喜,樊強(qiáng),周井泉.WindowsCE.NET中斷延遲測試與分析[J].電子技術(shù)應(yīng)用,2009,35(3):40-45.
[3] 劉洪.基于DS1820的溫度測量系統(tǒng)設(shè)計[J].華南師范大學(xué)學(xué)報(自然科學(xué)版),2002(1):85-89.
[4] Xu Liyong,Dong Yanrong,Gu Liwei,et al.Design and implementation of the embedded wince software platform drive[C].2nd International Conference on Advanced Computer Theory and Engineering,2009,2(8):1933-1940.
[5] Samsung Electronics Co,Ltd.S3C2440 32-bit microcontroller user′s manual revision 1[K],Seoul:Samsung Press,2004.