一種無線傳感網絡的語音會議系統設計
摘要:設計了一種基于ZigBee傳輸的無線傳感網絡結構的語音會議系統。每個話筒作為無線傳感網絡的一個節點,所有話筒組成一個無線傳感網絡。話筒的聲音數據通過ZigBee傳輸上傳到匯聚節點,匯聚節點再轉發到擴聲系統。此設計有效地解決傳送距離過遠和部分死角位置無法傳送的問題。
引言
在一些多人參與的會議中,尤其是大型會議,需要相當數量的話筒確保與會者的發言需求。一般做法是使用有線設備將各個話筒手拉手串聯起來,再連接到匯聚節點,最后接入音箱或者擴聲系統。當與會人員數量較大時,布線工作會非常復雜,尤其是在一些臨時會議場所,會大大提高工作量。此時如果使用無線話筒,由于話筒數量有限,無法做到人手一個話筒,既耽誤時間,也浪費人力傳遞話筒,導致會議效果較差。
而無線傳感網絡的優點剛好可以彌補了常規做法的不足,可以將每個與會者使用的話筒作為一個無線傳感網絡的節點,每個話筒通過無線傳感網絡上傳聲音數據至匯聚節點,匯聚節點再將聲音數據發送到擴聲系統。同時,由于無線傳感網絡的數據傳輸是雙向的,可以將匯聚節點發送的數據準確傳遞到每個節點,用此功能可以實現需要同聲傳譯的會議系統中。將翻譯人員使用的話筒作為一個節點加入系統中,這樣翻譯人員的聲音數據就發送到每個與會者的話筒中,與會者可以通過耳機選擇一路頻道進行收聽。由于每個節點之間是對等網絡,可以相互傳遞數據,這樣可以有效解決部分節點因為和匯聚節點相距太遠,或者有障礙物阻塞而導致無法上傳聲音信號的問題。
1 無線傳感網絡簡介和特點
無線傳感器網絡WSN(Wireless Sensor Network)是一種由傳感器節點構成的網絡,能夠實時地監測、感知、采集節點部署區的觀察者感興趣的感知對象的各種信息,并對這些信息進行處理后以無線的方式發送出去,通過無線網絡最終發送給觀察者。
無線傳感網絡有以下幾個特點:
①在無線傳感器網絡中不存在嚴格的控制中心,整個無線傳感網絡是一個對等式網絡,網絡中的每個節點都可以隨時加入或離開網絡。
②網絡的布設和展開不需要依賴于其他預設的網絡設施,節點可以通過分層協議和分布式算法協調各自的行為,節點啟動后可以快速、自動地組成一個獨立的無線網絡。
③無線傳感器網絡中沒有專門的路由設備。節點的多跳路由是由普通網絡節點完成的,每個節點既可以發送信息,又可以轉發信息,可以有效避免部分節點無法與路由通信的問題。
④無線傳感器網絡是一個動態的網絡,節點可以隨處移動,既可以因為某種原因退出網絡運行,也可以由于某種原因新加入到網絡中。網絡結構可以動態變化,非常靈活。
2 系統結構設計
系統結構圖如圖1所示。每個與會者的話筒作為無線傳感網絡的一個節點,如圖1中左邊的圓形示意圖,每個節點可以直接和匯聚節點通信,部分節點(可能因為距離過遠或者被障礙物阻擋)無法直接和匯聚節點通信,可以通過其他中間節點(圖中黑色節點)轉發而間接與匯聚節點通信,甚至經過多級子節點的路由最后到匯聚節點。

匯聚節點將子節點發送過來的聲音信號經過音頻解碼后傳輸到擴聲系統。同時,當部分會議系統需要同聲傳譯時,系統中還會存在同聲傳譯的子節點,同聲傳譯節點作為一個特殊的子節點,將翻譯數據直接發送給匯聚節點,再由匯聚節點轉發給各個子節點。子節點根據用戶的需求選擇對應的語言,受到ZigBee的帶寬限制,能支持同聲傳譯的通道數目是有限制的。
3 子節點的硬件設計
子節點的硬件設計如圖2所示。上行通道中,聲音首先經過麥克風轉換為電信號,然后進行A/D采樣,上傳給CPU再轉發給音頻編碼,編碼后回傳給CPU,最后通過無線傳輸網絡ZigBee傳送給匯聚節點;下行通道剛好相反,無線傳感網絡將匯聚節點下發的數據經過CPU給音頻解碼部分,完成解碼后CPU再次轉發給DAC進行數模轉換,最后經過信號放大以后輸出到耳麥。各個系統的節點通過電池供電,這樣可以方便每個節點的任意移動,增加系統的靈活性。

3.1 CPU、無線接收模塊和音頻編碼模塊的實現
該部分選用了美國CEL公司的MeshConnectTM系列ZICM2410模塊,其內核芯片ZICM2410是一個真正的單芯片解決方案,遵從ZigBee規范和IEEE 802.15.4標準,它由一個含有基帶MODEM的射頻收發器、硬連線的MAC和內嵌8051內核的微控制器(帶有內部Flash存儲器)組成,包括多個通用I/O引腳、定時器、UART,SPI等,以及硬件語音編解碼器。獨有的I2S/SPI/UART音頻輸入/輸出接口,結合其擴展的500 kbps或1 Mbps的無線傳輸速率,可以滿足廣大的無線語音應用。該芯片具有集成度高、外設接口豐富、功耗低的特點,工作電壓為3.3 V,非常適合無線模塊的使用,尤其是低功耗的特點,非常適合電池場景使用,方便移動。
ZICM2410芯片結構如圖3所示。在ZigBee數據速率(250 khps)下所體現出的卓越射頻性能,完全能滿足經過壓縮編碼的語音帶寬要求。C EL向客戶提供作為部分軟件庫的CEL ZigBee棧,CEL還可提供開發定制的應用程序所需要的硬件和軟件工具。

ZICM2410還具有一個集成的PCB板載天線,由于CEL的ZIC2410 IEEE 802.15.4/ZigBee收發器能提供106 dB的工業頂級鏈路預算,因此,即使沒有外部功率放大器,MeshConnect仍可以維持遠距離的無線連接(3 000ft無障礙距離),在無需外置天線的情況下能滿足一般會場的要求,進一步增加集成度,減小終端的復雜度和體積。
ZICM2410還有支持三種語音編碼解碼算法:μ-律、a-律和ADPCM,非常適合語音會議系統的需求,可以進一步提高集成度、降低功耗。此外還對外提供非常豐富的外部接口,包括UART1、UART2、I2S、SPI、22個GPIO、4路ADC和I2S接口。
3.2 上行通道系統的硬件實現
聲音首先通過麥克風轉為電信號,因為麥克風輸出的信號很小,所以要通過一放大器放大,其電路部分如圖4所示。

聲音從麥克風輸出經過C1耦合到運算放大器的負向輸入端,經過第一級反向運算放大器放大,再通過第二級反向放大器放大后通過一電阻輸出最后給ADC采樣。
其中R7、R6分壓以后向運放提供一個參考電壓,為了電壓更穩定在R6兩端之間加一濾波電容。R12、R13為麥克風提供一偏置電壓,同樣加C13、C16兩濾波電容以提高穩定性。R8、C18組成運算放大器的反饋阻抗,同時也是一低通濾波器,這樣可以有效地濾除高次諧波的混疊干擾。同樣R17、C17的效果也一樣。C14也是一個低通濾波器,濾除高次諧波的干擾。
信號經過放大后,輸出給ADC進行采樣、ADC選用ADSS8865,它是TI公司的一款低功耗、16位的ADC,在100 ksps下只有0.65 mW的功耗,非常適合電池供電場景使用,其參考電壓和模擬電壓都是3.3 V。通過SPI接口與CPU連接。其連接示意圖如圖5所示。ADC的模擬電源、數字電源、參考電壓都是電源直接輸入3.3 V。

ADC將聲音信號采樣回來以后,首先通過SPI接口發送給CPU,CPU在轉發給音頻壓縮模塊,音頻壓縮模塊編碼以后通過CPU轉發給無線發送模塊,無線發送模塊采用ZigBee協議轉發到匯聚節點。
3.3 下行通道硬件系統的實現
子節點通過ZigBee模塊接收匯聚節點的數據,經過音頻解壓后,CPU通過I2C總線通道發送給DAC進行數模轉換,最后經過功放輸出給耳機接口。DAC選用TI公司的PCM1774,PCM1774是一塊16位DAC,最高帶寬達到50 kHz,工作電壓在數字和模擬部分均為3.3 V,與CPU系統和ADC保持一個電壓供電,減小電源設計的復雜度。
PCM1774內部自帶一個功率放大模塊,可以直接輸出到一般的耳機接口,減少功放模塊的設計,進一步降低電路的復雜度。PCM1774支持SPI口和I2C總線口與控制器連接,由于CPU模塊ZICM2410只有一個SPI口已經和ADC連接,此處DAC通過CPU的I/O口模擬I2C總線與DAC連接。其連接示意圖如圖6所示。同時PCM1774需要一路系統時鐘,通過CPU的I/O口輸出直接給PCM1774。

4 子節點的軟件設計
每個子節點啟動后,首先初始化,設置本節點地址,設置默認目標節點地址是匯聚節點,然后查找能否與匯聚節點連接。如果能連接則建立鏈接,并設置本節點可以與直接與匯聚節點連接,同時設置下一站的目標地址為匯聚節點,然后準備傳輸數據,如果有數據傳輸則將數據傳輸到匯聚節點。由于每個子節點可以是動態移動的,或者受外界因素干擾等,導致子節點的通信鏈路受阻,如果沒有傳輸數據或者傳輸數據結束后,子節點再次掃描能否與匯聚節點連接,如此重復。
在掃描與匯聚節點連接過程,如果無法直接與匯聚節點連接,則嘗試與周邊節點建立鏈接,如果無法找到能到達匯聚節點的子節點,則直接返回查找匯聚節點,如此反復。
如果能找到周邊可以與匯聚節點連接的子節點,則找一個能最快到達匯聚節點的子節點建立鏈接,然后設置本節點可以到達匯聚節點,并設置到達匯聚節點需要跳躍子節點的跳數,然后設置下一節點地址,準備數據傳輸,最后判斷是否有數據傳輸。如果沒有數據傳輸則子節點是動態的,返回繼續掃描是否可以到達匯聚節點,如此循環下去。
如果有數據傳輸則判斷是上行數據還是下行數據,如果是上行數據則直接轉發至下一個站節點,如果是下行數據,則判斷是否為傳送給本機數據,如果是則進行音頻解碼最后直接輸出至DAC輸出。
由于每個子節點位置是動態的,所以在轉發完數據或者解碼輸出給DAC完成后繼續查找匯聚節點,如此反復。整個軟件流程圖如圖7所示。

5 匯聚節點和同聲傳譯節點設計
匯聚節點與子節點基本一致,只是硬件上數據轉發傳輸能力比一般子節點大,軟件上針對數據進行轉發給所有與其連接的子節點,如果是子節點上傳過來的數據則直接進行音頻解碼,最后通過DAC輸出至音箱輸入線路。同聲傳譯節點和其他子節點硬件設計上是一致的。只是在
使用過程中,如果設置為同聲傳譯節點,軟件處理上也有些細微差異。在此不做詳細展開。
結語
本文設計的系統非常適合用在一些臨時大型會議場所,無線傳感網絡可以由很多節點組成,組網結構可以隨時變化,而且節點之間也可以相互傳送數據,有效地解決傳送距離過遠和部分死角位置無法傳送問題。
本系統以集成CPU、ZigBee收發模塊和音頻編解碼的ZICM2410為核心,ZICM2410有高集成度和低功耗的特點,使得硬件電路設計非常簡單,非常適合移動的電池供電系統。
本系統隨著子節點的增加,匯聚節點的任務非常艱巨,而且對穩定性也至關重要,所以在一些子節點過多的場景,可以考慮采用多級匯聚節點方式,同時匯聚節點采用網狀相互備份方式組網,在部分匯聚節點異常情況下,可以通過其他匯聚節點來完成正常的通信。
評論