李 斌 尚 超
(91388部隊(duì)94分隊(duì) 湛江 524022)
在水聲學(xué)實(shí)驗(yàn)中,獲得水聲信號(hào)源的常用方法是利用信號(hào)發(fā)生器產(chǎn)生電信號(hào),通過(guò)功放將信號(hào)放大后送到發(fā)射換能器以發(fā)射水聲信號(hào)。傳統(tǒng)的信號(hào)發(fā)生器一般只能產(chǎn)生幾種常規(guī)的波形,不能生成我們實(shí)驗(yàn)所需的復(fù)雜和特殊的信號(hào),即便一些高檔儀器能夠?qū)崿F(xiàn),其價(jià)格也極其昂貴,功能單一,不具備用戶對(duì)儀器定義及編程的功能。一個(gè)傳統(tǒng)的實(shí)驗(yàn)室不可能同時(shí)擁有各類(lèi)信號(hào)發(fā)生器,然而,虛擬儀器技術(shù)的發(fā)展為解決這一問(wèn)題提供了可能。
虛擬儀器[1]是應(yīng)用于通用計(jì)算機(jī)上的一種軟件與硬件的組合,以通用計(jì)算機(jī)和配備標(biāo)準(zhǔn)數(shù)字接口的測(cè)量?jī)x器(GPIB,RS-232VXI等)為基礎(chǔ),直接利用計(jì)算機(jī)豐富的硬件(微處理器,存儲(chǔ)器,顯示器等)和軟件(軟面板,圖形界面數(shù)據(jù)處理,信息交換等)資源,將計(jì)算機(jī)和測(cè)量組件等硬件資源與計(jì)算機(jī)軟件資源有機(jī)地結(jié)合起來(lái),把傳統(tǒng)儀器的專(zhuān)業(yè)化功能軟件化,使之與計(jì)算機(jī)融為一體,構(gòu)成一臺(tái)從外觀到功能都完全與傳統(tǒng)硬件儀器相同,同時(shí)又充分享用計(jì)算機(jī)智能資源的全新的儀器系統(tǒng)。本文結(jié)合實(shí)驗(yàn)的需要,利用 NI PCI-4461采集卡等硬件,使用 LabVIEW2010[2]虛擬儀器開(kāi)發(fā)環(huán)境設(shè)計(jì)開(kāi)發(fā)了一種水聲信號(hào)發(fā)生器,該信號(hào)發(fā)生器能夠?yàn)樗晫W(xué)實(shí)驗(yàn)提供所需的各種信號(hào)源,并可以實(shí)現(xiàn)任意波形的編輯、輸出顯示、波形分析及數(shù)據(jù)存儲(chǔ)。
虛擬水聲信號(hào)發(fā)生器的功能設(shè)計(jì)參考了常見(jiàn)信號(hào)發(fā)生器的功能,并結(jié)合虛擬儀器基于計(jì)算機(jī)的特點(diǎn),在功能上有所擴(kuò)展,實(shí)現(xiàn)的主要功能如下:
1)可產(chǎn)生10Hz~40KHz的正弦波、方波、三角波、鋸齒波、白噪聲以及任意波形;
2)任意波形的發(fā)生,任意波可實(shí)現(xiàn)公式輸入;
3)信號(hào)頻率、幅度、相位、偏移量可調(diào)可控;
4)方波占空比可調(diào);
5)噪聲任意可加、創(chuàng)建友好界面、信號(hào)波形顯示;
6)采樣頻率和采樣點(diǎn)數(shù)可以隨信號(hào)頻率在檔位變化時(shí)調(diào)節(jié)。
水聲信號(hào)信號(hào)發(fā)生器的硬件主要由PC機(jī)、D/A數(shù)據(jù)轉(zhuǎn)換卡及換能器組成。整個(gè)程序的軟件就是在PC機(jī)上操作,通過(guò)修改軟件的參數(shù),就可以輕松實(shí)現(xiàn)對(duì)信號(hào)發(fā)生器功能的改變,D/A數(shù)據(jù)轉(zhuǎn)換卡將LabVIEW程序生成的信號(hào)數(shù)據(jù)通過(guò)BNC口傳送給換能器。換能器將信號(hào)發(fā)生器生成的電信號(hào)轉(zhuǎn)換成水聲信號(hào)發(fā)射出去,滿足我們實(shí)驗(yàn)的需要。
D/A數(shù)據(jù)轉(zhuǎn)換卡是整個(gè)水聲信號(hào)發(fā)生器的核心,轉(zhuǎn)換卡的D/A轉(zhuǎn)換器的分辨率:24位;最高采樣率:204kS/s;兩路24位模擬輸入和輸出;具有同步觸發(fā)功能;模擬輸入范圍:±10V。
圖1 虛擬水聲信號(hào)發(fā)生器硬件構(gòu)成
軟件設(shè)計(jì)是虛擬函數(shù)信號(hào)發(fā)生器設(shè)計(jì)的核心。Lab-VIEW程序由兩部分組成:前面板程序和框圖程序。整個(gè)程序基于多線程設(shè)計(jì),即前面板和系統(tǒng)程序各占用一個(gè)線程。虛擬水聲信號(hào)發(fā)生器的前面板如圖2所示。前面板是用戶接口,即交互式界面,用戶可以通過(guò)修改前面板參數(shù),就可實(shí)現(xiàn)對(duì)程序的改變。在前面板中,使用了各種仿真圖標(biāo),如開(kāi)關(guān)、旋鈕等,并以數(shù)字或?qū)崟r(shí)趨勢(shì)圖等各種形式輸出測(cè)試結(jié)果,來(lái)模擬真實(shí)儀器的面板。在前面板中通過(guò)鼠標(biāo)和鍵盤(pán)修改參數(shù),就可以改變儀器的功能,同時(shí),前面板上可以顯示出信號(hào)發(fā)生器生成的信號(hào)波形,便于我們觀察和監(jiān)測(cè)。
圖2 虛擬水聲信號(hào)發(fā)生器的前面板
程序的編寫(xiě)是水聲信號(hào)發(fā)生器設(shè)計(jì)的重點(diǎn)和難點(diǎn),本系統(tǒng)利用LabVIEW圖形化編程語(yǔ)言進(jìn)行程序編寫(xiě),程序設(shè)計(jì)主要包括三大部分:
4.2.1 信號(hào)生成和顯示
信號(hào)生成和顯示部分是整個(gè)軟件的核心部分,在應(yīng)用程序中產(chǎn)生各種信號(hào),并可以在前面板中顯示出來(lái),信號(hào)的生成模塊主要包括以下三個(gè)模塊:
1)基本函數(shù)波形產(chǎn)生模塊
該模塊是試驗(yàn)中最常運(yùn)用的模塊,是應(yīng)用波形產(chǎn)生子模板中的基本函數(shù)發(fā)生器(VI)節(jié)點(diǎn)來(lái)產(chǎn)生正弦波、三角波、方波、鋸齒波等四種常規(guī)信號(hào)。
圖3 基本函數(shù)波形產(chǎn)生模塊程序框圖
2)任意函數(shù)波形產(chǎn)生模塊
該模塊后面板框圖程序如圖4所示。為了能夠產(chǎn)生一些非周期信號(hào)或其它測(cè)試領(lǐng)域的特殊信號(hào)在本設(shè)計(jì)中應(yīng)用波形產(chǎn)生子模板中的公式波形VI節(jié)點(diǎn)來(lái)產(chǎn)生任意波形。該節(jié)點(diǎn)可使用指定時(shí)間函數(shù)的公式字符串生成一個(gè)函數(shù)波形。在formula端子輸入公式,用于生成輸出多頻波形信號(hào)的表達(dá)式,表達(dá)式中包含的參數(shù)有:f(輸入頻率)、a(輸入幅度)、n(采樣點(diǎn)數(shù))、t(時(shí)間)和fs(采樣頻率)。
圖4 任意函數(shù)波形產(chǎn)生模塊程序框圖
3)噪聲信號(hào)產(chǎn)生模塊
該模塊可以根據(jù)需要對(duì)產(chǎn)生的波形信號(hào)進(jìn)行疊加噪聲。通過(guò)選擇噪聲的標(biāo)準(zhǔn)差和種子數(shù),可以疊加不同的高斯白噪聲。本設(shè)計(jì)中噪聲信號(hào)發(fā)生器的實(shí)現(xiàn)主要是應(yīng)用波形產(chǎn)生子模板中的Tones and Noise Wave form.VI節(jié)點(diǎn)來(lái)產(chǎn)生疊加在正弦波上的高斯白噪聲信號(hào)。
圖5 噪聲信號(hào)產(chǎn)生模塊程序框圖
4.2.2 采集卡數(shù)據(jù)采集生成信號(hào)部分
LabVIEW軟件生成的信號(hào)并不能直接通過(guò)換能器發(fā)送出去,必須通過(guò)與LabVIEW程序相匹配的NI公司的D/A數(shù)據(jù)轉(zhuǎn)換卡才能將軟件生成的數(shù)據(jù)轉(zhuǎn)換成電信號(hào),進(jìn)而通過(guò)采集卡的BNC接口將信號(hào)送給換能器。
圖6 數(shù)據(jù)采集生成部分程序框圖
4.2.3 數(shù)據(jù)存儲(chǔ)和處理部分
數(shù)據(jù)存儲(chǔ)是整個(gè)程序設(shè)計(jì)的一個(gè)重要部分,用于事后對(duì)信號(hào)做進(jìn)一步的分析和處理,便于對(duì)整個(gè)實(shí)驗(yàn)總結(jié),對(duì)分析數(shù)據(jù)起著非常重要的作用。
數(shù)據(jù)處理部分的作用,就是將才產(chǎn)生出的信號(hào)通過(guò)不同形式的檢波、計(jì)算,得出規(guī)定的不同結(jié)果。在本設(shè)計(jì)中需要顯示信號(hào)的頻率、峰值和平均值。
圖7 數(shù)據(jù)存儲(chǔ)模塊
為了驗(yàn)證虛擬水聲信號(hào)發(fā)生器的可靠性,實(shí)驗(yàn)室利用虛擬水聲信號(hào)發(fā)生器發(fā)出30KHz的調(diào)制信號(hào),周期是1s,脈寬10ms。水聲信號(hào)經(jīng)發(fā)射換能器從水中發(fā)射出去,利用監(jiān)測(cè)水聽(tīng)器接收換能器發(fā)射的水聲信號(hào),以此來(lái)驗(yàn)證虛擬水聲信號(hào)發(fā)生器產(chǎn)生的信號(hào)的有效性。圖8為監(jiān)測(cè)水聽(tīng)器采集的部分信號(hào)。此系統(tǒng)已經(jīng)過(guò)多次實(shí)驗(yàn)的考驗(yàn),在不同的實(shí)驗(yàn)中很好地完成了不同類(lèi)型,不同功率的信號(hào)產(chǎn)生任務(wù)。在這些實(shí)際使用中已經(jīng)證明,此基于虛擬儀器技術(shù)的水聲信號(hào)發(fā)生器功能強(qiáng)大,性能穩(wěn)定,用途多樣,操作使用簡(jiǎn)單,可以在大量的水聲學(xué)實(shí)驗(yàn)中,作為通用的水聲信號(hào)發(fā)射平臺(tái)使用。
圖8 監(jiān)測(cè)水聽(tīng)器采集的部分信號(hào)
本文介紹了如何利用虛擬儀器技術(shù)開(kāi)發(fā)水聲信號(hào)發(fā)生器,并對(duì)信號(hào)發(fā)生器的每個(gè)模塊進(jìn)行了詳細(xì)的論述。該水聲信號(hào)發(fā)生器具有產(chǎn)生信號(hào)精度高、功能強(qiáng)、使用方便、設(shè)備費(fèi)用低、用戶自定義功能及操作方便靈活等優(yōu)點(diǎn),而且由于虛擬儀器的功能是由軟件來(lái)完成的,軟件即儀器,儀器功能的修改和升級(jí)很方便。實(shí)踐證明,采用LabVIEW開(kāi)發(fā)平臺(tái)開(kāi)發(fā)各種用途的虛擬儀器是儀器領(lǐng)域的一個(gè)重要發(fā)展方向,隨著計(jì)算機(jī)技術(shù)和測(cè)控技術(shù)的高速發(fā)展,虛擬儀器將逐步取代傳統(tǒng)儀器,而且虛擬儀器必將在更多的領(lǐng)域發(fā)揮其重要作用。
[1]張桐,陳國(guó)順,王正林.精通LabVIEW 程序設(shè)計(jì)[M].北京:電子工業(yè)出版社,2008.
[2]林正盛.虛擬儀器技術(shù)及其應(yīng)用[J].電子技術(shù)應(yīng)用,1997(3).
[3]王俊峰.基于LabVIEW的信號(hào)處理虛擬實(shí)驗(yàn)系統(tǒng)[J].國(guó)外電子測(cè)量技術(shù),2006(10).
[4]蔡國(guó)英,張宏群.基于LabVIEW的信號(hào)產(chǎn)生與分析系統(tǒng)[J].國(guó)外電子測(cè)量技術(shù),2007,26(7):12-14.
[5]連海洲,趙英俊.基于LabVIEW技術(shù)的虛擬儀器系統(tǒng)[J].儀器與測(cè)控,2001(8):21-23.
[6]佟春明,王天利.基于LabVIEW的信號(hào)處理系統(tǒng)開(kāi)發(fā)[J].遼寧工學(xué)院學(xué)報(bào),2003,23(6):17-20.
[7]張旭,張春梅,王尚錦.虛擬儀器軟件LabVIEW和數(shù)據(jù)采集[J].微機(jī)發(fā)展,2004(3):77-79.
[8]劉麗桑.基于LabVIEW的虛擬信號(hào)處理系統(tǒng)[J].工業(yè)控制計(jì)算機(jī),2007(9):53-54.
[9]封金鑫,丁士圻.水下運(yùn)動(dòng)目標(biāo)長(zhǎng)基陣定位解算研究[J].聲學(xué)學(xué)報(bào),1996(5).
[10]李曉峰,張紅民,梅康平.基于LabVIEW的多通道多參數(shù)虛擬儀器設(shè)計(jì)[J].計(jì)算機(jī)與數(shù)字工程,2008,36(3).
[11]趙政春,鄧曙光,譚躍.基于LABVIEW的數(shù)據(jù)采集與分析系統(tǒng)[J].計(jì)算機(jī)與數(shù)字工程,2010,38(5).
[12]朱春峰,張立民,張兵強(qiáng).基于仿真信號(hào)的虛擬示波器的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)與數(shù)字工程,2008,36(12).
[13]于平.兩種水聲導(dǎo)航定位算法的應(yīng)用與分析[J].靶場(chǎng)試驗(yàn)與測(cè)量,2004(1):21-23.