GHz高頻信號(hào)的LabVIEW和MATLAB混合處理新方法
4.3.1 均方差
均方差的代碼實(shí)現(xiàn)了將2個(gè)波形數(shù)據(jù)按照矩陣的形式代入方程中,然后將所得結(jié)果返回給LabVIEW并顯示出來(lái)。均方差的公式由下式給出
4.3.2 相關(guān)系數(shù)
相關(guān)系數(shù)可以用以下命令實(shí)現(xiàn)
R=corrcoef(X) (2)
這條命令將2個(gè)矩陣(一個(gè)是采集得到的,一個(gè)是內(nèi)部生成的)建立相關(guān)性,并輸出計(jì)算得到的相關(guān)系數(shù)。
相關(guān)系數(shù)的公式如下
4.3.3 參考信號(hào)
參考信號(hào)用來(lái)與采集得到的信號(hào)數(shù)據(jù)進(jìn)行均方差與相關(guān)性的對(duì)比。它由MATLAB產(chǎn)生,因?yàn)?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/MATLAB">MATLAB擁有豐富的數(shù)學(xué)函數(shù)庫(kù)及強(qiáng)大的各種工具箱(ToolBox),這就使得作者可以很方便靈活的產(chǎn)生各種參數(shù)的不同信號(hào),而且使用MATLAB能得到較高的采樣率,并且對(duì)信號(hào)的處理也比較簡(jiǎn)單,同時(shí)也避免了將參考信號(hào)引入MATLAB script模塊的麻煩。
5 3種方法
5.1 第一種
為了實(shí)現(xiàn)第一種方法,作者運(yùn)用LabVIEW的DAO工具包,設(shè)定好產(chǎn)生虛擬信號(hào)的參數(shù),再將信號(hào)采集回來(lái),并將數(shù)據(jù)保存為一個(gè)txt文件。將這個(gè)txt文件引入MATLAB,并與MATLAB內(nèi)部產(chǎn)生的信號(hào)進(jìn)行對(duì)比,通過(guò)計(jì)算得到均方差和相關(guān)系數(shù)。
5.2 第二種方法
第二種方法只使用LabVIEW一個(gè)軟件,首先采集信號(hào)數(shù)據(jù)并保存,接著使用LabVIEW的MATLAB script模塊產(chǎn)生內(nèi)部信號(hào),最后將倆信號(hào)對(duì)比并計(jì)算均方差和相關(guān)系數(shù),如圖3所示。本文引用地址:http://butianyuan.cn/article/153455.htm
5.3 第三種方法
第三種方法借助LabVIEW內(nèi)部的Math Script RT來(lái)完成,具體步驟和第二種方法類(lèi)似,如圖4所示。
6 結(jié)果分析
實(shí)驗(yàn)環(huán)境為CPU:Intel Pentium D 2.8 GHz,內(nèi)存:1G,顯卡:GT220。系統(tǒng):Windows XP。
產(chǎn)生高頻信號(hào)為1 GHz,深度為1 024 M,重復(fù)實(shí)驗(yàn)10次。
對(duì)于一些小誤差,如校準(zhǔn)誤差,幾乎可以忽略不計(jì),因?yàn)槎际窃谕粋€(gè)環(huán)境下試驗(yàn)完成的。因此作者集中分析方法的可行性,然后對(duì)比3種方法,最后得出結(jié)論哪一種是最好的。
6.1 引入txt文件
這種方法非常耗時(shí)。首先,使用LabVIEW采集得到數(shù)據(jù)并將之保存為一個(gè)txt文件,然后再將這個(gè)文件引入MATLAB。即是用戶(hù)需要在打開(kāi)一個(gè)軟件后再打開(kāi)另外一個(gè)軟件來(lái)完成操作,這是很繁瑣的。
從開(kāi)發(fā)者的角度來(lái)說(shuō),這種方法也許很簡(jiǎn)單或者說(shuō)是不那么復(fù)雜。但是,這種方法可行性最低。因?yàn)槌撕臅r(shí),它還需要對(duì)這兩種軟件有一定的認(rèn)識(shí),因此花在查找文獻(xiàn)上的時(shí)間也相應(yīng)的增多了。
另外,這種方法增加了電腦的負(fù)擔(dān),畢竟是開(kāi)了兩個(gè)程序。如果你使用的是一臺(tái)老電腦的話(huà),那么這可能會(huì)降低你的工作效率。
綜上,作者不建議使用這種方法。
6.2 使用MATLAB script
這種方法經(jīng)過(guò)驗(yàn)證比上一種要好。因?yàn)橛脩?hù)不必打開(kāi)兩個(gè)應(yīng)用程序來(lái)執(zhí)行程序,所以相對(duì)的比較可行。
但是,這種方法也需要安裝MATLAB軟件,才能在LabVIEW中調(diào)用MATLAB script模塊。這樣就導(dǎo)致了程序執(zhí)行的緩慢,因?yàn)橛脩?hù)必須等待一段時(shí)間讓計(jì)算機(jī)進(jìn)行切換計(jì)算。
除了操作性的難題,這種方法最主要的問(wèn)題還是不能夠?qū)崟r(shí)計(jì)算。采集的數(shù)據(jù)必須先保存為矩陣的形式,然后再調(diào)用MATLAB script模塊進(jìn)行處理。這樣就不僅浪費(fèi)了時(shí)間,而且還需要另外的算法來(lái)臨時(shí)保存數(shù)據(jù)。
6.3 使用Math Script RT
這種方法使用了內(nèi)嵌的Math Script模塊,它集合了LabVIEW和MATLAB的優(yōu)點(diǎn),而且還不需要安裝另外的軟件。Math Script模塊沒(méi)有必要調(diào)用MATLAB軟件,因?yàn)樗旧砭湍軌蜃R(shí)別800多條命令,也就是說(shuō)使用。Math Script模塊的話(huà)就不需要再安裝MATLAB軟件了。
相比上一種方法,最主要的優(yōu)勢(shì)除了運(yùn)行快還有就是能夠進(jìn)行實(shí)時(shí)處理。因?yàn)槠洳恍枰獙?duì)數(shù)據(jù)進(jìn)行臨時(shí)的數(shù)據(jù)存儲(chǔ),也沒(méi)有丟失實(shí)時(shí)的信息,這就使得它的運(yùn)行速度是最快的。測(cè)試結(jié)果如圖5所示。
7 結(jié)論
為了最優(yōu)化系統(tǒng)的性能,本文提倡對(duì)不同目的使用不同的軟件。使用LabVIEW進(jìn)行數(shù)據(jù)采集,運(yùn)用MATLAB進(jìn)行數(shù)據(jù)處理,這是很多項(xiàng)目的需要,也是很多程序員的需要。文中使用3種方法將LabVIEW與MATLAB的特性相結(jié)合:引入txt文件到MATLAB,使用MATLAB script模塊,使用Math Script RT。通過(guò)分析得到的結(jié)果,證實(shí)了使用Math Script RT無(wú)論在速度和可行性方面都是最好的。
評(píng)論