點(diǎn)擊學(xué)習(xí)>>《龍哥手把手教你學(xué)LabVIEW視覺設(shè)計(jì)》視頻教程
什么是LabVIEW
LabVIEW是一種程序開發(fā)環(huán)境,由美國(guó)國(guó)家儀器(NI)公司研制開發(fā),類似于C和BASIC開發(fā)環(huán)境,但是LabVIEW與其他計(jì)算機(jī)語言的顯著區(qū)別是:其他計(jì)算機(jī)語言都是采用基于文本的語言產(chǎn)生代碼,而LabVIEW使用的是圖形化編輯語言G編寫程序,產(chǎn)生的程序是框圖的形式。 LabVIEW軟件是NI設(shè)計(jì)平臺(tái)的核心,也是開發(fā)測(cè)量或控制系統(tǒng)的理想選擇。 LabVIEW開發(fā)環(huán)境集成了工程師和科學(xué)家快速構(gòu)建各種應(yīng)用所需的所有工具,旨在幫助工程師和科學(xué)家解決問題、提高生產(chǎn)力和不斷創(chuàng)新。
與 C 和BASIC 一樣,LabVIEW也是通用的編程系統(tǒng),有一個(gè)完成任何編程任務(wù)的龐大函數(shù)庫(kù)。LabVIEW[2] 的函數(shù)庫(kù)包括數(shù)據(jù)采集、GPIB、串口控制、數(shù)據(jù)分析、數(shù)據(jù)顯示及數(shù)據(jù)存儲(chǔ),等等。LabVIEW也有傳統(tǒng)的程序調(diào)試工具,如設(shè)置斷點(diǎn)、以動(dòng)畫方式顯示數(shù)據(jù)及其子程序(子VI)的結(jié)果、單步執(zhí)行等等,便于程序的調(diào)試。
LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一種用圖標(biāo)代替文本行創(chuàng)建應(yīng)用程序的圖形化編程語言。傳統(tǒng)文本編程語言根據(jù)語句和指令的先后順序決定程序執(zhí)行順序,而 LabVIEW 則采用數(shù)據(jù)流編程方式,程序框圖中節(jié)點(diǎn)之間的數(shù)據(jù)流向決定了VI及函數(shù)的執(zhí)行順序。VI指虛擬儀器,是 LabVIEW 的程序模塊。
LabVIEW提供很多外觀與傳統(tǒng)儀器(如示波器、萬用表)類似的控件,可用來方便地創(chuàng)建用戶界面。用戶界面在 LabVIEW 中被稱為前面板。使用圖標(biāo)和連線,可以通過編程對(duì)前面板上的對(duì)象進(jìn)行控制。這就是圖形化源代碼,又稱G代碼。LabVIEW 的圖形化源代碼在某種程度上類似于流程圖,因此又被稱作程序框圖代碼。
labview可以干什么
(一)測(cè)試測(cè)量
LABVIEW最初就是為測(cè)試測(cè)量而設(shè)計(jì)的,因而測(cè)試測(cè)量也就是現(xiàn)在LABVIEW最廣泛的應(yīng)用領(lǐng)域。經(jīng)過多年的發(fā)展,LABVIEW在測(cè)試測(cè)量領(lǐng)域獲得了廣泛的承認(rèn)。至今,大多數(shù)主流的測(cè)試儀器、數(shù)據(jù)采集設(shè)備都擁有專門的LabVIEW驅(qū)動(dòng)程序,使用LabVIEW可以非常便捷的控制這些硬件設(shè)備。同時(shí),用戶也可以十分方便地找到各種適用于測(cè)試測(cè)量領(lǐng)域的LabVIEW工具包。這些工具包幾乎覆蓋了用戶所需的所有功能,用戶在這些工具包的基礎(chǔ)上再開發(fā)程序就容易多了。有時(shí)甚至于只需簡(jiǎn)單地調(diào)用幾個(gè)工具包中的函數(shù),就可以組成一個(gè)完整的測(cè)試測(cè)量應(yīng)用程序。
例如,在工程測(cè)試信號(hào)的分析中, 相關(guān)分析是一個(gè)非常重要的概念, 通過引入虛擬儀器,解決了傳統(tǒng)分析手段不直觀、效率低的弊端。
1.相關(guān)分析的基本概念 對(duì)于確定性的信號(hào)來說, 兩個(gè)變量之間可用函數(shù)關(guān)系來描述,兩者一一對(duì)應(yīng)并為確定的數(shù)值。兩個(gè)隨機(jī)變量之間就不具有這樣確定的關(guān)系, 但如果這兩個(gè)變量之間具有某種內(nèi)涵的物理聯(lián)系, 那么大量統(tǒng)計(jì)發(fā)現(xiàn)它們之間還是存在著某種雖不精確但卻具有相應(yīng)的。表征其特性的近似關(guān)系。所謂“相關(guān)”是指變量之間的線性關(guān)系。我們可以根據(jù)需要分析兩個(gè)信號(hào)或同一信號(hào)在不同時(shí)刻的相似性。
自相關(guān)函數(shù)的定義和性質(zhì)信號(hào)x(t)的自相關(guān)函數(shù)描述信號(hào)在一個(gè)時(shí)刻的取值和另一個(gè)時(shí)刻取值之間的相似關(guān)系,可定義為:
互相關(guān)函數(shù)有以下性質(zhì):
?。?) 互相關(guān)函數(shù)的峰值不一定在 ! =0 處, 峰值點(diǎn)偏離原點(diǎn)的距離表示兩信號(hào)取得最大相關(guān)程度的時(shí)移!。
?。?)Rxy(!)=Ryx(-?。?互相關(guān)函數(shù)是一非奇非偶函數(shù), 但當(dāng) x(?。┖?y(?。┤≈祷Q時(shí), 則互相關(guān)函數(shù)的圖形以縱坐標(biāo)成鏡像對(duì)稱。
?。?) 周期信號(hào)的互相關(guān)函數(shù)也是同頻率的周期信號(hào), 而且還保留了原信號(hào)的相位差信息。 2.基于 LabView 的相關(guān)函數(shù)分析相關(guān)函數(shù)分析的前面板設(shè)計(jì)包含了用戶控制、時(shí)域波形顯示及相關(guān)分析輸出三部分 (見圖 1) 用戶控制部分包含兩個(gè)信號(hào)類型控件、五個(gè)數(shù)字控件和一個(gè) STOP 控件。信號(hào)類型控件控制兩個(gè)信號(hào)通道產(chǎn)生的不同信號(hào) , 包括 sine、cosine、triangle、square、saw- tooth、increasing ramp、decreasing ramp 七種常見信號(hào): 五個(gè)數(shù)字控件中, 信號(hào)頻率數(shù)字控件用來控制兩個(gè)虛擬信號(hào)發(fā)生儀所生成信號(hào)的頻率, 另外四個(gè)數(shù)字控件用來分別進(jìn)行兩個(gè)信號(hào)的幅值和相位參數(shù)設(shè)置。用戶可以根據(jù)需要選擇鍵入所要分析的信號(hào)。
?。ǘ┛刂?/strong>
控制與測(cè)試是兩個(gè)相關(guān)度非常高的領(lǐng)域,從測(cè)試領(lǐng)域起家的LabVIEW自然而然地首先拓展至控制領(lǐng)域。LabVIEW擁有專門用于控制領(lǐng)域的模塊----LabVIEWDSC。除此之外,工業(yè)控制領(lǐng)域常用的設(shè)備、數(shù)據(jù)線等通常也都帶有相應(yīng)的LabVIEW驅(qū)動(dòng)程序。使用LabVIEW可以非常方便的編制各種控制程序。
例如,在計(jì)算機(jī)控制中的應(yīng)用。
1 試驗(yàn)裝置功能介紹
本試驗(yàn)裝置應(yīng)具備功能如下:可以開展計(jì)算機(jī)輸入輸出技術(shù)的試驗(yàn);可以進(jìn)行試驗(yàn)法確定控制對(duì)象數(shù)學(xué)模型的試驗(yàn);可以開展數(shù)據(jù)處理試驗(yàn);可以進(jìn)行控制算法試驗(yàn)??梢蚤_展綜合控制試驗(yàn)。
2 試驗(yàn)裝置系統(tǒng)主要硬件組成
實(shí)驗(yàn)系統(tǒng)由信號(hào)發(fā)生器、溫控爐、試驗(yàn)接線印刷板、數(shù)據(jù)采集卡、計(jì)算機(jī)等組成如圖1所示。
3系統(tǒng)所需電源
系統(tǒng)中溫控爐、試驗(yàn)印刷板所需直流電源由信號(hào)發(fā)生器供給。試驗(yàn)系統(tǒng)中所需直流電源范圍為±12 V,±10V, ±5V.其中±12及±5V為溫控爐測(cè)量轉(zhuǎn)換電路所需電源;±10V提供給數(shù)據(jù)采集卡作A/D轉(zhuǎn)換試驗(yàn)使用;溫控爐加熱所需220V電源直接由試驗(yàn)臺(tái)供給。
4溫控爐控制原理及電路實(shí)現(xiàn)
溫控爐主控電路如圖2所示。在加溫前,先有計(jì)算機(jī)鍵盤或鼠標(biāo)通過虛擬儀器輸入溫度給定值,上電后溫控爐內(nèi)的檢測(cè)元件檢測(cè)到實(shí)時(shí)溫度后經(jīng)試驗(yàn)板、數(shù)據(jù)采集卡作D/A變換,然后送到計(jì)算機(jī)進(jìn)行數(shù)據(jù)處理。處理完畢后將處理好的控制信號(hào)經(jīng)數(shù)據(jù)采集卡送到印刷接線板,由印刷接線板送出到溫控爐的控制線路板上CONTROL INPUT端子,通過此信號(hào)改變加熱元件功率,達(dá)到控溫目的。
溫度信號(hào)的檢測(cè)電路轉(zhuǎn)換電路如圖3所示。溫度信號(hào)檢測(cè)采用熱敏電阻作測(cè)量元件,實(shí)時(shí)溫度經(jīng)過圖2所示轉(zhuǎn)換放大電路將溫度信號(hào)變?yōu)?10V——+10V的電壓信號(hào),通過實(shí)驗(yàn)板進(jìn)入數(shù)據(jù)采集卡作A/D轉(zhuǎn)換后,送入計(jì)算機(jī)作數(shù)據(jù)處理。圖2中,W1為調(diào)零電位器。
5 PCL-818數(shù)據(jù)采集卡
本系統(tǒng)采用了研華科技的PCL—818-B數(shù)據(jù)采集卡。 PCL-818 是一系列高性能、多功能 DAS 卡,能夠提供五種最常用的測(cè)量和控制功能:100KHZ的12 位A/D 轉(zhuǎn)換、D/A 轉(zhuǎn)換、數(shù)字量輸入、數(shù)字量輸出和可編程計(jì)數(shù)器/定時(shí)器, 具有較強(qiáng)的數(shù)據(jù)采集、A/D轉(zhuǎn)換、D/A轉(zhuǎn)換、數(shù)字量輸入輸出、自動(dòng)檢測(cè)設(shè)定的通道和定時(shí)/計(jì)數(shù)等功能, 還帶 DMA 的自動(dòng)通道/增益掃描,具有較高的性價(jià)比。支持單端方式下16 個(gè)數(shù)字量輸入和 16 個(gè)數(shù)字量輸出,差分方式下8個(gè)數(shù)字量輸入和8個(gè)數(shù)字量輸出。軟件支持包括 VisiDAQ 3.1TM、ActiveDAQ、LabVIEWTM 和Windows 3.1/95/NT 高速 DLL 驅(qū)動(dòng)程序。
6系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)軟件設(shè)計(jì)采用虛擬儀器(Virtual Instruments, VI)技術(shù),VI是由用戶利用一些基本硬件及軟件編程技術(shù)組成的各種各樣的儀器系統(tǒng),它的功能是可由用戶自己定義的。在VI的技術(shù)的支持下,用戶可以隨心所欲地根據(jù)自己的意愿,設(shè)計(jì)自己的儀器系統(tǒng)。它集成測(cè)量計(jì)、記錄、信號(hào)分析、控制等功能于一體,在同一基本硬件上配置不同的軟件而實(shí)現(xiàn)。
本系統(tǒng)的開發(fā)環(huán)境是美國(guó)國(guó)家儀器公司(NationalInstruments,NI)推出的虛擬儀器應(yīng)用軟件開發(fā)平臺(tái)LabVIEW7.0, LabVIEW是一個(gè)基于圖形化編程語言(G語言)的虛擬儀器開發(fā)環(huán)境,它提供了一種全新的編程方法,利用LabVIEW,可以通過交互式的圖形化前面板來設(shè)計(jì)控制系統(tǒng),例如:可以對(duì)幾千種硬件設(shè)備(GPIB、VXI、PXI、RS—232、RS—485、PLC、插入式數(shù)據(jù)采集卡等)進(jìn)行數(shù)據(jù)采集;可以通過網(wǎng)絡(luò)、交互應(yīng)用通訊和結(jié)構(gòu)化查詢語言(SQL)等方式與其他數(shù)據(jù)源相聯(lián);可以利用其功能強(qiáng)大的數(shù)據(jù)分析程序?qū)υ紨?shù)據(jù)進(jìn)行分析,得到有意義的結(jié)果并加以顯示輸出。
7儀器驅(qū)動(dòng)程序
儀器驅(qū)動(dòng)程序主要用來初始化虛擬儀器, 并設(shè)置特定的參數(shù)和工作方式, 使虛擬儀器保持正常的工作狀態(tài)。研華科技的PCL-818系列數(shù)據(jù)采集卡提供了LabVIEW的軟件支持,所以,按照提示就可以完成該卡的驅(qū)動(dòng)程序安裝。各主要選項(xiàng)選擇如下:
Board Type:PCL-818L A/D Channels Configuration:8 Differential
8應(yīng)用程序
應(yīng)用程序主要對(duì)輸入計(jì)算機(jī)的數(shù)據(jù)進(jìn)行分析和處理,定義虛擬儀器的功能。應(yīng)用程序包括數(shù)據(jù)的采集和存儲(chǔ)、波形的顯示和回放、數(shù)據(jù)的處理。
數(shù)據(jù)采集模塊采用了Function模板/All Functions子模板/Data Acquisition子模板中的節(jié)點(diǎn)來控制數(shù)據(jù)采集卡進(jìn)行數(shù)據(jù)采集。在設(shè)計(jì)時(shí)要求系統(tǒng)能對(duì)多通道進(jìn)行數(shù)據(jù)連續(xù)采集,所以必須有通道選擇控制。LabVIEW中的Measurement&Automation Explorer軟件以瀏覽器的形式來配置采集設(shè)備及其通道。在使用相關(guān)功能時(shí),可以配置設(shè)備的虛擬通道,在LabVIEW中進(jìn)行編程時(shí),直接指定這些虛擬通道的名稱,就可以控制這些通道完成數(shù)據(jù)采集。在數(shù)據(jù)采集程序中,主要控制數(shù)據(jù)采集的通道、采樣點(diǎn)數(shù)及掃描頻率等各種參數(shù)。系統(tǒng)信號(hào)的采樣點(diǎn)數(shù)及掃描頻率用戶可以根據(jù)不同信號(hào)的要求手動(dòng)在前板上設(shè)置。
在試驗(yàn)系統(tǒng)開發(fā)中,要求對(duì)采集數(shù)據(jù)的進(jìn)行顯示、處理, 還要進(jìn)行保存,實(shí)現(xiàn)離線的數(shù)據(jù)分析。本系統(tǒng)采用的是電子表格文件(Spreadsheet Text File)來存儲(chǔ)信號(hào)波形。該系統(tǒng)還能把任意一種試驗(yàn)數(shù)據(jù)備份到指定的位置。在已知備份文件的目錄的前提條件下,可以通過數(shù)據(jù)模擬再現(xiàn)的功能把以前的數(shù)據(jù)調(diào)出來進(jìn)行研究、分析。
為了配合教學(xué),在軟件系統(tǒng)設(shè)計(jì)時(shí)還應(yīng)用了LabVIEW中分析信號(hào)和系統(tǒng)的環(huán)境。例如經(jīng)典控制理論中的PID算法、信號(hào)分析的曲線擬合、傅立葉變換、數(shù)字濾波等功能;熱敏電阻的非線性溫度特性的曲線擬合等等。此外,也可利用其信號(hào)發(fā)生器生成了典型測(cè)試信號(hào),如脈沖、階躍、正弦等,對(duì)系統(tǒng)性能進(jìn)行仿真分析。其G語言框圖程序如圖4所示。
9前面板程序
前面板程序與真實(shí)的物理儀器面板相似,用來提供虛擬儀器與用戶的接口,用戶可以通過鍵盤和鼠標(biāo)對(duì)虛擬儀器面板上的開關(guān),按鈕等進(jìn)行各種操作。本系統(tǒng)中加熱爐恒溫控制系統(tǒng)前面板如圖5所示。
在前面板上,可以設(shè)置模擬通道、數(shù)據(jù)輸出通道;設(shè)定控制參數(shù)如給定值、P、I、D參數(shù)值;可以利用按鈕對(duì)系統(tǒng)的啟動(dòng)、停止進(jìn)行控制;可以顯示實(shí)時(shí)溫度曲線、歷史溫度曲線。
此外,還有如下等領(lǐng)域也有很多應(yīng)用。
?。ㄈ┓抡?/strong>
LabVIEW包含了多種多樣的數(shù)學(xué)運(yùn)算函數(shù),特別適合進(jìn)行模擬、仿真、原型設(shè)計(jì)等工作。在設(shè)計(jì)機(jī)電設(shè)備之前,可以先在計(jì)算機(jī)上用LabVIEW搭建仿真原型,驗(yàn)證設(shè)計(jì)的合理性,找到潛在的問題。在高等教育領(lǐng)域,有時(shí)如果使用LabVIEW進(jìn)行軟件模擬,就可以達(dá)到同樣的效果,使學(xué)生不致失去實(shí)踐的機(jī)會(huì)。
(四)兒童教育
由于圖形外觀漂亮且容易吸引兒童的注意力,同時(shí)圖形比文本更容易被兒童接受和理解,所以LabVIEW非常受少年兒童的歡迎。對(duì)于沒有任何計(jì)算機(jī)知識(shí)的兒童而言,可以把LabVIEW理解成是一種特殊的“積木”:把不同的原件搭在一起,就可以實(shí)現(xiàn)自己所需的功能。著名的可編程玩具“樂高積木”使用的就是LabVIEW編程語言。兒童經(jīng)過短暫的指導(dǎo)就可以利用樂高積木提供的積木搭建成各種車輛模型、機(jī)器人等,再使用LabVIEW編寫控制其運(yùn)動(dòng)和行為的程序。除了應(yīng)用于玩具,LabVIEW還有專門用于中小學(xué)生教學(xué)使用的版本。
?。ㄎ澹┛焖匍_發(fā)
根據(jù)筆者參與的一些項(xiàng)目統(tǒng)計(jì),完成一個(gè)功能類似的大型應(yīng)用軟件,熟練的LabVIEW程序員所需的開發(fā)時(shí)間,大概只是熟練的C程序員所需時(shí)間的1/5左右。所以,如果項(xiàng)目開發(fā)時(shí)間緊張,應(yīng)該優(yōu)先考慮使用LabVIEW,以縮短開發(fā)時(shí)間。
?。┛缙脚_(tái)
如果同一個(gè)程序好的平臺(tái)一致性。LabVIEW的代碼不需任何修改就可以運(yùn)行在常見的三大臺(tái)式機(jī)操作系統(tǒng)上:Windows、Mac OS 及 Linux。除此之外,LabVIEW還支持各種實(shí)時(shí)操作系統(tǒng)和嵌入式設(shè)備,比如常見的PDA、FPGA以及運(yùn)行VxWorks和PharLap系統(tǒng)的RT設(shè)備。
? ? ? 擴(kuò)展閱讀>>>>>>>labview實(shí)現(xiàn)plc指令
? ? ? ? ? ? ? ? ? ??>>>>>>>labview實(shí)現(xiàn)網(wǎng)絡(luò)通信方法與實(shí)例
? ? ? ? ? ? ? ? ? ??>>>>>>>labview實(shí)現(xiàn)3d模型
? ? ? ? ? ? ? ? ? ??>>>>>>>labview實(shí)現(xiàn)16位的crc
?
評(píng)論
查看更多