吳 建 王 高 王明艷 李 瑞 王珺楠
(中北大學信息與通信工程學院 山西太原 030051)
隨著科學技術的發展,在測量領域中需要不斷更新測量設備,以滿足越來越高的測量要求。近年來,世界各國的虛擬儀器公司開發了不少虛擬儀器開發平臺軟件,以便使用者利用這些儀器公司提供的開發平臺軟件組建自己的虛擬儀器或測試系統,并編制測試軟件[1-3]。最早和最具影響的開發軟件,是NI公司的LabVIEW軟件和LabWindwos/CVI開發軟件。LabVIEW采用圖形化編程方案,是非常實用的開發軟件[4]。LabVIEW是一種用圖標代替文本語句創建應用程序的虛擬儀器編程語言, 其中數據采集是LabVIEW最具競爭力的核心技術之一, 它提供了大量的工具和函數用于數據的采集、分析、顯示和存儲, 以及豐富的虛擬儀器圖形控件, 用來方便地創建用戶界面[5-7]。用LabVIEW設計的虛擬儀器可以脫離LabVIEW開發環境,最終用戶看見的是和實際的硬件儀器相似的操作面板[8-9]。
本文采用基于虛擬儀器技術設計了一臺虛擬數字存儲示波器,此儀器結構簡單、功能豐富、價格低廉、能重復開發、具備用戶自定義的優勢,同時能顯示記錄和存儲多通道輸入的波形,并且可以對波形進行數據分析和處理,具有一定的現實意義與實際應用價值。
虛擬儀器由儀器硬件和功能模塊軟件兩部分組成。虛擬儀器軟件采用LabVIEW開發平臺,硬件主體為計算機和數據采集卡,虛擬示波器主要構成如圖1所示。

圖1 虛擬示波器結構圖
該示波器結構圖被測數據首先通過數據采集卡采集到計算機系統中,然后由DAQCard-010501傳輸到LabVIEW 的圖形化程序中,對采集過程的控制及數據的分析、處理、顯示等功能可由操作前面板(虛擬示波器工作界面)來實現。
計算機與數據采集卡組成了虛擬儀器的硬件平臺的基礎。數據采集系統的任務是采集原始信號,其主要指標有采樣精度、采樣速度數據采集卡是虛儀器的重要組成部件,其性能直接影響到整個示波器的采樣速率和精度。數據采集卡的選擇主要與采樣率、測量通道、分辨率和測量精度有關。這里數據采集使用的是DAQCard-010501數據采集卡,它主要由C8051F020和CY7C68013A組成,其中C8051F020為主控模塊,CY7C68013A為通信模塊。DAQCard-010501通過USB接口供電和傳輸數據,支持即插即用和熱插拔。提供可供用戶調用的設備驅動函數,函數封裝于DAQCard-B.dll中,可被VC、VB、LabVIEW等調用。
創建虛擬儀器的過程的過程分為三步:(1)設計虛擬儀器的前面板。(2)編寫虛擬儀器流程圖。(3)確定虛擬儀器的圖標和連接。采用模塊化的軟件設計思想編寫,每個功能的實現由一個模塊完成,系統軟件總體包括數據采集、參數測量、相位分析、數據存儲和回放等模塊,最終實現數據采集、處理、記錄、顯示等功能。系軟件組成如圖2所示:

圖2 軟件組成框圖
2.2.1 前面板設計
LabVIEW前面板用于設置輸入數值和觀察輸出量,用于模擬真實示波器的前面板。由于虛擬面板直接面向用戶,是虛擬示波器控制軟件的核心。根據傳統示波器的面板控件的功能,利用LabVIEW中的控件選板,分別在設計面板上放入模擬實際控件的顯示器、通道選擇控件、觸發源、觸發電平、時基控制等。
軟面板程序用來提供用戶與虛擬示波器的接口。當按下“開始采集”按鈕,然后運行程序就可以開始采集信號。用戶可以進行單通道和雙通道的任意切換;各種功能模塊的實現在面板上都對應著相應的按鈕,按下該按鈕就可以調出該模塊子程序。在子程序中按下返回鍵就回到主程序面板。設計的前面板如圖3所示:

圖3 虛擬示波器前面板
2.2.2 信號采集模塊
數據采集模塊是虛擬示波器軟件的核心,主要完成數據的采集。包括觸發控制、通道控制和時基控制等。通道控制主要控制單通道或者是雙通道測量。時基控制主要控制采集卡的掃描率及采樣數。圖4為模擬信號采集程序框圖。
2.2.3 參數測量模塊
參數測量模塊包括Vrms等12個電壓參數和頻率、周期等7個時間參數的測量并顯示其測量結果。主要測量的參數為:交流電壓AC、直流電壓DC、均方根電壓、采樣周期、上升時間、下降時間、平均電壓、最大壓差、最高電壓、最低電壓、峰值電壓等。它主要用到的節點有:交直流分量估計節點、均方根節點、平均值節點、脈沖參數節點。

圖4 模擬信號采集程序
參數測量的前面板如圖5(a)所示:

圖5 (a) 參數測量前面板
程序框圖如圖5(b)所示:

圖5 (b) 參數測量程序
2.2.4 數據存儲和讀取
LabVIEW有豐富的文件操作函數庫,可以方便進行文件的讀寫(I/O)操作。
數據存儲前面板、程序框圖分別如圖6(a)、6(b)所示:
數據存儲模塊主要用到的程序是Write To Spreadsheet File.Vi


圖6 (a)數據存儲前面板圖

圖6 (b)數據存儲程序

圖7 (a)數據讀取前面板

圖7 (b)數據讀取程序
數據讀取前面板、程序框圖分別如圖7(a)、7(b) 所示:
數據讀取主要用到的是程序Read From Spreadsheet File.Vi

在實際測試中,使用哪種采樣方法取決于信號的類型。對于周期性信號,實時和非實時采樣方法都可以使用,主要由被測信號的頻率來決定。而對于非周期性信號和瞬態信號,通常要使用實時采樣的方法。
虛擬示波器是由數據采集模塊、參數測量模塊、數據存儲和讀取模塊等組成,主要功能包括雙通道信號輸入、通道控制、觸發控制、時基控制、波形顯示、波形存儲和讀取等。采集到的波形直接在虛擬示波器的主面板上顯示。已經完成的虛擬示波器軟件,通過改變A、B通道信號來驗證虛擬示波器系統軟件的可行性。采用信號發生器的信號作為輸入信號,直接從計算機顯示器上觀察波形的改變情況。
當通道選擇處于 A狀態時,采樣頻率25kHz,分別輸入幅值為2V,頻率為250Hz,觸發電平為0的方波、三角波、正弦波,波形顯示如圖8所示
當波形顯示如圖8 (c)時,調節控制面板上的按鈕,改變波形形狀,如圖9所示
當選擇通道為A&B時,A通道輸入2V正弦波,B通道輸入1V三角波,觸發源為A通道,采樣率為25KHz,輸入的波形如圖10所示
當通道A頻率為250HZ時,波形如圖11所示:
當按下主面板上的電壓測量按鈕時候,則完成所選通道的參數測量,同時顯示。測量結果如圖12所示:
按下寫盤按鈕時,對顯示的波形以文本設計檔的格式存至D:wave.txt,當按下讀盤按鈕時,讀取存儲的波形,如圖13所示:

圖8 A通道波形

圖9 A通道參數改變
本文主要以LabVIEW軟件平臺作為軟件開發環境開發了虛

圖10 A&B通道波形

圖11 A通道波形

圖12 A通道測量結果

圖13 數據存儲和讀取
[1]王子瑞. 基于LabVIEW虛擬儀器的雙通道信號采集與分析系統設計 機電工程技術:2011,1~6.
[2]劉君華.基于LabVIEW的虛擬儀器設計[M]北京:電子工業出版社,2003.1
[3]路林吉,堯家明.虛擬儀器概述[J],電子技術,2000,(1):44~47.
[4]樸成日,崔漢國,高誠. 多功能虛擬儀器軟面板的設計與實現海軍工程大學學報,2000,(6):82~85.
[5]應懷遠. 虛擬儀器 (VI)與計算機采集測試分析儀(CATAI)的發展展望.
[6]季元. LABVIEW及虛擬儀器開發[M]中國互動出版社,2002,4.
[7]National Instruments.LabVIEW User Manul.2000.
[8]杜娟;邱曉輝;趙陽基于LabVIEW的數據采集與信號處理系統的設計[J]-南京師范大學學報2010(03):50-60
[9]于波,劉祥樓,韓建 基于LabvIEW的模擬調制實驗儀[J]微計算機信息,2007,23(5):185-186