當(dāng)前位置:首頁 > 測試測量 > 測試測量
[導(dǎo)讀]  在LabVIEW中我們分析或采集的數(shù)據(jù)通常都是時間的函數(shù)。例如,我們可能希望知道在一天中溫度隨著時間的變化,或者是變化的波形在時間軸上繪出之后的樣子。  LabVIEW有一些特殊的數(shù)據(jù)類型可以用來幫助一般的用戶

  在LabVIEW中我們分析或采集的數(shù)據(jù)通常都是時間的函數(shù)。例如,我們可能希望知道在一天中溫度隨著時間的變化,或者是變化的波形在時間軸上繪出之后的樣子。

  LabVIEW有一些特殊的數(shù)據(jù)類型可以用來幫助一般的用戶來以曲線的形式分析或展示這些數(shù)據(jù)。這些特殊的數(shù)據(jù)類型就是時標(biāo)(Time Stamp)、波形(Waveform)和動態(tài)數(shù)據(jù)(dynamic data)。時標(biāo)數(shù)據(jù)用來存儲波形中的時間信息而多個波形可以保存在動態(tài)數(shù)據(jù)中。由于時標(biāo)、波形以及動態(tài)數(shù)據(jù)的自然依賴關(guān)系,我們就在本文中對它們一起介紹。

時標(biāo)(Time Stamp)

  時標(biāo)這個數(shù)據(jù)類型用來存儲絕對日期/時間值,比如數(shù)據(jù)采集的時間。它的精度非常高,不論是對于計(jì)數(shù)秒的整數(shù)部分還是分?jǐn)?shù)部分都有19位的精度。

  雖然我們可通過將一個數(shù)值控件的顯示方式設(shè)定為日期/時間來存儲與顯示時標(biāo)值,不過數(shù)值控件保存的是相對值,而時標(biāo)控件保存的則是絕對值。

  在LabVIEW中,我們可以使用Get Date/Time In Seconds函數(shù)來獲取當(dāng)前的時標(biāo)值。一個時標(biāo)控件如下圖所示:

  時標(biāo)是一個高精度保存絕對時間的手段,而時標(biāo)控件則可以用來查看與修改時標(biāo)的值。時標(biāo)控件可以在Controls控件面板的Modern>>Numeric子面板中找到。

  通過點(diǎn)擊你要修改的時標(biāo)控件左側(cè)的上下箭頭就可以對該時標(biāo)的值進(jìn)行增減操作?;蛘呤峭ㄟ^鍵盤直接鍵入數(shù)值來取代時標(biāo)的當(dāng)前值。也可以在時標(biāo)控件上點(diǎn)擊鼠標(biāo)右鍵,并在右鍵菜單中選擇Data Operations>>Set Time to Now將時標(biāo)的值設(shè)置為當(dāng)前的日期與時間。

日期/時間瀏覽按鈕

  不過我們還有一個更有趣的修改時標(biāo)的方法,那就是點(diǎn)擊時標(biāo)控件右側(cè)的日期/時間瀏覽按鈕。在點(diǎn)擊該按鈕之后,就會彈出下面的日期與時間設(shè)置對話框。從這個對話框,我們能夠輕松的用這個日歷式的界面來修改時標(biāo)的日期與時間值。

  這個對話框也可以在時標(biāo)控件上點(diǎn)擊鼠標(biāo)右鍵,在右鍵菜單中Data Operations>>Set Time and Data菜單項(xiàng)打開這個對話框。對于沒有日期/時間瀏覽按鈕的時標(biāo)常量以及指示器類型的控件,使用這個右鍵菜單是最合適的方式。

相對時間計(jì)算

  有些時候我們也需要時間計(jì)算。比如下面程序框圖中我們使用相減函數(shù)來計(jì)算兩個時標(biāo)之間的相對時間。

  通過這種方式,我們可以用來對某些程序代碼的執(zhí)行時間進(jìn)行測試,比如在一個VI開始之前獲取一個時標(biāo)值,在VI結(jié)束之后獲取一個時標(biāo)值,將這兩個值相減就可以知道這個VI的具體執(zhí)行時間是多少了。

  另外我們也可以對時標(biāo)數(shù)據(jù)進(jìn)行加操作,將相對時間加上舊的時標(biāo)值得到一個新的時標(biāo)值,這個程序就不再演示了。

時標(biāo)與數(shù)值之間的轉(zhuǎn)換

  如前面的兩個時標(biāo)相減的例子,我們可以發(fā)現(xiàn)時標(biāo)與數(shù)值兩種數(shù)據(jù)類型是密切相關(guān)的。在有些情況下,我們需要在這兩個數(shù)據(jù)類型之間進(jìn)行轉(zhuǎn)換。加、減這兩個函數(shù)在對時標(biāo)數(shù)據(jù)操作時,函數(shù)不是匹配為時標(biāo)類型(由于這兩個函數(shù)是可復(fù)用的)就是將時標(biāo)強(qiáng)制轉(zhuǎn)換為雙精度浮點(diǎn)數(shù)。有些時候,我們也想要直接執(zhí)行這個轉(zhuǎn)換操作。我們可以在函數(shù)VI面板的Programming>>Numeric>>Conversion子面板上找到To Double Precision Float函數(shù)來將時標(biāo)數(shù)據(jù)轉(zhuǎn)換為雙精度浮點(diǎn)數(shù)?;蛟赑rogramming>>Numeric>>Conversion子面板上找到To Time Stamp函數(shù)將一個數(shù)值轉(zhuǎn)換為時標(biāo)數(shù)據(jù)(這個函數(shù)也可以在Programming>>Timing子面板上面找到)。

  這兩個函數(shù)如下圖所示:

  這里的To Double Precision Float函數(shù)可以將任何數(shù)值型數(shù)據(jù)轉(zhuǎn)換為雙精度浮點(diǎn)數(shù)。

波形(Waveforms)

  在許多工程以及科技應(yīng)用中,需要處理的數(shù)據(jù)都是一組隨著時間變化的數(shù)值。例如,音頻信號就是隨著時間變化的壓力值,心電圖則是隨著時間變化的電壓值,滴落的水滴的表面就是隨時間變化的其xyz坐標(biāo)的值,計(jì)算機(jī)常用的數(shù)字信號則是隨時間變化三維二進(jìn)制值。LabVIEW中提供了波形數(shù)據(jù)這個數(shù)據(jù)類型來組織與處理這些時變信號。一個波形數(shù)據(jù)不但可以讓你來存儲數(shù)據(jù)的值,還可以用來存儲第一個數(shù)據(jù)獲取時的時標(biāo)值、每個數(shù)據(jù)點(diǎn)之間的間隔時間以及數(shù)據(jù)的備注信息。它與LabVIEW中其他的數(shù)據(jù)類型類似,可以進(jìn)行加減運(yùn)算操作,以及其他的直接對波形進(jìn)行的操作。你可以在I/O控件面板選擇相應(yīng)控件來在VI前面板上創(chuàng)建Wavwform或Digital Waveform類型的控件。

  上圖中就是一個波形控件在前面板以及框圖中的表現(xiàn)形式。下圖中的則是數(shù)字波形控件在前面板以及框圖中的表現(xiàn)形式。我們可以發(fā)現(xiàn)在程序框圖中,波形控件的圖標(biāo)為棕/橙色而數(shù)值波形控件的則為綠色。

這兩個圖標(biāo)里面,模擬波形是一個類似正弦波的波形,數(shù)值波形則是一個方波,再加上它們的顏色不同,區(qū)分它們還是很容易的。

  通過仔細(xì)檢查波形數(shù)據(jù)類型,我們可以發(fā)現(xiàn)它其實(shí)就是一個特殊的簇類型的數(shù)據(jù)。在這個簇中包含了四個元素:Y、t0、dt以及Attributes(屬性),對其詳細(xì)講解如下:

Y:這個元素是隨著時間變化數(shù)據(jù)。對于一個模擬波形來說,這是一個元素為數(shù)值數(shù)據(jù)點(diǎn)的一維的數(shù)組,這個數(shù)據(jù)點(diǎn)可以是一個單點(diǎn)也可以是另外一個波形,根據(jù)所執(zhí)行的操作的不同而不同。模擬信號類型的一維數(shù)組的元素?cái)?shù)據(jù)類型為雙精度浮點(diǎn)數(shù)。離散信號則被稱為"數(shù)字"信號,離散信號一般就是只有兩個狀態(tài)的信號,比如TRUE或FALSE、0或5V、開或關(guān)等等。對于離散信號,我們需要使用的是數(shù)字波形。對于數(shù)字波形來說。Y元素是數(shù)字?jǐn)?shù)據(jù),你可以將其想象為一個二進(jìn)制值的表格,列為數(shù)字線,行為變話的值。t0:這個元素是一個時標(biāo)值,用來標(biāo)識Y數(shù)組中第一個點(diǎn)采集時的時間(相對于當(dāng)期的系統(tǒng)時間)。它也被稱為初始時間或初始時標(biāo)。dt:Δt,念作"得爾它T"(哈哈,小幽默一下)。用來表示Y數(shù)組中兩個相鄰數(shù)據(jù)點(diǎn)之間的間隔時間的數(shù)值。Attribute:默認(rèn)情況下,這個元素是隱藏的,只有在波形上點(diǎn)擊鼠標(biāo)右鍵并在右鍵菜單中選擇Visible Items>>Attribute才能看到。屬性元素是可選的,它是可變數(shù)據(jù)類型的量,可以讓你方便的捆綁自定義信息,比如設(shè)備編號、通道號等等。該元素不會影響波形數(shù)據(jù)的表現(xiàn)或Y與時間值。波形與數(shù)組的差別

在很多情況下,你可以將波形想象為一維數(shù)組,在這個一維數(shù)組中除了保存數(shù)據(jù)外還附加了一些關(guān)于數(shù)據(jù)點(diǎn)的時間以及采樣時間的信息。波形數(shù)據(jù)在模擬信號采集中經(jīng)常被用到。

  實(shí)際上你也可以使用數(shù)組來保存你的數(shù)據(jù)而不是使用波形數(shù)據(jù)。不過,波形數(shù)據(jù)比數(shù)組數(shù)據(jù)要有以下幾個優(yōu)勢:

t0的標(biāo)識:如果沒有t0的話,你就不知道你的數(shù)據(jù)是什么時候得到的。波形數(shù)據(jù)則會自動在t0中返回?cái)?shù)據(jù)采集的日期以及時間,這提供了你的數(shù)據(jù)的現(xiàn)實(shí)世界的時間。更易繪圖:波形數(shù)據(jù)同樣簡化了數(shù)據(jù)曲線的繪制。在較老的LabVIEW版本中,你必須綁定初始點(diǎn)的值(x0)以及兩點(diǎn)之間的間隔時間(delta x)到你的數(shù)據(jù)(Y數(shù)組),才能完成繪制曲線的工作?,F(xiàn)在的波形數(shù)據(jù)就直接包括了這些元素,你只要將波形數(shù)據(jù)連線到曲線圖控件就可以繪圖了。更簡單的多曲線圖:波形數(shù)據(jù)也簡化了多曲線的曲線圖的繪制。在舊版的LabVIEW中,每條曲線需要先將x0、delta x以及Y數(shù)組綁定之后,再用它們創(chuàng)建一個數(shù)組之后才能繪制一個多曲線的曲線圖。如果使用波形數(shù)據(jù),只要將一個波形數(shù)據(jù)的一維數(shù)組連線到一個曲線圖控件就可以繪出多曲線的曲線圖了。波形函數(shù)

  在LabVIEW的函數(shù)面板的Programming下的Waveform面板上全部都是用于波形數(shù)據(jù)操作的函數(shù),如下圖所示:

  這里的獲取波形元素(Get Waveform Components)以及創(chuàng)建波形(Build Waveform)函數(shù)分別用來獲取或設(shè)置模擬、數(shù)組波形和數(shù)字值的波形元素。

  獲取波形元素函數(shù)可以返回你需要的波形元素。你可以通過在該函數(shù)節(jié)點(diǎn)上面右鍵點(diǎn)擊并選擇Add Element并左鍵點(diǎn)擊來選擇需要的波形元素。這個函數(shù)是可擴(kuò)展的。

  創(chuàng)建波形函數(shù)可以用來創(chuàng)建一個新的波形或者是修改一個現(xiàn)有波形。如果不鏈接輸入到waveform輸入端,這個函數(shù)就會按照輸入的數(shù)據(jù)來創(chuàng)建一個新的波形。如連接了一個波形到這個輸入端,這個函數(shù)就會按照你輸入的參數(shù)修改這個波形。這個函數(shù)也是可擴(kuò)展的。

  這兩個函數(shù)都是可復(fù)用的,可以對模擬波形、數(shù)字波形以及數(shù)字?jǐn)?shù)據(jù)進(jìn)行操作。函數(shù)的waveform輸入端會根據(jù)輸入波形的不同而自動轉(zhuǎn)換。

  除此之外,還有很多對波形進(jìn)行操作的函數(shù),可以參考LabVIEW的自帶幫助文件或例子來自己熟悉。

動態(tài)數(shù)據(jù)(Dynamic Data)

  幾乎所有的用于采集、分析、操作以及生成信號的Express VI都使用了一個特殊的數(shù)據(jù)類型傳送信號數(shù)據(jù),這個數(shù)據(jù)類型就是動態(tài)數(shù)據(jù)。簡單地說,動態(tài)數(shù)據(jù)就是一個或多個通道的波形數(shù)據(jù)。實(shí)際上,你也可以將動態(tài)數(shù)據(jù)想象為只是一個簡單的模擬波形的數(shù)組,用一個智能的線所表示。不過,在實(shí)際的使用中,動態(tài)數(shù)據(jù)確實(shí)也是非常智能的,比如將幾個動態(tài)數(shù)據(jù)合并為一個動態(tài)數(shù)據(jù)的操作是非常簡單的。

  在LabVIEW中,將一個動態(tài)數(shù)據(jù)連線到另一個動態(tài)數(shù)據(jù),LabVIEW會自動的添加一個合并信號的函數(shù)將這兩個信號線合并為一個信號線。

  對動態(tài)信號操作的函數(shù)都位于Express>>Signal Manipulation子面板中,大家可以通過幫助文件來熟悉這些函數(shù)的使用。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉