LabVIEW的多通道數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)_第1頁(yè)
LabVIEW的多通道數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)_第2頁(yè)
LabVIEW的多通道數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)_第3頁(yè)
LabVIEW的多通道數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)_第4頁(yè)
LabVIEW的多通道數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩48頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

...wd...LabVIEW的多通道數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)虛擬儀器是將儀器技術(shù)、計(jì)算機(jī)技術(shù)、總線技術(shù)和軟件技術(shù)嚴(yán)密的融合在一起,利用計(jì)算機(jī)強(qiáng)大的數(shù)字處理能力實(shí)現(xiàn)儀器的大局部功能,打破了傳統(tǒng)儀器的框架,形成的一種新的儀器模式。本設(shè)計(jì)采用NIPCI-6221數(shù)據(jù)采集卡,運(yùn)用虛擬儀器及其相關(guān)技術(shù)于多通道數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)。該系統(tǒng)具有數(shù)據(jù)同時(shí)采集、采集數(shù)據(jù)實(shí)時(shí)顯示、存儲(chǔ)與管理、報(bào)警記錄等功能,最后使用Web技術(shù)實(shí)現(xiàn)了采集數(shù)據(jù)的遠(yuǎn)程訪問(wèn)。本文首先概述了測(cè)控技術(shù)和虛擬儀器技術(shù)在國(guó)內(nèi)外的開(kāi)展及以后的開(kāi)展趨勢(shì),探討了虛擬儀器的總線及其標(biāo)準(zhǔn)、框架構(gòu)造、LabVIEW開(kāi)發(fā)平臺(tái),然后介紹了數(shù)據(jù)采集的相關(guān)理論,給出了數(shù)據(jù)采集系統(tǒng)的硬件構(gòu)造圖。在分析本系統(tǒng)功能需求的根基上,介紹了程序模塊化設(shè)計(jì)、數(shù)據(jù)庫(kù)、Web、多線程等設(shè)計(jì)中用到的技術(shù),最后一章給出了本設(shè)計(jì)的前面板圖。本設(shè)計(jì)是虛擬儀器在測(cè)控領(lǐng)域的一次成功嘗試。實(shí)踐證明虛擬儀器是一種優(yōu)秀的解決方案,能夠高效的實(shí)現(xiàn)各種測(cè)控任務(wù)。關(guān)鍵字:虛擬儀器;數(shù)據(jù)采集;MySQL;PHP;LabVIEW目錄摘要IAbstractII目錄IV第一章緒論11.1引言11.2課題背景11.2.1測(cè)控技術(shù)的國(guó)內(nèi)外開(kāi)展現(xiàn)狀11.2.2虛擬儀器技術(shù)開(kāi)展趨勢(shì)31.3本設(shè)計(jì)所做的工作51.3.1多通道數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)51.3.2遠(yuǎn)程數(shù)據(jù)檢索的設(shè)計(jì)6第二章虛擬儀器72.1虛擬儀器技術(shù)概述72.1.1虛擬儀器的概念72.1.2虛擬儀器的特點(diǎn)及優(yōu)勢(shì)72.1.3虛擬儀器和傳統(tǒng)儀器的比較82.1.4虛擬儀器測(cè)試系統(tǒng)的組成102.1.5虛擬儀器I/O接口設(shè)備112.1.6虛擬儀器的軟件構(gòu)造132.2虛擬儀器的開(kāi)發(fā)軟件132.2.1虛擬儀器的開(kāi)發(fā)語(yǔ)言132.2.2圖形化虛擬儀器開(kāi)發(fā)平臺(tái)——LabVIEW142.2.3基于LabVIEW平臺(tái)的虛擬儀器程序設(shè)計(jì)15第三章系統(tǒng)設(shè)計(jì)理論及硬件平臺(tái)的實(shí)現(xiàn)173.1PC機(jī)173.2數(shù)據(jù)采集理論173.2.1數(shù)據(jù)采集技術(shù)概論173.2.2采集系統(tǒng)的一般組成及各局部功能描述193.2.3傳感器213.2.4信號(hào)調(diào)理213.2.5輸入信號(hào)的類(lèi)型223.2.6輸入信號(hào)的連接方式253.2.7測(cè)量系統(tǒng)分類(lèi)253.2.8選擇適宜的測(cè)量系統(tǒng)273.3數(shù)據(jù)采集卡的選擇293.3.1數(shù)據(jù)采集卡的主要性能指標(biāo)303.3.2數(shù)據(jù)采集卡(DAQ卡)的組成313.3.3NIPCI-6221數(shù)據(jù)采集卡313.4本設(shè)計(jì)總體硬件框圖32第四章系統(tǒng)軟件設(shè)計(jì)的相關(guān)技術(shù)334.1程序模塊化設(shè)計(jì)概述334.1.1程序設(shè)計(jì)的模塊化原則334.1.2軟件系統(tǒng)的模塊化設(shè)計(jì)原則344.1.3本設(shè)計(jì)的軟件系統(tǒng)模塊劃分354.2數(shù)據(jù)庫(kù)技術(shù)364.2.1數(shù)據(jù)庫(kù)技術(shù)概述364.2.2ADO與數(shù)據(jù)庫(kù)的交互技術(shù)384.2.3MySQL數(shù)據(jù)庫(kù)384.3Web技術(shù)394.3.1Web技術(shù)概述394.3.2PHP技術(shù)414.3.3遠(yuǎn)程數(shù)據(jù)訪問(wèn)系統(tǒng)434.4多線程技術(shù)434.4.1Windows的多線程機(jī)制434.4.2LabVIEW與多線程444.4.3多線程技術(shù)在本設(shè)計(jì)中的應(yīng)用444.5系統(tǒng)具體應(yīng)用程序的實(shí)現(xiàn)454.5.1數(shù)據(jù)采集局部程序454.5.2數(shù)據(jù)保存局部程序454.5.3歷史數(shù)據(jù)查詢(xún)局部程序464.5.4報(bào)警記錄局部程序46第五章系統(tǒng)軟件的具體實(shí)現(xiàn)r485.1登錄系統(tǒng)485.2通道參數(shù)配置495.3實(shí)時(shí)數(shù)據(jù)顯示505.4歷史數(shù)據(jù)查詢(xún)505.5報(bào)警記錄51第六章總結(jié)53致謝54參考文獻(xiàn)55附錄遠(yuǎn)程數(shù)據(jù)檢索系統(tǒng)代碼57緒論引言測(cè)控技術(shù)在現(xiàn)代科學(xué)技術(shù)、工業(yè)生產(chǎn)和國(guó)防科技等諸多領(lǐng)域中應(yīng)用十分廣泛,它的現(xiàn)代化已被認(rèn)為是科學(xué)技術(shù)、國(guó)防現(xiàn)代化的重要條件和明顯標(biāo)志。20世紀(jì)70年代以來(lái),計(jì)算機(jī)、微電子等技術(shù)迅猛開(kāi)展,在其推動(dòng)下,測(cè)控儀器與技術(shù)不斷進(jìn)步,相繼誕生了智能儀器、PC儀器、VXI儀器、虛擬儀器及互換性虛擬儀器等微機(jī)化儀器及其自動(dòng)測(cè)控系統(tǒng),計(jì)算機(jī)與現(xiàn)代化儀器設(shè)備間的界限日漸模糊,測(cè)控領(lǐng)域和范圍不斷拓寬[1]。近年來(lái),以計(jì)算機(jī)為中心、以網(wǎng)絡(luò)為核心的網(wǎng)絡(luò)化測(cè)控技術(shù)與網(wǎng)絡(luò)化測(cè)控系統(tǒng)得到越來(lái)越多的應(yīng)用,尤其是在航空航天等國(guó)防科技領(lǐng)域。網(wǎng)絡(luò)化的測(cè)控系統(tǒng)大體上由兩局部組成:測(cè)控終端與傳輸介質(zhì),隨著個(gè)人計(jì)算機(jī)的高速開(kāi)展,測(cè)控終端的位置越來(lái)越多的被個(gè)人計(jì)算機(jī)所占據(jù),其中,軟件系統(tǒng)是計(jì)算機(jī)系統(tǒng)的核心,甚至是整個(gè)測(cè)控系統(tǒng)的靈魂,應(yīng)用于測(cè)控領(lǐng)域的軟件系統(tǒng)稱(chēng)為監(jiān)控軟件。傳輸介質(zhì)組成的通信網(wǎng)絡(luò)主要完成數(shù)據(jù)的通信與采集,這種數(shù)據(jù)采集系統(tǒng)是整個(gè)測(cè)控系統(tǒng)的主體,是完成測(cè)控任務(wù)的主力。因此,這種“監(jiān)控軟件-數(shù)據(jù)采集系統(tǒng)〞構(gòu)架的測(cè)控系統(tǒng)構(gòu)造在很多領(lǐng)域都得到了廣泛的應(yīng)用,并形成了一套完整的理論[1]。課題背景測(cè)控技術(shù)的國(guó)內(nèi)外開(kāi)展現(xiàn)狀早期的測(cè)控系統(tǒng)采用大型儀表集中對(duì)各個(gè)重要設(shè)備的狀態(tài)進(jìn)展監(jiān)控,通過(guò)操作盤(pán)進(jìn)展集中式操作;而計(jì)算機(jī)測(cè)控系統(tǒng)是以計(jì)算機(jī)為主體,加上檢測(cè)裝置、執(zhí)行機(jī)構(gòu)與被控對(duì)象(生產(chǎn)過(guò)程)共同構(gòu)成的整體。系統(tǒng)中的計(jì)算機(jī)實(shí)現(xiàn)生產(chǎn)過(guò)程的檢測(cè)、監(jiān)視和控制功能。由于通信協(xié)議不開(kāi)放,因此這種測(cè)控系統(tǒng)是一個(gè)自封閉系統(tǒng),一般只能完成單一的測(cè)控功能,一般通過(guò)接口,如RS-232或GPIB接口可與本地計(jì)算機(jī)或其他儀器設(shè)備進(jìn)展簡(jiǎn)單互連[1]。隨著科學(xué)技術(shù)的開(kāi)展,在我國(guó)國(guó)防、通信、航天、航空、氣象、環(huán)境監(jiān)測(cè)、制造等領(lǐng)域,要求測(cè)控和處理的信息量越來(lái)越大、速度越來(lái)越快。同時(shí)測(cè)控對(duì)象的空間位置日益分散,測(cè)控任務(wù)日益復(fù)雜,測(cè)控系統(tǒng)日益龐大,因此,提出了測(cè)控現(xiàn)場(chǎng)化、遠(yuǎn)程化、網(wǎng)絡(luò)化的要求。傳統(tǒng)的單機(jī)儀器己遠(yuǎn)遠(yuǎn)不能適應(yīng)大數(shù)量、高質(zhì)量的信息采集要求,產(chǎn)生了由計(jì)算機(jī)控制的測(cè)控系統(tǒng),系統(tǒng)內(nèi)單元通過(guò)各種總線互連,進(jìn)展信息的傳輸。網(wǎng)絡(luò)化的測(cè)控技術(shù)興起于國(guó)外,是在計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、通信技術(shù)高速開(kāi)展,以及對(duì)大容量分布式測(cè)控的大量需求背景下開(kāi)展起來(lái)。主要可分為以下幾個(gè)階段。第一階段:起始于20世紀(jì)70年代通用儀器總線(GPIB)的出現(xiàn),GPIB實(shí)現(xiàn)了計(jì)算機(jī)與測(cè)控系統(tǒng)的首次結(jié)合,使得測(cè)量?jī)x器從獨(dú)立的手工操作單臺(tái)儀器開(kāi)場(chǎng)走向計(jì)算機(jī)控制的多臺(tái)儀器的測(cè)控系統(tǒng)。此階段是網(wǎng)絡(luò)化測(cè)控系統(tǒng)的雛形與起始階段。第二階段:起始于20世紀(jì)80年代VXI標(biāo)準(zhǔn)化儀器總線的出現(xiàn),VXI系統(tǒng)可以將大型計(jì)算機(jī)昂貴的外設(shè)、VXI設(shè)備、通信線路等硬件資源以及大型數(shù)據(jù)庫(kù)程序等軟件資源納入網(wǎng)絡(luò),使得這些珍貴的資源得以共享。此階段是網(wǎng)絡(luò)化測(cè)控系統(tǒng)的初步開(kāi)展階段。第三階段:隨著技術(shù)的開(kāi)展,現(xiàn)場(chǎng)總線技術(shù)的出現(xiàn)帶動(dòng)了現(xiàn)場(chǎng)總線控制系統(tǒng)(FCS)的迅速開(kāi)展,使得可以在一個(gè)工廠范圍內(nèi)通過(guò)總線將成千上萬(wàn)個(gè)智能傳感器/變送器等智能化的儀表組成一個(gè)網(wǎng)絡(luò)化測(cè)控儀器系統(tǒng),此階段是網(wǎng)絡(luò)化測(cè)控系統(tǒng)的快速開(kāi)展階段。第四階段:在對(duì)現(xiàn)代化要求極高的領(lǐng)域,傳統(tǒng)的測(cè)控系統(tǒng)已經(jīng)逐漸無(wú)法滿(mǎn)足用戶(hù)的要求。許多部門(mén)或大型企業(yè)迫切要求構(gòu)建基于Internet或大型局域網(wǎng)的網(wǎng)絡(luò)化測(cè)控系統(tǒng),即通常所說(shuō)的分布式測(cè)控網(wǎng)絡(luò),此階段是網(wǎng)絡(luò)化測(cè)控系統(tǒng)開(kāi)展的成熟階段。虛擬儀器技術(shù)開(kāi)展趨勢(shì)虛擬儀器是微電子、通信、計(jì)算機(jī)等現(xiàn)代科學(xué)技術(shù)高速開(kāi)展的產(chǎn)物。自從1785年庫(kù)侖創(chuàng)造靜電扭秤,1834年哈里斯提出靜電電表構(gòu)造以來(lái),電測(cè)儀表和電子儀器隨相關(guān)技術(shù)的進(jìn)步、儀器儀表元器件質(zhì)量的提高和測(cè)量理論方法的改良得到飛速開(kāi)展。有一種較普遍地說(shuō)法將測(cè)量?jī)x器的開(kāi)展分為五個(gè)階段,如圖1.1所示。圖1.1測(cè)量技術(shù)的開(kāi)展從十九世紀(jì)初到二十世紀(jì)末,測(cè)量?jī)x器經(jīng)歷了模擬儀器、電子儀器、數(shù)字儀器、智能儀器等階段,開(kāi)展到現(xiàn)在的虛擬儀器。模擬儀器主要有模擬式電壓表、電流表等,這些儀表解決了當(dāng)時(shí)對(duì)某些量的測(cè)量的需求。從二十世紀(jì)初到五十年代左右,測(cè)量?jī)x器的材料性能得到改善出現(xiàn)了電子管,同時(shí)測(cè)量理論和方法與電子技術(shù)、控制技術(shù)相結(jié)合,出現(xiàn)了以記錄儀和示波器為代表的電子儀表五十年代以后隨著晶體管和集成電路的出現(xiàn)以及應(yīng)用電子技術(shù)的開(kāi)展將數(shù)字技術(shù)成功地應(yīng)用到測(cè)量?jī)x器。這時(shí)電子控制集成電路和計(jì)算機(jī)技術(shù)開(kāi)場(chǎng)融為一體成為測(cè)量?jī)x器的主要特征。七十年代初第一片微處理器問(wèn)世,微型計(jì)算機(jī)技術(shù)從此開(kāi)展迅猛,在其影響下測(cè)量?jī)x器呈現(xiàn)出新的活力并取得了長(zhǎng)足進(jìn)步。伴隨微電子技術(shù)、計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)的迅速開(kāi)展及在電工電子測(cè)量技術(shù)領(lǐng)域的應(yīng)用,測(cè)量?jī)x器也不斷進(jìn)步和開(kāi)展,出現(xiàn)了智能儀器。智能儀器是將微機(jī)置于儀器內(nèi)部,使儀器具有控制、存儲(chǔ)、運(yùn)算、邏輯判斷及自動(dòng)操作等智能特點(diǎn),并在測(cè)量準(zhǔn)確度、靈敏度、可靠性、自動(dòng)化程度、運(yùn)用能力及解決測(cè)量技術(shù)問(wèn)題的深度和廣度等方面都有明顯的進(jìn)步。這種內(nèi)置微處理器的儀器,既能進(jìn)展自動(dòng)測(cè)試又能完成數(shù)據(jù)處理,可取代局部的腦力勞動(dòng)。隨著電子技術(shù)、微計(jì)算機(jī)技術(shù)的開(kāi)展,智能儀器的智能水平不斷提高。但是在數(shù)字化儀器、智能儀器階段基本上沒(méi)有擺脫傳統(tǒng)儀器那種獨(dú)立使用、手動(dòng)操作的模式,難以勝任更復(fù)雜、多任務(wù)的測(cè)量需求。為解決這樣的問(wèn)題,總線式儀器與系統(tǒng)應(yīng)運(yùn)而生。人們創(chuàng)造制造出CAMAC、RS-232和GPIB等多種儀器通訊接口總線,用于將多臺(tái)智能儀器連在一起,以構(gòu)成更復(fù)雜的測(cè)試系統(tǒng)。1982年美國(guó)西北儀器公司總裁德·伯克提出了微機(jī)化儀器的概念,也就是人們現(xiàn)在常提到的卡式儀器。卡式儀器是虛擬儀器的雛形,是將傳統(tǒng)獨(dú)立式儀器的測(cè)量電路局部與接口局部集合在一起制成儀器功能卡,將其插入微機(jī)的內(nèi)部插槽或外部插件箱中形成的儀器。PC總線儀器系統(tǒng)是卡式儀器的一種,它是利用PC機(jī)內(nèi)部的總線,把假設(shè)干塊儀器卡插在PC機(jī)內(nèi)部或外部擴(kuò)展機(jī)箱內(nèi)而組成的。插卡總線機(jī)箱與PC機(jī)間的通信,可利用RS-232、GPIB接口總線或以太網(wǎng)電纜等進(jìn)展。雖然許多廠家通過(guò)定義新的儀器總線,不斷對(duì)卡式儀器進(jìn)展改良,但其大多是在微機(jī)內(nèi)總線的插槽上進(jìn)展開(kāi)發(fā),沒(méi)有統(tǒng)一標(biāo)準(zhǔn),且各廠家生產(chǎn)的插卡尺寸大小不一,設(shè)備兼容性較差。在這種情況下,用戶(hù)自然會(huì)提出標(biāo)準(zhǔn)化的要求。1987年,美國(guó)的惠普和泰克等5家公司在VME總線的根基上,聯(lián)合提出了一種新型總線系統(tǒng)-VXI(VMEeXtensionForInstrumentation)總線,即由微機(jī)總線VME擴(kuò)展而成的微機(jī)化儀器專(zhuān)用總線。1997年美國(guó)NI公司推出了一種新的儀器總線標(biāo)準(zhǔn)PXI總線標(biāo)準(zhǔn)。制定PXI標(biāo)準(zhǔn)的目的是為了將PC的性能價(jià)格比優(yōu)勢(shì)和PCI總線面向儀器領(lǐng)域的必要擴(kuò)展結(jié)合起來(lái),以期形成一種主流的虛擬儀器測(cè)試平臺(tái)。相對(duì)VXI儀器,按PXI總線標(biāo)準(zhǔn)制成的PXI儀器具有成本低、便于組成便攜式測(cè)試系統(tǒng)等優(yōu)點(diǎn)[2]。這些以PC為核心、由測(cè)量功能軟件支持,具有虛擬控制面板、必要儀器硬件和通信能力的PC儀器或VXI儀器就是虛擬儀器。虛擬儀器技術(shù)的出現(xiàn),使得用戶(hù)可以自己定義儀器,靈活地設(shè)計(jì)儀器系統(tǒng),滿(mǎn)足多種多樣的實(shí)際需求。隨著虛擬儀器軟件開(kāi)發(fā)平臺(tái)及硬件的開(kāi)展,基于虛擬儀器的儀器系統(tǒng)的開(kāi)發(fā)周期更短,費(fèi)用更低,測(cè)量速度、準(zhǔn)確度及可復(fù)用性提高,且更便于相應(yīng)儀器系統(tǒng)的維護(hù)和擴(kuò)展[3]。當(dāng)今社會(huì)正處于一個(gè)正在高速開(kāi)展的狀態(tài)中,要在有限的時(shí)空內(nèi)實(shí)現(xiàn)大量的信息交換,隨之而來(lái)的是信息密度急劇增大,因而在研究和生產(chǎn)過(guò)程中要求數(shù)據(jù)采集系統(tǒng)對(duì)信息的處理速度越來(lái)越高,功能越來(lái)越強(qiáng)。先進(jìn)的數(shù)據(jù)采集系統(tǒng),不僅希望設(shè)備能夠單獨(dú)進(jìn)展數(shù)據(jù)采集,還希望他們之間能夠互相通信,構(gòu)成數(shù)據(jù)采集系統(tǒng),甚至是測(cè)試網(wǎng)絡(luò)系統(tǒng),實(shí)現(xiàn)信息共享,以便對(duì)眾多的被測(cè)信號(hào)進(jìn)展比照、綜合和自動(dòng)分析、從而得出準(zhǔn)確的判斷。然而傳統(tǒng)的數(shù)據(jù)采集儀器在此方面受到很大的限制?;谔摂M儀器技術(shù)的數(shù)據(jù)采集系統(tǒng)的提出在一定程度上解決了傳統(tǒng)數(shù)據(jù)采集所面臨的問(wèn)題,虛擬儀器數(shù)據(jù)采集系統(tǒng)成為當(dāng)今數(shù)據(jù)采集系統(tǒng)開(kāi)展的重要方向。本文正是在虛擬儀器技術(shù)的根基上對(duì)多通道數(shù)據(jù)采集系統(tǒng)進(jìn)展了設(shè)計(jì),實(shí)現(xiàn)多路信號(hào)的采集,并對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)展實(shí)時(shí)顯示、記錄、分析處理。虛擬儀器的出現(xiàn)是儀器開(kāi)展史上的一場(chǎng)革命,代表著儀器開(kāi)展的最新趨勢(shì)和新方向,并且是信息技術(shù)的重要領(lǐng)域擴(kuò)大,對(duì)科學(xué)技術(shù)的開(kāi)展和工業(yè)生產(chǎn)將產(chǎn)生不可估量的影響。本設(shè)計(jì)所做的工作多通道數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)本設(shè)計(jì)以3個(gè)通道進(jìn)展設(shè)計(jì),從傳感器來(lái)的模擬輸入信號(hào),經(jīng)過(guò)信號(hào)調(diào)理后,輸入到NIPCI-6221數(shù)據(jù)采集卡,然后經(jīng)過(guò)PCI總線送入PC機(jī),由軟件進(jìn)展數(shù)據(jù)處理,包括數(shù)據(jù)的平均值濾波,采樣波形的實(shí)時(shí)顯示,并以一定的時(shí)間間隔插入數(shù)據(jù)庫(kù)進(jìn)展歷史數(shù)據(jù)保存,邊采集邊保存,然后通過(guò)數(shù)據(jù)庫(kù)技術(shù)實(shí)現(xiàn)了歷史數(shù)據(jù)的檢索。遠(yuǎn)程數(shù)據(jù)檢索的設(shè)計(jì)關(guān)于遠(yuǎn)程數(shù)據(jù)檢索局部,因?yàn)閿?shù)據(jù)已保存到數(shù)據(jù)庫(kù)里,通過(guò)網(wǎng)絡(luò)很容易進(jìn)展訪問(wèn)。本設(shè)計(jì)采用Apache+PHP+MySQL服務(wù)器套件來(lái)實(shí)現(xiàn)了采集數(shù)據(jù)的遠(yuǎn)程訪問(wèn)。虛擬儀器虛擬儀器技術(shù)概述虛擬儀器的概念虛擬儀器的概念是由美國(guó)國(guó)家儀器公司〔NationalInstruments〕最先提出的[4][5]。所謂虛擬儀器是基于計(jì)算機(jī)的軟硬件測(cè)試平臺(tái),它可代替?zhèn)鹘y(tǒng)的測(cè)量?jī)x器,如示波器、邏輯分析儀、信號(hào)發(fā)生器、頻譜分析儀等;可集成于自動(dòng)控制、工業(yè)控制系統(tǒng)之中;可自由構(gòu)建成專(zhuān)有儀器系統(tǒng)。虛擬儀器是智能儀器之后的新一代測(cè)量?jī)x器。虛擬儀器的核心技術(shù)思想就是“軟件即是儀器〞。該技術(shù)把儀器分為計(jì)算機(jī)、儀器硬件和應(yīng)用軟件三局部。虛擬儀器以通用計(jì)算機(jī)和配備標(biāo)準(zhǔn)數(shù)字接口的測(cè)量?jī)x器〔包括GPIB、RS-232等傳統(tǒng)儀器以及新型的VXI模塊化儀器〕為根基,將儀器硬件連接到各種計(jì)算機(jī)平臺(tái)上,直接利用計(jì)算機(jī)豐富的軟硬件資源,將計(jì)算機(jī)硬件〔處理器、存儲(chǔ)器、顯示器〕和測(cè)量?jī)x器〔頻率計(jì)、示波器、信號(hào)源〕等硬件資源與計(jì)算機(jī)軟件資源〔包括數(shù)據(jù)的處理、控制、分析和表達(dá)、過(guò)程通訊以及圖形用戶(hù)界面〕有機(jī)的結(jié)合起來(lái)。虛擬儀器的特點(diǎn)及優(yōu)勢(shì)虛擬儀器是基于計(jì)算機(jī)的功能化硬件模塊和計(jì)算機(jī)軟件構(gòu)成的電子測(cè)試儀器,而軟件是虛擬儀器的核心[6][7][8],如圖2.1所示,其中軟件的根基局部是設(shè)備驅(qū)動(dòng)軟件,而這些標(biāo)準(zhǔn)的儀器驅(qū)動(dòng)軟件使得系統(tǒng)的開(kāi)發(fā)與儀器的硬件變化無(wú)關(guān)。這是虛擬儀器最大的優(yōu)點(diǎn)之一,有了這一點(diǎn),儀器的開(kāi)發(fā)和換代時(shí)間將大大縮短。虛擬儀器中應(yīng)用程序?qū)⒖蛇x硬件〔如GPIB,VXI,RS-232,DAQ板〕和可重復(fù)用庫(kù)函數(shù)等軟件結(jié)合在一起,實(shí)現(xiàn)了儀器模塊間的通信、定時(shí)與觸發(fā)。源代碼庫(kù)函數(shù)為用戶(hù)構(gòu)造自己的虛擬儀器〔VI〕系統(tǒng)提供了基本的軟件模塊。由于VI的模塊化、開(kāi)放性和靈活性,以及軟件是關(guān)鍵的特點(diǎn),當(dāng)用戶(hù)的測(cè)試要求變化時(shí)可以方便地由用戶(hù)自己來(lái)增減硬、軟件模塊,或重新配置現(xiàn)有系統(tǒng)以滿(mǎn)足新的測(cè)試要求。這樣,當(dāng)用戶(hù)從一個(gè)工程轉(zhuǎn)向另一個(gè)工程時(shí),就能簡(jiǎn)單地構(gòu)造出新的VI系統(tǒng)而不喪失己有的硬件和軟件資源。圖2.1虛擬儀器開(kāi)發(fā)框圖虛擬儀器技術(shù)的優(yōu)勢(shì)在于可由用戶(hù)定義自己的專(zhuān)用儀器系統(tǒng),且功能靈活,很容易構(gòu)建,所以應(yīng)用面極為廣泛。虛擬儀器技術(shù)十分符合國(guó)際上流行的“硬件軟件化〞的開(kāi)展趨勢(shì),因而常被稱(chēng)作“軟件儀器〞。它功能強(qiáng)大,可實(shí)現(xiàn)示波器、邏輯分析儀、頻譜儀、信號(hào)發(fā)生器等多種普通儀器全部功能,配以專(zhuān)用探頭和軟件還可檢測(cè)特定系統(tǒng)的參數(shù),如汽車(chē)發(fā)動(dòng)機(jī)參數(shù)、汽油標(biāo)號(hào)、爐窯溫度、血液脈搏波、心電參數(shù)等多種數(shù)據(jù);它操作靈活,完全圖形化界面,風(fēng)格簡(jiǎn)約,符合傳統(tǒng)設(shè)備的使用習(xí)慣,用戶(hù)不經(jīng)培訓(xùn)即可迅速掌握操作規(guī)程。虛擬儀器和傳統(tǒng)儀器的比較虛擬儀器具有傳統(tǒng)獨(dú)立儀器無(wú)法比較的優(yōu)勢(shì)〔如表1-1所示〕。在高速度、高帶寬和專(zhuān)業(yè)測(cè)試領(lǐng)域,獨(dú)立儀器具有無(wú)可替代的優(yōu)勢(shì)。在中低檔測(cè)試領(lǐng)域,虛擬儀器可取代一局部獨(dú)立儀器的工作,但完成復(fù)雜環(huán)境下的自動(dòng)化測(cè)試是虛擬儀器的拿手好戲,是傳統(tǒng)的獨(dú)立儀器難以勝任的,甚至不可思議的工作。1〕傳統(tǒng)儀器的面板只有一個(gè),上面布置了種類(lèi)繁多的顯示和操作元件。由此導(dǎo)致許多識(shí)讀和操作錯(cuò)誤。虛擬儀器與之不同,它可以通過(guò)在幾個(gè)分面板上的操作來(lái)實(shí)現(xiàn)比較復(fù)雜的功能。這樣,在每個(gè)分面板上就可以實(shí)現(xiàn)功能操作的單純化和面板布置的簡(jiǎn)潔化,從而提高操作的正確性和便捷性。同時(shí),虛擬儀器的面板上的顯示元件和操作元件的種類(lèi)與形式不受標(biāo)準(zhǔn)元件和加工工藝的限制,由編程來(lái)實(shí)現(xiàn),設(shè)計(jì)者可以根據(jù)用戶(hù)的要求和操作需要來(lái)設(shè)計(jì)儀器面板。2〕在通用硬件平臺(tái)確定后,軟件取代傳統(tǒng)儀器中由硬件完成的儀器功能。3〕儀器的功能是由用戶(hù)根據(jù)需要用軟件來(lái)定義,不是事先由廠家定義的。4〕儀器性能的改良和功能擴(kuò)展只需更新相關(guān)軟件設(shè)計(jì),不需購(gòu)置新儀器。5〕虛擬儀器開(kāi)放、靈活,與計(jì)算機(jī)同步開(kāi)展,與網(wǎng)絡(luò)及其他周邊設(shè)備互聯(lián)。6〕由于其以PC為核心,使得許多數(shù)據(jù)處理的過(guò)程不必像過(guò)去那樣由測(cè)試儀器本身來(lái)完成,而是在軟件的支持下,利用PC機(jī)CPU的強(qiáng)大的數(shù)據(jù)處理功能來(lái)完成,使得基于虛擬儀器的測(cè)試系統(tǒng)的測(cè)試精度、速度大為提高,實(shí)現(xiàn)自動(dòng)化、智能化、多任務(wù)測(cè)量。7〕可方便地存貯和交換測(cè)試數(shù)據(jù),測(cè)試結(jié)果的表達(dá)方式更加豐富多樣。8〕虛擬儀器在高性?xún)r(jià)比的條件下,降低系統(tǒng)開(kāi)發(fā)和維護(hù)費(fèi)用,縮短技術(shù)更新周期。表1.1虛擬儀器與傳統(tǒng)儀器的比較虛擬儀器傳統(tǒng)儀器開(kāi)發(fā)維護(hù)費(fèi)用低開(kāi)發(fā)維護(hù)費(fèi)用高技術(shù)更新周期短〔0.5~1年〕技術(shù)更新周期短〔5~10年〕軟件是關(guān)鍵硬件是關(guān)鍵價(jià)格低價(jià)格昂貴開(kāi)放、靈活與計(jì)算機(jī)同步,可重復(fù)用和重配置固定可用網(wǎng)絡(luò)聯(lián)絡(luò)周邊各儀器只可連有限的設(shè)備自動(dòng)化、智能化、多功能、遠(yuǎn)距離傳輸功能單一,操作不便近年來(lái),隨著網(wǎng)絡(luò)技術(shù)的開(kāi)展,己經(jīng)形成了網(wǎng)絡(luò)虛擬儀器。這是一種新型的基于Web技術(shù)的虛擬儀器,使得虛擬儀器測(cè)試系統(tǒng)成為Internet/Intranet的一局部,實(shí)現(xiàn)現(xiàn)場(chǎng)監(jiān)控和管理。在當(dāng)前流行的C/S/D網(wǎng)絡(luò)模式下,利用嵌入式技術(shù)〔包括數(shù)據(jù)庫(kù)嵌入和網(wǎng)絡(luò)模塊的嵌入〕可以充分利用有效資源,提高測(cè)試效率。虛擬儀器測(cè)試系統(tǒng)的組成虛擬儀器是基于計(jì)算機(jī)的儀器。計(jì)算機(jī)和儀器的密切結(jié)合是目前儀器開(kāi)展的一個(gè)重要方向。這種結(jié)合基本有兩種方式,一種是將計(jì)算機(jī)裝入儀器,其典型的例子就是所謂智能化的儀器。隨著計(jì)算機(jī)功能的日益強(qiáng)大以及其體積的日趨縮小,這類(lèi)儀器功能也越來(lái)越強(qiáng)大,目前已經(jīng)出現(xiàn)含嵌入式系統(tǒng)的儀器。另一種方式是將儀器裝入計(jì)算機(jī)。以通用的計(jì)算機(jī)硬件及操作系統(tǒng)為依托,實(shí)現(xiàn)各種儀器功能,虛擬儀器主要是指這種方式[9]。虛擬儀器的組成與傳統(tǒng)儀器一樣,主要由數(shù)據(jù)采集與控制、數(shù)據(jù)分析和處理、結(jié)果顯示三局部組成。如圖2.2所示。圖2.2虛擬儀器的內(nèi)部功能的劃分對(duì)于傳統(tǒng)儀器,這三個(gè)局部幾乎均由硬件完成;對(duì)于虛擬儀器,前一局部由硬件構(gòu)成,后兩局部主要由軟件實(shí)現(xiàn)。與傳統(tǒng)儀器相比,虛擬儀器設(shè)計(jì)日趨模塊化、標(biāo)準(zhǔn)化,設(shè)計(jì)工作量大大減小。通常虛擬儀器測(cè)試系統(tǒng)硬件組成局部是由傳感器部件、信號(hào)調(diào)理及信號(hào)采集部件〔如外置或內(nèi)置數(shù)據(jù)采集卡、圖形圖像采集卡及攝像機(jī)及其用于輔助測(cè)量并能與計(jì)算機(jī)通訊的常規(guī)儀器等〕、通用計(jì)算機(jī)、打印機(jī)等構(gòu)成。系統(tǒng)軟件局部通常用專(zhuān)用的虛擬儀器開(kāi)發(fā)語(yǔ)言〔如LabVIEW〕編寫(xiě)而成,并可通過(guò)Internet實(shí)現(xiàn)網(wǎng)絡(luò)擴(kuò)展。虛擬儀器I/O接口設(shè)備I/O接口設(shè)備主要用來(lái)完成被測(cè)輸入信號(hào)的采集、放大、模數(shù)轉(zhuǎn)換。可根據(jù)實(shí)際情況采用不同的I/O接口硬件設(shè)備,如數(shù)據(jù)采集卡/板(DAQ)、GPIB總線儀器、VXI總線儀器、串口儀器、USB等。虛擬儀器的構(gòu)成主要有五種類(lèi)型[9],如圖2.3所示。圖2.3虛擬儀器構(gòu)成方式1〕DAQ(DataAcquisition)數(shù)據(jù)采集卡是指基于計(jì)算機(jī)標(biāo)準(zhǔn)總線(如ISA、PCI、USB等)的內(nèi)置功能插卡。其中USB是最新技術(shù)的數(shù)據(jù)采集卡,具有精度高,可攜性好等優(yōu)點(diǎn),它更加充分地利用計(jì)算機(jī)的資源,大大增加了測(cè)試系統(tǒng)的靈活性和擴(kuò)展性;利用DAQ卡可方便快速地構(gòu)建虛擬儀器系統(tǒng)。在性能上,隨著A/D轉(zhuǎn)換技術(shù),濾波技術(shù)和信號(hào)調(diào)理技術(shù)的開(kāi)展,DAQ卡的采樣速率已達(dá)1GB/s,精度高達(dá)24位,通道數(shù)高達(dá)64個(gè),并具有數(shù)字I/O,模擬I/O和計(jì)數(shù)器/定時(shí)器等通道。各儀器廠家生產(chǎn)了大量的DAQ卡功能模塊供用戶(hù)選擇,如示波器、串行數(shù)據(jù)分析儀、動(dòng)態(tài)信號(hào)分析儀、任意波形發(fā)生器等。在計(jì)算機(jī)上掛接多個(gè)DAQ功能模塊,配合相應(yīng)的軟件,就可以構(gòu)成一臺(tái)具有多功能的測(cè)試儀器。這種基于計(jì)算機(jī)的儀器,既具有高檔儀器的測(cè)量品質(zhì),又能滿(mǎn)足測(cè)量需求的多樣性。對(duì)我國(guó)大多數(shù)用戶(hù)來(lái)說(shuō),它具有很高的性能價(jià)格比,是一種特別適合我國(guó)國(guó)情的虛擬儀器方案。2〕GPIB(GeneralPurposeInterfaceBus)通用接口總線,是計(jì)算機(jī)和儀器的標(biāo)準(zhǔn)通信協(xié)議。GPIB的硬件規(guī)格和軟件協(xié)議以納入國(guó)際工業(yè)標(biāo)準(zhǔn)IEEE-488.1和IEEE-488.2,它是最早的儀器總線,目前多數(shù)儀器都配備了遵循IEEE-488的GPIB接口。典型的GPIB測(cè)試系統(tǒng)包括一臺(tái)計(jì)算機(jī),一塊基于GPIB總線的接口卡和多臺(tái)GPBI儀器軟件及相應(yīng)的傳感模塊硬件。每臺(tái)GPIB儀器有單獨(dú)的地址,由計(jì)算機(jī)控制操作。系統(tǒng)中的儀器可以增加、減少或更換,只需對(duì)計(jì)算機(jī)的控制軟件作相應(yīng)的改動(dòng)?;贕PIB總線構(gòu)造的接口卡數(shù)據(jù)傳輸速率一般低于500kb/s,不適合與對(duì)系統(tǒng)速度要求較高的應(yīng)用。3〕VXI(VMEbuseXtensionforInstrumentation)是VME總線在儀器領(lǐng)域的擴(kuò)展,上個(gè)世紀(jì)1993年VXI總線1.4版本被批準(zhǔn)為IEEE-1155標(biāo)準(zhǔn),成為開(kāi)放式工業(yè)標(biāo)準(zhǔn)。儀器專(zhuān)用總線在吸收IEEE-488的成功經(jīng)歷根基上,增加了10MHz時(shí)鐘線,模擬和數(shù)字混合總線,星形總線等高速總線,定時(shí)關(guān)系嚴(yán)格,兼有計(jì)算機(jī)總線和儀器總線的優(yōu)點(diǎn)。4〕PXI(PCIeXtensionForInstrumentation)是CompactPCI總線在儀器領(lǐng)域的擴(kuò)展,是NI公司于1997年發(fā)布的一種新的開(kāi)放性、模塊化儀器總線標(biāo)準(zhǔn)。其核心是CompactPCI構(gòu)造和MicrosoftWindows軟件。PXI是在PCI內(nèi)核技術(shù)上增加了成熟的技術(shù)標(biāo)準(zhǔn)和要求形成的。PXI增加了用于多個(gè)板卡同步的觸發(fā)總線和10MHz參考時(shí)鐘、用于準(zhǔn)確定時(shí)的星形觸發(fā)總線,以及用于相鄰模塊間高速通信的局部總線等,來(lái)滿(mǎn)足實(shí)驗(yàn)和測(cè)量用戶(hù)的要求。PXI兼容CompactPCI機(jī)械標(biāo)準(zhǔn),并增加了空氣冷卻裝置、環(huán)境測(cè)試〔溫度、濕度、振動(dòng)和沖擊實(shí)驗(yàn)〕等要求。這樣可保證多廠商產(chǎn)品的互操作性和系統(tǒng)的易集成性。5〕串口系統(tǒng)是以Serial標(biāo)準(zhǔn)總線儀器與計(jì)算機(jī)為儀器精簡(jiǎn)平臺(tái)組成的虛擬測(cè)試系統(tǒng)[10]。RS-232總線是早期采用的通用串行總線,將帶有RS-232標(biāo)準(zhǔn)總線接口的儀器作為I/O接口設(shè)備,通過(guò)RS-232串口總線與計(jì)算機(jī)組成虛擬儀器系統(tǒng)目前仍然是虛擬儀器構(gòu)成方式之一,主要適用于速度較低的測(cè)試系統(tǒng)。虛擬儀器的軟件構(gòu)造虛擬儀器技術(shù)的核心是軟件,其軟件基本構(gòu)造如圖2.4所示。用戶(hù)可以采用各種編程軟件來(lái)開(kāi)發(fā)自己所需要的應(yīng)用軟件。以美國(guó)NI公司的軟件產(chǎn)品LabVIEW和LabWindows/CVI為代表的虛擬儀器專(zhuān)用開(kāi)發(fā)平臺(tái)是當(dāng)前流行的集成化開(kāi)發(fā)工具。這些軟件開(kāi)發(fā)平臺(tái)提供了強(qiáng)大的儀器軟面板設(shè)計(jì)工具和各種數(shù)據(jù)處理工具,再加上虛擬儀器硬件廠商提供的各種硬件的驅(qū)動(dòng)程序模塊,簡(jiǎn)化了虛擬儀器的設(shè)計(jì)工作。隨著軟件技術(shù)的迅速開(kāi)展,軟件開(kāi)發(fā)的模塊化、復(fù)用化,和各種硬件儀器驅(qū)動(dòng)軟件的模塊化、標(biāo)準(zhǔn)化,虛擬儀器軟件開(kāi)發(fā)將變得更加快速、方便。圖2.4虛擬儀器軟件構(gòu)造虛擬儀器的開(kāi)發(fā)軟件虛擬儀器的開(kāi)發(fā)語(yǔ)言虛擬儀器系統(tǒng)的開(kāi)發(fā)語(yǔ)言有:標(biāo)準(zhǔn)C,VisualC++,VisualBasic等通用程序開(kāi)發(fā)語(yǔ)言。但直接由這些語(yǔ)言開(kāi)發(fā)虛擬儀器系統(tǒng),是有相當(dāng)難度的。除了要花大量時(shí)間進(jìn)展測(cè)試系統(tǒng)面板設(shè)計(jì)外,還要編制大量的設(shè)備驅(qū)動(dòng)程序和底層控制程序。這些工作對(duì)于那些不熟悉這方面知識(shí)的工程設(shè)計(jì)人員來(lái)說(shuō),要花費(fèi)大量時(shí)間和精力,這樣直接影響了系統(tǒng)開(kāi)發(fā)的周期和性能。除了通用程序開(kāi)發(fā)語(yǔ)言以外,還有一些專(zhuān)用的虛擬儀器開(kāi)發(fā)語(yǔ)言和軟件,其中有影響的開(kāi)發(fā)軟件有:NI公司的LabVIEW,LabWindows/CVI。LabVIEW采用圖形化編程方案,是非常實(shí)用的開(kāi)發(fā)軟件。LabWindows/CVI是為熟悉C語(yǔ)言的開(kāi)發(fā)人員準(zhǔn)備的,是在Windows環(huán)境下的標(biāo)準(zhǔn)ANSIC開(kāi)發(fā)環(huán)境。除此以外還有HP公司的HP-VEE,HP-TIG開(kāi)發(fā)平臺(tái),美國(guó)Tektronix公司的Ez-Test,Tek-TNS平臺(tái)軟件,這些都是國(guó)際上公認(rèn)的優(yōu)秀的虛擬儀器開(kāi)發(fā)軟件平臺(tái)[11]。圖形化虛擬儀器開(kāi)發(fā)平臺(tái)——LabVIEWLabVIEW(LaboratoryVirtualInstrumentEngineering)是一種圖形化的編程語(yǔ)言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所承受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件。LabVIEW集成了與滿(mǎn)足GPIB、VXI、RS-232和RS-485協(xié)議的硬件及數(shù)據(jù)采集卡通訊的全部功能。它還內(nèi)置了便于應(yīng)用TCP/PI、ActiveX等軟件標(biāo)準(zhǔn)的庫(kù)函數(shù),是一個(gè)功能強(qiáng)大且靈活的軟件。利用它可以方便地建設(shè)自己的虛擬儀器,其圖形化的界面使得編程及使用過(guò)程都更加形象化。傳統(tǒng)的文本式編程是一種順序的設(shè)計(jì)思路,設(shè)計(jì)者必須寫(xiě)出執(zhí)行的語(yǔ)句。而LabVIEW是基于數(shù)據(jù)流的工作方式,同時(shí)是基于圖形化的編程,這使得設(shè)計(jì)者不必掌握大量的編程語(yǔ)言和程序設(shè)計(jì)技巧便可設(shè)計(jì)出虛擬儀器系統(tǒng)[11]。目前,在以PC機(jī)為根基的測(cè)試和工控軟件中,LabVIEW的市場(chǎng)普及率僅次于C++/C語(yǔ)言。LabVIEW具有一系列無(wú)與倫比的優(yōu)點(diǎn):首先,LabVIEW作為圖形化語(yǔ)言編程,采用流程圖式的編程,運(yùn)用的設(shè)備圖標(biāo)與科學(xué)家、工程師們習(xí)慣的大局部圖標(biāo)基本一致,這使得編程過(guò)程和思維過(guò)程非常相似;同時(shí),LabVIEW提供了豐富的VI庫(kù)和儀器面板素材庫(kù),近600種設(shè)備的驅(qū)動(dòng)程序(可擴(kuò)大)如GPIB設(shè)備控制、VXI總線控制、串行口設(shè)備控制、以及數(shù)據(jù)分析、顯示和存儲(chǔ);并且LabVIEW還提供了專(zhuān)門(mén)用于程序開(kāi)發(fā)的工具箱,使得用戶(hù)能夠設(shè)置斷點(diǎn),調(diào)試過(guò)程中可以使用數(shù)據(jù)探針和動(dòng)態(tài)執(zhí)行程序來(lái)觀察數(shù)據(jù)的傳輸過(guò)程,更加便于程序的調(diào)試。因此,LabVIEW受到越來(lái)越多工程師、科學(xué)家的普遍青睞。利用LabVIEW,可產(chǎn)生獨(dú)立運(yùn)行的可執(zhí)行文件,它是一個(gè)真正的32編譯器。像許多通用的軟件一樣,LabVIEW提供了Windows、UNIX、Linux、MacintoshOS等多種版本[12]?;贚abVIEW平臺(tái)的虛擬儀器程序設(shè)計(jì)所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),它包括前面板(FrontPanel)、流程圖(BlockDiagram)以及圖標(biāo)/連結(jié)器(Icon/Connector)三局部。1〕前面板:前面板是圖形用戶(hù)界面,也就是VI的虛擬儀器面板,這一界面上有用戶(hù)輸入和顯示輸出兩類(lèi)對(duì)象,具體表現(xiàn)有開(kāi)關(guān)、旋鈕、圖形以及其他控制和顯示對(duì)象。但并非畫(huà)出兩個(gè)控件后程序就可以運(yùn)行,在前面板后還有一個(gè)與之對(duì)應(yīng)的流程圖。2〕流程圖:流程圖提供VI的圖形化源程序。在流程圖中對(duì)VI編程,以控制和操縱定義在前面板上的輸入和輸出功能。流程圖中包括前面板上的控件連線端子,還有一些前面板上沒(méi)有,但編程必須有的東西,例如函數(shù)、構(gòu)造和連線等。如果將VI與傳統(tǒng)儀器相比較,那么前面板上的控件對(duì)應(yīng)的就是傳統(tǒng)儀器上的按鈕、顯示屏等控件,而流程圖上的連線端子相當(dāng)于傳統(tǒng)儀器箱內(nèi)的硬件電路。在許多情況下,使用VI可以仿真?zhèn)鹘y(tǒng)儀器,不僅在屏幕上出現(xiàn)一個(gè)惟妙惟肖的標(biāo)準(zhǔn)儀器面板,而且其功能也與傳統(tǒng)標(biāo)準(zhǔn)儀器相差無(wú)幾。這種設(shè)計(jì)思想的優(yōu)點(diǎn)表達(dá)在兩方面:①類(lèi)似流程圖的設(shè)計(jì)思想,很容易被工程人員承受和掌握,特別是那些沒(méi)有很多程序設(shè)計(jì)經(jīng)歷的工程人員。②設(shè)計(jì)的思路和運(yùn)行過(guò)程清晰而且直觀。如通過(guò)使用數(shù)據(jù)探針、高亮執(zhí)行調(diào)試等多種方法,程序以較慢的速度運(yùn)行,使沒(méi)有執(zhí)行的代碼顯示灰色,執(zhí)行后的代碼會(huì)高亮顯示,同時(shí)在線顯示數(shù)據(jù)流線上的數(shù)據(jù)值,完全跟蹤數(shù)據(jù)流的運(yùn)行。這為程序的調(diào)試和參數(shù)的設(shè)定帶來(lái)諸多的方便。3〕圖標(biāo)/連接設(shè)計(jì):這局部的設(shè)計(jì)突出表達(dá)了虛擬儀器模塊化程序設(shè)計(jì)的思想。在設(shè)計(jì)大型自動(dòng)檢測(cè)系統(tǒng)時(shí)一步完成一個(gè)復(fù)雜系統(tǒng)的設(shè)計(jì)是相當(dāng)有難度的。而在LabVIEW中提供的圖標(biāo)/連接工具正是為實(shí)現(xiàn)模塊化設(shè)計(jì)而準(zhǔn)備的。設(shè)計(jì)者可把一個(gè)復(fù)雜自動(dòng)檢測(cè)系統(tǒng)分為多個(gè)子系統(tǒng),每一個(gè)都可完成一定的功能。這樣設(shè)計(jì)的優(yōu)點(diǎn)表達(dá)在如下幾方面:①把一個(gè)復(fù)雜自動(dòng)檢測(cè)系統(tǒng)分為多個(gè)子系統(tǒng),程序設(shè)計(jì)思路清晰,給設(shè)計(jì)者調(diào)試程序帶來(lái)了諸多的方便。同時(shí)也對(duì)于將來(lái)系統(tǒng)的維護(hù)提供了便利。②一個(gè)復(fù)雜自動(dòng)檢測(cè)系統(tǒng)分為多個(gè)子系統(tǒng),每一個(gè)子系統(tǒng)都是一個(gè)完整的功能模塊,這樣把測(cè)試功能細(xì)節(jié)化,便于實(shí)現(xiàn)軟件復(fù)用,大大節(jié)省軟件研發(fā)周期,提高系統(tǒng)設(shè)計(jì)的可靠性。③便于實(shí)現(xiàn)“測(cè)試集成〞和虛擬儀器庫(kù)的思想。同時(shí)為實(shí)現(xiàn)虛擬儀器設(shè)計(jì)的靈活性提供了前提。系統(tǒng)設(shè)計(jì)理論及硬件平臺(tái)的實(shí)現(xiàn)PC機(jī)虛擬儀器就是用通用計(jì)算機(jī)強(qiáng)大的數(shù)據(jù)處理能力代替以往需要硬件電路才能完成的功能,所以數(shù)據(jù)采集系統(tǒng)軟件運(yùn)行的計(jì)算機(jī)平臺(tái)的選擇至關(guān)重要??紤]到數(shù)據(jù)采集設(shè)備通常運(yùn)行在工業(yè)現(xiàn)場(chǎng),常常有較強(qiáng)的振動(dòng)、電源干擾和電磁干擾。為了保證記錄儀可靠的運(yùn)行,設(shè)計(jì)時(shí)選定工業(yè)計(jì)算機(jī)。工業(yè)計(jì)算機(jī)采取了抗干擾措施,有利于計(jì)算機(jī)平臺(tái)的可靠運(yùn)行。另一方面的考慮是工業(yè)計(jì)算機(jī)通常具有很多類(lèi)型的接口有利于功能進(jìn)一步擴(kuò)展的需要。推薦配置:處理器:Intel(R)Core(TM)2DuoCPUE6550@2.33GHz內(nèi)存:1GB硬盤(pán):160GB顯卡:128M數(shù)據(jù)采集理論該局部主要包括數(shù)據(jù)采集技術(shù)概述,傳感器,輸入信號(hào)的分析、調(diào)理以及測(cè)量系統(tǒng)的選擇,下面分別予以說(shuō)明。數(shù)據(jù)采集技術(shù)概論在計(jì)算機(jī)廣泛應(yīng)用的今天,數(shù)據(jù)采集的重要性是十分顯著的。它是計(jì)算機(jī)與外部物理世界連接的橋梁。各種類(lèi)型信號(hào)采集的難易程度差異很大。實(shí)際采集時(shí),噪聲也可能帶來(lái)一些麻煩。數(shù)據(jù)采集時(shí),有一些基本原理要注意,還有更多的實(shí)際的問(wèn)題要解決。假設(shè)現(xiàn)在對(duì)一個(gè)模擬信號(hào)x(t)每隔△t時(shí)間采樣一次。時(shí)間間隔△t被稱(chēng)為采樣間隔或者采樣周期。它的倒數(shù)l/△t被稱(chēng)為采樣頻率,單位是采樣數(shù)/每秒。t=0,△t,2△t,3△t……等等,x(t)的數(shù)值就被稱(chēng)為采樣值。所有x(0),x(△t),x(2△t)都是采樣值。這樣信號(hào)x(t)可以用一組分散的采樣值來(lái)表示:{x(0),x(△t),x(2△t),x(3△t),…,x(k△t),…}圖3.1顯示了一個(gè)模擬信號(hào)和它采樣后的采樣值。采樣間隔是△t,注意,采樣點(diǎn)在時(shí)域上是離散的。圖3.1模擬信號(hào)采樣圖如果對(duì)信號(hào)x(t)采集N個(gè)采樣點(diǎn),那么x(t)就可以用下面這個(gè)數(shù)列表示:X={x[0],x[l],x[2],x[3],…,x[N-l]}這個(gè)數(shù)列被稱(chēng)為信號(hào)x(t)的數(shù)字化顯示或者采樣顯示。這個(gè)數(shù)列中僅僅用下標(biāo)變量編制索引,而不含有任何關(guān)于采樣率(或△t)的信息。所以如果只知道該信號(hào)的采樣值,并不能知道它的采樣率,缺少了時(shí)間尺度,也不可能知道信號(hào)x(t)的頻率。根據(jù)采樣定理,最低采樣頻率必須是信號(hào)頻率的兩倍。反過(guò)來(lái)說(shuō),如果給定了采樣頻率,那么能夠正確顯示信號(hào)而不發(fā)生畸變的最大頻率叫做恩奎斯特頻率,它是采樣頻率的一半。如果信號(hào)中包含頻率高于奈奎斯特頻率的成分,信號(hào)將在直流和恩奎斯特頻率之間畸變。圖3.2和圖3.3顯示了一個(gè)信號(hào)分別用適宜的采樣率和過(guò)低的采樣率進(jìn)展采樣的結(jié)果。圖3.2適宜采樣率采樣波形圖3.3采樣率過(guò)低采樣波形采樣率過(guò)低的結(jié)果是復(fù)原的信號(hào)的頻率看上去與原始信號(hào)不同。這種信號(hào)畸變叫做混疊。出現(xiàn)的混頻偏差是輸入信號(hào)的頻率和最靠近的采樣率整數(shù)倍的差的絕對(duì)值。為了防止這種情況的發(fā)生,通常在信號(hào)被采集(A/D)之前,經(jīng)過(guò)一個(gè)低通濾波器,將信號(hào)中高于奈奎斯特頻率的信號(hào)成分濾去。理論上設(shè)置采樣頻率為被采集信號(hào)最高頻率成分的2倍就夠了,但實(shí)際上工程中選用5-10倍,有時(shí)為了較好地復(fù)原波形,甚至更高一些。采集系統(tǒng)的一般組成及各局部功能描述圖3.4數(shù)據(jù)采集構(gòu)造圖圖3.4表示了數(shù)據(jù)采集的構(gòu)造。在數(shù)據(jù)采集之前,程序?qū)?duì)采集板卡初始化,板卡上和內(nèi)存中的Buffer是數(shù)據(jù)采集存儲(chǔ)的中間環(huán)節(jié)。需要注意的兩個(gè)問(wèn)題是:是否使用緩沖是否使用外觸發(fā)啟動(dòng)、停頓或同步一個(gè)操作1〕緩沖(Buffers)這里的緩沖指的是PC內(nèi)存的一個(gè)區(qū)域(不是數(shù)據(jù)采集卡上的FIFO緩沖),它用降臨時(shí)存放數(shù)據(jù)。例如,你需要采集每秒采集幾千個(gè)數(shù)據(jù),在一秒內(nèi)顯示或圖形化所有數(shù)據(jù)是困難的。但是將采集卡的數(shù)據(jù)先送到Buffer,你就可以先將它們快速存儲(chǔ)起來(lái),稍后再重新找回它們顯示或分析。需要注意的是Buffer與采集操作的速度及容量有關(guān)。如果你的卡有DMA性能,模擬輸入操作就有一個(gè)通向計(jì)算機(jī)內(nèi)存的高速硬件通道,這就意味著所采集的數(shù)據(jù)可以直接送到計(jì)算機(jī)的內(nèi)存。不使用Buffer意味著對(duì)所采集的每一個(gè)數(shù)據(jù)你都必須及時(shí)處理(圖形化、分析等)。以下情況需要使用BufferI/O:①需要采集或產(chǎn)生許多樣本,其速率超過(guò)了實(shí)際顯示、存儲(chǔ)到硬件,或?qū)崟r(shí)分析的速度。②需要連續(xù)采集或產(chǎn)生AC數(shù)據(jù)(>10樣本/秒),并且要同時(shí)分析或顯示某些數(shù)據(jù)。③采樣周期必須準(zhǔn)確、均勻地通過(guò)數(shù)據(jù)樣本。以下情況可以不使用BufferI/O:①數(shù)據(jù)組短小,例如每秒只從兩個(gè)通道之一采集一個(gè)數(shù)據(jù)點(diǎn)。②需要縮減存儲(chǔ)器的開(kāi)支。2〕觸發(fā)(Triggering)觸發(fā)涉及初始化、終止或同步采集事件的任何方法。觸發(fā)器通常是一個(gè)數(shù)字或模擬信號(hào),其狀態(tài)可確定動(dòng)作的發(fā)生。軟件觸發(fā)最容易,你可以直接用軟件,例如使用布爾面板控制去啟動(dòng)/停頓數(shù)據(jù)采集。硬件觸發(fā)讓板卡上的電路管理觸發(fā)器,控制了采集事件的時(shí)間分配,有很高的準(zhǔn)確度。硬件觸發(fā)可進(jìn)一步分為外部觸發(fā)和內(nèi)部觸發(fā)。當(dāng)某一模擬入通道發(fā)生一個(gè)指定的電壓電平時(shí),讓卡輸出一個(gè)數(shù)字脈沖,這是內(nèi)部觸發(fā)。采集卡等待一個(gè)外部?jī)x器發(fā)出的數(shù)字脈沖到來(lái)后初始化采集卡,這是外部觸發(fā)。許多儀器提供數(shù)字輸出(常稱(chēng)為“triggerout〞)用于觸發(fā)特定的裝置或儀器,在這里,就是數(shù)據(jù)采集卡。以下情況使用軟件觸發(fā):用戶(hù)需要對(duì)所有采集操作有明確的控制,并且事件定時(shí)不需要非常準(zhǔn)確。以下情況使用硬件觸發(fā):①采集事件定時(shí)需要非常準(zhǔn)確。②用戶(hù)需要削減軟件開(kāi)支。③采集事件需要與外部裝置同步。傳感器傳感器局部是跟外界溝通的門(mén)戶(hù),負(fù)責(zé)把外界的各種物理信息,如光、壓力、溫度、聲音等物理信號(hào)變成電信號(hào)。因?yàn)楸粶y(cè)試對(duì)象的信號(hào)來(lái)源已經(jīng)是變換好了的電信號(hào),所以傳感器局部在設(shè)計(jì)中沒(méi)有得到具體表達(dá),但是這局部是設(shè)計(jì)過(guò)程中必需要考慮的。信號(hào)調(diào)理從傳感器得到的信號(hào)大多要經(jīng)過(guò)調(diào)理才能進(jìn)入數(shù)據(jù)采集設(shè)備,信號(hào)調(diào)理功能包括放大、隔離、濾波、鼓勵(lì)、線性化等。由于不同傳感器有不同的特性,除了這些通用功能外,還要根據(jù)具體傳感器的特性和要求來(lái)設(shè)計(jì)特殊的信號(hào)調(diào)理功能。信號(hào)調(diào)理的通用功能如下[15][16]:1〕放大微弱信號(hào)都要進(jìn)展放大以提高分辨率和降低噪聲,使調(diào)理后信號(hào)的電壓范圍和A/D的電壓范圍相匹配。信號(hào)調(diào)理模塊應(yīng)盡可能靠近信號(hào)源或傳感器,使得信號(hào)在受到傳輸信號(hào)的環(huán)境噪聲影響之前已被放大,使信噪比得到改善。2〕隔離隔離是指使用變壓器、光或電容耦合等方法在被測(cè)系統(tǒng)和測(cè)試系統(tǒng)之間傳遞信號(hào),防止直接的電連接。使用隔離的原因:是從安全的角度考慮;二是隔離可使從數(shù)據(jù)采集卡讀出來(lái)的數(shù)據(jù)不受地電位和輸入模式的影響。如果數(shù)據(jù)采集卡的地與信號(hào)地之間有電位差,而又不進(jìn)展隔離,那么就有可能形成接地回路,引起誤差。3〕濾波濾波的目的是從所測(cè)量的信號(hào)中除去不需要的成分。大多數(shù)信號(hào)調(diào)理模塊有低通濾波器,用來(lái)濾除噪聲。通常還需要抗混疊濾波器,濾除信號(hào)中感興趣的最高頻率以上的所有頻率的信號(hào)。另外,某些高性能的數(shù)據(jù)采集卡自身帶有抗混疊濾波器。4〕鼓勵(lì)信號(hào)調(diào)理也能夠?yàn)槟承﹤鞲衅魈峁┧璧墓膭?lì)信號(hào),比方應(yīng)變傳感器、熱敏電阻等就需要外界電源或電流鼓勵(lì)信號(hào)。很多信號(hào)調(diào)理模塊都提供電流源和電壓源以便給傳感器提供鼓勵(lì)。5〕線性化許多傳感器對(duì)被測(cè)量的響應(yīng)是非線性的,因而需要對(duì)其輸出信號(hào)進(jìn)展線性化,以補(bǔ)償傳感器帶來(lái)的誤差。目前,數(shù)據(jù)采集系統(tǒng)也可以利用軟件來(lái)解決這一問(wèn)題。6〕數(shù)字信號(hào)調(diào)理即使傳感器直接輸出數(shù)字信號(hào),有時(shí)也有必要進(jìn)展調(diào)理,其作用是將傳感器輸出的數(shù)字信號(hào)進(jìn)展必要的整形或電平調(diào)整。大多數(shù)數(shù)字信號(hào)調(diào)理模塊還提供其他一些電路模塊,使得用戶(hù)可以通過(guò)數(shù)據(jù)采集卡的數(shù)字I/O比直接控制電磁閥、電燈、電動(dòng)機(jī)等外部設(shè)備。輸入信號(hào)的類(lèi)型在進(jìn)展數(shù)據(jù)采集前,必須對(duì)要采集的信號(hào)有所了解,因?yàn)椴煌盘?hào)的測(cè)量方式和對(duì)采集系統(tǒng)的要求是不同的,只有了解被測(cè)信號(hào),才能選擇適宜的測(cè)量方式和采集系統(tǒng)。任意一個(gè)信號(hào)是隨時(shí)間而改變的物理量。一般情況下,信號(hào)所運(yùn)載信息是很廣泛的,比方:狀態(tài)(State)、速率(Rate)、電平(Level)、形狀(Shape)、頻率成分(FrequencyContent)。根據(jù)信號(hào)運(yùn)載信息方式的不同,可以將信號(hào)分為模擬或數(shù)字信號(hào)。數(shù)字信號(hào)又可分為開(kāi)關(guān)信號(hào)和脈沖信號(hào)。模擬信號(hào)則可分為直流、時(shí)域、頻域信號(hào)。1〕數(shù)字信號(hào)(Digital)第一類(lèi)數(shù)字信號(hào)是開(kāi)關(guān)信號(hào)(On-Off),如圖3.5所示。一個(gè)開(kāi)關(guān)信號(hào)運(yùn)載的信息與信號(hào)的瞬間狀態(tài)有關(guān)。TTL信號(hào)就是一個(gè)開(kāi)關(guān)信號(hào),一個(gè)TTL信號(hào)如果在2.0V到5.0V之間,就定義它為邏輯高電平,如果在0到0.8V之間,就定義為邏輯低電平。圖3.5開(kāi)關(guān)信號(hào)第二類(lèi)數(shù)字信號(hào)是脈沖信號(hào)(PulseTrain),如圖3.6所示。這種信號(hào)包括一系列的狀態(tài)轉(zhuǎn)換,信息就包含在狀態(tài)轉(zhuǎn)化發(fā)生的數(shù)目、轉(zhuǎn)換速率、一個(gè)轉(zhuǎn)換間隔或多個(gè)轉(zhuǎn)換間隔的時(shí)間里。圖3.6脈沖信號(hào)2〕模擬信號(hào)(Analog)模擬直流信號(hào)(DC)是靜止的或變化非常緩慢的模擬信號(hào),如圖3.7所示。圖3.7模擬直流信號(hào)直流信號(hào)最重要的信息是它在給定區(qū)間內(nèi)運(yùn)載的信息的幅度。常見(jiàn)的直流信號(hào)有溫度、流速、壓力、應(yīng)變等。采集系統(tǒng)在采集模擬直流信號(hào)時(shí),需要有足夠的精度以正確測(cè)量信號(hào)電平。模擬時(shí)域信號(hào)(TimeDomain)運(yùn)載的信息不僅有信號(hào)的電平,還有電平隨時(shí)間的變化,如圖3.8所示。在測(cè)量一個(gè)時(shí)域信號(hào)或者說(shuō)是波形時(shí),需要關(guān)注波形形狀的特性,如斜度、峰值等。為了測(cè)量一個(gè)時(shí)域信號(hào),必須有一個(gè)準(zhǔn)確的時(shí)間序列,間隔也要適宜,以保證信號(hào)的有用局部被采集到?,F(xiàn)實(shí)中存在許多不同的時(shí)域信號(hào),比方心臟跳動(dòng)信號(hào)、視頻信號(hào)等,測(cè)量它們通常是因?yàn)閷?duì)波形的某些方面的特性感興趣。圖3.8模擬時(shí)域信號(hào)模擬頻域信號(hào)(FrequencyDomain)與時(shí)域信號(hào)類(lèi)似,但從頻域信號(hào)中提取的信息是信號(hào)的頻域內(nèi)容,而不是波形的形狀,也不是隨時(shí)間變化的特性,如圖3.9所示。用于測(cè)量一個(gè)頻域信號(hào)的系統(tǒng)必須有必要的分析功能,用于從信號(hào)中提取頻域信息。為了實(shí)現(xiàn)這樣的數(shù)字信號(hào)處理,可以使用應(yīng)用軟件或特殊的DSP硬件來(lái)迅速而有效地分析信號(hào)。模擬頻域信號(hào)也很多,比方聲音信號(hào)、地球物理信號(hào)、傳輸信號(hào)等。圖3.9模擬頻域信號(hào)現(xiàn)實(shí)中的信號(hào)并不是互相排斥的,一個(gè)信號(hào)可能運(yùn)載有不只一種信息,可以用幾種方式來(lái)定義信號(hào)并測(cè)量它,用不同類(lèi)型的系統(tǒng)來(lái)測(cè)量同一個(gè)信號(hào),從信號(hào)中取出需要的各種信息。輸入信號(hào)的連接方式一個(gè)電壓信號(hào)可以分為接地和浮動(dòng)兩種類(lèi)型。測(cè)量系統(tǒng)可以分為差分(Differential)、參考地單端(RSE)、無(wú)參考地單端(NRSE)三種類(lèi)型。1〕接地信號(hào)接地信號(hào),就是將信號(hào)的一端與系統(tǒng)地連接起來(lái),如大地或建筑物的地。因?yàn)樾盘?hào)用的是系統(tǒng)地,所以與數(shù)據(jù)采集卡是共地的。接地最常見(jiàn)的例子是通過(guò)墻上的接地引出線,如信號(hào)發(fā)生器和電源。2〕浮動(dòng)信號(hào)一個(gè)不與任何地(如大地或建筑物的地)連接的電壓信號(hào)稱(chēng)為浮動(dòng)信號(hào),浮動(dòng)信號(hào)的每個(gè)端口都與系統(tǒng)地獨(dú)立。一些常見(jiàn)的浮動(dòng)信號(hào)的例子有電池、熱電偶、變壓器和隔離放大器。測(cè)量系統(tǒng)分類(lèi)1〕差分測(cè)量系統(tǒng)(DEF)差分測(cè)量系統(tǒng)中,信號(hào)輸入端與一個(gè)模擬入通道相連接。具有放大器的數(shù)據(jù)采集卡可配置成差分測(cè)量系統(tǒng)。圖3.10描述了一個(gè)8通道的差分測(cè)量系統(tǒng),用一個(gè)放大器通過(guò)模擬多路轉(zhuǎn)換器進(jìn)展通道間的轉(zhuǎn)換。標(biāo)有AIGND(模擬輸入地)的管腳就是測(cè)量系統(tǒng)的地。一個(gè)理想的差分測(cè)量系統(tǒng)僅能測(cè)出(+)和(-)輸入端口之間的電位差,完全不會(huì)測(cè)量到共模電壓。然而,實(shí)際應(yīng)用的板卡卻限制了差分測(cè)量系統(tǒng)抵抗共模電壓的能力,數(shù)據(jù)采集卡的共模電壓的范圍限制了相對(duì)與測(cè)量系統(tǒng)地的輸入電壓的波動(dòng)范圍。共模電壓的范圍關(guān)系到一個(gè)數(shù)據(jù)采集卡的性能,可以用不同的方式來(lái)消除共模電壓的影響。如果系統(tǒng)共模電壓超過(guò)允許范圍,需要限制信號(hào)地與數(shù)據(jù)采集卡的地之間的浮地電壓,以防止測(cè)量數(shù)據(jù)錯(cuò)誤。圖3.10八通道差分測(cè)量系統(tǒng)2〕參考地單端測(cè)量系統(tǒng)(RSE)一個(gè)RSE測(cè)量系統(tǒng),也叫做接地測(cè)量系統(tǒng),被測(cè)信號(hào)的一端接模擬輸入通道,另一端連接系統(tǒng)地AIGND。圖3.11表示了一個(gè)16通道的RSE測(cè)量系統(tǒng)。圖3.11十六通道RSE測(cè)量系統(tǒng)3〕無(wú)參考地單端測(cè)量系統(tǒng)(NRSE)在NRSE測(cè)量系統(tǒng)中,信號(hào)的一端接模擬輸入通道,另一端接一個(gè)公用參考端,但這個(gè)參考端電壓相對(duì)于測(cè)量系統(tǒng)的地來(lái)說(shuō)是不斷變化的。圖3.12說(shuō)明了一個(gè)NRSE測(cè)量系統(tǒng),其中AISENSE是測(cè)量的公共參考端,AIGND是系統(tǒng)的地。圖3.12十六通道NRSE測(cè)量系統(tǒng)選擇適宜的測(cè)量系統(tǒng)兩種信號(hào)源和三種測(cè)量系統(tǒng)一共可以組成如表3.1的六種連接方式:表3.1測(cè)量系統(tǒng)連接方式接地信號(hào)浮動(dòng)信號(hào)DEF☆☆RSE☆☆NRSE☆☆其中,推薦使用帶☆號(hào)的方式。從上表可以看出,浮動(dòng)信號(hào)和差分連接方式的系統(tǒng)較好。但實(shí)際測(cè)量時(shí)還要看情況而定。1〕測(cè)量接地信號(hào)測(cè)量接地信號(hào)最好采用差分或NRSE測(cè)量系統(tǒng)。如果采用RSE測(cè)量系統(tǒng)時(shí),將會(huì)給測(cè)量結(jié)果帶來(lái)較大的誤差。圖3.13表達(dá)了一個(gè)用RSE測(cè)量系統(tǒng)去測(cè)量一個(gè)接地信號(hào)源的弊端。在本例中,測(cè)量電壓Vm是測(cè)量信號(hào)電壓Vs和電位差DVg之和,其中DVg是信號(hào)地和測(cè)量地之間的電位差,這個(gè)電位差來(lái)自于接地回路電阻,可能會(huì)造成數(shù)據(jù)錯(cuò)誤。一個(gè)接地回路通常會(huì)在測(cè)量數(shù)據(jù)中引入頻率為電源頻率的交流和偏置直流干擾。一種防止接地回路形成的方法就是在測(cè)量信號(hào)前使用隔離方法,測(cè)量隔離之后的信號(hào)。如果信號(hào)電壓很高并且信號(hào)源和數(shù)據(jù)采集卡之間的連接阻抗很小,就可以采用RSE系統(tǒng),因?yàn)榇藭r(shí)接地回路電壓相對(duì)于信號(hào)電壓來(lái)說(shuō)很小,信號(hào)源電壓的測(cè)量值受到接地回路的影響可以忽略。圖3.13RSE測(cè)量系統(tǒng)測(cè)量浮動(dòng)信號(hào)2〕測(cè)量浮動(dòng)信號(hào)測(cè)量浮動(dòng)信號(hào)可以采用DEF、RSE、NRSE方式測(cè)量浮動(dòng)信號(hào)。在差分測(cè)量系統(tǒng)中,應(yīng)首先保證相對(duì)于測(cè)量地的信號(hào)的共模電壓在測(cè)量系統(tǒng)設(shè)備允許的范圍之內(nèi)。如果采用差分或NRSE測(cè)量系統(tǒng),放大器輸入偏置電流會(huì)導(dǎo)致浮動(dòng)信號(hào)電壓偏離數(shù)據(jù)采集卡的有效范圍。為了穩(wěn)住信號(hào)電壓,需要在每個(gè)測(cè)量端與測(cè)量地之間連接偏置電阻,如圖3.14所示。這樣就為放大器輸入到放大器的地提供了一個(gè)直流通路。這些偏置電阻的阻值應(yīng)該足夠大,這樣使得信號(hào)源可以相對(duì)于測(cè)量地浮動(dòng)。對(duì)低阻抗信號(hào)源來(lái)說(shuō),10kΩ到100kΩ的電阻比較適宜。如果輸入信號(hào)是直流,就只需要用一個(gè)電阻將(-)端與測(cè)量系統(tǒng)的地連接起來(lái)。然而如果信號(hào)源的阻抗相對(duì)較高,從免除干擾的角度而言,這種連接方式會(huì)導(dǎo)致系統(tǒng)不平衡。在信號(hào)源的阻抗足夠高的時(shí)候,應(yīng)該選取兩個(gè)等值電阻,一個(gè)連接信號(hào)高電平(+)到地,一個(gè)連接信號(hào)低電平(-)到地。如果輸入信號(hào)是交流,就需要兩個(gè)偏置電阻,以到達(dá)放大器的直流偏置通路的要求。圖3.14測(cè)量浮動(dòng)信號(hào)總的來(lái)說(shuō),不管測(cè)量接地還是浮動(dòng)信號(hào),差分測(cè)量系統(tǒng)是很好的選擇,因?yàn)樗坏乐沽私拥鼗芈犯蓴_,還防止了環(huán)境干擾。相反,RSE系統(tǒng)卻允許兩種干擾的存在,在所有輸入信號(hào)都滿(mǎn)足以下指標(biāo)時(shí),可以采用RSE測(cè)量方式:輸入信號(hào)是高電平(一般要超過(guò)1V);連線比較短(一般小于5米)并且環(huán)境干擾很小或屏蔽良好;所有輸入信號(hào)都與信號(hào)源共地。當(dāng)有一項(xiàng)不滿(mǎn)足要求時(shí),就要考慮使用差分測(cè)量方式。值得注意的一點(diǎn)是信號(hào)源的阻抗大小。電池、RTD、應(yīng)變片、熱電偶等信號(hào)源的阻抗很小,可以將這些信號(hào)源直接連接到數(shù)據(jù)采集卡上或信號(hào)調(diào)理硬件上。直接將高阻抗的信號(hào)源接到插入式板卡上會(huì)導(dǎo)致出錯(cuò)。為了更好的測(cè)量,輸入信號(hào)源的阻抗與插入式數(shù)據(jù)采集卡的阻抗相匹配。數(shù)據(jù)采集卡的選擇數(shù)據(jù)采集板卡的性能與眾多因素相關(guān),要根據(jù)具體情況來(lái)具體分析。所以在選擇數(shù)據(jù)采集卡構(gòu)成系統(tǒng)時(shí),首先必須對(duì)數(shù)據(jù)采集卡的性能指標(biāo)有所了解。數(shù)據(jù)采集卡的主要性能指標(biāo)1〕采樣頻率采樣頻率的上下,決定了在一定時(shí)間內(nèi)獲取原始信號(hào)信息的多少,為了能夠較好的再現(xiàn)原始信號(hào),不產(chǎn)生波形失真,采樣率必須要足夠高才行。根據(jù)奈奎斯特理論采樣頻率至少是原信號(hào)的兩倍,但實(shí)際中,一般都需要5~10倍。2〕采樣方法采集卡通常都有好幾個(gè)數(shù)據(jù)通道,如果所有的數(shù)據(jù)通道都輪流使用同一個(gè)放大器和A/D轉(zhuǎn)換器,要比每個(gè)通道單獨(dú)使用各自的經(jīng)濟(jì)的多,但這僅適用于對(duì)時(shí)間不是很重要的場(chǎng)合。如果采樣系統(tǒng)對(duì)時(shí)間要求嚴(yán)格,則必須同時(shí)采集,這就需要每個(gè)通道都有自己的放大和A/D轉(zhuǎn)換器。但是處于成本的考慮,現(xiàn)在普遍流行的是各個(gè)數(shù)據(jù)通道公用一套放大器和A/D轉(zhuǎn)換器。3〕分辨率ADC的位數(shù)越多,分辨率就越高,可區(qū)分的電壓就越小。例如,三位的A/D轉(zhuǎn)換把模擬電壓范圍分成23=8段,每段用二進(jìn)制代碼在000到111之間表示。因而,數(shù)字信號(hào)不能真實(shí)地反映原始信號(hào),因?yàn)橐痪植啃畔⒈宦┑袅恕H绻黾拥绞?,代碼數(shù)從8增加到212=4096,這樣就可以獲得就能獲得十分準(zhǔn)確的模擬信號(hào)數(shù)字化表示。4〕電壓動(dòng)態(tài)范圍電壓范圍指ADC能掃描到的最高和最低電壓。一般最好能夠使進(jìn)入采集卡的電壓范圍剛好與其符合,以便利用其可靠的分辨率范圍。例如,一個(gè)12位多功能DAQ卡,其可選的范圍從0到10V,或-5到+5V,其可選增益有1,2,5,10,20,50或100。電壓取值范圍從0到10V,增益為50,則理想分辯電壓是:5〕I/O通道數(shù)該參數(shù)說(shuō)明了數(shù)據(jù)采集卡所能夠采集的最多的信號(hào)路數(shù)。數(shù)據(jù)采集卡(DAQ卡)的組成1〕多路開(kāi)關(guān)。將各路信號(hào)輪流切換至放大器的輸入端,實(shí)現(xiàn)多參數(shù)多路信號(hào)的分時(shí)采集。2〕放大器。將切換進(jìn)入采集卡的信號(hào)放大至需要的量程內(nèi)。通常中的放大器都是增益可調(diào)的,使用者可根據(jù)需要來(lái)選擇不同的增益倍數(shù)。3〕采樣保持器。把采集到的信號(hào)瞬間值,保持在A/D轉(zhuǎn)換的過(guò)程中不變化。4〕A/D轉(zhuǎn)換器。將模擬的輸入信號(hào)轉(zhuǎn)化為數(shù)字量輸出,完成信號(hào)幅值的量化。目前,通常將采樣保持器和A/D轉(zhuǎn)換器集成在同一塊芯片上。以上四個(gè)局部是數(shù)據(jù)采集卡的重要組成局部,與其他的電路如定時(shí)/計(jì)數(shù)器、總線接口等電路儀器組成DAQ。NIPCI-6221數(shù)據(jù)采集卡NIPCI-6221是NI公司的M系列多功能數(shù)據(jù)采集卡,采用的是一個(gè)A/D轉(zhuǎn)換器,雖然是多路采集,實(shí)際上是分時(shí)工作的,所有在多路同時(shí)工作時(shí)采樣率會(huì)成倍降低。該板卡的主要性能如下:◆16路模擬信號(hào)輸入通道,采樣率為250kS/s,輸入范圍為-10V~+10V;◆2路模擬量輸出通道,分辨率為16位;◆24路數(shù)字I/O,數(shù)字觸發(fā);◆2個(gè)32位定時(shí)計(jì)數(shù)器;◆NI-DAQmx測(cè)試軟件和硬件配置支持;◆NI-MCal校準(zhǔn)支持;◆NIST校準(zhǔn)證書(shū)和多于70多種的信號(hào)調(diào)理模塊選擇?;谝陨显?,本設(shè)計(jì)選擇了NIPCI-6221數(shù)據(jù)采集卡。多通道數(shù)據(jù)采集系統(tǒng)總體硬件框圖整個(gè)系統(tǒng)從被測(cè)對(duì)象開(kāi)場(chǎng),通過(guò)傳感器轉(zhuǎn)換成電信號(hào),經(jīng)過(guò)信號(hào)調(diào)理模塊進(jìn)展簡(jiǎn)單的信號(hào)出來(lái),比方SCC-RTD01熱電阻調(diào)理模塊、SCC-TD02熱電偶調(diào)理模塊、SCC-SG04全橋應(yīng)變片調(diào)理模塊,將信號(hào)送至數(shù)據(jù)采集卡進(jìn)展采集,然后用軟件進(jìn)展處理。在采集過(guò)程中將數(shù)據(jù)保存到數(shù)據(jù)庫(kù)里,實(shí)現(xiàn)了歷史數(shù)據(jù)的遠(yuǎn)程訪問(wèn)。具體框圖見(jiàn)圖3.15多通道數(shù)據(jù)采集系統(tǒng)硬件構(gòu)造圖。圖3.15多通道數(shù)據(jù)采集系統(tǒng)硬件構(gòu)造圖系統(tǒng)軟件設(shè)計(jì)的相關(guān)技術(shù)軟件是虛擬儀器的關(guān)鍵。設(shè)計(jì)一個(gè)虛擬儀器系統(tǒng),在硬件平臺(tái)確定之后,就可以通過(guò)設(shè)計(jì)不同的軟件,實(shí)現(xiàn)不同的儀器功能。在設(shè)計(jì)、實(shí)現(xiàn)虛擬儀器的軟件系統(tǒng)時(shí),需要考慮眾多因素,如硬件需求、計(jì)算機(jī)硬件、操作系統(tǒng);軟件是否建設(shè)在開(kāi)放的構(gòu)造上,是否需要編程經(jīng)歷利用此軟件程序是否能在不同的計(jì)算機(jī)平臺(tái)上移植?將來(lái)能否方便的擴(kuò)展虛擬儀器的功能。由于選用專(zhuān)用的開(kāi)發(fā)軟件,必須具有一定的儀器以及數(shù)據(jù)采集設(shè)備配合使用。程序模塊化設(shè)計(jì)概述數(shù)據(jù)采集系統(tǒng)的性能在很大程度上取決于其應(yīng)用軟件的研究與開(kāi)發(fā),所以在明確了系統(tǒng)設(shè)計(jì)目標(biāo)之后,應(yīng)該采用好的程序開(kāi)發(fā)方法,如構(gòu)造化設(shè)計(jì)方法、模塊化思想、多線程以及軟件系統(tǒng)的評(píng)價(jià)標(biāo)準(zhǔn)等等。程序設(shè)計(jì)的模塊化原則模塊化構(gòu)造是所有設(shè)計(jì)良好的軟件系統(tǒng)的基本特點(diǎn),任何一個(gè)大的程序系統(tǒng),總是由假設(shè)干功能相對(duì)獨(dú)立的模塊組成。好的軟件構(gòu)造應(yīng)表達(dá)自頂向下的控制方式,模塊之間的控制表現(xiàn)為統(tǒng)帥和附屬的關(guān)系[13]。圖4.1模塊化構(gòu)造信息抽象與信息隱含是模塊的基本特征。模塊(Module)實(shí)際上反映了數(shù)據(jù)(Data)與過(guò)程(Process)的抽象。在模塊化問(wèn)題求解時(shí),在最高抽象級(jí)可以采用面向問(wèn)題的環(huán)境語(yǔ)言的抽象術(shù)語(yǔ)進(jìn)展描述;而在較低抽象級(jí),則可采用過(guò)程性術(shù)語(yǔ)。模塊化的概念加上逐步求精的方法,就把面向問(wèn)題的術(shù)語(yǔ)和面向?qū)崿F(xiàn)的術(shù)語(yǔ)兩者結(jié)合起來(lái)。模塊獨(dú)立性有兩個(gè)定性的標(biāo)準(zhǔn)度量:即塊內(nèi)聯(lián)系(內(nèi)聚)與塊間聯(lián)系(耦合),如圖4.1所示。塊間聯(lián)系是指模塊之間的聯(lián)系,塊間聯(lián)系越小,模塊獨(dú)立性越高。塊內(nèi)聯(lián)系是指模塊內(nèi)部各局部(語(yǔ)句與語(yǔ)句段)之間的聯(lián)系。一個(gè)模塊的塊內(nèi)聯(lián)系大,模塊獨(dú)立性會(huì)提高。好的模塊構(gòu)造,塊間聯(lián)系應(yīng)盡可能小,塊內(nèi)聯(lián)系應(yīng)盡可能大。軟件系統(tǒng)的模塊化設(shè)計(jì)原則為使研制出的軟件具有良好的可靠性、易維護(hù)性、易擴(kuò)大性及易裝卸性,軟件設(shè)計(jì)應(yīng)遵循標(biāo)準(zhǔn)化的模塊化設(shè)計(jì)原則[13]。1〕自頂向下逐步求精的設(shè)計(jì)方法軟件設(shè)計(jì)往往在開(kāi)場(chǎng)時(shí)不了解問(wèn)題的全部細(xì)節(jié),只能對(duì)問(wèn)題做出全局性的決策,即設(shè)計(jì)表征解決問(wèn)題一般策略的抽象算法。對(duì)抽象算法做進(jìn)一步求精,進(jìn)入下一層抽象。在求精過(guò)程的每一步,抽象概念(語(yǔ)句或數(shù)據(jù))都被精細(xì)化。2〕根據(jù)邏輯功能劃分物理模塊①模塊的分解:消除重復(fù)的功能局部,使得模塊的塊內(nèi)聯(lián)系較高,塊間聯(lián)系較低。②模塊的合并;③模塊的復(fù)制。3〕模塊的作用范圍應(yīng)處在模塊的控制范圍之內(nèi)模塊的作用范圍是指模塊內(nèi)判定影響的范圍。只要某模塊中含有依賴(lài)于某種判定操作,則該模塊就處于該判定的作用范圍之內(nèi)。4〕依據(jù)邏輯功能確定模塊之間的調(diào)用關(guān)系模塊之間的調(diào)用與被調(diào)用,決定于模塊各自的邏輯功能,因而對(duì)模塊的扇入扇出并無(wú)加以限制的必要。一般來(lái)講,底層模塊的扇入較高,頂層模塊的扇出較高。5〕模塊接口應(yīng)保持簡(jiǎn)明降低模塊接口的復(fù)雜性,是模塊設(shè)計(jì)中必須考慮的問(wèn)題。保持模塊接口的簡(jiǎn)明,一方面須減少模塊間傳遞的信息量,更重要的是使所傳遞的必要信息具有明確的邏輯含義。6〕模塊應(yīng)保持單入口性質(zhì)單入口模塊,易于理解。由于副作用的減少,可以降低錯(cuò)誤的發(fā)生率。模塊的出口可以有多個(gè),但均應(yīng)具有明確的邏輯含義。7〕模塊構(gòu)造增加中間判斷層次,提高可擴(kuò)大性圖4.2-a,模塊A調(diào)用B,以后擴(kuò)大時(shí)還要讓A調(diào)用C(圖4.2-b)。這樣在擴(kuò)展時(shí),除增加C外,尚須修改A,這種修改可能是困難的。圖4.2-c,增加了一個(gè)中間判斷層模塊F,以一個(gè)開(kāi)關(guān)量Flag決定模塊A要調(diào)用的模塊,這樣對(duì)A的修改,僅局限于Flag的設(shè)置,大大較少了工作量。圖4.2模塊構(gòu)造增加判斷層次本設(shè)計(jì)的軟件系統(tǒng)模塊劃分系統(tǒng)程序的主要功能為模塊劃分的標(biāo)準(zhǔn),其他包括系統(tǒng)管理,數(shù)據(jù)采集,數(shù)據(jù)保存,歷史數(shù)據(jù)的查詢(xún)等功能。具體構(gòu)造見(jiàn)圖4.3多通道數(shù)據(jù)采集功能模塊圖。圖4.3多通道數(shù)據(jù)采集功能模塊圖數(shù)據(jù)庫(kù)技術(shù)數(shù)據(jù)庫(kù)技術(shù)主要研究若何存儲(chǔ)、使用和管理數(shù)據(jù),是計(jì)算機(jī)數(shù)據(jù)管理技術(shù)開(kāi)展的新階段,也是計(jì)算機(jī)技術(shù)中開(kāi)展最快、應(yīng)用最廣的技術(shù)之一。當(dāng)前,數(shù)據(jù)庫(kù)技術(shù)已成為現(xiàn)代計(jì)算機(jī)信息系統(tǒng)和應(yīng)用系統(tǒng)開(kāi)發(fā)的核心技術(shù),數(shù)據(jù)庫(kù)已成為計(jì)算機(jī)信息系統(tǒng)和應(yīng)用系統(tǒng)的組成核心,從某種意義來(lái)講,數(shù)據(jù)庫(kù)的建設(shè)規(guī)模、數(shù)據(jù)庫(kù)信息量的大小和使用頻度已成為衡量一個(gè)國(guó)家信息化程度的重要標(biāo)志。數(shù)據(jù)庫(kù)技術(shù)概述數(shù)據(jù)庫(kù)技術(shù)涉及到以下幾個(gè)最重要的概念:1〕數(shù)據(jù)庫(kù)(DataBase)是長(zhǎng)期儲(chǔ)存于計(jì)算機(jī)內(nèi)、有組織的、可共享的數(shù)據(jù)集合。數(shù)據(jù)庫(kù)中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲(chǔ)存,具有較小的冗余度、較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性,并可為一定范圍內(nèi)的各種用戶(hù)共享。數(shù)據(jù)庫(kù)不僅要反映數(shù)據(jù)本身的內(nèi)容,而且要反映數(shù)據(jù)之間的聯(lián)系。在數(shù)據(jù)庫(kù)中用數(shù)據(jù)模型〔DataModel〕這個(gè)工具來(lái)抽象、表示和處理現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。2〕數(shù)據(jù)模型是數(shù)據(jù)特征的抽象,描述的是數(shù)據(jù)的共性。數(shù)據(jù)模型應(yīng)滿(mǎn)足三個(gè)方面的要求:一是能比較真實(shí)地模擬現(xiàn)實(shí)世界;二是容易為人們所理解;三是便于在計(jì)算機(jī)上實(shí)現(xiàn)。一種數(shù)據(jù)模型要很好地滿(mǎn)足這三個(gè)方面的要求在目前尚很困難,在數(shù)據(jù)庫(kù)系統(tǒng)中針對(duì)不同的使用對(duì)象和應(yīng)用目的,采用逐步抽象的方法,在不同層次采用不同的數(shù)據(jù)模型,一般分為三層,即物理層、邏輯層和概念層。物理層是數(shù)據(jù)抽象的最低層,用來(lái)描述數(shù)據(jù)物理存儲(chǔ)構(gòu)造和存儲(chǔ)方法。邏輯層是數(shù)據(jù)抽象的中間層,描述數(shù)據(jù)庫(kù)數(shù)據(jù)整體的邏輯構(gòu)造。概念層是抽象級(jí)別的最高層,其目的是按用戶(hù)的觀點(diǎn)來(lái)對(duì)世界建模。例如實(shí)體-聯(lián)系模型〔Entity-RelationalModel,簡(jiǎn)稱(chēng)ER模型〕。3〕數(shù)據(jù)庫(kù)管理系統(tǒng)〔DBMS,DataBaseManagementSystem〕是操縱和管理數(shù)據(jù)庫(kù)的軟件系統(tǒng),它由一組計(jì)算機(jī)程序構(gòu)成,管理并控制數(shù)據(jù)資源的使用。它是數(shù)據(jù)庫(kù)系統(tǒng)的核心,主要是實(shí)現(xiàn)對(duì)共享數(shù)據(jù)有效的組織、管理和存取,它的基本功能包括以下幾個(gè)方面:①數(shù)據(jù)定義功能:對(duì)數(shù)據(jù)庫(kù)的構(gòu)造進(jìn)展描述,包括外模式、模式、內(nèi)模式的定義;數(shù)據(jù)庫(kù)完整性的定義;安全保密定義〔如用戶(hù)口令、級(jí)別、存取權(quán)限〕;存取路徑〔如索引〕的定義等。②數(shù)據(jù)操縱功能:DBMS還提供數(shù)據(jù)操縱語(yǔ)言,用戶(hù)可以使用DML操縱數(shù)據(jù),實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的基本操作,如檢索、插入、刪除和修改等。DML有兩類(lèi):一類(lèi)是宿主型語(yǔ)言,一類(lèi)是自立型語(yǔ)言。③數(shù)據(jù)庫(kù)的運(yùn)行管理:數(shù)據(jù)庫(kù)在建設(shè)、運(yùn)用和維護(hù)時(shí)由數(shù)據(jù)庫(kù)管理系統(tǒng)統(tǒng)一管理、統(tǒng)一控制,以保證數(shù)據(jù)的安全性、完整性、多用戶(hù)對(duì)數(shù)據(jù)的并發(fā)使用及發(fā)生故障后的系統(tǒng)恢復(fù),從而保證數(shù)據(jù)庫(kù)系統(tǒng)的正常運(yùn)行。④數(shù)據(jù)組織、存儲(chǔ)和管理功能:DBMS要分類(lèi)組織、存儲(chǔ)和管理各種數(shù)據(jù),包括數(shù)據(jù)字典、用戶(hù)數(shù)據(jù)、存取路徑等。⑤數(shù)據(jù)庫(kù)的建設(shè)和維護(hù)功能:它包括數(shù)據(jù)庫(kù)初始數(shù)據(jù)的輸入、轉(zhuǎn)換功能,數(shù)據(jù)庫(kù)的轉(zhuǎn)儲(chǔ)、恢復(fù)功能,數(shù)據(jù)庫(kù)的重組織功能和性能監(jiān)視、分析功能等。⑥其他功能:DBMS與網(wǎng)絡(luò)中其他軟件系統(tǒng)的通信功能、DBMS之間或文件系統(tǒng)的數(shù)據(jù)轉(zhuǎn)換功能;異構(gòu)數(shù)據(jù)庫(kù)之間的互訪和互操作功能等。ADO與數(shù)據(jù)庫(kù)的交互技術(shù)ADO是獨(dú)立于開(kāi)發(fā)工具和開(kāi)發(fā)語(yǔ)言的數(shù)據(jù)訪問(wèn)接口,它提供了程序開(kāi)發(fā)人員、應(yīng)用程序?qū)崟r(shí)存取各類(lèi)數(shù)據(jù)庫(kù)的能力,可以輕松地完成對(duì)各類(lèi)數(shù)據(jù)庫(kù)的查詢(xún),存取等操作。ADO又被稱(chēng)為通用數(shù)據(jù)訪問(wèn)(UDA),其數(shù)據(jù)源包括數(shù)據(jù)庫(kù),電子郵件,文件,文本,圖形等。使用ADO不僅可以讀取Access和SQLServer數(shù)據(jù)庫(kù),也可以讀取其他與ODBC兼容的數(shù)據(jù)庫(kù)。ADO對(duì)數(shù)據(jù)庫(kù)的操作步驟一般分為如下幾步:①創(chuàng)立數(shù)據(jù)源名(DSN);②創(chuàng)立數(shù)據(jù)庫(kù)連接(Connection);③創(chuàng)立數(shù)據(jù)庫(kù)對(duì)象;④操作數(shù)據(jù)庫(kù);⑤關(guān)閉數(shù)據(jù)庫(kù)對(duì)象和連接。MySQL數(shù)據(jù)庫(kù)MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),開(kāi)發(fā)者為瑞典MySQLAB公司。目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。SQL是一種標(biāo)準(zhǔn)化的語(yǔ)言,它使得存儲(chǔ)、更新和存取信息更容易。例如,你能用SQL語(yǔ)言為一個(gè)網(wǎng)站檢索產(chǎn)品信息及存儲(chǔ)顧客信息,同時(shí)MYSQL也足夠快和靈活以允許你存儲(chǔ)記錄文件和圖像。MYSQL主要目標(biāo)是快速、強(qiáng)健和易用。MYSQL建設(shè)的根基是業(yè)已用在高要求的生產(chǎn)環(huán)境多年的一套實(shí)用例程。盡管MYSQL仍在開(kāi)發(fā)中,但它已經(jīng)提供一個(gè)豐富和極其有用的功能集。MYSQL的主要特點(diǎn)如下:1〕完全多線程,適于多CPU使用。2〕提供C、C++、JAVA(JDBC)、Perl、Python、PHPandTCL的API接口。3〕多平臺(tái),包括:Solaris、SunOS、BSDI、SGI、IR-IX、AIX、DEC、UNIX、LinuxFreeBSD、SCOOpenServer、NetBSD、OpenBSD、HPUX、Win9xandNT.(各臺(tái)支持的功能不盡一樣)。4〕數(shù)據(jù)類(lèi)型多樣,包括:有/無(wú)符號(hào)1,2,3,4,8字節(jié)INT、FLOAT、DOUBLE、CHAR、VARCHAR、TEXT、LOB、DATE、DATETIME、YEAR、SET、ENUM。5〕非常靈活和安全的權(quán)限系統(tǒng),密碼加密。6〕為Win9X提供ODBC接口,可通過(guò)Access與之相聯(lián),另有第三方開(kāi)發(fā)商提供多樣的ODBC驅(qū)動(dòng)程序。7〕可處理大型數(shù)據(jù)(超過(guò)5千萬(wàn)個(gè)記錄),表大小限于OS的文件大小:Linux為2G,Solaris2.5.1為4G,Solaris2.6為1000G。8〕經(jīng)權(quán)威商業(yè)內(nèi)存泄露軟件檢測(cè)無(wú)內(nèi)存泄露。9〕多種語(yǔ)言支持。Web技術(shù)Web技術(shù)概述Web技術(shù)的迅猛開(kāi)展,使全人類(lèi)都能共享Web上的各類(lèi)資源,包括功能強(qiáng)大的計(jì)算資源、海量信息的數(shù)據(jù)庫(kù)資源、五花八門(mén)的多媒體信息資源、門(mén)類(lèi)齊全的軟件工具資源等,這些使得任何人能在任何時(shí)間、任何地點(diǎn)和任何設(shè)備上獲得所需要的信息資源。從本質(zhì)上講Web技術(shù)是各種技術(shù)的集成與綜合應(yīng)用,它以TCP/IP協(xié)議為根基,使用HTML描述網(wǎng)絡(luò)的資源,通過(guò)超文本〔Hypertext〕、超媒體〔Hypermedia〕技術(shù)實(shí)現(xiàn)超級(jí)鏈接,無(wú)論文本、圖形,還是動(dòng)畫(huà)、聲音都能通過(guò)文擋中的鏈接連接到服務(wù)器上的其它文檔或其它站點(diǎn),使客戶(hù)以用交互方式快速地搜索所需要的資料,通過(guò)表單供用戶(hù)填寫(xiě)并通過(guò)服務(wù)器應(yīng)用程序提交給數(shù)據(jù)庫(kù)等。自從Web的產(chǎn)生到現(xiàn)在,Web技術(shù)已從最初簡(jiǎn)單的文檔的瀏覽開(kāi)展到當(dāng)今復(fù)雜電子商務(wù)的應(yīng)用,其間共經(jīng)歷了靜態(tài)文檔、動(dòng)態(tài)交互頁(yè)面和實(shí)時(shí)可伸縮的事務(wù)處理三個(gè)階段。從靜態(tài)技術(shù)到動(dòng)態(tài)技術(shù),從開(kāi)發(fā)平臺(tái)到應(yīng)用模型,從傳統(tǒng)Web到語(yǔ)義化Web,Web經(jīng)歷了一次又一次的技術(shù)浪潮,也面臨更為嚴(yán)峻的技術(shù)挑戰(zhàn)。Web1.0的主要特點(diǎn)在于用戶(hù)通過(guò)瀏覽器獲取信息,而Web2.0則更注重用戶(hù)的交互作用,用戶(hù)既是網(wǎng)站內(nèi)容的消費(fèi)者(瀏覽者),也是網(wǎng)站內(nèi)容的制造者。主要包括:博客(BLOG)、RSS、百科全書(shū)(Wiki)、網(wǎng)摘、社會(huì)網(wǎng)絡(luò)(SNS)、P2P、即時(shí)信息(IM)、智能搜索引擎等。Web客戶(hù)端開(kāi)發(fā)技術(shù)有VB、VC、PB等。服務(wù)器端開(kāi)發(fā)技術(shù)有ASP、JSP/Servlet、JDBC、JavaBean、PHP等。使用這些技術(shù)生成動(dòng)態(tài)頁(yè)面、操縱數(shù)據(jù)庫(kù)、建設(shè)Web站點(diǎn)。近年來(lái)在Web服務(wù)端更多Web開(kāi)發(fā)環(huán)境支持MVC〔Model-View-Contorller〕設(shè)計(jì)模型,為開(kāi)發(fā)者提供了全套的開(kāi)發(fā)框架。評(píng)估一種Web開(kāi)發(fā)技術(shù)優(yōu)劣的標(biāo)準(zhǔn)只有一個(gè),那就是看這種技術(shù)能否在最恰當(dāng)?shù)臅r(shí)間和最恰當(dāng)?shù)牡攸c(diǎn),以最恰當(dāng)?shù)姆绞?,為最需要信息的人提供最恰?dāng)?shù)男畔⒎?wù)。基于Web技術(shù)的應(yīng)用系統(tǒng),用戶(hù)直接面對(duì)的是客戶(hù)端瀏覽器,用戶(hù)在使用系統(tǒng)時(shí),請(qǐng)求之后的事務(wù)邏輯處理和數(shù)據(jù)的邏輯運(yùn)算由服務(wù)器與數(shù)據(jù)庫(kù)系統(tǒng)共同完成,對(duì)用戶(hù)而言是完全透明的,運(yùn)算后得到的結(jié)果再通過(guò)瀏覽器的方式返回給用戶(hù)。這個(gè)過(guò)程可分成一些子步驟,每一個(gè)子步驟的完成可理解為通過(guò)一個(gè)單獨(dú)的應(yīng)用服務(wù)器來(lái)處理,這些應(yīng)用服務(wù)器在最終得到用戶(hù)所需的結(jié)論之前,相互之間還會(huì)進(jìn)展一定的數(shù)據(jù)交流和傳遞。如圖4.4所示。圖4.4Web應(yīng)用構(gòu)造簡(jiǎn)圖PHP技術(shù)PHP(HypertextPreprocessor)是一種用于創(chuàng)立動(dòng)態(tài)Web頁(yè)面的服務(wù)器腳本語(yǔ)言。PHP大量采用C、Java和Perl語(yǔ)言的語(yǔ)法,并參加了一些PHP自己的特征。PHP支持的身份認(rèn)證,支持Cookie,支持GIF圖像創(chuàng)立等。其中,最有代表性的特點(diǎn)在于它強(qiáng)大的數(shù)據(jù)庫(kù)支持功能,所有主流與非主流數(shù)據(jù)庫(kù)它幾乎都支持,這使得編寫(xiě)基于數(shù)據(jù)庫(kù)的網(wǎng)頁(yè)變得非常簡(jiǎn)單。1〕PHP的特性①易學(xué)易用PHP的語(yǔ)法構(gòu)造借用了C、Perl的優(yōu)秀局部,有以上語(yǔ)言編程經(jīng)歷的開(kāi)發(fā)人員可快速地掌握PHP并將其投入實(shí)際使用。②運(yùn)行速度快PHP采用HTML內(nèi)置標(biāo)記技術(shù),解釋程序本身可以作為Web服務(wù)器的一個(gè)模塊運(yùn)行,有效地提高了運(yùn)行時(shí)的解析速度。經(jīng)測(cè)試說(shuō)明,在Web站點(diǎn)訪問(wèn)量非常大時(shí),PHP的解析速度相當(dāng)于傳統(tǒng)CGI程序的4倍!③跨多個(gè)平臺(tái)目前PHP可在Windows、UNIX、Linux的Web服務(wù)器上正常運(yùn)行,支持IIS、Apache等通用Web服務(wù)器。④強(qiáng)大的數(shù)據(jù)庫(kù)支持PHP直接為很多數(shù)據(jù)庫(kù)提供內(nèi)置的鏈接,包括Oracle、SyBase、PostgreSQL、MySQL、Informix、DBASE、SOLID、Access等,并完全支持ODBC接口,但凡支持ODBC接口的數(shù)據(jù)庫(kù),PHP都可以為其提供有力的支持。⑤先進(jìn)的擴(kuò)展功能PHP不但內(nèi)置了對(duì)文件上傳、密碼認(rèn)證、Cookies操作、郵件收發(fā)、動(dòng)態(tài)GIF生成等功能的支持,還提供了對(duì)GZIP文件、PDF、XML的直接支持。⑥完全免費(fèi)2〕PHP的工作方式①嵌入HTML的方式傳統(tǒng)的程序設(shè)計(jì)語(yǔ)言所編制程序的源代碼都要經(jīng)編譯程序編譯后生成一個(gè)可執(zhí)行的文件。而PHP腳本是經(jīng)PHP解釋器生成的顯式的HTML標(biāo)識(shí),不必編譯成可執(zhí)行文件。用戶(hù)可以把程序代碼嵌入到HTML中。②PHP運(yùn)行在服務(wù)器端PHP腳本在Web服務(wù)器端的運(yùn)行方式是:當(dāng)Web服務(wù)器接收到一個(gè)Web頁(yè)面請(qǐng)求時(shí),假設(shè)請(qǐng)求的是HTML文件,則Web服務(wù)器直接把文件提供應(yīng)瀏覽器解釋執(zhí)行;假設(shè)請(qǐng)求的是以PHP為擴(kuò)展名的文件,則Web服務(wù)器先執(zhí)行程序php.exe對(duì)兩個(gè)PHP分界符號(hào)之間的PHP程序進(jìn)展分析,然后再根據(jù)程序運(yùn)行時(shí)各種不同的條件將PHP程序轉(zhuǎn)換為相應(yīng)的HTML代碼,再把HTML代碼提供應(yīng)客戶(hù)端的Web瀏覽器。圖4.5PHP在服務(wù)器端運(yùn)行方式遠(yuǎn)程數(shù)據(jù)訪問(wèn)系統(tǒng)該局部設(shè)計(jì)是整個(gè)系統(tǒng)的附加設(shè)計(jì)局部,主要是為了實(shí)現(xiàn)數(shù)據(jù)的遠(yuǎn)程訪問(wèn),通過(guò)數(shù)據(jù)庫(kù)與數(shù)據(jù)采集系統(tǒng)連接為一體。采集數(shù)據(jù)的遠(yuǎn)程訪問(wèn)表達(dá)了數(shù)據(jù)采集的網(wǎng)絡(luò)化的延伸。該遠(yuǎn)程訪問(wèn)系統(tǒng)是采用Apache+PHP+MySQL開(kāi)發(fā)套件進(jìn)展開(kāi)發(fā)的。當(dāng)然,這局部需要配置服務(wù)器,網(wǎng)上很多資料可以參考。主要是利用PHP建設(shè)數(shù)據(jù)庫(kù)的連接,在本設(shè)計(jì)中主要實(shí)現(xiàn)了用戶(hù)登錄頁(yè)面,檢索條件輸入頁(yè)面,結(jié)果返回頁(yè)面。具體實(shí)現(xiàn)代碼見(jiàn)附錄。多線程技術(shù)為了實(shí)現(xiàn)多通道數(shù)據(jù)采集的功能,本設(shè)計(jì)的軟件局部必須實(shí)現(xiàn)信號(hào)的采集、數(shù)據(jù)的分析處理、定時(shí)存儲(chǔ)及實(shí)時(shí)顯示等功能。在用戶(hù)看來(lái),這些任務(wù)是同時(shí)進(jìn)展著的。實(shí)際上,信號(hào)采集、定時(shí)存儲(chǔ)和主控模塊放在不同的線程中,利用Windows操作系統(tǒng)的多線程機(jī)制,使得各個(gè)功能模塊能夠有條不紊的運(yùn)行。本設(shè)計(jì)把用戶(hù)命令輸入、信號(hào)動(dòng)態(tài)顯示和歷史數(shù)據(jù)的查詢(xún)、分析處理放在主線程中實(shí)現(xiàn),而把信號(hào)采集和定時(shí)存儲(chǔ)功能分別放到兩個(gè)工作線程中。Windows的多線程機(jī)制Windows是一個(gè)多任務(wù)操作系統(tǒng),每個(gè)運(yùn)行的程序?qū)?yīng)著一個(gè)進(jìn)程,而在一個(gè)進(jìn)程內(nèi)又可以有幾個(gè)線程。Windows系統(tǒng)把CPU的運(yùn)行分成許多小的時(shí)間片,按各個(gè)進(jìn)程和進(jìn)程內(nèi)線程的優(yōu)先級(jí)進(jìn)展分配,從而使多個(gè)程序能“同時(shí)〞運(yùn)行。在同一進(jìn)程內(nèi)的不同線程都在自己的時(shí)間片內(nèi)執(zhí)行,防止了相互在時(shí)間上可能的沖突。LabVIEW與多線程應(yīng)用多線程技術(shù),可以使得多個(gè)獨(dú)立的任務(wù)并發(fā)執(zhí)行,從而極大地提高程序的效率。LabVIEW把線程管理、線程間的通信等復(fù)雜操作封裝了起來(lái),因此用戶(hù)可以不用學(xué)習(xí)復(fù)雜的多線程編程就可以編寫(xiě)多線程程序。在LabVIEW中,圖形化編程為開(kāi)發(fā)多線程代碼帶來(lái)了很大的好處,因?yàn)樵跀?shù)據(jù)流的編程環(huán)境中,用戶(hù)可以很容易地“看到〞并行代碼,例如兩個(gè)獨(dú)立的循環(huán)或子VI就代表兩段可以并發(fā)執(zhí)行的代碼。多線程的優(yōu)點(diǎn):1〕更高的CPU利用率2〕更高的系統(tǒng)可靠性3〕提高在多處理器計(jì)算機(jī)上的執(zhí)行速度多線程技術(shù)在本設(shè)計(jì)中的應(yīng)用為了實(shí)現(xiàn)采集、顯示、查詢(xún)、報(bào)警和系統(tǒng)其他操作的并行執(zhí)行,在程序中創(chuàng)立了兩個(gè)工作線程:一個(gè)是采樣工作線程,專(zhuān)門(mén)負(fù)責(zé)數(shù)據(jù)采集和存儲(chǔ);一個(gè)是數(shù)據(jù)報(bào)警和系統(tǒng)其他功能線程,負(fù)責(zé)定時(shí)把緩沖區(qū)中的數(shù)據(jù)存盤(pán)。在用戶(hù)啟動(dòng)系統(tǒng)工作時(shí),這兩個(gè)工作線程被創(chuàng)立。但不同的是,采樣工作線程是在循環(huán)往復(fù)的工作著,直到退出程序;而數(shù)據(jù)存儲(chǔ)線程則是在一定的時(shí)刻被喚醒,比方在數(shù)據(jù)緩沖區(qū)滿(mǎn)、或程序完畢等時(shí)候,更多的時(shí)候,存儲(chǔ)模塊是處于掛起的狀態(tài)。因?yàn)樾盘?hào)的采集工作和數(shù)據(jù)存儲(chǔ)工作是長(zhǎng)時(shí)間甚至常年累月運(yùn)行著,這也是工業(yè)生產(chǎn)的實(shí)際情況所決定的。通過(guò)采用多線程技術(shù),實(shí)現(xiàn)了實(shí)時(shí)性要求高的數(shù)據(jù)采集與程序其它功能(如數(shù)據(jù)顯示、讀取、存儲(chǔ)等)在時(shí)間上的相互獨(dú)立,防止它們?cè)跁r(shí)間上可能產(chǎn)生的沖突,提高了數(shù)據(jù)采集的穩(wěn)定性[14]。循環(huán)之間的數(shù)據(jù)傳遞即線程間的數(shù)據(jù)傳遞,可以由局部變量、全局變量、共享變量和隊(duì)列等方式實(shí)現(xiàn)。循環(huán)之間的同步即線程之間的同步,這可以由同步技術(shù)來(lái)實(shí)現(xiàn)。如果需要為兩個(gè)循環(huán)設(shè)置不同的優(yōu)先級(jí),可以通過(guò)定時(shí)循環(huán)來(lái)實(shí)現(xiàn)。系統(tǒng)具體應(yīng)用程序的實(shí)現(xiàn)數(shù)據(jù)采集程序系統(tǒng)采用的是NIPCI-6221采集卡,由于該卡支持DAQmx驅(qū)動(dòng)程序,所以本設(shè)計(jì)是直接使用DAQmx-DataAcquisition開(kāi)發(fā)的,在這局部中,主要是采集參數(shù)的設(shè)置,其中

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論