劉 源, 閆 斌, 李 智, 熊 杰
(電子科技大學(xué) 自動(dòng)化工程學(xué)院,四川 成都 611731)
?
基于WSNs的語(yǔ)音通信機(jī)制設(shè)計(jì)與實(shí)現(xiàn)
劉源, 閆斌, 李智, 熊杰
(電子科技大學(xué) 自動(dòng)化工程學(xué)院,四川 成都 611731)
摘要:針對(duì)目前無(wú)線(xiàn)傳感器網(wǎng)絡(luò)(WSNs)對(duì)語(yǔ)音傳輸?shù)牟蛔?,設(shè)計(jì)和實(shí)現(xiàn)了一種基于WSNs的無(wú)線(xiàn)語(yǔ)音通信機(jī)制。采用了結(jié)合8051CPU和RF收發(fā)器的CC2530芯片作為微處理器,CMX649作為語(yǔ)音編解碼芯片,并采用協(xié)處理器輔助CC2530對(duì)語(yǔ)音信息進(jìn)行處理,在IEEE 802.15.4協(xié)議上實(shí)現(xiàn)對(duì)語(yǔ)音的傳輸。詳細(xì)介紹了系統(tǒng)的硬件和軟件設(shè)計(jì),對(duì)通話(huà)距離與通話(huà)質(zhì)量進(jìn)行了測(cè)試。實(shí)驗(yàn)結(jié)果表明:設(shè)計(jì)的語(yǔ)音通信機(jī)制具有較遠(yuǎn)的傳輸距離,能達(dá)到較好的語(yǔ)音傳輸效果,滿(mǎn)足實(shí)際對(duì)語(yǔ)音通信的要求。
關(guān)鍵詞:無(wú)線(xiàn)傳感器網(wǎng)絡(luò); 語(yǔ)音通信; 語(yǔ)音編解碼; 通信終端
0引言
近年來(lái),基于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)(wireless sensor networks,WSNs)的語(yǔ)音傳輸研究逐漸展開(kāi)[1~7]。研究表明[8,9],WSNs能夠進(jìn)行語(yǔ)音信息的傳輸,與傳統(tǒng)語(yǔ)音對(duì)講模式相比,具有低功耗、低成本、自組織網(wǎng)絡(luò)等優(yōu)點(diǎn)。在實(shí)際當(dāng)中也能得到很好的應(yīng)用,例如:文獻(xiàn)[2]將基于WSNs的語(yǔ)音通信系統(tǒng)應(yīng)用到了煤礦通信與救援中,測(cè)試結(jié)果顯示能達(dá)到較好的語(yǔ)音通信效果。
本文設(shè)計(jì)和實(shí)現(xiàn)了一種無(wú)線(xiàn)語(yǔ)音通信機(jī)制,基于TI公司的CC2530為無(wú)線(xiàn)收發(fā)平臺(tái),CMX649作為語(yǔ)音編解碼器,并以MSP430F149為協(xié)處理器,用協(xié)處理器對(duì)丟失語(yǔ)音進(jìn)行填補(bǔ)。詳細(xì)敘述了硬件和軟件設(shè)計(jì),并對(duì)通話(huà)距離和通話(huà)質(zhì)量進(jìn)行了測(cè)試。
1系統(tǒng)總體設(shè)計(jì)
系統(tǒng)采用網(wǎng)狀拓?fù)浣Y(jié)構(gòu),如圖1所示,每個(gè)傳感器節(jié)點(diǎn)都配置語(yǔ)音處理模塊,每個(gè)節(jié)點(diǎn)既可以當(dāng)作終端設(shè)備作為語(yǔ)音通話(huà)的發(fā)起者或接收者,也可以當(dāng)作路由節(jié)點(diǎn)對(duì)語(yǔ)音數(shù)據(jù)進(jìn)行轉(zhuǎn)發(fā)。在圖1中,假設(shè)所有節(jié)點(diǎn)都位于其他節(jié)點(diǎn)的傳播半徑內(nèi),一個(gè)節(jié)點(diǎn)有多跳路徑可到達(dá)另一個(gè)節(jié)點(diǎn),當(dāng)節(jié)點(diǎn)要到達(dá)多跳距離外的節(jié)點(diǎn)時(shí),可根據(jù)路由協(xié)議尋找到最優(yōu)的路徑進(jìn)行傳輸。采用網(wǎng)狀拓?fù)淇商岣呔W(wǎng)絡(luò)的可靠性,易于網(wǎng)絡(luò)擴(kuò)展。
圖1 網(wǎng)絡(luò)拓?fù)涫疽鈭DFig 1 Network topology
2系統(tǒng)硬件設(shè)計(jì)
無(wú)線(xiàn)語(yǔ)音傳輸節(jié)點(diǎn)硬件由微處理器模塊、射頻模塊、語(yǔ)音處理模塊、協(xié)處理器模塊以及能量管理模塊組成。無(wú)線(xiàn)語(yǔ)音傳輸節(jié)點(diǎn)硬件架構(gòu)如圖2所示。
圖2 節(jié)點(diǎn)硬件架構(gòu)圖Fig 2 Architecture diagram of node hardware
1)微處理器模塊選用TI公司的CC2530芯片實(shí)現(xiàn),CC2530是一個(gè)真正的用于IEEE 802.15.4,Zig Bee和RF4CE應(yīng)用的片上系統(tǒng)解決方案,片上集成RF收發(fā)器、增強(qiáng)工業(yè)標(biāo)準(zhǔn)的8051MCU以及系統(tǒng)可編程Flash存儲(chǔ)器等,集成了RF收發(fā)器,只需在外圍加入少許簡(jiǎn)單電路即可工作,適用于工作在2.4 GHz,ISM頻段的低成本、低功耗的應(yīng)用。
在發(fā)送時(shí)微處理器主要負(fù)責(zé)從語(yǔ)音處理模塊讀取語(yǔ)音編碼數(shù)據(jù)并打包發(fā)送,在接收時(shí)主要負(fù)責(zé)接收語(yǔ)音解碼數(shù)據(jù)送數(shù)據(jù)到語(yǔ)音編解碼模塊進(jìn)行解碼、播放,其內(nèi)部微處理器統(tǒng)一協(xié)調(diào)各模塊的工作,也負(fù)責(zé)給協(xié)處理器送中斷和數(shù)據(jù)信號(hào)。
2)語(yǔ)音處理模塊包括語(yǔ)音編解碼電路、功率放大電路以及濾波電路。語(yǔ)音處理模塊選用CMX649作為語(yǔ)音編解碼芯片,具有高可靠性、容錯(cuò)性及低功耗等特點(diǎn),它不僅具有全雙工的ADM、μ律、A律和線(xiàn)性PCM的編解碼功能,也具有ADM與PCM的碼制轉(zhuǎn)換功能,具有從16~128 kbps多種編解碼數(shù)據(jù)率。
本文采用ADM的編碼方式,24 kbps的編解碼數(shù)據(jù)率,在發(fā)送時(shí),使用語(yǔ)音編碼器活動(dòng)檢測(cè)器檢測(cè)是否有語(yǔ)音信號(hào)進(jìn)入編解碼模塊,在按下通話(huà)鍵期間,只要檢測(cè)到有超過(guò)設(shè)定閾值的語(yǔ)音信號(hào)輸入,則送出一個(gè)中斷信號(hào)給微處理器模塊,微處理器模塊接收到中斷后開(kāi)始從CMX649中讀取語(yǔ)音編碼數(shù)據(jù)。在接收時(shí),無(wú)線(xiàn)收發(fā)模塊向CMX649送解碼數(shù)據(jù),CMX649對(duì)數(shù)據(jù)進(jìn)行解碼、播放,在CMX649模擬語(yǔ)音輸出端接低通濾波器和語(yǔ)音放大器,對(duì)解碼的語(yǔ)音信號(hào)進(jìn)行濾波和放大,以得到較好的語(yǔ)音信號(hào)。
3)協(xié)處理模塊選用TI公司的MSP430F149,它是一種16位超低功耗單片機(jī),具有處理能力強(qiáng)、運(yùn)算速度快、超低功耗及片內(nèi)資源豐富等特點(diǎn)。MSP430從CC2530獲取中斷信號(hào),其I/O口也連接到語(yǔ)音編解碼模塊的解碼時(shí)鐘線(xiàn)和解碼數(shù)據(jù)線(xiàn)上,通過(guò)這兩根線(xiàn)在空白段進(jìn)行語(yǔ)音填充。
節(jié)點(diǎn)實(shí)物圖如圖3所示。語(yǔ)音節(jié)點(diǎn)采用兩節(jié)5號(hào)電池供電,用麥克進(jìn)行語(yǔ)音采集,喇叭進(jìn)行語(yǔ)音播放,當(dāng)按下通話(huà)鍵后發(fā)起對(duì)語(yǔ)音的傳輸。
圖3 節(jié)點(diǎn)實(shí)物圖Fig 3 Physical map of node
3系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件設(shè)計(jì)主要分為CC2530程序設(shè)計(jì)和協(xié)處理器程序設(shè)計(jì)。
3.1CC2530程序設(shè)計(jì)
CC2530首先對(duì)板上射頻模塊和語(yǔ)音編解碼芯片進(jìn)行初始化,隨后打開(kāi)中斷并進(jìn)入接收模式,若有中斷進(jìn)入,表明本節(jié)點(diǎn)按下通話(huà)鍵并檢測(cè)到有語(yǔ)音信號(hào)輸入,則進(jìn)入發(fā)送模式,在中斷服務(wù)程序中,從語(yǔ)音編解碼模塊讀取語(yǔ)音編碼數(shù)據(jù),每讀取64字節(jié)作為一個(gè)數(shù)據(jù)包發(fā)送出去。若無(wú)中斷進(jìn)入,則循環(huán)檢測(cè)是否接收到語(yǔ)音數(shù)據(jù)包;若接收到數(shù)據(jù)包,則立即將數(shù)據(jù)包的值送入語(yǔ)音編解碼模塊進(jìn)行解碼、播放,當(dāng)送完一個(gè)數(shù)據(jù)包后,再進(jìn)行下一次語(yǔ)音數(shù)據(jù)包檢測(cè)和接收,不斷循環(huán)這個(gè)過(guò)程,完成語(yǔ)音的實(shí)時(shí)傳輸。
CC2530還需要通過(guò)I/O口給協(xié)處理器發(fā)送中斷信號(hào)。由實(shí)驗(yàn)測(cè)得,在每一個(gè)語(yǔ)音包之間會(huì)有一個(gè)由于無(wú)線(xiàn)傳輸引起的4 ms空隙,影響聽(tīng)感。由24 kbps語(yǔ)音數(shù)據(jù)率可計(jì)算得,要填補(bǔ)4 ms的語(yǔ)音空隙,需12字節(jié)語(yǔ)音數(shù)據(jù)。協(xié)處理器采用將空隙前的12字節(jié)數(shù)據(jù)填充到空隙處的方式來(lái)對(duì)語(yǔ)音空隙進(jìn)行修復(fù)。在CC2530向語(yǔ)音編解碼器送解碼數(shù)據(jù)期間,在送到第52字節(jié)時(shí),向協(xié)處理器發(fā)送一個(gè)中斷信號(hào),通知其開(kāi)始復(fù)制數(shù)據(jù)。在CC2530將一個(gè)數(shù)據(jù)包64字節(jié)的數(shù)據(jù)送完后,向協(xié)處理器發(fā)送一個(gè)中斷信號(hào),通知其開(kāi)始填補(bǔ)數(shù)據(jù),即向語(yǔ)音編解碼器寫(xiě)入復(fù)制的數(shù)據(jù)。CC2530主程序流程如圖4所示。
圖4 CC2530主程序流程圖Fig 4 Main program flow chart of CC2530
3.2協(xié)處理器程序設(shè)計(jì)
協(xié)處理器程序主要包括語(yǔ)音數(shù)據(jù)的復(fù)制和填補(bǔ)。在接收到CC2530發(fā)送的中斷信號(hào)后,協(xié)處理器首先判斷到來(lái)的是通知其復(fù)制數(shù)據(jù)的中斷還是通知其寫(xiě)解碼數(shù)據(jù)的中斷。若為通知復(fù)制數(shù)據(jù)的中斷,則用I/O口模擬CMX649解碼時(shí)鐘的時(shí)序,通過(guò)解碼數(shù)據(jù)線(xiàn)接收語(yǔ)音數(shù)據(jù),接收語(yǔ)音數(shù)據(jù)包最后12字節(jié)并存儲(chǔ);若為通知寫(xiě)解碼數(shù)據(jù)的中斷,則用I/O口模擬CMX649發(fā)送數(shù)據(jù)的時(shí)序,將保存的12字節(jié)語(yǔ)音數(shù)據(jù)寫(xiě)入CMX649中進(jìn)行語(yǔ)音數(shù)據(jù)填補(bǔ)。協(xié)處理器程序流程圖如圖5所示。
圖5 協(xié)處理器中斷程序流程圖Fig 5 Interrupt program flow chart of coprocessor
4系統(tǒng)測(cè)試與結(jié)果
4.1節(jié)點(diǎn)距離測(cè)試
為測(cè)試語(yǔ)音的有效通話(huà)距離,選擇在空曠地帶,每隔一段距離對(duì)接收到的語(yǔ)音通話(huà)質(zhì)量進(jìn)行MOS(mean opinion score)評(píng)估。由表1可知,最遠(yuǎn)距離能達(dá)到250 m。
表1 通話(huà)距離測(cè)試
4.2語(yǔ)音質(zhì)量測(cè)試
為測(cè)試本系統(tǒng)對(duì)語(yǔ)音傳輸后對(duì)原始語(yǔ)音的還原情況,將原始語(yǔ)音和一跳傳輸后接收、解碼后的語(yǔ)音波形進(jìn)行對(duì)比。如圖6所示,接收解碼后的語(yǔ)音波形如圖6(b)所示,能較好地還原如圖6(a)所示的原始語(yǔ)音波形。
圖6 原始語(yǔ)音與接收語(yǔ)音波形對(duì)比圖Fig 6 Comparison chart of original speech andreceived speech waveform
5結(jié)束語(yǔ)
本文設(shè)計(jì)實(shí)現(xiàn)了基于WSNs的語(yǔ)音通信機(jī)制,能夠達(dá)到較好的語(yǔ)音通話(huà)質(zhì)量,且傳輸距離遠(yuǎn),功耗低。通過(guò)協(xié)處理器實(shí)現(xiàn)語(yǔ)音修復(fù),大大提高了語(yǔ)音通信質(zhì)量,其應(yīng)用前景非常廣泛,可適用于各種場(chǎng)合,如消防、安全監(jiān)控、工廠等。另外本設(shè)計(jì)還有較大的拓展空間,例如:可在該系統(tǒng)上實(shí)現(xiàn)語(yǔ)音在網(wǎng)絡(luò)中的多跳傳輸,增加傳輸距離,可作為復(fù)雜環(huán)境下監(jiān)控的輔助手段。
參考文獻(xiàn):
[1]Mangharam R,Rowe A,Rajkumar R,et al.Voice over sensor networks[C]∥Proc of the 27th IEEE International Real-Time Systems Symposium,RTSS 2006,2006:291-300.
[2]尹應(yīng)鵬,李平舟,郭志華.基于CC2430的Zig Bee無(wú)線(xiàn)數(shù)傳模塊的設(shè)計(jì)和實(shí)現(xiàn)[J].電子元器件應(yīng)用,2008,10(4):18-21.
[3]徐肖肖,翟光祥,黃艷秋,等.基于Zig Bee的礦井無(wú)線(xiàn)語(yǔ)音通信系統(tǒng)探討[J].工礦自動(dòng)化,2013,39(1):99-102.
[4]馬立玲,酈會(huì),王軍政.基于Zig Bee的數(shù)話(huà)同傳技術(shù)研究[J].北京理工大學(xué)學(xué)報(bào),2011,31(3):299-302.
[5]陳海燕,張晨.Zig Bee無(wú)線(xiàn)語(yǔ)音通信組網(wǎng)技術(shù)[J].哈爾濱理工大學(xué)學(xué)報(bào),2012,17(4):68-72.
[6]李振宇,李思敏.一種移動(dòng)Ad Hoc 網(wǎng)絡(luò)中實(shí)時(shí)語(yǔ)音通信方案的研究[J].電子測(cè)量與儀器學(xué)報(bào),2009,23(5):40-45.
[7]陳彥明,王秋光.基于Zig Bee技術(shù)的音頻傳輸系統(tǒng)[J].哈爾濱理工大學(xué)學(xué)報(bào),2009,14(6):52-55.
[8]Brunelli D,Maggiorotti M,Benini L,et al.Analysis of audio streaming capability of Zig Bee networks[C]∥The Fifth European Workshop on Wireless Sensor Networks,Berlin:Springer Verlag,2008:189-204.
[9]陳弘博,封逸飛,郭先臣.基于Zig Bee網(wǎng)絡(luò)的語(yǔ)音應(yīng)急通信可行性研究[J].電子技術(shù)應(yīng)用,2009(7):109-112.
Design and implementation of voice communication mechanism based on WSNs
LIU Yuan, YAN Bin, LI Zhi, XIONG Jie
(School of Automation Engineering,University of Electronic Science and Technology of China,Chengdu 611731,China)
Abstract:Aiming at shortage of wireless sensor networks(WSNs)for voice transmission,design and implement a kind of wireless voice communication mechanism based on WSNs.Adopt CC2530 as microprocessor chip which integrates 8051 CPU and RF transceiver,uses CMX649 as speech codec chip,using coprocessor to assist CC2530 to process speech information,and realize voice transmission over procotol IEEE 802.15.4.Introduce design of hardware and software of the system in detail,and test distance and quality of voice communication.Experimental result show that this mechanism has far transmission distance,can achieve good voice transmission effect,meet the requirements of voice communication.
Key words:wireless sensor networks(WSNs); voice communication; voice codec; communication terminal
DOI:10.13873/J.1000—9787(2016)02—0097—03
收稿日期:2015—04—29
中圖分類(lèi)號(hào):TP 212
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1000—9787(2016)02—0097—03
作者簡(jiǎn)介:
劉源(1989-),男,四川廣安人,碩士研究生,研究方向?yàn)闊o(wú)線(xiàn)傳感器網(wǎng)絡(luò)。