精密測(cè)試技術(shù)課程講義(6章虛擬儀器).ppt
《精密測(cè)試技術(shù)課程講義(6章虛擬儀器).ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《精密測(cè)試技術(shù)課程講義(6章虛擬儀器).ppt(74頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
虛擬儀器技術(shù)及LabVIEW簡(jiǎn)介,目錄,什么是虛擬儀器LABVIEW概述LABVIEW模板簡(jiǎn)介創(chuàng)建VI程序LABVIEW結(jié)構(gòu)LABVIEW數(shù)據(jù)類型圖表及圖形字符串和文件I/O數(shù)據(jù)采集,什么是虛擬儀器(VI,VirtualInstruments)(1)由測(cè)試硬件完成信號(hào)的采集與控制,而將信號(hào)分析與處理、結(jié)果表達(dá)與輸出讓計(jì)算機(jī)來完成,這就是虛擬儀器。(2)ComputerBasedInstruments(3)用戶自定義的儀器,,數(shù)據(jù)采集和控制,,分析,SignalProcessingDigitalFilteringStatisticsArrayOperations,GraphicalUserInterfaceHardcopyOutputFileI/O,信號(hào),,,,Plug-InDAQBoardsIEEE488(GPIB)RS-232,虛擬儀器的構(gòu)成元素,虛擬儀器的硬件結(jié)構(gòu)體系(1)PCI、ISA接口總線(2)PXI(PCIeXtensionforInstrumentation)接口總線(3)GPIB(GeneralPurposeInterfaceBus)接口總線串口總線(4)VXI(VMEbuseXtensionforInstrumentation)接口總線,,虛擬儀器的軟件開發(fā)工具(1)通用編程語言:C、C++、VisualC++、VisualBasic(2)虛擬儀器專用編程語言:NI公司的LabVIEW、Labwindows/CVI和HP公司的HPVEE或者分為:(1)文本式編程語言:如C、VisualC++、VisualBasic、Labwindows/CVI等。(2)圖形化編程語言:如LabVIEW、HPVEE等。,,基于PC的數(shù)據(jù)采集和儀器控制開發(fā)軟件,Source:Surveyof400USreadersfromT&MWorld,EDN,DesignNews,andR&Dmagazines,March2002,,什么是LabVIEW?,NILabVIEW是行業(yè)領(lǐng)先的用于開發(fā)設(shè)計(jì)、控制和測(cè)試系統(tǒng)的軟件工具,用于設(shè)計(jì)、控制和測(cè)試的圖形化開發(fā)平臺(tái)。自1986年問世以來,世界范圍內(nèi)的工程師和科學(xué)家在整個(gè)產(chǎn)品設(shè)計(jì)周期內(nèi)都依靠NILabVIEW圖形化開發(fā)環(huán)境來開發(fā)項(xiàng)目,從而獲得更高的質(zhì)量,更短進(jìn)入市場(chǎng)的時(shí)間,和更高的工程和生產(chǎn)效率。LabVIEW的圖形化數(shù)據(jù)流語言很自然地吸引了全世界的工程師和科學(xué)家將其作為一種更加直觀的方式用于自動(dòng)測(cè)量和控制系統(tǒng)。結(jié)合了內(nèi)置I/O、交互式用戶界面控件和指示器的數(shù)據(jù)流語言使得LabVIEW成為工程師和科學(xué)家的理想選擇。,LabVIEW圖形化開發(fā)平臺(tái)為自動(dòng)化測(cè)量和控制應(yīng)用中整個(gè)產(chǎn)品生命周期都提供了高效和優(yōu)良的性能。LabVIEW圖形化開發(fā)平臺(tái)提供:專為工程師和科學(xué)家設(shè)計(jì)的直觀的圖形化編程語言。交互式、特定應(yīng)用的開發(fā)工具和庫。數(shù)以百計(jì)的內(nèi)置庫,用于I/O、控制、分析和數(shù)據(jù)顯示。發(fā)布至臺(tái)式、便攜式、工業(yè)和嵌入式計(jì)算目標(biāo)。,內(nèi)置的采集、分析和顯示,采集開放的LabVIEW環(huán)境使得與任何測(cè)量硬件之間的連接變得更為簡(jiǎn)單,并且提供了交互式助手、代碼自動(dòng)生成,以及與數(shù)以千計(jì)設(shè)備的連接來輕松地收集數(shù)據(jù)。因?yàn)長(zhǎng)abVIEW提供了對(duì)幾乎所有測(cè)量設(shè)備的連接,所以您可以輕松地將最新的LabVIEW應(yīng)用程序結(jié)合至現(xiàn)有的系統(tǒng),而不會(huì)損失您的硬件投資。無論您的硬件要求如何,LabVIEW都提供了一個(gè)接口以使得與您I/O的連接變得更為輕松。,利用LabVIEW測(cè)量任何信號(hào)溫度電壓電阻張力電流脈沖振動(dòng)頻率周期聲音光強(qiáng)數(shù)字信號(hào),分析對(duì)于測(cè)量結(jié)果,你需要的不是未經(jīng)處理的數(shù)據(jù)。強(qiáng)大的,易用的分析功能對(duì)你的軟件應(yīng)用是必須的。LabVIEW擁有超過500個(gè)內(nèi)建函數(shù),幫助你從采集的數(shù)據(jù)中提取有效信息,分析測(cè)量結(jié)果和處理信號(hào)。頻率分析、信號(hào)發(fā)生、數(shù)學(xué)運(yùn)算、曲線擬和、插值等函數(shù)能夠使你對(duì)數(shù)據(jù)進(jìn)行有意義的統(tǒng)計(jì)和處理。LabVIEW分析工具使用簡(jiǎn)單,無需你去考慮復(fù)雜的底層算法。超過15個(gè)快速分析VI通過交互式配置對(duì)話框使你能夠立刻預(yù)覽分析結(jié)果,并很大程度降低了你在應(yīng)用程序中執(zhí)行。,測(cè)量分析的復(fù)雜度●曲線擬合和插值●概率和統(tǒng)計(jì)●快速傅立葉變換和頻率分析●時(shí)域和頻域分析●信號(hào)發(fā)生●數(shù)字信號(hào)處理●數(shù)學(xué)運(yùn)算,顯示數(shù)據(jù)的顯示包含了多種功能范圍:形象化、生成報(bào)表和數(shù)據(jù)管理。LabVIEW包含了容易創(chuàng)建的形象化的工具,使你的數(shù)據(jù)顯示出吸引力,其中包括圖表和圖形工具,內(nèi)建的2D和3D顯示工具。你可以直接配置顯示的屬性,如顏色,字體大小,圖表類型等,并可在運(yùn)行時(shí)旋轉(zhuǎn),縮放和搖移你的圖像。另外,你還可以通過LabVIEW在因特網(wǎng)上觀看和控制你的VI。,對(duì)于報(bào)表生成,NI提供多種選擇,包括文檔生成工具,HTML報(bào)表,可編程生成的微軟Word、Excel報(bào)表和NIDIAdem交互式的報(bào)表生成?!裎臋n處理工具●內(nèi)建用戶界面設(shè)計(jì)對(duì)象●交互式報(bào)表生成●微軟Word和Excel報(bào)表●數(shù)據(jù)庫連接●開放式語言(.NET、ActiveX、●遠(yuǎn)程觀看和控制●DLLs、OPC),LabVIEW用在何處?,自動(dòng)化測(cè)試和測(cè)量平臺(tái)近30年來,NI革新了工程師進(jìn)行測(cè)試和測(cè)量的方式。利用PC和商用技術(shù),虛擬儀器技術(shù)提高了效率并且降低了自動(dòng)化測(cè)試和測(cè)量應(yīng)用程序的成本,這是通過易于集成的軟件(如LabVIEW)和用于PXI、PCI、USB、Ethernet的模塊化測(cè)量和控制硬件來實(shí)現(xiàn)的。,通常的應(yīng)用●生產(chǎn)測(cè)試●便攜式場(chǎng)地測(cè)試●驗(yàn)證/環(huán)境測(cè)試●RF和通信測(cè)試●機(jī)械/結(jié)構(gòu)測(cè)試●機(jī)臺(tái)測(cè)試●實(shí)時(shí)可靠性測(cè)試●圖像采集●數(shù)據(jù)采集,工業(yè)測(cè)量和控制平臺(tái)工程師常常將LabVIEW用于要求苛刻的工業(yè)應(yīng)用,例如需要高級(jí)I/O,包括高速模擬信號(hào)采集;用于諸如振動(dòng)監(jiān)控、控制和機(jī)器視覺之類的高級(jí)處理應(yīng)用;以及與工業(yè)硬件的通信,包括OPC設(shè)備和第三方PLC以及企業(yè)級(jí)數(shù)據(jù)庫。您可以無縫地將內(nèi)置于LabVIEW的NI可編程自動(dòng)控制器(PAC)集成至現(xiàn)有的系統(tǒng),從而達(dá)到附加的測(cè)量和控制功能。,通常的應(yīng)用●集成的測(cè)試和控制●機(jī)器狀況監(jiān)控●機(jī)器自動(dòng)化●分布式監(jiān)控和控制●機(jī)器視覺●功率監(jiān)控,嵌入式設(shè)計(jì)和原型設(shè)計(jì)平臺(tái)工程師將LabVIEW用于高效的設(shè)計(jì)應(yīng)用、仿真,以及仿真數(shù)據(jù)與真實(shí)世界測(cè)量之間的比較。通過將LabVIEW和測(cè)量工具集成至附加的設(shè)計(jì)和仿真工具,您可以更早地在設(shè)計(jì)過程中輕松地將真實(shí)世界的測(cè)試工具與仿真模型進(jìn)行比較。這樣就可以更早地在設(shè)計(jì)環(huán)節(jié)暴露缺陷,從而可以實(shí)現(xiàn)更少的設(shè)計(jì)反復(fù)和更高質(zhì)量的產(chǎn)品。,通常的應(yīng)用●嵌入式系統(tǒng)設(shè)計(jì)和測(cè)試●電子電路設(shè)計(jì)●控制設(shè)計(jì)●機(jī)械設(shè)計(jì)●數(shù)字濾波器設(shè)計(jì)●算法設(shè)計(jì),VI的構(gòu)成,LabVIEW的程序稱之為虛擬儀器,簡(jiǎn)稱VIs,因?yàn)樗O(shè)計(jì)出來的程序在其外觀以及操控上都與真實(shí)的儀器很類似;一個(gè)VI可分為三個(gè)部份:人機(jī)界面-前置面版(FrontPanel)圖形程序區(qū)(BlockDiagram)工具面版-圖像(Icon)與連結(jié)器(Connector),File文檔菜單,Edit編輯菜單,Operate操作菜單,Tools工具菜單,Browse瀏覽菜單,Windows窗口菜單,LabVIEW基本演示,例:,LABVIEW模板簡(jiǎn)介,概述工具模板(ToolsPalette)控制模板(ControlsPalette)功能模板(FunctionsPalette),LabVIEW模板學(xué)習(xí)要點(diǎn),窗口頂部工具欄包括:運(yùn)行、字體選擇、排列調(diào)整和疊放次序等操作按鈕;工具模板提供了編程使用的創(chuàng)建、修改和調(diào)試VI工具,在構(gòu)建和編輯VI時(shí)應(yīng)首先確定選擇了正確的工具;控制模板服務(wù)于前面板,用于添加輸入控制和輸出顯示。每個(gè)圖標(biāo)代表一個(gè)子模板。常用的有:數(shù)值、布爾值、字符串、數(shù)組和群、列表、圖文環(huán)、圖形信號(hào)、輸入輸出和修飾等子模板;功能模板服務(wù)于框圖程序,每個(gè)圖標(biāo)代表一個(gè)子模板。常用的有:結(jié)構(gòu)、數(shù)值運(yùn)算、布爾邏輯、比較運(yùn)算、字符串運(yùn)算、數(shù)組和群、時(shí)間、文件、輸入/輸出等子模板。,窗口頂部工具欄,包括:運(yùn)行按鈕、連續(xù)執(zhí)行按鈕、停止按鈕、暫停/繼續(xù)按鈕,字體環(huán)。排列調(diào)整環(huán),間隙描述環(huán),位置次序調(diào)整環(huán)。,,,,,,,,,,,框圖程序窗口工具欄,高亮度執(zhí)行按鈕,在是否選擇高亮度模式間切換,執(zhí)行程序時(shí)可以在框圖程序中觀察到數(shù)據(jù)流動(dòng)。單步通過按鈕,進(jìn)入單步模式時(shí),程序單步通過一個(gè)節(jié)點(diǎn)并停在下一節(jié)點(diǎn)上,同時(shí)它不停地閃爍,表示當(dāng)前節(jié)點(diǎn)準(zhǔn)備執(zhí)行。單步進(jìn)入節(jié)點(diǎn)按鈕,再次單擊此按鈕,程序單步進(jìn)入循環(huán)、子VI等節(jié)點(diǎn)。通過單步進(jìn)入節(jié)點(diǎn),可以單步執(zhí)行節(jié)點(diǎn)內(nèi)的程序。單步退出節(jié)點(diǎn)按鈕,再次單擊此按鈕,程序單步退出循環(huán)、子Ⅵ等節(jié)點(diǎn)。通過單步退出節(jié)點(diǎn),可完成單步通過節(jié)點(diǎn)功能,并進(jìn)到下一節(jié)點(diǎn)。警告指示器,當(dāng)Ⅵ程序存在潛在問題時(shí),就會(huì)出現(xiàn)這個(gè)警告指示,但這并不因此而引起Ⅵ不能執(zhí)行。,,,,,,,,工具模板(ToolsPalette),操作工具選擇(位置)工具標(biāo)簽工具連線工具對(duì)象彈出菜單工具平移工具斷點(diǎn)工具探針工具顏色提取工具顏色工具,,,,,,,,,,,控制模板(ControlsPalette),數(shù)值子模板:包含數(shù)值的控制和顯示。布爾值子模塊:邏輯數(shù)值的控制和顯示。字符串子模板:ASCII碼字符串和路徑的控制和顯示。數(shù)組和群子模板:復(fù)合型數(shù)據(jù)類型的控制和顯示。列表子模板:各類列表的控制和顯示。圖形子模板:顯示數(shù)據(jù)結(jié)果的趨勢(shì)圖和曲線圖。圖文環(huán)(Ring):控制和顯示菜單環(huán)和文字列表欄、圖像列表欄的選型。,,,,,,,,,控制模板(ControlsPalette),信號(hào)的輸入輸出子模板。路徑和參考名(Refnum)子模板:文件路徑和各種標(biāo)識(shí)的控制和顯示。老版本子模板,列舉老版本中的顯示控制件。對(duì)話框子模板:用于輸入對(duì)話框的顯示控制。修飾子模板:用于給前面板進(jìn)行裝飾的各種圖形對(duì)象??丶萜鲙熳幽0澹河糜诓僮鱋LE、ActiveX等功能。調(diào)用存儲(chǔ)在文件中的控制和顯示的接口。用戶自定義的控制和顯示。,,,,,,,,,,結(jié)構(gòu)子模板:包括程控結(jié)構(gòu)命令,例如循環(huán)控制等,以及全局變量和局部變量。?數(shù)值運(yùn)算子模板:包括各種常用的數(shù)值運(yùn)算符,如“+-”以及各種常見的數(shù)值表達(dá)式,如+1運(yùn)算;還包括數(shù)制轉(zhuǎn)換、三角函數(shù)、對(duì)數(shù)、復(fù)數(shù)等運(yùn)算,以及各種數(shù)值常數(shù)。?布爾邏輯子模板:包括各種邏輯運(yùn)算符以及布爾常數(shù)。?字符串運(yùn)算子模板:包含各種字符串操作函數(shù)、數(shù)值與字符串之間的轉(zhuǎn)換函數(shù),以及字符(串)常數(shù)等。數(shù)組子模板:包括數(shù)組運(yùn)算函數(shù)、數(shù)組轉(zhuǎn)換函數(shù),以及常數(shù)數(shù)組等。,,,功能模板(FunctionsPalette),,,,,功能模板(FunctionsPalette),簇子模板。包括簇的處理函數(shù),以及簇常數(shù)等。比較子模板:包括各種比較運(yùn)算函數(shù),如大于、小于、等于。時(shí)間和對(duì)話框子模板:包括對(duì)話框窗口、時(shí)間和出錯(cuò)處理函數(shù)等。?文件輸入/輸出子模板:包括處理文件I/O的程序和函數(shù)。?“選擇…VI子程序”子模板:可以選擇一個(gè)VI程序作為子程序(SubVI)插入當(dāng)前程序中。,,,,,,,創(chuàng)建VI程序,建立虛擬儀器就是根據(jù)功能目標(biāo)創(chuàng)建對(duì)應(yīng)的儀器面板和框圖程序,需要了解控制、功能模板上不同圖標(biāo)的用途;儀器面板設(shè)計(jì)重在控制和對(duì)話,框圖程序重在實(shí)現(xiàn)正確的相互關(guān)系;掌握虛擬儀器編輯技術(shù),熟練使用工具模板的各種工具,是編程和調(diào)試VI的關(guān)鍵;框圖程序由節(jié)點(diǎn)、端點(diǎn)、圖框和連線四種元素構(gòu)成,組合出相互的邏輯關(guān)系;學(xué)習(xí)子VI的建立和調(diào)用,這在建立一個(gè)高質(zhì)量的VI時(shí)十分必要。,虛擬儀器的編輯,選擇對(duì)象。把Positioningtool(位置工具)放在準(zhǔn)備選擇的對(duì)象上,按住鼠標(biāo)左鍵,該對(duì)象的輪廓邊上出現(xiàn)流動(dòng)的虛線,表示對(duì)象被選中。如果要選擇一個(gè)以上的對(duì)象,按住Shift鍵不放,然后用鼠標(biāo)單擊每一個(gè)想要選擇的對(duì)象。也可以用位置工具,在窗口空白處按住鼠標(biāo)左鍵拖出一個(gè)虛線的矩形框,把想要選擇的對(duì)象都包含在其中,這些對(duì)象即被選中。移動(dòng)對(duì)象。把位置工具放在對(duì)象上,按住鼠標(biāo)左鍵不放,拖動(dòng)鼠標(biāo),可以將對(duì)象轉(zhuǎn)移到窗口中的任意位置上。刪除對(duì)象。選中對(duì)象,然后按Delete鍵(或選擇Edit>>Clear選項(xiàng)),即可刪除該對(duì)象。,虛擬儀器的編輯,復(fù)制對(duì)象。先選中對(duì)象(鼠標(biāo)左鍵按下不放),同時(shí)按Ctrl鍵,然后移動(dòng)鼠標(biāo)把對(duì)象復(fù)制到任意位置上,也可以用Edit菜單中的copy和Paste來復(fù)制對(duì)象。選擇和刪除連線。把位置工具移到線段上,單擊鼠標(biāo)左鍵,即選中線段(如果有數(shù)段線段在交匯處相交,則單擊數(shù)下鼠標(biāo),即選中該數(shù)段線段);按Delete鍵,即刪除該線段。連線的伸縮性。通過位置工具,可以把單個(gè)或一組對(duì)象移動(dòng)到新的位置,而連線跟著伸縮。,虛擬儀器的編輯,不良連線。不良連線用虛線表示。例如,當(dāng)源數(shù)據(jù)與目標(biāo)數(shù)據(jù)類型不匹配時(shí),會(huì)出現(xiàn)虛線(不良連線)。要?jiǎng)h除一條不良連線,用位置工具單擊不良連線后按Delete鍵。如果要?jiǎng)h除框圖程序中所有的不良連線,可以選擇Edit\RemoveBadWires(移去不良連線)(或按Ctrl+B鍵)。改變文本的字體、風(fēng)格和尺寸。用標(biāo)簽工具選擇文本,通過工具欄中的Fontring可以改變標(biāo)簽框中任何文本的字體和尺寸。改變對(duì)象尺寸。用位置工具把光標(biāo)移到對(duì)象的四角處,此時(shí)會(huì)出角形圖示,拖動(dòng)它便可以改變對(duì)象的尺寸。改變顏色。從工具模板中選擇顏色工具,并在正方形框上單擊鼠標(biāo),彈出調(diào)色板。選擇一種顏色,然后單擊對(duì)象,便可以改變對(duì)象的顏色。注意顏色工具中上下兩個(gè)正方形框分別代表對(duì)象的前景色和背景色,調(diào)色板上的T標(biāo)志,表示透明無色。,框圖程序的構(gòu)成元素,框圖程序由節(jié)點(diǎn)、端點(diǎn)、圖框和連線四種元素構(gòu)成。LabVIEW有二種節(jié)點(diǎn)類型——函數(shù)節(jié)點(diǎn)和子VI節(jié)點(diǎn)。函數(shù)節(jié)點(diǎn)是LabVIEW編譯好供使用的。子VI節(jié)點(diǎn)是LabVIEW或用戶的圖形語言形式。,框圖程序的構(gòu)成元素,端點(diǎn)是只有一路輸入/輸出,且方向固定的節(jié)點(diǎn)。LabVIEW有三類端點(diǎn)——前面板對(duì)象端點(diǎn)、全局與局部變量端點(diǎn)和常量端點(diǎn)。前面板對(duì)象端點(diǎn)是數(shù)據(jù)在框圖程序部分和前面板之間傳輸?shù)慕涌凇3A慷它c(diǎn)在VI程序框圖中永遠(yuǎn)只能作為數(shù)據(jù)流源點(diǎn)。,框圖程序的構(gòu)成元素,圖框是LabVIEW實(shí)現(xiàn)程序結(jié)構(gòu)控制命令的圖形表示。如循環(huán)控制、條件分支控制和順序控制等。連線是端口間的數(shù)據(jù)通道。數(shù)據(jù)單向流動(dòng),不同的線型代表不同的數(shù)據(jù)類型,從源端口向一個(gè)或多個(gè)目的端口流動(dòng)。,子VI的建立和使用,子VI(SubVI)就是被其他的VI調(diào)用的VI??梢詫⑷魏我粋€(gè)定義了圖標(biāo)和聯(lián)接器的VI作為另一個(gè)VI的子程序。構(gòu)造一個(gè)子VI主要的工作就是定義它的圖標(biāo)和聯(lián)接器。在其他的VI中調(diào)用子程序VI的過程就是將定義了圖標(biāo)放入該VI的程序框圖,并在主程序中對(duì)子VI聯(lián)接器進(jìn)行外部連線。,圖標(biāo)編輯器的窗口,可以用窗口左邊的各種工具設(shè)計(jì)像素編輯區(qū)中的圖標(biāo)形狀。編輯區(qū)右側(cè)的一個(gè)方框中顯示了一個(gè)實(shí)際大小的圖標(biāo)。聯(lián)接器是VI數(shù)據(jù)的輸入輸出接口。通過選擇VI的端子數(shù)并為每個(gè)端子指定對(duì)應(yīng)的前面板對(duì)象以定義聯(lián)接器。,程序結(jié)構(gòu),循環(huán)結(jié)構(gòu)1.While循環(huán)While循環(huán)可以反復(fù)執(zhí)行循環(huán)體的程序,直至到達(dá)某個(gè)邊界條件。它類似于普通編程語言中的Do循環(huán)和Repeat-Until循環(huán)。While循環(huán)的框圖是一個(gè)大小可變的方框,用于執(zhí)行框中的程序,直到條件端子接收到的布爾值為FALSE。該循環(huán)有如下特點(diǎn):計(jì)數(shù)從0開始(i=0)。先執(zhí)行循環(huán)體,而后i+1,如果循環(huán)只執(zhí)行一次,那么循環(huán)輸出值i=0。循環(huán)至少要運(yùn)行一次。,,例:用While循環(huán)和圖表獲得數(shù)據(jù),并實(shí)時(shí)顯示,創(chuàng)建一個(gè)可以產(chǎn)生并在圖表中顯示隨機(jī)數(shù)的VI。前面板有一個(gè)控制旋鈕可在0到10秒之間調(diào)節(jié)循環(huán)時(shí)間,還有一個(gè)開關(guān)可以中止VI的運(yùn)行。學(xué)習(xí)怎樣改變開關(guān)的動(dòng)作屬性,以便不用每次運(yùn)行VI時(shí)都要打開開關(guān)。,2.移位寄存器(ShiftRegister)移位寄存器可以將數(shù)據(jù)從一個(gè)循環(huán)周期傳遞到另外一個(gè)周期。在程序設(shè)計(jì)中,經(jīng)常要用到它.創(chuàng)建一個(gè)移位寄存器的方法是,用鼠標(biāo)右鍵單擊循環(huán)的左邊或者右邊,在快捷菜單中選擇AddShiftRegister。如下圖所示。移位寄存器在流程圖上用在循環(huán)邊框上相應(yīng)的一對(duì)端子來表示。右邊的端子中存儲(chǔ)了一個(gè)周期完成后的數(shù)據(jù),這些數(shù)據(jù)在這個(gè)周期完成之后將被轉(zhuǎn)移到左邊的端子,賦給下一個(gè)周期。,移位寄存器可以轉(zhuǎn)移各種類型的數(shù)據(jù)--數(shù)值、布爾數(shù)、數(shù)組、字符串等等。它會(huì)自動(dòng)適應(yīng)與它連接的第一個(gè)對(duì)象的數(shù)據(jù)類型。下圖表示了它的工作過程.可以令移位寄存器記憶前面的多個(gè)周期的數(shù)值。這個(gè)功能對(duì)于計(jì)算數(shù)據(jù)均值非常有用。還可以創(chuàng)建其他的端子訪問先前的周期的數(shù)據(jù),方法是用鼠標(biāo)右鍵單擊左邊或者右邊的端子,在快捷菜單中選擇AddElement。例如,如果某個(gè)移位寄存器左邊的端口含有三個(gè)元素,那么就可以訪問前三個(gè)周期的數(shù)據(jù)。,,3.For循環(huán)For循環(huán)用于將某段程序執(zhí)行指定次數(shù)。和While循環(huán)一樣,它不會(huì)立刻出現(xiàn)在流程圖中,而是出現(xiàn)一個(gè)小的圖標(biāo),而后您可以修改它的大小和位置。具體的方法是,先單擊所有端子的左上方,然后按下鼠標(biāo),拖曳出一個(gè)包含所有端子的矩形。釋放鼠標(biāo)時(shí)就創(chuàng)建了一個(gè)指定大小和位置的For循環(huán)。For循環(huán)將把它的框圖中的程序執(zhí)行指定的次數(shù),F(xiàn)or循環(huán)具有下面這兩個(gè)端子:N:計(jì)數(shù)端子(輸入端子)——用于指定循環(huán)執(zhí)行的次數(shù)。I:周期端子(輸出端子)——含有循環(huán)已經(jīng)執(zhí)行的次數(shù)。,,例:用For循環(huán)和移位寄存器計(jì)算一組隨機(jī)數(shù)的最大值。,分支結(jié)構(gòu)分支結(jié)構(gòu):CaseCase結(jié)構(gòu)含有兩個(gè)或者更多的子程序(Case),執(zhí)行那一個(gè)取決于與選擇端子或者選擇對(duì)象的外部接口相連接的某個(gè)整數(shù)、布爾數(shù)、字符串或者標(biāo)識(shí)的值。必須選擇一個(gè)默認(rèn)的Case以處理超出范圍的數(shù)值,或者直接列出所有可能的輸入數(shù)值。Case結(jié)構(gòu)見下圖,各個(gè)子程序占有各自的流程框,在其上沿中央有相應(yīng)的子程序標(biāo)識(shí):Ture、False或1、2、3…。按鈕用來改變當(dāng)前顯示的子程序(各子程序是重疊放在屏幕同一位置上的)。,順序結(jié)構(gòu)和公式節(jié)點(diǎn)順序結(jié)構(gòu)(SequenceStructure)在代碼式的傳統(tǒng)編程語言中,默認(rèn)的情況是,程序語句按照排列順序執(zhí)行,但LabVIEW中不同,它是一種圖形化的數(shù)據(jù)流式編程語言。在下圖中,假設(shè)有A、B、C、D4個(gè)節(jié)點(diǎn),其數(shù)據(jù)流向如右圖所示。按照數(shù)據(jù)流式語言的約定,任何一個(gè)節(jié)點(diǎn)只有在所有的輸入數(shù)據(jù)有效時(shí)才會(huì)執(zhí)行,所以圖中,當(dāng)且僅當(dāng)A、B、C3個(gè)節(jié)點(diǎn)執(zhí)行完,使得D節(jié)點(diǎn)的3個(gè)輸入數(shù)據(jù)都到達(dá)D節(jié)點(diǎn)后,D節(jié)點(diǎn)才執(zhí)行。但是你要注意,這里并沒有規(guī)定A、B、C3個(gè)節(jié)點(diǎn)的執(zhí)行順序。在LabVIEW中這種情況下,A、B、C的執(zhí)行順序是不確定的,如果你需要對(duì)它們規(guī)定一個(gè)確定的順序,那就需要“順序結(jié)構(gòu)”。,公式節(jié)點(diǎn)(FormulaNode)公式節(jié)點(diǎn)是一個(gè)大小可變的方框,可以利用它直接在流程圖中輸入公式。從FunctionsStructures中選擇公式節(jié)點(diǎn)就可以把它放到流程圖中。當(dāng)某個(gè)等式有很多變量或者非常復(fù)雜時(shí),這個(gè)功能就非常有用。例如等式:y=x2+x+1使用公式節(jié)點(diǎn)可以表示為:利用公式節(jié)點(diǎn)可以直接輸入一個(gè)或者多個(gè)復(fù)雜的公式,而不用創(chuàng)建流程圖的很多子程序。,數(shù)據(jù)類型:數(shù)組、簇和波形,數(shù)組是同類型元素的集合。一個(gè)數(shù)組可以是一維或者多維,如果必要,每維最多可有231-1個(gè)元素。可以通過數(shù)組索引訪問其中的每個(gè)元素。索引的范圍是0到n–1,其中n是數(shù)組中元素的個(gè)數(shù)。圖3-1所顯示的是由數(shù)值構(gòu)成的一維數(shù)組。注意第一個(gè)元素的索引號(hào)為0,第二個(gè)是1,依此類推。數(shù)組的元素可以是數(shù)據(jù)、字符串等,但所有元素的數(shù)據(jù)類型必須一致。,簇(Cluster)是另一種數(shù)據(jù)類型,它的元素可以是不同類型的數(shù)據(jù)。它類似于C語言中的stuct。使用簇可以把分布在流程圖中各個(gè)位置的數(shù)據(jù)元素組合起來,這樣可以減少連線的擁擠程度。減少子VI的連接端子的數(shù)量。波形(Waveform)可以理解為一種簇的變形,它不能算是一種有普遍意義的數(shù)據(jù)類型,但非常實(shí)用。,創(chuàng)建數(shù)組一般說來,創(chuàng)建一個(gè)數(shù)組有兩件事要做,首先要建一個(gè)數(shù)組的“殼”(shell),然后在這個(gè)殼中置入數(shù)組元素(數(shù)或字符串等)。如果需要用一個(gè)數(shù)組作為程序的數(shù)據(jù)源,可以選擇FunctionsArrayArrayConstant,將它放置在流程圖中。然后再在數(shù)組框中放置數(shù)值常量、布爾數(shù)還是字符串常量。下圖顯示了在數(shù)組框放入字符串常量數(shù)組的例子。左邊是一個(gè)數(shù)組殼,中間的圖上已經(jīng)置入了字符串元素,右邊的圖反映了數(shù)組的第0個(gè)元素為:”ABC”,后兩個(gè)元素均為空。,創(chuàng)建簇控制和顯示在前面板上放置一個(gè)簇殼(Clustershell)就創(chuàng)建了一個(gè)簇。然后你可以將前面板上的任何對(duì)象放在簇中。例如數(shù)組,你也可以直接從Control工具板上直接拖取對(duì)象堆放到簇中。一個(gè)簇中的對(duì)象必須全部是Control或全是Indicator,不能在同一個(gè)簇中組合Control與Indicator。一個(gè)簇將是Control或Indicator,取決于其內(nèi)的第一個(gè)對(duì)象的狀態(tài)。如果需要可以使用工具重置簇的大小。下圖所示是一個(gè)含4個(gè)Control的簇。如果你要求簇嚴(yán)格地符合簇內(nèi)對(duì)象的大小,可在簇的邊界上彈出快速菜單選擇自動(dòng)定義大小。,Waveform數(shù)據(jù)類型在數(shù)據(jù)采集和信號(hào)分析中經(jīng)常要遇到波形數(shù)據(jù),Waveform數(shù)據(jù)類型,使得波形的描述更加簡(jiǎn)潔。Waveform數(shù)據(jù)類型包含了波形的數(shù)據(jù)(Y)、起始時(shí)刻(t0)和步長(zhǎng)ΔX,使用Waveform模板的BuildWaveform函數(shù)可以建立一個(gè)波形。許多用于數(shù)據(jù)采集和波形分析的VI和函數(shù)的缺省狀態(tài)都接受或返回Waveform數(shù)據(jù)類型。當(dāng)你將一個(gè)Waveform數(shù)據(jù)類型連接到WaveformGraph或Chart時(shí),會(huì)自動(dòng)畫出相應(yīng)的曲線。有關(guān)這一數(shù)據(jù)類型的函數(shù)或VI在FunctionsWaveform和Analyze之中。,圖表及圖形,圖形顯示對(duì)于虛擬儀器面板設(shè)計(jì)是一個(gè)重要的內(nèi)容在LabVIEW的圖形顯示功能中Graph和Chart是兩個(gè)基本的概念。一般說來Chart是將數(shù)據(jù)源(例如采集得到的數(shù)據(jù))在某一坐標(biāo)系中,實(shí)時(shí)、逐點(diǎn)地顯示出來,它可以反映被測(cè)物理量的變化趨勢(shì),而Graph則是對(duì)已采集數(shù)據(jù)進(jìn)行事后處理的結(jié)果。它先將被采集數(shù)據(jù)存放在一個(gè)數(shù)組之中,然后根據(jù)需要組織成所需的圖形顯示出來。它的缺點(diǎn)是沒有實(shí)時(shí)顯示,但是它的表現(xiàn)形式要豐富得多。例如采集了一個(gè)波形后,經(jīng)處理可以顯示出其頻譜圖。,Graph控件各種圖形都提供了相應(yīng)的控件,以Graph為例介紹。所有這些控件都包含在圖形快速菜單的VisibleItems選項(xiàng)下。曲線圖例可用來設(shè)置曲線的各種屬性,包括線型(實(shí)線、虛線、點(diǎn)劃線等)、線粗細(xì)、顏色以及數(shù)據(jù)點(diǎn)的形狀等。圖形模板可用來對(duì)曲線進(jìn)行操作,包括移動(dòng)、對(duì)感興趣的區(qū)域放大和縮小等。光標(biāo)圖例可用來設(shè)置光標(biāo)、移動(dòng)光標(biāo),幫助你用光標(biāo)直接從曲線上讀取感興趣的數(shù)據(jù)。刻度圖例用來設(shè)置坐標(biāo)刻度的數(shù)據(jù)格式、類型(普通坐標(biāo)或?qū)?shù)坐標(biāo)),坐標(biāo)軸名稱以及刻度柵格的顏色等。,Chart控件Chart的數(shù)據(jù)并沒有事先存在一個(gè)數(shù)組中,它是實(shí)時(shí)顯示的,為了能夠看到先前的數(shù)據(jù),Chart控件內(nèi)部含有一個(gè)顯示緩沖器,其中保留了一些歷史數(shù)據(jù)。這個(gè)緩沖器按照先進(jìn)先出的原則管理,其最大容量是1024個(gè)數(shù)據(jù)點(diǎn)。,例:Chart和Graph的比較,,顯示的運(yùn)行結(jié)果是一樣的。但實(shí)現(xiàn)方法和過程不同。在流程圖中可以看出,Chart產(chǎn)生在循環(huán)內(nèi),每得到一個(gè)數(shù)據(jù)點(diǎn),就立刻顯示一個(gè)。而Graph在循環(huán)之外,40個(gè)數(shù)都產(chǎn)生之后,跳出循環(huán),然后一次顯示出整個(gè)數(shù)據(jù)曲線。從運(yùn)行過程可以清楚地看到這一點(diǎn)。,字符串和文件I/O,字符串字符串是ASCII字符的集合。如同其他語言一樣,LabVIEW也提供了各種處理字符串的功能.創(chuàng)建字符串控制對(duì)象和顯示對(duì)象可以在ControlsString&Table中看到右邊所顯示字符串控制對(duì)象和顯示對(duì)象。還可以使用操作工具或者標(biāo)簽工具輸入或者改變字符串控制對(duì)象中的文本。用移位工具拖曳字符串控制對(duì)象和顯示對(duì)象的邊角可以增大它們的面積。,文件的輸入/輸出(I/O)文件I/O功能函數(shù)是一組功能強(qiáng)大、伸縮性強(qiáng)的文件處理工具。它們不僅可以讀寫數(shù)據(jù),還可以移動(dòng)、重命名文件與目錄。創(chuàng)建電子表格格式的、由可讀的ASCII文本組成的文件,以及為了提高讀寫速度和壓縮率采用二進(jìn)制的格式寫入數(shù)據(jù)??梢圆捎孟旅嫒N文件格式存儲(chǔ)或者獲得數(shù)據(jù):ASCII字節(jié)流,數(shù)據(jù)記錄文件,二進(jìn)制字節(jié)流。,文件I/O功能函數(shù),大多數(shù)的文件I/O操作都包括三個(gè)基本的步驟:打開一個(gè)已有的文件或者新建一個(gè)文件;對(duì)文件進(jìn)行讀寫;關(guān)閉文件。LabVIEW在FunctionsFileI/O中提供了很多有用的工具VI。這些工具VI可以把錯(cuò)誤檢查和錯(cuò)誤處理等功能與文件I/O功能函數(shù)結(jié)合起來。,,以下5個(gè)功能從左到右對(duì)應(yīng)于上面5個(gè)圖標(biāo)。WriteToSpreadsheetFileVI——用于將由單精度數(shù)值組成的一維或者二維數(shù)組轉(zhuǎn)換成文本字符串,再將它寫入一個(gè)新建文件或者已有文件。該VI先打開或者新建文件,之后再關(guān)閉文件。它可以用于創(chuàng)建能夠被大多數(shù)電子表格軟件讀取的文本文件。ReadFromSpreadsheetFileVI——用于從某個(gè)文件的特定位置開始讀取指定個(gè)數(shù)的行或者列內(nèi)容,再將數(shù)據(jù)轉(zhuǎn)換成二維、單精度數(shù)組。該VI先打開文件,之后再關(guān)閉文件。它可以用于讀取用文本格式存儲(chǔ)的電子表格文件。WriteCharactersToFileVI——用于將一個(gè)字符串寫入一個(gè)新建文件或者已有文件。該VI打開這個(gè)文件、寫入數(shù)據(jù),再關(guān)閉文件。ReadCharactersFromFileVI——用于從某個(gè)文件的特定位置開始讀取指定個(gè)數(shù)的字符。該VI先打開文件,之后再關(guān)閉文件。ReadLinesFromFileVI——用于從某個(gè)文件的特定位置開始讀取指定個(gè)數(shù)的行內(nèi)容。該VI先打開文件,之后再關(guān)閉文件。,,數(shù)據(jù)采集,數(shù)據(jù)采集結(jié)構(gòu)上圖表示了數(shù)據(jù)采集的結(jié)構(gòu)。在數(shù)據(jù)采集之前,程序?qū)?duì)DAQ板卡初始化,板卡上和內(nèi)存中的Buffer是數(shù)據(jù)采集存儲(chǔ)的中間環(huán)節(jié)。需要注意的兩個(gè)問題是:是否使用Buffer?是否使用外觸發(fā)啟動(dòng)、停止或同步一個(gè)操作。,,緩沖(Buffers),這里的緩沖指的是PC內(nèi)存的一個(gè)區(qū)域(不是DAQ卡上的FIFO緩沖),它用來臨時(shí)存放數(shù)據(jù)。下列情況需要使用BufferI/O:需要采集或產(chǎn)生許多樣本,其速率超過了實(shí)際顯示、存儲(chǔ)到硬件,或?qū)崟r(shí)分析的速度。需要連續(xù)采集或產(chǎn)生AC數(shù)據(jù)(>10樣本/秒),并且要同時(shí)分析或顯示某些數(shù)據(jù)。采樣周期必須準(zhǔn)確、均勻地通過數(shù)據(jù)樣本。,觸發(fā)(Triggering),觸發(fā)涉及初始化、終止或同步DAQ事件的任何方法。觸發(fā)器通常是一個(gè)數(shù)字或模擬信號(hào),其狀態(tài)可確定動(dòng)作的發(fā)生。下列情況使用軟件觸發(fā):用戶需要對(duì)所有DAQ操作有明確的控制,并且事件定時(shí)不需要非常準(zhǔn)確。下列情況使用硬件觸發(fā):DAQ事件定時(shí)需要非常準(zhǔn)確。用戶需要削減軟件開支。DAQ事件需要與外部裝置同步。,簡(jiǎn)單AnalogI/O,這是LabVIEW提供的一組標(biāo)準(zhǔn)的、簡(jiǎn)單易用的DAQVI。AnalogInput從左到右,4個(gè)VI的功能為:從指定通道獲得一個(gè)樣本。從由通道字符串規(guī)定的一組通道每通道獲得一個(gè)樣本。這些樣本返回到一個(gè)樣本數(shù)組,順序由通道號(hào)決定。按指定的采樣率由一個(gè)通道得到一個(gè)波形(一組覆蓋一個(gè)周期的樣本),這些樣本返回到一個(gè)wareform數(shù)組。從由通道字符串規(guī)定的每個(gè)通道獲得一個(gè)波形。這些樣本返回到一個(gè)波形的2維數(shù)組,順序由通道號(hào)和采樣周期決定。通道數(shù)據(jù)的每個(gè)點(diǎn)占1列,時(shí)間增量由行決定。,AnalogOutput從左到右,4個(gè)VI的功能為:在指定輸出通道設(shè)置一個(gè)規(guī)定電壓。在指定輸出通道設(shè)置一組規(guī)定電壓。這些電壓在輸出通道一直保持恒定,直到其自身改變或裝置復(fù)為位。在指定輸出通道產(chǎn)生一個(gè)波形,波形的點(diǎn)(以電壓為單位)是預(yù)先由波形數(shù)組提供的。更新速率(Updaterate)規(guī)定了兩個(gè)點(diǎn)之間的時(shí)間。與上類似,多波形,每通道一個(gè),可同時(shí)發(fā)生。每個(gè)波形存放在2維數(shù)組的1列。,謝謝觀看,- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
14.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 精密 測(cè)試 技術(shù) 課程 講義 虛擬儀器
鏈接地址:http://www.820124.com/p-3815614.html