<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > Labview結(jié)構(gòu)的使用

          Labview結(jié)構(gòu)的使用

          作者: 時(shí)間:2017-01-05 來(lái)源:網(wǎng)絡(luò) 收藏

          其中添加順序局部變量是為了在各個(gè)幀之間傳遞數(shù)據(jù)。

          順序結(jié)構(gòu)的一個(gè)典型應(yīng)用就是計(jì)算程序運(yùn)行的時(shí)間,將通過(guò)這個(gè)例子來(lái)說(shuō)明順序結(jié)構(gòu)的用法。

          1. 新建一個(gè)VI,在前面板上放置一個(gè)數(shù)值輸入控件“給定數(shù)據(jù)”和兩個(gè)數(shù)值顯示控件“執(zhí)行次數(shù)”,“所需時(shí)間”。
          2. 在程序框圖上放置一個(gè)層疊式順序結(jié)構(gòu),右擊結(jié)構(gòu)邊框,在彈出的快捷菜單中執(zhí)行兩次“在后面添加幀”,創(chuàng)建幀1和幀2。
          3. 選取第0幀,記錄程序運(yùn)行初始時(shí)間。
          4. 右擊順序結(jié)構(gòu)框圖的邊框,在彈出的快捷菜單中執(zhí)行“添加順序局部變量”,這時(shí)在第0幀的下邊框出現(xiàn)一個(gè)黃色小方框,這就是順序局部變量,它可以在同一個(gè)順序結(jié)構(gòu)中的各幀之間傳遞數(shù)據(jù)。

            放置一個(gè)時(shí)間計(jì)數(shù)器到順序結(jié)構(gòu)內(nèi),它位于函數(shù)→編程→定時(shí)→時(shí)間計(jì)數(shù)器。返回毫秒定時(shí)器的值,用與計(jì)算占用的時(shí)間。用連線工具將它與順序局部變量相連,這時(shí)黃色小方框里會(huì)出現(xiàn)一個(gè)指向順序結(jié)構(gòu)外部的箭頭,數(shù)值可用后續(xù)幀使用,如圖:

          5. 選取第1幀,實(shí)現(xiàn)等于給定值的匹配運(yùn)算。程序如圖:
          6. 選取第2幀,同樣放置一個(gè)時(shí)間計(jì)數(shù)器函數(shù)用于返回當(dāng)前時(shí)間,將它減去順序局部變量傳遞過(guò)來(lái)的第一幀初始時(shí)間后就可以得到花費(fèi)的時(shí)間,如圖:

          運(yùn)行,結(jié)果如圖:

          注意:Labview編程的主要特點(diǎn)是數(shù)據(jù)流形式,這便于VI大量的按照并行方式運(yùn)行,優(yōu)化了程序的計(jì)算性能。而順序結(jié)構(gòu)卻趨向于中斷數(shù)據(jù)流編程,禁止程序并行操作,順序結(jié)構(gòu)還掩蓋了部分代碼,所以用戶在編程時(shí)應(yīng)盡量不用或少用順序結(jié)構(gòu)。

          在實(shí)際應(yīng)用中,經(jīng)常用人為的數(shù)據(jù)依從關(guān)系來(lái)確定程序先后執(zhí)行的順序,在前面簇的章節(jié)中,我們就提到過(guò)Error簇可以控制程序執(zhí)行的先后順序,但并不是每一個(gè)控件都有Error簇的輸入和輸出端口,這時(shí)還有另一種方法能實(shí)現(xiàn)順序執(zhí)行的功能。如圖:

          從第一個(gè)While循環(huán)結(jié)構(gòu)中的布爾開關(guān)上連了一根線到第二個(gè)While循環(huán)結(jié)構(gòu)的邊框上,可以看到,第二個(gè)While循環(huán)結(jié)構(gòu)中沒有一個(gè)對(duì)象需要這個(gè)數(shù)據(jù),只是起到順序執(zhí)行程序的目的。

          公式節(jié)點(diǎn)

          用戶可以在程序框圖的兩個(gè)位置找到公式節(jié)點(diǎn)結(jié)構(gòu),一個(gè)位于函數(shù)→Express→算術(shù)與比較→公式;另一個(gè)位于函數(shù)→編程→結(jié)構(gòu)→公式節(jié)點(diǎn)。如圖:

          第一種公式節(jié)點(diǎn)的使用比較方便,如圖:

          當(dāng)把第一種公式節(jié)點(diǎn)放置到程序框圖上時(shí),系統(tǒng)便會(huì)自動(dòng)彈出如上圖所示的對(duì)話框,它的操作比較簡(jiǎn)單,當(dāng)上述對(duì)話框右上方的方塊顯示為綠色時(shí),則表明系統(tǒng)識(shí)別輸入的函數(shù),當(dāng)出現(xiàn)非法函數(shù)時(shí),則表明系統(tǒng)不識(shí)別。如圖:

          它的使用雖然方便,但消耗的系統(tǒng)資源較多,下面我們將重點(diǎn)介紹第二種公式節(jié)點(diǎn)的使用方法。

          如圖:創(chuàng)建一個(gè)公式節(jié)點(diǎn)到程序框圖,在邊框上單擊右鍵

          選擇添加,然后即可在節(jié)點(diǎn)框中輸入變量名稱,如圖:

          公式節(jié)點(diǎn)中的函數(shù)和操作符與C語(yǔ)言中的基本相符,遇到特殊函數(shù)時(shí)查表即可。

          應(yīng)用舉例:

          例一:該例的目的事聯(lián)系使用條件表達(dá)式來(lái)執(zhí)行不同條件時(shí)的數(shù)據(jù)傳輸。

          下面的代碼表示:如果X為非負(fù)數(shù),Y等于X的平方根;如果X為負(fù)數(shù),Y等于-999。

          if(x>=0)then y=sqrt(x)

          else y=-999

          end if

          對(duì)這段代碼可以用公式節(jié)點(diǎn)來(lái)計(jì)算,需要注意大小寫,如圖所示:

          運(yùn)行結(jié)果如圖:

          例二:該例的目的是聯(lián)系使用公式節(jié)點(diǎn)來(lái)計(jì)算兩個(gè)輸出x1和x2,并在同一圖表中顯示。



          關(guān)鍵詞: Labview結(jié)

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();