摘要:為了適應(yīng)ZigBee協(xié)議在無線傳感器網(wǎng)絡(luò)中語音通信的需求,在短距離上實現(xiàn)低成本、低功耗的無線語音通訊,設(shè)計了一種基于無線射頻芯片的多媒體語音節(jié)點板的多跳語音通信節(jié)點軟件,實現(xiàn)多個節(jié)點組網(wǎng)通信、語音實時采樣和多跳中繼傳輸,通話話音質(zhì)量好,系統(tǒng)故障低、可靠性高,使其能夠在較大的范圍內(nèi)得到應(yīng)用。
關(guān)鍵詞:ZigBee協(xié)議;多跳語音通信;無線射頻芯片
引言
在物聯(lián)網(wǎng)蓬勃發(fā)展大背景下,結(jié)合多媒體網(wǎng)絡(luò)發(fā)展的應(yīng)用要求,通過嵌入式計算技術(shù)、傳感器技術(shù)、分布式信息處理技術(shù)和通信技術(shù)等研發(fā)一套基于無線傳感器網(wǎng)絡(luò)的無線多跳語音通信系統(tǒng)技術(shù),系統(tǒng)建立在802.15.4或Zigbee網(wǎng)絡(luò)基礎(chǔ)上,具有低功耗、低成本、低時延、可擴展等特點。
文章擬研究基于JN5148芯片的Zigbee語音多跳傳輸系統(tǒng)。該系統(tǒng)包括硬件部分和軟件部分。硬件部分包括基于JN5148的通信節(jié)點和語音板,軟件部分包括通信協(xié)議設(shè)計和操作系統(tǒng)。該語音通信系統(tǒng)在空曠環(huán)境下的單跳視距傳輸距離大于400米、支持多跳中繼。設(shè)計基于IEEE 802.15.4的語音通信系統(tǒng)硬件節(jié)點,用以研究短距離的無線語音通信技術(shù)。語音通信方案采用WM8510語音編解碼芯片實現(xiàn)ADC、DAC和PCM完成語音采樣及回放,用JN5148芯片實現(xiàn)無線通信和計算,該方案硬件簡單,成本低廉,超低功耗,可廣泛應(yīng)用于地面商業(yè)無線傳感器網(wǎng)絡(luò)、消防應(yīng)用、安全監(jiān)控等等。所以本設(shè)計開發(fā)具有較大的市場價值。
總體方案設(shè)計
多跳網(wǎng)絡(luò)通信

多跳(multi-hop)網(wǎng)絡(luò)通常稱之為“無線Mesh網(wǎng)絡(luò)”,或者無線網(wǎng)狀網(wǎng),它是一種與傳統(tǒng)無線網(wǎng)絡(luò)完全不同的新型無線網(wǎng)絡(luò)技術(shù)。這種網(wǎng)絡(luò)中除了發(fā)送節(jié)點和目的節(jié)點之外、還存在大量的路由中繼節(jié)點構(gòu)成骨干網(wǎng)絡(luò)。
如圖1所示,節(jié)點1是發(fā)送源節(jié)點,節(jié)點4是目的接收節(jié)點,中間的節(jié)點2和節(jié)點3都是路由節(jié)點,即起到中繼轉(zhuǎn)發(fā)數(shù)據(jù)包的作用,在這條路由上,數(shù)據(jù)包從節(jié)點1出發(fā)要經(jīng)過三跳才能到達(dá)目的節(jié)點4。因此可知,多跳網(wǎng)絡(luò)必須建立在多跳路由算法基礎(chǔ)上。
由于無線通信采用開放信道,具有廣播通信的特點,因而構(gòu)建多跳Mesh網(wǎng)絡(luò)最簡單的多跳路由算法就是多跳廣播通信技術(shù)。目前還有很多其它類型的多跳路由算法,然而它們大多數(shù)也都建立在廣播通信基礎(chǔ)之上。多跳廣播通信機制如圖2所示。
圖2中,節(jié)點a1和節(jié)點b1分別是數(shù)據(jù)包的源節(jié)點和目的節(jié)點,節(jié)點a1發(fā)送廣播數(shù)據(jù)之后,經(jīng)過節(jié)點a和節(jié)點b的兩次中繼到達(dá)目的節(jié)點b1,然而網(wǎng)絡(luò)中的其它節(jié)點1/2/3/4同樣都能夠收到這個廣播消息數(shù)據(jù)包,但是中繼節(jié)點只中繼一次,對于接收到的重復(fù)的廣播消息則予以丟棄。多跳廣播通信的缺點是會產(chǎn)生大量冗余重復(fù)的廣播消息,但它能夠快速適應(yīng)網(wǎng)絡(luò)狀態(tài)和拓?fù)涞淖兓液唵伪阌趯崿F(xiàn),因此在小型網(wǎng)絡(luò)中能夠得到廣泛應(yīng)用。本系統(tǒng)構(gòu)建的多跳語音通信網(wǎng)絡(luò)應(yīng)用需求是短距離無線語音通信,由于網(wǎng)絡(luò)規(guī)模較小,且拓?fù)湟鬃兓m合采用多跳廣播通信技術(shù)。
系統(tǒng)設(shè)計原理
系統(tǒng)采用JN5139 Soc芯片自制無線通信節(jié)點。該芯片具有中繼、自動路由、調(diào)頻等功能,片上包含了一個32位的RISC處理器,2.4GHz的IEEE802.15.4通信模塊,192KB的ROM和96KB的RAM,以及豐富的模擬和數(shù)字外設(shè)。主要外設(shè)包括SPI、UART、12C、21個GPIO、4路AD轉(zhuǎn)換器、兩個DA轉(zhuǎn)換器以及比較器、電源監(jiān)視器等。自制的無線通信節(jié)點采用兩節(jié)S號電池供電,電壓不低于2.6V,節(jié)點通信距離小于100米。系統(tǒng)節(jié)點數(shù)目為4~10個,網(wǎng)絡(luò)拓?fù)錇槎嗵鳰esh網(wǎng)絡(luò),采用多跳廣播路由通信技術(shù)。節(jié)點采用wm8510語音處理芯片進(jìn)行音頻采樣和處理,WM8510芯片是一種通用的音頻編解碼器,能夠以8kHz到48kHz的業(yè)界標(biāo)準(zhǔn)頻率采樣音頻信號,實現(xiàn)音頻信息的數(shù)模轉(zhuǎn)換,并提供了麥克輸入和揚聲器輸出。

語音壓縮編解碼技術(shù)采用ADPCM編碼技術(shù)。ADPCM算法是一種針對16bit聲音波形數(shù)據(jù)的有損壓縮算法,它將聲音流中每次采樣的16bit數(shù)據(jù)按照4bit壓縮編碼,壓縮比為1:4,編碼后語音速率降低到16kbit/s,從而降低了對系統(tǒng)帶寬的要求。
圖3展示了單個節(jié)點的組成及工作原理。
其中JN5139/JN5148SoC芯片負(fù)責(zé)系統(tǒng)初始化和運行,同時負(fù)責(zé)無線數(shù)據(jù)收發(fā)和消息多跳中繼,此外要通過I2C總線控制WM8510編解碼芯片,通過SPI總線與WM8510交換語音數(shù)據(jù),并對數(shù)字語音數(shù)據(jù)進(jìn)行壓縮編碼或解碼。WM8510芯片對輸入的模擬語音信號進(jìn)行采樣編碼,將其轉(zhuǎn)換為數(shù)字信號并通過SPI總線交給射頻芯片發(fā)送出去,同時對來自JN5139/5148的數(shù)字語音數(shù)據(jù)進(jìn)行DA轉(zhuǎn)換還原成模擬語音信號,并發(fā)送到揚聲器還原出音頻。
系統(tǒng)層次結(jié)構(gòu)
節(jié)點軟件分為三個部分,分別是組網(wǎng)與傳輸模塊、語音處理模塊及輔助模塊。其中組網(wǎng)與傳輸模塊又進(jìn)一步分為協(xié)調(diào)器/端設(shè)備的組網(wǎng)模塊、節(jié)點配對模塊以及消息中繼模塊,語音處理模塊進(jìn)一步分為ADPCM編碼模塊、WM8510驅(qū)動以及音頻管理模塊;其他模塊則包括DIO模塊以及電池監(jiān)測模塊及一些公共功能模塊等。各子模塊的功能分別為:應(yīng)用程序模塊:完成應(yīng)用層任務(wù),進(jìn)行任務(wù)喚醒和休眠調(diào)度,實現(xiàn)組網(wǎng)、配對及運行等幾個主要狀態(tài)的切換。節(jié)點組網(wǎng)模塊:完成網(wǎng)絡(luò)層功能,實現(xiàn)組網(wǎng)、消息收發(fā)、狀態(tài)查詢等任務(wù)。節(jié)點配對模塊:實現(xiàn)節(jié)點的關(guān)聯(lián)和配對,配對成功的節(jié)點進(jìn)入語音通話狀態(tài)。消息中繼模塊:實現(xiàn)消息中繼轉(zhuǎn)發(fā)功能,將消息轉(zhuǎn)發(fā)給其他節(jié)點。語音處理模塊:WM8510芯片驅(qū)動模塊:語音芯片驅(qū)動,控制芯片開啟和關(guān)閉,設(shè)置語音芯片的控制寄存器,配置采樣率和音量。ADPCM編碼模塊:對采樣后的語音數(shù)據(jù)進(jìn)行壓縮編碼,對接收到的編碼后的數(shù)據(jù)進(jìn)行解碼。音頻管理模塊:管理音頻部分,啟動和關(guān)閉語音芯片,管理緩沖區(qū)和音頻數(shù)據(jù)。功能輔助模塊:公共模塊:包含其它模塊用到的一些公用函數(shù),包括調(diào)試、休眠控制、事件以及時鐘相關(guān)的功能函數(shù)等。DIO控制模塊:配置DIO,初始化DIO。電池檢測模塊:周期性檢測電池電壓并進(jìn)行報告。
測試結(jié)果及展望
該語音通信系統(tǒng)在空曠環(huán)境下的單跳視距傳輸距離大于400米,支持多跳中繼。用JN5148芯片實現(xiàn)無線通信和計算。為適應(yīng)250Kb/s的無線傳輸速率同時保證一定的語音質(zhì)量和最小化能耗,采用JN5148芯片實現(xiàn)了軟件ADPCM壓縮算法,優(yōu)化后的ADPCM算法編、解碼時間分別為20μs和18μs,語音傳輸速率降低到16Kb/s,極大地減少了帶寬占用。中繼次數(shù)≥6時通過采用無線自動跳頻技術(shù),可提供相當(dāng)?shù)目垢蓴_能力。該系統(tǒng)在無遮蔽或遮蔽較小的條件下,可以很好地實現(xiàn)實時語音無線傳輸,發(fā)射功率小于20dBm,語音延時小于25ms,傳輸距離達(dá)到400米,音質(zhì)MOS測試分達(dá)到3分以上。
實踐表明,采用JN5148芯片實現(xiàn)了軟件ADPCM壓縮算法在ZigBee網(wǎng)絡(luò)中實現(xiàn)語音通信是一種理想的方案,這種方案必將成為ZigBee技術(shù)應(yīng)用的又一個新亮點,必將對ZigBee技術(shù)的推廣起到積極的促進(jìn)作用。