LabVIEW虛擬儀器設(shè)計(jì)教程第6章-變量、數(shù)組課件_第1頁
LabVIEW虛擬儀器設(shè)計(jì)教程第6章-變量、數(shù)組課件_第2頁
LabVIEW虛擬儀器設(shè)計(jì)教程第6章-變量、數(shù)組課件_第3頁
LabVIEW虛擬儀器設(shè)計(jì)教程第6章-變量、數(shù)組課件_第4頁
LabVIEW虛擬儀器設(shè)計(jì)教程第6章-變量、數(shù)組課件_第5頁
已閱讀5頁,還剩83頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第6章變量、數(shù)組、簇和矩陣

6.1變量6.2數(shù)組6.3簇6.4矩陣第6章變量、數(shù)組、簇和矩陣6.1變量6.1變量6.1.1局部變量當(dāng)無法訪問某前面板對象或需要在程序框圖節(jié)點(diǎn)之間傳遞數(shù)據(jù)時(shí),可創(chuàng)建局部變量。局部變量僅僅出現(xiàn)在程序框圖上,而不在前面板上。通過局部變量可對前面板上的輸入控件或顯示控件進(jìn)行數(shù)據(jù)讀寫。建立局部變量方法通過前面板對象或程序框圖接線端的快捷菜單中的“創(chuàng)建”?“局部變量”選項(xiàng)創(chuàng)建局部變量。將“函數(shù)”選板上的局部變量節(jié)點(diǎn)放置在程序框圖上,通過建立局部變量與輸入控件或顯示控件相關(guān)聯(lián)建立局部變量。6.1變量6.1.1局部變量當(dāng)無法訪問某前面板對象局部變量的讀寫創(chuàng)建了一個(gè)局部變量后,就可從變量讀寫數(shù)據(jù)了。默認(rèn)狀態(tài)下,新變量將接收數(shù)據(jù),變量就像一個(gè)顯示控件,是一個(gè)寫入局部變量。將新數(shù)據(jù)寫入該局部變量,與之相關(guān)聯(lián)的前面板輸入控件或顯示控件將由于新數(shù)據(jù)的寫入而更新。寫入局部變量讀取局部變量變量可配置為數(shù)據(jù)源、讀取局部變量。右鍵單擊變量,從快捷菜單中選擇“轉(zhuǎn)換為讀取”,便可將該變量配置為一個(gè)輸入控件。節(jié)點(diǎn)執(zhí)行時(shí),VI將讀取相關(guān)前面板輸入控件或顯示控件中的數(shù)據(jù)。如需使變量從程序框圖接收數(shù)據(jù)而不是提供數(shù)據(jù),可右鍵單擊該變量并從快捷菜單中選擇“轉(zhuǎn)換為寫入”。局部變量的讀寫創(chuàng)建了一個(gè)局部變量后,就可從變量讀寫數(shù)據(jù)了。局部變量應(yīng)用舉例該實(shí)例通過典型的并行循環(huán)結(jié)構(gòu),使用布爾開關(guān)局部變量讀取開關(guān)的值,可同時(shí)停止兩個(gè)循環(huán)。由于布爾控件的“單擊時(shí)觸發(fā)”機(jī)械動(dòng)作與局部變量不兼容,因此通過另一個(gè)局部寫入變量將開關(guān)值重置為“開”,仿真“單擊時(shí)觸發(fā)”機(jī)械動(dòng)作。利用局部變量實(shí)現(xiàn)一個(gè)布爾開關(guān)同時(shí)控制兩個(gè)While循環(huán)局部變量應(yīng)用舉例該實(shí)例通過典型的并行循環(huán)結(jié)構(gòu),使用布爾開關(guān)6.1.2全局變量全局變量可在同時(shí)運(yùn)行的多個(gè)VI之間訪問和傳遞數(shù)據(jù)。全局變量是內(nèi)置的LabVIEW對象。創(chuàng)建全局變量時(shí),LabVIEW將自動(dòng)創(chuàng)建一個(gè)有前面板但無程序框圖的特殊全局VI。向該全局VI的前面板添加控件可定義其中所含全局變量的數(shù)據(jù)類型及變量數(shù)目。該前面板實(shí)際便成為一個(gè)可供多個(gè)VI進(jìn)行數(shù)據(jù)訪問的容器。全局變量的創(chuàng)建在程序框圖中放置“全局變量”節(jié)點(diǎn),雙擊節(jié)點(diǎn)打開全局變量VI前面板,放置需要?jiǎng)?chuàng)建為全局變量的輸入控件和顯示控件。保存該全局VI并返回到原始VI的程序框圖。

可創(chuàng)建多個(gè)僅含有一個(gè)前面板對象的全局VI,也可創(chuàng)建一個(gè)含有多個(gè)前面板對象的全局VI從而將相似的變量歸為一組。建立程序框圖中全局變量節(jié)點(diǎn)與全局變量前面板中對象之間的關(guān)聯(lián)。6.1.2全局變量全局變量可在同時(shí)運(yùn)行的多個(gè)VI之間訪全局變量節(jié)點(diǎn)副本創(chuàng)建在程序框圖“函數(shù)選板”中點(diǎn)擊“選擇VI…”選項(xiàng),在彈出的“選擇需打開的VI”對話框中選擇打開保存全局變量的VI,則在鼠標(biāo)指針將浮著一個(gè)全局變量節(jié)點(diǎn),將其放置到程序框圖中即實(shí)現(xiàn)副本的創(chuàng)建。放置到程序框圖上的全局變量節(jié)點(diǎn)默認(rèn)和全局變量前面板中的一個(gè)自帶標(biāo)簽對象關(guān)聯(lián),可以通過重新建立關(guān)聯(lián)關(guān)系改變節(jié)點(diǎn)與對象之間的關(guān)系。全局變量節(jié)點(diǎn)副本創(chuàng)建在程序框圖“函數(shù)選板”中點(diǎn)擊“選擇VI全局變量應(yīng)用舉例全局變量前面板對象第一個(gè)VI的程序框圖第二個(gè)VI的程序框圖及前面板將第一個(gè)VI連續(xù)產(chǎn)生的隨機(jī)數(shù)傳遞到第二個(gè)VI中并在波形圖表中顯示第二個(gè)VI的停止按鈕同時(shí)控制兩個(gè)VI的運(yùn)行全局變量應(yīng)用舉例全局變量前面板對象第一個(gè)VI的程序框圖6.1.3局部變量和全局變量使用注意事項(xiàng)如需對一個(gè)局部或全局變量進(jìn)行初始化,應(yīng)在VI運(yùn)行前確認(rèn)變量包含的是已知的數(shù)據(jù)值,否則變量可能含有導(dǎo)致VI發(fā)生錯(cuò)誤行為的數(shù)據(jù)。如變量的初始值基于一個(gè)計(jì)算結(jié)果,則應(yīng)確保LabVIEW在讀取該變量前先將初始值寫入變量。(1)局部變量和全局變量的初始化(2)競爭狀態(tài)兩段或兩段以上代碼并行改變一個(gè)共享資源的值時(shí),就發(fā)生了競爭狀態(tài)。發(fā)生競爭時(shí)VI的運(yùn)行結(jié)果取決于共享變量先執(zhí)行哪個(gè)動(dòng)作,競爭狀態(tài)會(huì)引起不可預(yù)見性。當(dāng)有多于一個(gè)操作對同樣數(shù)據(jù)的值進(jìn)行更新時(shí)可能導(dǎo)致競爭狀態(tài),因此在使用局部變量和全局變量時(shí)應(yīng)避免競爭狀態(tài)。(3)使用局部變量和全局變量時(shí)應(yīng)考慮內(nèi)存使用局部變量和全局變量通常會(huì)使用更多的內(nèi)存,最終導(dǎo)致執(zhí)行速度更慢,因此需要考慮該問題。6.1.3局部變量和全局變量使用注意事項(xiàng)如需對一個(gè)局部或6.2數(shù)組數(shù)組是相同類型元素的集合,由元素和維度組成。元素是組成數(shù)組的數(shù)據(jù),維度是數(shù)組的長度、高度或深度。數(shù)組可以是一維或多維的,在內(nèi)存允許的情況下每一維度可有多達(dá)231-1個(gè)元素。對一組相似的數(shù)據(jù)進(jìn)行操作并重復(fù)計(jì)算時(shí),可考慮使用數(shù)組。6.2.1數(shù)組的創(chuàng)建1.前面板數(shù)組對象的創(chuàng)建(1)創(chuàng)建一個(gè)數(shù)組框架(2)將一個(gè)數(shù)據(jù)對象或元素拖曳到該數(shù)組框架中放入數(shù)組框架中的數(shù)據(jù)對象或元素可以是數(shù)值、布爾、字符串、路徑、引用句柄、簇輸入控件或顯示控件,因此數(shù)組根據(jù)元素的數(shù)據(jù)類型創(chuàng)建對應(yīng)數(shù)據(jù)類型的數(shù)組。當(dāng)放入的對象為輸入控件時(shí),所創(chuàng)建的數(shù)組將為數(shù)組輸入控件,當(dāng)放入顯示控件時(shí),所創(chuàng)建的數(shù)組將為數(shù)組顯示控件。6.2數(shù)組數(shù)組是相同類型元素的集合,由元素和維度2.?dāng)?shù)組對象的組成及配置操作改變數(shù)組顯示元素的形式數(shù)組的組成數(shù)組由索引區(qū)和元素區(qū)兩部分構(gòu)成的。默認(rèn)數(shù)組只顯示一個(gè)元素,該元素的索引值在數(shù)組索引區(qū)域中顯示,單擊索引區(qū)域的增量/減量按鈕可以瀏覽數(shù)組元素,即元素區(qū)域顯示的元素隨著索引值變化。數(shù)組索引區(qū)的顯示值始終為元素區(qū)左上角元素的索引值。2.?dāng)?shù)組對象的組成及配置操作改變數(shù)組顯示元素的形式數(shù)組的數(shù)組元素賦值改變數(shù)組元素的默認(rèn)值改變數(shù)組元素大小為數(shù)組空元素賦值時(shí),比當(dāng)前元素的索引值小的所有空元素都自動(dòng)被賦予該元素?cái)?shù)據(jù)類型的默認(rèn)值。

利用已賦值元素的快捷菜單“數(shù)據(jù)操作”?“當(dāng)前值設(shè)置為默認(rèn)值”選項(xiàng)可以為數(shù)組元素設(shè)置默認(rèn)值。數(shù)組元素賦值改變數(shù)組元素的默認(rèn)值改變數(shù)組元素大小為數(shù)組3.程序框圖數(shù)組常量的創(chuàng)建將函數(shù)選板中的“數(shù)組常量”放置到程序框圖中創(chuàng)建一個(gè)數(shù)組常量框架。將“常量”(如數(shù)值常量、布爾常量、字符串常量等)拖入數(shù)組常量框架中,即完成一個(gè)數(shù)組常量的創(chuàng)建。數(shù)組常量的相關(guān)配置操作與前面介紹的前面板中的數(shù)組對象相同。利用數(shù)組常量的索引區(qū)和邊框上快捷菜單“轉(zhuǎn)換為輸入控件”和“轉(zhuǎn)換為顯示控件”選項(xiàng)可分別把數(shù)組常量變?yōu)榍懊姘迳系妮斎肟丶惋@示控件。4.二維數(shù)組及多維數(shù)組的創(chuàng)建(1)通過數(shù)組索引區(qū)或邊框的快捷菜單“添加維度”選項(xiàng)增加數(shù)組的維數(shù),相反“刪除維度”可減小數(shù)組的維度.(2)在鼠標(biāo)指針處于“自動(dòng)選擇工具”狀態(tài)時(shí),移動(dòng)鼠標(biāo)指針到數(shù)組索引區(qū),此時(shí)索引區(qū)外圍將顯示出尺寸控制點(diǎn),用鼠標(biāo)在垂直方向拖動(dòng)尺寸控制點(diǎn),可以改變數(shù)組的維數(shù)。二維數(shù)組和三維數(shù)組3.程序框圖數(shù)組常量的創(chuàng)建將函數(shù)選板中的“數(shù)組常量”放置到程6.2.2數(shù)組的算術(shù)運(yùn)算LabVIEW一個(gè)非常大的優(yōu)勢在于它可以根據(jù)輸入數(shù)據(jù)的類型判斷算子的運(yùn)算方法,即自動(dòng)地實(shí)現(xiàn)多態(tài)。比如在LabVIEW中可以直接將兩個(gè)數(shù)組相加,LabVIEW會(huì)自動(dòng)根據(jù)數(shù)組大小、數(shù)據(jù)類型決定相應(yīng)的運(yùn)算方法。對于加減乘除,數(shù)組之間的運(yùn)算滿足下面的規(guī)則。(1)如果進(jìn)行運(yùn)算的兩個(gè)數(shù)組大小完全一樣,則將兩個(gè)數(shù)組中索引相同的元素進(jìn)行運(yùn)算形成一個(gè)新的數(shù)組。(2)若大小不一樣,則忽略較大數(shù)組多出來的部分。(3)如果一個(gè)數(shù)組和一個(gè)數(shù)值進(jìn)行運(yùn)算,則數(shù)組的每個(gè)元素都和該數(shù)值進(jìn)行運(yùn)算從而輸出一個(gè)新的數(shù)組。6.2.2數(shù)組的算術(shù)運(yùn)算LabVIEW一個(gè)非常大的優(yōu)勢在6.2.3數(shù)組函數(shù)及操作數(shù)組操作函數(shù)

6.2.3數(shù)組函數(shù)及操作數(shù)組操作函數(shù)數(shù)組函數(shù)操作實(shí)例1.?dāng)?shù)組大小函數(shù)該函數(shù)返回輸入數(shù)組每個(gè)維度中元素的個(gè)數(shù)。求一維數(shù)組大小:一維數(shù)組元素的個(gè)數(shù)。求三維數(shù)組大?。悍祷匾粋€(gè)含三個(gè)元素的數(shù)組,指明數(shù)組的頁、行、列的數(shù)量。數(shù)組函數(shù)操作實(shí)例1.?dāng)?shù)組大小函數(shù)該函數(shù)返回輸入數(shù)組每個(gè)維度2.索引數(shù)組函數(shù)該函數(shù)的功能是返回“n維數(shù)組”在索引位置的元素或子數(shù)組。求一維數(shù)組索引為0和2的元素。求二維數(shù)組行索引為0列索引為2的元素及行索引為1的子數(shù)組。2.索引數(shù)組函數(shù)該函數(shù)的功能是返回“n維數(shù)組”在索引位置的3.替換數(shù)組子集函數(shù)該函數(shù)的功能是從索引中指定的位置開始替換數(shù)組中的某個(gè)元素或子數(shù)組。將一維數(shù)組索引為1的元素替換為“0”

將二維數(shù)組列索引為0的元素全部替換為“0”。

替換3維數(shù)組行索引為1的前四個(gè)元素,其中三維數(shù)組為3×4×5,輸入的“新元素/子數(shù)組”為2×4,因此只能替換第0頁和第1頁中行索引為1的前四個(gè)元素。3.替換數(shù)組子集函數(shù)該函數(shù)的功能是從索引中指定的位置開始替4.?dāng)?shù)組插入函數(shù)通過該函數(shù)實(shí)現(xiàn)在索引指定位置插入元素或子數(shù)組,將數(shù)組連接到該函數(shù)時(shí),函數(shù)將自動(dòng)調(diào)整大小以顯示數(shù)組各個(gè)維度的索引。一維數(shù)組中索引值為1處插入一個(gè)元素“0”。在二維數(shù)組列索引為1處插入一列數(shù)據(jù)。原數(shù)組為3×4×5的三維數(shù)組,插入2×4的二維數(shù)組,插入位置的行索引為1。二維數(shù)組的兩行分別插入到三維數(shù)組的第0和1頁中行索引為1的位置,第3頁行索引的位置也插入了一行,由于插入的二維數(shù)組只有兩行,故第3頁插入的行的元素全部為默認(rèn)值“0”。另外插入的二維數(shù)組每行只有4個(gè)元素,而原數(shù)組每行有5個(gè)元素,因此插入的行的最后一個(gè)元素也是默認(rèn)值“0”。

4.?dāng)?shù)組插入函數(shù)通過該函數(shù)實(shí)現(xiàn)在索引指定位置插入元素或子數(shù)5.刪除數(shù)組元素函數(shù)該函數(shù)從輸入的“n維數(shù)組”中刪除元素或子數(shù)組?!皀維數(shù)組”接入是要?jiǎng)h除元素、行、列或頁的數(shù)組,可以是任意類型的n維數(shù)組?!伴L度”為確定要?jiǎng)h除元素、行、列或頁的數(shù)量或長度。刪除一維數(shù)組從索引為1開始的兩個(gè)元素。

刪除二維數(shù)組從行索引為1開始的兩行元素。

連線長度為1,未連線索引,故刪除三維數(shù)組最后一頁數(shù)據(jù),“已刪除元素的數(shù)組子集”和“已刪除部分”均為三維數(shù)組,只不過已刪除元素的數(shù)組子集比輸入數(shù)組少1頁,已刪除部分只有1頁。5.刪除數(shù)組元素函數(shù)該函數(shù)從輸入的“n維數(shù)組”中刪除元素或6.初始化數(shù)組函數(shù)通過該函數(shù)可以創(chuàng)建一個(gè)數(shù)組,其中的每個(gè)元素都被初始化為“元素”輸入端子連接的值。通過定位工具可調(diào)整函數(shù)的大小,增加輸出數(shù)組的維數(shù)。初始化創(chuàng)建含5個(gè)元素的一維數(shù)組。初始化創(chuàng)建4行5列的二維數(shù)組

初始化創(chuàng)建3頁4行5列的三維數(shù)組

6.初始化數(shù)組函數(shù)通過該函數(shù)可以創(chuàng)建一個(gè)數(shù)組,其中的每個(gè)元7.創(chuàng)建數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)連接多個(gè)數(shù)組或向N維數(shù)組添加元素的功能。由標(biāo)量元素創(chuàng)建一維數(shù)組。由一維數(shù)組禁用“連接輸入”創(chuàng)建二維數(shù)組。由一維數(shù)組啟用“連接輸入”創(chuàng)建一維數(shù)組。7.創(chuàng)建數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)連接多個(gè)數(shù)組或向N維數(shù)組添加元素的8.?dāng)?shù)組子集函數(shù)該函數(shù)用于返回輸入數(shù)組從索引位置開始包含長度個(gè)元素的一部分。獲取一維數(shù)組從索引1開始長度為2的子集獲取二維數(shù)組從行索引1開始長度為2、列索引2開始長度為2的子集8.?dāng)?shù)組子集函數(shù)該函數(shù)用于返回輸入數(shù)組從索引位置開始包含長9.?dāng)?shù)組最大值與最小值函數(shù)該函數(shù)用于返回?cái)?shù)組中的最大值和最小值,及其索引。一維數(shù)組求最大值最小值及索引二維數(shù)組求最大值最小值及索引9.?dāng)?shù)組最大值與最小值函數(shù)該函數(shù)用于返回?cái)?shù)組中的最大值和最10.重排數(shù)組維數(shù)函數(shù)該函數(shù)根據(jù)維數(shù)大小0..m-1的值,改變數(shù)組的維數(shù)。函數(shù)從左至右按行讀取內(nèi)存中數(shù)據(jù)數(shù)組的值,并顯示重新排序后的數(shù)組。一維數(shù)組重排成2行3列的二維數(shù)組二維數(shù)組重排成2頁3行3列的三維數(shù)組

10.重排數(shù)組維數(shù)函數(shù)該函數(shù)根據(jù)維數(shù)大小0..m-1的值,改11.一維數(shù)組排序函數(shù)該函數(shù)實(shí)現(xiàn)將數(shù)組輸入數(shù)組元素按照升序排列后輸出。如數(shù)組的元素是簇,該函數(shù)將按照第一個(gè)元素的比較結(jié)果對元素進(jìn)行排序。如第一個(gè)元素匹配,函數(shù)將比較第二個(gè)和其后的元素。12.搜索一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)在輸入的“一維數(shù)組”中從“開始索引”位置開始搜索“元素”并返回該“元素索引”。11.一維數(shù)組排序函數(shù)該函數(shù)實(shí)現(xiàn)將數(shù)組輸入數(shù)組元素按照升序13.拆分一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)從“索引”位置將輸入“數(shù)組”分為兩部分,返回兩個(gè)數(shù)組。14.反轉(zhuǎn)一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)反轉(zhuǎn)數(shù)組中元素的順序。13.拆分一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)從“索引”位置將輸入“數(shù)組15.一維數(shù)組移位函數(shù)

該函數(shù)將數(shù)組中的元素移動(dòng)多個(gè)位置,方向及移位位置由n指定。n>0時(shí)移位方為右移,n<0時(shí)為左移。16.一維數(shù)組插值函數(shù)該函數(shù)實(shí)現(xiàn)通過“指數(shù)索引或x”值,線性插入“數(shù)字或點(diǎn)的數(shù)組”中的y值。15.一維數(shù)組移位函數(shù)該函數(shù)將數(shù)組中的元素移17.以閾值插值一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)在表示二維非降序排列圖形的一維數(shù)組中插入點(diǎn),該函數(shù)相當(dāng)于“一維數(shù)組插值函數(shù)”的反函數(shù)。18.交織一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)交織輸入數(shù)組中的相應(yīng)元素,形成輸出數(shù)組。17.以閾值插值一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)在表示二維非降序排列圖19.抽取一維數(shù)組函數(shù)該函數(shù)的功能是使數(shù)組的元素分成若干輸出數(shù)組,依次輸出元素。20.二維數(shù)組轉(zhuǎn)置函數(shù)該函數(shù)的功能是重新排列二維數(shù)組的元素,使二維數(shù)組[i,j]變?yōu)橐艳D(zhuǎn)置的數(shù)組[j,i]。19.抽取一維數(shù)組函數(shù)該函數(shù)的功能是使數(shù)組的元素分成若干輸出6.3簇簇是和數(shù)組類似的一種復(fù)合數(shù)據(jù)類型,與數(shù)組不同在于數(shù)組中元素的類型都是相同的,而簇中元素的數(shù)據(jù)類型可以相同,也可以不同。簇是LabVIEW中的一個(gè)獨(dú)特的概念,它與其他編程語言中的結(jié)構(gòu)體變量是等同的。在LabVIEW中,簇可將程序框圖中的多個(gè)相關(guān)數(shù)據(jù)元素集中在一起,這樣就只需要一條連線就可以把多個(gè)節(jié)點(diǎn)連接到一起,這樣不僅減少了數(shù)據(jù)連線的數(shù)量,還可以減少子VI的連接端口的數(shù)量,同時(shí)當(dāng)前面板中顯示控件繁多而又單一的時(shí)候,利用簇來排版界面也能使程序簡潔漂亮。6.3.1簇的創(chuàng)建和數(shù)組的創(chuàng)建方法類似,創(chuàng)建一個(gè)簇首先也需要建立一個(gè)簇框架,然后將所需要的控件對象拖入框架中,即完成一個(gè)簇的創(chuàng)建。不同的是,由于構(gòu)成數(shù)組的元素必須是同類型的,因此在拖入控件確定數(shù)組的元素類型時(shí),只需拖入一個(gè)控件即可。而簇中的元素的數(shù)據(jù)類型可以相同,也可以不同,因此通過拖入控件確定簇所包含的元素時(shí),可以根據(jù)實(shí)際需要拖入不同類型的控件。6.3簇簇是和數(shù)組類似的一種復(fù)合數(shù)據(jù)類型,與數(shù)組不同在于1.簇對象的創(chuàng)建創(chuàng)建一個(gè)簇框架將數(shù)據(jù)對象或元素拖曳到簇框架中一個(gè)簇只能為輸入控件或只能為顯示控件(以拖入的第一元素為準(zhǔn),其后拖入控件將自動(dòng)轉(zhuǎn)換)。簇中的所有元素必須同時(shí)為輸入控件或者同時(shí)為顯示控件。通過簇的快捷菜單選項(xiàng)“轉(zhuǎn)換為輸入控件/轉(zhuǎn)換為顯示控件”選項(xiàng)可以實(shí)現(xiàn)輸入控件和顯示控件的轉(zhuǎn)換,轉(zhuǎn)換后其內(nèi)部的控件也將隨之改變。1.簇對象的創(chuàng)建創(chuàng)建一個(gè)簇框架將數(shù)據(jù)對象或元素拖2.簇的配置操作(1)調(diào)整框架大小及元素布局快捷菜單“自動(dòng)調(diào)整大小”中的4個(gè)選項(xiàng)可以用來調(diào)整簇框架的大小以及簇元素的布局?!盁o”選項(xiàng)不對簇框架做出調(diào)整;“調(diào)整為匹配大小”選項(xiàng)用于調(diào)整簇框架的大小,以適合所包含的所有元素;“水平排列”選項(xiàng)在水平方向壓縮排列所有元素;“垂直排列”選項(xiàng)則在垂直方向壓縮排列所有元素。(2)對簇中元素進(jìn)行排序簇的元素有一定的排列順序(創(chuàng)建簇時(shí)添加這些元素的順序)。簇元素的排列順序很重要,因?yàn)閷Υ氐暮芏嗖僮鞫夹枰?。在采用“水平排列”和“垂直排列”方式調(diào)整簇元素布局時(shí),也是分別按順序號(hào)從左到右和從上到下排列簇元素的;在為簇顯示控件賦值時(shí),也必須考慮簇元素的順序。作為數(shù)據(jù)源的簇?cái)?shù)據(jù)的元素類型排序,必須與簇顯示控件的元素類型排序相同。2.簇的配置操作(1)調(diào)整框架大小及元素布局快捷菜單“自利用快捷菜單“重新排序簇中對象…”選項(xiàng),打開簇元素順序編輯狀態(tài)。在簇元素順序編輯狀態(tài)下,鼠標(biāo)指針變?yōu)槭中托螤?,同時(shí)每個(gè)簇元素上有兩個(gè)序號(hào),左邊反顯(黑底白字)的為新序號(hào);右邊加灰的為修改之前的舊序號(hào)。最初在工具欄提示為“單擊設(shè)置0”,這時(shí)移動(dòng)鼠標(biāo)單擊四個(gè)簇元素之一,將把當(dāng)前被單擊元素設(shè)置為第0個(gè)元素。設(shè)置完第0個(gè)元素后,工具欄提示信息變?yōu)椤皢螕粼O(shè)置1”,單擊另一個(gè)元素將把其設(shè)置為第1個(gè)元素。重復(fù)此過程,直到改好所有元素的順序。在編輯元素順序號(hào)的過程中,可以單擊工具欄的“√”按鈕,以確認(rèn)所做的修改并回到普通狀態(tài);或者單擊“×”按鈕取消所做的修改。改變已有簇中元素排列的順序方法利用快捷菜單“重新排序簇中對象…”選項(xiàng),打開簇元素順序編輯狀6.3.2簇函數(shù)及操作簇操作函數(shù)6.3.2簇函數(shù)及操作簇操作函數(shù)簇操作函數(shù)應(yīng)用實(shí)例1.捆綁函數(shù)該函數(shù)的功能是將輸入的獨(dú)立“元素”組合為“簇”。同時(shí)也可使用該函數(shù)改變現(xiàn)有簇中獨(dú)立元素的值,而無需為所有元素指定新值,要實(shí)現(xiàn)這種操作,可將一個(gè)簇連接到該函數(shù)節(jié)點(diǎn)中間的“簇”接線端。將輸入的獨(dú)立元素組合為簇改變現(xiàn)有簇中獨(dú)立元素的值簇操作函數(shù)應(yīng)用實(shí)例1.捆綁函數(shù)該函數(shù)的功能是將輸入的獨(dú)立“2.解除捆綁函數(shù)該函數(shù)的功能是將輸入的“簇”分割為獨(dú)立的“元素”。2.解除捆綁函數(shù)該函數(shù)的功能是將輸入的“簇”分割為獨(dú)立的“元3.按名稱捆綁函數(shù)該函數(shù)的功能是替換一個(gè)或多個(gè)簇元素,其功能類似于捆綁函數(shù)。和捆綁函數(shù)不同的是該函數(shù)根據(jù)名稱,而不是根據(jù)簇中元素的位置引用簇元素。3.按名稱捆綁函數(shù)該函數(shù)的功能是替換一個(gè)或多個(gè)簇元素,其功能4.按名稱解除捆綁函數(shù)該函數(shù)返回指定名稱的簇元素,該函數(shù)與解除捆綁函數(shù)功能類似。和解除捆綁函數(shù)不同的是該函數(shù)不必在簇中記錄元素的順序,同時(shí)不要求元素的個(gè)數(shù)和簇中元素個(gè)數(shù)匹配。4.按名稱解除捆綁函數(shù)該函數(shù)返回指定名稱的簇元素,該函數(shù)與解5.創(chuàng)建簇?cái)?shù)組函數(shù)該函數(shù)將每個(gè)“元素”輸入捆綁為簇,然后將所有元素簇組成以簇為元素的數(shù)組。利用捆綁函數(shù)和創(chuàng)建數(shù)組函數(shù)創(chuàng)建簇?cái)?shù)組

建立簇?cái)?shù)組的兩種方式利用創(chuàng)建簇?cái)?shù)組函數(shù)創(chuàng)建簇?cái)?shù)組5.創(chuàng)建簇?cái)?shù)組函數(shù)該函數(shù)將每個(gè)“元素”輸入捆綁為簇,然后將所6.索引與捆綁簇?cái)?shù)組函數(shù)該函數(shù)實(shí)現(xiàn)對多個(gè)數(shù)組建立索引,并創(chuàng)建一個(gè)簇?cái)?shù)組,其中第i個(gè)元素包含每個(gè)輸入數(shù)組的第i個(gè)元素。兩種方式循環(huán)結(jié)構(gòu)和捆綁函數(shù)方式索引與捆綁函數(shù)方式6.索引與捆綁簇?cái)?shù)組函數(shù)該函數(shù)實(shí)現(xiàn)對多個(gè)數(shù)組建立索引,并創(chuàng)建7.簇至數(shù)組轉(zhuǎn)換函數(shù)該函數(shù)實(shí)現(xiàn)將相同數(shù)據(jù)類型元素組成的簇轉(zhuǎn)換為數(shù)據(jù)類型相同的一維數(shù)組。8.?dāng)?shù)組至簇轉(zhuǎn)換函數(shù)該函數(shù)的功能是轉(zhuǎn)換一維數(shù)組為簇,簇元素和一維數(shù)組元素的類型相同。7.簇至數(shù)組轉(zhuǎn)換函數(shù)該函數(shù)實(shí)現(xiàn)將相同數(shù)據(jù)類型元素組成的簇轉(zhuǎn)6.3.3錯(cuò)誤輸入及錯(cuò)誤輸出簇錯(cuò)誤輸入及錯(cuò)誤輸出簇是LabVIEW中兩個(gè)預(yù)定義的簇。在用LabVIEW編寫大型項(xiàng)目時(shí)經(jīng)常會(huì)調(diào)用子VI,因此大型項(xiàng)目表現(xiàn)為一種層狀結(jié)構(gòu),為了將底層發(fā)生的錯(cuò)誤信息原封不動(dòng)地傳遞到頂層VI,LabVIEW利用錯(cuò)誤輸入和錯(cuò)誤輸出這兩個(gè)預(yù)定義簇來作為傳遞錯(cuò)誤信息的載體。錯(cuò)誤輸入和錯(cuò)誤輸出簇格式為:狀態(tài)布爾量代表是否有錯(cuò),代碼代表錯(cuò)誤代碼,源包含了錯(cuò)誤的具體信息。對于系統(tǒng)錯(cuò)誤,代碼都有預(yù)先定義的錯(cuò)誤信息,選擇控件快捷菜單選項(xiàng)“解釋警告/解釋錯(cuò)誤”可以打開解釋框來查找該警告/錯(cuò)誤代碼的詳細(xì)解釋。6.3.3錯(cuò)誤輸入及錯(cuò)誤輸出簇錯(cuò)誤輸入及錯(cuò)誤輸出簇是La6.4矩陣為了解決矩陣運(yùn)算操作問題,從LabVIEW8開始加入了對矩陣的支持。矩陣可按行或列對數(shù)學(xué)運(yùn)算中的實(shí)數(shù)或復(fù)數(shù)標(biāo)量數(shù)據(jù)分組,如線性代數(shù)運(yùn)算。一個(gè)實(shí)數(shù)矩陣包含雙精度元素,而一個(gè)復(fù)數(shù)矩陣包含由雙精度數(shù)組成的復(fù)數(shù)元素,因此,在LabVIEW中,矩陣分兩種:實(shí)數(shù)矩陣和復(fù)數(shù)矩陣。LabVIEW中的矩陣控件6.4矩陣為了解決矩陣運(yùn)算操作問題,從LabVI函數(shù)選板中的“矩陣”及“線性代數(shù)”子選板函數(shù)選板中的“矩陣”及“線性代數(shù)”子選板第6章變量、數(shù)組、簇和矩陣

6.1變量6.2數(shù)組6.3簇6.4矩陣第6章變量、數(shù)組、簇和矩陣6.1變量6.1變量6.1.1局部變量當(dāng)無法訪問某前面板對象或需要在程序框圖節(jié)點(diǎn)之間傳遞數(shù)據(jù)時(shí),可創(chuàng)建局部變量。局部變量僅僅出現(xiàn)在程序框圖上,而不在前面板上。通過局部變量可對前面板上的輸入控件或顯示控件進(jìn)行數(shù)據(jù)讀寫。建立局部變量方法通過前面板對象或程序框圖接線端的快捷菜單中的“創(chuàng)建”?“局部變量”選項(xiàng)創(chuàng)建局部變量。將“函數(shù)”選板上的局部變量節(jié)點(diǎn)放置在程序框圖上,通過建立局部變量與輸入控件或顯示控件相關(guān)聯(lián)建立局部變量。6.1變量6.1.1局部變量當(dāng)無法訪問某前面板對象局部變量的讀寫創(chuàng)建了一個(gè)局部變量后,就可從變量讀寫數(shù)據(jù)了。默認(rèn)狀態(tài)下,新變量將接收數(shù)據(jù),變量就像一個(gè)顯示控件,是一個(gè)寫入局部變量。將新數(shù)據(jù)寫入該局部變量,與之相關(guān)聯(lián)的前面板輸入控件或顯示控件將由于新數(shù)據(jù)的寫入而更新。寫入局部變量讀取局部變量變量可配置為數(shù)據(jù)源、讀取局部變量。右鍵單擊變量,從快捷菜單中選擇“轉(zhuǎn)換為讀取”,便可將該變量配置為一個(gè)輸入控件。節(jié)點(diǎn)執(zhí)行時(shí),VI將讀取相關(guān)前面板輸入控件或顯示控件中的數(shù)據(jù)。如需使變量從程序框圖接收數(shù)據(jù)而不是提供數(shù)據(jù),可右鍵單擊該變量并從快捷菜單中選擇“轉(zhuǎn)換為寫入”。局部變量的讀寫創(chuàng)建了一個(gè)局部變量后,就可從變量讀寫數(shù)據(jù)了。局部變量應(yīng)用舉例該實(shí)例通過典型的并行循環(huán)結(jié)構(gòu),使用布爾開關(guān)局部變量讀取開關(guān)的值,可同時(shí)停止兩個(gè)循環(huán)。由于布爾控件的“單擊時(shí)觸發(fā)”機(jī)械動(dòng)作與局部變量不兼容,因此通過另一個(gè)局部寫入變量將開關(guān)值重置為“開”,仿真“單擊時(shí)觸發(fā)”機(jī)械動(dòng)作。利用局部變量實(shí)現(xiàn)一個(gè)布爾開關(guān)同時(shí)控制兩個(gè)While循環(huán)局部變量應(yīng)用舉例該實(shí)例通過典型的并行循環(huán)結(jié)構(gòu),使用布爾開關(guān)6.1.2全局變量全局變量可在同時(shí)運(yùn)行的多個(gè)VI之間訪問和傳遞數(shù)據(jù)。全局變量是內(nèi)置的LabVIEW對象。創(chuàng)建全局變量時(shí),LabVIEW將自動(dòng)創(chuàng)建一個(gè)有前面板但無程序框圖的特殊全局VI。向該全局VI的前面板添加控件可定義其中所含全局變量的數(shù)據(jù)類型及變量數(shù)目。該前面板實(shí)際便成為一個(gè)可供多個(gè)VI進(jìn)行數(shù)據(jù)訪問的容器。全局變量的創(chuàng)建在程序框圖中放置“全局變量”節(jié)點(diǎn),雙擊節(jié)點(diǎn)打開全局變量VI前面板,放置需要?jiǎng)?chuàng)建為全局變量的輸入控件和顯示控件。保存該全局VI并返回到原始VI的程序框圖。

可創(chuàng)建多個(gè)僅含有一個(gè)前面板對象的全局VI,也可創(chuàng)建一個(gè)含有多個(gè)前面板對象的全局VI從而將相似的變量歸為一組。建立程序框圖中全局變量節(jié)點(diǎn)與全局變量前面板中對象之間的關(guān)聯(lián)。6.1.2全局變量全局變量可在同時(shí)運(yùn)行的多個(gè)VI之間訪全局變量節(jié)點(diǎn)副本創(chuàng)建在程序框圖“函數(shù)選板”中點(diǎn)擊“選擇VI…”選項(xiàng),在彈出的“選擇需打開的VI”對話框中選擇打開保存全局變量的VI,則在鼠標(biāo)指針將浮著一個(gè)全局變量節(jié)點(diǎn),將其放置到程序框圖中即實(shí)現(xiàn)副本的創(chuàng)建。放置到程序框圖上的全局變量節(jié)點(diǎn)默認(rèn)和全局變量前面板中的一個(gè)自帶標(biāo)簽對象關(guān)聯(lián),可以通過重新建立關(guān)聯(lián)關(guān)系改變節(jié)點(diǎn)與對象之間的關(guān)系。全局變量節(jié)點(diǎn)副本創(chuàng)建在程序框圖“函數(shù)選板”中點(diǎn)擊“選擇VI全局變量應(yīng)用舉例全局變量前面板對象第一個(gè)VI的程序框圖第二個(gè)VI的程序框圖及前面板將第一個(gè)VI連續(xù)產(chǎn)生的隨機(jī)數(shù)傳遞到第二個(gè)VI中并在波形圖表中顯示第二個(gè)VI的停止按鈕同時(shí)控制兩個(gè)VI的運(yùn)行全局變量應(yīng)用舉例全局變量前面板對象第一個(gè)VI的程序框圖6.1.3局部變量和全局變量使用注意事項(xiàng)如需對一個(gè)局部或全局變量進(jìn)行初始化,應(yīng)在VI運(yùn)行前確認(rèn)變量包含的是已知的數(shù)據(jù)值,否則變量可能含有導(dǎo)致VI發(fā)生錯(cuò)誤行為的數(shù)據(jù)。如變量的初始值基于一個(gè)計(jì)算結(jié)果,則應(yīng)確保LabVIEW在讀取該變量前先將初始值寫入變量。(1)局部變量和全局變量的初始化(2)競爭狀態(tài)兩段或兩段以上代碼并行改變一個(gè)共享資源的值時(shí),就發(fā)生了競爭狀態(tài)。發(fā)生競爭時(shí)VI的運(yùn)行結(jié)果取決于共享變量先執(zhí)行哪個(gè)動(dòng)作,競爭狀態(tài)會(huì)引起不可預(yù)見性。當(dāng)有多于一個(gè)操作對同樣數(shù)據(jù)的值進(jìn)行更新時(shí)可能導(dǎo)致競爭狀態(tài),因此在使用局部變量和全局變量時(shí)應(yīng)避免競爭狀態(tài)。(3)使用局部變量和全局變量時(shí)應(yīng)考慮內(nèi)存使用局部變量和全局變量通常會(huì)使用更多的內(nèi)存,最終導(dǎo)致執(zhí)行速度更慢,因此需要考慮該問題。6.1.3局部變量和全局變量使用注意事項(xiàng)如需對一個(gè)局部或6.2數(shù)組數(shù)組是相同類型元素的集合,由元素和維度組成。元素是組成數(shù)組的數(shù)據(jù),維度是數(shù)組的長度、高度或深度。數(shù)組可以是一維或多維的,在內(nèi)存允許的情況下每一維度可有多達(dá)231-1個(gè)元素。對一組相似的數(shù)據(jù)進(jìn)行操作并重復(fù)計(jì)算時(shí),可考慮使用數(shù)組。6.2.1數(shù)組的創(chuàng)建1.前面板數(shù)組對象的創(chuàng)建(1)創(chuàng)建一個(gè)數(shù)組框架(2)將一個(gè)數(shù)據(jù)對象或元素拖曳到該數(shù)組框架中放入數(shù)組框架中的數(shù)據(jù)對象或元素可以是數(shù)值、布爾、字符串、路徑、引用句柄、簇輸入控件或顯示控件,因此數(shù)組根據(jù)元素的數(shù)據(jù)類型創(chuàng)建對應(yīng)數(shù)據(jù)類型的數(shù)組。當(dāng)放入的對象為輸入控件時(shí),所創(chuàng)建的數(shù)組將為數(shù)組輸入控件,當(dāng)放入顯示控件時(shí),所創(chuàng)建的數(shù)組將為數(shù)組顯示控件。6.2數(shù)組數(shù)組是相同類型元素的集合,由元素和維度2.?dāng)?shù)組對象的組成及配置操作改變數(shù)組顯示元素的形式數(shù)組的組成數(shù)組由索引區(qū)和元素區(qū)兩部分構(gòu)成的。默認(rèn)數(shù)組只顯示一個(gè)元素,該元素的索引值在數(shù)組索引區(qū)域中顯示,單擊索引區(qū)域的增量/減量按鈕可以瀏覽數(shù)組元素,即元素區(qū)域顯示的元素隨著索引值變化。數(shù)組索引區(qū)的顯示值始終為元素區(qū)左上角元素的索引值。2.?dāng)?shù)組對象的組成及配置操作改變數(shù)組顯示元素的形式數(shù)組的數(shù)組元素賦值改變數(shù)組元素的默認(rèn)值改變數(shù)組元素大小為數(shù)組空元素賦值時(shí),比當(dāng)前元素的索引值小的所有空元素都自動(dòng)被賦予該元素?cái)?shù)據(jù)類型的默認(rèn)值。

利用已賦值元素的快捷菜單“數(shù)據(jù)操作”?“當(dāng)前值設(shè)置為默認(rèn)值”選項(xiàng)可以為數(shù)組元素設(shè)置默認(rèn)值。數(shù)組元素賦值改變數(shù)組元素的默認(rèn)值改變數(shù)組元素大小為數(shù)組3.程序框圖數(shù)組常量的創(chuàng)建將函數(shù)選板中的“數(shù)組常量”放置到程序框圖中創(chuàng)建一個(gè)數(shù)組常量框架。將“常量”(如數(shù)值常量、布爾常量、字符串常量等)拖入數(shù)組常量框架中,即完成一個(gè)數(shù)組常量的創(chuàng)建。數(shù)組常量的相關(guān)配置操作與前面介紹的前面板中的數(shù)組對象相同。利用數(shù)組常量的索引區(qū)和邊框上快捷菜單“轉(zhuǎn)換為輸入控件”和“轉(zhuǎn)換為顯示控件”選項(xiàng)可分別把數(shù)組常量變?yōu)榍懊姘迳系妮斎肟丶惋@示控件。4.二維數(shù)組及多維數(shù)組的創(chuàng)建(1)通過數(shù)組索引區(qū)或邊框的快捷菜單“添加維度”選項(xiàng)增加數(shù)組的維數(shù),相反“刪除維度”可減小數(shù)組的維度.(2)在鼠標(biāo)指針處于“自動(dòng)選擇工具”狀態(tài)時(shí),移動(dòng)鼠標(biāo)指針到數(shù)組索引區(qū),此時(shí)索引區(qū)外圍將顯示出尺寸控制點(diǎn),用鼠標(biāo)在垂直方向拖動(dòng)尺寸控制點(diǎn),可以改變數(shù)組的維數(shù)。二維數(shù)組和三維數(shù)組3.程序框圖數(shù)組常量的創(chuàng)建將函數(shù)選板中的“數(shù)組常量”放置到程6.2.2數(shù)組的算術(shù)運(yùn)算LabVIEW一個(gè)非常大的優(yōu)勢在于它可以根據(jù)輸入數(shù)據(jù)的類型判斷算子的運(yùn)算方法,即自動(dòng)地實(shí)現(xiàn)多態(tài)。比如在LabVIEW中可以直接將兩個(gè)數(shù)組相加,LabVIEW會(huì)自動(dòng)根據(jù)數(shù)組大小、數(shù)據(jù)類型決定相應(yīng)的運(yùn)算方法。對于加減乘除,數(shù)組之間的運(yùn)算滿足下面的規(guī)則。(1)如果進(jìn)行運(yùn)算的兩個(gè)數(shù)組大小完全一樣,則將兩個(gè)數(shù)組中索引相同的元素進(jìn)行運(yùn)算形成一個(gè)新的數(shù)組。(2)若大小不一樣,則忽略較大數(shù)組多出來的部分。(3)如果一個(gè)數(shù)組和一個(gè)數(shù)值進(jìn)行運(yùn)算,則數(shù)組的每個(gè)元素都和該數(shù)值進(jìn)行運(yùn)算從而輸出一個(gè)新的數(shù)組。6.2.2數(shù)組的算術(shù)運(yùn)算LabVIEW一個(gè)非常大的優(yōu)勢在6.2.3數(shù)組函數(shù)及操作數(shù)組操作函數(shù)

6.2.3數(shù)組函數(shù)及操作數(shù)組操作函數(shù)數(shù)組函數(shù)操作實(shí)例1.?dāng)?shù)組大小函數(shù)該函數(shù)返回輸入數(shù)組每個(gè)維度中元素的個(gè)數(shù)。求一維數(shù)組大小:一維數(shù)組元素的個(gè)數(shù)。求三維數(shù)組大?。悍祷匾粋€(gè)含三個(gè)元素的數(shù)組,指明數(shù)組的頁、行、列的數(shù)量。數(shù)組函數(shù)操作實(shí)例1.?dāng)?shù)組大小函數(shù)該函數(shù)返回輸入數(shù)組每個(gè)維度2.索引數(shù)組函數(shù)該函數(shù)的功能是返回“n維數(shù)組”在索引位置的元素或子數(shù)組。求一維數(shù)組索引為0和2的元素。求二維數(shù)組行索引為0列索引為2的元素及行索引為1的子數(shù)組。2.索引數(shù)組函數(shù)該函數(shù)的功能是返回“n維數(shù)組”在索引位置的3.替換數(shù)組子集函數(shù)該函數(shù)的功能是從索引中指定的位置開始替換數(shù)組中的某個(gè)元素或子數(shù)組。將一維數(shù)組索引為1的元素替換為“0”

。

將二維數(shù)組列索引為0的元素全部替換為“0”。

替換3維數(shù)組行索引為1的前四個(gè)元素,其中三維數(shù)組為3×4×5,輸入的“新元素/子數(shù)組”為2×4,因此只能替換第0頁和第1頁中行索引為1的前四個(gè)元素。3.替換數(shù)組子集函數(shù)該函數(shù)的功能是從索引中指定的位置開始替4.?dāng)?shù)組插入函數(shù)通過該函數(shù)實(shí)現(xiàn)在索引指定位置插入元素或子數(shù)組,將數(shù)組連接到該函數(shù)時(shí),函數(shù)將自動(dòng)調(diào)整大小以顯示數(shù)組各個(gè)維度的索引。一維數(shù)組中索引值為1處插入一個(gè)元素“0”。在二維數(shù)組列索引為1處插入一列數(shù)據(jù)。原數(shù)組為3×4×5的三維數(shù)組,插入2×4的二維數(shù)組,插入位置的行索引為1。二維數(shù)組的兩行分別插入到三維數(shù)組的第0和1頁中行索引為1的位置,第3頁行索引的位置也插入了一行,由于插入的二維數(shù)組只有兩行,故第3頁插入的行的元素全部為默認(rèn)值“0”。另外插入的二維數(shù)組每行只有4個(gè)元素,而原數(shù)組每行有5個(gè)元素,因此插入的行的最后一個(gè)元素也是默認(rèn)值“0”。

4.?dāng)?shù)組插入函數(shù)通過該函數(shù)實(shí)現(xiàn)在索引指定位置插入元素或子數(shù)5.刪除數(shù)組元素函數(shù)該函數(shù)從輸入的“n維數(shù)組”中刪除元素或子數(shù)組?!皀維數(shù)組”接入是要?jiǎng)h除元素、行、列或頁的數(shù)組,可以是任意類型的n維數(shù)組?!伴L度”為確定要?jiǎng)h除元素、行、列或頁的數(shù)量或長度。刪除一維數(shù)組從索引為1開始的兩個(gè)元素。

刪除二維數(shù)組從行索引為1開始的兩行元素。

連線長度為1,未連線索引,故刪除三維數(shù)組最后一頁數(shù)據(jù),“已刪除元素的數(shù)組子集”和“已刪除部分”均為三維數(shù)組,只不過已刪除元素的數(shù)組子集比輸入數(shù)組少1頁,已刪除部分只有1頁。5.刪除數(shù)組元素函數(shù)該函數(shù)從輸入的“n維數(shù)組”中刪除元素或6.初始化數(shù)組函數(shù)通過該函數(shù)可以創(chuàng)建一個(gè)數(shù)組,其中的每個(gè)元素都被初始化為“元素”輸入端子連接的值。通過定位工具可調(diào)整函數(shù)的大小,增加輸出數(shù)組的維數(shù)。初始化創(chuàng)建含5個(gè)元素的一維數(shù)組。初始化創(chuàng)建4行5列的二維數(shù)組

初始化創(chuàng)建3頁4行5列的三維數(shù)組

6.初始化數(shù)組函數(shù)通過該函數(shù)可以創(chuàng)建一個(gè)數(shù)組,其中的每個(gè)元7.創(chuàng)建數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)連接多個(gè)數(shù)組或向N維數(shù)組添加元素的功能。由標(biāo)量元素創(chuàng)建一維數(shù)組。由一維數(shù)組禁用“連接輸入”創(chuàng)建二維數(shù)組。由一維數(shù)組啟用“連接輸入”創(chuàng)建一維數(shù)組。7.創(chuàng)建數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)連接多個(gè)數(shù)組或向N維數(shù)組添加元素的8.?dāng)?shù)組子集函數(shù)該函數(shù)用于返回輸入數(shù)組從索引位置開始包含長度個(gè)元素的一部分。獲取一維數(shù)組從索引1開始長度為2的子集獲取二維數(shù)組從行索引1開始長度為2、列索引2開始長度為2的子集8.?dāng)?shù)組子集函數(shù)該函數(shù)用于返回輸入數(shù)組從索引位置開始包含長9.?dāng)?shù)組最大值與最小值函數(shù)該函數(shù)用于返回?cái)?shù)組中的最大值和最小值,及其索引。一維數(shù)組求最大值最小值及索引二維數(shù)組求最大值最小值及索引9.?dāng)?shù)組最大值與最小值函數(shù)該函數(shù)用于返回?cái)?shù)組中的最大值和最10.重排數(shù)組維數(shù)函數(shù)該函數(shù)根據(jù)維數(shù)大小0..m-1的值,改變數(shù)組的維數(shù)。函數(shù)從左至右按行讀取內(nèi)存中數(shù)據(jù)數(shù)組的值,并顯示重新排序后的數(shù)組。一維數(shù)組重排成2行3列的二維數(shù)組二維數(shù)組重排成2頁3行3列的三維數(shù)組

10.重排數(shù)組維數(shù)函數(shù)該函數(shù)根據(jù)維數(shù)大小0..m-1的值,改11.一維數(shù)組排序函數(shù)該函數(shù)實(shí)現(xiàn)將數(shù)組輸入數(shù)組元素按照升序排列后輸出。如數(shù)組的元素是簇,該函數(shù)將按照第一個(gè)元素的比較結(jié)果對元素進(jìn)行排序。如第一個(gè)元素匹配,函數(shù)將比較第二個(gè)和其后的元素。12.搜索一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)在輸入的“一維數(shù)組”中從“開始索引”位置開始搜索“元素”并返回該“元素索引”。11.一維數(shù)組排序函數(shù)該函數(shù)實(shí)現(xiàn)將數(shù)組輸入數(shù)組元素按照升序13.拆分一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)從“索引”位置將輸入“數(shù)組”分為兩部分,返回兩個(gè)數(shù)組。14.反轉(zhuǎn)一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)反轉(zhuǎn)數(shù)組中元素的順序。13.拆分一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)從“索引”位置將輸入“數(shù)組15.一維數(shù)組移位函數(shù)

該函數(shù)將數(shù)組中的元素移動(dòng)多個(gè)位置,方向及移位位置由n指定。n>0時(shí)移位方為右移,n<0時(shí)為左移。16.一維數(shù)組插值函數(shù)該函數(shù)實(shí)現(xiàn)通過“指數(shù)索引或x”值,線性插入“數(shù)字或點(diǎn)的數(shù)組”中的y值。15.一維數(shù)組移位函數(shù)該函數(shù)將數(shù)組中的元素移17.以閾值插值一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)在表示二維非降序排列圖形的一維數(shù)組中插入點(diǎn),該函數(shù)相當(dāng)于“一維數(shù)組插值函數(shù)”的反函數(shù)。18.交織一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)交織輸入數(shù)組中的相應(yīng)元素,形成輸出數(shù)組。17.以閾值插值一維數(shù)組函數(shù)該函數(shù)實(shí)現(xiàn)在表示二維非降序排列圖19.抽取一維數(shù)組函數(shù)該函數(shù)的功能是使數(shù)組的元素分成若干輸出數(shù)組,依次輸出元素。20.二維數(shù)組轉(zhuǎn)置函數(shù)該函數(shù)的功能是重新排列二維數(shù)組的元素,使二維數(shù)組[i,j]變?yōu)橐艳D(zhuǎn)置的數(shù)組[j,i]。19.抽取一維數(shù)組函數(shù)該函數(shù)的功能是使數(shù)組的元素分成若干輸出6.3簇簇是和數(shù)組類似的一種復(fù)合數(shù)據(jù)類型,與數(shù)組不同在于數(shù)組中元素的類型都是相同的,而簇中元素的數(shù)據(jù)類型可以相同,也可以不同。簇是LabVIEW中的一個(gè)獨(dú)特的概念,它與其他編程語言中的結(jié)構(gòu)體變量是等同的。在LabVIEW中,簇可將程序框圖中的多個(gè)相關(guān)數(shù)據(jù)元素集中在一起,這樣就只需要一條連線就可以把多個(gè)節(jié)點(diǎn)連接到一起,這樣不僅減少了數(shù)據(jù)連線的數(shù)量,還可以減少子VI的連接端口的數(shù)量,同時(shí)當(dāng)前面板中顯示控件繁多而又單一的時(shí)候,利用簇來排版界面也能使程序簡潔漂亮。6.3.1簇的創(chuàng)建和數(shù)組的創(chuàng)建方法類似,創(chuàng)建一個(gè)簇首先也需要建立一個(gè)簇框架,然后將所需要的控件對象拖入框架中,即完成一個(gè)簇的創(chuàng)建。不同的是,由于構(gòu)成數(shù)組的元素必須是同類型的,因此在拖入控件確定數(shù)組的元素類型時(shí),只需拖入一個(gè)控件即可。而簇中的元素的數(shù)據(jù)類型可以相同,也可以不同,因此通過拖入控件確定簇所包含的元素時(shí),可以根據(jù)實(shí)際需要拖入不同類型的控件。6.3簇簇是和數(shù)組類似的一種復(fù)合數(shù)據(jù)類型,與數(shù)組不同在于1.簇對象的創(chuàng)建創(chuàng)建一個(gè)簇框架將數(shù)據(jù)對象或元素拖曳到簇框架中一個(gè)簇只能為輸入控件或只能為顯示控件(以拖入的第一元素為準(zhǔn),其后拖入控件將自動(dòng)轉(zhuǎn)換)。簇中的所有元素必須同時(shí)為輸入控件或者同時(shí)為顯示控件。通過簇的快捷菜單選項(xiàng)“轉(zhuǎn)換為輸入控件/轉(zhuǎn)換為顯示控件”選項(xiàng)可以實(shí)現(xiàn)輸入控件和顯示控件的轉(zhuǎn)換,轉(zhuǎn)換后其內(nèi)部的控件也將隨之改變。1.簇對象的創(chuàng)建創(chuàng)建一個(gè)簇框架將數(shù)據(jù)對象或元素拖2.簇的配置操作(1)調(diào)整框架大小及元素布局快捷菜單“自動(dòng)調(diào)整大小”中的4個(gè)選項(xiàng)可以用來調(diào)整簇框架的大小以及簇元素的布局。“無”選項(xiàng)不對簇框架做出調(diào)整;“調(diào)整為匹配大小”選項(xiàng)用于調(diào)整簇框架的大小,以適合所包含的所有元素;“水平排列”選項(xiàng)在水平方向壓縮排列所有元素;“垂直排列”選項(xiàng)則在垂直方向壓縮排列所有元素。(2)對簇中元素進(jìn)行排序簇的元素有一定的排列順序(創(chuàng)建簇時(shí)添加這些元素的順序)。簇元素的排列順序很重要,因?yàn)閷Υ氐暮芏嗖僮鞫夹枰?。在采用“水平排列”和“垂直排列”方式調(diào)整簇元素布局時(shí),也是分別按順序號(hào)從左到右和從上到下排列簇元素的;在為簇顯示控件賦值時(shí),也必須考慮簇元素的順序。作為數(shù)據(jù)源的簇?cái)?shù)據(jù)的元素類型排序,必須與簇顯示控件的元素類型排序相同。2.簇的配置操作(1)調(diào)整框架大小及元素布局快捷菜單“自利用快捷菜單“重新排序簇中對象…”選項(xiàng),打開簇元素順序編輯狀態(tài)。

溫馨提示

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

評論

0/150

提交評論