作者簡介:尉廣軍(1965—),男,河北趙縣人,副教授,碩士,研究方向:導彈檢測與故障診斷(E-mail:majun.123.2006@163.com);傅振華(1982—),男,福建莆田人,助理工程師,碩士,研究方向:導彈檢測。
摘要:針對某型導彈選彈電子箱的測試需求,設計一種基于PC104嵌入式系統開發平臺的高可靠、高精度的多路電阻檢測系統,介紹該系統各功能模塊的硬件電路設計,軟件設計采用Labview與Visual C++混合編程方法以實現系統檢測與故障診斷功能。測試表明系統實現了多路電阻的快速精確測量,并可將故障定位到具體部件。
關鍵詞:PC104;電阻測量;檢測系統;虛擬儀器
中圖分類號:TP765.4文獻標識碼:A
1引言
某型導彈選彈電子箱是該型導彈發控裝置關鍵設備之一,它是一臺多路信號轉換裝置,主要完成電氣信號的轉接和電氣保險。目前,該選彈電子箱沒有相應的專用檢測設備,它的檢測主要靠通用檢測設備,其測試精度不高、故障定位粗糙。根據測試需求分析,該電子箱主要完成多回路電阻的高精度測量,研究設計一個能夠精確測量、準確故障定位的檢測系統是十分必要的。目前自動測試系統可選用的總線種類較多,其中PC104具有可靠性高,技術性能好,支持多種開發環境等優點,與其他總線相比,它的費用最低[1-2]。因此,筆者以嵌入式PC104主板為核心,設計了能對選彈電子箱進行綜合性能測試與準確故障定位的檢測系統。
2系統硬件設計
2.1硬件總體方案設計
檢測儀需要對選彈電子箱36個回路的電阻進行測量,精度δ≤0.1Ω。檢測儀由信號調理板、PC104主板、數據采集板、液晶屏、電源模塊、檢測電纜、前面板、后面板等組成。硬件組成框圖如圖1所示。前面板主要由檢測插座、USB接口、上電開關等組成。
嵌入式PC104為整個檢測儀的核心,管理整個檢測任務,提供良好的人機界面,建立檢測數據庫,實現檢測數據維護檔案管理及檢測數據打印。PC104主板采用PCM-3586,通過PC104總線實現與數據采集板的數據交換,并將數據實時顯示、保存、故障分析等。
數據采集板采用基于PC104總線的ART2010,通過相應I/O接口控制選彈電子箱的上電、制冷電壓切換等,同時完成對信號調理板給出的測試電壓進行A/D采樣。數據采集卡通過PC104總線與工控機主板進行通訊,并根據嵌入式PC104主板發出的檢測指令對信號調理板輸出的電壓量進行A/D采樣。
2.2信號調理板
信號調理板作用:①負責對待測信號電壓進行放大或衰減以符合數據采集卡電壓輸入范圍要求;②接受數據采集卡輸出的I/O控制指令,切換電子開關選通相應的測試量或模擬條件信號;③產生測試必需的模擬條件信號。AC/DC產生系統各電路所需的電源,以及檢測時提供電源給電子箱。
信號調理板主要由恒流源電路、電子開關矩陣、信號放大電路、電平轉換電路、譯碼電路、電源變換等電路組成,其功能是根據測試指令完成對相應測試通道切換,并利用恒流源來實現將電阻測試轉換為電壓測試,調理后的測試電壓經數據采集板進行A/D采樣。電子開關矩陣電路如圖2所示。
2.3電阻測量模塊
檢測儀采用恒流法測電阻,即產生恒定的電流流經電阻,采集產生的電壓就可以知道相應的電阻值[3],所以精密恒流源設計是測量電阻的關鍵。精密恒流源設計如圖3所示,其中N2為10V的精密基準源,電流的大小由R4決定:
檢測儀共要測量選彈電子箱36個回路的電阻,需要36個繼電器。100mA的電流通過繼電器流入待測電阻R*,產生的電壓再送單片機A/D采樣。
3系統軟件設計
3.1軟件平臺組成
軟件設計基于虛擬儀器的思想,采用基于Windows XP系統下的Labview與Visual C++混合編程,完成系統檢測與故障診斷任務。
Labview是一種高性能的圖形化虛擬儀器編程軟件,有豐富的界面控件,采用非文字的流程圖的方式來創建源程序,方便易用,廣泛用于數據采集與檢測系統中;但它只支持NI公司提供的數據采集卡,并且其本身也存在一些不足,如不擅長于完成大量數據處理的任務,對系統底層操作不方便[4]。而VC++可方便、高效地與系統及底層硬件直接交換數據,同時在故障診斷推理、數據庫訪問等方面開發起來很方便[5]。因此,綜合利用二者優勢,采用混合編程的方式來實現本系統軟件設計。
3.2系統軟件實現
Labview提供了對外部代碼調用的接口庫函數,其中的調用庫函數CLF節點(Call Library Function Node)使得用戶可以方便地調用標準共享庫和自定義庫函數;在VC++6.0環境下編寫數據采集卡驅動轉化成DLL (動態鏈接庫),即可實現調用[6]。
檢測程序設計首先在VC++中使用MFC AppWizard向導生成DLL的程序框架,編寫數據采集卡的初始化以及底層驅動程序轉化為DLL。在Labview通過CLF節點完成DLL調用,讀取數據采集卡上A/D轉換數據,并在液晶屏上顯示或驅動打印機打印,同時完成檢測系統界面的開發。
在設計方案中故障診斷是和檢測融合在一起的,即每一檢測完成后即進行故障診斷分析。每一檢測數據的采集同時都伴有:基礎條件、前級提供和本級運行的數據采集。故障診斷采用基于專家系統的思想,將選彈電子箱所有故障故障現象以及故障原因存儲到數據庫中,通過推理確定出故障所在位置及可能原因,該模塊在VC++中開發,并生成DLL,在Labview中調用。
數據庫采用Microsoft Access 2003來創建,在VC++中利用ADO(ActiveX Data Object)技術來管理知識的存儲、編輯、刪改、更新查詢和安全保護等工作,靈活運用SQL語句和ADO三個核心對象可以方便地實現知識庫的維護與擴充[5]。
故障診斷推理采用匹配推理方式,系統讀取采集數據,通過比較選出不正常數據作為征兆事實與知識庫中規則的前提條件進行匹配推理,若匹配成功,得出診斷結論;若匹配不成功,則以交互方式引導檢測人員選擇相近的規則選項完成故障診斷;最后在得出故障結論的同時給出維修建議,對于故障原因交叉的,給出故障檢查先后順序。檢測人員可通過幫助菜單進入專家幫助系統,內有相應的電路原理說明和維修操作指導。
4結束語
本文基于PC104嵌入式系統開發平臺,設計了某型導彈選彈電子箱檢測系統,系統硬件采用商品化的模塊,具有高可靠性、低功耗以及便攜性好等特點,軟件采用基于Labview與VC++混合編程的方法實現系統檢測與故障診斷,實踐應用表明系統能精確高效地完成選彈電子箱檢測與診斷任務,提高了部隊維修保障人員在遂行作戰任務中的保障能力。
參考文獻
[1]王毅,石志勇.基于PC104總線的某型隨動系統自動測試設備設計[J].國外電子測量,2011,30(7):43-45.
[2]洪光,擺衛兵,陳世純. 基于PC104總線的檢測維修訓練系統研究[J].微計算機信息,2010,26(12):45-46.
[3]鄭善祥,雷金奎. 基于MSP430F169的多路電阻測量系統設計[J].現代電子技術,2012,35(2):156-159.
[4]劉君華.虛擬儀器圖形化編程語言Labview教程[M].西安:西安電子科技大學出版社, 2002.
[5]孫鑫,余安萍. VC++深入詳解[M]. 北京:電子工業出版社. 2011.
[6]李學生, 戴波. 基于DLL的Labview數據采集系統[J]. 北京石油化工學院學報, 2005,13(2):24-26.