DZ183虛擬儀器實(shí)驗(yàn)系統(tǒng)
DZ183虛擬儀器實(shí)驗(yàn)系統(tǒng),dz183,虛擬儀器,實(shí)驗(yàn),試驗(yàn),系統(tǒng)
江蘇大學(xué)畢業(yè)設(shè)計(jì)(論文)題 目 虛擬儀器實(shí)驗(yàn)系統(tǒng) 院 系 計(jì)算機(jī)科學(xué)與通信工程學(xué)院專 業(yè) 計(jì) 算 機(jī) 科 學(xué) 與 技 術(shù)年 級(jí) 計(jì) 算 機(jī) 002 班學(xué)生姓名 曾 玄指導(dǎo)教師 馬 學(xué) 文2004年 6 月 12 日2目錄第一章 LabVIEW介紹………………………………………………………4第二章 LabVIEW運(yùn)行機(jī)制…………………………………………………5第三章 虛擬儀器概述………………………………………………………7第四章 虛擬儀器的主要特點(diǎn)………………………………………………8第五章 LabVIEW的編程思想………………………………………………9第六章 基于虛擬儀器的數(shù)據(jù)采集系統(tǒng)……………………………………10第七章 數(shù)據(jù)采集信道設(shè)置…………………………………………………13第八章 信號(hào)調(diào)理技術(shù)………………………………………………………15常用信號(hào)調(diào)理設(shè)備形式……………………………………………16信號(hào)調(diào)理設(shè)備與數(shù)據(jù)采集設(shè)備的通信……………………………17信號(hào)調(diào)理設(shè)備安裝與設(shè)置…………………………………………17信號(hào)調(diào)理的增益……………………………………………………18信號(hào)調(diào)理時(shí)間設(shè)置…………………………………………………18第九章 VI數(shù)據(jù)采集方式……………………………………………………18數(shù)據(jù)采集子程序設(shè)計(jì)………………………………………………20第十章 溫度檢測(cè)系統(tǒng) VI 程序設(shè)計(jì)……………………………………… 21串行通訊調(diào)試………………………………………………………22第十一章 基于虛擬儀器的溫度校準(zhǔn)系統(tǒng)……………………………………23系統(tǒng)構(gòu)成……………………………………………………………23軟件設(shè)計(jì)……………………………………………………………25基本功能要求………………………………………………………25溫度控制……………………………………………………………25數(shù)據(jù)測(cè)量……………………………………………………………273程序調(diào)試……………………………………………………………30結(jié)論………………………………………………………………………………31摘要 美國(guó)國(guó)家儀器公司(National Instruments,NI)的創(chuàng)新軟件產(chǎn)品 LabVIEW自1986年問世以來,在研究,制造和開發(fā)的眾多領(lǐng)域的到廣泛應(yīng)用.從簡(jiǎn)單的儀器控制,數(shù)據(jù)采集到尖端的測(cè)試和工業(yè)自動(dòng)化,從大學(xué)實(shí)驗(yàn)室到工廠,從探索研究到技術(shù)集成,人們都可以發(fā)現(xiàn) LabVIEW應(yīng)用的成果和開發(fā)的產(chǎn)品.G 語言編程和虛擬儀器技術(shù)已經(jīng)成為工業(yè)界關(guān)注的熱點(diǎn)技術(shù)之一.關(guān)鍵詞:數(shù)據(jù)采集,傳感器,信號(hào)調(diào)理器ABSTRACTThe importance of magnetic resonance imaging (MRI) in the medical field is well known.This research focuses on the design and implementation of a non-medical MRI instrument based on a personal computer running LabVIEW software.The instrument is able to monitor and control any externalexperimental or industrial paramaters that may be requird by the application.The instrument employs several techniques hitherto unknown,or minimally known in magnetic resonance such as undersampling and pulse sequences using continuous on magnetic field gradientsKey words:sensor,streaming,ultrasound4第一章 什么是 LabVIEW?20多年前,美國(guó)國(guó)家儀器公司 NI(National Instruments)提出“軟件即是儀器”的虛擬儀器(VI)概念,引發(fā)了傳統(tǒng)儀器領(lǐng)域的一場(chǎng)重大變革,使得計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)得以長(zhǎng)驅(qū)直入儀器領(lǐng)域,和儀器技術(shù)結(jié)合起來,從而開創(chuàng)了“軟件即是儀器”的先河。 LabVIEW(Laboratory Virtual instrument Engineering)是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件。LabVIEW 集成了與滿足 GPIB、VXI、RS-232 和 RS-485協(xié)議的硬件及數(shù)據(jù)采集卡通訊的全部功能。它還內(nèi)置了便于應(yīng)用 TCP/IP、ActiveX 等軟件標(biāo)準(zhǔn)的庫函數(shù)。這是一個(gè)功能強(qiáng)大且靈活的軟件。利用它可以方便地建立自己的虛擬儀器,其圖形化的界面使得編程及使用過程都生動(dòng)有趣。 圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不寫程序代碼,取而代之的是流程圖或流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW 是一個(gè)面向最終用戶的工具。它可以增強(qiáng)你構(gòu)建自己的科學(xué)和工程系統(tǒng)的能力,提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。使用它進(jìn)行原理研究、設(shè)計(jì)、測(cè)試并實(shí)現(xiàn)儀器系統(tǒng)時(shí),可以大大提高工作效率。 利用 LabVIEW,可產(chǎn)生獨(dú)立運(yùn)行的可執(zhí)行文件,它是一個(gè)真正的 32位編譯器。像許多重要的軟件一樣,LabVIEW 提供了 Windows、UNIX、Linux、Macintosh 的多種版本。Labview使用了"所見即所得"的可視化技術(shù)建立人機(jī)界面,提供了許多儀器面板中的控制對(duì)象,如表頭、旋鈕、開關(guān)及坐標(biāo)平面圖等。用戶可以通過使用編輯器將控制對(duì)象改變?yōu)檫m合自己工作領(lǐng)域的控制對(duì)象。Labview 提供了多種強(qiáng)有力的工具箱和函數(shù)庫,并集成了很多儀器硬件庫。Labview 支持多種操作系統(tǒng)平臺(tái),在任何一個(gè)平臺(tái)上開發(fā)的 Labview應(yīng)用程序可直接移植到其它平臺(tái)上。 LabVIEW(laboratory Virtual Instrument Engineering Workbench ,實(shí)驗(yàn)室虛擬儀器工程平臺(tái) )是基于圖形化編程語言G的開發(fā)環(huán)境。LabVIEW 整合了與諸如滿 GPIB ,VXI,PXI,RS-232和 RS-485以及數(shù)據(jù)采集卡等硬件通訊的全部功能。LabVIEW還內(nèi)置了便于應(yīng)用 TCP/IP ,ACTiveX等軟件標(biāo)準(zhǔn)的庫函數(shù)。 利用 LabVIEW ,能產(chǎn)生 32-bit的編譯程序 ,這還可使用戶的數(shù)據(jù)采集 ,測(cè)試和測(cè)5量方案得以高速運(yùn)行。還可以生成單詞可執(zhí)行文件 ,因?yàn)?LabVIEW是一個(gè)真正的32-bit編譯器。使用沒有多少編程經(jīng)驗(yàn) ,技術(shù)人員 ,科學(xué)家 ,工程師仍可利用所熟悉的術(shù)語 ,圖標(biāo)和概念 ,使用圖形化的符號(hào)而不是文本式的語言來描述程序的 ,LabVIEW正是提供了這樣的編程環(huán)境。 LabVIEW包括豐富的用于數(shù)據(jù)采集 ,分析 ,表達(dá)及數(shù)據(jù)存儲(chǔ)的庫函數(shù)。LabVIEW 還有傳統(tǒng)的編程開發(fā)工具 ,可以設(shè)置斷點(diǎn) ,可以使程序動(dòng)畫式運(yùn)動(dòng)以觀察程序的運(yùn)行細(xì)節(jié) ,還可以單步運(yùn)行 ,這些使程序的調(diào)試和開發(fā)更為簡(jiǎn)化。 LabVIEW也提供了大量的諸如 DDLs,共享庫 ,ActiveX等外部代碼或軟件進(jìn)行連接的機(jī)制。另外 ,滿足各種應(yīng)用需要的工具箱也應(yīng)有盡有.第二章 LabVIEW 運(yùn)行機(jī)制所有的 LabVIEW程序 ,即虛擬儀器(vis),都包括前面板(frontpanel),流程圖 (blockdiagrom)兩部分。相對(duì)于程序的這兩部分 ,LabVIEW工作區(qū)也分為不同的兩個(gè)部分 ,每個(gè)部分都有自己獨(dú)立的操作界面。而在不同的操作界面內(nèi)又有不同的工具模板(palettes),以實(shí)現(xiàn)不同的功能。LabVIEW 的模板上含有用于創(chuàng)建和修改 VI的選項(xiàng)。 (1 )工具模板 :包含用于編輯 ,調(diào)試前面板和流程圖對(duì)象所需要的工具。 (2 )控制模板 :包含用于創(chuàng)建用戶接口的前面板控制對(duì)象和顯示對(duì)象。 流程圖的工作界面中 ,有工具模板和功能 (函數(shù) function)模板。 (3)工具模板 :工具模板包含用于編輯 ,調(diào)試前面板和流程圖對(duì)象所需要的工具。 (4)功能模板 :功能模板包含用于 VI編程的對(duì)象 ,例如 :算術(shù)運(yùn)算 ,儀器 I/ O,文件 I/ O以及數(shù)據(jù)采集等操作.第三章 虛擬儀器概述虛擬儀器(virtual instrumention)的概念是美國(guó) NI公司(National Instrument)在 20世紀(jì) 80年代中期提出來的。所謂虛擬儀器就是以計(jì)算機(jī)作為儀器統(tǒng)一的硬件平臺(tái),充分利用計(jì)算機(jī)的運(yùn)算、存儲(chǔ)、回放、調(diào)用、顯示及文件管理等智能化功能,同時(shí)把傳統(tǒng)儀器的專業(yè)化功能和面板控件軟件化,使之與計(jì)算機(jī)結(jié)合構(gòu)成一臺(tái)從外觀到功能都完全與傳統(tǒng)硬件儀器相同,同時(shí)又充分享用了計(jì)算機(jī)智6能資源的全新儀器系統(tǒng)。與傳統(tǒng)儀器相比,虛擬儀器有許多優(yōu)點(diǎn):對(duì)測(cè)試量的處理和計(jì)算可更復(fù)雜且處理速度更快,測(cè)試結(jié)果的表達(dá)方式更加豐富多樣,可以方便地存儲(chǔ)和交換測(cè)試數(shù)據(jù),價(jià)格低,技術(shù)更新快。它的最大特點(diǎn)就是把由儀器生產(chǎn)廠家定義儀器功能的方式轉(zhuǎn)變?yōu)橛捎脩糇约憾x儀器功能,滿足多種多樣的應(yīng)用需求。由于虛擬儀器的測(cè)試功能、面板控件都實(shí)現(xiàn)了軟件化,任何使用者都可通過修改虛擬儀器的軟件來改變它的功能和規(guī)模,這充分體現(xiàn)了" 軟件就是儀器"的設(shè)計(jì)思想。虛擬儀器的技術(shù)基礎(chǔ)是計(jì)算機(jī)技術(shù),核心是計(jì)算機(jī)軟件技術(shù)。其中最有代表性的圖形化編程軟件是美國(guó) NI公司推出的 Labview(laboratory virtual instrument engineering workbench即實(shí)驗(yàn)室虛擬儀器工作平臺(tái))。它是世界上第一個(gè)采用圖形化編程技術(shù)的面向儀器的 32位編譯型程序開發(fā)系統(tǒng),它的目標(biāo)就是簡(jiǎn)化程序的開發(fā)工作,提高編程效率,讓科學(xué)家和工程技術(shù)人員充分利用計(jì)算機(jī)的資源和強(qiáng)大功能,快速簡(jiǎn)捷地完成自己的工作任務(wù),它被稱為"科學(xué)家與工程師的語言"。所謂虛擬儀器,實(shí)際上就是一種基于計(jì)算機(jī)的自動(dòng)化測(cè)試儀器系統(tǒng)。虛擬儀器通過軟件將計(jì)算機(jī)硬件資源與儀器硬件有機(jī)的融合為一體,從而把計(jì)算機(jī)強(qiáng)大的計(jì)算處理能力和儀器硬件的測(cè)量,控制能力結(jié)合在一起,大大縮小了儀器硬件的成本和體積,并通過軟件實(shí)現(xiàn)對(duì)數(shù)據(jù)的顯示、存儲(chǔ)以及分析處理。從發(fā)展史看,電子測(cè)量?jī)x器經(jīng)歷了由模擬儀器、智能儀器到虛擬儀器,由于計(jì)算機(jī)性能以摩爾定律(每半年提高一倍)飛速發(fā)展,已把傳統(tǒng)儀器遠(yuǎn)遠(yuǎn)拋到后面,并給虛擬儀器生產(chǎn)廠家不斷帶來較高的技術(shù)更新速率。虛擬儀器是基于計(jì)算機(jī)的儀器。計(jì)算機(jī)和儀器的密切結(jié)合是目前儀器發(fā)展的一個(gè)重要方向。粗略地說這種結(jié)合有兩種方式,一種是將計(jì)算機(jī)裝入儀器,其典型的例子就是所謂智能化的儀器。隨著計(jì)算機(jī)功能的日益強(qiáng)大以及其體積的日趨縮小,這類儀器功能也越來越強(qiáng)大,目前已經(jīng)出現(xiàn)含嵌入式系統(tǒng)的儀器。另一種方式是將儀器裝入計(jì)算機(jī)。以通用的計(jì)算機(jī)硬件及操作系統(tǒng)為依托,實(shí)現(xiàn)各種儀器功能。虛擬儀器主要是指這種方式。虛擬儀器一般包括三部分:系統(tǒng)硬件、系統(tǒng)軟件以及計(jì)算機(jī)組成,充分體現(xiàn)了虛擬儀器以“軟件代替硬件”的思想。之所以如此,關(guān)鍵是其軟件中安裝了核心基礎(chǔ)軟件,被稱為“發(fā)動(dòng)機(jī)”的設(shè)備驅(qū)動(dòng)程序,從而使這些基礎(chǔ)的儀器驅(qū)動(dòng)軟件,使得系統(tǒng)的開發(fā)與儀器的硬件變化無關(guān),這是虛擬儀器的最大優(yōu)點(diǎn)。虛擬技術(shù)作為一種新興交叉學(xué)科,目前尚未形成成熟的理論體系。虛擬儀器可以看作面向?qū)ο笏枷朐谥悄芑瘍x器領(lǐng)域的發(fā)展,也就是在由軟件和硬件構(gòu)成的虛擬儀器系統(tǒng)中,用戶不必了解電子線路及系統(tǒng)軟件的細(xì)節(jié),用虛擬儀器系統(tǒng)提供的“用戶軟件接口”和7“用戶硬件接口” ,經(jīng)過簡(jiǎn)單的二次開發(fā),就可以在較短的周期內(nèi)開發(fā)出適應(yīng)不同檢測(cè)對(duì)象需要的儀器。虛擬儀器最有優(yōu)勢(shì)的技術(shù)是軟件開發(fā)環(huán)境,與傳統(tǒng)程序設(shè)計(jì)語言不同,這類軟件一般采用強(qiáng)大的圖形化語言編程,面向測(cè)試工程師,而不是面向?qū)I(yè)程序員,編程非常方便,人機(jī)交互界面非常友好,具有強(qiáng)大的數(shù)據(jù)可視化分析和儀器控制能力。如使用各種圖標(biāo)、圖形符號(hào)、連線等編程,界面非常直觀形象,而且還可以使用檢測(cè)工程師熟悉的旋鈕、開關(guān)、波形等制作的儀器面板,對(duì)測(cè)試工程師來說,無疑是最好的選擇。面向?qū)ο笏枷朐谔摂M儀器領(lǐng)域的應(yīng)用和發(fā)展,極大地發(fā)展了現(xiàn)代儀器的設(shè)計(jì)方法和技術(shù)。相信不久的將來,開發(fā)大型高度智能化的儀器也會(huì)象“搭積木”一樣簡(jiǎn)單。 為實(shí)現(xiàn)從物理量提取到數(shù)據(jù)分析結(jié)果的虛擬儀器的市場(chǎng)需求,九八年初開始,先后有美國(guó)惠普公司、美國(guó) Ni公司、美國(guó)吉時(shí)利儀器公司等,率先將這類產(chǎn)品推向國(guó)際市場(chǎng),引起工程檢測(cè)領(lǐng)域不小的轟動(dòng).第四章 虛擬儀器的主要特點(diǎn):1 盡可能采用了通用的硬件,各種儀器的差異主要是軟件。 2 可充分發(fā)揮計(jì)算機(jī)的能力,有強(qiáng)大的數(shù)據(jù)處理功能,可以創(chuàng)造出功能更強(qiáng)的儀器。 3 用戶可以根據(jù)自己的需要定義和制造各種儀器。 虛擬儀器實(shí)際上是一個(gè)按照儀器需求組織的數(shù)據(jù)采集系統(tǒng)。虛擬儀器的研究中涉及的基礎(chǔ)理論主要有計(jì)算機(jī)數(shù)據(jù)采集和數(shù)字信號(hào)處理。目前在這一領(lǐng)域內(nèi),使用較為廣泛的計(jì)算機(jī)語言是美國(guó) NI公司的 LabVIEW。 虛擬儀器的起源可以追朔到 20世紀(jì) 70年代,那時(shí)計(jì)算機(jī)測(cè)控系統(tǒng)在國(guó)防、航天等領(lǐng)域已經(jīng)有了相當(dāng)?shù)陌l(fā)展。PC 機(jī)出現(xiàn)以后,儀器級(jí)的計(jì)算機(jī)化成為可能,甚至在Microsoft公司的 Windows誕生之前,NI 公司已經(jīng)在 Macintosh計(jì)算機(jī)上推出了LabVIEW2.0以前的版本。對(duì)虛擬儀器和 LabVIEW長(zhǎng)期、系統(tǒng)、有效的研究開發(fā)使得該公司成為業(yè)界公認(rèn)的權(quán)威。 普通的 PC有一些不可避免的弱點(diǎn)。用它構(gòu)建的虛擬儀器或計(jì)算機(jī)測(cè)試系統(tǒng)性能不可能太高。目前作為計(jì)算機(jī)化儀器的一個(gè)重要發(fā)展方向是制定了 VXI標(biāo)準(zhǔn),這是一種插卡式的儀器。每一種儀器是一個(gè)插卡,為了保證儀器的性能,又采用了較多的硬件,但這些卡式儀器本身都沒有面板,其面板仍然用虛擬的方式在計(jì)算機(jī)屏幕上出現(xiàn)。這些卡插入標(biāo)準(zhǔn)的 VXI機(jī)箱,再與計(jì)算機(jī)相連,就組成了一個(gè)測(cè)試系統(tǒng)。VXI 儀器價(jià)格昂貴,目前又推出了一種較為便宜的8PXI標(biāo)準(zhǔn)儀器。 虛擬儀器研究的另一個(gè)問題是各種標(biāo)準(zhǔn)儀器的互連及與計(jì)算機(jī)的連接。目前使用較多的是 IEEE 488或 GPIB協(xié)議。未來的儀器也應(yīng)當(dāng)是網(wǎng)絡(luò)化的。虛擬儀器和傳統(tǒng)儀器的對(duì)比虛擬儀器具有傳統(tǒng)獨(dú)立儀器無法比擬的優(yōu)勢(shì),但它并不否定傳統(tǒng)儀器的作用,它們相互交叉又相互補(bǔ)充,相得益彰。在高速度、高帶寬和專業(yè)測(cè)試領(lǐng)域,獨(dú)立儀器具有無可替代的優(yōu)勢(shì)。在中低檔測(cè)試領(lǐng)域,虛擬儀器可取代一部分獨(dú)立儀器的工作,但完成復(fù)雜環(huán)境下的自動(dòng)化測(cè)試是虛擬儀器的拿手好戲,是傳統(tǒng)的獨(dú)立儀器難以勝任的,甚至不可思議的工作.下面將虛擬儀器和傳統(tǒng)儀器做一個(gè)簡(jiǎn)單的比較.虛擬儀器 傳統(tǒng)儀器開放型,靈活,可與計(jì)算機(jī)技術(shù)保持同步.封閉性,儀器間相互配合較差.關(guān)鍵是軟件,系統(tǒng)性能升級(jí)方便,通過網(wǎng)絡(luò)下載升級(jí)程序即可.關(guān)鍵是硬件,升級(jí)成本較高,而且升級(jí)必須上門服務(wù).價(jià)格低廉,儀器間資源可重復(fù),利用率高.價(jià)格昂貴,儀器間一般無法互相利用.用戶可以定義儀器功能. 只有廠家能定義儀器功能.可以與網(wǎng)絡(luò)以及周邊設(shè)備方便連接. 開發(fā)與維護(hù)開銷高.開發(fā)與維護(hù)費(fèi)用降至最低. 開發(fā)和維護(hù)開銷高.技術(shù)更新周期短(1---2 年). 技術(shù)更新周期長(zhǎng)(5—10 年).專家們指出,在這個(gè)計(jì)算機(jī)和網(wǎng)絡(luò)時(shí)代,利用計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)對(duì)傳統(tǒng)的產(chǎn)業(yè)進(jìn)行改造,已是大勢(shì)所趨,而虛擬儀器系統(tǒng)正是計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)與傳統(tǒng)的儀器技術(shù)進(jìn)行融合的產(chǎn)物,因此,在 21世紀(jì),虛擬儀器將大行其道,日漸受寵,將會(huì)引發(fā)傳統(tǒng)的儀器產(chǎn)業(yè)一場(chǎng)新的革命。 LabVIEW是 NI推出的虛擬儀器開發(fā)平臺(tái)軟件,它們能夠以其直觀簡(jiǎn)便的編程方式、眾多的源碼級(jí)的設(shè)備驅(qū)動(dòng)程序、多種多樣的分析和表達(dá)功能支持,為用戶快捷地構(gòu)筑自己在實(shí)際生產(chǎn)中所需要的儀器系統(tǒng)創(chuàng)造了基礎(chǔ)條件。 9LabVIEW采用圖形化編程語言--G 語言,產(chǎn)生的程序是框圖的形式,易學(xué)易用,特別適合硬件工程師、實(shí)驗(yàn)室技術(shù)人員、生產(chǎn)線工藝技術(shù)人員的學(xué)習(xí)和使用,可在很短的時(shí)間內(nèi)掌握并應(yīng)用到實(shí)踐中去。特別是對(duì)于熟悉儀器結(jié)構(gòu)和硬件電路的硬件工程師、現(xiàn)場(chǎng)工程技術(shù)人員及測(cè)試技術(shù)人員來說,編程就像設(shè)計(jì)電路圖一樣;因此,硬件工程師、現(xiàn)場(chǎng)工程技術(shù)人員及測(cè)試技術(shù)人員們學(xué)習(xí) LabVIEW駕輕就熟,在很短的時(shí)間內(nèi)就能夠?qū)W會(huì)并應(yīng)用 LabVIEW。也不必去記憶那眼花繚亂的文本式程序代碼。LabVIEW這么容易學(xué)習(xí)和使用,是不是 LabVIEW的功能十分有限呢?不。像 C或 C++等其它計(jì)算機(jī)高級(jí)語言一樣,LabVIEW 也是一種通用編程系統(tǒng),具有各種各樣、功能強(qiáng)大的函數(shù)庫,包括數(shù)據(jù)采集、GPIB、串行儀器控制、數(shù)據(jù)分析、數(shù)據(jù)顯示及數(shù)據(jù)存儲(chǔ),甚至還有目前十分熱門的網(wǎng)絡(luò)功能。LabVIEW 也有完善的仿真、調(diào)試工具,如設(shè)置斷點(diǎn)、單步等。LabVIEW 的動(dòng)態(tài)連續(xù)跟蹤方式,可以連續(xù)、動(dòng)態(tài)地觀察程序中的數(shù)據(jù)及其變化情況,比其它語言的開發(fā)環(huán)境更方便、更 有效。而且LabVIEW與其它計(jì)算機(jī)語言相比,有一個(gè)特別重要的不同點(diǎn):其它計(jì)算機(jī)語言都是采用基于文本的語言產(chǎn)生代碼行,而 LabVIEW采用圖形化編程語言--G 語言。LabVIEW程序又稱為虛擬儀器,它的表現(xiàn)形式和功能類似于實(shí)際的儀器;但LabVIEW程序很容易改變?cè)O(shè)置和功能。因此,LabVIEW 特別適用于實(shí)驗(yàn)室、多品種小批量的生產(chǎn)線等需要經(jīng)常改變儀器和設(shè)備的參數(shù)和功能的場(chǎng)合,及對(duì)信號(hào)進(jìn)行分析研究、傳輸?shù)葓?chǎng)合。總之,由于 LabVIEW能夠?yàn)橛脩籼峁┖?jiǎn)明、直觀、易用的圖形編程方式,能夠?qū)⒎爆崗?fù)雜的語言編程簡(jiǎn)化成為以菜單提示方式選擇功能,并且用線條將各種功能連接起來,十分省時(shí)簡(jiǎn)便,深受用戶青睞。與傳統(tǒng)的編程語言比較,LabVIEW 圖形編程方式能夠節(jié)省 85%以上的程序開發(fā)時(shí)間,其運(yùn)行速度卻幾乎不受影響,體現(xiàn)出了極高的效率。使用虛擬儀器產(chǎn)品,用戶可以根據(jù)實(shí)際生產(chǎn)需要重新構(gòu)筑新的儀器系統(tǒng)。例如,用戶可以將原有的帶有 RS232接口的儀器、VXI 總線儀器以及 GPIB儀器通過計(jì)算機(jī),聯(lián)接在一起,組成各種各樣新的儀器系統(tǒng),由計(jì)算機(jī)進(jìn)行統(tǒng)一管理和操作。可以預(yù)見,由于 LabVIEW這些其他語言無法比擬的優(yōu)勢(shì),已經(jīng)成為該領(lǐng)域的一朵奇葩!最終將引發(fā)傳統(tǒng)的儀器產(chǎn)業(yè)一場(chǎng)新的革命。第五章 LabVIEW 語言的編程思想由于 LabVIEW 語言是一種非常實(shí)用的虛擬儀器開發(fā)工具,其編程方式和程序10員常用的幾種軟件有很大的區(qū)別。傳統(tǒng)儀器一般是一臺(tái)獨(dú)立的裝置。從外觀上看,它一般有操作面板、信號(hào)輸入端口,檢測(cè)結(jié)果輸出這幾個(gè)部分。操作面板上一般有一些開關(guān),按扭,旋扭等等。檢測(cè)結(jié)果的輸出方式有:數(shù)字、指針式表頭、圖形窗口、打印輸出等等。從功能方面分析傳統(tǒng)一起可以分為:信號(hào)的采集與控制、信號(hào)的分析與處理、結(jié)果的表達(dá)與輸出這幾個(gè)部分。傳統(tǒng)儀器的功能都是通過硬件(或者固化的軟件)實(shí)現(xiàn)的。這種框架結(jié)構(gòu)決定了它只能由儀器廠家來定義、制造,而且功能和規(guī)模一般都是固定的,用戶無法隨意改變其結(jié)構(gòu)和功能。計(jì)算機(jī)技術(shù)、微電子技術(shù)和大規(guī)模集成電路技術(shù)的發(fā)展帶來了數(shù)字化儀器、智能儀器,但是傳統(tǒng)儀器還是沒有擺脫獨(dú)立使用、手動(dòng)操作的模式。在較為復(fù)雜的應(yīng)用場(chǎng)合或者測(cè)試參數(shù)較多的情況下,使用起來就很不方便。虛擬儀器 VI 是現(xiàn)代儀器技術(shù)與計(jì)算機(jī)技術(shù)結(jié)合的產(chǎn)物。隨著計(jì)算機(jī)技術(shù)特別是微機(jī)的快速發(fā)展,CPU 處理能力的增強(qiáng),總線吞吐能力的提高和標(biāo)準(zhǔn)化以及顯示器技術(shù)的進(jìn)步,人們逐漸意識(shí)到可以把儀器的信號(hào)分析和處理,結(jié)果的表達(dá)與輸出功能轉(zhuǎn)移給計(jì)算機(jī)來完成。這樣可以利用計(jì)算機(jī)的告訴計(jì)算能力和寬大的顯示屏更好的完成原來的功能。在現(xiàn)代化工業(yè)生產(chǎn)中,需要進(jìn)行穩(wěn)定測(cè)量和監(jiān)控的場(chǎng)合是越來越多.據(jù)統(tǒng)計(jì),溫度測(cè)量占占工業(yè)生產(chǎn)中各種測(cè)量總量的 50%左右.測(cè)溫的方法也多種多樣.但是,常規(guī)的測(cè)溫方法中存在許多缺點(diǎn),這促進(jìn)了測(cè)溫技術(shù)中新原理,新技術(shù),新方法的誕生和發(fā)展.虛擬傳感器,網(wǎng)絡(luò)溫度傳感器,紅外測(cè)溫技術(shù)等代表了未來測(cè)溫技術(shù)的發(fā)展方向.第六章 LabVIEW 的數(shù)據(jù)采集系統(tǒng)廣義的數(shù)據(jù)采集包括模擬輸入和模擬輸出兩個(gè)部分,它們往往使用同一個(gè)系統(tǒng),有許多相同的概念和術(shù)語.數(shù)據(jù)采集硬件有多種形式,數(shù)據(jù)采集硬件的選擇要根據(jù)具體的應(yīng)用場(chǎng)合并考慮到自身的現(xiàn)有的技術(shù)資源.硬件驅(qū)動(dòng)程序是應(yīng)用軟件對(duì)硬件的編程接口,它包含著對(duì)硬件的操作命令,完成與硬件之間的數(shù)據(jù)傳遞.依靠硬件驅(qū)動(dòng)程序可以大大簡(jiǎn)化LabVIEW的編程工作,提高開發(fā)效率,降低開發(fā)成本.LabVIEW 開發(fā)環(huán)境安裝時(shí),會(huì)自動(dòng)安裝 NI-DAQ軟件,它包含 NI公司各種數(shù)據(jù)采集硬件的驅(qū)動(dòng)程序.在驅(qū)動(dòng)程序的用戶接口 Measurement & Automation Explorer 中用戶可以對(duì)硬件進(jìn)行各種必要的設(shè)置和測(cè)試.LabVIEW 中的數(shù)據(jù)采集 VI按照 Measurement & Automation Explorer11中的設(shè)置采集數(shù)據(jù).1數(shù)據(jù)采集特有的數(shù)據(jù)類型a 數(shù)據(jù)采集信道名數(shù)據(jù)采集信道名 DAQ Channel Name 控件在前面板上位于空間模板的 I/O子模板中,從形式上看他是一個(gè)單選框,其中包含著用戶在 Measurement& Automation Explorer中設(shè)置過的所有信道的名稱.這個(gè)對(duì)象既可以做控件又可以做顯示文件,通過彈出菜單上的 Chang to...選項(xiàng)進(jìn)行轉(zhuǎn)換,.數(shù)據(jù)采集信道名常數(shù)在圖形代碼窗口中功能模板的數(shù)據(jù)采集子模板中.數(shù)據(jù)采集信道名這種數(shù)據(jù)類型為用戶給數(shù)據(jù)采集 VI連接信道表參數(shù)帶來極大的便利.b 波形波形 Waveform對(duì)象在前面板上也位于控制模板的 I/O子模板,既可以做控件又可以做顯示件,通過彈出菜單上的 Chang to...選項(xiàng)進(jìn)行轉(zhuǎn)行.它類似于一個(gè)簇,但是它的成員是固定的.波形全部的成員包括數(shù)據(jù)采集的起始時(shí)間 t0,時(shí)間間隔 dt,波形數(shù)據(jù) y(一個(gè)信號(hào)數(shù)組成一個(gè)信號(hào)數(shù)值)和屬性(關(guān)于波形的其他信息).在圖形代碼窗口中功能模板上有一個(gè)波形子模板,其中包括對(duì)波形進(jìn)行操作的非常豐富的 VI. LabVIEW的數(shù)據(jù)采集 VI 在默認(rèn)的情況下也返回一個(gè)波形,不同的數(shù)據(jù)采集 VI返回的波形中包含的成員不盡相同.2數(shù)據(jù)采集 VI的位置LabVIEW 中的數(shù)據(jù)采集 VI位于采集子模板 Data Acquisition中,這個(gè)子模板中包含 6個(gè)下級(jí)子模板圖標(biāo),分別是模擬輸入,模擬輸出,數(shù)字輸入輸出,計(jì)數(shù)器,校準(zhǔn)于設(shè)置和信號(hào)調(diào)整子模板.通過它們可以分別訪問不同的數(shù)據(jù)采集 VI.這些 VI可以作為單獨(dú)的程序運(yùn)行,執(zhí)行數(shù)據(jù)采集任務(wù),也可以作為子程序調(diào)用返回采集的數(shù)據(jù).3數(shù)據(jù)采集 VI的分級(jí)a 易用 VI易用 VI執(zhí)行最簡(jiǎn)單的數(shù)據(jù)采集操作,一般位于數(shù)據(jù)采集子模板的第一行.需要完成最基本的數(shù)據(jù)采集操作的時(shí)候它的功能是很出色的,它還能自動(dòng)進(jìn)行出錯(cuò)提示,用一個(gè)對(duì)話框詢問用戶是終止執(zhí)行還是忽略錯(cuò)誤.易用 VI通常由中級(jí) VI構(gòu)成,但是它只提供最基本的輸入輸出接口.這類似于一臺(tái)傻瓜照相機(jī),它不需要操作者多少干預(yù),也得不到什么特定的效果.對(duì)于復(fù)雜的應(yīng)用程序,應(yīng)該用中級(jí)的或者高級(jí)的數(shù)據(jù)采集 VI,以便得到更多功能和更好的性能.b 中級(jí) VI中級(jí) VI由高級(jí) VI組成,但是它們使用較少的參數(shù),并且不具備某些高級(jí)的功能.中級(jí) VI比易用 VI給用戶更多的對(duì)錯(cuò)進(jìn)行處理的機(jī)會(huì).在每一個(gè) VI中我們都可以檢查錯(cuò)誤,將出錯(cuò)信息簇傳遞給其他 VI.c 實(shí)用 VI12許多 LabVIEW的數(shù)據(jù)采集子模板中都有實(shí)用 VI.它們也由中級(jí) VI組成,但是比易用 VI具有更多的輸入輸出參數(shù),因此在開發(fā)應(yīng)用軟件是,比易用 VI具備更多的硬件操作功能,能夠更有效的控制硬件.d 高級(jí) VI高級(jí) VI是對(duì)數(shù)據(jù)采集驅(qū)動(dòng)程序最低層的接口.很少有應(yīng)用軟件需要高級(jí) VI.當(dāng)易用 VI或者中級(jí) VI不具備對(duì)于控制某些特殊數(shù)據(jù)采集功能的輸入?yún)?shù)時(shí),就有必要使用高級(jí) VI,它從數(shù)據(jù)采集驅(qū)動(dòng)程序返回最多的狀態(tài)信息.4關(guān)于數(shù)據(jù)采集 VI的參數(shù)多義性如同 LabVIEW的其他許多 VI一樣,它的數(shù)據(jù)采集 VI也具有參數(shù)多義性的特點(diǎn),它們可以接受或者返回不同類型的數(shù)據(jù). 例如在缺省情況下模擬輸入 VI返回的數(shù)據(jù)類型是波形,但是可以在它的輸出端口上彈出菜單選擇 Select Type,選擇用戶需要的其他數(shù)據(jù)類型.例如 AI Read One Scan VI 可以返回單點(diǎn)波形,量化數(shù)組,二進(jìn)制數(shù)組等四種類型的數(shù)據(jù).5數(shù)據(jù)采集 VI的參數(shù)約定LabVIEW在數(shù)據(jù)采集 VI前面板上或者調(diào)用它的程序的幫助窗口中,用控制件或者顯示件標(biāo)簽的外觀區(qū)分各個(gè)參數(shù)的重要程度.控制件或者顯示件名稱用粗體字時(shí),在圖形代碼中必須為節(jié)點(diǎn)上這個(gè)參數(shù)連線才能使程序運(yùn)行;使用普通字體時(shí)說明這個(gè)參數(shù)對(duì)程序運(yùn)行不是特別必要;而在方括號(hào)內(nèi)的參數(shù)很少用到.參數(shù)的缺省值在圓括號(hào)內(nèi)顯示在改參數(shù)名右側(cè).6缺省值,缺省設(shè)置和當(dāng)前值數(shù)據(jù)采集 VI的缺省輸入是它前面板上對(duì)應(yīng)控制件的缺省值.缺省設(shè)置是記錄在設(shè)備驅(qū)動(dòng)程序中的缺省參數(shù)值.當(dāng)前設(shè)置是任意給定時(shí)刻一個(gè)參數(shù)的值.當(dāng) VI的某一個(gè)輸入端口美歐連線時(shí),這個(gè)端口所對(duì)應(yīng)的 VI前面板控制件的缺省值就被傳遞給驅(qū)動(dòng)程序,它的缺省設(shè)置成為當(dāng)前設(shè)置并一直保持到參數(shù)值被改變.7數(shù)據(jù)采集 VI的常用參數(shù)在模擬輸入輸出,數(shù)字輸入輸出和記數(shù)程序中,device 參數(shù)指用戶在Measurement & Automation Explorer中為某一個(gè)數(shù)據(jù)采集設(shè)備設(shè)定一個(gè)數(shù)值,這個(gè)值作為一個(gè)表示貫穿于整個(gè)程序.task ID 也可以包含一組關(guān)于信道和增益的信息.8某些數(shù)據(jù)采集 VI只執(zhí)行設(shè)備設(shè)置或者只執(zhí)行輸入輸出操作,而另一些 VI既執(zhí)行設(shè)置又執(zhí)行操作.后者有一個(gè)循環(huán)數(shù) iteration參數(shù)輸入,使用這些 VI時(shí)我們通常把它放在一個(gè)循環(huán)中,將循環(huán)數(shù)輸出端口連接到 VI的 iteration輸入端口.這樣當(dāng)程序運(yùn)行第一個(gè)循環(huán),iteration 等于 0時(shí),LabVIEW 進(jìn)行數(shù)據(jù)采集設(shè)備設(shè)置,然后執(zhí)行指定的輸入輸出操作;以后各次循環(huán)中 iteration值都大于 0,VI只用當(dāng)前設(shè)置進(jìn)行輸入輸出操作.這樣避免了每次進(jìn)行輸入輸出操作時(shí)都進(jìn)行數(shù)據(jù)采集設(shè)備設(shè)置,可13以改進(jìn)應(yīng)用軟件的性能.9出錯(cuò)處理每個(gè)易用 VI中都包含一個(gè)出錯(cuò)處理子程序.一旦易用 VI中有錯(cuò)誤發(fā)生,立即會(huì)出現(xiàn)一個(gè)對(duì)話框.中級(jí)和高級(jí)的 VI則有一個(gè)出錯(cuò)信息輸入?yún)?shù)和一個(gè)出錯(cuò)信息輸出參數(shù).這個(gè)參數(shù)數(shù)據(jù)類型是一個(gè)簇,其中包含一個(gè)布爾量,指出是否有錯(cuò)誤發(fā)生;一個(gè)錯(cuò)誤代碼,表示發(fā)生何種錯(cuò)誤;還有一個(gè)值給出錯(cuò)誤原信息或者返回出錯(cuò)信息的VI名.如果出錯(cuò)信息輸入?yún)?shù)指出發(fā)生了錯(cuò)誤,則該 VI不執(zhí)行任何數(shù)據(jù)采集操作,并將出錯(cuò)信息傳遞到出錯(cuò)信息輸出端口.第七章 數(shù)據(jù)采集的信道設(shè)置1 信道定址在多信道數(shù)據(jù)采集或者輸出系統(tǒng)中,必須為數(shù)據(jù)采集設(shè)備指定對(duì)哪個(gè)信道進(jìn)行操作,這就是信道定址.信道定址通過在數(shù)據(jù)采集 VI的信道表參數(shù) Channel list 中寫入信道名或者信道號(hào)實(shí)現(xiàn).在數(shù)據(jù)采集過程中按信道表列出的順序掃描信道,在數(shù)據(jù)輸出過程中按信道表列出的順序刷新.信道定址有兩種方法.a 信道名定址采用信道名定址首先要在 Measurement & Automation Explorer中對(duì)信道進(jìn)行設(shè)置.打開 Measurement & Automation Explorer后在 Data Neighborhood 選項(xiàng)上單擊右鍵,再由下級(jí)菜單上點(diǎn)擊 Create New 彈出信道向?qū)?在它的引導(dǎo)下創(chuàng)建一個(gè)虛擬信道.一步步懸在信道類型,信道名,傳感器類型,信號(hào)的單位,使用的數(shù)據(jù)采集設(shè)備等.信道創(chuàng)建后的 Data Neighborhood 下出現(xiàn)一個(gè)信道名,在這個(gè)信道名上彈出菜單可以現(xiàn)在 Properties 對(duì)信道的設(shè)置進(jìn)行修改,或者選擇 Test 對(duì)信道進(jìn)行測(cè)試.在 Measurement & Automation Explorer中設(shè)置的信道名即可寫入信道表參數(shù)Channels.信道表可以是一個(gè)信道名,也可以是一個(gè)信道名數(shù)組.如果是喲嘎信道名數(shù)組,可以把每個(gè)信道名作為一個(gè)數(shù)組成員;也可以把整個(gè)信道表指定為一個(gè)單獨(dú)成員;或者使用這兩個(gè)方法的任意組合.如果在信道表中輸入多個(gè)信道名,表中所有信道必須都設(shè)置為同樣的數(shù)據(jù)采集設(shè)備.例如我們用信道名設(shè)置 lacation 和pressure 兩個(gè)信道,它們都是由一個(gè)數(shù)據(jù)采集設(shè)備采樣,則可以把它們寫在同一個(gè)數(shù)組成員中,用逗號(hào)分開 lacation,pressure.寫信道時(shí)要注意拼寫和空格,但是大小寫不比區(qū)分.使用信道名定址時(shí)不必再連接 device輸入?yún)?shù),LabVIEW 自動(dòng)忽略這個(gè)參數(shù).如果不需要更改信道設(shè)置也不比連接 input limits 或者 input config等參數(shù).使用信道名定址時(shí) LabVIEW 根據(jù) Measurement & Automation Explorer中的參數(shù)設(shè)置硬件.14b 信道號(hào)定址信道定址的另一種方式時(shí)信道號(hào)定址.使用信道號(hào)定址時(shí)不一定要在Measurement & Automation Explorer 中設(shè)置過信道 .輸入給數(shù)據(jù)采集 VI的信道表參數(shù)可以時(shí)是一個(gè)字符串?dāng)?shù)組;也可以是一個(gè)單個(gè)的字符.如果使用信道表數(shù)組,我們可以把每個(gè)信道作為一個(gè)數(shù)組成員;也可以把所有的信道指定為一個(gè)單獨(dú)成員;或者使用這兩者的任意接合.例如我們有信道 0,1,2.或者用一個(gè)分號(hào)隔開第一個(gè)和最后一個(gè)信道,從而指定一個(gè)范圍,例如 0;2.LabVIEW可以識(shí)別三種類型的信道:數(shù)據(jù)采集卡上的,多路復(fù)用板上的和信號(hào)調(diào)理器上的.數(shù)據(jù)采集卡上的信道指插卡式數(shù)據(jù)采集設(shè)備提供的模擬和數(shù)字輸入輸出信道.如果 x是一個(gè)數(shù)據(jù)采集卡上的信道,我們可以輸入 x或者 OBx為信道表成員來指定它.2 極限設(shè)置極限設(shè)置量是我們測(cè)試或者輸出的模擬信號(hào)的最大值和最小值,它關(guān)系到數(shù)據(jù)采集設(shè)備的增益每個(gè).每個(gè)模擬輸入或者輸出信道可以有一對(duì)單獨(dú)的極限設(shè)置,極限設(shè)置量必須在設(shè)備的輸入輸出范圍內(nèi).如果不給數(shù)據(jù)采集 VI 輸入極限設(shè)置參數(shù),或者為上下限參數(shù)輸入 0,那么就使用設(shè)備的缺省范圍,或者 Measurement & Automation Explorer 中為信道設(shè)置的范圍.易用模擬輸入 VI 只有一對(duì)極限值輸入,它構(gòu)成一個(gè)簇,所有信道使用同樣的極限設(shè)置.易用模擬輸出 VI沒有極限值參數(shù).中級(jí)模擬輸入輸出 VI用一個(gè)極限設(shè)置簇?cái)?shù)組對(duì)應(yīng)信道表數(shù)組進(jìn)行極限設(shè)置.各個(gè)信道的極限設(shè)置情況于兩個(gè)數(shù)組成員的個(gè)數(shù)和信道表從寫法都有關(guān)系.如果極限設(shè)置簇?cái)?shù)組的成員少于信道數(shù)組的成員,LabVIEW 按照極限設(shè)置簇?cái)?shù)組最后一個(gè)條目指定多余信道的極限.如果在 Measurement & Automation Explorer 中設(shè)置了信道 ,極限設(shè)置所用的單位就是信道設(shè)置中用于某個(gè)特定信道名的物理單位.例如我們?cè)跀?shù)據(jù)采集信道向?qū)е性O(shè)置了一個(gè)信道的物理單位為 Dec C ,極限設(shè)置值就被看作攝氏度,如果沒有在 Measurement & Automation Explorer 中設(shè)置信道 ,用于極限設(shè)置的缺省單位值通常是伏特.3 輸入輸出的數(shù)據(jù)結(jié)構(gòu)當(dāng)我們從多個(gè)信道連續(xù)采集數(shù)據(jù)時(shí),默認(rèn)情況下數(shù)據(jù)采集 VI返回的數(shù)據(jù)是一個(gè)波形數(shù)組,數(shù)組中每個(gè)成員對(duì)應(yīng)一個(gè)信道的信息.但是前面說過,LabVIEW 的許多數(shù)據(jù)采集 VI具有參數(shù)多義性的特點(diǎn),我們也可以使它們返回一個(gè)二維數(shù)組.二維數(shù)組的兩個(gè)索引選擇器上面一個(gè)用于選擇行,下面一個(gè)用于選擇列.15LabVIEW的數(shù)據(jù)采集 VI按列組織二維數(shù)組的數(shù)據(jù),即每個(gè)列包含一個(gè)信道的數(shù)據(jù),所以選擇一列就等于選擇了一個(gè)信道.模擬輸入 VI返回?cái)?shù)據(jù)的一行包含一次掃描的數(shù)據(jù),因此對(duì)模擬輸入數(shù)據(jù)選擇就等于選擇了一次掃描.用圖形顯示數(shù)據(jù)采集 VI返回的二維數(shù)組時(shí),我們必須吧 chart或者 graph設(shè)置為轉(zhuǎn)換數(shù)組,方法時(shí)彈出菜單,選中 Transpose Array.如果沒有給圖形顯示件連接二維數(shù)組這個(gè)選項(xiàng)是暗的,也可以在程序中使用 Function->Array->Transpose 2D Array 函數(shù)轉(zhuǎn)換數(shù)組.如果要從數(shù)據(jù)采集 VI 返回的二維數(shù)組中提取一個(gè)信道的數(shù)據(jù)可以使用Function->Array->Index Array 函數(shù).多信道模擬輸出 VI 同樣需要二維數(shù)組的每列包含一個(gè)信道的數(shù)據(jù),而每行包含一次刷新的數(shù)據(jù).創(chuàng)建這樣的數(shù)據(jù)時(shí),首相將每個(gè)信道的數(shù)據(jù)構(gòu)建一個(gè)一維數(shù)組.然后選擇 Function->Array->Build Array 函數(shù)將這些數(shù)組合成一個(gè)二維數(shù)組.其中每個(gè)一維數(shù)組時(shí)二維數(shù)組的一行.再用 Transpose 2D Array 函數(shù)把二維數(shù)組的行列轉(zhuǎn)換,完成以上步驟后數(shù)組就可以用于模擬輸出 VI了.數(shù)據(jù)采集設(shè)備的設(shè)置與測(cè)試數(shù)據(jù)采集設(shè)備要根據(jù)測(cè)試的條件于測(cè)試目的進(jìn)行正確的設(shè)置才能正常工作.一個(gè)數(shù)據(jù)采集系統(tǒng)進(jìn)行調(diào)試之前和運(yùn)行中發(fā)生異常時(shí),需要首先對(duì)數(shù)據(jù)采集設(shè)備進(jìn)行測(cè)試,以排除硬件故障.設(shè)置與測(cè)試在驅(qū)動(dòng)程序的用戶接口 Measurement & Automation Explorer 中進(jìn)行.具體的設(shè)備設(shè)置和調(diào)試方法根據(jù)不同的采集卡而定.典型的數(shù)據(jù)采集系統(tǒng)的結(jié)構(gòu)如下:傳感器--信號(hào)調(diào)節(jié)--數(shù)據(jù)采集--計(jì)算機(jī)其中信號(hào)調(diào)節(jié)的主要作用是使傳感器輸出信號(hào)與 A/D轉(zhuǎn)換器相適應(yīng),也就是使傳感器的輸出信號(hào)能夠讓 A/D轉(zhuǎn)換器識(shí)別,如果傳感器的信號(hào)太小,A/D 轉(zhuǎn)換器不能感應(yīng),反之如果太大了就會(huì)損壞 A/D傳感器.如果傳感器的輸出信號(hào)中帶有或者在傳輸過程中,混入了虛假成分,就需要對(duì)信號(hào)進(jìn)行濾波,壓縮頻帶,用以降低采樣率,另外,阻抗變換,屏蔽接地,調(diào)整與解調(diào),信號(hào)線性化等等,皆是處理范疇.在信號(hào)調(diào)節(jié)的過程中,要將數(shù)字的與模擬的嚴(yán)格分開,同時(shí)在前置放大器的設(shè)計(jì)中要考慮抗阻匹配以獲得最佳的信噪比數(shù)尺.第八章 信號(hào)調(diào)理的基本概念傳感器可以把溫度,壓力,位移,聲,光,等物理現(xiàn)象轉(zhuǎn)變成為電信號(hào).來自傳感器的電信號(hào)一般不能用數(shù)據(jù)采集設(shè)備測(cè)量,最主要的問題是它們大多數(shù)輸出電壓非常小,而且極易受噪音影響,而有些信號(hào)又有可能存在很高的尖峰值.因此在將它們轉(zhuǎn)換為數(shù)字量之前需要先進(jìn)行放大,濾波或者隔離的預(yù)處理,這項(xiàng)工作16叫做信號(hào)調(diào)理.1 放大放大是一種最常用的信號(hào)調(diào)理.對(duì)電信號(hào)進(jìn)行放大的兩個(gè)好處是它可以改進(jìn)信號(hào)的數(shù)模轉(zhuǎn)換精度并可以減少噪音.為了得到盡可能高的精度,應(yīng)該將信號(hào)放大到它的幅值等于模數(shù)轉(zhuǎn)換器的最大輸入范圍.雖然對(duì)底電平信號(hào)進(jìn)行放大可以在數(shù)據(jù)采集設(shè)備中進(jìn)行,也可以在信號(hào)源附近的信號(hào)調(diào)理模塊中進(jìn)行;但是在數(shù)據(jù)采集設(shè)備中對(duì)信號(hào)進(jìn)行放大,信號(hào)就帶著進(jìn)入導(dǎo)線的噪音一起被放大,然后進(jìn)行模數(shù)轉(zhuǎn)換和測(cè)量;而在信號(hào)源附近用信號(hào)調(diào)理模塊放大信號(hào),噪音的破壞作用將降低,數(shù)字化后能更好的反應(yīng)電平的原始信號(hào).使用護(hù)套電纜或者雙絞線電纜,并盡量縮短電纜長(zhǎng)度能夠減少噪音,此外,讓信號(hào)線遠(yuǎn)離交流電源線和顯示器將有助于減少 50Hz的噪音.2 隔離當(dāng)被檢測(cè)的信號(hào)含有高電壓峰值時(shí),它有可能損壞計(jì)算機(jī)或者傷害操作者.在這種情況下處于安全考慮就需要將計(jì)算機(jī)與傳感器隔離.進(jìn)行隔離的另一個(gè)原因時(shí)確保數(shù)據(jù)采集設(shè)備的測(cè)量不受地勢(shì)差的影響.當(dāng)數(shù)據(jù)采集設(shè)備與信號(hào)不是參考同一點(diǎn)地勢(shì)點(diǎn)的話,就有可能發(fā)生對(duì)地環(huán)流,影響測(cè)量的精確性;如果信號(hào)地和數(shù)據(jù)采集設(shè)備的地勢(shì)差很大的話,甚至有可能損壞測(cè)試系統(tǒng).使用信號(hào)調(diào)理器的隔離模塊可以減小對(duì)地環(huán)流,確保信號(hào)測(cè)試精確.3 濾波信號(hào)調(diào)理系統(tǒng)可以從被測(cè)試信號(hào)中慮除掉不需要的成分或者噪音.對(duì)類似于溫度這樣緩慢變化的信號(hào)常常需要使用底通濾波器,減少信號(hào)的高頻部分,提高數(shù)模轉(zhuǎn)換的精度.是可用底通濾波器可以慮除截止頻率以上的所有信號(hào)頻率成分.許多信號(hào)調(diào)理裝置都有 40Hz的底通濾波器,它很實(shí)用從低頻采樣的信號(hào)中慮除 50Hz的交流噪音.還有些信號(hào)調(diào)理裝置可以在軟件中選擇截止頻率.4 傳感器激勵(lì)應(yīng)變片,熱電阻等許多傳感器都需要外部電壓或者電流的激勵(lì)來進(jìn)行物理現(xiàn)象測(cè)試.一些插入式的數(shù)據(jù)采集設(shè)備和 SCXI=1121,SCXI-1122等信號(hào)調(diào)理模塊都可以對(duì)傳感器提供必要的激勵(lì).5線性化熱點(diǎn)偶等許多傳感器對(duì)被測(cè)的物理現(xiàn)象的相應(yīng)是非線性的.LabVIEW 可以對(duì)傳感器的電壓信號(hào)進(jìn)行線性化,從而使電壓信號(hào)被正確標(biāo)定為被測(cè)的物理現(xiàn)象.LabVIEW 提供簡(jiǎn)單的標(biāo)定 VI,用來將應(yīng)變片,熱電阻,熱電偶以及熱敏電阻的電壓信號(hào)進(jìn)行轉(zhuǎn)換.常用的信號(hào)調(diào)理設(shè)備形式1 信號(hào)調(diào)理器(SCX---Signal Conditionng eXtensions for instrumentation)17信號(hào)調(diào)理器由信號(hào)調(diào)理機(jī)箱,信號(hào)調(diào)理模塊(實(shí)現(xiàn)信號(hào)調(diào)理功能的主要部件,具有多種功能模塊可以選擇)和信號(hào)連接端口組成.這是一種高度可擴(kuò)展的信號(hào)調(diào)理系統(tǒng),也是信號(hào)調(diào)理設(shè)備的常見形式.2 信號(hào)調(diào)理板信號(hào)調(diào)理板是低價(jià)位,單功能的信號(hào)調(diào)理裝置,外形類似于數(shù)據(jù)采集卡.信號(hào)調(diào)理板主要有應(yīng)變板,熱電偶和熱電阻調(diào)理板,多通道同步放大調(diào)理板等幾種.3 信號(hào)調(diào)理模塊(5B 系列)此系列信號(hào)調(diào)理模塊于信號(hào)調(diào)理板的功能和特點(diǎn)相似,但是它是由一個(gè)個(gè)信號(hào)調(diào)理模塊插入一個(gè)背板組成.背板上有電纜插口便于與數(shù)據(jù)采集卡連接.4 分布式信號(hào)調(diào)理模塊(Filed Point)分布式信號(hào)調(diào)理模塊工業(yè)為現(xiàn)場(chǎng)測(cè)試提供了方便,它可以使信號(hào)調(diào)理房子靠近傳感器的位置.分布式信號(hào)調(diào)理模塊的一個(gè)背板上需要分別安裝信號(hào)調(diào)理模塊,控制模塊和通訊模塊.用尋模塊與計(jì)算機(jī)的通訊有串口,以太網(wǎng),無線等幾種形式.信號(hào)調(diào)理設(shè)備與數(shù)據(jù)采集設(shè)備的通信信號(hào)調(diào)理器作前端信號(hào)調(diào)理系統(tǒng)時(shí),它向數(shù)據(jù)采集設(shè)備傳遞數(shù)據(jù)有兩個(gè)基本的操作模式:多路復(fù)用模式和并行模式.但是有些信號(hào)調(diào)理設(shè)備只支持多路復(fù)用模式,例如 SCXI-1100,SCXI-1122等信號(hào)調(diào)理模塊.采用多路復(fù)用模式時(shí)信號(hào)調(diào)理設(shè)備的所有輸入信道都被復(fù)合到一個(gè)信道輸出.在缺省情況下,以差分方式輸出到數(shù)據(jù)采集設(shè)備的 0信道.如果機(jī)箱中裝有多個(gè)模塊,則只需要將一個(gè)模塊直接連接到數(shù)據(jù)采集設(shè)備,由于所有模塊都插入信號(hào)調(diào)理器總線背板,所以數(shù)據(jù)采集設(shè)備可以通過信號(hào)調(diào)理器總線訪問機(jī)箱中的其他模塊.數(shù)據(jù)采集卡上某些模擬和數(shù)字線保留做信號(hào)調(diào)理器通信用.在多路復(fù)用模式中有些數(shù)據(jù)采集設(shè)備支持多信道,多掃描的采集,而有些設(shè)備只支持擔(dān)心道或者單掃描采集.當(dāng)模擬輸入模塊運(yùn)行在并行模式下時(shí),這個(gè)模塊直接把它每個(gè)信道的信號(hào)傳送到與它相連的數(shù)據(jù)采集設(shè)備的一個(gè)單獨(dú)的模擬輸入信道.此時(shí)如果信號(hào)調(diào)理器中裝有其他模塊,也不能通過這個(gè)模塊來與數(shù)據(jù)采集設(shè)備通信.在這種情況下,可以在計(jì)算機(jī)中安裝多個(gè)數(shù)據(jù)采集設(shè)備,分別與信號(hào)調(diào)理器機(jī)箱中各個(gè)單獨(dú)的模塊連接.例如安裝兩個(gè) AT-MIO-16E-2設(shè)備,將它們分別連接到一個(gè)單獨(dú)的 SCXI-1120模塊上.在缺省情況下,運(yùn)行在并行模式下的模塊將 0信道信號(hào)以差分方式送到數(shù)據(jù)采集設(shè)備的模擬輸入 0信道,1 信道信號(hào)送到數(shù)據(jù)采集設(shè)備模擬輸入 1信道,一次類推,數(shù)據(jù)采集設(shè)備上有效的信道數(shù)限定了模擬輸入的總信道數(shù).NI公司建議大多數(shù)情況下使用多路復(fù)用模式.18信號(hào)調(diào)理設(shè)備安裝與設(shè)置許多信號(hào)調(diào)理器模塊需要在安裝前進(jìn)行一些跳線設(shè)置,以確定諸如與數(shù)據(jù)采集設(shè)備傳遞數(shù)據(jù)的方式,信號(hào)調(diào)理設(shè)備的增益,參考地點(diǎn)的選擇,相連的機(jī)箱或者模塊的數(shù)量等工作條件.具體的跳線位置需要參考所使用的信號(hào)調(diào)理模塊的用戶手冊(cè).信號(hào)調(diào)理器系統(tǒng)安裝后還需要在 Measurement & Automation Explorer 中進(jìn)行不同的設(shè)置,LabVIEW 需要關(guān)于設(shè)置的信息才能使信號(hào)調(diào)理系統(tǒng)正確工作.例如信號(hào)調(diào)理板要設(shè)置為一個(gè)附件,而信號(hào)調(diào)理器要設(shè)置為一個(gè)設(shè)備.信號(hào)調(diào)理器的增益信號(hào)調(diào)理設(shè)備可以提供比數(shù)據(jù)采集設(shè)備更高的增益.有些信號(hào)調(diào)理模塊是通過跳線來分別為各個(gè)信道設(shè)置增益,例如 SCXI-1120,SCXI1121等;有些信號(hào)調(diào)理模塊則是在軟件中為各個(gè)信道選擇增益值,例如SCXI-1141;還有些信號(hào)調(diào)理模塊只能在軟件中為整個(gè)模塊設(shè)置統(tǒng)一的增益值,例如SCXI-1100,SCXI-1122等.對(duì)于用跳線設(shè)置增益的信號(hào)調(diào)理模塊,在 Measurement & Automation Explorer中進(jìn)行信號(hào)調(diào)理模塊設(shè)置時(shí),要輸入所設(shè)置的增益值.LabVIEW 根據(jù)這個(gè)增益值,將放大以后的信號(hào)進(jìn)行比例化,返回升級(jí)的信號(hào)電平.如果在程序中為模擬輸入 VI輸入了極限設(shè)置參數(shù),那么 LabVIEW通過適當(dāng)選取卡上的增益,使它與信號(hào)調(diào)理器的增益配合,以盡可能接近模擬輸入 VI上設(shè)置的極限.而對(duì)于軟件設(shè)置增益的模塊,當(dāng)程序中為模擬輸入 VI輸入了極限設(shè)置參數(shù)時(shí),LabVIEW在設(shè)定的極限范圍內(nèi)為信號(hào)調(diào)理模塊選擇最高的增益值,然后再用卡上的增益作為補(bǔ)充.如果程序中沒有這只極限,則 LabVIEW使用 Measurement & Automation Explorer中設(shè)資的增益值.信號(hào)調(diào)理器的設(shè)置時(shí)間信號(hào)調(diào)理器的濾波器和增益的設(shè)置對(duì)放大器和多路復(fù)用器的設(shè)置時(shí)間有很大的影響.例如,濾波器設(shè)置為 4KHz比設(shè)置為 4000Hz時(shí)的采樣率會(huì)有顯著降低.此外對(duì)于用跳線設(shè)置濾波器和增益的模塊,必須在 Measurement & Automation Explorer中輸入設(shè)置的濾波器和增益跳線設(shè)置值,以便于 LabVIEW確定一個(gè)安全的信道掃描延時(shí),使放大器和多路復(fù)用器有足夠的設(shè)置時(shí)間.如果程序中設(shè)置的掃描率太快,LabVIEW會(huì)降低信道延時(shí),并由 AI Star VI返回一個(gè)警告.考慮到虛擬儀器的特點(diǎn),其中硬件組成結(jié)構(gòu)可為多種形勢(shì),現(xiàn)在我們考慮兩種形式,即基于采集卡(DAQ)的硬件結(jié)構(gòu)和基于串行設(shè)備管理形式的硬件結(jié)構(gòu).這兩種結(jié)構(gòu)各有其特點(diǎn),后者使用于遠(yuǎn)程溫度檢測(cè)于控制以及智能化的溫度傳感器,可視具體19需要選擇之.第九章 VI 數(shù)據(jù)采集方式從虛擬儀器的定義來說,它更多的強(qiáng)調(diào)軟件在儀器中的應(yīng)用,但是虛擬儀器仍然離不開硬件技術(shù)的支持,信息的獲取仍然需要通過硬件來實(shí)現(xiàn)。目前,虛擬儀器的類型主要取決于儀器所采用的接口總線類型。從儀器與計(jì)算機(jī)采用的總線連接方式的不同,可以分為內(nèi)插式和外接機(jī)箱式兩大類。內(nèi)插式就是將各種數(shù)據(jù)采集卡插入計(jì)算機(jī)寬展槽,在加上必要的連接電纜或者探頭,就可以形成一個(gè)儀器。外接機(jī)箱式采用背板總線結(jié)構(gòu),所有儀器都連在總線上或者采用外總線方式,用外部主控計(jì)算機(jī)來實(shí)現(xiàn)控制。這種類型的虛擬儀器以 VXI 儀器為典型代表。無論哪種虛擬儀器,都離不開數(shù)據(jù)采集硬件的支持。下圖描述了插入式 DAQ的組成。通常一塊DAQ卡可以完成多種功能,包括 A/D,D/A 轉(zhuǎn)換,數(shù)字輸入/輸出以及計(jì)數(shù)器操作等等。插入式 DAQ的組成數(shù)據(jù)采集系統(tǒng)的功能模塊如圖 1所示:20圖 1 數(shù)據(jù)采集系統(tǒng)的功能模塊使用模塊化的設(shè)計(jì)思想完成特定的任務(wù),會(huì)使用戶程序的重新組織易于控制和實(shí)現(xiàn)。給定計(jì)算機(jī)的運(yùn)算能力和必要的儀器硬件之后,構(gòu)造和使用 VI 的關(guān)鍵在于應(yīng)用軟件。這是因?yàn)閼?yīng)用軟件為用戶構(gòu)造或者使用 VI 提供了集成開發(fā)環(huán)境、高水平的儀器硬件接口和用戶接口。與傳統(tǒng)的程序語言不同,這類軟件一般采用強(qiáng)大的圖形化語言編程,面向測(cè)試工程師而非專業(yè)程序員,編程非常方便;人機(jī)交互界面友好;具有強(qiáng)大的數(shù)據(jù)可視化分析和儀器控制能力等特點(diǎn)。這些軟件可能是由高級(jí)編程語言編寫的,也可能是用專門的開發(fā)工具開發(fā)的。顯然用高級(jí)語言開發(fā)虛擬儀器將會(huì)是比較復(fù)雜而且開發(fā)周期也長(zhǎng)。數(shù)據(jù)采集子程序的設(shè)計(jì)使用 LabVIEW開發(fā)平臺(tái)編制的程序稱為虛擬儀器程序,簡(jiǎn)稱為 VI.包括三個(gè)部分:程序前面板,框圖程序和圖標(biāo)/連接器.其中程序前面板用于設(shè)置輸入值和觀察輸出量,用于模擬真實(shí)儀表的前面板.在程序前面板上,輸入量被稱為控制(control),輸出量被成為顯示(indicators).控制和顯示是以各種圖標(biāo)形式出現(xiàn)在前面板上的,如旋鈕,開關(guān),按鈕,圖標(biāo),圖形等,這使得前面板直觀易懂.圖 2是一個(gè)溫度計(jì)程序(thermometer VI)的前面板.每一個(gè)程序前面板都對(duì)應(yīng)著一段框圖程序.框圖程序用 LabVIEW圖形編程語言編寫,可以把它理解成傳統(tǒng)程序的源代碼.框圖程序由端口,節(jié)點(diǎn),圖框和連線構(gòu)成.其中端口被用來同程序前面板的控制和顯示傳遞數(shù)據(jù),節(jié)點(diǎn)被用來實(shí)現(xiàn)函數(shù)和功能調(diào)用,圖框被用來實(shí)現(xiàn)結(jié)構(gòu)化程序控制命令,而連線代表程序執(zhí)行過程中的數(shù)據(jù)流,21定義了框圖內(nèi)的數(shù)據(jù)流動(dòng)方向.DAQ系統(tǒng)的基本任務(wù)時(shí)物理信號(hào)的產(chǎn)生或測(cè)量.但是要使計(jì)算機(jī)系統(tǒng)能夠測(cè)量物理信號(hào),必須要使用傳感器把物理信號(hào)轉(zhuǎn)化成點(diǎn)信號(hào)(電壓信號(hào)或者電流信號(hào)).有時(shí)候不能把被測(cè)量的信號(hào)直接連接到 DAQ卡,而必須試用信號(hào)調(diào)理輔助電路,先將信號(hào)進(jìn)行一定的處理.總之?dāng)?shù)據(jù)采集時(shí)借助軟件來控制整個(gè) DAQ系統(tǒng),包括采集原始數(shù)據(jù),分析數(shù)據(jù),給出結(jié)果等.在 LabVIEW中時(shí)通過 LabVIEW DAQ Vis 來完成 DAQ編程應(yīng)用的.所有的 LabVIEW DAQ Vis 都包含在功能模板?Date Acquisition 子模板中,如圖 3所示?;谔摂M儀器的溫度檢測(cè)系統(tǒng)就是 LabVIEW在測(cè)試于測(cè)量方面的應(yīng)用,LabVIEW已經(jīng)成為測(cè)試于測(cè)量領(lǐng)域的工業(yè)標(biāo)準(zhǔn),通過 GPIB,VXI,PLC,串行設(shè)備和插卡式數(shù)據(jù)采集板可以構(gòu)成實(shí)際的數(shù)據(jù)采集系統(tǒng).它提供了工業(yè)界最大的儀器驅(qū)動(dòng)程序庫,同時(shí)還支持通過 Internet,ActiveX,DDE和 SQL等交互式通信方式實(shí)現(xiàn)數(shù)據(jù)共享,它提供的眾多開發(fā)工具時(shí)復(fù)雜的測(cè)試于測(cè)量任務(wù)變得簡(jiǎn)單易行.在以 PC機(jī)為基礎(chǔ)的自動(dòng)測(cè)試系統(tǒng)中,與計(jì)算機(jī)一起工作的時(shí)采集數(shù)據(jù),提供信號(hào)源和控制信號(hào)的一起硬件.數(shù)據(jù)采集系統(tǒng)(DAS)使得基于 PC機(jī)自動(dòng)測(cè)量系統(tǒng)能更加充分利用 PC機(jī)資源,并大大增加了測(cè)試系統(tǒng)的靈活性和擴(kuò)展性.目前插入式數(shù)據(jù)采集卡(DAQ)發(fā)展迅速隨著 A/D,D/A轉(zhuǎn)換器技術(shù),儀器放大器,抗混淆濾波器和信號(hào)波形處理技術(shù)的不斷改進(jìn),DAQ 采樣速率達(dá)到 1GB/s,精度高達(dá) 24位,通道數(shù)高達(dá) 64個(gè),并能任意結(jié)合數(shù)字 I/O,模擬輸出和計(jì)數(shù)器/定時(shí)器通道.22第十章 溫度檢測(cè)系統(tǒng) VI程序設(shè)計(jì)VI軟面板式虛擬儀器的主要特色之一,設(shè)計(jì)一臺(tái)儀器,首先要考慮實(shí)際需要確定其功能,然后根據(jù)功能需要設(shè)計(jì)儀器面板.在虛擬儀器中”儀器”的面板顯示在計(jì)算機(jī)的屏幕上,根據(jù)需要可以隨時(shí)更改,因此稱為儀器的軟面板.LabVIEW 的強(qiáng)大功能歸因與它的層次化結(jié)構(gòu),可以把創(chuàng)建的 VI程序當(dāng)作子程序調(diào)用,以創(chuàng)建更復(fù)雜的程序,而這種調(diào)用的層次是沒有限制的.我們把前面創(chuàng)建的溫度計(jì)程序(Thermometer VI)作為一個(gè)子程序用在當(dāng)前新建程序里,當(dāng)前程序的前面板如圖 4所示,先前用于顯示溫度曲線,并在前面板上設(shè)定.由圖 4可以看出,這是一個(gè)不斷給溫度傳感器加溫的過程,每 5秒鐘測(cè)量一次,一共測(cè)量 20次,最后一次測(cè)量為 85.90度.當(dāng)前程序的框圖如圖 3所示,它把溫度計(jì)程序放置在一個(gè) for循環(huán)里,每次循環(huán)過程采集一次測(cè)量結(jié)果,當(dāng)循環(huán)執(zhí)行了設(shè)定的次數(shù)后,程序把采集的數(shù)據(jù)送到前面板的圖標(biāo)上顯示.23這個(gè)程序由一個(gè) FOR循環(huán)組成,結(jié)構(gòu)比較簡(jiǎn)單,其功能是將采集到的溫度以曲線的形式顯示到屏幕上面。 (程序見附件)串行通訊調(diào)試在工程應(yīng)用中,計(jì)算機(jī)與儀器之間,計(jì)算機(jī)之間常常需要進(jìn)行數(shù)據(jù)通信,串行通信和網(wǎng)絡(luò)通信是較為常用的通信方式.串行通信是一種古老但目前讓人常用的通信方式,早期的儀器,單片機(jī),PLC 等均使用串行口與計(jì)算機(jī)進(jìn)行通信.當(dāng)然,目前也有不少儀器或者芯片仍然使用串行口與計(jì)算機(jī)進(jìn)行通信.在基于虛擬儀器的數(shù)字化溫度檢測(cè)過程中,可以將測(cè)量的數(shù)據(jù)通過 RS-232接口上傳到 PC機(jī)實(shí)現(xiàn)對(duì)測(cè)量數(shù)據(jù)的采集.這種方式尤其使用于現(xiàn)代智能化傳感器的測(cè)量.在串行通信中
收藏