文/楊磊 劉美枝
虛擬儀器主要通過軟件設(shè)計(jì)方法完成各種測(cè)量、測(cè)試系統(tǒng)的自動(dòng)化應(yīng)用。虛擬儀器的設(shè)計(jì)軟件以計(jì)算機(jī)的硬件及操作系統(tǒng)為依托實(shí)現(xiàn)各種儀器具備的功能。LabView是使用較為廣泛的美國(guó)NI公司開發(fā)的一種虛擬儀器設(shè)計(jì)軟件,內(nèi)部集成的圖形化開發(fā)環(huán)境,采用圖形編程語言構(gòu)建程序框圖。本文采用傳感器連接USB-6361數(shù)據(jù)采集卡,利用LabView設(shè)計(jì)數(shù)據(jù)采集存儲(chǔ)程序框圖,將高速數(shù)據(jù)以存儲(chǔ)到計(jì)算機(jī)硬盤上,再利用MATLAB進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換, FPGA采用模塊化設(shè)計(jì)方法調(diào)用ROM中存儲(chǔ)的數(shù)據(jù)進(jìn)行時(shí)序仿真分析處理。整個(gè)系統(tǒng)采用虛擬儀器完成高頻高精度數(shù)據(jù)采集,利用FPGA實(shí)現(xiàn)信號(hào)精確處理,有效縮短開發(fā)周期、驗(yàn)證算法精度。
系統(tǒng)通過USB-6361數(shù)據(jù)采集卡連接傳感器進(jìn)行數(shù)據(jù)采集,利用虛擬儀器LabView設(shè)計(jì)合適不同采樣率和不同采樣精度的程序框圖將數(shù)據(jù)以TDMS格式存儲(chǔ)到計(jì)算機(jī)的硬盤中。利用MATLAB編寫M文件把TDMS格式數(shù)據(jù)轉(zhuǎn)換成MIF格式, 通過FPGA開發(fā)軟件Quartus II自帶的ROM IP核設(shè)計(jì)信號(hào)存儲(chǔ)模塊,將MIF格式數(shù)據(jù)存儲(chǔ)到ROM中,供FPGA其他模塊調(diào)用進(jìn)行信號(hào)時(shí)序仿真和算法驗(yàn)證。
LabView是一種集成圖形化模塊的虛擬儀器開發(fā)軟件。在LabVIEW中通過工具模版、控件框圖和函數(shù)模版設(shè)計(jì)各功能模塊及配置參數(shù),控制模版中添加相應(yīng)的輸入控制對(duì)象和輸出顯示對(duì)象,函數(shù)模版中創(chuàng)建程序框圖的對(duì)象集合,框圖窗口中完成調(diào)用。LabView設(shè)計(jì)的數(shù)據(jù)采集存儲(chǔ)器的程序框圖如圖1所示。
圖1中數(shù)據(jù)采集存儲(chǔ)的LabView程序框圖結(jié)構(gòu)主要包括四個(gè)部分。Channel settings為通道和傳感器輸出信號(hào)電壓范圍設(shè)置單元,滿足不同幅值范圍多通道數(shù)據(jù)采集;timing settings為采樣時(shí)鐘單元,根據(jù)傳感器帶寬設(shè)置合適的采樣頻率;logging settings為數(shù)據(jù)存儲(chǔ)單元,通過TDMS File Path輸出對(duì)象將實(shí)時(shí)采集的數(shù)據(jù)以TMDS文件格式存儲(chǔ)到計(jì)算機(jī)的硬盤中;Acquire Data為實(shí)時(shí)數(shù)據(jù)顯示單元,傳感器和數(shù)據(jù)采集硬件電路采集的信號(hào)實(shí)時(shí)動(dòng)態(tài)顯示。
NI 公司的USB-6361數(shù)據(jù)采集卡含有高性能的多功能DAQ模塊,ADC的分辨率為16位,具有單端輸入和差分輸入兩種方式,PLL輸出時(shí)鐘基準(zhǔn)為100Mhz,定時(shí)分辨率為10ns,能保持很高的采樣率和采樣精度。USB接口即插即用配合LabView軟件程序?yàn)楝F(xiàn)場(chǎng)數(shù)據(jù)采集提供極大的方便。LabView數(shù)據(jù)采集存儲(chǔ)顯示界面如圖2所示。
圖2中,界面左側(cè)依次設(shè)置通道,采樣信號(hào)電壓輸出范圍-10V~10V,采樣率為2.00MS/s,最后設(shè)置數(shù)據(jù)存儲(chǔ)路徑為計(jì)算機(jī)硬盤。界面右側(cè)為采樣信號(hào)動(dòng)態(tài)顯示窗口,可以實(shí)時(shí)觀察采樣信號(hào)動(dòng)態(tài)變化,當(dāng)顯示窗口出現(xiàn)信號(hào)突變時(shí)也可按下Stop按鈕暫停,單獨(dú)保存某段需要分析的信號(hào),極大的方便了信號(hào)處理分析。
Quartus II軟件的megawizard plug-in manager中自帶參數(shù)可調(diào)的宏功能模塊,選擇與系統(tǒng)時(shí)鐘同步的ROM模塊,時(shí)鐘信號(hào)為clock,數(shù)據(jù)精度為16位,由于FPGA自帶的邏輯單元LE有限,所以設(shè)置ROM存放數(shù)據(jù)深度為4096個(gè),將LabView采集到的信號(hào)截取部分存放到ROM單元,進(jìn)而在FPGA中進(jìn)行讀取仿真,ROM模塊設(shè)置.
圖1:數(shù)據(jù)采集存儲(chǔ)LabView程序框圖
FPGA系統(tǒng)開發(fā)用的Verilog HDL硬件描述語言直接針對(duì)底層硬件,系統(tǒng)響應(yīng)速度快,高達(dá)百兆級(jí)的系統(tǒng)時(shí)鐘適合高速信號(hào)實(shí)時(shí)處理。設(shè)計(jì)數(shù)據(jù)采樣控制模塊和信號(hào)濾波處理模塊,讀取ROM中的原始數(shù)據(jù),經(jīng)濾波后進(jìn)行分析處理。對(duì)系統(tǒng)進(jìn)行時(shí)序仿真時(shí)利用Modelsim波形仿真軟件,依托計(jì)算機(jī)強(qiáng)大的內(nèi)存單元,可根據(jù)需求實(shí)時(shí)監(jiān)測(cè)系統(tǒng)中各信號(hào)的運(yùn)行情況,分析各時(shí)刻點(diǎn)信號(hào)的參數(shù)值。
本文結(jié)合LabView和NI USB-6361數(shù)據(jù)采集存儲(chǔ)優(yōu)勢(shì),可移植性強(qiáng),縮短測(cè)控系統(tǒng)開發(fā)周期,滿足信號(hào)不同頻率和精度的采樣要求。信號(hào)處理利用FPGA的高速實(shí)時(shí)特性,對(duì)LabView采集的信號(hào)進(jìn)行算法分析驗(yàn)證,可推廣到各種控制系統(tǒng)半實(shí)物仿真。