周兆軍 葉慧娟 王昕曄
(1.海軍702廠 上海 200434)(2.海軍工程大學(xué)兵器新技術(shù)應(yīng)用研究所 武漢 430033)(3.海軍工程大學(xué)科研部 武漢 430033)
在魚雷發(fā)射裝置試驗過程中,為了對發(fā)射裝置性能進行分析,需要對發(fā)射管內(nèi)的壓強及假雷的內(nèi)彈道參數(shù)進行數(shù)據(jù)采集工作,發(fā)射試驗系統(tǒng)框圖如圖1。單片機控制電路主要是為了控制發(fā)射閥的開關(guān),當(dāng)發(fā)射閥打開,發(fā)射氣瓶中的高壓空氣按規(guī)律進入發(fā)射管,作用在假雷尾部,推動假雷運動,數(shù)據(jù)采集系統(tǒng)通過傳感器可采集到發(fā)射管內(nèi)的實時壓力和假雷的運動參數(shù)。
Labview是一種基于圖形程序的虛擬儀器編程語言,在測試與測量、數(shù)據(jù)采集、儀器控制、數(shù)字信號分析、工廠自動化等領(lǐng)域獲得了廣泛的應(yīng)用[1~7]。Labview對數(shù)據(jù)采集和處理的傳統(tǒng)方法是采用數(shù)據(jù)采集卡,但是這些數(shù)據(jù)采集設(shè)備存在安裝不便、價格昂貴、受計算機插槽數(shù)量、地址、中斷資源的限制,可擴展性差,同時在一些電磁干擾性強的測試現(xiàn)場,可能無法專門對其做電磁屏蔽從而導(dǎo)致采集的數(shù)據(jù)失真。在Labview下使用USB總線,可以同樣實現(xiàn)數(shù)據(jù)采集,并且彌補了采集卡的不足。本文根據(jù)魚雷發(fā)射試驗數(shù)據(jù)采集的實際需要,采用USB數(shù)據(jù)采集卡進行數(shù)據(jù)采集,利用Labview調(diào)用動態(tài)鏈接庫DLL文件讀取USB接口的數(shù)據(jù),并編制了數(shù)據(jù)的分析處理程序,本文的設(shè)計為魚雷發(fā)射試驗數(shù)據(jù)采集及分析提供了一種簡單、有效的方法。
圖1 發(fā)射試驗系統(tǒng)框圖
圖2 基于USB接口和Labview的數(shù)據(jù)采集原理框圖
魚雷發(fā)射試驗數(shù)據(jù)采集系統(tǒng)工作原理如圖2。USB數(shù)據(jù)采集卡包含信號放大、調(diào)理電路,A/D轉(zhuǎn)換電路及串口轉(zhuǎn)USB接口電路[8]。傳感器測量信號首先通過信號放大、調(diào)理電路進入采集卡的A/D轉(zhuǎn)換通道,轉(zhuǎn)換后的數(shù)字信號通過串口轉(zhuǎn)USB接口電路,通過USB接口傳輸給PC機,最后由Labview軟件對數(shù)據(jù)進行分析處理。
目前,USB數(shù)據(jù)采集卡有兩種類型,一種是循環(huán)采集各通道數(shù)據(jù)的循環(huán)采集卡,另一種是同時采集各通道數(shù)據(jù)的同步采集卡[9~10,14]。由于循環(huán)采集卡循環(huán)采集各通道數(shù)據(jù),所以采集的各通道數(shù)據(jù)所對應(yīng)的時刻存在一個較小的時間差,但是這種采集卡成本較低。因此,選擇何種USB數(shù)據(jù)采集卡取決于系統(tǒng)對數(shù)據(jù)采集精度的需要。
對USB數(shù)據(jù)采集卡的選擇還需要考慮采樣通道數(shù)和采樣精度指標(biāo)。這些需要根據(jù)實際采集數(shù)據(jù)的需要進行選擇。
Labview系統(tǒng)軟件功能包括:數(shù)據(jù)采集、數(shù)據(jù)顯示、數(shù)據(jù)存儲、數(shù)據(jù)分析和在線幫助功能,它可以很好地將分析和數(shù)據(jù)采集結(jié)合起來。
在Labview中調(diào)用DLL與USB設(shè)備的通信安裝驅(qū)動后,USB數(shù)據(jù)采集卡與主機實現(xiàn)連接,但Labview軟件不直接支持非NI公司的數(shù)據(jù)采集設(shè)備,因此本系統(tǒng)采用調(diào)用動態(tài)鏈接庫來實現(xiàn)Labview與采集設(shè)備的連通。
Labview可以通過調(diào)用庫函數(shù)節(jié)點實現(xiàn)對動態(tài)鏈接庫中函數(shù)的調(diào)用。在程序框中的互連接口,選擇調(diào)用庫函數(shù)節(jié)點(Call LibraryFunction Node),雙擊左鍵出現(xiàn)調(diào)用庫函數(shù)對話框。根據(jù)Labview與DLL的參數(shù)對應(yīng)關(guān)系填寫好DLL文件的路徑、被調(diào)用函數(shù)名、參數(shù)的類型及返回類型。
需要注意的是,當(dāng)調(diào)用多個函數(shù)時要分別填寫參數(shù)的個數(shù)和對應(yīng)的類型,而且在調(diào)用過程中應(yīng)保持?jǐn)?shù)據(jù)位的一致。填好單擊OK按鈕后,Labview將自動生成各參數(shù)的入口及出口狀態(tài),這樣就實現(xiàn)了Labview與DLL的調(diào)用。
在實現(xiàn)采集前,需要調(diào)用一些庫函數(shù)對系統(tǒng)進行一些設(shè)置,通過調(diào)用函數(shù)可以得到設(shè)備的描述和USB接口的運行狀態(tài)以及實現(xiàn)對USB接口的讀寫操作。具體的函數(shù)設(shè)置可以參照數(shù)據(jù)采集卡動態(tài)鏈接庫的參考文檔。
根據(jù)設(shè)計需求,依次調(diào)用所需的函數(shù)實現(xiàn)對采集系統(tǒng)的設(shè)置。此外,根據(jù)設(shè)計的采樣速率,需要在上位機建立一個緩存。數(shù)據(jù)采集系統(tǒng)要實現(xiàn)多通道數(shù)據(jù)采集,因此采用數(shù)組的讀寫方式,如圖3。
各通道數(shù)據(jù)存儲后需要編寫數(shù)據(jù)轉(zhuǎn)換程序,將采樣值轉(zhuǎn)換成具有物理意義的數(shù)據(jù),如圖4。
魚雷發(fā)射試驗數(shù)據(jù)采集系統(tǒng)主要采集發(fā)射管中壓力數(shù)據(jù)和假雷的運動數(shù)據(jù),在上位機中基于Labview軟件環(huán)境結(jié)合魚雷發(fā)射試驗的具體要求編寫了數(shù)據(jù)采集程序。
圖3 多通道數(shù)據(jù)的存儲
圖4 USB2382采集卡的數(shù)據(jù)轉(zhuǎn)換程序
測試系統(tǒng)主要由壓力傳感器、測速儀、單片機控制電路,數(shù)據(jù)采集卡及采集軟件等組成。進行數(shù)據(jù)采集時,發(fā)射氣瓶充滿氣體,發(fā)射水艙充滿水且與發(fā)射管連通,各測試組件準(zhǔn)備好后即可試驗。
試驗時單片機發(fā)出開啟指令,發(fā)射閥開始工作,發(fā)動機運轉(zhuǎn)帶動混流泵轉(zhuǎn)動,泵把水壓到發(fā)射管中推動假雷運動。同時各種測量儀器工作,并將相應(yīng)的測量參數(shù)經(jīng)數(shù)據(jù)采集卡傳到計算機進行存儲和處理。在一次測試的試驗中,對四個通道信號進行數(shù)據(jù)采集,其結(jié)果如圖5所示。
圖5 魚雷發(fā)射試驗數(shù)據(jù)采集界面
從圖中可以清楚地觀察到各個參數(shù)的變化,測試數(shù)據(jù)保存在二進制文件中,數(shù)據(jù)還可以生成Excel報表文件以便用戶參考分析。四通道多參數(shù)測試軟件通過了系統(tǒng)的聯(lián)合調(diào)試,成功地實現(xiàn)了數(shù)據(jù)的接收、顯示、處理、存儲、回放等功能。
本文設(shè)計的數(shù)據(jù)采集系統(tǒng)能夠滿足魚雷發(fā)射試驗數(shù)據(jù)采集的需要,解決了科研中的實際問題。對于其它類似系統(tǒng)的設(shè)計有一定的參照價值。
[1]楊繼志,郭敬.基于Labview的閥門試驗數(shù)據(jù)采集系統(tǒng)[J].機電產(chǎn)品開發(fā)與創(chuàng)新,2011,24(5):77-79.
[2]楊磊,馬鐵華,崔敏,等.基于LabVIEW的四通道多參數(shù)測試系統(tǒng)軟件設(shè)計[J].軟件技術(shù),2011(6):64-67.
[3]謝寬,梁述海,譚智海.基于LabVIEW的柴油機狀態(tài)監(jiān)測數(shù)據(jù)庫系統(tǒng)[J].艦船電子工程,2009(11):147-149.
[4]劉愛軍,尹明,韋春玲.基于LabVIEW的超聲波檢測儀設(shè)計[J].艦船電子工程,2009(12):199-201.
[5]董翰川,郭勇,李文杰.LabVIEW串口通信在數(shù)據(jù)采集中的應(yīng)用[J].網(wǎng)絡(luò)與通信,2011(33):65-68.
[6]胡寶權(quán),趙榮珍,馬再超.基于LabVIEW的數(shù)據(jù)采集與反饋控制通訊系統(tǒng)[J].儀表技術(shù)與傳感器,2011(12):31-34.
[7]吳愛平,陽俊,張星.基于LabVIEW的油水界面檢測系統(tǒng)[J].儀表技術(shù)與傳感器,2011(12):46-48.
[8]廖傳書,黃道斌,孫旦,等.Labview與USB的直接數(shù)據(jù)通信[J].儀器與儀表,2007(20):3-5.
[9]吳仁濤,姜云海,左建勇.基于Labview平臺的USB視頻采集方法與應(yīng)用[J].工業(yè)儀表與自動化裝置,2011(3):80-83.
[10]陳國亮,張素君.利用動態(tài)鏈接庫(DLL)實現(xiàn)LabView與USB設(shè)備的數(shù)據(jù)通信[J].福建電腦,2005(7):149-151.
[11]孔鵬,方源達,柯富茗,等.基于LabVIEW的無線分布式數(shù)據(jù)采集系統(tǒng)[J].計算機與數(shù)字工程,2009,37(11).
[12]解輝,徐玉斌,李建偉,等.基于sqlite的嵌入式數(shù)據(jù)采集系統(tǒng)的研究與設(shè)計[J].計算機與數(shù)字工程,2008,36(6).
[13]吳桂生,沈括,左雷.高速數(shù)據(jù)采集系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機與數(shù)字工程,2011,39(12).
[14]初華,李長兵.Labview基于 USB2.0的數(shù)據(jù)采集及處理[J].儀表技術(shù),2010(5):22-25.