楊炳勇
(德化陶瓷職業(yè)技術(shù)學(xué)院 陶瓷工程系,福建 泉州 362000)
基于PC機(jī)的數(shù)據(jù)采集系統(tǒng)成為目前應(yīng)用最為廣泛的數(shù)據(jù)采集系統(tǒng)之一,廣泛應(yīng)用于如電力設(shè)備監(jiān)控、遙測(cè)遙感等測(cè)控領(lǐng)域。其中,數(shù)據(jù)采集電路完成信號(hào)的獲取與控制,PC機(jī)完成信號(hào)的處理、存儲(chǔ)與顯示功能。由數(shù)據(jù)采集電路、PC機(jī)、測(cè)試系統(tǒng)軟件即可構(gòu)成一臺(tái)虛擬儀器(Virtual Instrument,簡(jiǎn)稱(chēng) VI),可替代傳統(tǒng)儀器完成測(cè)量測(cè)試功能。
虛擬儀器[1]是在以計(jì)算機(jī)為核心的硬件平臺(tái)上,使用者用鼠標(biāo)點(diǎn)擊虛擬面板,就可操作這臺(tái)計(jì)算機(jī)系統(tǒng)硬件平臺(tái)。它利用PC機(jī)顯示器(CRT)的顯示功能模擬傳統(tǒng)儀器的控制面板,以多種形式表達(dá)輸出檢測(cè)結(jié)果,利用PC機(jī)強(qiáng)大的軟件功能實(shí)現(xiàn)信號(hào)數(shù)據(jù)的運(yùn)算、分析、處理,由I/0接口設(shè)備完成信號(hào)的采集、測(cè)量與調(diào)理,從而完成各種測(cè)試功能。
數(shù)據(jù)采集系統(tǒng)的總體結(jié)構(gòu)如圖1所示,主要由PC/104主板模塊、數(shù)據(jù)采集模塊、顯示模塊(CRT顯示器)、電源模塊等構(gòu)成。由于PC104總線(xiàn)與通用的PC標(biāo)準(zhǔn)完全兼容,可以很快掌握其軟、硬件的使用,則可將主要精力放在軟件和接口的設(shè)計(jì)上;而且他具備嵌入式控制的特殊要求:體積小、成本低、可靠性高、編程調(diào)試方便,配以不同功能的板卡,開(kāi)發(fā)、維護(hù)和擴(kuò)展都非常方便,為嵌入式應(yīng)用提供了標(biāo)準(zhǔn)的硬件平臺(tái)。

圖1 數(shù)據(jù)采集系統(tǒng)的總體結(jié)構(gòu)

圖2 系統(tǒng)的總體功能結(jié)構(gòu)
該數(shù)據(jù)采集系統(tǒng)[3]的設(shè)計(jì),主要由軟件控制完成信號(hào)的采集、處理和顯示。系統(tǒng)軟件設(shè)計(jì)總體上包括:數(shù)據(jù)采集和分析、串口通信、D/A輸出等功能模塊,其功能結(jié)構(gòu)框圖如圖2所示。
該模塊主要完成多通道數(shù)據(jù)采集的控制,包括:?jiǎn)?dòng)方式、通道控制、時(shí)基控制等。
在該模塊的編程設(shè)計(jì)過(guò)程中,主要通過(guò)LabVIEW提供的調(diào)用庫(kù)函數(shù)CLF(Call Library Function)節(jié)點(diǎn)[4],調(diào)用采集卡自帶的DLL動(dòng)態(tài)鏈接庫(kù)文件來(lái)實(shí)現(xiàn)采集控制,并根據(jù)PM511P2K.H頭文件的定義,設(shè)置函數(shù)的輸入?yún)?shù)及數(shù)據(jù)類(lèi)型。
終端與計(jì)算機(jī)之間或者計(jì)算機(jī)與計(jì)算機(jī)之間進(jìn)行交換信息時(shí),除了采用并行通訊方式之外,還經(jīng)常采用串行通訊方式。
3.3.1串口通信程序設(shè)計(jì)
上位機(jī)通信程序設(shè)計(jì)包括:打開(kāi)串口、設(shè)置通信格式、用查詢(xún)方式向下位機(jī)發(fā)送命令、接收傳回的數(shù)據(jù)并轉(zhuǎn)換成需要的數(shù)據(jù)、實(shí)時(shí)顯示報(bào)警等。完成的主要操作包括:上位機(jī)向下位機(jī)發(fā)送通信開(kāi)始標(biāo)志、欲呼叫下位機(jī)的聯(lián)絡(luò)地址、指令下位機(jī)接收數(shù)據(jù)個(gè)數(shù)的信息。
3.3.2 Laview串口節(jié)點(diǎn)函數(shù)[7]
串口通信主要調(diào)用Laview中VISA總線(xiàn)中的SERIAL
編程設(shè)計(jì)過(guò)程中,通過(guò)LabVIEW提供的調(diào)用庫(kù)函數(shù)CLF(Call Library Function)節(jié)點(diǎn),調(diào)用采集卡自帶的DLL動(dòng)態(tài)鏈接庫(kù)[8]文件來(lái)實(shí)現(xiàn)DA輸出,并根據(jù)PM511P2K.H頭文件的定義,設(shè)置函數(shù)的輸出參數(shù)及數(shù)據(jù)類(lèi)型。
運(yùn)行D/A程序時(shí)發(fā)現(xiàn)程序自動(dòng)關(guān)閉,經(jīng)檢查發(fā)現(xiàn)該程序有三個(gè)問(wèn)題:
4.1.1必須要調(diào)用 CloseDevicePM函數(shù)。
4.1.2 CLF節(jié)點(diǎn)設(shè)置中的函數(shù)聲明與頭文件中的不完全一樣,不要把頭文件中的long類(lèi)型設(shè)置為 unsigned long類(lèi)型。
4.1.3清錯(cuò)誤號(hào)不是目的,在調(diào)試時(shí)主要要看產(chǎn)生了什么錯(cuò)誤號(hào),應(yīng)該多調(diào)用查看錯(cuò)誤號(hào)的函數(shù)。
經(jīng)改正后,程序正常運(yùn)行。
4.2.1零點(diǎn)偏移——零點(diǎn)調(diào)節(jié)
采樣結(jié)果偏差大于24mV,此時(shí)需要進(jìn)行相應(yīng)調(diào)整,通過(guò)調(diào)節(jié)采集卡上的單極性調(diào)節(jié)電位器W1和W2,使得偏差小于24 mV,提高系統(tǒng)的測(cè)量精度。
4.2.2毛刺現(xiàn)象——濾波
在用信號(hào)發(fā)生器進(jìn)行總體調(diào)試時(shí),觀察采集到的波形呈現(xiàn)不規(guī)則的小幅度跳躍,即毛刺現(xiàn)象。可能由外界或系統(tǒng)內(nèi)部干擾,或測(cè)量點(diǎn)接觸不好造成,可通過(guò)軟件設(shè)置濾波環(huán)節(jié)進(jìn)行減弱消除。
[1]National Instruments Corporation.LabVIEW Express User Manual.April 2003 Edition
[2]鄧焱,王磊.LabVIEW 7.1測(cè)試技術(shù)與儀器應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2004
[3]周林,殷俠.數(shù)據(jù)采集與分析技術(shù)[M].西安:西安電子科技大學(xué)出版社,2005
[4]楊樂(lè)平,李海濤,趙勇等.LabVIEW高級(jí)程序設(shè)計(jì)[M.]北京:清華大學(xué)出版社,2003
[5]周求湛,劉萍萍,錢(qián)志鴻等.虛擬儀器與LabVIEW 7 Express程序設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,2004
[6]唐貴基,劉玉秋.基于LabVlEW虛擬測(cè)試分析儀的信號(hào)分析功能設(shè)計(jì)[J].儀器儀表,2004
[7]侯國(guó)屏,王坤等.LabVIEW 7.1編程與虛擬儀器設(shè)計(jì)[M].北京:清華大學(xué)出版社,2005
[8]G.Yadong,Q.Qingquan.The method of developing Virtual Instrument Platform.International Workshop:Autonomous Decentralized Systems,2003