基于LabVIEW的多功能信號采集與多通道定時計數(shù)器/觸發(fā)器的設(shè)計
引言
隨著電子技術(shù)、計算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)等的快速發(fā)展,虛擬儀器(Virtual Instrument,VI)技術(shù)已得到了廣泛應(yīng)用。
LabVIEW和C、DELPHI等一樣,是一種程序開發(fā)環(huán)境,但其最大的區(qū)別在于使用了圖形化的編程語言(G語言)。LabVIEW可以依托高性能設(shè)備,實(shí)現(xiàn)高精度的測量控制,并可根據(jù)需求快速實(shí)現(xiàn)設(shè)備的軟件化、虛擬化,以滿足多種多樣的應(yīng)用需求。
設(shè)備的軟件化、虛擬化已經(jīng)成為現(xiàn)代測控的發(fā)展方向。它不僅可以提高設(shè)計和開發(fā)效率,同時還可以大大節(jié)省硬件投入成本,提升已有硬件資源的利用率。因此,本文提出了基于LabVIEW的虛擬儀器設(shè)計與實(shí)現(xiàn)。
1 系統(tǒng)設(shè)計思想
為了更好地應(yīng)用擴(kuò)展性,提高系統(tǒng)采集和執(zhí)行精度,系統(tǒng)設(shè)計采用了上、下位機(jī)的機(jī)構(gòu)。
上位機(jī)采用普通PC機(jī)或通用工控機(jī),預(yù)裝WindowsXP操作系統(tǒng),主要運(yùn)行虛擬儀器的人機(jī)交互界面。
下位機(jī)預(yù)裝LabVIEWRT系統(tǒng),運(yùn)行測量與控制程序。其硬件組成主要有PXI-1045機(jī)箱、PXI-8108控制器、PXI-6608板卡、PXI-6229板卡,以及外部硬件信號條例模塊。
系統(tǒng)總體設(shè)計框圖如圖1所示。
2 系統(tǒng)的實(shí)現(xiàn)
系統(tǒng)的實(shí)現(xiàn)主要包括硬件和軟件兩部分,主要工作流程如圖2所示。
圖1 系統(tǒng)總體設(shè)計框圖
圖2 系統(tǒng)主要工作流程圖
2.1 硬件的組成及工作原理
硬件系統(tǒng)主要由普通PC機(jī)或工控機(jī)、PXI機(jī)箱及匹配的控制器、板卡,以及外部信號調(diào)理模塊組成。
硬件系統(tǒng)的工作原理比較直觀,通過信號調(diào)理模塊,將信號源轉(zhuǎn)換為板卡可接入的標(biāo)準(zhǔn)信號,通過對板卡工作模式的設(shè)定,來完成同步、異步的定時器計數(shù)、觸發(fā)和數(shù)據(jù)采集工作。
2.2 軟件的組成及設(shè)計
軟件系統(tǒng)采用上、下位機(jī)結(jié)構(gòu)。其中,上位機(jī)軟件開發(fā)采用的是WindowsXP操作系統(tǒng)平臺和LabVIEW軟件開發(fā)平臺。下位機(jī)軟件則基于LabVIEWRT操作系統(tǒng)平臺和LabVIEW軟件開發(fā)平臺進(jìn)行開發(fā)。系統(tǒng)對數(shù)據(jù)的采集應(yīng)用了兩種不同的通信編程方法。對于試后數(shù)據(jù)采集的應(yīng)用,例如定時器高速計數(shù)方式,采用了共享變量方法;對于過程數(shù)據(jù)的采集,使用了基于TCP/IP的通訊編程。
2.2.1 上位軟件
上位軟件主要完成人機(jī)交互功能,對虛擬儀器進(jìn)行配置與使用,同時對試驗(yàn)數(shù)據(jù)進(jìn)行顯示、保存及回放等操作,其上位軟件的主界面如圖3所示。
圖3 上位軟件主界面
軟件在首次使用或有硬件配置更改的情況下,需要對硬件進(jìn)行資源配置、使用配置、初始化操作。例如定時計數(shù)器的使用配置,如圖4所示。
圖4 上位軟件定時計數(shù)器的使用配置
2.2.2 下位軟件
下位軟件負(fù)責(zé)按照上位軟件對各板卡的配置和模式設(shè)定情況進(jìn)行初始化,并根據(jù)上位軟件啟動、停止等指令執(zhí)行相應(yīng)的數(shù)據(jù)采集和定時器計數(shù)與觸發(fā)工作。
結(jié)合實(shí)際應(yīng)用驗(yàn)證,模擬信號量的檢測和采集使用Queue數(shù)據(jù)結(jié)構(gòu),可以保證程序運(yùn)行中不會出現(xiàn)丟失或復(fù)制數(shù)據(jù)的現(xiàn)象,但對于定時計數(shù)板卡PXI-6608的應(yīng)用方式,將直接導(dǎo)致多路定時計數(shù)采集的成敗。
對于PXI-6608板卡的應(yīng)用,在多種計數(shù)模式中,“CI兩個邊沿的間隔”方式比較特殊,且在用于多個定時計數(shù)器(具體個數(shù)取決于PXI-6608板卡的使用個數(shù)及每塊板卡選用的定時計數(shù)器數(shù)量)同步采集時,根據(jù)使用方法的不同,會導(dǎo)致不同的結(jié)果。因此,在該虛擬儀器的設(shè)計過程中,主要講述“CI兩個邊沿的間隔”方式的兩種使用方法和特點(diǎn),以及DI/O使用中值得注意的問題。
2.2.2.1 "CI兩個邊沿的間隔"方式計數(shù)的實(shí)現(xiàn)方法及其對比
第一種使用方法是采用計數(shù)器單采樣方式,其配置和使用方法如圖5所示,圖中的常量參數(shù)可根據(jù)實(shí)際使用進(jìn)行修改。
圖5 計數(shù)器單采樣方式的配置和使用方法
該方法的特點(diǎn)如下:
(1)配置和使用簡單,在進(jìn)行數(shù)量較少且為單點(diǎn)計數(shù)時,可以采用該方法,但通道傳輸方式的設(shè)置在該方法下將不起作用.
(2)對每個定時計數(shù)器只能采集一個時間,且可同時采集的數(shù)量與板卡和選用的定時器組合方式有關(guān)。例如同時對3塊PXI-6608板卡的24個定時計數(shù)器進(jìn)行并行采集時,能成功采集的定時器數(shù)量不會超過12個;
(3)在進(jìn)行多路定時計數(shù)器的采集過程中,若同步采集的定時器中有任何一個產(chǎn)生超時錯誤,則將導(dǎo)致其后的所有采集任務(wù)全部超時。
第二種使用方法是采用計數(shù)器多采樣方式,其配置和使用方法如圖6所示,圖中的常量參數(shù)可根據(jù)實(shí)際使用進(jìn)行修改。
圖6 計數(shù)器多采樣方式配置和使用方法
該方法的特點(diǎn)如下:
(1)可根據(jù)使用需要,對通道傳輸方式進(jìn)行設(shè)定,如中斷方式、DMA方式等。使用該方法,可以使任意通道數(shù)的定時計數(shù)器同步采集;
(2)各定時計數(shù)器采集任務(wù)互不影響;
(3)對每個定時計數(shù)器可以進(jìn)行單個時間或多個連續(xù)時間的計數(shù)采集。
2.222 PXI-6608板卡DI/O的使用
PXI-6608板卡處理進(jìn)行定時計數(shù)的采集外,還可以初始化為DI/O方式,完成5VTTL的輸入/輸出。在使用配置時,需要注意占空比的設(shè)定,否則可能無法達(dá)到5V電壓的輸出。
3 結(jié)語
本文設(shè)計實(shí)現(xiàn)的虛擬儀器,不僅配置和使用靈活,而且在大大節(jié)省科研成本投入的基礎(chǔ)上,進(jìn)一步提高了設(shè)備的利用率。在整個設(shè)計過程中,首次在實(shí)際應(yīng)用中使用了高達(dá)20多路定時計數(shù)器并行采集,實(shí)現(xiàn)了多路定時器同步計數(shù)的方法,在工程應(yīng)用中,具有一定借鑒意義。此外,從虛擬儀器的角度,同時突破了傳統(tǒng)測量設(shè)備在硬件構(gòu)成、數(shù)據(jù)存儲以及測量方法中的限制,做到了設(shè)備的軟件化、虛擬化,在未來的科研、生產(chǎn)中將具有更廣闊的應(yīng)用前景。
20210903_6131aa52a337c__基于LabVIEW的多功能信號采集與多通道定時計數(shù)器