




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
單元2創建和編輯、調試VI2.1LabVIEW開發環境2.2綜合案例1:攝氏溫度轉換為華氏溫度2.3VI編輯和調試技術2.4綜合案例2:模擬溫度顯示2.5子VI返回2.1LabVIEW開發環境2.1.1前面板前面板(frontpanel)是圖形用戶界面,也就是VI的虛擬儀器面板,這一界面上有用戶輸入和顯示輸出兩類對象,具體表現有開關、旋鈕、圖形以及其他控制(control)和顯示對象(indicator)。圖2-1所示為一個隨機信號發生和顯示的簡單VI的前面板,上面有一個顯示對象,以曲線的方式顯示了所產生的一系列隨機數。還有一個控制對象———開關,可以啟動和停止工作。顯然,并非簡單地畫兩個控件就可以運行,在前面板后還需有一個與之配套的程序。下一頁返回2.1LabVIEW開發環境2.1.2程序框圖程序框圖(blockdiagram)提供VI的圖形化源程序。在程序框圖中對VI編程,以控制和操縱定義在前面板上的輸入和輸出功能。程序框圖中包括前面板上的控件的連線端子,還有一些前面板上沒有,但編程必須有的東西,如函數、結構和連線等。圖2-2是與圖2-1對應的程序框圖。可以看到,程序框圖中包括了前面板上的開關和隨機數顯示器的連線端子,還有一個隨機數發生器的函數及程序的循環結構。隨機數發生器通過連線將產生的隨機上一頁下一頁返回2.1LabVIEW開發環境2.1.3工具選板為了便于創建VI程序,LabVIEW平臺上提供了3種選板供編程人員使用,這3種選板分別是工具(Tools)選板、控件(Controls)選板和函數(Functions)選板。工具選板(ToolsPalette)為編程者提供了各種用于創建、修改和調試VI程序的工具。如果該選板沒有出現,則可以在View菜單下選擇ToolsPalette命令以顯示該選板,也可以按住Shift鍵在VI的前面板或者程序框圖的空白處右擊彈出該選板。當從選板內選擇了任一種工具后,鼠標指針就會變成該工具相應的形狀。上一頁下一頁返回2.1LabVIEW開發環境當從Help菜單下選擇了ShowContextHelp命令后,把工具選板內選定的任何一種工具光標放在程序框圖的子程序(SubVI)或圖標上,就會顯示相應的幫助信息。工具選板如圖2-3所示,其子選板名稱及功能如表2-1所列。2.1.4控件選板用控件選板(ControlsPalette)可以給前面板添加輸入控制和輸出顯示。如果控件選板不顯示,可以在前面板的空白處右擊,會彈出圖2-4所示的臨時控件選板,設計虛擬儀器前面板所需要的各種控件都在這個選板中。選板上每一個圖標代表一個二級子選板,圖標下面的各個文本項等價于圖標的作用。上一頁下一頁返回2.1LabVIEW開發環境選擇View→ControlPalette命令彈出控件選板,相當于在臨時控件選板上按下固定銷,除非用戶關閉,否則這個選板將一直停留在前面板上。而且這個控件選板比圖2-4所示的臨時控件選板增加了“導航”按鈕,如圖2-5所示。標準形式的控件選板有兩個“導航”按鈕,其作用如表2-2所列。Modern子選板各圖標所代表的子選板含義如表2-3所列。上一頁下一頁返回2.1LabVIEW開發環境2.1.5函數選板函數選板(FunctionsPalette)是創建程序框圖的工具。若函數選板不出現,可以在程序框圖窗口的空白處右擊,可以彈出一個臨時函數選板。如果選擇View→FunctionsPalette命令彈出函數選板,則這個函數選板一直停留在前面板上。函數選板上的“導航”按鈕的作用與控件選板“導航”按鈕一樣。標準形式的函數選板將程序框圖節點按類別劃分為若個子選板,每個子選板在頂層選板上顯示為一個文本條目。最上面一個Programming子選板是展開為圖標形式的,單擊每個條目左側的?按鈕都可以將這個子選板展開為圖標形式;展開為圖標形式以后,單擊子選板左上角的▼按鈕可以將其折疊為一個文本條目,如圖2-6所示。上一頁返回2.2綜合案例1:攝氏溫度轉換為華氏溫度2.2.1編輯前面板(1)選擇File→New→blankvi命令,打開一個新的前面板窗口。選擇Windows→TileLeftandRight命令或按Ctrl+T組合鍵,平鋪顯示前面板和程序框圖窗口。(2)創建數字輸入控件,并將這個數字輸入控件標簽“label”修改為“degc”。從ControlsPalette→Modern→Numeric中選擇NumericControl放到前面板中。用ToolPalette工具,將NumericControl的“label”修改為“degc”。下一頁返回2.2綜合案例1:攝氏溫度轉換為華氏溫度(3)創建數字指示控件,并將這個數字指示控件標簽“label”修改為“degf”。從ControlsPalette→Modern→Numeric中選擇NumericIndicator放到前面板中。用ToolPalette工具,將NumericControl的“label”修改為“degf”。2.2.2編輯程序框圖(1)按Ctrl+E組合鍵,切換到程序框圖窗口。從圖2-7所示的FunctionsPalette中選擇函數圖標放置在框圖中。上一頁下一頁返回2.2綜合案例1:攝氏溫度轉換為華氏溫度(2)使用連線工具,按照圖2-8(b)所示框圖連線。本例中前面板如圖2-8(a)所示,程序框圖如圖2-8(b)所示。2.2.3運行及保存(1)單擊窗口上部的Run圖標,運行該VI,得到圖2-8(a)所示的結果。(2)單擊窗口上部的RunContinuously圖標,輸出結果可以隨輸入的變化而變化。單擊Pause按鈕可暫時停止程序。單擊AbortExecution按鈕結束程序的運行。(3)將程序存盤,關閉VI。上一頁返回2.3VI編輯和調試技術2.3.1VI編輯技術通過前面的學習,對LabVIEW的編程已經有了一定的了解。與傳統文本語言不同的是,LabVIEW是一種圖形化的編程語言。一個VI程序的設計包含前面板控件對象的設計和程序框圖程序代碼的設計兩大部分。前面板是程序的運行界面,主要由各種開關、按鈕、指示燈、示波器等形象化的圖形元件構成,如圖2-9(a)所示。程序框圖用于程序代碼的設計,主要由各種節點、連線及結構矩形框等組成,如圖2-9(b)所示。構成節點的元素是各種常量、變量、函數、VIs和ExpressVIs,這些元素在程序設計中主要起到數據的輸出、輸入及處理等功能。一般情況下,每個元素至少有一個數據的輸入端口或輸出端口用以完成數據的運算、復制以及傳輸和交換操作;連線用于連接各元素的端口,是完成各節點之間數據傳遞和交換的工具;結構框圖則主要用于組織程序的結構,如循環結構、分支結構和順序結構等。下一頁返回2.3VI編輯和調試技術1.節點節點類似于文本語言程序的語句、函數或者子程序。LabVIEW有兩種節點類型———函數節點和子VI節點。兩者的區別在于:函數節點是LabVIEW以編譯好的機器代碼供用戶使用的,而子VI節點是以圖形語言形式提供給用戶的。2.端點端點是只有一路輸入/輸出,且方向固定的節點。LabVIEW有三類端點———前面板對象端點、全局與局部變量端點和常量端點。對象端點是數據在程序框圖部分和前面板之間傳輸的接口。一般來說,一個VI的前面板上的對象(控制或顯示)都在框圖中有一個對象端點與之一一對應。當在前面板創建或刪除面板對象時,可以自動創建或刪除相應的對象端點。上一頁下一頁返回2.3VI編輯和調試技術3.程序框圖程序框圖是LabVIEW實現程序結構控制命令的圖形表示,如循環控制、條件分支控制和順序控制等,編程人員可以使用它們控制VI程序的執行方式。代碼接口節點(CIN)是程序框圖與用戶提供的C語言文本程序的接口。4.連線連線是端口間的數據通道,它類似于普通程序中的變量。數據是單向流動的,從源端口向一個或多個目的端口流動。不同的線型代表不同的數據類型。在彩顯上,每種數據類型還可以不同的顏色予以強調。表2-5是一些常用數據類型所對應的線型和顏色。上一頁下一頁返回2.3VI編輯和調試技術從程序框圖窗口創建前面板對象,用選擇和連線工具,可以右擊任一節點或端點,然后從彈出的快捷菜單中選擇Create→Constant→Control或Indicator等命令。LabVIEW會自動地在被創建的端點與所單擊對象之間接好連線。從程序框圖窗口創建前面板對象的方法如圖2-10所示。2.3.2數據流編程控制VI程序的運行方式稱為“數據流”。對一個節點而言,只有當它的所有輸入端口上的數據都為有效數據時,它才能被執行。當節點程序運行完畢后,它把結果數據送給所有的輸出端口,使之成為有效數據,并且數據很快從源端口送到目的端口。上一頁下一頁返回2.3VI編輯和調試技術圖2-11所示,這個VI程序將兩個輸入數值相乘,再把乘積減去50.0。這個程序中,程序框圖從左往右執行,這個執行次序不是由于對象的擺放位置,而是由于相減運算函數的一個輸入量是相乘函數的運算結果,它只有當相乘運算完成并把結果送到減運算的輸入口后才能繼續下去。請記住,一個節點(函數)只有當它所有的輸入端的數據都成為有效數據后才能被執行,而且只有當它執行完成后,它的所有輸出端口上的數據才成為有效數據。再看另一個程序,如圖2-12所示,試問哪一個節點函數將先執行?是乘法還是除法?在這個例子中,無法知道哪一個節點函數首先執行,因為所有輸入量幾乎同時到達。對于這樣一種相互獨立的數據流程,如果必須明確指定節點執行的先后次序,就必須使用順序(sequence)結構來明確執行次序。上一頁下一頁返回2.3VI編輯和調試技術2.3.3程序調試技術1.存在語法錯誤如果一個VI程序存在語法錯誤,則在面板工具條上的“運行”按鈕將會變成一個折斷的箭頭,表示程序不能被執行。這時這個按鈕被稱為錯誤列表。單擊該按鈕,則LabVIEW會彈出錯誤清單窗口,如圖2-13所示。選中其中任何一個所列出的錯誤,單擊ShowError按鈕,則出錯的對象或端口就會變成高亮顯示。上一頁下一頁返回2.3VI編輯和調試技術2.程序高亮執行在LabVIEW的工具條上有一個畫著燈泡的按鈕,這個按鈕稱為“高亮執行”按鈕。單擊該按鈕使該按鈕圖標變成高亮顯式,再單擊運行按鈕,VI程序就以較慢的速度運行,沒有被執行的代碼呈灰色顯示,執行后的代碼呈高亮顯示,并顯示數據流線上的數據值。這樣,就可以根據數據的流動狀態跟蹤程序的執行。3.斷點與單步執行斷點用來使程序執行中在某一位置暫停,以便于觀察中間結果。設置斷點的方法是從工具選板中選擇“設置與清除斷點”工具,如圖2-14(a)所示,在程序框圖中需要在設置斷點的對象上單擊。上一頁下一頁返回2.3VI編輯和調試技術4.探針探針在程序執行時顯示流過某一連線的數據值等信息,甚至可以根據數據值做出一定的響應。探針結合高亮度執行、單步執行和斷點等工具成為調試程序很有效的工具。探針有通用探針、內置探針、使用控件和自定義探針幾種。通用探針放置在連線上有兩種方法。(1)從工具選板中取出探針工具,放到連線上。(2)在連線上右擊,在彈出的快捷菜單中選擇Probe命令。以上兩種方法建立的探針如圖2-15所示,在連線上會顯示探針的序號,同時還會彈出一個ProbeWatchWindow窗口,該探針窗口顯示連線流過的數據值和數據源標簽。上一頁下一頁返回2.3VI編輯和調試技術使用其他探針的方法是在連線上右擊,在彈出的快捷菜單中選擇CustomProbe命令,在下一級子命令中選擇以下幾種探針。(1)ConditionalDoubleProbe帶條件雙精度探針。這種探針可以顯示通過連線的數據的更多信息,還可以對數據做出某些響應。自定義探針菜單,如圖2-16所示,ConditionalDoubleProbe就是創建帶條件雙精度探針選項,這個選項名稱和隨之創建的探針都與連線數據匹配。在圖2-16中創建的探針窗口中,Data選項卡顯示數據值和其他相關信息,Condition選項卡設置對數據的響應方式。(2)GenericProbe通用探針。上一頁下一頁返回2.3VI編輯和調試技術(3)Controls控件———打開控件選板,選擇一個數據類型匹配的控件放在“探針”窗口中。(4)New新建———打開一個向導,創建定制的探針,并保存為一個文件。上一頁返回2.4綜合案例2:模擬溫度顯示2.4.1任務描述使用隨機函數模擬采集溫度的電壓量,然后把電壓值轉換成攝氏或華氏溫度讀數,其前面板和程序框圖如圖2-17所示。2.4.2前面板設計(1)執行File→NewVI命令,打開一個新的前面板窗口。(2)把溫度計指示部件放入前面板窗口。①在前面板窗口的空白處單擊,然后從彈出的前面板中選擇Modern→Numeric→Thermometer選項。②在高亮的文本框中輸入Thermometer,再單擊。下一頁返回2.4綜合案例2:模擬溫度顯示(3)重新設定溫度計的標尺范圍為0.0~300.0。使用標簽工具,雙擊溫度計標尺的100.0,輸入300.0,再單擊鼠標或者工具欄中的按鈕。(4)在前面板窗口中放入豎直開關控制。①在面板窗口的空白處單擊,然后在彈出的前面板中選擇Classic→Boolean→VerticalSwitch選項,在高亮的文本框中輸入mode,單擊鼠標或者單擊工具欄中的按鈕。②使用標簽工具,在開關的“條件真”(True)位置旁邊輸入自由標簽“攝氏”,再在“條件假”(False)位置旁邊輸入自由標簽“華氏”。上一頁下一頁返回2.4綜合案例2:模擬溫度顯示2.4.3程序框圖設計(1)選擇Windows→ShowDiagram命令,打開程序框圖窗口。(2)單擊程序框圖窗口的空白處,彈出函數選板,從彈出的菜單中選擇所需的對象。(3)使用移位工具(PositioningTool),把圖標移至圖示的位置,再用連線工具連接起來。上一頁下一頁返回2.4綜合案例2:模擬溫度顯示2.4.4運行與保存1.單次運行選擇前面板窗口,使之變成當前窗口,并單擊“單次運行”圖標。改變顯示單位開關,觀察溫度計指示器的數值。2.連續運行單擊“連續運行”按鈕,使程序處于連續運行模式。單擊“放棄”執行圖標,停止連續運行模式。3.保存程序,關閉VI上一頁返回2.5子VI在設計G語言中,理解和使用VI的分層特性非常重要。當一個VI創建后,它可以作為一個子VI在高層VI的框圖中使用。一個子VI(SubVI)類似于傳統程序設計語言中的函數或子程序,是可以供其他的VI調用的VI。子VI是供其他VI使用的VI,與子程序類似。子VI是層次化和模塊化VI的關鍵組件,它能使VI易于調試和維護。使用子VI是一種有效的編程技術,因為它允許在不同的場合重復使用相同的代碼。G編程語言的分層特性就是在一個子VI中能夠調用到另一個子VI。下面可用表2-6表明子VI的作用。先看一個演示程序。從圖2-18中可以看到,“c-f.vi”子程序就相當于一個函數。下一頁返回2.5子VI2.5.1創建子VI創建子VI就是定義它的圖標和連接器。每個VI在前面板和程序框圖窗口的右上角都顯示了一個默認的圖標。啟動圖標編輯器的方法是,右擊面板窗口右上角的默認圖標,在彈出的快捷菜單中選擇EditIcon命令,如圖2-19所示。執行EditIcon命令后,彈出如圖2-20所示的圖標編輯器窗口。可以用窗口右邊的各種工具設計像素編輯區中的圖標形狀。編輯區下側的一個矩形框中顯示了一個實際大小的圖標。圖標編輯器的具體使用細節參閱有關資料。上一頁下一頁返回2.5子VI定義連接器的方法是,右擊面板窗口中的圖標窗口,在彈出的快捷菜單中選擇ShowConnector命令,連接器圖標會取代面板窗口右上角的圖標,如圖2-21所示。LabVIEW自動選擇的端子連接模式是控制對象的端子位于連接器窗口的左邊,顯示對象的端子位于連接器窗口右邊。選擇的端子數取決于前面板中控制對象和顯示對象的個數。連接器中的各個矩形表示各個端子所在的區域,可以用它們從VI中輸入或者輸出數據。如果有必要,也可以選擇另外一種端子連接模式。方法是:右擊圖標,在
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 怎么寫足球合同協議書
- 醫院員工合同協議書范本
- 保護孩子的策劃書3
- 入職合同解除協議書
- 音響轉讓合同協議書范本
- 2025年中國閥門行業發展趨勢及投資前景預測報告
- 工程合同價款變更協議書
- 商業計劃書紅杉資本
- 解除合同協議書填寫
- 講述創業精神與創新
- 2025屆廣東省深圳實驗學校高中園與惠東高級中學高三下學期5月適應性聯考(三模)物理試卷
- 2025年蘇教版科學小學五年級下冊期末檢測題附答案(二)
- 中國鐵路濟南局集團有限公司招聘普通高校考試真題2024
- 2025年高考第二次模擬考試物理(浙江卷)(考試版)-20250416-113627
- 施工項目資料管理試題及答案
- 煙草專賣合同協議書
- 車輛終止掛靠協議合同
- 《糖尿病合并高血壓患者管理指南(2025版)》解讀
- 2025年4月稽陽聯誼學校高三聯考語文試題解析
- 小學生科普天文知識課件
- 胃癌手術預康復管理中國專家共識(2024版)解讀
評論
0/150
提交評論