新聞中心

        EEPW首頁 > 測試測量 > 設計應用 > LABVIEW中如何正確理解EXPRESS XY GRAPH

        LABVIEW中如何正確理解EXPRESS XY GRAPH

        作者: 時間:2017-02-27 來源:網絡 收藏

          XY圖可以說Labview數據圖形顯示控件最為靈活的控件,可以替代波形圖和波形圖表的絕大部分功能,其輸入參數形式有許多變化,在下面的兩篇文章中,具體討論了XYGRAPH的多種用法。

          快速VI(EXPRESSVI)是LABVIEW提供的一套可以采用對話框快速配置的VI,非常有利于初學者使用。在快速VI中,提供了快速XYGRAPH,該VI可以實現連續的數據顯示,但是與我提及的數據緩沖區有很大區別。

          上面所提及的數據緩沖區連續顯示數據類似于LABVIEW的波形圖表,本身保持一個設置為固定長度的數據緩沖區,當超過所設長度時,新的數據進入緩沖區時,原有的數據被丟棄。這樣XY圖始終顯示的最新數據,而且長度不變,控件顯示的是示波器的效果。

          快速XY圖則不同,它有兩種不同的運行方式。

          每次調用時是否清除數據決定了EXPRESSXYGRAPH的工作方式。

          1、每次調用時清除數據,則EXPRESSXYGRAPH與一般的XYGRAPH沒有明顯的區別,輸入參數采用了兩個一維數組,這是XYGRAPH常見的工作方式。

          2、每次調用不清除數據,則EXPRESSGRAPH內部記錄不斷累積的數據,也就是說它內部保持兩個不固定長度的一維數組,用來保存X數據和Y數據。

          在每次調用不清除數據時要特別注意,與數據緩沖方式不同,EXPRESSXYGRAPH不是以移動的方式顯示數據,而是不斷增加數據,所用內存是不斷增加的。

          為了正確理解快速XYGRAPH,我們分析一下,首先把快速XYVI轉換成一般的VI,分析一下它的工作原理,通過快捷菜單,選擇打開前面板。

          下面跟蹤它的程序框圖。

          從程序框圖可以看到,在連續顯示增加數據的情況下,它利用了XY圖的局部變量,取出原來的數據,利用BUILDARRAY函數不斷增加XY圖中的數據,這樣在長時間運行后,很容易導致內存濫用,而不釋放的情況,同時由于使用了局部變量,內存的使用是加倍的。這與我們所說的數據緩沖區是完全不同的。

          另外,由于快速VI采用了動態數據,因此不斷地在進行數據類型轉換,這也是快速VI效率不高的原因之一。

          從程序框圖上也可以看出,如果使用連續顯示的方式,我們必須監測累積數據的大小,在達到一定程度時,通過RESET,清除數據,釋放所用內存。

          需要強調的是快速VI是在LABVIEW7.0后推出的,主要是簡化編程難度,但是運行效率顯然是不高的,同時也犧牲了靈活性,這也是熟悉LV的編程者一般不愿意使用快速VI的重要原因。



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 濉溪县| 高密市| 张家川| 鄢陵县| 巴东县| 济源市| 嘉荫县| 灌阳县| 乌拉特中旗| 五家渠市| 芜湖县| 沂源县| 县级市| 重庆市| 通海县| 太白县| 富平县| 伽师县| 祥云县| 重庆市| 绍兴市| 客服| 紫阳县| 余干县| 瑞昌市| 庆阳市| 陆河县| 乌拉特中旗| 泽州县| 泾川县| 诏安县| 伊宁市| 莱西市| 临沧市| 津南区| 进贤县| 凯里市| 庆城县| 军事| 赤城县| 大同县|