午夜毛片免费看,老师老少妇黄色网站,久久本道综合久久伊人,伊人黄片子

結(jié)構(gòu)健康監(jiān)測無線傳感器數(shù)據(jù)丟失無損恢復(fù)嵌入式算法的制作方法

文檔序號:11253689閱讀:686來源:國知局
結(jié)構(gòu)健康監(jiān)測無線傳感器數(shù)據(jù)丟失無損恢復(fù)嵌入式算法的制造方法與工藝

本發(fā)明專利涉及一種土木工程結(jié)構(gòu)健康監(jiān)測技術(shù)領(lǐng)域,具體涉及一種結(jié)構(gòu)健康監(jiān)測無線傳感器數(shù)據(jù)丟失無損恢復(fù)嵌入式算法。



背景技術(shù):

近年來,無線智能傳感網(wǎng)絡(luò)(wirelesssmartsensornetwork,簡稱wssn)引起了在結(jié)構(gòu)健康監(jiān)測(structuralhealthmonitoring,簡稱shm)領(lǐng)域的研究者的重視。wssn不僅僅相對于傳統(tǒng)的有線傳感網(wǎng)絡(luò)有巨大優(yōu)勢,而且相比于其他的非智能無線傳感網(wǎng)絡(luò)發(fā)展更迅速、應(yīng)用更廣泛。尤其是在橋梁的健康監(jiān)測領(lǐng)域,wssn除了造價(jià)更低、布置方便之外,其更大的優(yōu)勢在于可以對數(shù)據(jù)進(jìn)行預(yù)處理,這種預(yù)處理大大提升了在基站工作的監(jiān)測人員的數(shù)據(jù)處理效率。

雖然wssn比傳統(tǒng)傳感器具有相當(dāng)多的優(yōu)勢,但是基于無線傳感器的結(jié)構(gòu)健康監(jiān)測系統(tǒng)的穩(wěn)定性十分容易受傳輸丟包的干擾。無線傳輸?shù)目煽啃耘c傳輸環(huán)境和天線有著很大的關(guān)系。傳輸環(huán)境的影響例如傳輸路徑中出現(xiàn)其他電子設(shè)備與無線傳感器工作在相同的頻率段、惡劣天氣(下雨、閃電等)都會造成無線干擾,導(dǎo)致數(shù)據(jù)采集儀器收到錯(cuò)誤信號;無線傳感器安裝位置不合適、無線天線方向不合適,無線數(shù)據(jù)長距離傳輸,以及還有硬件等問題則會造成數(shù)據(jù)采集儀器無法收到足夠強(qiáng)的信號。以上原因都會導(dǎo)致數(shù)據(jù)在傳輸過程丟失,因此各個(gè)領(lǐng)域的在實(shí)際工程應(yīng)用中,需要迫切解決數(shù)據(jù)無線傳輸?shù)膩G包問題。數(shù)據(jù)在無線傳輸中出現(xiàn)丟失,不僅對數(shù)據(jù)質(zhì)量本身有很大影響,還會對數(shù)據(jù)的后處理以及基于數(shù)據(jù)后處理結(jié)果的決策判斷的準(zhǔn)確性造成不良影響。各領(lǐng)域的學(xué)者在對無線傳感器的應(yīng)用研究的報(bào)告中,均提到了不同程度的數(shù)據(jù)丟失問題。通過使用數(shù)值模擬軟件以及相關(guān)的實(shí)驗(yàn)研究,數(shù)據(jù)丟失帶給后續(xù)處理的誤差得到了一些量化的結(jié)果,這些結(jié)果表明,0.5%的數(shù)據(jù)丟失率等效于原數(shù)據(jù)的具有5%~10%的噪聲干擾,并且給模態(tài)分析引入額外的誤差,因此也會影響結(jié)構(gòu)的健康診斷。

在結(jié)構(gòu)健康監(jiān)測系統(tǒng)中,少量的數(shù)據(jù)丟失是可以被允許的,但監(jiān)測工作人員往往更傾向于做出基于更可靠的數(shù)據(jù)而得到更精準(zhǔn)的決策,所以最近幾年來,許多提升無線數(shù)據(jù)傳輸可靠性的方法被提了出來。一般來說,這些方法可以歸為兩類:第一類是反復(fù)、多次傳輸同一數(shù)據(jù);第二類是傳輸一次帶冗余信息的數(shù)據(jù)。在第一類方法中,傳感器作為數(shù)據(jù)的發(fā)送端,需要持續(xù)進(jìn)行數(shù)據(jù)傳輸,一直到數(shù)據(jù)采集儀器收到完整信號之后才停止。這一類方法需要反復(fù)在數(shù)據(jù)發(fā)送段和數(shù)據(jù)接收端建立連接,并且會造成數(shù)據(jù)接收的延遲。在第二類方法中,傳感器并不傳輸原始數(shù)據(jù),取而代之的是傳輸經(jīng)過預(yù)先處理的數(shù)據(jù),這種預(yù)先處理方法可以增加原始數(shù)據(jù)的冗余度,使得處理后的數(shù)據(jù)即使部分丟失,只要接收段能夠收到足夠量的數(shù)據(jù),亦能通過數(shù)學(xué)手段重構(gòu)出原始數(shù)據(jù)。不過,即便第二類方法比第一類方法更有效率、操作更加靈活,現(xiàn)今在工程實(shí)際應(yīng)用領(lǐng)域(尤其是針對結(jié)構(gòu)健康監(jiān)測領(lǐng)域)很少有將第二類方法成功應(yīng)用于計(jì)算、存儲資源受限的無線傳感器中的方案。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的是提出一種結(jié)構(gòu)健康監(jiān)測無線傳感器數(shù)據(jù)丟失無損恢復(fù)嵌入式算法,是一種基于無損壓縮編碼和隨機(jī)冗余矩陣的數(shù)據(jù)加密和傳輸?shù)那度胧剿惴ǎ赃m用于基于無線傳感器網(wǎng)絡(luò)的結(jié)構(gòu)振動(dòng)監(jiān)測系統(tǒng)。

本發(fā)明內(nèi)容如下:一種結(jié)構(gòu)健康監(jiān)測無線傳感器數(shù)據(jù)丟失無損恢復(fù)嵌入式算法,算法步驟如下:

第一步:在無線傳感器的計(jì)算內(nèi)核上,通過對長度為n的原始數(shù)據(jù)x進(jìn)行相鄰兩個(gè)數(shù)值作差,得到長度為n的差值數(shù)據(jù)d,再將差值數(shù)據(jù)d中每一個(gè)數(shù)值通過嵌入無線傳感器的lec無損壓縮編碼字典進(jìn)行編碼,得到長度為m、m<n的壓縮后數(shù)據(jù)y;

第二步:依據(jù)數(shù)據(jù)y的長度m,取嵌入無線傳感器的隨機(jī)冗余矩陣φ的前m列作為隨機(jī)冗余矩陣φi,通過φi將壓縮后數(shù)據(jù)y轉(zhuǎn)換為長度為n的待傳輸數(shù)據(jù)z,這是一個(gè)增加數(shù)據(jù)冗余度的過程,即z=φiy;然后無線傳感器將數(shù)據(jù)z傳輸至數(shù)據(jù)收集基站;

第三步:在基站,數(shù)據(jù)接收器接收到的數(shù)據(jù)中有k個(gè)數(shù)據(jù)點(diǎn)在無線傳輸過程中丟失,得到不完整數(shù)據(jù)根據(jù)數(shù)據(jù)包發(fā)送的順序,確定數(shù)據(jù)丟失的情況,從而確定矩陣由φi去除掉相應(yīng)的丟失數(shù)據(jù)點(diǎn)對應(yīng)的k行元素得到,其維數(shù)為(n-k)×m;

第四步:在基站計(jì)算終端,通過計(jì)算得到壓縮后信號y,將信號y輸入lec解碼器得到差值數(shù)據(jù)d,再將差值數(shù)據(jù)d經(jīng)過還原即得到原始數(shù)據(jù)x。

本發(fā)明還具有如下技術(shù)特征:

1、如上所述的lec無損壓縮編碼字典進(jìn)行編碼過程是:對差值數(shù)據(jù)中每一個(gè)數(shù)據(jù)點(diǎn)都進(jìn)行二進(jìn)制編碼,其每一個(gè)點(diǎn)di的編碼形式為si|ai,ai記錄了數(shù)值di的大小,ai的長度記為li,si記錄了li的值。di與ai的轉(zhuǎn)換規(guī)則為:若di>0,則直接使用di的二進(jìn)制原碼作為ai;若di<0,則取|di|二進(jìn)制原碼,再將該原碼的0和1逐位取反作為ai,預(yù)嵌入無線傳感器中的lec無損壓縮編碼表是si與li的一一對應(yīng)的表1,

表1si與li的轉(zhuǎn)換規(guī)則

差值數(shù)據(jù)d中的每一個(gè)值di首先將被轉(zhuǎn)換為ai,然后編碼器將會根據(jù)ai的長度按照表1中的規(guī)則在ai前加上si;d中每一個(gè)值都編碼完畢之后,所有的si|ai將會被拼合在一起,然后按照每28個(gè)二進(jìn)制數(shù)為一組,轉(zhuǎn)換為十進(jìn)制數(shù),存儲成yi,所有yi將組成數(shù)據(jù)y。

2、如上所述的無線傳感器的隨機(jī)冗余矩陣φ其生成過程如下:

第一步:初始化,向量o存儲數(shù)值1至500;向量d為空向量;向量u作為存儲向量o和向量d的差值的向量;為一個(gè)所有元素為0的矩陣;

第二步:開始循環(huán)計(jì)算1,對中的第i列,i從1循環(huán)至500,增量為1;

更新仍沒有足夠個(gè)數(shù)的數(shù)字1的矩陣列數(shù),u=o-d;

取得15和u的長度這二者之間較小的值作為r,r=min(15,size(u));

從u向量中的數(shù)字中隨機(jī)選取r個(gè)正整數(shù),作為行號,將矩陣這些行號中的每一行的第i個(gè)數(shù)值從0改變?yōu)椋?/p>

第三步:開始循環(huán)2,對u向量中仍存在的每一個(gè)數(shù)值j循環(huán),從最小的一個(gè)正整數(shù)至最大的一個(gè)正整數(shù)。

若矩陣的第j列所有數(shù)值中,含有15個(gè)非零元素,則將j添加至向量d中;

第三步:結(jié)束循環(huán)計(jì)算2;

第四步:結(jié)束循環(huán)計(jì)算1;

第五步:輸出隨機(jī)冗余矩陣φ;

由于隨機(jī)冗余矩陣中僅有225個(gè)數(shù)字1,其余位置為0,僅需存儲這225個(gè)數(shù)字1的位置即可,無需存儲整個(gè)矩陣φ。

3、如上所述的lec解碼器的解碼過程是首先將數(shù)據(jù)y從十進(jìn)制轉(zhuǎn)換為二進(jìn)制,然后從第一個(gè)二進(jìn)制位開始讀取,尋找si,一旦找到si,立刻將其轉(zhuǎn)換為li,然后解碼器讀入接下來的li個(gè)二進(jìn)制位作為ai,并把a(bǔ)i轉(zhuǎn)換為di存儲,之后接著下一個(gè)二進(jìn)制位讀取,尋找下一個(gè)si,直至所有二進(jìn)制位被解碼完畢,即解出完整的差值數(shù)據(jù)d。

本發(fā)明的有益效果如下:

本發(fā)明實(shí)現(xiàn)了在智能無線傳感器節(jié)點(diǎn)計(jì)算內(nèi)核上對采集的數(shù)據(jù)進(jìn)行壓縮、增加冗余度和傳輸;在基站上實(shí)現(xiàn)了對不完整的有冗余信息的數(shù)據(jù)的恢復(fù)。整個(gè)過程提升了無線監(jiān)測系統(tǒng)數(shù)據(jù)傳輸?shù)目煽啃浴?/p>

在imote2智能無線傳感器平臺上(如圖2所示),本發(fā)明能對三軸加速度信號同時(shí)進(jìn)行加密和傳輸,并適用于不同采樣頻率,滿足結(jié)構(gòu)振動(dòng)監(jiān)測的需求。

本發(fā)明能對數(shù)據(jù)丟失率在30%以下的橋梁監(jiān)測加速度信號進(jìn)行有效的補(bǔ)償,減小數(shù)據(jù)丟包造成的誤差。

本發(fā)明為移動(dòng)基站無線快速數(shù)據(jù)采集系統(tǒng)的數(shù)據(jù)傳輸提供了解決方案。數(shù)據(jù)可不重復(fù)傳輸,移動(dòng)造成的丟包可以得到恢復(fù)。

附圖說明

圖1為基于壓縮傳感的無線數(shù)據(jù)傳輸和恢復(fù)框圖;

圖2為基于imote2智能無線傳感器平臺的嵌入程序流程圖;

圖3為無線傳感器在傳輸過程中沒有丟包的情況下原始數(shù)據(jù)圖;

圖4為無線傳感器在傳輸過程中沒有丟包的情況下差值數(shù)據(jù)圖;

圖5為無線傳感器在傳輸過程中沒有丟包的情況下壓縮后數(shù)據(jù)圖;

圖6為無線傳感器傳輸過程中沒有丟包的情況下經(jīng)增冗余度后的待傳輸數(shù)據(jù)圖;

圖7為無線傳感器在傳輸過程中沒有丟包的情況下基站收到數(shù)據(jù)后進(jìn)行重構(gòu)得到的差值數(shù)據(jù)圖,圖中白線為誤差值;

圖8為在傳輸過程中沒有丟包的情況下最終恢復(fù)的原始信號圖;

圖9為無線傳感器在遇到少量丟包的情況下原始數(shù)據(jù)圖;

圖10為無線傳感器在遇到少量丟包的情況下差值數(shù)據(jù)圖;

圖11為無線傳感器在遇到少量丟包的情況下壓縮后數(shù)據(jù)圖;

圖12為無線傳感器在遇到少量丟包的情況下經(jīng)增冗余度后的待傳輸數(shù)據(jù)圖;

圖13為無線傳感器在遇到少量丟包的情況下基站端接收到的有丟包的數(shù)據(jù)圖;

圖14為無線傳感器在遇到少量丟包的情況下重構(gòu)后的差值數(shù)據(jù)圖,圖中零直線為誤差值;

圖15為無線傳感器在遇到少量丟包的情況下最終恢復(fù)的原始信號圖;

圖16為無線傳感器在遇到大量丟包時(shí)的原始數(shù)據(jù)圖;

圖17為無線傳感器在遇到大量丟包時(shí)的差值數(shù)據(jù)圖;

圖18為無線傳感器在遇到大量丟包時(shí)的壓縮后數(shù)據(jù)圖;

圖19為無線傳感器在遇到大量丟包時(shí)的經(jīng)增冗余度后的待傳輸數(shù)據(jù)圖;

圖20為無線傳感器在遇到大量丟包時(shí)的基站端接收到的有丟包的數(shù)據(jù)圖;

圖21為無線傳感器在遇到大量丟包時(shí)的重構(gòu)后的差值數(shù)據(jù)圖,圖中零直線為誤差值;

圖22為無線傳感器在遇到大量丟包時(shí)的最終恢復(fù)的原始信號圖;

具體實(shí)施方式

本發(fā)明的核心是一組能運(yùn)行于智能無線傳感器平臺的無損壓縮編碼、隨機(jī)增加信號的冗余度的矩陣運(yùn)算以及信號傳輸方法。其嵌入的隨機(jī)冗余矩陣由計(jì)算機(jī)通過函數(shù)隨機(jī)產(chǎn)生(具體產(chǎn)生方式見實(shí)施方案),該方法產(chǎn)生的隨機(jī)冗余矩陣只有相當(dāng)少的非零元素,且非零元素的值均為+1。設(shè)該矩陣為φi,相比于傳統(tǒng)的全隨機(jī)冗余矩陣φ,無線傳感器存儲φi所需的內(nèi)存空間??;且用φi對數(shù)據(jù)增加冗余度的計(jì)算速度較快。下面具體舉例做以說明。

實(shí)施例1

本實(shí)施是基于imote2無線傳感器平臺和illinois結(jié)構(gòu)健康監(jiān)測工具包,imote2的操作系統(tǒng)為tinyos,代碼語言為nesc。

差值數(shù)據(jù)是采用相鄰兩個(gè)原始數(shù)據(jù)之間相減得到的,設(shè)采集到的有n個(gè)數(shù)據(jù)點(diǎn)原始數(shù)據(jù)序列為x={x1,x2,...,xn},那么差值數(shù)據(jù)d由下式確定:

于是,從差值數(shù)據(jù)d中依次從i=1至n恢復(fù)出原始數(shù)據(jù)序列x的方式為

lec無損壓縮編碼字典是在外部計(jì)算機(jī)預(yù)先生成并以代碼的形式嵌入imote2無線傳感器的存儲器。lec壓縮編碼對差值數(shù)據(jù)中每一個(gè)數(shù)據(jù)點(diǎn)都進(jìn)行二進(jìn)制編碼,其每一個(gè)點(diǎn)di的編碼形式為si|ai,ai記錄了數(shù)值di的大小,ai的長度記為li,si記錄了li的值。di與ai的轉(zhuǎn)換規(guī)則為:若di>0,則直接使用di的二進(jìn)制原碼作為ai;若di<0,則取|di|二進(jìn)制原碼,再將該原碼的0和1逐位取反(原位是0則換為1,原位是1則換為0)作為ai。預(yù)嵌入imote2無線傳感器中的lec無損壓縮編碼表是si與li的一一對應(yīng)的表1,詳情如下

表1si與li的轉(zhuǎn)換規(guī)則

差值數(shù)據(jù)d中的每一個(gè)值di首先將被轉(zhuǎn)換為ai,然后編碼器將會根據(jù)ai的長度按照表1中的規(guī)則在ai前加上si;d中每一個(gè)值都編碼完畢之后,所有的si|ai將會被拼合在一起,然后按照每28個(gè)二進(jìn)制數(shù)為一組,轉(zhuǎn)換為十進(jìn)制數(shù),存儲成yi,所有yi(m個(gè))將組成數(shù)據(jù)y。lec一般可以將長度為16000比特的差值數(shù)據(jù)d(1000個(gè)數(shù)據(jù)點(diǎn))壓縮成為8000比特左右。

lec的解碼過程是首先將數(shù)據(jù)y從十進(jìn)制轉(zhuǎn)換為二進(jìn)制,然后從第一個(gè)二進(jìn)制位開始讀取,尋找si,一旦找到si,立刻將其轉(zhuǎn)換為li,然后解碼器讀入接下來的li個(gè)二進(jìn)制位作為ai,并把a(bǔ)i轉(zhuǎn)換為di存儲,之后接著下一個(gè)二進(jìn)制位讀取,尋找下一個(gè)si,直至所有二進(jìn)制位被解碼完畢,即可解出完整的差值數(shù)據(jù)d。

隨機(jī)冗余矩陣同樣也是預(yù)先在外部計(jì)算機(jī)生成并以代碼的形式嵌入imote2無線傳感器的存儲器,其生成過程如下:

在該實(shí)施例中,生成的隨機(jī)冗余矩陣的維度選為500×500,矩陣元素中每行、每列僅含有15個(gè)數(shù)字1。

第一步:初始化,向量o存儲數(shù)值1至500;向量d為空向量;向量u作為存儲向量o和向量d的差值的向量;(維度為500×500)為一個(gè)所有元素為0的矩陣。

第二步:開始循環(huán)計(jì)算1,對中的第i列,i從1循環(huán)至500,增量為1。

更新仍沒有足夠個(gè)數(shù)的數(shù)字1的矩陣列數(shù),u=o-d。

取得15和u的長度這二者之間較小的值作為r,r=min(15,size(u))。

從u向量中的數(shù)字中隨機(jī)選取r個(gè)正整數(shù),作為行號,將矩陣這些行號中的每一行的第i個(gè)數(shù)值從0改變?yōu)?。

第三步:開始循環(huán)2,對u向量中仍存在的每一個(gè)數(shù)值j循環(huán),從最小的一個(gè)正整數(shù)至最大的一個(gè)正整數(shù)。

若矩陣的第j列所有數(shù)值中,含有15個(gè)非零元素,則將j添加至向量d中。

第三步:結(jié)束循環(huán)計(jì)算2。

第四步:結(jié)束循環(huán)計(jì)算1。

第五步:輸出隨機(jī)冗余矩陣φ。

事實(shí)上,由于隨機(jī)冗余矩陣中僅有225個(gè)數(shù)字1,其余位置為0,故僅需存儲這225個(gè)數(shù)字1的位置即可,無需存儲整個(gè)矩陣φ。在增加數(shù)據(jù)冗余度的計(jì)算過程中,φ亦不需要被完整生成,只需將其對數(shù)據(jù)的轉(zhuǎn)換作用在imote2無線傳感器的計(jì)算內(nèi)核上實(shí)現(xiàn)即可,這樣處理進(jìn)一步節(jié)省了內(nèi)存空間和計(jì)算速度。

在imote2無線傳感器采集完加速度數(shù)據(jù)后,加速度時(shí)程數(shù)據(jù)被分解為1000個(gè)數(shù)據(jù)點(diǎn)(int16存儲格式)的數(shù)據(jù)段;每一段數(shù)據(jù)均被imote2無線傳感器執(zhí)行取差值、壓縮和增加冗余度這三個(gè)步驟,最終轉(zhuǎn)換為一段500個(gè)數(shù)據(jù)點(diǎn)(int32存儲格式)的數(shù)據(jù)段,由于int16存儲格式中每一個(gè)數(shù)據(jù)點(diǎn)占用存儲空間為16比特,int32存儲格式中每一個(gè)數(shù)據(jù)點(diǎn)占用存儲空間為32比特,故最終轉(zhuǎn)換的500個(gè)數(shù)據(jù)點(diǎn)與轉(zhuǎn)換之前的1000個(gè)數(shù)據(jù)點(diǎn)在存儲時(shí)所占用的空間是相同的;imote2無線傳感器將轉(zhuǎn)換完成的數(shù)據(jù)段拼接形成最終數(shù)據(jù)并將其儲存于靜態(tài)內(nèi)存中。當(dāng)imote2節(jié)點(diǎn)接收到基站的數(shù)據(jù)回收命令,imote2無線傳感器將數(shù)據(jù)分裝打包并連續(xù)發(fā)送數(shù)據(jù)包至基站?;驹诮邮盏綌?shù)據(jù)包后,找出未收到的部分(丟包)并以0代替丟失數(shù)據(jù);最終的數(shù)據(jù)被基站傳輸?shù)诫娔X上經(jīng)過去冗余度、解壓縮和差值還原三個(gè)步驟,最后得到原始數(shù)據(jù)。在無線傳感器端,該嵌入式算法的整個(gè)程序?qū)崿F(xiàn)流程如圖2所示。

實(shí)施例2

嵌入本發(fā)明算法的imote2無線傳感器被用于一系列的橋梁監(jiān)測和加速度采集實(shí)驗(yàn)。這些實(shí)驗(yàn)驗(yàn)證了本發(fā)明的可行性和實(shí)用性。以下用三個(gè)具體實(shí)例說明本發(fā)明的效果;其分別代表三種無線通訊中常見的情況(無丟包,少量丟包和大量丟包)。

圖3-8展示了加密數(shù)據(jù)y在傳輸過程中沒有丟包的情況。在該情況下,原始數(shù)據(jù)在重構(gòu)后無誤差精確恢復(fù),如圖8所示。

圖9-15展示了無線傳感器在遇到少量丟包時(shí)的數(shù)據(jù)恢復(fù)實(shí)例:當(dāng)一段使用嵌入式算法增加冗余度后的加速度數(shù)據(jù)在傳輸過程中丟包率達(dá)18.8%時(shí),基于無損壓縮編碼和隨機(jī)冗余矩陣的恢復(fù)算法的數(shù)據(jù)重構(gòu)效果??梢钥闯?,原始數(shù)據(jù)在恢復(fù)后沒有誤差,如圖15所示。

圖16-22展示了無線傳感器在遇到大量丟包時(shí)的數(shù)據(jù)恢復(fù)實(shí)例:此段加速度數(shù)據(jù)在無線傳輸過程中丟包率高達(dá)26.2%。此時(shí),原始數(shù)據(jù)在經(jīng)過計(jì)算機(jī)恢復(fù)后仍然沒有誤差,進(jìn)一步證明了本發(fā)明的實(shí)用性能,恢復(fù)的原始信號如圖22所示。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1