王 挺,盛 文,蔣 偉,程 楊
(空軍預警學院 防空預警裝備系,武漢 430019)
近些年來,軍用武器裝備和民用大型設備發(fā)展迅速,傳統(tǒng)測量儀器大多存在體積較大、功能單一、難以擴展、技術更新慢等缺點,無法滿足當前電子設備的測試需求。以“軟件即儀器”為核心理念的虛擬儀器技術VI[1],利用具有強大信息處理能力和軟件兼容性能的通用計算機和外部數據采集模塊,可以較好地彌補傳統(tǒng)儀器多種缺點,該技術已成為當今儀器領域發(fā)展的重要方向[2]。
數字信號分析儀作為測試領域非常實用的虛擬測試儀器,已有多人對該儀器進行了設計和實現。文獻[3]以USB總線的F24U數據采集卡作為數據采集設備,利用LabWindows/CVI實現了1臺虛擬信號分析儀;文獻[4]采用PCI-6251數據采集卡作為數據采集設備,基于LabVIEW完成了虛擬信號頻譜分析儀的設計;文獻[5]以STM32和附加電路作為數據采集設備,基于LabWindows/CVI實現虛擬信號分析儀的設計。在此,基于LabWindows/CVI軟件開發(fā)平臺,采用測試測量領域具有最主流的模塊化儀器標準的PXI總線技術,利用NI PXI-5122高速數字化儀設計、實現了1臺虛擬數字信號分析儀。該分析儀可單獨作為平時實驗測量儀器,也可應用于電子設備的性能測試,還可擴展為自動測試系統(tǒng)的一個測試模塊,充分體現其廣泛的適用性和可擴展性。
信號分析儀硬件模塊采集設備的性能指標[6]主要包括通道數、采樣率、采樣精度和帶寬。當前普通實驗室示波器大多為雙通道,采樣率多為20 M/s和50 M/s,采樣精度在30 mV左右,帶寬大多在50 MHz左右。
結合普通實驗室示波器性能特點,選用了NI公司的PXI 5122[7]數字化儀作為虛擬數字信號分析儀的信號采集模塊。該數字化儀具有雙通道采集能力,100 M/s單通道最高采樣率和最高200 M/s的交叉采樣采樣率,在最大輸入電壓為20 V的情況下,14 b高精度分辨率可將采樣精度提升至2 mV,并具有帶有去噪和抗混疊濾波器的100 MHz帶寬。這些性能指標均可以滿足實驗室的要求。
目前,可用于虛擬儀器開發(fā)的軟件平臺種類較多,概括起來分為以下2類[8]:①通用型軟件編程開發(fā)環(huán)境, 包括 C/C++,Visual Basic,VC++,Visual Studio.net,Delphi,等;②專用型軟件編程開發(fā)環(huán)境,主要有NI公司基于圖形化語言的開發(fā)環(huán)境Lab-VIEW和基于C語言的文本開發(fā)環(huán)境LabWindows/CVI等。在此,采用在測試、測量領域久經驗證的LabWindows/CVI作為虛擬數字信號分析儀的軟件開發(fā)平臺。
LabWindows/CVI是符合標準C規(guī)范的交互式軟件開發(fā)系統(tǒng)。它不但能夠把數據采集分析和測控領域中的專業(yè)工具有機地結合起來,還提供了大量與測試有關的、用于界面控制的控件,并且將儀器控制、數據采集、網絡通訊、用戶界面設計、數據處理與分析等功能做成函數庫,嵌入到軟件系統(tǒng)中。開發(fā)人員可直接利用該軟件系統(tǒng)特有的與測試儀器界面控制的控件、集成化的開發(fā)環(huán)境和完善的函數庫,高效地實現測控領域各種應用軟件的研發(fā)。
所設計的基于LabWindows/CVI虛擬數字信號分析儀,實現被測信號采集、時域分析、加窗濾波、頻譜分析、參數測量和波形顯示等功能。整個軟件系統(tǒng)由主控面板、信號采集模塊、信號分析與參數測量模塊和波形顯示模塊組成,其總體設計如圖1所示。
圖1 軟件系統(tǒng)總體設計Fig.1 General design of software system
主控面板完成整個虛擬數字信號分析儀的控制、測量參數的設置、波形顯示和人機交互。信號采集模塊將被測模擬信號經A/D變換后轉換成數字信號;信號分析與參數測量模塊利用LabWindows/CVI強大的函數庫實現被測信號的時域分析、加窗濾波、頻域分析和時頻域波形的參數測量;波形顯示模塊將時域波形和頻域波形進行同界面顯示,且為了方便用戶觀察波形,可以根據需求對波形的時間刻度和幅值進行調節(jié)。
主控面板利用LabWindows/CVI特有的儀器專用面板、按鈕、旋鈕、輸入框等控件完成界面的搭建。所實現的主控面板由顯示區(qū)域和控制區(qū)域組成。顯示區(qū)域包括時頻波形顯示窗口、參數測量結果顯示窗口和錯誤信息顯示窗口;控制區(qū)域包括信號采集、加窗濾波、頻譜分析、參數測量和波形調整等參數選擇控件。
信號采集由PXI-5122數字化儀實現,LabWin dows/CVI需要借助驅動程序NI-SCOPE[9]實現對PXI-5122的控制。該驅動程序包含實現PXI-5122初始化、參數配置、數據采集和關閉等基本功能的函數。在使用過程中,通過主控面板直接調用這些相關函數,對PXI-5122進行初始化,設置各種屬性實現對被測信號的采集。主要使用的部分函數如下:
handleErr(niScope_init(resourceName,NISCOPE_VAL_FALSE,NISCOPE_VAL_FALSE,&vi));//打開 NI-SCOPE 儀器句柄
handleErr(niScope_InitiateAcquisition(vi));//采集初始化
handleErr(niScope_ConfigureChanCharacteristics(vi,channelName,inputImpedance,maxInputFrequency));//配置通道參數
handleErr(niScope_ConfigureTriggerEdge(vi,triggerSource,trigger-Level,triggerSlope,triggerCoupling,triggerHoldoff,triggerDelay));//配置觸發(fā)類型
該虛擬信號分析儀通過調用LabWindows/CVI中信號分析庫和高級信號分析庫中的相關函數,實現了 Flat top,Hanning,Hamming,Triangle,Blackman等 5 種窗函數和 Bessel,Butterworth,Chebishev,FIR等4種濾波器對被測信號進行預處理;利用FFT變換實現信號的幅度譜分析;調用參數測量函數實現了對處理后信號的周期、頻率、幅度、占空比、上升/下降沿時間、峰值功率等參數的測量,所使用的部分函數見表1。
表1 配置函數Tab.1 Configuration function
將時域波形和頻域波形分為2個顯示窗口,同時顯示在主控面板上,并利用了采樣率=存儲深度×采樣時間,實現時域波形時間刻度自由調整的功能,從而便于使用人員對被測信號時、頻域信息的全面了解,還可提高測試精度和效率。
波形顯示主要依靠調用函數庫中的PlotWaveform函數將被測信號繪制到Graph控件中。由于不同測量信號對波形顯示要求不同,因此設計實現了2種顯示模式:①根據niScope_AutoSetup(vi)函數自行自動配置橫縱坐標刻度顯示時、頻域波形;②用戶根據需求可自行手動旋轉旋鈕控件,將波形調整到自己需要的狀態(tài)。其主要程序如下:
PlotWaveform (panelHandle,PANEL_acquisitionGraph,waveformPtr,wfmInfoPtr[i].actualSamples,VAL_DOUBLE,1.0,0.0,wfmInfoPtr[i].relativeInitialX,wfmInfoPtr[i].xIncrement,VAL_THIN_LINE,VAL_NO_POINT,VAL_SOLID,1,graphColors[3])
所有的功能模塊實現后,利用信號發(fā)生器產生頻率為1 MHz,峰峰值為5 V的正弦波和方波,對虛擬數字信號分析儀進行性能檢測。分別將正弦波和方波通過“1”通道輸入虛擬數字信號分析儀,經過信號采集、分析處理,所得到的測量結果如圖2所示。
圖2 虛擬數字信號分析儀的測量結果Fig.2 Measurement results of virtual digital signal analyzer
由圖可見,正弦波、方波的時域波形和頻譜波形均穩(wěn)定清晰,顯示正確,波形參數的測量結果準確。經過測試,該虛擬數字信號分析儀具有友好的人機交互體驗,操作簡便快捷。
文中基于LabWindows/CVI軟件開發(fā)平臺,利用PXI-5122數字化儀完成了虛擬數字信號分析儀的設計,實現了信號采集、頻譜分析、波形參數測量、時頻域波形顯示等功能。該儀器體積小,攜帶便捷,既可作為日常實驗室的儀器使用,也可作為特定場合的性能測試儀器。如果用戶對信號分析儀的性能有更高的要求,只需更換性能更好的PXI數字化儀作為儀器采集設備,修改軟件系統(tǒng)的部分代碼,就可以實現性能更加強大的虛擬數字信號分析儀。
參考文獻:
[1]劉鳳,王靜.基于虛擬儀器的新型VXI總線接口的設計[J].計算機測量與控制,2013,21(3):803-805.
[2]路亞峰,陳義軍,溫新岐,等.虛擬儀器技術研究現狀與發(fā)展[J].國外電子測量技術,2010,29(11):35-37.
[3]馬青亮,周倫彬,李振娜.基于Labwindows/CVI的信號分析儀的設計[J].中國測試,2009,35(6):21-27.
[4]張靜.基于LabVIEW的虛擬信號頻譜分析儀設計[J].海南大學學報,2011,29(2):162-165.
[5]張揚,肖世德.Labwindows/CVI平臺下虛擬信號分析儀的設計[J].自動化儀表,2016,37(2):89-91.
[6]高軍芳.基于LabVIEW的虛擬示波器的設計與實現[D].西安:西安理工大學,2009:1-15.
[7]National Instruments Corporation.NI Hierar-chical Waveform Storage Help[M].2016.
[8]馬青亮.基于LabWindows/CVI的信號分析儀的研究[D].廣州:廣東工業(yè)大學,2008:21-27.
[9]National Instruments Corporation.NI-SCOPE Instrument Driver Quick Reference[M].2016:1-12.