把LabVIEW前面板控件當(dāng)前值通過(guò)程序設(shè)為下次打開(kāi)時(shí)的默認(rèn)值_第1頁(yè)
把LabVIEW前面板控件當(dāng)前值通過(guò)程序設(shè)為下次打開(kāi)時(shí)的默認(rèn)值_第2頁(yè)
把LabVIEW前面板控件當(dāng)前值通過(guò)程序設(shè)為下次打開(kāi)時(shí)的默認(rèn)值_第3頁(yè)
把LabVIEW前面板控件當(dāng)前值通過(guò)程序設(shè)為下次打開(kāi)時(shí)的默認(rèn)值_第4頁(yè)
把LabVIEW前面板控件當(dāng)前值通過(guò)程序設(shè)為下次打開(kāi)時(shí)的默認(rèn)值_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、如何把LabVIEW 前面板控件當(dāng)前值通過(guò)程序設(shè)為下次打開(kāi)時(shí)的默認(rèn)值?回答=在LabVIEW 7.1下,有如下方法:方法1.如果手動(dòng)操作,可如下設(shè)置前面板控件當(dāng)前值為默認(rèn)值:對(duì)控件點(diǎn)擊鼠標(biāo)右鍵>>Data Operations>>MakeCurrent Value Default 。方法2.通過(guò)通過(guò)文件或注冊(cè)表等方式先把控件當(dāng)前值存下來(lái),在下次打開(kāi)時(shí)再?gòu)奈募蜃?cè)表把值讀回來(lái)。方法3.使用VI Server技術(shù)在保存控件當(dāng)前值為默認(rèn)值,但這種方法只能處于編輯狀態(tài)的時(shí)候使用,在生成可執(zhí)行文 件后不能使用,主要需要如下操作:使用 VI Server 技術(shù),調(diào)用 Invoke

2、 Noke 設(shè) VI 的 Edit Mode 值為 TRUE,(2)調(diào)用 Invoke Noke 設(shè) VI 為 Make Current Values Default,(3)調(diào)用Invoke Noke 設(shè)Save Instrument 的Path to saved file 為需要設(shè)置默認(rèn)值的VI路徑。6.1屬性節(jié)點(diǎn)和調(diào)用(方法)節(jié)點(diǎn)屬性是VI、對(duì)象或應(yīng)用程序的特性。屬性節(jié)點(diǎn)被用于獲取及設(shè)置VI、對(duì)象或應(yīng)用程序的屬性。方法是VI、對(duì)象或應(yīng)用程序的操作。調(diào)用節(jié)點(diǎn)被用于在VI、對(duì)象或應(yīng)用程序上執(zhí)行操作(方法)6.1.1創(chuàng)建屬性節(jié)點(diǎn)和調(diào)用節(jié)點(diǎn)創(chuàng)建屬性節(jié)點(diǎn)和調(diào)用節(jié)點(diǎn)的方法很簡(jiǎn)單。在程序框圖中,鼠標(biāo)右鍵

3、單擊空白處,在彈岀的快捷菜單中選擇: 函數(shù)編程應(yīng)用程序控制將屬性節(jié)點(diǎn)或調(diào)用節(jié)點(diǎn)拖拽到程序框圖中即可,結(jié)果參見(jiàn)下圖。圖6-2放置在程序框圖上的屬性節(jié)點(diǎn)和調(diào)用節(jié)點(diǎn)此時(shí)放置在程序框圖上的屬性節(jié)點(diǎn)和調(diào)用節(jié)點(diǎn)是默認(rèn)狀態(tài)下隸屬于應(yīng)用程序(App )的節(jié)點(diǎn)。上圖中這些節(jié)點(diǎn)沒(méi)選擇屬性和方法還不能正常使用(程序運(yùn)行箭頭斷裂一一標(biāo)志編譯沒(méi)有通過(guò))。在實(shí)際的使用中,屬性節(jié)點(diǎn)和調(diào)用節(jié)點(diǎn)往往還需要配置引用(后面將介紹)和錯(cuò)誤簇的連接。實(shí)際應(yīng)用情況參見(jiàn)下 圖。ir-s-卜 J L-川噸App訂-尿性方洙圖6-3帶有引用和錯(cuò)誤簇的屬性節(jié)點(diǎn)和調(diào)用節(jié)點(diǎn)禾U用引用和錯(cuò)誤簇的連接,使得屬性節(jié)點(diǎn)和調(diào)用節(jié)點(diǎn)都具備了支持?jǐn)?shù)據(jù)流運(yùn)行機(jī)制的

4、能力。所以我們?cè)诰幊虝r(shí)應(yīng)該 盡量利用這點(diǎn),滿足圖形化語(yǔ)言數(shù)據(jù)流編程和運(yùn)行的要求。還需要注意的是:對(duì)于不同類別的使用( App、VI或控件等),其引用是不同的。DAQmx 、事實(shí)上,這兩個(gè)節(jié)點(diǎn)都屬于公用節(jié)點(diǎn)函數(shù)(默認(rèn)狀態(tài)App )。如果選擇類別設(shè)置可以用于多種地方,比如VISA等等。若要選擇其它類別,可以用鼠標(biāo)右擊屬性節(jié)點(diǎn),在彈岀的對(duì)話框中可查看到: 選擇類(可選擇多個(gè)類別)VI服務(wù)器應(yīng)用程序所以在上圖中可以看到 App的標(biāo)識(shí),但具體屬性還未確定。參見(jiàn)下圖。I*ta慈>VISA*Aelawl*ftMl卜KT碗空IMt図*manI*V 1I i缺ICX事XI*IBfralaSatkil圖6

5、4為屬性節(jié)點(diǎn)選擇其它的類別同理,用鼠標(biāo)右擊調(diào)用節(jié)點(diǎn),在彈出的對(duì)話框中可查看到:選擇類VI服務(wù)器應(yīng)用程序所以在上圖中可以看到 App的標(biāo)識(shí),但具體方法還未確定。參見(jiàn)下圖1這抑臭1WSAII卜僅劃nr卜 KtIMIXJ氏川桓用cug*ftIVT lSrst4» CoDifiic1環(huán)¥耳 jV vii ftbl*圖6-5為調(diào)用節(jié)點(diǎn)選擇其它的類別下面簡(jiǎn)要介紹不同類別的屬性節(jié)點(diǎn)和方法節(jié)點(diǎn)。6.1.2應(yīng)用程序(App )的屬性和方法應(yīng)用程序?qū)傩员挥糜讷@取及設(shè)置應(yīng)用程序的一些特性。當(dāng)前我們可以直接選擇應(yīng)用程序的屬性,因?yàn)楫?dāng)前的屬性類別就是應(yīng)用程序。鼠標(biāo)右鍵單擊屬性節(jié)點(diǎn),在所彈岀的 對(duì)話框

6、中選擇:選擇屬性(即可選擇多個(gè)應(yīng)用程序的屬性)操作系統(tǒng)(下圖所顯示的樣式)版本號(hào)其實(shí)可以有多種選擇,這里只是演示屬性節(jié)點(diǎn)選擇的方法,參見(jiàn)下圖。廉性節(jié)盍?xí)鴦?dòng)世刪If殺1斷點(diǎn)卜卜卜1轉(zhuǎn)割為寫人1也瞬霉fTfil卜H JU*卜生或號(hào)廊BSES卜頊目i£ 拇 35應(yīng)閤曜序k*1苦飩式*NI蚩童k圖6 6應(yīng)用程序(App )的多種屬性當(dāng)前我們還可以直接選擇應(yīng)用程序的方法,因?yàn)楫?dāng)前的類別就是應(yīng)用程序。鼠標(biāo)右鍵單擊調(diào)用節(jié)點(diǎn),在所彈岀的對(duì) 話框中選擇:選擇方法置于最前其實(shí)可以有多種選擇,這里只是演示調(diào)用節(jié)點(diǎn)選擇的方法,參見(jiàn)下圖。童于ntn帚勤迎卿!I亍UfSS1M3S*kK1E忑甲用序揆料遑IT S

7、M打評(píng)汙服*1啟本莊簾呎斥遒毗t<rtueE瞪近刖打稈fiswtwSBffiS n±«wi9Q wwLrtnnjrn審戶竝 勒隣麗tfi j 于肅加國(guó)L*b/TEt 璇LV W“安全XTontrol圖6 7應(yīng)用程序(App )的多種方法節(jié)點(diǎn)如此眾多的應(yīng)用程序?qū)傩院头椒?,我們?cè)趯?shí)際應(yīng)用中使用過(guò)那些呢?實(shí)在的講,我本人幾乎沒(méi)有使用過(guò)這些節(jié)點(diǎn)。 主要是沒(méi)有理解這些屬性和方法的內(nèi)涵和用途。其實(shí),圖形化語(yǔ)言的學(xué)習(xí)主要靠閱讀他人的例程,但是真的我們很難看到使用這些節(jié)點(diǎn)的程序例程。如果期待對(duì)此 有更多的了解,請(qǐng)參考1 p203 o當(dāng)然,如果你真的理解這些節(jié)點(diǎn)的應(yīng)用,會(huì)對(duì)程序設(shè)計(jì)提供

8、很大的幫助。6.1.3 VI 的屬性和方法或許在我們的程序設(shè)計(jì)中,使用更多的是VI的屬性和方法。獲得 VI的屬性和方法需要首先確定類別。鼠標(biāo)右鍵單擊屬性節(jié)點(diǎn),在彈岀的快捷菜單中選擇:選擇類別VI服務(wù)器VIVI,此時(shí)我們可以看到原來(lái)屬性節(jié)點(diǎn)中的App已經(jīng)被VI所代替,參見(jiàn)下圖。圖6 8 VI的屬性節(jié)點(diǎn)(還沒(méi)有確定屬性)這是還沒(méi)有確定屬性的 VI屬性節(jié)點(diǎn)。選擇屬性的方法是:鼠標(biāo)右鍵點(diǎn)擊該節(jié)點(diǎn)在彈岀的快捷菜單中選擇: 選擇屬性性包腔”MAft蟻知至卜就可以看到VI所有屬性的內(nèi)容,參見(jiàn)下圖。星匡匯朗苛口 FJES耳畫旁孑H時(shí)襄弄J*S5E 璉削&ft®# 萌爾前口 帛頁(yè)在rrejt中

9、嗝予羅側(cè) 漏干和墀+WmilSCHfF宜動(dòng)ii詛At理卅琢t疵 vl»JT£ V!其聲圖6 9 VI屬性的全部?jī)?nèi)容VI方法的全部?jī)?nèi)容,參見(jiàn)下圖VI的方法選擇與屬性的選擇相類似,這里就不重復(fù)了?,F(xiàn)在只給岀煩節(jié)百峪的a 建ttF3英9HC至1WMK亞扛需越逸申的左偉 題珂I門醫(yī) Sfvi賢簾也伍見(jiàn)總崢fie#sma 也m 梢it卷 曲肚輝訂歷戈 鼻畀酒衛(wèi)狂電蛙敷虞氏吐口樂(lè)僅理弓1.用兇雀fPM 勾4再堆靠 出£能西此 efiviUffviKUfQS 書止VI<iSM?圖6 10 VI方法的全部?jī)?nèi)容例6 1最實(shí)用的方法之一:默認(rèn)值:全部控件重新初始化為默認(rèn)值如果我

10、們的程序框圖中有許多數(shù)值控件或圖形控件,我們希望在程序運(yùn)行前將這些控件值全部初始化為默認(rèn)值。我 們可以使用VI方法中:默認(rèn)值:全部控件重新初始化為默認(rèn)值的方法。坦率的講,我此前是一個(gè)控件一個(gè)控件的進(jìn)行初始化(在初始化狀態(tài)下)。在看到天下會(huì)論壇中12 ExpiredCLAD 的點(diǎn)評(píng)后,才發(fā)現(xiàn)這個(gè)方法更簡(jiǎn)單有效。參見(jiàn)下圖。* VIBtFtuli VarRtinii W1劇認(rèn)值全部援件更新祝鴨化為默廂圖6 - 11 VI方法,默認(rèn)值:全部控件重新初始化為默認(rèn)值例6 2如何設(shè)定控件的默認(rèn)值上面談到了控件的默認(rèn)值,現(xiàn)在談?wù)勅绾卧O(shè)定控件的默認(rèn)值。具體操作如下:在前面板或程序框圖上選擇工具欄中 選擇:編輯當(dāng)

11、前值設(shè)置為默認(rèn)值(M)然后可千萬(wàn)別忘了保存這個(gè)VI。保存后當(dāng)再次打開(kāi)這個(gè) VI時(shí),控件的當(dāng)前值值即為默認(rèn)值。6.1.4對(duì)象的屬性和方法我們認(rèn)識(shí)了應(yīng)用程序的屬性和方法,也認(rèn)識(shí)了VI的屬性和方法。現(xiàn)在來(lái)介紹對(duì)象的屬性和方法。所謂對(duì)象這里所指的是控件,關(guān)于 LabVIEW 對(duì)象更深入的探索參見(jiàn)1 p168 。如果在程序框圖中已經(jīng)放置的基本屬性節(jié)點(diǎn),創(chuàng)建控件的屬性就很容易。鼠標(biāo)右鍵單擊屬性節(jié)點(diǎn)選擇: 連接至窗格選擇具體控件名即可,參見(jiàn)下圖。AUS帀嗓櫓跨卜吋蔚占用戸界煩si建月袁停啟-k刮連k»洛略節(jié)點(diǎn)曲謝粘圖6 - 12關(guān)聯(lián)控件的屬性宙皓卜控件的屬性還可以用鼠標(biāo)右鍵直接點(diǎn)擊控件,在彈岀的快

12、捷菜單中選擇: 創(chuàng)建屬性節(jié)點(diǎn)這兩種方法創(chuàng)建的控件屬性參見(jiàn)下圖所示。數(shù)值圖6 - 13控件屬性(沒(méi)有確定的屬性,但已經(jīng)包括數(shù)據(jù)類型)具體屬性選擇,鼠標(biāo)右鍵單擊屬性節(jié)點(diǎn)在彈岀的快捷菜單中選擇: 選擇屬性即可以查看到數(shù)值控件的所有屬性,參見(jiàn)下圖。AU醫(yī)于悝殍桓腔*?邊界主童蝕邊界 啟區(qū)馳界養(yǎng)T込能時(shí)競(jìng)垃 標(biāo)雲(yún) 年貶 iH用節(jié)直口 WX申 按議譌 荒用 底那夷冕J 可見(jiàn)五件引瑁筆點(diǎn)) 護(hù)展怯啟默認(rèn)值 閃爍是占為目妊爻葺世它 麻性節(jié)直【說(shuō)附陡自走火總型自葡更訓(xùn) 提示廝同 iF5 r.住于觀燉進(jìn)中鍵嘟疋 截ID 值 佰濮號(hào)) 自璉畑型 Dataickct圖6 - 14數(shù)值控件常用屬性(截圖不全)對(duì)象的方法

13、創(chuàng)建與屬性節(jié)點(diǎn)相同,這里僅給出數(shù)值控件的一些方法,參見(jiàn)下圖說(shuō)嗨和用曲聊序uni綏ar ,*曲飾卜看播>frJP*店竝式*期1覽»應(yīng)取就過(guò)in ji is斟t不帝簾世)® 卜開(kāi)檢帝矚矗性圖6 - 15數(shù)值控件的全部方法滾用下蘆.術(shù)站關(guān)于對(duì)象的屬性節(jié)點(diǎn)和方法節(jié)點(diǎn)就基本介紹這些。下面我們針對(duì)對(duì)象的屬性節(jié)點(diǎn)的一些特性做更深入的探索。6.1.5對(duì)象的屬性的一些深入探索 獲得對(duì)象的值我們知道,數(shù)值控件被用來(lái)紀(jì)錄、存放數(shù)據(jù),通過(guò)創(chuàng)建局部變量可以獲得數(shù)值控件中的數(shù)據(jù)。現(xiàn)在,通過(guò)數(shù)值控件 的屬性:值;也可以獲得數(shù)值控件的數(shù)據(jù)。也就是說(shuō):我們有兩種方法:局部變量、屬性節(jié)點(diǎn)都可以獲得數(shù)值控

14、件的數(shù)據(jù)。它們之間有區(qū)別嗎?首先,我們要說(shuō)明的是:無(wú)論局部變量的創(chuàng)建還是屬性節(jié)點(diǎn)的創(chuàng)建,都必須通過(guò)特定的控件(關(guān)聯(lián)到具體對(duì)象)來(lái)實(shí)現(xiàn), 參見(jiàn)下圖。數(shù)值敷值卜片數(shù)值圖6 - 16數(shù)值控件、數(shù)值控件的屬性和局部變量下面在比較它們之間的其它特點(diǎn),參見(jiàn)表一局部變量1)內(nèi)存局部變量實(shí)質(zhì)就是對(duì)輸入控件、顯示 控件”中數(shù)據(jù)進(jìn)行復(fù)制(copy),所以要 占用內(nèi)存。當(dāng)為數(shù)組建立多個(gè)局部變量時(shí),會(huì)占 用大量的內(nèi)存。而對(duì)局部變量的操作行為是:讀數(shù)據(jù)(Read或?qū)憯?shù)據(jù)(Write)屬性節(jié)點(diǎn)1)內(nèi)存屬性節(jié)點(diǎn)實(shí)質(zhì)上是對(duì)輸入控件、顯示 控件”中數(shù)據(jù)進(jìn)行查詢或置入,不會(huì)占用 內(nèi)存。因?yàn)樵诓考?chuàng)建時(shí)已經(jīng)為此參數(shù)分配 好了內(nèi)存。

15、而對(duì)屬性節(jié)點(diǎn)的操作行為是:查詢(Query)數(shù)據(jù)或置入(Set)數(shù)據(jù)。2)執(zhí)行速度由于局部變量是對(duì)內(nèi)存進(jìn)行直接讀、 寫操作,所以它的執(zhí)行速度很快(約快 1000倍以上)。2)執(zhí)行速度相對(duì)于局部變量而言,屬性節(jié)點(diǎn)的執(zhí) 行效率是很低的,或者說(shuō)更占用 CPU的 資源。rwci)鮒& ««of) aB ct)文件隙昨© H(DTA a =1劃商不両兩 劇隔I刨1蘭八應(yīng)12pt E3)數(shù)據(jù)競(jìng)爭(zhēng)局部變量容易導(dǎo)致數(shù)據(jù)競(jìng)爭(zhēng),很多 LabVIEW的書籍都介紹了這方面的例 子。原因是局部變量破壞了數(shù)據(jù)流的工 作方式。這也正是LabVIEW及許多書籍中強(qiáng)調(diào)的 慎用”本地變量的原

16、因3)數(shù)據(jù)競(jìng)爭(zhēng)屬性節(jié)點(diǎn)可以通過(guò)錯(cuò)誤簇”來(lái)引導(dǎo)數(shù) 據(jù)流,所以避免了發(fā)生數(shù)據(jù)競(jìng)爭(zhēng)現(xiàn)象。 注意,當(dāng)屬性節(jié)點(diǎn)的錯(cuò)誤簇沒(méi)有使用(與其它vi相互連接),同樣可能會(huì)導(dǎo) 致數(shù)據(jù)競(jìng)爭(zhēng)現(xiàn)象發(fā)生。通過(guò)上面的比較,現(xiàn)在我們能夠理解控件類似一個(gè)容器的比喻。使用屬性節(jié)點(diǎn)要不斷的打開(kāi)這個(gè)容器并為它賦值, 所耗費(fèi)的時(shí)間較多。而使用局部變量則是對(duì)內(nèi)存中數(shù)據(jù)的直接讀或?qū)?,所以?zhí)行速度很快完成。關(guān)于對(duì)象執(zhí)行速度的另一種說(shuō)法是:執(zhí)行線程。關(guān)于執(zhí)行線程LabVIEW的執(zhí)行系統(tǒng)可參見(jiàn)下圖EMC圖6 17 LabVIEW執(zhí)行系統(tǒng)示意圖LabVIEW的執(zhí)行系統(tǒng)就是對(duì)已編譯后的VI的程序代碼,按運(yùn)行處理需要進(jìn)行作業(yè)區(qū)的管理和調(diào)度分配。LabV

17、IEW 2010 共設(shè)有7個(gè)執(zhí)行系統(tǒng),分別是:-用戶界面4 標(biāo)準(zhǔn)* 儀器I/O* 數(shù)據(jù)采集* 其它1* 其它2* 與調(diào)用方相同有資料將定時(shí)循環(huán)也列為一個(gè)執(zhí)行系統(tǒng)。對(duì)于每個(gè)VI我們都可以通過(guò) VI的屬性設(shè)置,將不同的 VI分配到不同的執(zhí)行系統(tǒng)中去執(zhí)行。具體操作是: 文件VI屬性執(zhí)行設(shè)置首選執(zhí)行系統(tǒng),參見(jiàn)下圖。圖6 - 18 VI的執(zhí)行系統(tǒng)選擇通常所創(chuàng)建的VI其默認(rèn)執(zhí)行系統(tǒng)是:與調(diào)用方相同?,F(xiàn)在我們將做試驗(yàn)的屬性和變量.vi”的執(zhí)行系統(tǒng)選擇為:用戶界面此時(shí)屬性節(jié)點(diǎn)的執(zhí)行時(shí)間與表 1對(duì)比,其執(zhí)行時(shí)間僅僅減少了約 1 % (而其它執(zhí)行系統(tǒng)的執(zhí)行時(shí)間都與表1相同,并沒(méi)有任何改善)??梢?jiàn)執(zhí)行系統(tǒng)的設(shè)置的改變并沒(méi)有顯著的解決問(wèn)題。至少我們沒(méi)有發(fā)現(xiàn)修改線程所帶來(lái)的更大影響??戳硪豁?xiàng)試驗(yàn),對(duì)屬性節(jié)點(diǎn)寫入常數(shù),測(cè)試結(jié)果

溫馨提示

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

評(píng)論

0/150

提交評(píng)論