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

下載本文檔

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

文檔簡介

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

溫馨提示

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

評論

0/150

提交評論