LabVIEW基礎(chǔ)課程訓(xùn)練_第1頁
LabVIEW基礎(chǔ)課程訓(xùn)練_第2頁
LabVIEW基礎(chǔ)課程訓(xùn)練_第3頁
LabVIEW基礎(chǔ)課程訓(xùn)練_第4頁
LabVIEW基礎(chǔ)課程訓(xùn)練_第5頁
已閱讀5頁,還剩42頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

LabVIEW2011

Lab基礎(chǔ)課程訓(xùn)練Chapter1

虛擬儀器(VI)的介紹LabVIEW

(LaboratoryVirtualInstrumentEngineeringWorkbench)是採用圖形(Graphics)物件與方式來進行程式邏輯的規(guī)劃與建立程式執(zhí)行的環(huán)境,所以也可稱為”G程式語言”。使用LabVIEW開發(fā)平臺編制的程式稱為虛擬儀表程式,簡稱為虛擬儀表VI

(VirtualInstrument)。VI包括三個部分:人機介面(FrontPanel)、程式方塊圖(BlockDiagram)和圖示/連接器。程式前面板用於設(shè)置輸入數(shù)值和觀察輸出量,用於模擬真實儀錶的前面板。在程式前面板上,輸入量被稱為控制(Controls),輸出量被稱為顯示(Indicators)??刂坪惋@示是以各種圖示形式出現(xiàn)在前面板上,如旋鈕、開關(guān)、按鈕、圖表、圖形等,這使這得前面板直觀易懂。每一個程式前面板都對應(yīng)著一段框圖程式??驁D程式用LabVIEW圖形編程語言編寫,可以把它理解成傳統(tǒng)程式的原始碼??驁D程式由埠、節(jié)點、圖框和連線構(gòu)成。其中埠被用來與程式前面板的控制和顯示傳遞資料,節(jié)點被用來實現(xiàn)函數(shù)和功能調(diào)用,圖框被用來實現(xiàn)結(jié)構(gòu)化程式控制命令,而連線代表程式執(zhí)行過程中的資料流程,定義了框圖內(nèi)的資料流程動方向。1.1程式方塊圖(BlockDiagram)與人機介面(FrontPanel)1.2主要的選單、面板、與工具列LabVIEW具有多個圖形化的操作面板,用於創(chuàng)建和運行程式。這些操作範(fàn)本可以隨意在螢?zāi)簧弦苿?,並可以放置在螢?zāi)坏娜我馕恢谩2僮髅姘骞灿腥?,為工具(Tools)面板、控制(Controls)面板和函數(shù)(Functions)面板。工具面板(Tools

Palette):提供了各種用於建造、修改和調(diào)試VI程式的工具??刂泼姘澹–ontrolsPalette):可以在人機介面開啟輸入控制和輸出顯示,僅顯示於人機介面。函數(shù)面板(FunctionsPalette):用來創(chuàng)建程式方塊圖的工具,僅顯示於程式方塊圖。VI視窗頂端有一排選項為主要選單,如下圖所示:在主要選單下方為工具列(ToolBar),用來控制VI的執(zhí)行與除錯。如下圖所示:執(zhí)行控制除錯工具字型選項排列表單(a)ControlPalette(b)FunctionPalette(c)ToolPalette1.3範(fàn)例搜尋器1.4

輔助視窗OnlineHelpChapter2LabVIEW程式撰寫這個章節(jié)將介紹LabVIEW環(huán)境的基本知識與簡易的操作,包括如何載入與儲存VI、特別的函式庫、ExpressVIs的使用、除錯功能、子VI的基本知識與特性、以及文件檔案的製作流程。2.1控制元與顯示元的概敘LabVIEW控制面板中的子面板所包含的內(nèi)容分為四類簡單的控制元與顯示元:數(shù)值(Numeric)、布林(Boolean)、字串(String)及較少用的路徑(Path)與裝置元件(Decorations)。簡單的總結(jié)為:數(shù)值(Numeric):包含標(biāo)準(zhǔn)的數(shù)值。布林(Boolean):可以有兩個狀態(tài)中之一種,開(on)或關(guān)(off)、1或0。字串(String):包含文字資料,雖然可以包含數(shù)值字元,但是對字串資料做任何數(shù)學(xué)運算之前,必須將其轉(zhuǎn)換成數(shù)值資料。路徑(Path):提供一個與平臺無關(guān)的資料型態(tài),特別對檔案路徑更是如此。裝置元件(Decorations):協(xié)助進行人機介面的美化。2.2接線與斷線接線:當(dāng)需要連接兩個端點時,在第一個端點上點擊連線工具(從工具面板中選?。会嵋苿拥搅硪粋€端點,再點擊第二個端點。端點的先後次序並不會影響資料流程動的方向。斷線:連線錯誤時,不會有正常顏色與型態(tài)的線,而是出現(xiàn)中間有個叉的斷線,黑色虛線??梢越逵蛇x取或刪除的方式來移除斷線(Ctrl-B)。如下所示常見的接線錯誤(需多加注意):接線型態(tài)、維度、單位或是元素衝突,接線有多個來源,沒有來源的接線或接線循環(huán)等都是發(fā)生錯誤的原因。連線是埠間的資料通道,類似於普通程式中的變數(shù)。資料是單向流動的,從來源埠向一個或多個目的埠流動。不同的線型代表不同的資料類型。另外每種資料類型以不同的顏色予以分辨強調(diào)。

標(biāo)量一維數(shù)二維數(shù)

2.3程式撰寫小訣竅較熟練LabVIEW程式之後,接下來將介紹一些技巧能夠更快並且順利地處理VI的撰寫過程。也可以省下不少時間。介紹幾個較常用也能有效提升效率的小技巧:鍵盤捷徑、範(fàn)例搜尋等。鍵盤捷徑Ctrl-B:將程式方塊圖中所有斷線移除。Ctrl-E:在人機介面與城市方塊圖間切換。Ctrl-F:尋找一個LabVIEW的物件或文字。Ctrl-G:尋找下一個LabVIEW的物件或文字。Ctrl-H:顯示/隱藏輔助視窗。Ctrl-N:建立一個新的VI。Ctrl-Q:放棄目前使用中的LabVIEW程式。Ctrl-R:執(zhí)行目前的VI。Ctrl-W:關(guān)閉目前的VI。Ctrl-.:停止目前的VI。Ctrl-T:將人機介面與程式方塊圖並列左右。範(fàn)例搜尋2.4載入與儲存VI載入VI,從主選單中的File開啟Open功能,會出現(xiàn)一個對話框,顯示載入過程和狀態(tài)視窗說明目前載入狀況。儲存VI,從主選單中的File開啟Save功能,會出現(xiàn)一個對話框來選擇VI儲存的路徑。File選單中有兩種主要儲存方式可以選擇:

a)選擇Save功能,可以指定名稱與路徑來儲存一個新的VI,或更新修改後的檔案。

b)選擇SaveAs…功能,會出現(xiàn)一對話框,選擇該如何另外儲存現(xiàn)有的VI。如下圖所示:2.5

ExpressVIs

的使用ExpressVIs是LabVIEW7.X版之後才有的新功能,目的在於更簡化圖形化語言規(guī)劃的流程。協(xié)助LabVIEW程式開發(fā)過程中,大量的降低程式語法所面臨的障礙,同時縮短開發(fā)到實現(xiàn)的時間。目前提供的ExpressVIs依據(jù)人機介面和程式方塊圖區(qū)分為以下二類。ControlPaletteExpressFunctionPaletteExpress以下介紹FunctionExpress面板中七個子面板之各功能:Input子面板:針對外部硬體(DAQ)輸入、模擬訊號輸入、檔案輸入、訊號輸入以及NI公司專屬的NI-DMM與NI-SCOPE等。SignalAnalysis子面板:量測專屬、曲線擬合、濾波器、統(tǒng)計、捲積與相關(guān)性分析、模擬訊號、Mask&LimitTest、以及直方圖等相關(guān)的功能。Output子面板:外部硬體(DAQ)輸出、檔案輸出、報表輸出、字串處理以及使用者訊息輸出等。ExecutionControl子面板:程式執(zhí)行架構(gòu)會使用到的功能,有WhileLoop、FlatSequence、CaseStructure、TimeDelay、ElapsedTime等。Arithmetic&Comparison子面板:主要為四則運算、邏輯處理等相關(guān)之功能。

SignalManipulation子面板:訊號操作等相關(guān)功能,是最常會使用到的Express面板2.6除錯技術(shù)撰寫程式的過程中,除錯是十分重要的一環(huán)。這個章節(jié)將介紹如何判斷問題的來源,並針對不同型態(tài)的錯誤可以採取的對策。判斷錯誤最直觀的方式就是當(dāng)執(zhí)行鍵變成一個中斷的箭頭時,表示這個VI無法編譯或執(zhí)行。按一下中斷的執(zhí)行鍵,或是由選單選擇ShowErrorList,可以看到列出所有錯誤的訊息對話框,在錯誤列表中選擇錯誤事項快點兩下可找出發(fā)生錯誤之位置,由此對找出錯誤並除錯有相當(dāng)大的幫助。常見的錯誤有些常見的錯誤在編譯程式中較常發(fā)生,以下列出常見錯誤與原因,可以提早避免發(fā)生類似錯誤。需要輸入的函數(shù)圖示沒有接線,必須在執(zhí)行程式前接線。程式方塊圖中包含斷線,檢查資料格式是否不符,或無主端點。斷線可能藏在物件後,利用之前斷線技巧去除斷線。子VI發(fā)生錯誤或被修改過,而使輸出入之接點變不同??梢允褂脧棾鍪竭x單使用Replace或RelinktoSubVI的功能處理。將兩個控制元連接在一起,或?qū)蓚€控制元連接到同一個顯示元。這種情況在錯誤列表中會顯示”Signal:

hasmultiplesources.”或”YouhaveconnectedaControltoaControl.Changeonetoanindicator.

”可以嘗試將某些控制元變更為顯示元,只留一個控制元,便可解決錯誤。資料流向顯示與探針使用資料流向顯示:能夠清楚觀察資料目前的執(zhí)行狀況,對除錯相當(dāng)有幫助。在工具列選單中的資料流向顯示鍵,就可以看見VI方塊圖中的執(zhí)行狀況。是以一個小圓點在接線上流動,來模擬資料在節(jié)點傳遞的狀況。使用探針:利用工具列的探針工具,來確認執(zhí)行中產(chǎn)生的數(shù)值與狀態(tài)是否有問題,或發(fā)生未預(yù)期的結(jié)果。為了檢測這些結(jié)果,可以產(chǎn)生一個顯示元來即時顯示接線上的結(jié)果。除了以上兩種方式,還可以搭配單步執(zhí)行、設(shè)定暫停點和暫停執(zhí)行等功能來協(xié)助提升除錯效率。Chapter3程式執(zhí)行架構(gòu)程式架構(gòu)是一種重要的節(jié)點型態(tài),與標(biāo)準(zhǔn)程式語言中的控制架構(gòu)類似,負責(zé)VI程式流程的管理。這個章節(jié)將介紹LabVIEW環(huán)境中主要的程式架構(gòu):While迴圈、For迴圈、條件程式架構(gòu)與循序程式架構(gòu)。並介紹圖控程式中移位暫存器的重要。3.1迴圈LabVIEW

中有兩種架構(gòu)可以用來控制重複執(zhí)行一個子程式方塊圖:While迴圈、For迴圈。For迴圈:執(zhí)行設(shè)定的次數(shù)。While迴圈:條件皆點為True時,會一直執(zhí)行迴圈。特別注意:無論是While迴圈或For迴圈的第一次遞迴,次數(shù)接點的值是0。For迴圈計次接點(CountTerminal)

該接點之?dāng)?shù)值為迴圈執(zhí)行次數(shù)。接點為0時,迴圈不執(zhí)行。LoopIteration端點傳出目前執(zhí)行完畢之迴圈次數(shù);迴圈執(zhí)行第一次為0,第二次為1,直到N-1,N為欲執(zhí)行迴圈之次數(shù)。While迴圈LoopIteration端點傳出目前執(zhí)行完畢之迴圈次數(shù);迴圈執(zhí)行第一次為0。Loop

Condition端點

連接之布林值為TURE時會執(zhí)行下一迴圈,反之FALSE時,則停止迴圈內(nèi)所有程式動作,離開迴圈。若再狀態(tài)接點之預(yù)設(shè)值為FALSE,則While迴圈方塊內(nèi)子程式方塊圖只會執(zhí)行一次。3.2移位暫存器(ShiftRegister)移位暫存器使用於For迴圈與While迴圈,是一種特殊形態(tài)的變數(shù),可在迴圈的前次或後次遞迴間進行數(shù)值轉(zhuǎn)移。在迴圈的左右框界上選取彈出式選單AddShiftRegister。移位暫存器包含迴圈左右兩個框界上的一對接點

。當(dāng)一次遞迴即將完成時,右邊的接點會將資料儲存下來。資料在遞迴結(jié)束時會移位,並在下次遞迴開始前出現(xiàn)在右側(cè)接點。「多個變數(shù)儲存在多個移位暫存器」和「單一移位暫存器儲存之前多次遞迴的單一變數(shù)」兩者的十分不同,有清楚了解之間的差異。3.3

條件架構(gòu)(CaseStructure)條件架構(gòu)是一種可依條件文字來執(zhí)行的方法,類似C語言中的Switch語法,但在搭配不同的使用條件時,也能達到if…、else…的效果。特別注意:在輸出的部份必須為每種CASE都設(shè)定一個輸出值,或是在節(jié)點上右鍵選單中選擇(UseDefaultUnwired),一般為0或者False。條件架構(gòu)3.4循序架構(gòu)(SequenceStructures)循序架構(gòu)能夠強制規(guī)定程式執(zhí)行的順序,因為LabVIEW本身是使用接線來串聯(lián)各個ICON函數(shù)執(zhí)行的程式,因此在大多數(shù)狀況下,都可以藉由接線的連結(jié)規(guī)劃來達到控制流程的目的,而且這樣能夠避免過多的結(jié)構(gòu)影響版面,並減少浪費系統(tǒng)資源。計時:有時候監(jiān)控VI的執(zhí)行時間是必要的,F(xiàn)unctions面板→Programming→Timing下等函數(shù)可以執(zhí)行。Wait(ms)函數(shù):令VI等待特定秒數(shù)後繼續(xù)執(zhí)行。WaitUntilNextmsMultiple函數(shù):等待輸入時間之整數(shù)倍才繼續(xù)執(zhí)行。TickCount(ms):用來計算執(zhí)行時間,傳回作業(yè)系統(tǒng)內(nèi)部之時間,毫秒為單位。計時Timing3.5公式節(jié)點(FormulaNode)需要複雜的算式函數(shù)時,可以利用公式節(jié)點來取代程式方塊圖架構(gòu)的算式函數(shù),直接在視窗內(nèi)輸入公式即可。每個公式的敘述結(jié)尾處都要有一個分號(;)。MATLABScriptNode與公式節(jié)點大致相同,差異處為支援的語法為MATLAB。Chapter4複合資料型態(tài):陣列與資料叢集這個章節(jié)將介紹陣列與資料叢集兩種複合資料型態(tài),在儲存與處理資料時能較有彈性,使用上也更加方便。並學(xué)習(xí)如何使用LabVIEW的內(nèi)建函數(shù)來處理。陣列與相關(guān)的函數(shù)可以說是LabVIEW最常使用的部份,不論在數(shù)字或者字串幾乎都會使用到,所以在這個章節(jié)也會多加強調(diào)。在必要的時候?qū)㈥嚵懈臑閰布騾布臑殛嚵卸紩奖愠淌降倪M行,ClustertoArray函數(shù)和ArraytoCluster函數(shù)可以達到這樣的需求。4.1陣列LabVIEW陣列所指的是一群全部具有相同資料型態(tài)之資料元素(elements)的集合;這與傳統(tǒng)的程式語言相同。一個陣列可以有一個或多個維度(dimension)。一個陣列資料元素,可以是任何型態(tài),如數(shù)值、布林、字串等,但不能是圖表、圖形或是另一個陣列。組成元素顯示視窗引數(shù)顯示視窗陣列函數(shù)4.2複合算術(shù)函數(shù)(CompoundArithmeticFunction)複合算術(shù)函數(shù)(CompoundArithmeticFunction)可以同時進行兩個以上數(shù)值的運算,這是一個非常實用的算術(shù)函數(shù),在資料的整理與運算上會方便許多。即使有需要同時以Add、Multiply、AND及OR等函數(shù)來進行多個數(shù)值運算,也可以減少方塊圖上端點的個數(shù)。4.3布林函數(shù)運算布林函數(shù)在LabVIEW中十分常用也非常有用,若是大家對這部分都有一定的認識就可以跳過,或是想更深入了解可以找一些邏輯設(shè)計或數(shù)位設(shè)計的書來參考。LabVIEW的布林函數(shù)包括And、Or、Not、ExclusiveOr、NotExclusiveOr、NotAnd及NotOR等。FALSEAndFALSE=

FALSE;FALSEOr

FALSE=FALSETrueAndFALSE=FALSE

;TrueOr

FALSE=TrueFALSEAndTrue=FALSE

FALSE

Or

True=TrueTrueAndTrue=True;TrueOr

True=True4.4

資料叢集資料叢集和陣列相同,都是一種將資料集合起來的資料結(jié)構(gòu)。但資料叢集與陣列還有一些差異:資料叢集可以包含不同型態(tài)的資料(如數(shù)值資料,布林資料等);類似於程式語言Pascal的紀(jì)錄(record)或

C語言的結(jié)構(gòu)(struct)。陣列可以動態(tài)的改變大小,而叢集大小則是固定的。叢集的建立還有一些需要注意的地方:唯有當(dāng)資料型態(tài)完全相同時,才能將叢集的接點連接起來;也就是說兩個欲連接的叢集必須有相同數(shù)目的元素。叢集中的物件必須全部同為顯示元或控制元。第一次放入?yún)布奈锛銜Q定該叢集是屬於顯示元或控制元。Chapter5資料顯示功能:

圖形與圖表的應(yīng)用LabVIEW的圖表與圖形功能,可以以圖形型態(tài)的方式來繪製資料點。只要新的資料來源無誤,圖表可以隨時與舊的資料結(jié)合,以互動的方式來繪製資料,讓我們可以明顯的觀察出新舊資料的關(guān)聯(lián)性。圖形則以傳統(tǒng)的方法繪製預(yù)先建立的陣列資料,而且無法保留過去的資料。這個章節(jié)中將介紹圖表與圖形的功能、資料型態(tài)、使用方法及其特別的性質(zhì)。圖表與圖形的比較:圖表:將新的資料增補於舊的資料之後,以互動方式一次繪製一個點。讓我們可以經(jīng)由此顯示功能來觀察新舊資之間的關(guān)係。圖形:將以建立的資料一起繪製於圖上,無法看到不同時段所產(chǎn)之資料間的相互關(guān)係。5.1波形圖表(WaveformChart)波形圖表為二維圖表,Y軸的數(shù)值對X軸以圖形顯示,通常Y軸代表繪製的資料數(shù)值,X軸表示時間或次序。波形圖表有三種更新模式:長條模式、整面更新模式與流動模式。5.2圖形(Graph)LabVIEW提供三種波形圖形的顯示選項:波形圖形、XY圖形與強度圖形。波形圖形(WaveformGraph):主要繪製單值函數(shù),而且資料點必須均勻的分佈在X軸上,也就是說波形圖形是依據(jù)一個時間基準(zhǔn)來繪製Y軸的數(shù)值。X

Y圖形(XYGraph):用途較為廣泛,以直角座標(biāo)為基準(zhǔn)可以繪製多值函數(shù)之圖形。強度圖形(IntensityGraph):對模式資料而言,是很好的顯

溫馨提示

  • 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

提交評論