LabVIEW中的波形圖(Waveform Chart)

波形圖控件的三種數據更新模式分別是帶狀記錄紙模式(strip chart),示波器圖模式(scope chart)以及掃描圖模式(sweep chart),如下圖所示。數據更新模式可以通過(guò)在波形圖控件上面點(diǎn)擊鼠標右鍵后在彈出菜單中的Advanced>>Update Mode>>子菜單來(lái)加以改變。如果在VI程序運行期間想要修改波形圖控件的數據更新模式,由于運行時(shí)的控件右鍵菜單與編程時(shí)的不同,就在該控件的郵件菜單中的Update Mode中選擇即可。
本文引用地址:http://dyxdggzs.com/article/201612/334091.htm
帶狀記錄紙模式的顯示和真正的帶狀記錄設備的顯示相像。示波器圖模式則和真正示波器的曲線(xiàn)顯示相像,該模式中當曲線(xiàn)到達波形圖的右邊界之后,整個(gè)曲線(xiàn)就會(huì )清除并從波形圖的左邊界重新開(kāi)始顯示。掃描圖模式與示波器圖模式十分相似,不過(guò)掃描圖模式中曲線(xiàn)到達右邊界后并不會(huì )有清除動(dòng)作,而是有一個(gè)豎線(xiàn)出現在波形圖中,該豎線(xiàn)標識著(zhù)新數據的開(kāi)始,并在新數據不停添加的時(shí)候,該豎線(xiàn)會(huì )慢慢移動(dòng)。這些區別在看到實(shí)際波形圖控件在不同刷新模式先運行之后就很容易區別開(kāi)來(lái)的。由于示波器圖模式與掃描圖模式在追溯以往曲線(xiàn)上比帶狀記錄紙模式的開(kāi)銷(xiāo)要少,所以這兩種數據更新模式要比帶狀記錄紙模式很明顯的快得多。
注意:波形圖中一直都是設定為X值代表了等間隔的點(diǎn)。在LabVIEW的波形圖中,你可以只提供Y值而不用管X值。每次波形圖中添加一個(gè)新的Y值之后,就會(huì )自動(dòng)為X值加一。對于X值是任意值的情況就需要使用后面介紹的曲線(xiàn)圖而不要使用波形圖了。
波形圖控件可以接收的數據類(lèi)型包括了數值、數組以及波形數據類(lèi)型。在波形數據類(lèi)型中包含了時(shí)間信息(比如第一個(gè)數據點(diǎn)的時(shí)間標志以及每點(diǎn)之間的時(shí)間間隔)。波形圖控件將使用這些時(shí)間信息來(lái)顯示數據,這也就意味著(zhù)這時(shí)初始的X值以及每點(diǎn)之間的間隔在每次有新數據寫(xiě)入到波形圖時(shí)是不同的。
單曲線(xiàn)波形圖
使用波形圖控件的一個(gè)最簡(jiǎn)單的方法就是將一個(gè)數值在VI程序框圖中連接到波形圖控件的輸入端點(diǎn),如下圖所示。在每循環(huán)一次就會(huì )有一個(gè)點(diǎn)被添加到波形圖中所顯示的波形中。

也可以通過(guò)一次添加多個(gè)點(diǎn)來(lái)更新單曲線(xiàn)的波形圖,如下圖所示,傳送一個(gè)數組的數值給波形圖。

多曲線(xiàn)波形圖的連線(xiàn)
波形圖控件也可以用來(lái)顯示多條曲線(xiàn)。不過(guò),由于比不能從多個(gè)數據源連線(xiàn)到單一的波形圖控件輸入端點(diǎn),所以需要先使用捆綁函數(Bundle函數,可以在 Programming>>Cluster & Variant子面板找到)將多個(gè)數據捆到一起。如下圖所示,該函數“捆綁”或聚合了三個(gè)不同的采集溫度的VI的輸出到了一個(gè)簇中,以便這些數據能夠被波形圖控件說(shuō)顯示。大家可以注意一下波形圖控件的端點(diǎn)連接到捆綁函數的輸出之后的變化。如果需要添加多個(gè)曲線(xiàn),只要增加捆綁函數的輸入端點(diǎn)的個(gè)數即可。

在連接多曲線(xiàn)的波形圖的時(shí)候,要確保使用的是Bundle函數,而不是Build Array函數。LabVIEW會(huì )將數組中的數值看成同屬于一條曲線(xiàn),把簇中的數值看成是屬于多條曲線(xiàn)。如果使用了創(chuàng )建數組函數,你得到的將是每次循環(huán)中有三個(gè)新數據點(diǎn)的單條曲線(xiàn)。這種情況在從硬件讀取波形時(shí)是很有用的,因為這時(shí)你讀取的是單個(gè)通道的多個(gè)采樣點(diǎn)的數據。
單曲線(xiàn)與多曲線(xiàn)數據類(lèi)型對比:需要記住的技巧
曲線(xiàn)圖與波形圖是可復用的。它們可以接受幾種不同類(lèi)型的數據,并可以用來(lái)顯示單條或多條曲線(xiàn)。不過(guò)有些時(shí)候,很難記清楚用于單曲線(xiàn)、多曲線(xiàn)的數據類(lèi)型。另外,曲線(xiàn)圖與波形圖也有多種類(lèi)型,這使這一切變得更復雜了。
不過(guò)有一個(gè)簡(jiǎn)單快捷的方法可以找出用于某種曲線(xiàn)圖或波形圖的數據類(lèi)型。這個(gè)方法就是在程序框圖中,將鼠標光標移動(dòng)到曲線(xiàn)圖或波形圖輸入端點(diǎn)上方,這時(shí)在Context Help窗口中就可以看到曲線(xiàn)數據類(lèi)型的詳細描述了。這個(gè)Context Help窗口可以通過(guò)菜單Help>>Show Context Help或者是使用快捷鍵

顯示數值?
與其他的數值顯示器控件類(lèi)似,波形圖也有顯示或隱藏數值顯示的選項(在曲線(xiàn)圖上點(diǎn)擊鼠標右鍵,在右鍵菜單的Visible Items>>Option中可以設置)。這個(gè)數值顯示部分就會(huì )顯示波形圖中顯示的最后一個(gè)數據的值。
X軸滾動(dòng)欄
波形圖也有一個(gè)X軸滾動(dòng)欄,可以通過(guò)右鍵菜單Visible Items>>中的子菜單來(lái)設置其是否可見(jiàn)。你可以通過(guò)拖動(dòng)這個(gè)滾動(dòng)欄查看波形圖中已經(jīng)不在顯示屏中的舊數據。
清空波形圖
有些時(shí)候,我們必須從波形圖中刪除舊數據??梢酝ㄟ^(guò)右鍵菜單中的Da
如果需要在程序中通過(guò)編程來(lái)自動(dòng)清除波形圖中的數據,你就需要向波形圖控件的History Da

覆蓋模式以及堆疊模式的波形圖
如果你使用的是多曲線(xiàn)的曲線(xiàn)圖控件,你可以選擇將所有曲線(xiàn)共用同一個(gè)Y軸顯示,這種顯示模式就稱(chēng)為覆蓋模式;或者是讓每一條曲線(xiàn)有一個(gè)獨立的Y軸,這種顯示模式就稱(chēng)為堆疊模式。這可以在波形圖的右鍵菜單中選擇顯示類(lèi)型來(lái)完成設定。下圖顯示了這兩種顯示模式的區別:

多標度Y軸
如果一個(gè)波形圖中有多條曲線(xiàn),并且在覆蓋模式下進(jìn)行顯示,有些時(shí)候就需要為每條曲線(xiàn)設定不同的Y軸標度。例如,一條曲線(xiàn)的Y值范圍是從-1到+1,另一條曲線(xiàn)的Y值范圍是-100到+100,這是使用覆蓋模式并以同一個(gè)標度的Y軸進(jìn)行顯示就可能看不清Y值范圍較小的那條曲線(xiàn),這時(shí)使用多標度的Y軸就顯得必要了。使用多標度Y軸的具體步驟如下,首先在Y軸點(diǎn)擊鼠標右鍵在彈出的右鍵菜單中選擇Duplicate Scale選項;之后,在這個(gè)新標度上點(diǎn)擊鼠標右鍵,在右鍵菜單中選擇Swap Sides將這個(gè)復制的標度移動(dòng)到曲線(xiàn)圖的另一側。具體哪個(gè)坐標對應哪條曲線(xiàn)可以在波形圖的屬性對話(huà)框里修改。如果需要刪除一個(gè)Y軸標度,就在該標度上點(diǎn)擊鼠標右鍵并選擇Delete Scale選項即可。下圖是一個(gè)使用了兩個(gè)Y軸標度的波形圖的示例:

在波形圖中不能夠復制多個(gè)X軸標度。因為波形圖控件只能有一個(gè)X軸標度。如果你試著(zhù)在X軸標度上點(diǎn)擊鼠標右鍵,就發(fā)現在彈出的右鍵菜單中Duplicate Scale選項是灰色不可用的。(在曲線(xiàn)圖控件中則是可以使用多X軸標度的)
通過(guò)在曲線(xiàn)圖或波形圖上點(diǎn)擊鼠標右鍵,在右鍵菜單中選擇 Advanced>>Reset Scale Layout就可以復位曲線(xiàn)圖或波形圖的標度。執行這個(gè)操作之后,Y軸標度就會(huì )返回到曲線(xiàn)顯示區域的左側,X軸標度就會(huì )返回到曲線(xiàn)顯示區域的下端,并復位標度數值。
波形圖歷史長(cháng)度
默認情況下,波形圖控件可以存儲1024個(gè)數據點(diǎn)。如果你想讓它存儲更多或更少的數據,可以在右鍵菜單的 Chart History Lenggth...選項來(lái)設定一個(gè)新的數據點(diǎn)數值,該值的取值范圍是10到2,147,483,647(不過(guò)實(shí)際的限制可能受你的計算機的內存大小的限制而會(huì )小些)。更改了這個(gè)緩存的大小并不會(huì )改變在波形圖上一次顯示的數據的個(gè)數,只會(huì )改變你通過(guò)滾動(dòng)欄可以回溯的數據的總數。
評論