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