labview入門教程初學者必看_第1頁
labview入門教程初學者必看_第2頁
labview入門教程初學者必看_第3頁
labview入門教程初學者必看_第4頁
labview入門教程初學者必看_第5頁
已閱讀5頁,還剩39頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Labview入門教程亞為電子科技說明:1、不同labview版本,內容大同小異,不要過于核對圖標2、必須先安裝labview ,亞為的資料,版本不低于 2021,如果是串 口通信,還要安裝 NIVISA520O3、直接翻開亞為用戶資料的“ labview例程/*例程,看到的是 前面板,也就是交互界面.界面可以自行修改,注意右鍵- 數據操作 ,保存默認參數.4、波形圖上右鍵,可以導出或者另存數據.高速采集模式下,yav例程不自動保存,需要手動導出.高速模式下,不要采集時間過長,否那么系統(tǒng)崩潰,會內存溢出甚至藍屏死機.5、如果需要修改算法邏輯,按下Ctrl+E即可翻開程序框圖界面.里 面的數學符

2、號,仔細研究下,就應該能熟悉.看懂加減乘除即可.6、這個文檔認真看十遍,你就是 Labview編程高手啦,亞為科技不 負責labview編程指導哦.高手都是自學的.第一講:熟悉 Labview1.1 Labview 簡介在開始菜單里找Labview點擊翻開,會出現如下界面:從FileNew VI或者從右半局部中的NewBlank VI都可以翻開如下界面:上圖中前圖是虛擬儀器的前面板,是用戶使用的人機界面,后面的是程序框圖界 面(即后面板).在LabVIEW勺用戶界面上,應特別注意它提供的操作模板,包括工具(Tools ) 模板、限制(Controls )模板和函數(Functions )模板.

3、這些模板集中反映了 該軟件的功能與特征.下面我們來大致瀏覽一下.工具模板(Tools Palette )該模板提供了各種用于創(chuàng)立、修改和調試VI程序的工具.如果該模板沒有出現,那么可以在 Windows菜單下選擇ShowTools Palette命令以顯示該模板.當從模板內選擇了任一種工具后, 鼠標箭頭就會變成該工具相應的形狀.當從Windows菜單下選擇了 Show Help Window功能后,把工具模板內選定的任一種工具 光標放在流程圖程序的子程序SubVI或圖標上,就會顯示相 應的幫助信息.工具圖標有如下幾種:圖標名稱功能1囹Operate Value操作值用于操作前面板的限制和顯示.

4、使用它向數字 或字符串限制中鍵入值時,工具會變成標簽工 具2Position/Size/Select 選擇用于選擇、移動或改變對象的大小.當它用于 改義對象的連框大小時,會變成相應形狀.3因Edit Text 編輯文本用于輸入標簽文本或者創(chuàng)立自由標簽.當創(chuàng)立 自由標簽時它會變成相應形狀.4Connect Wire連線用于在流程圖程序上連接對象.如果聯機幫助 的窗口被翻開時,把該工具放在條連線上, 就會顯示相應的數據類型.5IMObjectShortcut Menu對象菜單用鼠標左鍵可以彈出對象的彈出式菜單.6囹ScrollWindows 窗口漫游使用該工具就可以/、需要使用滾動條而在窗口 中漫

5、游.7憧Set/ClearBreakpoint 斷點設置/去除使用該工具在VI的流程圖對象上設置斷點.8Probe Data 數據探針可在框圖程序內的數據流線上設置探針.通過 控針窗口來觀察該數據流線上的數據變化狀 況.90Get Color 顏 色提取使用該工具來提取顏色用于編輯其他的對象.1 0BZSet Color 顏色設置用來給對象定義顏色.它也顯示出對象的前景 色和背景色.卜面的兩個模板是多層的,其中每一個子模板下還包括多個對象限制模板Control Palette 注意:只有翻開前面板時才能調用該模板該模板用來給前面板設置各種所需的輸出顯示對象 和輸入限制對象.每個圖標代表一類子模

6、板.如果限制 模板不顯示,可以用 Windows菜單的 Show Controls Palette 功能翻開它,也可以在前面板的空白處,點擊 鼠標右鍵,以彈出限制模板.限制模板如右圖所示,它包括如下所示的一些子模 板.子模板中包括的對象,我們在功能中用文字簡要介 紹.圖標子模板名稱功能11Numeric 數值量數值的限制和顯示.包含數字式、指針式顯示表 盤及各種輸入框.2維Boolean 布爾 量邏輯數值的限制和顯示.包含各種布爾開關、按 鈕以及指示燈等.3的叼h1String & Path字符串和路 徑字符串和路徑的限制和顯示.4嘴1Array&Cluster 數組 和簇數組和簇的限制和顯示

7、.5%, raList & Table列表和表格列表和表格的限制和顯示6Graph 圖形顯示顯示數據結果的趨勢圖和曲線圖.7出丁1卜 寸由UIT |rRing & Enum 環(huán)與枚舉環(huán)與枚舉的限制和顯示.8國JI/O 輸入/輸出 功能輸入/輸出功能.于操作OLE ActiveX等功能.91Refnum參考數10EfDigilogControls 數字 限制數字限制11施!ClussicControls 經典限制經典限制,指以前版本軟件的面板圖標.12置$的,:|謫ActiveX用于ActiveX等功能.13VDecorations裝飾用于給前面板進行裝飾的各種圖形對象.14SelectaCon

8、trols 限制 選擇調用存儲在文件中的限制和顯示的接口.15MLUser Controls用戶限制用戶自定義的限制和顯示.功能模板Functions Palette注:只有翻開了流程圖程序窗口即后面板,才能 出現功能模板.功能模板是創(chuàng)立流程圖程序的工具.該模板上的每一 個頂層圖標都表示一個子模板.假設功能模板不出現,那么可 以用Windows菜單下的ShowFunctions Palette 功能翻開 它,也可以在流程圖程序窗口的空白處點擊鼠標右鍵以彈 出功能模板.功能模板如右圖所示,其子模塊如下所示.個別不 常用的子模塊未包含10標子模板名稱功能1Structure 結構包括程序限制結構命

9、令,例如循環(huán)限制等,以 及全局變量和局部變量.2TNumeric 數值運算包括各種常用的數值運算,還包括數制轉換、 三角函數、對數、復數等運算,以及各種數值 常數.3圈Boolean 布爾運算包括各種邏輯運算符以及布爾常數.4IdB“ 保String 字符串 運算包含各種字符用操作函數、數值與字符串之問 的轉換函數,以及字符用常數等.5用Array 數組包括數組運算函數、數組轉換函數,以及常數 數組等.6Cluster 簇包括簇的處理函數,以及群常數等.這里的群 相當于C語百中的結構.7Comparison tt 較包括各種比擬運算函數,如大于、小于、等于.8Time & Dialog時間和對

10、話 框包括對話框窗口、時間和出錯處理函數等.9凰File I/O 文件 輸入/輸出包括處理文件輸入/輸出的程序和函數.1 01DataAcquisition數據采集包括數據采集硬件的驅動,以及信號調理所需 的各種功能模塊.1 1Waveform 波 形各種波形處理工具1 2Analyze 分析信號發(fā)生、時域及頻域分析功能模塊及數學工 具.1 3InstrumentI/O 儀器輸入/ 輸出包括GPIB488、488.2、用行、VXI儀器限制 的程序和函數,以及VISA的操作功能函數.1 4咚1Motion&Vision 運動與 景像1 5工卜J AMathematics數學包括統(tǒng)計、曲線擬合、公

11、式框節(jié)點等功能模塊, 以及數值微分、積分等數值計算,具模塊.1 6導令 Communication通訊包括TCP DDE ActiveX和OLEfT功能的處理 模塊.1 7餐Application Control 應用 限制包括動態(tài)調用VI、標準可執(zhí)行程序的功能函 數.1 8Graphics&Sound 圖形與 聲音包括3n OpenGL聲音播放等功能模塊.包括 調用動態(tài)連接庫和 CIN節(jié)點等功能的處理模 塊.1 9胤Tutorial 不教 課程包括LabVIEW示教程序.2 0Report Generation 文檔生成2 1鬼Advance d高級 功能2 2畫Select a VI 選

12、擇子VI2 3User Library用戶子VI 庫卜面我們通過練習掌握如何應用 Labview7.1 練習一:建立一個測量溫度和容積的 VI步驟如下:1 .選才F File?New VI ,翻開一個新的前面板窗口2 .從 ControlsAll Controlsnumeric 中選擇 Tank 放到前面板中.注:如果前面板中沒有 Controls模版,可在菜單欄選 windowshow controls palette,即可翻開或直接點擊鼠標右鍵3 .在標簽Tank文本框中輸入“容積,然后在前面板中的其他任何位 置單擊一下.4 . 同樣從 ControlsAll Controlsnumeri

13、c中選擇 Thermometer 放至U前面板中5 .在標簽文本框中輸入“溫度計,然后在前面板中的其他任何位置單擊6 .把容器顯示對象的顯示范圍設置為 0.0到1000.0 0a.雙擊容器坐標的10.0標度,使它高亮顯示.在坐標中輸入1000, 再在前面板中的其他任何地方單擊一下.這時0.0到1000.0之間的增量將被自動顯示.7 .在容器旁配數據顯示.將鼠標移到容器上,點右鍵,在出現的快速菜單中選VisibleItermsDigital Display 即可.前面板如以下圖所示:溫度1圖1 1練習一的前面板圖8 . WindowsShow block Diagram 翻開流程圖窗口,在窗口中

14、建立如下程 序:圖12練習一的流程圖該流程圖中新增的對象有兩個乘法器、兩個數值常數、兩個隨機數發(fā)生器、 一個延時函數,一個while循環(huán),一個布爾常量,溫度和容積對象是由前棉板的 設置自動帶出來的.a.乘法器(Multiply )、隨機數發(fā)生器(Randomnumber (0-1)和數 值常數 (Numberic constant ) 由 FunctionsAll FunctionsNumeric中拖出.(注:如果面板中沒有 Functions 模 版,可以從菜單欄中選WindowShoW:unctions palette 或點擊鼠 標右鍵)b.延時函數(Time delay )可以從 Fun

15、ctionsAll FunctionsTime&DialogTime delay中拖出,在自動彈出的對話框中輸入要延時的時間(比方 0.5s) o9 .連線:把鼠標放到函數端子上,當鼠標自動變?yōu)檫B線模式并出現一閃一 閃時,點擊一下鼠標左鍵然后找要連接的函數端子,當鼠標出現一閃一閃時,再次點擊鼠標左鍵,這時就把兩個函數連接起來了.10 . 最后選 FunctionsAll FunctionsStructuresWhile Loop , 在已 編好的程序左上角點擊鼠標左鍵,然后移動鼠標,直到出現的虛線把程序全包含 起來再點鼠標左鍵,就創(chuàng)立了一個 While循環(huán).在右下角條件端子上點擊鼠標右 鍵,再

16、彈出的菜單里選 Creat constant就可,目的是讓循環(huán)能夠維持下去.11 .在前面板中,單擊Run (運行)按鈕,運行該VI12 .在后面板的工具欄中點擊類似燈泡狀的按鈕,就可以看見程序中各個數 據流的走向.13 .選才? File?Save ,把該VI保存到任意目錄下.14 .選擇 File?Close ,關閉該 VI .練習一結束附注與說明:1 .顯示對象(Indicator )、限制對象(Control )和數值常數對象 顯示對象和限制對象都是前面板上的控件,前者有輸入端子而無輸出端子, 后者正好相反,它們分別相當于普通編程語言中的輸出參數和輸入參數.數值常數對象可以看成是限制對

17、象的一個特例在前面板中創(chuàng)立新的限制對象或顯示對 象時,LabVIEW都會在流程圖中創(chuàng)立對應的端 子.端子的符號反映該對象的數據類型.例如, DBL符號表示對象數據類型是雙精度數;TF符號表示布爾數;I16符號表示16位整型數; ABCt號表示對象數據類型是字符串o 一個對象應當是顯示對象還是限制對象必須 弄清楚,否那么無法正確連線.有時他們的圖標 是相似或相同的,可以根據需要明確規(guī)定它是 顯示對象還是限制對象.方法是將鼠標移到圖 標上,然后點右鍵,可出現快速菜單例見右Numerict o ControlSynckr on.ou.s H i spl ayFind TermiiialShciw)D

18、4ta Opersti onsIKey evi geli cm .Replace|R電jrr 電 want 電ti on)Dita Hartg*.Fermat 皮.圖.如果菜單中的第一項為哪一項 Chang to Control ,說明這是一個顯示對象,你可 以根據需要,將其變?yōu)橄拗茖ο?如果菜單中的第一項為哪一項Changto Indicator ,說明這是一個限制對象,你也可以根據需要,將其變?yōu)轱@示對象.2 .關于連線連線是程序設計中較為復雜的問題. 流程圖上的每一個對象都帶有自己的連 線端子,連線將構成對象之間的數據通道.由于這不是幾何意義上的連線,因此并非任意兩個端子間都可連線,連線類

19、似于普通程序中的變量.數據單向流動, 從源端口向一個或多個目的端口流動. 不同的線型代表不同的數據類型. 下面是 一些常用數據類型所對應的線型和顏色:顏色林里一維數組二維數組整形數蘭色1浮點數橙色邏輯量 字符串綠色 r粉色文件路徑青色當需要連接兩個端點時,在第一個端點上點擊連線工具從工具模板欄調 用,然后移動到另一個端點,再點擊第二個端點.端點的先后次序不影響數據 流動的方向.當把連線工具放在端點上時,該端點區(qū)域將會閃爍,表示連線將會接通該端 點.當把連線工具從一個端口接到另一個端口時, 不需要按住鼠標鍵.當需要連 線轉彎時,點擊一次鼠標鍵,即可以正交垂直方向地彎曲連線,按空格鍵可以改 變轉角

20、的方向.接線頭是為了幫助正確連接端口的連線.當把連線工具放到端口上,接線頭就會彈出.接線頭還有一個黃色小標識框,顯示該端口的名字.線型為曲折號的連線表示壞線.出現壞線的原因有很多,例如:連接了兩個 限制對象;源端子和終點端子的數據類型不匹配例如一個是數字型,而另一個是布爾型.可以通過使用定位工具點擊壞線再按下來刪除它.選擇Edit?Remove Bad Wires或者按下 可以一次刪除流程圖中的所有壞線. 當VI無法運行,或者顯示 Signal has Loose Ends信號喪失終端的錯誤信息時,這是一個快捷的調試方法.程序調試技術(以下操作大家可以用練習一嘗試)1 .找出語法錯誤如果一個V

21、I程序存在語法錯誤,那么在面板工具條上的運行按鈕會變成一個 折斷的箭頭,表示程序不能被執(zhí)行.這時該按鈕被稱作錯誤列表.點擊它, 那么LabVIEW單出錯誤清單窗口,點擊其中任何一個所列出的錯誤,選用Find 功能,那么出錯的對象或端口就會變成高亮.2 .設置執(zhí)行程序高亮在LabVIEW勺工具條上有一個畫著燈泡的按鈕,這個按鈕叫做“高亮執(zhí)行 按鈕上.點擊這個按鈕使它變成高亮形式,再點擊運行按鈕,VI程序就以較 慢的速度運行,沒有被執(zhí)行的代碼灰色顯示,執(zhí)行后的代碼高亮顯示,并顯 示數據流線上的數據值.這樣,你就可以根據數據的流動狀態(tài)跟蹤程序的執(zhí) 行.3 .斷點與單步執(zhí)行為了查找程序中的邏輯錯誤,有

22、時希望流程圖程序一個節(jié)點一個節(jié)點地執(zhí) 行.使用斷點工具可以在程序的某一地點中止程序執(zhí)行,用探針或者單步方 式查看數據.使用斷點工具時,點擊你希望設置或者去除斷點的地方.斷點 的顯示對于節(jié)點或者圖框表示為紅框,對于連線表示為紅點.當 VI程序運 行到斷點被設置處,程序被暫停在將要執(zhí)行的節(jié)點,以閃爍表示.按下單步 執(zhí)行按鈕,閃爍的節(jié)點被執(zhí)行,下一個將要執(zhí)行的節(jié)點變?yōu)殚W爍,指示它將 被執(zhí)行.你也可以點擊暫停按鈕,這樣程序將連續(xù)執(zhí)行直到下一個斷點.4 .探針可用探針工具來查看當流程圖程序流經某一根連接線時的數據值.從 Tools 工具模板選擇探針工具,再用鼠標左建點擊你希望放置探針的連接線.這時 顯示

23、器上會出現一個探針顯示窗口. 該窗口總是被顯示在前面板窗口或流程 圖窗口的上面.在流程圖中使用選擇工具或連線工具,在連線上點擊鼠標右 鍵,在連線的彈出式菜單中選擇“探針命令,同樣可以為該連線加上一個 探針.5 .2子VI的建立子VI (SubVI)相當于普通編程語言中的子程序,也就是被其他的 VI調用 的VI.可以將任何一個定義了圖標和聯接器的 VI作為另一個VI的子程序.在 流程圖中翻開 Functions?Select a VI .,就可以選擇要調用的子 VI .構造 一個子VI主要的工作就是定義它的 圖標和聯接器.每個VI在前面板和流程圖窗口的右上角都顯示了一個默認的圖標.啟動圖 標編輯

24、器的方法是,用鼠標右鍵單擊面板窗口的右上角的默認圖標,在彈出菜單中選擇Edit Icon .以下圖顯示了圖標編輯器的窗口.可以用窗口左邊的各種工具設計像素編輯區(qū)中的圖標形狀.編輯區(qū)右側的一個方框中顯示了一個實際大小的圖標.圖標編輯器的具體使用細節(jié)參閱練習二lean E ditarFile Edit Help圖標編輯器窗口聯接器是VI數據的輸入輸出接口.如果用面板限制對象或者顯示對象從子VI中輸出或者輸入數據,那么這些對象都需要在聯接器面板中有一個連線端子. 您可以通過選擇VI的端子數并為每個端子指定對應的前面板對象以定義聯接 器.定義聯接器的方法是,用鼠標右鍵單擊面板窗口中的圖標窗口,在快捷菜

25、單 中選擇 Show Connector.聯接器圖標會取代面板窗口右上角的圖標.LabVIEW自動選擇的端子連接模 式是限制對象的端子位于聯接器窗口的左邊, 顯示對象的端子位于聯接器窗口右 邊.選擇的端子數取決于前面板中限制對象和顯示對象的個數.聯接器中的各個矩形表示各個端子所在的區(qū)域,可以用它們從VI中輸入或者輸出數據.如果必要,也可以選擇另外一種端子連接模式.方法是在圖標上單 擊鼠標右鍵單出快捷菜單,選擇Show Connector,再次彈出快捷菜單,選擇Patterns.下面我們通過一個練習說明具體操作.練習二:子VI的建立及調用步驟如下:1 .翻開一個NEW VI2 .在前面板中放置一

26、個 Number control控件數據輸入控件和一個 Number Indicator 控件數據顯示,都在 All controlsnumberic 模板下并把標 簽分別改為X和XA6,如以下圖:3 .后面板程序圖如以下圖連接,這是一個計算 X的6次方程序類似的方法,可 以修正采集的數據哦4 .在前面板中,用鼠標右鍵單擊窗口右上角的圖標,在快捷菜單中選擇EditIcon - -.,也可以雙擊圖標激活圖標編輯器.注意只能在前面板中編輯圖標和聯接器.5 .刪除默認圖標.使用Select Tool 矩形框,單擊并拖動想要刪除的局部, 按下Delete.也可以通過雙擊工具框中的陰影矩形刪除圖標.6

27、.用Text Tool 文本工具|因 創(chuàng)立文本寫好后可以用方向鍵移動文字在圖 標中的位置.得到圖標將如以下圖所示.7.8.單擊OK,關閉編輯器.新創(chuàng)立的圖標就顯示在屏幕右上角的圖標窗口中.用鼠標右鍵單擊前面板中的圖標窗口,在快捷菜單中選擇Show9.Connector,設置聯接器端子連接模式.在默認卜#況下,LabVIEW會 根據前面板中的限制對象和顯示對象的數目確定聯接器的端子連 接模式.由于前面板中有兩個對象,所以聯接器有兩個端子,如 右圖所示.用鼠標右鍵單擊聯接器窗口,在快捷菜單中選擇Rotate 90 Degrees 旋轉90度,注意聯接器窗口的變化,如右圖所示. 端子連接到X和XA6

28、 :a.點擊聯接器左部端子.光標自動變成連線工具,同時端子 變成黑色.b.單擊X控件對象.一個移動的虛線框把它包圍起來,選中的端子的顏 色變?yōu)榕c限制/顯示對象的數據類型一致的顏色.如果單擊前面板中的任何空白區(qū)域以后,虛線消失,選中的端子變暗,這表示您已經成功地把顯示對象和上部端子連接起來.如果端子是白色,那么表示沒有連接成功.c.重復步驟a和b ,把右部的端子和XA6連接 起來.c.用鼠標右鍵單擊聯接器,在快捷菜單中選擇Show Icon .10 .選才? File?Save ,保存該VI ,保存名為XA6.這樣這個VI就完成了,并也 可以作為子VI被其他的VI調用.子VI的圖標在主VI的流程

29、圖中代表它.11 .調用子VI.新建一個New VI12 .在前面板中放置一個 Number control 控件和一個 Number Indicator 控件, X和XA6,如以下圖13 .后面板操作.在 FunctionsAll FunctionsSelect a VI 才保存的VI,并連接好線如以下圖:,選中并翻開剛14.運行該程序練習二結束1.3使用三種圖表模式目的:查看 VI分別在三種模式下執(zhí)行時圖表的顯示.練習三:建立前面板及流程圖如下Waveform Chartra-Time步驟:1 .在前面 板放置 chart ( ControlsAll ControlsGraphWavefo

30、rm chart )控件2 .在后面板放置 Sine 函數(FunctionsAll FunctionsNumbericTrigonometricsine )及 Wait Until Next ms Multiple 函數 (FunctionsAll FunctionsTime&Dialog Wait Until Next ms Multiple ) 并在左端子建立常數如100o最后放置while循環(huán)該程序中利用一個 while循環(huán)產生連續(xù)的sin(i)函數值,并及時地在chart 圖表上顯示出來,現在前面板上的chart是一個strip ,這是一個坐標式顯示器, 與紙帶式圖表記錄器相似.每接

31、受一個新數據,新數據就將顯示在右側,而原有 數據移動到左側3 .用鼠標選中chart,點擊右鍵,可在快速菜單中選擇 Advanced?Update Mode子菜單.可以選擇更換其他兩種更新模式.示波器模式是一個返回式的顯示器,與示波器類似.每接受一個新數據時, 它就把新數據繪制在原有數據的右側.當數據曲線到達顯示區(qū)的右邊緣時,VI會 刪除全部圖形,從左邊緣重新開始繪制曲線.示波器模式顯然要快于條狀圖模式, 由于它不會由于滾動產生溢出.掃描模式更接近于示波器模式,但是當數據曲線到達顯示區(qū)的右邊時, 不會 變成空白,而是會出現一個移動的垂線,標記新數據的開始,并當 VI添加新數 據時穿過整個顯示區(qū)

32、.練習三 結束.第二講程序結構2.1 循環(huán)結構2.1.1 While 循環(huán)While循環(huán)可以反復執(zhí)行循環(huán)體的程序,直至到達某個邊界條件.它類 似于普通編程語言中的 Do循環(huán)和Repeat-Until 循環(huán).While循環(huán)的框圖 是一個大小可變的方框,用于執(zhí)行框中的程序,直到條件端子接收到的布爾 值為FALSE 該循環(huán)有如下特點:計數從0開始i=0 .先執(zhí)行循環(huán)體,而后i+1 ,如果循環(huán)只執(zhí)行一次,那么循環(huán)輸出值i=0o循環(huán)至少要運行一次.1條件端子 r圖4 1 While循環(huán)示意圖由于在練習一中已講過 While循環(huán)的應用,大家可以自己做下面的練習,其前面板和流程圖如以下圖所示:循環(huán)延時ElT

33、-Vlsible liensHeIiDescription Tip.Set BreakpointAdd Shi ft BeusterStop If 7rue4 C mt in口e I TrueBefore Loop BeginsFirst IterationSub&eq(jenl llerationsLast lieratioin圖2 3 Shift Register的工作過程移位存放器(Shift Register )移位存放器可以將數據從一個循環(huán)周期傳遞到另外一個周期.在程序設計中,經常要用到它.創(chuàng)立一個移位存放器的方法是,用鼠標右鍵單 擊循環(huán)的左邊或者右邊在快捷菜單中選擇A

34、ddShift Register .如右圖所示.移位存放器在流程圖上用在循環(huán)邊框上相 應的一對端子來表示.右邊的端子中存儲了一 個周期完成后的數據,這些數據在這個周期完 成之后將被轉移到左邊的端子,賦給下一個周 期.移位存放器可以轉移各種類型的數據- 數值、布爾數、數組、字符串等等.它會自動 適應與它連接的第一個對象的數據類型.以下圖 表示了它的工作過程.可以令移位存放器記憶前面的多個周期的數值.這個功能對于計算數據均值 非常有用.還可以創(chuàng)立其他的端子訪問先前的周期的數據, 方法是用鼠標右鍵單 擊左邊或者右邊的端子,在快捷菜單中選擇 Add Element 0例如,如果某個移位 存放器左邊的端

35、口含有三個元素,那么就可以訪問前三個周期的數據.練習四使用移位存放器目的:創(chuàng)立一個可以在圖表中顯示運行平均數的VI.前面板1 .翻開一個新的前面板,根據以下圖所示創(chuàng)立對象.2 .把波形圖表的坐標范圍改為0.0到2.0.3 .在添加開關之后,用鼠標右鍵單擊它,在快捷菜單中選擇MechanicalAction?Latch When Pressed ,再選擇 Operate?Make Current Values Default把ON犬態(tài)設置為默認狀態(tài).練習四的前面板流程圖1 .按以下圖創(chuàng)立流程圖.練習四的流程圖2 .在流程圖中添加 While循環(huán)(Functions?Structures ),創(chuàng)立

36、移位存放器.a.用鼠標右鍵單擊 While循環(huán)的左邊或者右邊,在快捷菜單中選擇AddShift Register .b.用鼠標右鍵單擊存放器的左端子,在快捷菜單中選擇 Add Element,添加 一個存放器.用同樣的方法創(chuàng)立第三個元素.3 .Random Number (0 - 1)函數(Functions?Numeric -產生 0 至U 1 之間的某個隨機數.4 .Compound Arithmetic 函數(Functions?Numeric -在本練習中,它將返 回兩個周期產生的隨機數的和.如果要參加其他的輸入,只需用右鍵單擊某個輸 入,從快捷菜單中選擇 Add Input o5 .

37、除法函數(Functions?Numeric -在本練習中,它用于返回最近四個隨機數的平均值.6 .數值常數(Functions?Numeric )在 While 循環(huán)的每個周期,RandomNumber(0 -1)函數將產生一個隨機數.VI就將把這個數參加到存儲在存放器中的最近 三個數值中.Random Number (O 1)再將結果除以4,就能得到這些數的平均值(當前數加上以前的三個數).然后再將這個平均值顯示在波形圖中.7 .Wait Until Next ms Multiple 函數 (Functions?Time & Dialog -它將保證循環(huán)的每個周期不會比毫秒輸入快.在本練習

38、中,毫秒輸入的值是500毫秒. 如果用鼠標右鍵單擊圖標,從快捷菜單中選擇Visible?Label ,就可以看到Wait Until Next ms Multiple 的標簽.8 .用鼠標右鍵單擊 Wait Until Next ms Multiple功能函數的輸入端子,在快捷菜單中選擇Create Constant .出現一個數值常數,并自動與功能函數連接.9 .將Constant設置為500.這樣連接到函數的數值常數設置了500毫秒的等待時間.因此循環(huán)每半秒執(zhí)行一次.注意, VI用一個隨機數作為移位存放器的初 始值.如果沒有設置移位存放器端子的初始值,它就含有一個默認的數值,或者 上次運行

39、結束時的數值,因此開始得到的平均數沒有任何意義.10 .執(zhí)行該VI ,觀察過程.11 .把該VI保存.練習四結束.附注:移位存放器的初值:上面的練習中對移位存放器設置了初值 0.5.如果不設這個初值,默認的 初值是0.在這個例子中,一開始的計算結果是不對的,只有到循環(huán)完3次后移 位存放器中的過去值才填滿,即第4次循環(huán)執(zhí)行后可以得到正確的結果.2.1.2 For 循環(huán)For循環(huán)用于將某段程序執(zhí)行指定次數.和While循環(huán)一樣,它不會馬上出現在流程圖中,而是出現一個小的圖標,而后您可以修改它的大小和位置.具體的方法是,先單擊所有端子的左上方,然后按下鼠標,拖曳出一個包含所有端子 的矩形.釋放鼠標時

40、就創(chuàng)立了一個指定大小和位置的For循環(huán).I 11 IFor循環(huán)將把它的框圖中的程序執(zhí)行指定的次數,For循環(huán)具有下面這兩個端子:N:計數端子(輸入端子)一一用于指定循環(huán)執(zhí)行的次數.I:周期端子(輸出端子)一一含有循環(huán)已經執(zhí)行的次數.上圖顯示了一可以產生100個隨機數并將數據顯示在一個圖表上的 For循環(huán).在 該例中,i的初值是0,終值是99.練習五使用For循環(huán) 目的:用For循環(huán)和移位存放器計算一組隨機數的最大值.1 .翻開一個新的前面板,根據以下圖創(chuàng)立對象.a.將一個數字顯示對象放在前面板,設置它的標簽為“最大值.b.將一個波形圖表放在前面板,設置它的標簽為“隨機數.將圖表的縱坐 標范圍改

41、為0.0到1.0.c.在圖表的快捷菜單中選擇 Visible Items?Scrollbar 和 Digital Display , 并隱藏 Plot Legend .d.用移位工具修改滾動欄的大小.(右鍵可以導出數據)隨機卷o o.00 toM 2 .署 d4J口 Aw0,40Ini ,I T值 大 最O5練習五的前面板和流程圖2 .根據上圖畫流程圖.3 .在流程圖中放置一個 For循環(huán)(Functions?Structures ).4 .在For循環(huán)的邊框處單擊鼠標右鍵,在快捷菜單中選擇 AddShift Register 05 .將以下對象添加到流程圖.a.Random N

42、umber (0 1)函數(Functions?Numeric -產生 0 至U 1 之間的某個隨機數.b.數值常數(Functions?Numeric -在這個練習中需要將移位存放器的初始值設成00c.Max&Min函數Functions?Comparison -輸入兩個數值,再將它們的最大值輸出到右上角,最小值輸出到右下角.這里只需要最大值,只用連 接最大值輸出.d.數值常數Functions?Numeric -For循環(huán)需要知道需要執(zhí)行的次數.本練習中是100次.6 .根據上圖連接各個端子.7 .運行該VI.8 .將該VI保存.練習五結束9 .2分支結構:CaseCase結構含有兩個或者

43、更多的子程序Case,執(zhí)行那一個取決于與選擇端 子或者選擇對象的外部接口相連接的某個整數、布爾數、字符串或者標識的值. 必須選擇一個默認的Case以處理超出范圍的數值,或者直接列出所有可能的輸 入數值.Case結構見以下圖,各個子程序占有各自的流程框,在其上沿中央有相 應的子程序標識:Ture、False或1、2、3.按鈕用來改變當前顯示的子程 序各子程序是重疊放在屏幕同一位置上的.條件端子 J子程序標識按鈕 練習六使用Case結構目的:創(chuàng)立一個VI以檢查一個數值是否為正數.如果它是正的,VI就計算它的平 方根,反之那么顯示出錯.前面板1 .翻開一個新的前面板,并根據以下圖所示創(chuàng)立對象.限制對

44、象用于輸入數值, 顯示對象用于顯示該數值的平方根.NumberSQRT42.00|1.41流程圖2 .照以下圖創(chuàng)立流程圖.練習六的面板和流程圖3 .從Functio ns?Structures中選擇一個 Case結構,并放置在在流程圖中.Case結構是一個可以改變大小的方框.先來做Ture的情況,照流程圖上半局部構造.a. Greater Or Equal To 0? 函數(Functions?Comparison -如果輸入數值大于或者等于0就會返回一個TRUE.b. Square Root 函數(Functions?Numeric -返回輸入數值的平方根.連好線c.點擊Case框的選擇按鈕

45、,轉入False情況編程數值常數(Functions?Numeric )這里用于顯示錯誤的代數值-999.00.d. One Button Dialog 函數(Functions?Time & Dialog )在這里它用于顯示一個對話框,內容是 Error.e.字符串常數(Functions?Strin g)用Edit Text Tools在對話框中輸入字符串.該VI在TRUEUc者FALSE青況下都會執(zhí)行.如果/&入的數值大于等于 0, VI 會執(zhí)行TRUECase,返回該數的平方根,否那么將會輸出999.00,并顯示一個對 話框,內容為Error.返回前面板,運行該VI.修改標簽為Numb

46、er的數字式限制對象的數值,分 別嘗試一個正數和負數.注意,當把數字式限制對象的值改為負數時,LabVIEW會顯示Case結構的FALSE Case中設置的出錯信息.4.保存該VI oVI的算法本練習中的流程圖功能相當于代碼式編程語言中的以下偽代碼:if (Number = 0) thenSquare Root Value = SQRT(Number) elseSquare Root Value = -999.00Display Message Error. end if練習六結束.2.3順序結構和公式節(jié)點2.3.1 順序結構(Sequence Structure )在代碼式的傳統(tǒng)編程語言中,

47、默認的情況是,程序語句根據排列順序執(zhí)行, 但LabVIEW中不同,它是一種圖形化的數據流式編程語言.在以下圖左圖中,假設有A、B、C、D4個節(jié)點,其數據流向如右圖所示.根據數據流式語言的約定,順序結構的說明任何一個節(jié)點只有在所有的輸入數據有效時才會執(zhí)行,所以圖中,當且僅當A、B、C3個節(jié)點執(zhí)彳T完,使得D節(jié)點的3個輸入數據都到達 D節(jié)點后,D節(jié)點才執(zhí) 行.但是你要注意,這里并沒有規(guī)定 A B C3個節(jié)點的執(zhí)行順序.在LabVIEW 中這種情況下,A、B、C的執(zhí)行順序是不確定的,如果你需要對它們規(guī)定一個確 定的順序,那就需要使用本節(jié)介紹的“順序結構.上圖中的右邊是順序結構的圖標,它看上去像是電影

48、膠片.它可以按一定順 序執(zhí)行多個子程序.首先執(zhí)行0幀中的程序,然后執(zhí)行1幀中的程序,逐個執(zhí)行 下去.與Case結構類似,這多幀程序在流程圖中占有同一個位置.練習七使用順序結構目的:創(chuàng)立一個VI ,計算生成等于某個給定值的隨機數所需要的時間.前面板翻開一個新的前面板,并根據以下圖所示創(chuàng)立對象.電定數龍練習七的流程圖共3幀1.在流程圖中放置順序結構Functions?Structures .2.用鼠標右鍵單擊幀的邊框,在快捷菜單中選擇Add Frame After ,創(chuàng)立一個Ml 我們約定數據是0到100范圍的整數.當前值用于顯示當前產生的隨機數.“執(zhí)行次數用于顯示到達指定值循環(huán)執(zhí)行的次數.匹配時

49、間用來顯示到達指定 值所用的時間.M算顯的時間叼!配用目穢I給定數據:50練習七的前面板流程圖回取初蠟時間M 2 .更當前值執(zhí)行次數匹配時間秒60.00 (Jyn nncannoociDD匹配計算新幀.重復這個步驟,再創(chuàng)立一個幀.共3楨.3 .選中第0楨,設置讀取初始時間(子)程序4 .第0幀的下邊框上含有一個小方框,其中有一個箭頭.這個方框叫做順序局部變量,可以在同一個順序結構中的各個幀之間傳遞數據.用鼠標右鍵單擊第0幀的底部邊框,選擇 Add Sequence Local ,創(chuàng)立順序局部變量.順序局部變量 顯示為一個空的方塊.當您將某個功能函數與順序局部變量相連時,方塊中的箭頭就會自動顯示

50、.5 . Tick Count (ms)函數(Functions?Time & Dialo g)返回啟動 到現在的時間(以毫秒為單位).在這里例子里需要使用兩個這個函數.另一個在 第2幀中.(上)6 .按圖連好線.轉入第1幀.該幀是匹配計算,內含一個循環(huán)結構.該圖中使 用的新函數有:卜 Round to Nearest函數(Functions?Numeric )在該例中,它用于取0至IJ 100之間的隨機數到距離最近的整數.【?Not Equal?函數(Functions? Comparison)在該例中,它將隨機數和前面板中設置的數相比擬,如果兩者不相等會返回TRUE值,否那么返回FALSE

51、Increment函數(Functions?Numeric )在該例中,它將 While循環(huán)的計數器加1.7 .按圖連好線.轉入第2幀在第0幀中,Tick Count (ms功能函數將以毫秒為單位表示當前時間.這個數值被連到順序局部變量,這樣它就可以被后續(xù)的幀使用.在第1幀中, 只要函數返回的值與指定值不等,VI就會持續(xù)執(zhí)行 While循環(huán).在第2幀 中,Tick Count (m功能函數以毫秒為單位返回新的時間. VI從中減去 原來的時間(由第0幀通過順序局部變量提供)就可以計算出花費的時間.8 .返回前面板,在Number to Match限制對象中輸入一個數值,執(zhí)行該 VI.9 .把該V

52、I保存.練習七結束.附注與說明:設置數據范圍在設定一個數據對象時,可以設置對輸入數據的限制,利用快捷鍵選擇Data Range 選項,將會出現如下對話框:圖設置數據范圍它可以預防用戶創(chuàng)立的限制對象或顯示對象的值超出某個預設的范圍. 您可 以選擇忽略這個值,將它強制修改到范圍以內,或暫停程序的執(zhí)行.在程序執(zhí)行 時,如果發(fā)生溢出錯誤,溢出錯誤符號將顯示在工具欄中的執(zhí)行按鈕的位置. 而 且,一個立體的黑框將把發(fā)生溢出的限制對象包圍起來.2.3.2 公式節(jié)點(Formula Node)公式節(jié)點是一個大小可變的方框,可以利用它直接在流程圖中輸入公式.從 Functions?Structures中選擇公式

53、節(jié)點就可以把它放到流程圖中.當某個等式有很多變量或者非常復雜時,這個功能就非常有用.例如等式:y = x 2 + x + 1使用公式節(jié)點可以表示為:公式節(jié)點示息圖利用公式節(jié)點可以直接輸入一個或者多個復雜的公式, 而不用創(chuàng)立流程圖的 很多子程序.使用文本編輯工具來輸入公式.創(chuàng)立公式節(jié)點的輸入和輸出端子的 方法是,用鼠標右鍵單擊第 0幀的底部邊框,選擇 Add Input (Add Output). 再在節(jié)點框中輸入變量名稱.變量名對大小寫敏感.然后就可以在框中輸入公式. 每個公式語句都必須以分號(;)結尾.公式節(jié)點的幫助窗口中列出了可供公式節(jié)點使用的操作符、函數和語法規(guī) 定.一般說來,它與C語言非常相似,大體上一個用C寫的獨立的程序塊都可能 用到公式節(jié)點中.但是仍然建議不要在一個公式節(jié)點中寫過于復雜的代碼程序.下面這個例子顯示了如何在一個公式節(jié)點中執(zhí)行不同條件時的數據發(fā)送.請閱讀下面這段程序代碼,如果X為正數,它將算出X的平方根并把該值賦 給Y,如果X為負數,程序就

溫馨提示

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

評論

0/150

提交評論