翟喜和
摘要 文章介紹了橋梁信息無(wú)線傳感網(wǎng)概念,分析了無(wú)線傳感網(wǎng)糾錯(cuò)控制的必要性,介紹了橋梁信息無(wú)線傳感網(wǎng)的通信糾錯(cuò)技術(shù),以及案例系統(tǒng)所應(yīng)用的基于群ACK技術(shù)的CRC-16通信糾錯(cuò)技術(shù)。實(shí)驗(yàn)比較顯示,相比直接檢錯(cuò)丟包,CRC-16通信糾錯(cuò)技術(shù)對(duì)提高無(wú)線傳感網(wǎng)通信數(shù)據(jù)的可靠性有一定效果。
關(guān)鍵詞 橋梁信息;無(wú)線傳感網(wǎng);通信糾錯(cuò);技術(shù)研究
中圖分類號(hào) TN929.5文獻(xiàn)標(biāo)識(shí)碼 A文章編號(hào) 2096-8949(2023)10-0010-03
0 引言
無(wú)線傳感網(wǎng)絡(luò)(WSN)是將一定數(shù)量的微型無(wú)線感受器部署在檢測(cè)目標(biāo)周圍,通過(guò)無(wú)線通信構(gòu)成一個(gè)拓?fù)淇勺兊男畔⒆越M織網(wǎng)絡(luò),據(jù)此收集各個(gè)傳感器節(jié)點(diǎn)的工程信息,經(jīng)處理后以無(wú)線傳送的方式發(fā)送給觀測(cè)者的工程信息拾取和應(yīng)用技術(shù)。將該技術(shù)應(yīng)用于橋梁健康狀態(tài)監(jiān)測(cè),有效彌補(bǔ)了有線監(jiān)測(cè)技術(shù)的工程造價(jià)高、系統(tǒng)維護(hù)難等問題。某跨江公路鋼箱梁H塔懸索橋,長(zhǎng)2 160 m,采用無(wú)線傳感網(wǎng)絡(luò)進(jìn)行橋梁健康信息監(jiān)測(cè),與有線通信相比,無(wú)線通信傳輸過(guò)程中的不確定因素更多,諸如空間遮擋、節(jié)點(diǎn)運(yùn)動(dòng)、信息碰撞、相鄰或相同頻段噪聲影響等等,均可能造成信號(hào)快速衰落或干擾,從而造成接收錯(cuò)誤。為克服這一不足,該系統(tǒng)采取了基于群ACK技術(shù)的CRC-16通信糾錯(cuò)技術(shù),提高監(jiān)測(cè)數(shù)據(jù)的完整性和可靠性。該文將重點(diǎn)結(jié)合某工程案例,研究分析通信糾錯(cuò)技術(shù),旨在為橋梁信息無(wú)線傳感通信應(yīng)用提供技術(shù)參考。
1 糾錯(cuò)控制的必要性
泰州大橋結(jié)構(gòu)健康監(jiān)測(cè)系統(tǒng)是一個(gè)橋梁狀態(tài)信息實(shí)時(shí)監(jiān)測(cè)平臺(tái),在接收需要信息后,能及時(shí)進(jìn)行信息處理,例如光譜分析、能譜分析等,準(zhǔn)確及時(shí)地給出預(yù)警。信息分析處理必須保證所提供的信息數(shù)據(jù)的一致性,但是案例中工程地址環(huán)境惡劣,存在諸多不確定因素。此外,無(wú)線傳感器節(jié)點(diǎn)和基站之間的通信距離約為1 300 m,盡管射頻放大器配置滿足該距離要求,但通信距離越長(zhǎng),傳輸?shù)牟淮_定影響因素就越多,采用糾錯(cuò)控制系統(tǒng)加強(qiáng)和保證通信的有效性和可靠性非常必要。
2 糾錯(cuò)控制技術(shù)簡(jiǎn)介
編碼是糾錯(cuò)控制技術(shù)的核心,其基礎(chǔ)是計(jì)算獲取待發(fā)送信息的碼元序列,在相互獨(dú)立的碼元序列基礎(chǔ)上,按照一定的關(guān)聯(lián)性或規(guī)律性生成校驗(yàn)碼,接收器根據(jù)相同的規(guī)則進(jìn)行計(jì)算,并將其與所接收的校驗(yàn)碼進(jìn)行比較,如果不同,則傳輸?shù)男畔⒋a元存在錯(cuò)誤。此方法一般將若干冗余碼元稱為監(jiān)督碼,按照一定的規(guī)則插入到原信息碼序列中,構(gòu)成全新的碼元序列。糾錯(cuò)控制編碼往往可以將誤碼率降低若干個(gè)數(shù)量級(jí),但是引入監(jiān)督碼元會(huì)影響信息通信效率。數(shù)據(jù)通信中經(jīng)常使用的糾錯(cuò)控制技術(shù)有3種。
2.1 前端糾錯(cuò)(FEC)模式
前端糾錯(cuò)(FEC)模式的通信系統(tǒng)見圖1。信源發(fā)生二進(jìn)制信息碼,糾錯(cuò)碼編碼器按照一定的規(guī)則對(duì)其增加冗余,形成具有更高比特率的信息碼。接收端的糾錯(cuò)碼解碼器通過(guò)冗余規(guī)則,測(cè)量判別所接收信息碼的準(zhǔn)確性,如發(fā)現(xiàn)錯(cuò)誤所在位置,從而實(shí)現(xiàn)前端糾錯(cuò)功能。
FEC模式的優(yōu)勢(shì)是無(wú)須重復(fù)傳輸。對(duì)于接收到的碼元序列,接收端可以檢測(cè),從而實(shí)現(xiàn)實(shí)時(shí)自動(dòng)糾錯(cuò)功能。為提高糾錯(cuò)能力,須附加冗余碼元,其碼元增加量往往占到傳輸碼元量的15%~50%,且糾錯(cuò)編碼多比較復(fù)雜,所以對(duì)編解碼系統(tǒng)的要求比較高,功耗當(dāng)然就比較大。FEC方式一般在低速率、單工通信傳輸中比較常用[1]。
2.2 自動(dòng)請(qǐng)求重發(fā)(ARQ)模式
自動(dòng)請(qǐng)求重發(fā)意味著發(fā)送方發(fā)送一個(gè)可以檢測(cè)錯(cuò)誤的元碼序列,其編碼方法主要包括:在數(shù)據(jù)包末尾添加校驗(yàn)碼,接收解碼器根據(jù)規(guī)則和所收到的信息進(jìn)行解碼和校驗(yàn)。如果解碼校驗(yàn)等于數(shù)據(jù)包自帶的校驗(yàn),接收數(shù)據(jù)正確,則返回確認(rèn)無(wú)錯(cuò)信號(hào);否則會(huì)發(fā)有錯(cuò)信號(hào),請(qǐng)求重新發(fā)送數(shù)據(jù)。
ARQ模式傳輸?shù)拇a元序列僅需要有檢錯(cuò)碼元,冗余碼元量大大降低。與FEC模式糾錯(cuò)相比,解碼更簡(jiǎn)單,硬件資源需求儉省,但發(fā)送方和接收方都需要配置緩存器來(lái)準(zhǔn)備數(shù)據(jù)重傳接收,重傳也會(huì)在一定程度上帶來(lái)通訊延遲問題。
2.3 混合糾錯(cuò)(HEC)模式
HEC模式是在FEC模式和ARQ模式的基礎(chǔ)上,結(jié)合兩者的優(yōu)缺點(diǎn),適應(yīng)環(huán)境的組合模式。當(dāng)信道環(huán)境較好、傳輸錯(cuò)誤較少時(shí),F(xiàn)EC模式可以實(shí)現(xiàn)前端糾錯(cuò);當(dāng)信道干擾比較大且傳輸錯(cuò)誤較多時(shí),HEC模式改為自動(dòng)重傳請(qǐng)求。發(fā)射機(jī)發(fā)送的是有一定糾錯(cuò)能力和強(qiáng)檢錯(cuò)能力的碼,因此信道編碼的額外監(jiān)督碼元并不多。當(dāng)接收端檢測(cè)到數(shù)據(jù)流時(shí),F(xiàn)EC子系統(tǒng)在發(fā)現(xiàn)錯(cuò)誤時(shí)自動(dòng)糾錯(cuò),只有當(dāng)有很多錯(cuò)誤超出糾錯(cuò)能力時(shí),才發(fā)回反饋信息請(qǐng)求重傳,從而大大減少了重傳次數(shù)。
3 CRC-16通信糾錯(cuò)技術(shù)
案例橋梁健康監(jiān)測(cè)系統(tǒng)的信息發(fā)送方和接收方都具備冗余循環(huán)校驗(yàn)(CRC)功能,具體見圖2所示。每一次編碼發(fā)送,都要配合一次CRC校驗(yàn)碼計(jì)算。完成了幀頭和負(fù)載發(fā)送后,芯片會(huì)將計(jì)算出的校驗(yàn)碼附加到傳輸碼元中。接收端每接收一個(gè)碼元字節(jié),也要配合一次CRC校驗(yàn)碼。接收后,通過(guò)比較計(jì)算所得校驗(yàn)值和接收數(shù)據(jù)包自帶的最后2個(gè)校驗(yàn)碼,判別所接收數(shù)據(jù)是否準(zhǔn)確。編解碼采用CRCITT標(biāo)準(zhǔn),校驗(yàn)計(jì)算多項(xiàng)式如下[2]:
CRC-16擁有很強(qiáng)的傳輸檢錯(cuò)性能,能夠檢測(cè)所有的雙錯(cuò)、單錯(cuò)和奇數(shù)位錯(cuò)誤,所有≤16位的傳輸錯(cuò)誤能夠全部被檢出,17位和18位傳輸錯(cuò)誤的檢出率也分別可達(dá)99.997%和99.998%。圖3顯示的是一個(gè)16進(jìn)制的數(shù)據(jù)包,其中包括幀頭與負(fù)載。
CRC-16通信技術(shù)集成支持IEEE802.15.4協(xié)議。其在RF230和CRC2420射頻芯片所提供的編解碼性能基礎(chǔ)上,能夠簡(jiǎn)單剔除所檢測(cè)到的錯(cuò)誤信息,保證接收數(shù)據(jù)的準(zhǔn)確性。另外CRC盡管有很強(qiáng)的檢錯(cuò)能力,但是對(duì)數(shù)據(jù)傳輸中的位移差錯(cuò)不夠敏感,存在傳輸過(guò)程丟失字節(jié)的現(xiàn)象。此錯(cuò)誤多是發(fā)送端準(zhǔn)備檢錯(cuò)碼序列之前形成的,所以接收端除需要提供CRC檢錯(cuò)外,還需要具備對(duì)MAC幀頭的標(biāo)志位正確性的驗(yàn)證能力。
橋梁健康監(jiān)測(cè)系統(tǒng)對(duì)數(shù)據(jù)傳輸?shù)耐暾院蜏?zhǔn)確性要求很高,這要求檢測(cè)系統(tǒng)必須具備較強(qiáng)的識(shí)別和處理錯(cuò)誤數(shù)據(jù)包的能力。
BCH循環(huán)碼見表1所示,k表示實(shí)際可以使用的有效數(shù)據(jù)比特?cái)?shù),t表示可以糾正的錯(cuò)誤比特?cái)?shù),n代表數(shù)據(jù)包長(zhǎng)度。查表可以看出,如果數(shù)據(jù)包127位,對(duì)隨機(jī)發(fā)生的10位錯(cuò)誤進(jìn)行糾正,那么有效數(shù)據(jù)位則僅有64位,整個(gè)數(shù)據(jù)包幾乎一半被冗余糾錯(cuò)碼所占據(jù)。另外,糾錯(cuò)碼還需要進(jìn)行接收解碼,這無(wú)疑會(huì)增加CPU的負(fù)荷。顯示前向糾錯(cuò)編碼雖然對(duì)于信道傳輸中的雙錯(cuò)和單錯(cuò)糾錯(cuò)有效,但是對(duì)于硬件資源有限或注重糾正傳輸過(guò)程中多位突發(fā)性錯(cuò)誤的監(jiān)測(cè)系統(tǒng)則適用性不足[3]。
其次,1EEE802.15.4協(xié)議確認(rèn)支持(ACK)機(jī)制。發(fā)送一幀數(shù)據(jù)后,發(fā)送方開始等待接收方返回確認(rèn)信息。在一定時(shí)間內(nèi)如果沒有收到確認(rèn)信息,將重新發(fā)送。雖然這樣做增強(qiáng)了通信數(shù)據(jù)的可靠性,但信道利用率較低。同時(shí)考慮到當(dāng)無(wú)線傳感器節(jié)點(diǎn)接收到傳輸信令時(shí),緩沖區(qū)中可能存在多個(gè)數(shù)據(jù)包在等待發(fā)送,因此在一個(gè)輪詢過(guò)程中可能會(huì)形成有多個(gè)數(shù)據(jù)包同時(shí)等待或發(fā)送的情況。但ACK模式對(duì)克服上述情況具有技術(shù)優(yōu)勢(shì)。當(dāng)無(wú)線傳感器節(jié)點(diǎn)接收到基站發(fā)送的輪詢信令時(shí),會(huì)檢測(cè)緩沖區(qū)中是否存在等待發(fā)送的數(shù)據(jù),如果存在,則依次發(fā)送緩沖區(qū)中的數(shù)據(jù)。在每次傳輸之后,不需要等待來(lái)自基站的確認(rèn)回復(fù)。傳輸完成后發(fā)出結(jié)束信息,再等待來(lái)自基站的確認(rèn)信息。
ACK數(shù)據(jù)中包含基站在這次輪詢中接收的所有數(shù)據(jù)包及其計(jì)數(shù),根據(jù)該信息,無(wú)線傳感器節(jié)點(diǎn)檢查是否有已經(jīng)發(fā)送但沒有被正確接收的數(shù)據(jù)包。如果存在,將重新發(fā)送,并且發(fā)送完成后仍然會(huì)有一個(gè)結(jié)束信息。ACK要求無(wú)線傳感器節(jié)點(diǎn)在發(fā)送數(shù)據(jù)后,將發(fā)送的數(shù)據(jù)在緩沖區(qū)中存儲(chǔ)一段時(shí)間,以便為再次發(fā)送做準(zhǔn)備。緩沖區(qū)釋放設(shè)計(jì)是在收到新輪詢信號(hào)后,將上一輪詢所發(fā)送的緩存數(shù)據(jù)包清空。
基于群ACK模式所改進(jìn)的通信控制協(xié)議跟簡(jiǎn)單輪詢通信協(xié)議的區(qū)別在于,前者由定時(shí)器中斷觸發(fā)器控制基站輪詢信息的發(fā)送周期,雖然后者也有超時(shí)等待定時(shí)器,當(dāng)定時(shí)器觸發(fā)中斷時(shí),也會(huì)向下一個(gè)節(jié)點(diǎn)輪詢,但更多的時(shí)候,是基站根據(jù)所收到的結(jié)束信息而啟動(dòng)輪詢下一個(gè)節(jié)點(diǎn)。
4 實(shí)驗(yàn)比較
通信控制就是對(duì)信道干擾、能耗、時(shí)效、糾錯(cuò)等因素進(jìn)行優(yōu)化調(diào)控,實(shí)現(xiàn)更優(yōu)化通信狀態(tài)的控制實(shí)施過(guò)程。隨著信道質(zhì)量的降低和通信干擾的增加,通信過(guò)程中出錯(cuò)的概率相應(yīng)增加,糾錯(cuò)控制的難度也會(huì)對(duì)應(yīng)增加。要維持相應(yīng)的正確率,系統(tǒng)的能量消耗必然相應(yīng)增加。其間通信的往復(fù)率也會(huì)對(duì)應(yīng)增加,系統(tǒng)通信的實(shí)時(shí)性就會(huì)有所降低。
與簡(jiǎn)單的錯(cuò)誤檢測(cè)和丟包處理相比,群ACK機(jī)制尋求盡量恢復(fù)因?yàn)橥ㄐ鸥蓴_、信道衰落等原因?qū)е碌腻e(cuò)誤包,以增加通信的準(zhǔn)確性和可靠性。案例檢測(cè)系統(tǒng)是個(gè)實(shí)時(shí)在線的橋梁健康狀態(tài)檢測(cè)系統(tǒng),傳感器實(shí)時(shí)采集的數(shù)據(jù)是及時(shí)預(yù)警的基礎(chǔ)。群ACK機(jī)制只是追求在有限的時(shí)間內(nèi)盡力獲得數(shù)據(jù),而不追求極限糾錯(cuò)控制,由于及時(shí)獲取當(dāng)前數(shù)據(jù)比正確獲得過(guò)去某個(gè)時(shí)段或時(shí)點(diǎn)數(shù)據(jù)的意義更大,所以群ACK機(jī)制更注重時(shí)效性與容錯(cuò)性之間的折中設(shè)計(jì)。
在實(shí)驗(yàn)中,我們利用1個(gè)無(wú)線感受器節(jié)點(diǎn)和1個(gè)基站,模擬案例大橋狀態(tài)實(shí)時(shí)監(jiān)測(cè)中的數(shù)據(jù)傳輸糾錯(cuò)控制問題。以最小的發(fā)射功率發(fā)送傳感器節(jié)點(diǎn)數(shù)據(jù),同信道的另1個(gè)感受器節(jié)點(diǎn)連續(xù)發(fā)送干擾信號(hào)。傳感器節(jié)點(diǎn)加入不同的衰減器,其他條件保持不變?;谌篈CK輪詢通信機(jī)制、簡(jiǎn)單的錯(cuò)誤檢測(cè)和丟包處理模式,比較各種狀態(tài)下基站接收數(shù)據(jù)的完整性。試驗(yàn)結(jié)果具體見圖4所示。
丟包率曲線比較顯示,在相同的信道環(huán)境、發(fā)射功率、干擾狀態(tài)以及相同衰減器下,群ACK的輪詢傳輸機(jī)制與簡(jiǎn)單的檢錯(cuò)和丟包處理相比,提高了傳感器數(shù)據(jù)的丟包率。當(dāng)衰減比較小時(shí),兩者的丟包率都較低,特別是使用群ACK機(jī)制,丟包率幾乎可以保持為零。隨著衰減的增加,兩種設(shè)備的丟包率相應(yīng)增加,但是相比直接檢錯(cuò)丟包,群ACK的性能還是存在明顯提升。當(dāng)衰減較大時(shí),群ACK的改善功效減弱。
通過(guò)檢查由傳感器節(jié)點(diǎn)接收的數(shù)據(jù)的完整性,基站計(jì)算由節(jié)點(diǎn)發(fā)送的數(shù)據(jù)包中未被正確接收的比例。這里的丟包率是傳感器數(shù)據(jù)包的丟包率,而不是節(jié)點(diǎn)發(fā)送的所有數(shù)據(jù)包,所以不包括結(jié)束信息。此丟包率也可能是因?yàn)楣?jié)點(diǎn)長(zhǎng)時(shí)間沒有收到輪詢信號(hào),緩存中的數(shù)據(jù)被蓋覆導(dǎo)致的,因此丟包率也與節(jié)點(diǎn)靈敏度和基站發(fā)射功率相關(guān)。
5 結(jié)語(yǔ)
該文主要研究了橋梁工程無(wú)線通信中的糾錯(cuò)控制技術(shù),闡述了糾錯(cuò)控制的必要性,介紹了3種采用的糾錯(cuò)控制技術(shù)以及案例所應(yīng)用的基于群ACK輪詢技術(shù)的CRC-16通信糾錯(cuò)技術(shù)。通過(guò)錯(cuò)誤檢測(cè)及丟包處理功效比較,結(jié)果顯示該技術(shù)可以有效提高無(wú)線數(shù)據(jù)通信的可靠性。
參考文獻(xiàn)
[1]徐其飛. 無(wú)線傳感器網(wǎng)絡(luò)差錯(cuò)控制技術(shù)研究[D]. 南京:南京理工大學(xué), 2008.
[2]聶秋玉. 無(wú)線傳感器網(wǎng)絡(luò)中差錯(cuò)控制和拓?fù)淇刂萍夹g(shù)研究[D]. 合肥:合肥工業(yè)大學(xué), 2006.
[3]吉林, 丁華平, 沈慶宏. 基于無(wú)線傳感器網(wǎng)絡(luò)的橋梁結(jié)構(gòu)健康監(jiān)測(cè)[J]. 南京大學(xué)學(xué)報(bào)(自然科學(xué)版), 2011(1): 19-24.