基于ZigBee的語音通信技術(shù)
ZigBee是一種低功耗、低成本的新型短距離無線通信開放性技術(shù)標(biāo)準(zhǔn)。它工作頻段靈活,使用的頻段分別為2.4 GHz、868MHz(歐洲)及915MHz(美國),均為免執(zhí)照頻段;傳輸速率為250kbps,有效傳輸距離為10~75m。通過在發(fā)射端加功率放大器還可以實(shí)現(xiàn)更遠(yuǎn)距離的通信。
本文引用地址:http://www.ex-cimer.com/article/79980.htmZigBee技術(shù)的低成本、低功耗特點(diǎn),使其廣泛地應(yīng)用到庫存管理、產(chǎn)品質(zhì)量控制、工業(yè)過程控制、災(zāi)害地區(qū)監(jiān)測(cè)、生物監(jiān)測(cè)和監(jiān)督、定位及消防安全等領(lǐng)域。雖然實(shí)現(xiàn)語音通信不是ZigBee聯(lián)盟最初的目標(biāo),但是,在許多領(lǐng)域(如消防搶險(xiǎn))中沒有語音通信功能,將使其應(yīng)用受到很大的局限。本文正是考慮到這一點(diǎn),并考慮到ZigBee理論通信速率為250 kps,實(shí)際速率也能滿足語音通信要求的情況,充分利用本方案所選的MCU的性能特性,以及很少的外圍器件,很好地實(shí)現(xiàn)了語音通信。
1 總體方案構(gòu)架
ZigBee語音通信系統(tǒng)的架構(gòu)為:以嵌入式處理器和射頻發(fā)射芯片為核心,輔以外圍的放大與濾波電路實(shí)現(xiàn)語音通信。總體框圖如圖1所示。
按功能分,主要包括以下幾部分:
語音前置放大器:主要實(shí)現(xiàn)對(duì)麥克風(fēng)接收的語音電信號(hào)進(jìn)行放大處理。
語音前置濾波器:完成對(duì)高頻電磁波的濾出,消除部分干擾,減小語音的失真。
嵌入式處理器:發(fā)送語音時(shí),完成對(duì)語音模擬電信號(hào)的采集,將其轉(zhuǎn)變?yōu)閿?shù)字信號(hào),并打包成數(shù)據(jù)幀,加上必要的幀頭,發(fā)送到射頻收發(fā)器。接收語音時(shí),讀取射頻收發(fā)器緩存器的數(shù)據(jù),并進(jìn)行D/A變換,發(fā)送到語音接收電路。
射頻收發(fā)器:完成數(shù)據(jù)的收/發(fā),接收/發(fā)送該設(shè)備的數(shù)據(jù),并將數(shù)據(jù)發(fā)送到嵌入式處理器。
語音后置濾波器:對(duì)經(jīng)過D/A變換的語音信號(hào)濾波,得到所需的語音信號(hào)。
語音后置放大器:對(duì)經(jīng)過濾波以后的語音信號(hào)放大,最后輸出到耳機(jī),實(shí)現(xiàn)最終的語音通信。
2 硬件電路實(shí)現(xiàn)
2.1 器件選型
嵌入式處理器選用ATmegal28L單片機(jī)。ATmegal28L是Atmel公司推出的低功耗、高性能MCU。其內(nèi)核為AVR,具有先進(jìn)的RISC架構(gòu),內(nèi)部具有133條功能強(qiáng)大的指令系統(tǒng),且大部分指令是單周期;具有2個(gè)8位定時(shí)器/計(jì)數(shù)器和2個(gè)具有比較/捕捉寄存器的16位定時(shí)器/計(jì)數(shù)器,2通道位數(shù)可編程PWM通道,8路10位A/D轉(zhuǎn)換器,主/從SPI串行接口,可編程串行通信接口以及片內(nèi)精確的模擬比較器等。CPU可工作在IDLE、POWERSAVE、POWERDOWN、STANDYBY等幾種省電模式。
ATmegal28L的軟件結(jié)構(gòu)也是針對(duì)低功耗而設(shè)計(jì)的,具有內(nèi)外多種中斷模式;豐富的中斷能力減少了系統(tǒng)設(shè)計(jì)中查詢的需要,可以方便地設(shè)計(jì)出中斷程序結(jié)構(gòu)的控制程序、上電復(fù)位和可編程的低電壓檢測(cè),工作電壓為2.7~5.5V。該系統(tǒng)設(shè)計(jì)可以充分利用其8路10位A/D轉(zhuǎn)換器和2通道位數(shù)可編程PWM通道,實(shí)現(xiàn)語音信號(hào)的A/D轉(zhuǎn)換和D/A轉(zhuǎn)換,從而省去獨(dú)立的A/D轉(zhuǎn)換器和D/A轉(zhuǎn)換器,且成本更加低廉,系統(tǒng)更加精簡(jiǎn),更加穩(wěn)定可靠。同時(shí),考慮到該MCU的低功耗特點(diǎn),可以使系統(tǒng)一次工作更長(zhǎng)的時(shí)間。
無線發(fā)射器選用Chipcon公司的CC2420。CC2420的主要特點(diǎn):具有2Mchips/s直接擴(kuò)頻序列基帶調(diào)制解調(diào)和250kbps的有效數(shù)據(jù)速率;適合簡(jiǎn)化功能裝置和全功能裝置操作;低電流消耗(接收19.7mA,發(fā)射17.4mA);低電源電壓要求(使用內(nèi)部電壓調(diào)節(jié)器時(shí)2.1~3.6V,使用外部電壓調(diào)節(jié)器時(shí)1.6~2.0V);可編程輸出功率;獨(dú)立的128字節(jié)發(fā)射、接收數(shù)據(jù)緩沖器;電池電量可監(jiān)控。
放大電路及濾波器電路的放大器選用LMV324。LMV324(四通道)放大器在2.7 V以下消耗的最大供電電流為1 20μA,在5V下一般只消耗100μA,較同級(jí)器件的功耗低20%,而且價(jià)格低廉,該系統(tǒng)每個(gè)沒備需要4個(gè)運(yùn)算放大器,充分利用該器件。
2.2 系統(tǒng)硬件實(shí)現(xiàn)
語音傳輸系統(tǒng)的硬件電路如圖2所示,連接麥克風(fēng)的放大器是一個(gè)簡(jiǎn)單的反向放大器。增益通過R2和R3控制(G=R3/R2);R4給麥克風(fēng)提供電壓,C1阻止直流成分輸入到放大器;R4和R5給放大器提供合適的偏置;Rll和C9構(gòu)成一個(gè)簡(jiǎn)單的一級(jí)低通濾波器。另外,R5可以在放大器輸出短路的情況下,對(duì)放大器起保護(hù)作用。語音接收電路由5級(jí)低通Chebychev濾波器和1級(jí)電壓跟隨器構(gòu)成。濾波器電路由兩個(gè)相互交錯(cuò)的2級(jí)Chebychev濾波器(R6、R7、R8、C2、C5和R8、R9、R10、C3、C6)和一個(gè)無源濾波器(R10,C7)構(gòu)成。這3個(gè)濾波器的截止頻率彼此稍微有點(diǎn)錯(cuò)位,這樣可以限制整個(gè)濾波電路通帶的紋波。整個(gè)電路的截止頻率設(shè)置在4000Hz,電壓跟隨器用來防止電路從輸出獲得反饋。
3 軟件實(shí)現(xiàn)
3.1 發(fā)送端軟件實(shí)現(xiàn)
發(fā)送端軟件主要完成語音電壓信號(hào)的模/數(shù)轉(zhuǎn)換,并將數(shù)據(jù)按照ZigBee協(xié)議規(guī)定的最大幀長(zhǎng)度打包。本系統(tǒng)采取每幀84字節(jié),并按照用戶要求發(fā)送到特定網(wǎng)絡(luò)設(shè)備。ATmegal28L的主頻是8 MHz,ADC時(shí)鐘采取64分頻,每次轉(zhuǎn)換需要13個(gè)ADC周期,完成一次轉(zhuǎn)換需要112μs;采用單次轉(zhuǎn)換模式,如果按照8 kHz采樣,則每次采樣時(shí)間是125μs;采用定時(shí)器T/C1,則每到125μs產(chǎn)生一次中斷,并在中斷處理程序中讀取A/D轉(zhuǎn)換的值,同時(shí)啟動(dòng)下一次轉(zhuǎn)換。發(fā)送端程序流程如圖3所示。
3.2 中間層軟件實(shí)現(xiàn)
發(fā)送端獲取了A/D轉(zhuǎn)換的結(jié)果,并存儲(chǔ)于所開設(shè)的緩存中;中間層在發(fā)送數(shù)據(jù)時(shí),將存于緩存的數(shù)據(jù)按照ZigBee協(xié)議規(guī)定的格式,加上網(wǎng)絡(luò)層MAC層和物理層的幀頭,將數(shù)據(jù)通過SPI總線發(fā)送到射頻發(fā)射芯片的發(fā)送FIFO中。ZigBee設(shè)備有兩種尋址方式,分別通過64位的IEEE地址和16位的網(wǎng)絡(luò)地址來尋找網(wǎng)絡(luò)設(shè)備。一般來說,IEEE地址是固定的,而網(wǎng)絡(luò)地址則是在組網(wǎng)時(shí)隨機(jī)分配的。因此要對(duì)特定設(shè)備通信,必須用IEEE地址,但是在進(jìn)行語音通信時(shí),為了簡(jiǎn)化傳輸數(shù)據(jù),一般采用16位網(wǎng)絡(luò)地址尋址。這就需要在第一次通信時(shí)知道IEEE地址的前提下,獲取設(shè)備的網(wǎng)絡(luò)地址;以后采用網(wǎng)絡(luò)地址通信。這部分工作通過Chipcon的ZigBee協(xié)議棧實(shí)現(xiàn)。程序功能實(shí)現(xiàn)流程如圖4所示。接收數(shù)據(jù)時(shí),首先射頻發(fā)射芯片監(jiān)聽信道中的數(shù)據(jù),通過判斷數(shù)據(jù)是否發(fā)送該設(shè)備。如果是,則讀取該數(shù)據(jù)到接收FIFO,然后觸發(fā),通過SPI總線將數(shù)據(jù)發(fā)送到MCU;通過MCU處理,去掉各層的幀頭,最后將數(shù)據(jù)存放到指定的緩存區(qū)中。
3.3 接收端軟件實(shí)現(xiàn)
接收端需要把數(shù)字語音信號(hào)還原為模擬信號(hào)。該系統(tǒng)充分利用MCU的功能,不采用分離的D/A器件,而是利用MCU的PWM功能,輔之外圍的5級(jí)Cheychey濾波器實(shí)現(xiàn)D/A變換。MCU時(shí)鐘頻率是8MHz,采用T/C2的8位快速PWM模式,每次PWM需要256個(gè)系統(tǒng)時(shí)鐘周期。在系統(tǒng)時(shí)鐘頻率為8MHz的情況下,PWM的頻率接近32kHz,采用與發(fā)送端相同時(shí)間的定時(shí)中斷,從而達(dá)到收發(fā)同步。用T/C3定時(shí)器,在125μs產(chǎn)生一次中斷,并在中斷處理程序中,將接收到的值發(fā)送到OCR2,發(fā)送到語音接收電路的濾波電路,實(shí)現(xiàn)濾波、放大,最后實(shí)現(xiàn)語音通信。在接收端開設(shè)兩個(gè)緩存區(qū),交替存儲(chǔ)發(fā)送端的語音幀數(shù)據(jù)。接收端程序流程如圖5所示。
3.4 主從模式轉(zhuǎn)換
以上分析的是主從模式。要進(jìn)行兩個(gè)模式的切換,只需要通過按鍵,并控制不同的寄存器初始化,即可實(shí)現(xiàn)模式的切換。
4 結(jié) 論
通過測(cè)試驗(yàn)證。該系統(tǒng)可以很好地實(shí)現(xiàn)實(shí)時(shí)語音短距離無線傳輸。該系統(tǒng)硬件簡(jiǎn)單,沒有使用分離的A/D及D/A器件,使得成本更加低廉.功耗更低;同時(shí)由于ZigBee技術(shù)本身的低功耗、低成本特性,使得該系統(tǒng)在僅用電池供電的情況下,可以一次工作很長(zhǎng)時(shí)間。將ZigBee應(yīng)用于消防、安全監(jiān)控領(lǐng)域,能夠提供更加方便、準(zhǔn)確的服務(wù)。
濾波器相關(guān)文章:濾波器原理
pwm相關(guān)文章:pwm是什么
pa相關(guān)文章:pa是什么
濾波器相關(guān)文章:濾波器原理
數(shù)字通信相關(guān)文章:數(shù)字通信原理
通信相關(guān)文章:通信原理
低通濾波器相關(guān)文章:低通濾波器原理
評(píng)論