《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 基于DataSocket技術(shù)的小波消噪儀的網(wǎng)絡(luò)化
基于DataSocket技術(shù)的小波消噪儀的網(wǎng)絡(luò)化
摘要: 隨著通信技術(shù)的發(fā)展,,網(wǎng)絡(luò)的普及,,虛擬儀器技術(shù)的出現(xiàn)和發(fā)展,使得儀器的遠(yuǎn)程訪問(wèn)和共享成為可能,。硬件平臺(tái)可通過(guò)計(jì)算機(jī)與網(wǎng)絡(luò)相連,,通過(guò)對(duì)虛擬儀器軟件編程實(shí)現(xiàn)儀器的的遠(yuǎn)程控制、數(shù)據(jù)的實(shí)時(shí)采集與網(wǎng)絡(luò)傳輸,。 在此背景下,,本文設(shè)計(jì)了基于Datasoket技術(shù)的虛擬小波消噪儀,實(shí)現(xiàn)了小波消噪儀的共享,。
Abstract:
Key words :

1 引言
隨著通信技術(shù)的發(fā)展,,網(wǎng)絡(luò)的普及,虛擬儀器技術(shù)的出現(xiàn)和發(fā)展,,使得儀器的遠(yuǎn)程訪問(wèn)和共享成為可能,。硬件平臺(tái)可通過(guò)計(jì)算機(jī)與網(wǎng)絡(luò)相連,通過(guò)對(duì)虛擬儀器軟件編程實(shí)現(xiàn)儀器的的遠(yuǎn)程控制,、數(shù)據(jù)的實(shí)時(shí)采集與網(wǎng)絡(luò)傳輸,。
在此背景下,,本文設(shè)計(jì)了基于Datasoket技術(shù)的虛擬小波消噪儀,實(shí)現(xiàn)了小波消噪儀的共享,。
2 DataSocket技術(shù)
DataSocket是NI公司提供的一項(xiàng)網(wǎng)絡(luò)測(cè)控系統(tǒng)開發(fā)技術(shù),,它基于Microsoft的COM和ActiveX技術(shù),源于TCP/IP協(xié)議并對(duì)其進(jìn)行了高度封裝,,面向測(cè)量和自動(dòng)化應(yīng)用,,用于共享和發(fā)布實(shí)時(shí)數(shù)據(jù),是一種易用的高性能數(shù)據(jù)交換編程接口,。它能有效地支持本地計(jì)算機(jī)上不同應(yīng)用程序?qū)μ囟〝?shù)據(jù)的同時(shí)應(yīng)用,。網(wǎng)絡(luò)上不同的計(jì)算機(jī)的多個(gè)應(yīng)用程序之間的數(shù)據(jù)交互,實(shí)現(xiàn)跨機(jī)器,、跨語(yǔ)言,、跨進(jìn)程的實(shí)時(shí)數(shù)據(jù)共享。用戶只需知道數(shù)據(jù)源和數(shù)據(jù)宿及需要交換的數(shù)據(jù)就可以直接進(jìn)行高層應(yīng)用程序的開發(fā),,實(shí)現(xiàn)高速數(shù)據(jù)傳輸,,而不必關(guān)心底層的實(shí)現(xiàn)細(xì)節(jié),從而簡(jiǎn)化了通信程序的編寫過(guò)程,,提高了編程效率,。[1]
DataSocket包括了DS Server Manager、DS Server和DS函數(shù)庫(kù)等工具,,以及數(shù)據(jù)傳輸協(xié)議DSTP(DataSocket Transfer Protocol),、統(tǒng)一資源定位符URL(Uniform Resource Locator)和文件格式等技術(shù)規(guī)范,。利用這些工具,,可大大簡(jiǎn)化網(wǎng)絡(luò)中計(jì)算機(jī)之間數(shù)據(jù)交換的編程工作。
DataSocket Server Manager是一個(gè)獨(dú)立運(yùn)行的程序,,它的主要功能是設(shè)置DS Server可連接的客戶程序的數(shù)目和可創(chuàng)建的數(shù)據(jù)項(xiàng)(Data Item)的數(shù)目,,設(shè)置用戶和用戶組,以及設(shè)置用戶訪問(wèn)和管理數(shù)據(jù)項(xiàng)的權(quán)限,。DS Server能為用戶解決大部分網(wǎng)絡(luò)通信方面的問(wèn)題,,負(fù)責(zé)和用戶程序之間的數(shù)據(jù)交換,不需要用戶編寫有關(guān)網(wǎng)絡(luò)通信的底層程序,。[2]
3 小波變換理論
小波分析方法是一種窗口大小固定但其形狀可改變,,時(shí)間窗和頻率窗都可改變的時(shí)頻局部化分析方法。即在低頻部分具有較高的頻率分辨率和較低的時(shí)間分辨率,,在高頻部分具有較高的時(shí)間分辨率和較低的頻率分辨率,,這正符合低頻信號(hào)變化緩慢而高頻信號(hào)變化迅速的特點(diǎn)。這一特性,,便是它優(yōu)于傳統(tǒng)的傅里葉變換與短時(shí)傅里葉變換的地方,。[3]
利用MATLAB小波分析工具對(duì)信號(hào)進(jìn)行消噪處理的方法主要有以下三種:
(1)一維信號(hào)的小波分解,。選擇一個(gè)小波并確定一個(gè)小波分解的層次N,然后對(duì)信號(hào)進(jìn)行N層小波分解,;
(2)小波分解高頻系數(shù)的閾值量化,。從小波消噪處理的方法上來(lái)說(shuō),閾值處理有三種方法:
a.強(qiáng)制消噪處理,,該方法把小波分解結(jié)構(gòu)中的高頻系數(shù)全部變?yōu)?,,即把高頻部分全部濾掉,然后對(duì)信號(hào)進(jìn)行重構(gòu)處理,。這種方法比較簡(jiǎn)單,,重構(gòu)后的消噪信號(hào)也比較平滑,但容易丟失信號(hào)的有用成分,。
b.默認(rèn)閾值消噪處理,。該方法利用MATLAB工具箱中的ddencmp函數(shù)產(chǎn)生信號(hào)的默認(rèn)閾值,然后利用MATLAB工具箱中的wdencmp函數(shù)進(jìn)行消噪處理,。
c.給定軟(或硬)閾值消噪處理,。在實(shí)際的消噪處理過(guò)程中,閾值往往可以通過(guò)經(jīng)驗(yàn)公式獲得,,而且這種閾值比默認(rèn)閾值更具有可信度,。
(3)一維小波的重構(gòu)。根據(jù)小波分解的第N層的低頻系數(shù)和經(jīng)過(guò)量化處理后的第1層到第N層的高頻系數(shù),,進(jìn)行一維信號(hào)的小波重構(gòu),。
4 網(wǎng)絡(luò)化虛擬小波消噪儀的設(shè)計(jì)
4.1小波消噪儀的功能
小波消噪儀具有學(xué)習(xí)小波函數(shù)消噪特征和對(duì)實(shí)測(cè)試數(shù)據(jù)進(jìn)行消噪處理的功能。
在小波消噪儀的客戶端面板上有“原始信號(hào)輸入”,、“保存小波處理后數(shù)據(jù)”,、“小波參數(shù)設(shè)置”、“原始信號(hào)波形”和“小波處理后波形”控件,。“小波參數(shù)設(shè)置”中有“小波類型”,、“分解層次”及“小波階數(shù)”選項(xiàng)。“小波類型”有“sym”,、“haar”,、“db”、“dmey”和“coif”小波,;“sym”小波階數(shù)從2~5可選,,“db”小波階數(shù)從1~10可選,“coif”小波階數(shù)從1~5可選,,“haar”和“dmey”小波不用選擇階數(shù),;“分解層次”對(duì)各個(gè)小波都默認(rèn)在1~20之間可選。“原始信號(hào)輸入”控件導(dǎo)入和客戶端DLL程序打包一起的樣本文件或者實(shí)測(cè)需消噪的數(shù)據(jù)文件(該數(shù)據(jù)文件格式為以回車鍵隔開的文本文件),在“小波參數(shù)”設(shè)置中選擇不同的小波及分解層次,,待消噪數(shù)據(jù)和小波參數(shù)通過(guò)DataSocket協(xié)議傳送到服務(wù)器端消噪程序進(jìn)行處理,、同時(shí)把處理后數(shù)據(jù)傳送到客戶端,通過(guò)客戶端“保存小波處理后數(shù)據(jù)”控件把處理后數(shù)據(jù)保存到客戶端電腦上,。“原始信號(hào)波形”和“小波處理后波形”控件分別顯示消噪前后的信號(hào)波形,。
用戶通過(guò)網(wǎng)絡(luò)下載并運(yùn)行客戶端的DLL程序之后,導(dǎo)入樣本文件,,分別選用不同的小波函數(shù),、階數(shù)及分解層次,對(duì)比消噪后圖形,,學(xué)習(xí)體會(huì)不同的小波函數(shù)對(duì)不同信號(hào)的消噪效果,。這樣,在進(jìn)行實(shí)測(cè)數(shù)據(jù)處理的時(shí)候可有針對(duì)性地選擇小波函數(shù),。
4.2 服務(wù)器端虛擬儀器設(shè)計(jì)
LabVIEW為控制面板中的每一個(gè)控件設(shè)置了DataSocket連接對(duì)話框,,通過(guò)統(tǒng)一資源定位器URL,確定數(shù)據(jù)源和控件的連接方式,,進(jìn)行發(fā)布和讀取數(shù)據(jù),。如果在虛擬儀器的服務(wù)器端DataSocket Connection對(duì)話框中指定URL,并選擇發(fā)布的連接方式,,虛擬儀器的客戶端DataSocket Connection對(duì)話框中指定相同的URL,,選擇讀取的連接方式,DataSocket的傳輸協(xié)議的網(wǎng)址依照格式:dstp://servername/data,。其中,,servername是服務(wù)器端計(jì)算機(jī)的網(wǎng)址; data是DataSocket連接的名稱標(biāo)識(shí),,用于區(qū)別不同的DataSocket連接,。
Labview函數(shù)面板提供了“MATLAB Script”節(jié)點(diǎn)實(shí)現(xiàn)和MATLAB軟件的接口。在本設(shè)計(jì)中采用默認(rèn)閾值消噪方法,,利用MATLAB自帶小波函數(shù)實(shí)現(xiàn)消噪算法,。
服務(wù)器端的流程圖設(shè)計(jì)如圖1所示,。

圖1 服務(wù)器端流程圖
4.3 客戶端虛擬儀器設(shè)計(jì)

圖2 客戶端流程圖
在客戶端面板工具欄中選擇“Tools-Build Application or Shared Library(DLL)建立客戶端DLL運(yùn)行程序,。
把服務(wù)器端和客戶端DLL程序都放在同一臺(tái)服務(wù)器上,在服務(wù)器端DS Manager中添加創(chuàng)建的數(shù)據(jù)項(xiàng),,設(shè)置可訪問(wèn)的用戶數(shù)及權(quán)限,。
5 示例
待消噪的信號(hào)為含有白噪聲的正弦波。
在客戶端機(jī)器上下載打包的DLL程序和樣本文件,,在運(yùn)行客戶端DLL程序之前,,先要確定服務(wù)器上的DS Server已經(jīng)開啟、服務(wù)器程序已運(yùn)行,然后導(dǎo)入待消噪信號(hào),,選擇不同的小波參數(shù),,觀察消噪前后圖形,對(duì)比最佳消噪效果,。
對(duì)比發(fā)現(xiàn)對(duì)于含白噪聲的正弦波信號(hào),,選擇“dmey”小波、分解層次為2時(shí)的消噪效果最好,,選擇“haar”小波是消噪效果很差,。圖3、圖4分別為這兩個(gè)函數(shù)消噪前后波形圖,。

圖3 “haar”小波消噪前后效果圖

圖4 “dmey”小波消噪前后效果圖
6 結(jié)論
利用Labview和DataSocket技術(shù),,實(shí)現(xiàn)了儀器的共享,充分利用了資源,,并提高了數(shù)據(jù)處理的靈活性,。
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。