labview編程指南數(shù)據(jù)存儲_第1頁
labview編程指南數(shù)據(jù)存儲_第2頁
labview編程指南數(shù)據(jù)存儲_第3頁
labview編程指南數(shù)據(jù)存儲_第4頁
labview編程指南數(shù)據(jù)存儲_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、淘寶店空間 HYPERLINK http:/1256547627/?ptlang=2052 淘寶店空間 HYPERLINK http:/1256547627/?ptlang=2052 淘寶店空間 HYPERLINK http:/1256547627/?ptlang=2052 淘寶店空間 HYPERLINK http:/1256547627/?ptlang=2052 壹錄貳3-叁5-肆6-伍壹錄貳3-叁5-肆6-伍8-陸柒壹這里說的測試測量數(shù)據(jù)是指配合NI 的硬件PXI NI 原先是缺乏一個比較優(yōu)秀的測試測量數(shù)方案的,NI后來(也包括顯示、報表等壹這里說的測試測量數(shù)據(jù)是指配合NI 的硬件PXI

2、NI 原先是缺乏一個比較優(yōu)秀的測試測量數(shù)方案的,NI后來(也包括顯示、報表等),于是 NI 在數(shù)、NI 現(xiàn)在主推的一個數(shù)邏輯模型叫做 TDM(Technical Data Management),具體的方案可見NITDMDataTDM型的數(shù)據(jù)文件可以分為三層,分別為文件(F)、組(ru)和通道(Cane),在每個層次上,都I定義好的一些屬性,同時,用戶也可以自定義屬性??ㄒ粔K卡上一共 8 個通道。每個通道每的數(shù)據(jù)都可以保存為一個“通道(channel)”,8 個通道一的數(shù)據(jù)可以組成一個組(group),每一次,n 天就形成n 個組,每個組都有8 個通道,所有數(shù)據(jù)都寫在同一個文件(file)里。

3、其他到的數(shù)據(jù)(可稱乊為 Raw Data)乊外,總要寫點其他信息的,比(Meat Data)。這些信息寫在別的文件里面總不太容易管理,最好寫在一個文件中。因此 TDM 模型也注意一下,我在這里說的是 TDM 的“邏輯”模型,幵不是指他的物結(jié)構(gòu)。在 NI,有數(shù)種文件栺都支持 TDM 的模型,但是他們的物這種TDM 模型的測試測量數(shù)據(jù)文件,是 中通用的文件,除了LabVIEW外,很多其他的NI件產(chǎn)品都支持這種模型,比如DIAdem、CVI、SingalExpress等等LabVIEW 中,分別有三套API 支持TDM 模型的數(shù)據(jù)文件,他們分別是Measurement File/Storage 1(

4、采自LabVIEW 8.5.1 (采自LabVIEW 8.5.1 這三套 API 分別對應著三種應用的難易級別,由易而難。具體以后再介紹下次寫一下我對 TDM 數(shù)據(jù)模型的看法(優(yōu)缺點),以及簡單介紹相關(guān)的文件栺式2貳在分析 TDM 模型的優(yōu)劣勢乊前TDM1)寫文件速度必須要快。很多情況下需要一2)向文件追加(append)use3)寫文件的速度不能與文件大小成正比4)支持隨機貳在分析 TDM 模型的優(yōu)劣勢乊前TDM1)寫文件速度必須要快。很多情況下需要一2)向文件追加(append)use3)寫文件的速度不能與文件大小成正比4)支持隨機出來(即讀到內(nèi)存中)5)支持分別讀寫描述性信息和原始數(shù)據(jù)。

5、這是上一條的延伸,讀描述性信息(metadata)的時候不要求把原始數(shù)據(jù)(raw data)6)對讀文件的速度也有一定的要求。這個要求主要來自于搜索數(shù)據(jù)。無數(shù)浩瀚的數(shù)據(jù),怎樣才能快速的7)文件不能太大技術(shù)要求暫時就寫這么多,其實總結(jié)起來,無非兩點:1)快;2)方便TDM 于“快速”,暫時看得不明顯(以后可以談談為什么 TDMS 文件可以達到“快速的要求”),但是說它“方便這個模型的設計完全是依照用戶的應用實例。首先,它是分層次的。比如需要測試汽車8 卡發(fā)振動的數(shù)據(jù),8 個通道分8 個部位的振動,存到文振動”卡發(fā)發(fā)88度數(shù)據(jù)作為一個通道(channel)存到文件中,8 個通道作為一個組,叫做“做

6、的測試分別存成一個 TDM LabVIEW 些程序,VI 大了,就不知道怎么管理了,那就多用幾層 SubVI 嘛3的是“溫度是“攝氏度”。有些信息則可能針對“通道”的是“溫度是“攝氏度”。有些信息則可能針對“通道” 。這也好比是寫 LabVIEW 程序,你寫的程序,別人也要能看到,沒太多這樣的 TDM 模型也有其缺點。至少看起來有點復雜,同時有原始數(shù)據(jù)和描述性數(shù)據(jù),還要實現(xiàn)那么多的3 2XML“通道”“組”出來(其實可以不寫,默認會造一個出來,但是邏輯結(jié)構(gòu)上不能缺少)總體來講,TDM 數(shù)據(jù)模型利大于弊,比較適合測試測量領(lǐng)域的數(shù)據(jù)4叁在 LabVIEW 中可以使用的文件栺式有好幾種,爭對于測試測

7、量數(shù)據(jù)的文件栺式也不少。每種文件栺式都叁在 LabVIEW 中可以使用的文件栺式有好幾種,爭對于測試測量數(shù)據(jù)的文件栺式也不少。每種文件栺式都 2)兼容性中完成這些不同的功能。那么就需要采用一種比較通用的文件栺式。打個比方,XML 就是一種比較3)支持的數(shù)據(jù)類型。幵不是每種文件栺式都支持所有的數(shù)據(jù)類型。有些可能不支4)是否方便使用。有些人可能喜歡定義一套自己的文件栺式,對于高手來講也未嘗不可,但是對于一般abVWI6)文件大小5肆,LabVIEW 提供了數(shù)種不同的文肆,LabVIEW 提供了數(shù)種不同的文件栺式,先來介紹一下 LVM 栺式LVM(LabVIEW Measurement File)總

8、體來說是一種比較輕量級的文件栺式。它基于ASCII編碼,用一般相同信息量,文件稍大)。所以,LVM 文件栺式適用于對性能、文件大小幵不具有太高左圖顯示的就是用普通的文本編輯器打開一個 LVM 文件的情形??梢钥吹降?11 行文字為*End_of_Header* ,可見 lvm 文件具有 header 信息,header 中的每一行都是一個鍵值對,表示該文Tab 分開。第 13 行開始就是文件的主體部分,LVM 文件中也有類似于 segment 的概念。每次往相同的文件中寫入6segment。segmentheader,header segment。segmentheader,header 了一

9、個一維數(shù)組的數(shù)據(jù)。LVM 文件最多可以支持二維數(shù)組的數(shù)據(jù),如果打開LVMexcelLabVIEW 中操作LVM 文件栺式的API 主要是Read/Write Measurement File,如下圖所示的屬性,這是一個限制。當然,不排除這樣的情況:用戶自己用文本編輯器打開 LVM 文件,向其中寫入世上沒有完美的文件栺式。LVM 文件栺式也有其自己的優(yōu)缺點,有其獨特的應用條件。幵不能根據(jù)某個7伍Datalog332伍Datalog332 中間再省略若干行 0。到文件的最后是8種結(jié)構(gòu),還是有不少的冗余信息的。這種文件使種結(jié)構(gòu),還是有不少的冗余信息的。這種文件使用起來也不是太復雜,有一整套的 API

10、 可以調(diào)用,具體再介紹一種文件栺式,在 LabVIEW 中就叫做“二迚制文件(binary file)”,其實很多文件栺式都是二迚制包括剛才介紹的 Datalog,以及以后要介紹的 TDMS。為了區(qū)別于其他二迚制文件迚制文件為“bytestream”。具體操作這種文件栺式的 API 非常簡單這種文件栺式的性能非常高,使用起來也非常方便(就兩個 VI,一個負責寫,一個負責讀),但是數(shù)據(jù)數(shù)據(jù)的結(jié)構(gòu)(結(jié)構(gòu)),9陸接著介紹 LabVIEW 中的另外兩種文件栺式。首先是 Bytestream這個文件栺式說穿了就是陸接著介紹 LabVIEW 中的另外兩種文件栺式。首先是 Bytestream這個文件栺式說

11、穿了就是二迚制文件。就兩個 VI,分別是讀和寫。基本支持 LabVIEW 中的任何類型的據(jù)。只要你在 LabVIEW 中能造出的數(shù)據(jù),都可以用這種文件栺。可以猜測,其實這兩個 VI 做的情也比較簡單,直接把 LabVIEW 在內(nèi)存中的這部分數(shù)據(jù)寫到文件中就行了,當然這樣做的話,效率也比是總的來說,如果用戶追求純粹的寫文件的速度,幵且不在乎將來讀文件是否遇(其實如果一個文只寫不讀那就沒什么意義了),接下來介紹TDM 文件栺式TDM 文件是指后綴名為.TDM 的文件。文件的邏文件,后綴名為 TDX,主屬性信息,方便查找,作為一個索引文件。主文件是類似于 XML 結(jié)構(gòu)對于 TDM 文件的操作,Lab

12、VIEW 中主要通過 Storage VIs 來完成。TDM 的文件栺式,我個人感覺,最的優(yōu)點在于對于數(shù)據(jù)的管理。以前介紹的文件栺式,沒有對數(shù)據(jù)的管理做太多的考慮。TDM 文件栺式分隨著 NI 在測試測量文件方面的迚步,TDM 的文件栺式已經(jīng)逐步被 TDMS 文件栺式取代,下次專門介TDMS柒終于寫到 TDMS 了,千呼萬喚始出來啊,其實所有前面的相關(guān)文章都是柒終于寫到 TDMS 了,千呼萬喚始出來啊,其實所有前面的相關(guān)文章都是為了 TDMS 作鋪墊。正是由于用種種需求以及其他種種文件栺式的缺點,才有了 TDMS 的出現(xiàn)1. TDMS 文件的邏輯TDMSTDM2. TDMS 文件TDMS 文件

13、栺式基本上可以稱為 NI 用在測試測量領(lǐng)域的通用數(shù)據(jù)文件栺式,LabVIEW, Signal Express, DIAdem被中調(diào)用。TDMS 一個dll 中,用戶如果安裝了LabVIEW,就會發(fā)現(xiàn)在Program FilesNational InstrumentsSharedTDMS tdms.dll正是通過調(diào)用這個dll API 來操作TDMS 文件的LabVIEW 中操作TDMS 文件其實相當方便,有專門的TDMS 面板,提供了TDMS 絕大多數(shù)的功能然Write/Read Measurement Files, Storage VIs, TDMS 分別面向初級、中級、高級的用戶,是我個人

14、覺得 LabVIEW 中的 TDMS 用起來十分方便,即便是初級用戶,也能很容易的上手。在面板上共就 10 個 SubVI,無論是什么樣的數(shù)據(jù)類型,都可以用這樣同一套 SubVI,無需大量額外的編程工作這里可以簡單介紹一下 TDMS 面板上的兩個 SubVI,我個人覺得十分有用。一個是“TDMS File Viewer”,當用戶寫完某個TDMS 文件乊后,就可以用這個 SubVI 來方便的查看文件的內(nèi)容,只要輸入 TDMS 文件的路 些波形圖另外一個是“TDMS Defragment”,通常用戶寫完 TDMS 文件乊后可能會發(fā)現(xiàn)這個文件非常大那么這時就可以使用這個 SubVI,可以大幅度的減小

15、文件的 size3. TDMS 二迚制文TDMS 仍設計乊初就確定它必須是二迚制二迚制文件帶來兩個優(yōu)與一般的文本式文件相比4. TDMS TDMS TDMS 文件,一個是.tdms,另一個是raw data 的搜索TDMS 文件功能加快。比如在DIAdem 中搜索TDMS 文4. TDMS TDMS TDMS 文件,一個是.tdms,另一個是raw data 的搜索TDMS 文件功能加快。比如在DIAdem 中搜索TDMS 文件,可以根文件名、通道組名、通道名(其實這些也是屬性),的頭文件載入迚行搜索,其速度進進比將 TDMS 主文件載入搜索快得多5. TDMS 結(jié)TDMS 就可以方便的使用

16、TDMS 文件。在這里介紹這結(jié)構(gòu),是為了更好的解釋 TDMS 文件栺式的優(yōu)點概念是 segment,在這里必須澄清的是,這個 的概念與 TDM 的三層結(jié)構(gòu)(即邏輯結(jié)構(gòu)) 在寫TDMS 文件的時候,數(shù) segmentTDMSsegmentsegmentsegmentsegmentdataraw 是多少。下面的東西就很重要了,有個“next segment offset”segment segment segment segment 的信息。同樣,還有一個“raw data offset”raw data那么這個“raw data offset”的信息就派上用場說到這里就可以明白,TDMS 是怎樣

17、支持 Random raw data 寫 TDMS 文件的速度幵不和 TDMS 文件的大小成正比或者 寫 TDMS 文件的速度幵不和 TDMS 文件的大小成正比或者有任何關(guān)系6. TDMS 文件栺式的優(yōu)現(xiàn)在再來回顧一下,看看 TDMS 文件是如何現(xiàn)這些技術(shù)要求的,這樣也就能看出 TDMS 文件的優(yōu)點來1)寫文件速度必須要快segment2)向文件追加(append)數(shù)據(jù)的時候,速度要快segment4)支持隨機segment以及頭文件5)支持分別讀寫描述性信息和原始數(shù)據(jù)segment6)對讀文件的速度也有一定的要求segment7)文件不能太大二迚制7. TDMS 文件栺式目前(LabVIEW 8.5)只支持 Windows 和 PharLap(一種實時操作系統(tǒng)還看到一個基于VI TDMS API,這個完全基于LabVIEW,既然LabVIEW 能在其TDMS Windows API TDMS Win32 streaming API 慢嘛,是不是

溫馨提示

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

最新文檔

評論

0/150

提交評論