主頁(http://www.130131.com):VoIP在樓宇對講系統(tǒng)應(yīng)用中的設(shè)計 這個方案有個缺陷就是基本上沒有視頻處理模塊!以后我們會使用i.mx系列擴(kuò)展一個比較完善的VOIP系統(tǒng) 1 引言 VoIP(Voice over Internet Protocol)技術(shù)利用IP網(wǎng)絡(luò)傳輸語音數(shù)據(jù),降低了語音和數(shù)據(jù)的通信成本,是語音通信領(lǐng)域中快速崛起的新興技術(shù)本文介紹了一種基于IP的智能小區(qū)對講系統(tǒng),是國內(nèi)首次將VoIP技術(shù)應(yīng)用在智能小區(qū)領(lǐng)域。該系統(tǒng)由門口機(jī)、用戶機(jī)和管理機(jī)構(gòu)成,之間用以太網(wǎng)相連接。語音信號進(jìn)行數(shù)字化、壓縮處理后轉(zhuǎn)換為IP數(shù)據(jù)包在IP網(wǎng)絡(luò)上進(jìn)行傳輸,是一個全雙工的實時語音傳輸與處理系。文章分別介紹了該系統(tǒng)的硬件結(jié)構(gòu)和軟件實現(xiàn)方法。隨著科學(xué)技術(shù)的發(fā)展,人們對居住環(huán)境的安全性、舒適性、方便性提出了更高的要求,智能化住宅小區(qū)建設(shè)在我國得到了很快的發(fā)展。在很多新建的中高檔住宅小區(qū)中,寬帶直接深入到各家各戶,基于IP網(wǎng)絡(luò)的各種應(yīng)用開始起步。本文成功研制了基于IP的智能小區(qū)對講系統(tǒng),是國內(nèi)首次將VoIP技術(shù)應(yīng)用在智能小區(qū)對講領(lǐng)域。與傳統(tǒng)的基于模擬線路的對講系統(tǒng)相比,本系統(tǒng)具有以下特點: 1) 功能擴(kuò)容和技術(shù)升級非常方便:在統(tǒng)一的IP網(wǎng)絡(luò)平臺上可方便實現(xiàn)功能擴(kuò)容如視頻傳輸、消息發(fā)布、遠(yuǎn)程監(jiān)控管理等多種擴(kuò)展服務(wù)功能,無需架設(shè)新的線路,適應(yīng)了當(dāng)代信息技術(shù)迅猛發(fā)展的要求。 2) 布線方便:本系統(tǒng)直接應(yīng)用在現(xiàn)有的寬帶網(wǎng)絡(luò)平臺上,極大方便了居民和物業(yè)管理人員。 3) 開放兼容的互連標(biāo)準(zhǔn):采用標(biāo)準(zhǔn)的TCP/IP協(xié)議,可實現(xiàn)與其他支持TCP/IP協(xié)議的產(chǎn)品互連,因此有更好的商業(yè)前景。 2 系統(tǒng)概述 整個系統(tǒng)由門口機(jī)、用戶機(jī)和管理機(jī)構(gòu)成。小區(qū)內(nèi)每個住戶都裝有一個用戶機(jī)。門口機(jī)裝在樓棟下,主要負(fù)責(zé)相應(yīng)門棟的門禁,客人來訪時可以通過門口機(jī)呼叫用戶機(jī)以驗證身份,用戶可遠(yuǎn)程打開門棟口的電鎖。管理機(jī)位于小區(qū)的管理中心,可接受來自用戶機(jī)和門口機(jī)的呼叫。管理機(jī)也可以主動呼叫用戶機(jī)。門口機(jī)、用戶機(jī)和管理機(jī)由以太網(wǎng)(Ethernet)連在一起。 用戶機(jī)、門口機(jī)和管理機(jī)都具有全雙工語音通話功能。語音信號是模擬信號,要用IP方式來傳輸該信號,必須先經(jīng)過模數(shù)轉(zhuǎn)換,為了減輕網(wǎng)絡(luò)的負(fù)載,還要進(jìn)行壓縮處理;反過來先要進(jìn)行解壓縮,再轉(zhuǎn)換成模擬信號還原成原來的聲音。 3 硬件設(shè)計 每個網(wǎng)絡(luò)節(jié)點(用戶機(jī)、門口機(jī)和管理機(jī))的語音模塊具有相同的硬件結(jié)構(gòu)。 要實現(xiàn)雙向通話,每個節(jié)點包括了語音輸入通道和語音輸出通道。 為了簡化硬件設(shè)計,我們選擇了TI公司的一款型號為TLV320AIC10的轉(zhuǎn)換芯片,該芯片具有模數(shù)、數(shù)模雙向轉(zhuǎn)換能力,并在芯片內(nèi)部集成了信號的前置放大與濾波功能。TLV320AIC10的線性轉(zhuǎn)換精度可以達(dá)到16位,可設(shè)置LV320AIC10的配置控制字,以實現(xiàn)對采樣、增益等特性的動態(tài)配置[3]。 語音編碼解碼芯片我們選用DVSI公司的AMBE2000的芯片,該芯片采用AMBE語音編碼算法,進(jìn)行實時、全雙工的音頻壓縮/解壓縮,在較高的壓縮率下仍能提供比較好的語音質(zhì)量。AMBE2000還具有回聲消除、靜音檢測和插入舒適噪聲等功能。另外AMBE2000具有音頻數(shù)據(jù)前向校錯的功能(FEC,F(xiàn)orward Error Correction)、對語音數(shù)字通道中所出現(xiàn)的有限量錯誤能進(jìn)行自動校正[2]。 以太網(wǎng)接入模塊的核心器件是IP2K網(wǎng)絡(luò)微處理器,IP2K內(nèi)含全雙工串化器解串器(Ser/Des)硬件功能,能直接與各種常用網(wǎng)絡(luò)接口相連。IP2K內(nèi)置了10Base-T以太網(wǎng)媒體訪問控制層(MAC)和物理層(PHY)[4]。IP2K完成語音數(shù)據(jù)的打包、解包功能和其他IP網(wǎng)絡(luò)接口協(xié)議。 從麥克風(fēng)進(jìn)來的語音信號是300Hz~3,300Hz的模擬信號,ADC采樣頻率為8khz,其輸出的數(shù)據(jù)速率為8×16bit=128Kbps。AMBE2000輸出編碼速率為2.4~9.6kb/s。 由于門口機(jī)具有話筒免提的特性,要求揚聲器輸出較大的音量,麥克風(fēng)需較高的靈敏度,這樣揚聲器發(fā)出的聲音很容易進(jìn)入麥克風(fēng)造成回聲。為解決這一問題,本設(shè)計了啟用了AMBE2000的回聲消除功能,在很大程度上降低了回聲。 4 軟件設(shè)計 當(dāng)兩個網(wǎng)絡(luò)節(jié)點之間要進(jìn)行通話時,需要會話管理協(xié)議來建立、管理和結(jié)束會話(Session),以及語音傳輸協(xié)議來傳輸語音數(shù)據(jù)包。 4.1 會話管理協(xié)議 SIP協(xié)議(Session Initiation Protocol,會話發(fā)起協(xié)議),是用于多媒體通信的應(yīng)用層控制(信令)協(xié)議,相比H.323協(xié)議而言,具有擴(kuò)展容易,比較簡單等特點[1] [5]。考慮到本系統(tǒng)嵌入式、結(jié)構(gòu)簡單的特性,我們部分地參照了SIP 協(xié)議。 呼叫前節(jié)點A處于空閑(Idle)狀態(tài)。當(dāng)節(jié)點A要呼叫節(jié)點B時,A向B發(fā)出Invite請求信令并進(jìn)入Inviting狀態(tài)。當(dāng)B也處于Idle狀態(tài)時,則返回Ack_Ringing應(yīng)答信令表示正在響鈴?fù)瑫rB進(jìn)入Being_Invited狀態(tài)。當(dāng)B提起話筒后,B返回Ack_Invite_OK信令,A收到后返回Ack_Invite_Resure再次應(yīng)答確認(rèn),表示會話建立成功,A和B進(jìn)入Talking狀態(tài),開始傳輸語音數(shù)據(jù)。這樣,經(jīng)歷了三次握手,以保證會話的可靠建立。 當(dāng)A或B掛斷時,掛斷方發(fā)出Bye請求,另一方返回Ack_Bye_OK應(yīng)答,A和B進(jìn)入Idle狀態(tài)。 注:當(dāng)A向B發(fā)出Invite請求時B不處于Idle狀態(tài),B則返回ACK_Busy,A收到后提示對方正忙并返回到Idle狀態(tài)。在A撥號后沒接通電話就掛機(jī),A發(fā)出Cancel信令,B返回Ack_Cancel_OK, A和B返回到Idle狀態(tài)。 為保證會話建立的可靠性,設(shè)計中使用了定時器機(jī)制,充分考慮數(shù)據(jù)包丟失的情況。例如當(dāng)A發(fā)出一個需要應(yīng)答的請求信令一段時間后還沒收到應(yīng)答,則說明A發(fā)出的請求數(shù)據(jù)包或B返回的應(yīng)答數(shù)據(jù)包丟失,A會再次發(fā)送請求信令,如果發(fā)送三次仍未收到應(yīng)答,A端報告網(wǎng)絡(luò)故障并自動進(jìn)入某一狀態(tài)。這樣保證了狀態(tài)機(jī)工作不會紊亂。 4.2 語音傳輸協(xié)議 會話建立后,開始進(jìn)行語音數(shù)據(jù)的傳輸。實時傳輸協(xié)議(Realtime Transport Protocol,RT P)可提供實時數(shù)據(jù)的端到端傳輸,如音頻、視頻和非實時應(yīng)用數(shù)據(jù)[1] [6]。 RTP協(xié)議建立在UDP協(xié)議之上。根據(jù)順序編號和時間戳,舍棄因網(wǎng)絡(luò)阻塞等原因?qū)е孪缺话l(fā)出卻后到達(dá)的數(shù)據(jù)包。 AMBE2000編碼器每隔20ms輸出一幀長度為24個字長(48bytes)的數(shù)據(jù),其中前12個字長的數(shù)據(jù)包含當(dāng)前編碼速率在內(nèi)的狀態(tài)信息,后12個字長包含了語音數(shù)據(jù)。IP2K將語音數(shù)據(jù)打包上傳。同時解開收到的語音包,將語音數(shù)據(jù)連同控制信息送給AMBE2000進(jìn)行解碼處理。 4.3 根據(jù)ID查詢對應(yīng)IP 網(wǎng)絡(luò)上每個節(jié)點都有不同的IP地址,同時為了便于操作管理,每個節(jié)點都有自己的ID號。例如要呼叫12樓02室撥1202這個ID號即可。這樣一個ID對應(yīng)著一個IP。這個ID-IP映射表存儲在門口機(jī)的Flash里。每個用戶機(jī)存儲著門口機(jī)和管理機(jī)的IP地址。當(dāng)門口機(jī)呼叫用戶機(jī)時,門口機(jī)根據(jù)ID查詢到對應(yīng)的IP后向其發(fā)出呼叫請求。當(dāng)管理機(jī)呼叫用戶機(jī)時,被呼叫方的IP查詢有兩種方式,一種是向門口機(jī)查詢對應(yīng)ID的IP;另一種是通過廣播的形式查詢,網(wǎng)絡(luò)上各用戶機(jī)節(jié)點收到查詢IP的信令后與自己的ID進(jìn)行比較,若匹配返回給查詢方。通過廣播的方式,即使門口機(jī)發(fā)生故障,管理機(jī)仍可以正常呼叫用戶機(jī),提高了系統(tǒng)的健壯性。用戶機(jī)呼叫管理機(jī)只需讀出存儲在本地的管理機(jī)IP即可。 5 結(jié)論 本文成功研制出了基于IP的智能小區(qū)對講系統(tǒng)。該方案已完成全部軟、硬件的實現(xiàn)以及網(wǎng)絡(luò)的組建,并已通過初步測試,運行穩(wěn)定可靠。 (中國集群通信網(wǎng) | 責(zé)任編輯:admin) |




