測(cè)量?jī)x表設(shè)計(jì)關(guān)鍵之?dāng)?shù)據(jù)采集(一)
一、基于LabVIEW的通用數(shù)據(jù)采集卡的驅(qū)動(dòng)
本文引用地址:http://butianyuan.cn/article/193603.htm介紹一種通過LabVIEW提供的Call Library Function Node實(shí)現(xiàn)對(duì)動(dòng)態(tài)鏈接庫(DLL)調(diào)用的方法,完成對(duì)通用數(shù)據(jù)采集卡的驅(qū)動(dòng),實(shí)現(xiàn)LabVIEW與通用數(shù)據(jù)采集卡的結(jié)合。?
LabVIEW驅(qū)動(dòng)通用數(shù)據(jù)采集插卡的方法有三種。
其一,直接用LabVIEW的Function模板內(nèi)Advanced子模板的Port I/O圖標(biāo)編程,通過手動(dòng)對(duì)基地址的設(shè)置,直接從特定的地址內(nèi)存中讀取數(shù)據(jù)。若采樣速度要求不高,它是很方便直觀的方法;其二,利用LabVIEW的 Functions模板內(nèi)Advanced子模板中CIN(Code Interface Node)圖標(biāo),它適用于直接調(diào)用文字編程語言(如VC)所編寫的代碼。用CIN結(jié)點(diǎn)生成A/D驅(qū)動(dòng)程序的子VI的方法可充分發(fā)揮A/D的高轉(zhuǎn)換速度,獲 得高的采樣速率。但編程較煩雜,不能由LabVIEW直接修改;其三,用LabVIEW的Functions模板內(nèi)Advanced子模板中Call Library Function Node圖標(biāo),動(dòng)態(tài)鏈接數(shù)據(jù)采集卡的DLL庫函數(shù)。DLL實(shí)際上是一個(gè)函數(shù)庫,只在應(yīng)用程序運(yùn)行時(shí)DLL中的函數(shù)才被隨時(shí)調(diào)用和連接。和靜態(tài)連接庫相 比,DLL可以和其他應(yīng)用程序共享庫中的函數(shù)和資源。許多數(shù)據(jù)采集插卡生產(chǎn)商提供DLL庫函數(shù)形式的驅(qū)動(dòng)程序,用戶可使用某種DLL鏈接庫的編程工具,如 VC、VB編寫應(yīng)用程序來調(diào)用它。同樣,LabVIEW也提供了該功能,就是圖標(biāo)Call Library Function Node,放在Function模板內(nèi)的Advanced子模板中,通過設(shè)置該節(jié)點(diǎn)來直接調(diào)用DLL。?
在本研究系統(tǒng)中采用第三種方法,實(shí)現(xiàn)了在線切削力的數(shù)據(jù)采集。采用基于ISA總線的數(shù)據(jù)采集卡ACL-8111,DLL直接由生產(chǎn)廠家提供。?
輸入信號(hào)范圍:±5V,±2.5V,±1.25V,±0.625V,±0.3125V(軟件編程選擇);最高采樣頻率:30kHz;觸發(fā)模式:軟件、 在板可編程定時(shí)器或外觸發(fā);數(shù)據(jù)傳輸:程序控制、中斷控制;IRQ級(jí)別:可編程IRQ2,3,4,5,6,7;通道數(shù):8路單端通道。
本系統(tǒng)輸入信號(hào)范圍±5V,采樣頻率2000Hz,A/D數(shù)據(jù)轉(zhuǎn)換觸發(fā)模式采用在板可編程定時(shí)器觸發(fā),數(shù)據(jù)傳輸采用中斷控制,中斷級(jí)別設(shè)置為5,通道數(shù)為3,三個(gè)通道分別采集和傳輸獲得X,Y、Z三向切削力。?
待采集的模擬信號(hào)通過電荷放大器放大,根據(jù)預(yù)先設(shè)定選擇不同的增益;輸出的信號(hào)進(jìn)行A/D轉(zhuǎn)換,轉(zhuǎn)換結(jié)束后,將12位轉(zhuǎn)換結(jié)果自動(dòng)存在數(shù)據(jù)寄存器中, 然后通過中斷控制將數(shù)據(jù)取出,送入計(jì)算機(jī)內(nèi)存進(jìn)行處理。在使用時(shí),將采集卡直接插入計(jì)算機(jī)ISA插槽中,使用其預(yù)先設(shè)定的基地址220H。?
二、數(shù)據(jù)采集與轉(zhuǎn)換中的關(guān)鍵問題
數(shù)據(jù)采集與轉(zhuǎn)換系統(tǒng)用于將模擬信號(hào)轉(zhuǎn)換為數(shù)字形式進(jìn)行分析或傳輸。模擬信號(hào)輸入通常是由互感器和傳感器將壓力、溫度、應(yīng)力或張力、流量等真實(shí)信號(hào)轉(zhuǎn)換 為相應(yīng)的電信號(hào)。系統(tǒng)保存信號(hào)準(zhǔn)確性和完整性的能力是衡量系統(tǒng)的主要指標(biāo)。如何設(shè)計(jì)一個(gè)高性能的數(shù)據(jù)采集與轉(zhuǎn)換系統(tǒng)需要考慮多方面的因素,本文就其中的一 些關(guān)鍵問題給出自己的討論。
數(shù)據(jù)采集轉(zhuǎn)換系統(tǒng)的基本框架
模擬信號(hào)進(jìn)行采集并轉(zhuǎn)換為相應(yīng)數(shù)字形式所需的基本元素包括:模擬多路復(fù)用器和信號(hào)調(diào)節(jié);放大器;模數(shù)轉(zhuǎn)換器;PC 或 MCU。
圖1 為數(shù)據(jù)采集系統(tǒng)典型框圖。目前的數(shù)據(jù)采集系統(tǒng)通常包括數(shù)據(jù)采集與轉(zhuǎn)換所需的所有元素,不過有時(shí)可能不包含模擬多路復(fù)用之前的輸入濾波與信號(hào)調(diào)節(jié)。模擬信號(hào) 由模擬乘法器進(jìn)行時(shí)間多路復(fù)用;多路復(fù)用器輸出信號(hào)通過放大器輸入A/D轉(zhuǎn)換器。我們可對(duì)采樣/保持進(jìn)行編程,以便采集并保持經(jīng)各 A/D 轉(zhuǎn)換器轉(zhuǎn)換成的數(shù)字多路數(shù)據(jù)采樣。轉(zhuǎn)換后的數(shù)據(jù)以并行或串行形式出現(xiàn)在 A/D 轉(zhuǎn)換器的輸出中,以備終端設(shè)備做進(jìn)一步處理。
圖1
系統(tǒng)采樣率
被轉(zhuǎn)換數(shù)據(jù)的應(yīng)用與最終使用決定了數(shù)據(jù)采集與轉(zhuǎn)換系統(tǒng)所需的采樣率和轉(zhuǎn)換率。系統(tǒng)采樣率由最高帶寬通道、數(shù)據(jù)通道的數(shù)量以及每次循環(huán)的采樣數(shù)決定。
圖2
混疊誤差
根據(jù)奈奎斯特采樣定理,在理想的采樣數(shù)據(jù)系統(tǒng)中,數(shù)據(jù)帶寬的每次循環(huán)要求最少兩次采樣,這樣恢復(fù)被采樣信號(hào)才不會(huì)丟失信息。因此,確定系統(tǒng)采樣率時(shí)首 先要考慮的就是混疊誤差,也就是由于在信號(hào)頻率的每次循環(huán)中采樣數(shù)量不足所造成的信息丟失。圖 2 顯示了在數(shù)據(jù)帶寬的每次循環(huán)中采樣數(shù)量不足所造成的混疊誤差。
每次循環(huán)需要多少個(gè)采樣
這個(gè)問題的答案取決于允許的平均誤差容限、重建方法(如果存在)以及數(shù)據(jù)的最終使用。
采樣數(shù)據(jù)的平均精度可通過以下途徑加以改進(jìn):(1) 增加每次循環(huán)的采樣數(shù);(2) 多路復(fù)用前預(yù)采樣濾波,或 (3) 過濾 D/A 轉(zhuǎn)換器輸出。圖3顯示了采樣數(shù)據(jù)的重建,這里 fS= 2fMAX。
如圖 4 所示,每次循環(huán)采樣數(shù)只要稍許增加,采樣數(shù)據(jù)的平均精度就會(huì)大幅上升。理論限制在于持續(xù)采樣時(shí)采集與轉(zhuǎn)換系統(tǒng)的吞吐量精度。對(duì)于數(shù)據(jù)的零階重建,從圖 4 可以看出,重建采樣數(shù)據(jù)達(dá)到平均 90% 乃至更高的精度要求對(duì)數(shù)據(jù)帶寬的每次循環(huán)進(jìn)行10次采樣。通常所用的范圍是每次循環(huán)7~10 次采樣。
圖3
圖4
采樣誤差
采樣誤差的定義是:采樣過程中動(dòng)態(tài)數(shù)據(jù)變化的不確定性所造成的采樣數(shù)據(jù)點(diǎn)的幅值與時(shí)間誤差。在數(shù)據(jù)采集和轉(zhuǎn)換系統(tǒng)中,通過使用采樣/保持器或快速的 A/D轉(zhuǎn)換器,就能減小采樣誤差或使之不顯著。對(duì)于正弦數(shù)據(jù),最大采樣誤差出現(xiàn)在零交叉情況下,這時(shí)會(huì)出現(xiàn)最大的 dv/dt。
關(guān)于 A/D 轉(zhuǎn)換器的幾點(diǎn)說明
A/D轉(zhuǎn)換器的轉(zhuǎn)換速度和分辨率是最重要的兩個(gè)參數(shù)。下面簡(jiǎn)單討論一下 A/D 轉(zhuǎn)換器術(shù)語將有助于讀者更好地了解系統(tǒng)分辨率與精度。
速度:主要由A/D 轉(zhuǎn)換器的采樣時(shí)間及轉(zhuǎn)換時(shí)間構(gòu)成。A/D轉(zhuǎn)換器手冊(cè)均會(huì)在采樣動(dòng)態(tài)參數(shù) (Sampling Dynamics)標(biāo)出轉(zhuǎn)換速度。有時(shí)是數(shù)據(jù)吞吐率(Throughput Rate)。逐次逼近型AD轉(zhuǎn)換器采樣速率或數(shù)據(jù)吞吐率一般從幾十千次每秒到幾兆次每秒。
分辨率:A/D 轉(zhuǎn)換器的比特?cái)?shù)決定著數(shù)據(jù)采集系統(tǒng)的分辨率。A/D 轉(zhuǎn)換器分辨率的定義如下:---1 LSB = VFSR/2n,
LSB = 最低有效位,VFSR =滿量程輸入電壓范圍,這里,n為A/D轉(zhuǎn)換器的分辨率。比特?cái)?shù)決定著數(shù)字碼的數(shù)量,對(duì)A/D轉(zhuǎn)換器而言有2n個(gè)離散數(shù)字代碼。就本文的討論而言,我們將 使用二進(jìn)制逐次逼近A/D轉(zhuǎn)換器。表1顯示了典型A/D轉(zhuǎn)換器的分辨率和 LSB的值。
表1
信噪比:理想AD轉(zhuǎn)換器的信噪比為 SNRdB=6.02×n-1.76,表2 為AD 轉(zhuǎn)換器位數(shù)與信噪比的簡(jiǎn)單對(duì)照表。
表2
精度:假定所有模擬值都位于 A/D 轉(zhuǎn)換器輸入處。A/D 轉(zhuǎn)換器量化或編碼特定的模擬輸入值為相應(yīng)的數(shù)字代碼作為一種輸出。上述數(shù)字代碼有著內(nèi)在的不確定性或 ±1/2LSB 的量化誤差。這就是說,量化的數(shù)字代碼所代表的模擬電壓與相鄰數(shù)字代碼中間點(diǎn)的距離在 ±1/2LSB 之內(nèi)。A/D轉(zhuǎn)換器的精度不會(huì)超過內(nèi)在的 ±1/2LSB 的量化誤差所允許的范疇。增益、偏移和線性誤差等模擬誤差也會(huì)影響 A/D 轉(zhuǎn)換器的精度。增益和偏移通??烧{(diào)節(jié)為零,但線性誤差是不可調(diào)的,因?yàn)樗怯晒潭ㄖ档奶菪坞娮杵骶W(wǎng)絡(luò)和網(wǎng)絡(luò)開關(guān)匹配造成的。大多數(shù)高質(zhì)量A/D轉(zhuǎn)換器的線 性誤差都低于±1/2LSB。另一個(gè)需要重點(diǎn)考慮的誤差是微分線性誤差。在理想的 A/D 轉(zhuǎn)換器中,相鄰過渡點(diǎn)間的步進(jìn)大小為一個(gè) LSB。微分線性誤差就是在實(shí)際 A/D 轉(zhuǎn)換器中相鄰過渡點(diǎn)與理想的 LSB 步進(jìn)差距。該誤差必須小于一個(gè) LSB,這樣才能保證不會(huì)丟失代碼。線性誤差為 ±1/2LSB 的 A/D 轉(zhuǎn)換器不一定意味著不會(huì)丟失代碼。圖5為微分線性、失調(diào)及增益誤差圖。
圖5
二進(jìn)制代碼:二進(jìn)制編碼的數(shù)據(jù)格式是數(shù)字計(jì)算機(jī)類型應(yīng)用中最常見的,其處理通常以二進(jìn)制形式進(jìn)行。A/D 轉(zhuǎn)換器中最常用的二進(jìn)制編碼為:
1. 單極標(biāo)準(zhǔn)二進(jìn)制 (USB)——用0~±10V等。
2. 雙極偏移二進(jìn)制 (BOB)——用于雙極模擬信號(hào)范圍,如 ±5V、±10V 等
3. 雙極雙組件 (BTC)——用于許多數(shù)字計(jì)算機(jī)應(yīng)用中的雙極模擬信號(hào)范圍。
在 A/D 轉(zhuǎn)換器中使用兩種 BCD 編碼,單極 BCD 和符號(hào)數(shù)值 BCD (SMD)。
表3
三、數(shù)據(jù)采集測(cè)量結(jié)果改善的常用校正方法
改善測(cè)量結(jié)果需要進(jìn)行配置、校準(zhǔn)以及優(yōu)秀的軟件開發(fā)技術(shù)。本文旨在使您了解優(yōu)化測(cè)量結(jié)果的軟、硬件技巧,內(nèi)容包括:選擇并配置數(shù)據(jù)采集設(shè)備、補(bǔ)償測(cè)量誤差以及采用優(yōu)秀的軟件技術(shù)。
當(dāng)您將電子信號(hào)連接到數(shù)據(jù)采集設(shè)備時(shí),您總是希望讀數(shù)能匹配輸入信號(hào)的電氣數(shù)值。但我們知道沒有一種測(cè)量硬件是完美的,所以為了改善測(cè)量結(jié)果我們必須采用最佳的硬件配置。
根據(jù)應(yīng)用需求,您必須首先要明確數(shù)據(jù)采集卡所需的模擬輸入、輸出通道以及數(shù)字I/O線的最少數(shù)目。其次還要考慮的重要因素有:采樣率、輸入范圍、輸入方式和精度。
第一個(gè)要考慮的問題是現(xiàn)場(chǎng)接線,根據(jù)您要采集的信號(hào)源類型,您可以使用差分、非參考單端、參考單端三種輸入方式來配置數(shù)據(jù)采集卡。
總的說來,差分測(cè)量系統(tǒng)較為可取,因?yàn)樗芟拥丨h(huán)路感應(yīng)誤差并能在一定程度上削弱由環(huán)境引起的噪聲。而另一方面,單端輸入方式提供兩倍數(shù)據(jù)采集通道數(shù),可是僅適用于引入誤差比數(shù)據(jù)所需精度小的情況。表1為選擇合適的信號(hào)源模擬輸入方式提供了指導(dǎo)
選擇合適的增益系數(shù)也是非常重要的。保證數(shù)據(jù)采集產(chǎn)品進(jìn)行精確采集和轉(zhuǎn)換所設(shè)定的電壓范圍叫做輸入信號(hào)范圍。為得到最佳的測(cè)量精度,使模擬信號(hào)的最大最小值盡可能占滿整個(gè)ADC(+/-10V或0-10V)范圍,這樣就可使測(cè)量結(jié)果充分利用現(xiàn)有的數(shù)字位。
在數(shù)據(jù)采集系統(tǒng)中選擇合適的增益
圖1表示同在10V的輸入范圍下使用不同的增益系數(shù),輸入5V信號(hào)得到的采集結(jié)果。請(qǐng)注意:選取合適的增益系數(shù)能夠充分利用ADC并改善您的測(cè)試結(jié)果。
任何測(cè)量結(jié)果都只是您要測(cè)量的“真實(shí)值”的估計(jì)值,事實(shí)上您永遠(yuǎn)也無法完美地測(cè)量出真實(shí)值。這是因?yàn)槟鷾y(cè)量的準(zhǔn)確性會(huì)受到物理因素的限制,而且測(cè)量的精度也取決于這種限制。
在特定的范圍內(nèi),16位數(shù)據(jù)采集卡有216(65536)種數(shù)值,而12位數(shù)據(jù)采集卡有212 (4096)種數(shù)值。理想情況下,這些數(shù)值在整個(gè)測(cè)量范圍內(nèi)是均勻分布的,而且測(cè)量硬件會(huì)把實(shí)際測(cè)量值取整成最接近的數(shù)值并返回計(jì)算機(jī)內(nèi)存。事實(shí)上有許多 人認(rèn)為,這種取整誤差(通常稱為量化誤差)是決定精度的唯一因素。實(shí)際上,這種量化誤差,在 12位多功能數(shù)據(jù)采集卡中只占總誤差的35%,而在類似的16位卡中就更微不足道了。不管您使用12位還是16位數(shù)據(jù)采集卡,都不能只考慮這種量化誤差。
放大器中的缺陷,如電阻器容限和模擬-數(shù)字轉(zhuǎn)換特性,都會(huì)產(chǎn)生增益誤差。這種誤差通常以總讀數(shù)的百分比表示。為了補(bǔ)償這部分誤差,您可以進(jìn)行內(nèi)部校 準(zhǔn)。內(nèi)部校準(zhǔn)不僅能夠補(bǔ)償增益誤差還能補(bǔ)償溫度變化引起的誤差。這需要一個(gè)帶有溫度相關(guān)誤差容限的板載參考源。數(shù)據(jù)采集設(shè)備和其它類型的傳統(tǒng)儀器都采用內(nèi) 部校準(zhǔn),通常也被稱為自校準(zhǔn)。
E系列校準(zhǔn)VI
在LabVIEW中,您可以使用“E系列校準(zhǔn)VI(E-Series Calibrate VI)”來對(duì)數(shù)據(jù)采集設(shè)備進(jìn)行校準(zhǔn)(圖2)。一旦板卡處于工作環(huán)境,經(jīng)常校準(zhǔn)能確保最精確、最穩(wěn)定及可重復(fù)的測(cè)量結(jié)果,在自校準(zhǔn)過程中可對(duì)模擬輸入和模擬輸出都能完成自校準(zhǔn)。
由于有增益前偏差、增益后偏差和增益誤差校準(zhǔn),自校準(zhǔn)會(huì)建立一個(gè)校準(zhǔn)常數(shù)集合。完成一次校準(zhǔn)之后,新的校準(zhǔn)常數(shù)將被加載到板卡的存儲(chǔ)器上。舊的校準(zhǔn)常 數(shù)可以保存到EEPROM中,這樣在必要時(shí)可以重新加載。一旦板卡停止供電,如果還需要校準(zhǔn)常數(shù),那保存工作則是非常重要的。如果沒有把校準(zhǔn)常數(shù)保存到 EEPROM中,關(guān)閉計(jì)算機(jī)之后這些數(shù)據(jù)就丟失了。
放大器的缺陷或者模擬-數(shù)字轉(zhuǎn)換會(huì)產(chǎn)生非線性誤差。在輸入范圍內(nèi),增益系數(shù)的微小變化就會(huì)產(chǎn)生非線性誤差,這種誤差一般表示為滿量程的百分?jǐn)?shù)。到現(xiàn)在 還沒有一種簡(jiǎn)單的校準(zhǔn)方法能夠補(bǔ)償這種非線性誤差。因此仔細(xì)挑選數(shù)據(jù)采集卡是非常關(guān)鍵的。設(shè)備的相關(guān)精度表示非線性誤差的總值,相關(guān)精度定義為數(shù)據(jù)采集設(shè) 備測(cè)量精度的最低有效位數(shù)。它包括所有非線性誤差和量化誤差,不包括偏差和增益誤差。知道了數(shù)據(jù)采集卡的相關(guān)精度就可以為所有讀數(shù)建立容限。
為進(jìn)一步提高測(cè)試結(jié)果的精度,還必須補(bǔ)償任何偏移誤差。偏移誤差在輸入范圍內(nèi)是不變的,因此,糾正起來相對(duì)容易些。您可以先測(cè)量短路通道的偏移誤差,然后用以后的讀數(shù)減去這個(gè)值。
采用優(yōu)秀的軟件技術(shù)
提高讀數(shù)精度的一種很好的軟件技術(shù)就是求平均值。求平均值的前提是噪聲和測(cè)量誤差是隨機(jī)的,因此,根據(jù)中心極限定理,誤差服從正態(tài)分布(高斯分布)。 選取多個(gè)點(diǎn)后呈高斯分布,計(jì)算出平均值,平均值在統(tǒng)計(jì)上非常接近真實(shí)值。因此,所選取的要平均的點(diǎn)越多,平均值的標(biāo)準(zhǔn)偏差就越小。因?yàn)闃?biāo)準(zhǔn)偏差會(huì)隨著樣本 數(shù)量增加而減小,所以應(yīng)當(dāng)盡可能提高用于平均的采樣點(diǎn)數(shù)。
定期的自校準(zhǔn)也是一種好方法,它能夠在任何時(shí)候保持測(cè)量精度。執(zhí)行定期內(nèi)部校準(zhǔn)(建議每天進(jìn)行)可以補(bǔ)償溫度和環(huán)境變化引起的誤差。
四、基于LabVIEW和PCI-5124的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
摘要:設(shè)計(jì)一種基于虛擬儀器LabVIEW和高速數(shù)字化儀NI PCI-5124的高采樣率、長(zhǎng)時(shí)間的數(shù)據(jù)采集分析實(shí)驗(yàn)系統(tǒng)。該系統(tǒng)可實(shí)現(xiàn)20 MHz甚至更高采樣率以及數(shù)據(jù)信號(hào)長(zhǎng)時(shí)間的實(shí)時(shí)采集,并具有實(shí)時(shí)存儲(chǔ)、回放、信號(hào)分析、報(bào)表打印功能。實(shí)驗(yàn)表明:該系統(tǒng)具有程序設(shè)計(jì)簡(jiǎn)單、通用性好、可移 植性高、界面設(shè)計(jì)簡(jiǎn)單大方、易于操作等優(yōu)點(diǎn)。
傳統(tǒng)數(shù)據(jù)采集系統(tǒng)一般由單片機(jī)與硬件采集電路或數(shù)據(jù)采集卡配置計(jì)算機(jī)組成。這種數(shù)據(jù)采集系統(tǒng)存在開發(fā)難度大、可移植性差、數(shù)據(jù)采集效率低、實(shí)時(shí)存儲(chǔ)容 量小等缺點(diǎn)。其存儲(chǔ)容量取決于數(shù)據(jù)采集卡的板載內(nèi)存的大小,一般只有8 MB或12 MB,而現(xiàn)代工程運(yùn)用中的數(shù)據(jù)采集系統(tǒng)需具有很高的采樣速率,完成海量數(shù)據(jù)的實(shí)時(shí)存儲(chǔ)。針對(duì)傳統(tǒng)數(shù)據(jù)采集系統(tǒng)存在的不足,這里采用虛擬儀器 (LabVIEW)和高速數(shù)字化儀NI PCI-5124設(shè)計(jì)一種可以長(zhǎng)時(shí)間連續(xù)采集、實(shí)時(shí)存儲(chǔ)的數(shù)據(jù)采集系統(tǒng)。
本系統(tǒng)只使用PC機(jī)、數(shù)據(jù)采集卡以及編程語言即可在Windows操作系統(tǒng)下實(shí)現(xiàn)對(duì)數(shù)據(jù)的采集、存儲(chǔ)、處理,開發(fā)成本低,通訊能力強(qiáng),易于使用。系統(tǒng) 改善了傳統(tǒng)數(shù)據(jù)采集系統(tǒng)的存儲(chǔ)量小、采集效率低等缺點(diǎn),可實(shí)現(xiàn)信號(hào)的長(zhǎng)時(shí)間實(shí)時(shí)采集、存儲(chǔ)、回放、分析、報(bào)表打印等功能。
1 系統(tǒng)硬件設(shè)備簡(jiǎn)介
該系統(tǒng)硬件設(shè)計(jì)結(jié)構(gòu)原理框圖如圖l所示。
系統(tǒng)硬件設(shè)計(jì)主要包括PC控制機(jī)和高速數(shù)據(jù)采集卡。由于許多插入式的數(shù)據(jù)采集DAQ(Data Acquisition)設(shè)備采集數(shù)據(jù)不僅受到采樣速率的限制,而且受到板載內(nèi)存和數(shù)據(jù)到PC機(jī)內(nèi)存的傳輸速率的限制。
針對(duì)以上問題,本設(shè)計(jì)選用插入式DAQ產(chǎn)品中價(jià)位低、速率快、精度高的高速數(shù)字化儀NI PCI-5124。它可以直接插入計(jì)算機(jī)的PC捕槽,即插即用使用方便,具有200 MS/s的實(shí)時(shí)采樣至4.0 GS/s的等效時(shí)段采樣;標(biāo)準(zhǔn)8~256 MB大容量板載內(nèi)存;基于PCI總線的12位分辨率的雙同步采樣通道;使用新技術(shù)實(shí)現(xiàn)在2個(gè)150 MHz帶寬的、帶有去噪和抗混疊濾波器的輸入信道中同步采樣;高達(dá)75 dBc的無寄生動(dòng)態(tài)范圍SFDR(Spufious-Free Dynamic Range);基于NI同步和存儲(chǔ)核心SMC (Synchronization and Memory Core)構(gòu)架,具備每通道512 MB板載內(nèi)存、快速數(shù)據(jù)傳輸和緊密的同步功能。工程師們可以在幾十皮秒(ps)內(nèi)同步基于SMC的模塊化儀器,主要有邊緣、視窗、滯環(huán)、視頻和數(shù)字等觸發(fā) 方式,主要用于高通道和混合信號(hào)應(yīng)用。
專用數(shù)據(jù)采集長(zhǎng)的驅(qū)動(dòng)方式分為外掛式驅(qū)動(dòng)和內(nèi)置式驅(qū)動(dòng)兩種。對(duì)于NI公司生產(chǎn)的各種專用數(shù)據(jù)采集卡,可使用LabVIEW內(nèi)的DAQ庫直接對(duì)端口進(jìn)行 各種操作,即內(nèi)置式驅(qū)動(dòng)。NI數(shù)據(jù)采集卡提供對(duì)LabVIEW豐富且完備的支持,驅(qū)動(dòng)函數(shù)在底層的基礎(chǔ)函數(shù)上進(jìn)行高度封裝,用戶無需深入了解采集卡的具體 工作,只要掌握驅(qū)動(dòng)函數(shù)輸入/輸出端口的意義,就能進(jìn)行數(shù)據(jù)采集開發(fā)。因此用戶使用NI PCI-5124時(shí),只需將所需接口從程序中直接調(diào)用至系統(tǒng)開發(fā)環(huán)境中,即可實(shí)現(xiàn)采集、存儲(chǔ)以及回放等功能。
2 數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
2.1 程序設(shè)計(jì)
LabVIEW是一種基于圖形語言編程的可視化軟件開發(fā)平臺(tái),與VC、VB等其他可視化編程語言相比,其函數(shù)庫豐富、調(diào)試方便,而且開發(fā)界面簡(jiǎn)單,界 面風(fēng)格與傳統(tǒng)儀器相似。LabVIEW是一個(gè)外觀和操作均能模仿實(shí)際儀器的程序開發(fā)環(huán)境,類似于C、BASIC等編程語言。但LabVIEW的特點(diǎn)在于使 用圖形化編程G語言在流程圖中創(chuàng)建源程序,而非使用基于文本的語言產(chǎn)生源程序代碼。與傳統(tǒng)C、C++等編程語言不同,LabVI-EW采用強(qiáng)大的圖形化語 言編程,面向測(cè)試工程師而非專業(yè)程序員,編程方便,人機(jī)交互界面直觀友好,具有強(qiáng)大的數(shù)據(jù)可視化分析和儀器控制能力。
本實(shí)驗(yàn)系統(tǒng)主要由數(shù)據(jù)采集、存儲(chǔ)和數(shù)據(jù)處理等部分組成。其中數(shù)據(jù)采集包括采集設(shè)置和數(shù)據(jù)采集波形顯示;數(shù)據(jù)處理包括信號(hào)時(shí)頻域參量測(cè)量、信噪比測(cè)量以及報(bào)表打印等。系統(tǒng)工作流程如圖2所示。
本系統(tǒng)基本工作過程是:肩動(dòng)LabVIEW程序后,首先設(shè)置高速數(shù)據(jù)采集卡PCI-5124的通道、采樣模式、采樣頻率、觸發(fā)類型、觸發(fā)電平等,然后 啟動(dòng)采集,進(jìn)行長(zhǎng)時(shí)間連續(xù)的數(shù)據(jù)采集并利用流艋技術(shù)將采集到的信息實(shí)時(shí)存儲(chǔ)于計(jì)算機(jī)硬盤,由于采集到的信息量很大,因此對(duì)采集到的數(shù)據(jù)進(jìn)行離線處理,以減 輕計(jì)算機(jī)CPU負(fù)擔(dān),提高數(shù)據(jù)處理速度。
2.2 數(shù)據(jù)采集模塊
數(shù)據(jù)采集是從傳感器和其他待測(cè)設(shè)備等模擬和數(shù)字被測(cè)單元中自動(dòng)采集各種參量(物理、化學(xué)、生物量等)信息的過程。數(shù)據(jù)采集操作的結(jié)果直接影響后續(xù)數(shù)據(jù) 處理、分析,數(shù)據(jù)采集功能模塊利用NI-Scope函數(shù)進(jìn)行數(shù)據(jù)采集,為了讓數(shù)據(jù)采集設(shè)備在后臺(tái)連續(xù)采集數(shù)據(jù)并送入緩存區(qū),首先,初次安裝好NI PCI-5124數(shù)據(jù)采集卡和驅(qū)動(dòng)程序以后,計(jì)算機(jī)將自動(dòng)設(shè)置其I/O地址和中斷號(hào),并分配內(nèi)存資源,打通LabVIEW程序和底層驅(qū)動(dòng)NI-Scope 的通道。其次,在程序界面設(shè)置采樣頻率、采集通道、數(shù)據(jù)存儲(chǔ)方式并啟動(dòng)程序?qū)崟r(shí)采集。由于需要觸發(fā)某事件后(例如點(diǎn)擊“運(yùn)行采集”按鈕)進(jìn)行采集,本設(shè)計(jì) 采用可編程掃描和當(dāng)前軟件觸發(fā)采集模式:采集啟動(dòng)后,下層NI-Scope驅(qū)動(dòng)程序獨(dú)立控制硬件高速數(shù)字化儀PCI-5124進(jìn)行數(shù)據(jù)采集,并將采集結(jié)果 利用流盤存儲(chǔ)方式跳過采集卡的緩沖區(qū)直接讀取到應(yīng)用軟件的計(jì)算機(jī)硬盤中,處理數(shù)據(jù)。數(shù)據(jù)采集波形如圖3所示,該模塊完成連續(xù)數(shù)據(jù)采集,實(shí)時(shí)顯示信號(hào)并刷 新。
2.3 數(shù)據(jù)存儲(chǔ)回放模塊
數(shù)據(jù)存儲(chǔ)功能模塊由文件的類型簇、數(shù)據(jù)文件存儲(chǔ)路徑、TDMS Dialog函數(shù)、open TDMS函數(shù)、write TDMS函數(shù)、close TDMS函數(shù)以及error函數(shù)組成,本程序中調(diào)用openTDMS函數(shù)打開TDMS文件,當(dāng)運(yùn)行至此時(shí),數(shù)據(jù)會(huì)依據(jù)原先設(shè)置的存儲(chǔ)路徑和類型將數(shù)據(jù)持續(xù) 寫入指定計(jì)算機(jī)文件中。由于本設(shè)計(jì)要存儲(chǔ)海量數(shù)據(jù),因此采用基于流盤技術(shù)的存儲(chǔ)方式。流盤是一項(xiàng)在進(jìn)行多次寫操作時(shí)保持文件打開的技術(shù),即持續(xù)從或者向存 儲(chǔ)器(Memory)中傳輸數(shù)據(jù)。存儲(chǔ)器可以是設(shè)備的板上緩存(Onboard Memory)、控制器上的RAM或計(jì)算機(jī)上的硬盤,本設(shè)計(jì)使用“文件I/O函數(shù)”設(shè)計(jì)合理的流盤存儲(chǔ)基本架構(gòu)。
回放是為了使用戶存實(shí)時(shí)采集存儲(chǔ)和數(shù)據(jù)分析測(cè)量結(jié)束后,還可以在需要時(shí)重新觀察和深入分析所采集的數(shù)據(jù)。數(shù)據(jù)回放功能程序運(yùn)行至open TDMS函數(shù)時(shí),將運(yùn)行連接至open(只讀),即可打開對(duì)應(yīng)的數(shù)據(jù)存盤文件,采集到的波形數(shù)據(jù)按照帶索引的二進(jìn)制TDMS文件形式存放于計(jì)算機(jī)硬盤中。 在選擇波形回放時(shí),后臺(tái)程序首先要確定波形數(shù)據(jù)中數(shù)組元素所對(duì)應(yīng)的采樣時(shí)刻,當(dāng)選擇同放按鈕時(shí),給定的初始運(yùn)行時(shí)間會(huì)與待同放的波形數(shù)據(jù)的第1個(gè)元素所對(duì) 應(yīng)的時(shí)刻進(jìn)行比較,從而確定待回放數(shù)據(jù)的第1個(gè)數(shù)據(jù)元素的時(shí)刻,從此開始回放數(shù)據(jù)波形,直到用戶發(fā)出停止指令。整個(gè)文件完全是Windows系統(tǒng)文件,大 大提高存儲(chǔ)和釋放的速率,加快數(shù)據(jù)處理速度,回放波形如圖4所示。
2.4 數(shù)據(jù)分析模塊
數(shù)據(jù)分析主要包括測(cè)量信號(hào)參量、幅度相位譜和功率譜。時(shí)域分析是一種直接在時(shí)問域中對(duì)系統(tǒng)進(jìn)行分析的方法,具有直觀、準(zhǔn)確的優(yōu)點(diǎn),可以提供數(shù)據(jù)采集系 統(tǒng)時(shí)間響應(yīng)所需的全部信息。本系統(tǒng)主要是標(biāo)定所采集信號(hào)的周期、平均值、周期均方根、有效值以及頻率等,實(shí)時(shí)了解信號(hào)各種參數(shù)。
數(shù)據(jù)報(bào)表打印主要是將所采集信號(hào)的原始波形和回放波形以圖片格式傳遞至打印樣式子VI,并設(shè)置該子VI,使得程序需要打印時(shí),就可通過調(diào)用該子VI打開前面板的采集波形和回放波形,顯示報(bào)表內(nèi)容并進(jìn)行打印預(yù)覽。
3 結(jié)論
進(jìn)行系統(tǒng)實(shí)驗(yàn)測(cè)試時(shí),使用主頻為1.8l GHz、處理器為64位,512 M內(nèi)存的PC;采樣速率為20MByte/s的高速數(shù)字化儀PCI-5124,實(shí)現(xiàn)長(zhǎng)達(dá)30 min的連續(xù)數(shù)據(jù)采集和海量數(shù)據(jù)存儲(chǔ)。利用虛擬儀器LabVIEW和高速數(shù)字化儀PCI-5124開發(fā)的長(zhǎng)時(shí)間連續(xù)采集存儲(chǔ)系統(tǒng)完成了信號(hào)實(shí)時(shí)的采集、顯 示、存儲(chǔ)以及對(duì)采集歷史數(shù)據(jù)進(jìn)行回放的功能。
與傳統(tǒng)數(shù)據(jù)采集儀器相比,該系統(tǒng)具有性價(jià)比高、開發(fā)時(shí)間短、通用性強(qiáng)、數(shù)據(jù)處理準(zhǔn)確簡(jiǎn)單、可移植性強(qiáng)(可以將VC、C、MATLAB等程序進(jìn)行遞歸調(diào) 用)、人性化界面設(shè)計(jì)、易于操作等優(yōu)點(diǎn),LabVIEW簡(jiǎn)單的編寫語言和易于編寫的控制,控件,簡(jiǎn)化了編程過程,用戶無需掌握數(shù)據(jù)采集卡的硬件知識(shí),只需 了解和掌握其驅(qū)動(dòng)程序的功能,就能利用LabVIEW進(jìn)行數(shù)據(jù)程序的開發(fā)和運(yùn)用,這將成為未來數(shù)據(jù)采集發(fā)展的趨勢(shì)。
互感器相關(guān)文章:互感器原理
c++相關(guān)文章:c++教程
模數(shù)轉(zhuǎn)換器相關(guān)文章:模數(shù)轉(zhuǎn)換器工作原理
電荷放大器相關(guān)文章:電荷放大器原理
評(píng)論