Labview簡介一虛擬儀器的概念_第1頁
Labview簡介一虛擬儀器的概念_第2頁
Labview簡介一虛擬儀器的概念_第3頁
Labview簡介一虛擬儀器的概念_第4頁
Labview簡介一虛擬儀器的概念_第5頁
已閱讀5頁,還剩55頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Labview簡介一 虛擬儀器的概念虛擬儀器(Virtual Instrument,縮寫為VI)是基于計算機的儀器,是將儀器裝入計算機,以通用的計算機硬件及操作系統為依托,實現各種儀器功能。虛擬儀器和傳統儀器的基本結構的比較:傳統儀器虛擬儀器關鍵是硬件關鍵是軟件開發與維護的費用高開發與維護的費用低技術更新周期長技術更新周期短價格高價格低,并且可重復性與可配置性強生產商定義儀器功能用戶定義儀器功能系統封閉、固定系統開放、靈活、與計算機的進步同步不易與其他設備連接極易與其他設備連接 與傳統儀器相比,虛擬儀器在智能化程序、處理能力、性能價格比、可操作性等方面都具有明顯的技術優勢,具體表現為:()智能

2、化程度高,處理能力強。虛擬儀器的處理能力和智能化程度主要取決于儀器軟件水平。用戶完全可以根據實際應用需求,將先進的信號處理算法、人工智能技術和專家系統應用于儀器設計與集成,從而將智能儀器水平提高到一個新的層次。()可操作性強。虛擬儀器面板可由用戶定義,針對不同應用可以設計不同的操作顯示界面。使用計算機的多媒體處理能力可以使儀器操作變得更加直觀、簡便、易于理解,測量結果可以直接進入數據庫系統或通過網絡發送。測量完后還可打印,顯示所需的報表或曲線,這些都使得儀器的可操作性大大提高。()復用性強,系統費用低。應用虛擬儀器思想,用相同的基本硬件可構造多種不同功能的測試分析儀器,如同一個高速數字采樣器,

3、可設計出數字示波器、邏輯分析儀、計數器等多種儀器。這樣形成的測試儀器系統功能更靈活、系統費用更低。通過與計算機網絡連接,還可實現虛擬儀器的分布式共享,更好地發揮儀器的使用價值。傳統儀器虛擬儀器待測模擬信號信號處理前置預處理數據顯示信號輸入硬件電子系統A/D轉換數字信號處理數據顯示信號產生信號輸出手動/模擬信號控制待測模擬信號輸出模擬信號D/A轉換計算機數字信號控制數字信號產生輸出模擬信號Classical InstrumentVirtual Instrument(VI)計算機DAQ卡利用計算機強大、高效的數字信號處理和控制能力,配合高速高精度A/D、D/A轉換卡,實現與傳統專用儀器相同乃至更強

4、的功能,組成虛擬儀器前置預處理對比應用舉例一、工業測控二、時序分析三、系統仿真四、遠程測量化工生產流量測控 濾波器頻響分析汽車引擎震動分析馬路路燈照度模擬虛擬儀器的主要特點有:盡可能采用了通用的硬件,各種儀器的差異主要是軟件;可充分發揮計算機的能力,有強大的數據處理功能,可以創造出功能更強的儀器;用戶可以根據自己的需要定義和制造各種儀器。 虛擬儀器實際上是一個按照儀器需求組織的數據采集系統。虛擬儀器的研究中涉及的基礎理論主要有計算機數據采集和數字信號處理。目前在這一領域內,使用較為廣泛的計算機語言是美國NI公司的LabVIEW。二 LabVIEW簡單介紹LabVIEW(Laboratory V

5、irtual instrument Engineering)是美國國家儀器公司(National Instruments,NI)開發的一種圖形化的編程語言。圖形化的程序語言,又稱為“”語言。使用這種語言編程時,基本上不寫程序代碼,取而代之的是流程圖。它盡可能利用了技術人員、科學家、工程師所熟悉的術語、圖標和概念,使編程簡單直觀。用LabVIEW做的示波器,與真實的示波器有著相同的功能 LabVIEW和虛擬儀器在物理實驗中的應用對學生進行LabVIEW和虛擬儀器的基本知識和技術的訓練,有助于他們在將來的工作中掌握運用。將部分實驗的傳統測量方法改進為計算機自動化測量分析,使實驗的效率大大提高,物理

6、內容更加突出。通過適當配置接口,可以充分綜合利用實驗室現有的各種數字儀器儀表,以及用C+等系統開發的計算機數據測控系統。三,基礎知識學習LabVIEW程序構成控制選項板功能介紹 函數選項板功能介紹 工具選項板功能介紹 數據線、數據流和數據類型控制量與顯示量1.LabVIEW程序構成:前面板窗口雙擊LabVIEW快捷圖標,出現啟動畫面,單擊其中的New VI,打開一個新的LabVIEW程序,可以看到它由前面板(panel)和流程圖(diagram)組成。前面板窗口是圖形用戶界面,也就是VI的虛擬儀器面板,相當于實際儀器的控制面板,它將用戶和程序聯系起來,是程序運行時顯示和輸入的交互窗口。如圖所示

7、的示波器的前面板,上有用戶輸入和顯示輸出兩類對象,具體表現有開關、旋鈕、圖形以及其他控制(control)和顯示對象(indicator)。 流程圖窗口流程圖窗口提供VI的圖形化源程序,相當于實際儀器箱內的東西,在流程圖中程序員用圖形語言編寫LabVIEW程序源代碼,以控制和操縱定義在前面板上的輸入和輸出功能。如圖所示的示波器流程圖,上面包括前面板上的控件的連線端子,還有一些前面板上沒有,但編程必須有的東西,例如函數、結構和連線等。 圖:示波器流程圖圖:示波器流程圖下面介紹工具條上常用按鈕的功能(其他按鈕功能見附錄) :運行(Run),如果VI有編譯錯誤,此按鈕將變成 。 :連續運行(Run

8、Continuously)。 :異常中止執行(Abort Execution)。:加亮執行(Hightlight Execution),只有流程圖中有。進入加亮執行時,變成此時,流程圖中的數據變亮,同時顯示VI執行中的一些中間數據。提示:使用了 會使LEBVIEW占用大量CPU,。使計算機其他操作變慢。建議一般不要使用 。2.控制選項板功能介紹: 只能在前面板窗口中使用,通過前面板窗口WindowsShow Controls Palette打開,也可以在前面板窗口中空白處單擊右鍵打開。該選項板用來給前面板設置各種所需的輸出顯示對象和輸入控制對象。模塊圖標右上角有的表示有子選項板,單擊模塊圖標可

9、以訪問子選項板。 :數值量(Numeric),數值的控制和顯示。包含數字式、指針式顯示表盤及各種輸入框。(詳細) :布爾量(Boolean),邏輯數值的控制和顯示。包含各種布爾開關、按鈕以及指示燈等。(詳細) :數組和簇(Array & Cluster),數組和簇的控制和顯示。 :圖形(Graph),顯示數據結果的趨勢圖和曲線圖。 3.函數選項板功能介紹: 只能在流程圖窗口中使用,通過流程圖窗口WindowShow Functions Palette打開,也可以在路程圖面板中空白處單擊右鍵打開。函數選項板提供創建流程圖的工具。其與控制選項板基本相同,模塊圖標右上角有的表示有子選項板,單擊模塊圖

10、標可以訪問子選項板。 :結構(Structure),包括程序控制結構命令,例如循環控制等,以及全局變量和局部變量 :數組(Array),包括數組運算函數、數組轉換函數,以及常數數組等。 :比較(Comperation),包括各種比較運算函數,如大于、小于、等于。 :數據采集(Data Acquisition),包括數據采集硬件的驅動,以及信號調理所需的各種功能模塊。 :信號分析(Analysis),信號發生、時域及頻域分析功能模塊及數學工具。 提示:LabVIEW中,你可以隨時獲得幫助。用HelpShow Context Help打開幫助窗口(Context Help)快捷鍵為CtrlH,當把

11、鼠標放到任何感興趣的模塊對象上時,就會在幫助窗口中顯示相應的幫助信息。提示:在任何一個控制或是函數模塊上單擊右鍵,都會出現彈出菜單,通過彈出菜單可以方便地對模塊進行編輯。 4.工具選項板功能介紹: 通過WindowsShow Tools Palette打開和關閉。它提供了各種用于創建、修改和調試VI程序的工具。當從選項板內選擇了任一種工具后,鼠標箭頭就會變成該工具相應的形狀。 下面介紹常用工具按鈕的功能(其它按鈕功能見附錄): :操作(Operate Value),用于操作前面板的控制和顯示。使用它向數字或字符串控制中鍵入值時,工具會變成標簽工具。 :選擇(Position/Size/Sele

12、ct),用于選擇、移動或改變對象的大小。當它用于改變對象的連框大小時,會變成相應形狀。 :標簽(Edit Text),用于輸入標簽文本或者創建自由標簽。當創建自由標簽時它會變成相應形狀。 :連線(Connect Wire),用于在流程圖程序上連接對象。如果聯機幫助的窗口被打開時,把該工具放在任一條連線上,就會顯示相應的數據類型。 5.數據線、數據流和數據類型數據流工作方式: 在流程圖上,模塊接口之間的連線就是數據線。數據通過數據線在模塊之間傳遞。LabVIEW不像一般語言按照語句的順序一行一行的執行,它是依靠在數據線上傳遞的數據來控制程序的,只有當模塊要求的輸入數據完全到達這個模塊時才能執行,

13、然后向其所有的輸出端口輸出數據,這些數據再沿數據線流向其它模塊。這就是LabVIEW的數據流工作方式。前面介紹過,可以通過加亮執行 觀察它的數據流是如何工作的。 當你連線時,LabVIEW會提示該接口的名稱,只能在同一數據類型的端口之間連線,不同類型的數據連線的顏色和形狀也不同。錯誤的連線會表示成黑色虛線,這時你應將連線工具移動到它上面,LabVIEW會給出兩端的數據類型信息,你可以檢查并改正。添加新的模塊和連線可能會對已設置好的部分有影響,而且原來的錯誤連線也可能對新添加的連線有影響。數據線:數據類型:LabVIEW的基本數據類型有五種:Numeric(數值),Boolean(邏輯),Str

14、ing(字符串)、Enum(枚舉)。還有一種叫Ring(環型枚舉),和Enum很類似,可以循環枚舉。Numeric類型的數據按精度有分若干種類型,與標準C+的數據類型基本是一致的。其代表符號直觀的表現其類型(如表所示)。可以在數值對象上點右鍵,通過彈出菜單中Representation修改。提示:在流程圖上,你會看到不同顏色的模塊,不同顏色代表不同的數據類型,其定義與連線一致。6.控制量與顯示量在LabVIEW中,一個數字量(numeric)、布爾量(boolean)、字符量(string)等都有控制量(control)和顯示量(indicator)的區別。控制量:用于控制程序,它相當于儀器上

15、的控制按鈕,如開關、旋鈕等。顯示量:用于顯示程序運行的結果,它相當于儀器上的顯示部件,如顯示屏、指示燈等。在流程圖窗口中,我們可以看到控制部件的外框比較粗,顯示部件的外框比較細,要實現控制量與顯示量之間的轉換,只需在流程圖上的模塊上點擊右鍵,選擇change to indicator(或者change to control)就可以了。四 幾個要用到的模板組和簇(Array & Cluster)組:同類型元素的集合。一個組可以是一維或者多維,每維最多可有231個元素。可以通過組索引訪問其中的每個元素。和C語言一樣,索引的范圍是0到n-1,組中元素的個數為n,第一個元素的索引號為0,第二個是1,依

16、此類推。組的元素可以是數據、字符串等,但所有元素的數據類型必須一致。組的建立:創建一個組有兩件事要做:建一個組的“殼”(shell),將ControlsArray&ClusterArray模塊放在前面板中(如圖所示);在這個殼中置入組元素(數、字符串開關等)。如我們放入數,將ConrolsNumericDigital Control模塊放在組框中.這樣一個數組就建成了,其它類型的組的建立類似,只要在步驟(2)中組框中放入你想要建的組的元素就可以了。要改變組顯示元素的多少,把鼠標換成選擇模式,移到組框的角上,鼠標將變成 這時,你可以任意拖動改變組。要改變組的維數,和改變數組顯示元素多少的方法一樣

17、,在鼠標選擇模式下移到組索引框的角上,鼠標將變成 拖動改變組的維數;也可以在組索引框上點右鍵,選擇Add Dimension。 簇:另一種數據類型,它的元素可以是不同類型的數據。它類似于C語言中的Stuct。使用簇結構可以把分布在流程圖中各個位置的數據元素組合起來,這樣可以減少連線的擁擠程度,用于錯誤處理。 簇的建立;與組的建立相同,同樣是先建立簇的“殼”(ControlsArray&ClusterCluster),然后在殼中放元素,可以放不同類型的數據。需要注意的是:向簇中放置對象時,必須都是控制對象或都是顯示對象,不能混在一起;簇中的數據和其放置順序有關而和其放置的位置無關。第一個放進去的

18、對象就是元素0,依此類推。刪除其中的一個后其順序將自動調整。 圖表和圖形:將數據以圖形方式顯示出來 圖表:通常Y軸為數據值,X軸為表示時間的值或數據點序號。下面我們來看一個隨機數例子: 每循環一次,隨機數模塊產生一個數,圖表會對這些數自動編號,在圖形框中顯示出來,y表示數值,x表示數的序號。它保持以前的數據,并追加新的數據,使圖表保持更新。可以在圖形框上點右鍵改變圖表的性質,如在AdvanceUpdate Mode中改變圖表的更新模式;在Visible Items中選擇顯示標簽、圖例、圖形模板等。同學可以自己試試其功能。圖形:與圖表相似,它們的不同是:圖形不能顯示新追加的數據而圖形可以。我們來

19、看一個正弦余弦波例子:通過例子我們可以看出,圖形顯示的是將要顯示的數據形成數組,然后一次顯示出來。不能像圖表那樣用追加新的數據的方法來顯示數據。 結構(structure)1. 循環結構LabVIEW給大家提供了兩種循環結構: 一個是For循環,另一個是While循環。 兩個循環與大部分計算機語言中的循 環結構非常相似。二者都在Functions Structures下。For循環結構如右圖:N是指循環次數,i指的是循環計數,i從0執行到N1。可以從Functions-Structures中選中For結構對象,在流程圖面板上拖拉就可以將要進行循環的對象包含進去。當然也可以直接對要(或不要)進行

20、循環的對象進行拖拉使其進入(或離開)循環結構。如果要刪除循環結構直接選中按delete鍵即可。While循環結構如右圖:其中右邊的帶箭頭的小 圖標是用來接循環條件的,當調 節為“真”時,開始繼續執行下一 次循環,為“假”時停止執行循環 條件。這里循環條件的檢驗是在循環體執行完時,因此循環至少執行一次。i的作用也是指示循環次數。循環結構的數據傳遞如果需要有數據在循環結構的內外傳輸,可以在循環體內的端子與循環體外的端子連線,這時循環體邊框上出現小的黑方塊(有些書上稱為隧道)。在循環執行期間隧道不能進行數據傳輸,只能在循環結束時將最后一次循環的結果輸出。所以要對每一次循環的結果進行觀察我們就應該將顯

21、示端子放在循環體內部。2. Case結構與一般機器語言中的條件語句非常相似,LabVIEW提供了Case結構。如圖一左邊帶有問號的小方框是用來連接case結構選擇端的值的,如圖二圖三,如果連接的是代數值則上邊框之中顯示的是數字,如果是邏輯型,則顯示的是true or false兩種條件。Case結構每次只能顯示一個子圖,單擊上面中間的箭頭顯示條(或點擊箭頭)可以選擇不同的子圖。對于數值型結構只要在邊框上點擊右鍵,通過Add case就可以增加條件子圖。輸入輸出與循環結構一樣,不同的是需要在輸入數值的同時輸入判斷條件。 例:求平方根:3. 順序結構順序結構就是按照順序依次執行 的結構。如右圖1:

22、 可以通過Add Frame After、Add Frame Before項生成新的標號 (對應新的一個子圖)圖右邊的圖形所示。不同的子圖可以按一定順序執行,也是每次只能顯示一個子圖,可以通過上邊框或箭頭來選擇。輸入輸出也是用的隧道。但是隧道每次只能處理(輸入或輸出)一個數據源,如果順序結構每次執行每個子圖時都要向隧道輸出輸入數據,那么就必須是多源的數據結構。因此順序結構的數據只有在整個結構全部執行完了以后才能輸出。 4. 公式節點公式節點是一種可以直接 在流程圖中輸入數學公式 并進行計算的結構,如右 圖它是一個大小可變的方 框。在使用公式節點時要通過它的邊框的輸出輸入節點傳遞數據,在邊框上點

23、擊右鍵就會有Add Input 和Add Output,分別選擇即可顯示節點,在輸入輸出節點上輸入變量名(注意要與公式內使用的變量一致)。公式節點所用的操作符和功能在公式節點的幫助窗口中可以查詢。 例:求平方根:【注意】:語句后面要加“;”號,而且還要注意同一變量的大小寫。 波形輸入輸出 : LabViIEW配上NI公司的DAQ卡以及DAQ卡的驅動程序,可以完成數據的采集和輸出等多種功能。LabVIEW的DAQ程序包括模擬輸入、模擬輸出、計數器操作、數字輸入、數字輸出等,我們可以在Functions面板下的Data Aquisiton中看到。在圖中的6個模塊下,每個模塊的字模塊又分成三種,頂層

24、的是Easy VIs,中間的是Intermediate VIs,下面的是Advanced VIs。NI公司DAQ卡提供3個輸出和16個輸入,測量電壓-1010V。模擬波形輸入: 簡單的波形輸入的模塊有:單通道波形輸入和多通道波形輸入。它們都在FunctionsData AquisitonAnalog Input下。 單通道波形輸入 : 我們剛開始看到的示波器的例子就用到了這個模塊,采集外部信號的流程圖如圖10所示: 圖 10 :示波器流程圖部分設備號(Device):在NI DAQ設置工具中設定。該參數告訴LabVIEW你使用什么卡,它可以使DAQ VI自身獨立于卡的類型,也就是說,如果你稍后

25、使用了另一種卡,并且賦予它同樣的設備號,你的VI程序可正常工作而無須修改。 通道號(Channel):指定數據樣本的物理源。例如,一個卡有個模擬輸入通道,你就可以同時采集組數據點。 采集點數(Number Of Samples):采集數據的總的總數,對于模擬型號,在采集時轉換成數字信號。采集頻率(Sample Rate):每秒采集數據的點數。通道通道串通道11通道0到50;5通道1,8,以及10到131,8,10:13表 4 :通道及其對應的字符串多通道波形輸入: 可以同時進行多個通道的輸入,端口設置和單通道波形相似,只是通道控制字符串不同: 圖 11 :信號發生器流程圖部分模擬波形輸出:和模

26、擬波形輸入一樣,簡單的波形輸出模塊有:單通道波形輸出和多通道波形輸出。它們都在FunctionsData AquisitonAnalog Output下。我們通過信號發生器的例子來了解這個模塊;其流程圖如圖12所示:其各個端口的意義與模擬波形輸入相似,具體同學們可以看LabVIEW的幫助。 簡單VI的建立 下面我們通過做兩個簡單的VI來使我們對剛才所學的知識作一個簡單的運用。 伏安法測電阻圖 12 :伏安法測電阻電路圖首先介紹一下實驗的思路:電路圖12(下頁)所示:我們通過LabVIEW的輸出給整個電路供電,用LabVIEW的兩個輸入分別測量待測電阻上的電壓和標準電阻上的電壓,用標準電阻上的電

27、阻除以電阻得到電路中的電流。電壓由0V開始逐漸增加5V,電壓每改變一次測一組電壓電流值,最后得到一個數組,線性擬合后可以得到電阻值。前面版:完成的前面板如圖13所示圖 13 :伏安法測電阻前面板圖 放上一個XY Graph(ControlsGraphXY Graph),用于顯示電壓電流圖。將名字改成“電阻的伏安曲線圖”,并將縱坐標和橫坐標分別改成“電壓(V)”和“電流(A)”。放入三個控制字符串(ControlsString & PathString Control),將名字分別改成“供電電壓通道”、“測量電壓通道”、“測量電流通道”。分別用于設置輸出輸入的通道。放入一個用于設置設備號的控制數

28、、一個設定標準電阻值的控制數、一個用于設定測量間隔的控制數和一個顯示測量電阻值的顯示數。并分別將名字改成“設備號“、“標準電阻”、“時間間隔”和“待測電阻值”。時間間隔是用來設置改變電壓和測量數據之間的時間間隔的,讓電路達到平衡再測,在“時間間隔”上點右鍵,選擇Visible ItemUnit Label,在Unit Label 上輸入“s”,這樣時間間隔成為一個有單位為s的量。加入一個二維數組,把名字改成“數據”,用于顯示測量的電壓和電流。流程圖:完成的流程圖如圖14所示: 根據實驗思路,先輸出一個電壓,等到穩定后測量,在流程圖中放入一個順序結構(FunctionsStructures),通

29、過右鍵的Add Frame使順序結構有四幀。 在第0幀中放入一個AO Update Channel,用于輸入電壓,將其Device和“設備號”相連,Channel和“供電電壓通道號”相連,Value值我們以后再設置。在第1幀中放入一個Wait,用于等待電阻上的電流達到穩定;再放入一個Covert Unit(在NumericConversion下),在模塊中鍵入“ms”,用于將s轉換成ms,將Covert Unit的左邊和“時間間隔”相連,右端和Wait的Milliseconds to wait相聯。在第2幀中放入兩個AI Acquire Waveform(在FunctionsData AquisitonAnalog Input下),分別用來測量標準電阻和待測電阻兩端的電壓,將Device和“設備號”相連,Chanal分貝和“測量電壓通道”和“測量電流通道”相連,用AI Acquire W

溫馨提示

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

評論

0/150

提交評論