新聞中心

EEPW首頁(yè) > 手機(jī)與無(wú)線(xiàn)通信 > 設(shè)計(jì)應(yīng)用 > 適于多種通信設(shè)備的多媒體通信終端軟件設(shè)計(jì)

適于多種通信設(shè)備的多媒體通信終端軟件設(shè)計(jì)

作者: 時(shí)間:2011-10-26 來(lái)源:網(wǎng)絡(luò) 收藏

1 概述

本文引用地址:http://butianyuan.cn/article/155591.htm

  應(yīng)急技術(shù)是綜合利用現(xiàn)有方式,實(shí)現(xiàn)的快速部署,機(jī)動(dòng)反應(yīng)的通信技術(shù)。 它最先應(yīng)用于軍事,在戰(zhàn)備行動(dòng)、野外施工、搶險(xiǎn)救災(zāi)和應(yīng)對(duì)突發(fā)事件上有重大的作用。 隨著嵌入式技術(shù)和通信技術(shù)的發(fā)展,將手持1通信應(yīng)用于應(yīng)急通信中,使 得系統(tǒng)更加靈活機(jī)動(dòng),同時(shí)也使得各種信息能在系統(tǒng)中更有效的傳遞。在應(yīng)急通信系統(tǒng)中, 通常同時(shí)具有有線(xiàn)、無(wú)線(xiàn)通信方式。各種有線(xiàn)通信方式通常采用TCP/IP 協(xié)議,以太網(wǎng) 卡是這類(lèi)設(shè)備的典型。從無(wú)線(xiàn)通信方式來(lái)說(shuō),各類(lèi)短波電臺(tái)更惡劣通信環(huán)境。同時(shí),采 用Ad hoc 方式組網(wǎng)的各種新型網(wǎng)絡(luò)電臺(tái)在近年來(lái)也得到了廣泛的應(yīng)用,這就要求通 信具備通過(guò)下層進(jìn)行通信的能力。因此,一種適用于的 手持多媒體通信具有廣泛的應(yīng)用前景。

  針對(duì)上述三類(lèi)設(shè)備,本文介紹了一種適用于多種的多媒體通信終端的實(shí) 現(xiàn)。終端采用面向?qū)ο蟮姆椒?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/設(shè)計(jì)">設(shè)計(jì),對(duì)通信模塊的接口進(jìn)行了合理的抽象,將不同的 通信設(shè)備封裝為統(tǒng)一接口的通信模塊。這樣,在采用不同的通信設(shè)備時(shí),終端只需要選擇相 應(yīng)的通信模塊就能進(jìn)行正常的通信。

  2 多媒體通信終端的

  終端的硬件平臺(tái)采用 Intel 公司生產(chǎn)的嵌入式處理器PXA250 為核心處理器,具有最高400MHz 的處理能力,還支持非常豐富的外圍接口,包括USB 的HOST 接口、CF 接口、 串口、以太網(wǎng)等。如圖1 所示,終端支持語(yǔ)音、視頻、靜態(tài)圖像、短信息、電子白板和文件 傳輸?shù)榷喾N通信業(yè)務(wù)。每一種通信業(yè)務(wù)由一個(gè)獨(dú)立的業(yè)務(wù)模塊完成。業(yè)務(wù)模塊由用戶(hù)界面控 制,并且向用戶(hù)界面返回各種控制的反饋信息。業(yè)務(wù)模塊將產(chǎn)生的各種數(shù)據(jù)包及其目標(biāo)地址 交給通信模塊;通信模塊將接收到的數(shù)據(jù)包和源地址交給對(duì)應(yīng)的業(yè)務(wù)模塊。顯然,不同的通 信設(shè)備其信道特點(diǎn)是不一樣的,需要為不同的通信設(shè)備設(shè)計(jì)相應(yīng)的通信模塊。如果所有的通 信模塊具有統(tǒng)一的接口并且對(duì)業(yè)務(wù)模塊提供相同性質(zhì)的服務(wù),那么業(yè)務(wù)模塊將是完全可重用 的。因此,對(duì)通信模塊接口的合理抽象,將使得軟件的結(jié)構(gòu)更加清晰,有利于提高代碼的重 用性,從而降低軟件設(shè)計(jì)的復(fù)雜度。

  在對(duì)通信模塊的接口進(jìn)行抽象時(shí),需要遵循兩個(gè)原則。首先,對(duì)于不同的通信設(shè)備,都 能利用這個(gè)統(tǒng)一的接口進(jìn)行封裝。本終端支持三種通信設(shè)備:以太網(wǎng)卡、網(wǎng)絡(luò)電臺(tái)和短波電 臺(tái)。通過(guò)以太網(wǎng)進(jìn)行通信時(shí),終端能夠應(yīng)用操作系統(tǒng)提供的TCP/IP[2]協(xié)議棧,采用TCP 和 UDP 方式進(jìn)行通信。其中,TCP 協(xié)議提供可靠的字節(jié)流傳輸服務(wù),而UDP 協(xié)議提供不可靠 的數(shù)據(jù)包傳輸服務(wù)。多媒體通信終端通過(guò)USB 接口與網(wǎng)絡(luò)電臺(tái)連接,以遙控的方式應(yīng)用網(wǎng) 絡(luò)電臺(tái)上的TCP/IP 協(xié)議棧,也可以采用TCP 和UDP 方式進(jìn)行通信。通常,網(wǎng)絡(luò)電臺(tái)之間 通過(guò)Ad Hoc 方式進(jìn)行組網(wǎng)。由于TCP 連接在Ad hoc 網(wǎng)絡(luò)上具有較低的傳輸效率,通常只 使用UDP 方式進(jìn)行數(shù)據(jù)傳輸。短波電臺(tái)通過(guò)串口與多媒體通信終端相連,提供具有隨機(jī)誤 碼和突發(fā)誤碼的比特鏈路。參考ITU-T 的H.223[3]協(xié)議,利用各種糾錯(cuò)碼和檢錯(cuò)碼,同樣可 以在該比特鏈路上實(shí)現(xiàn)一個(gè)不可靠的數(shù)據(jù)包傳輸服務(wù)。

  其次,合理界定通信模塊和業(yè)務(wù)模塊的職能范圍,在保證有效利用信道的前提下,盡可 能提高代碼的重用性。對(duì)于在通信流程中需要解決的幾個(gè)問(wèn)題,需要根據(jù)這個(gè)原則來(lái)進(jìn)行劃 分。第一,由于多種媒體業(yè)務(wù)可以進(jìn)行并發(fā)的通信,因此需要標(biāo)識(shí)來(lái)自不同業(yè)務(wù)的數(shù)據(jù)包, 以便接收端辨別數(shù)據(jù)包的業(yè)務(wù)類(lèi)型。采用UDP 方式傳輸數(shù)據(jù)包時(shí),業(yè)務(wù)的標(biāo)識(shí)可以通過(guò)為 不同業(yè)務(wù)選擇不同的UDP 端口來(lái)實(shí)現(xiàn),也可以通過(guò)在數(shù)據(jù)包中增加標(biāo)識(shí)字節(jié)來(lái)實(shí)現(xiàn)。短波 電臺(tái)通信時(shí),業(yè)務(wù)的標(biāo)識(shí)可以在數(shù)據(jù)復(fù)接時(shí)實(shí)現(xiàn),以獲得更高的通信效率。因此,業(yè)務(wù)標(biāo)識(shí) 的方法與采用的通信設(shè)備是相關(guān)的,需要在通信模塊中實(shí)現(xiàn)。第二,不同業(yè)務(wù)的數(shù)據(jù)包在傳 輸時(shí)有不同的質(zhì)量要求。各種業(yè)務(wù)的信令都需要實(shí)現(xiàn)可靠的傳輸;靜態(tài)圖像、短信息、電子 白板和文件傳輸業(yè)務(wù)的數(shù)據(jù)包也需要實(shí)現(xiàn)可靠傳輸;語(yǔ)音和視頻通信業(yè)務(wù)可以承受一定數(shù)量 的丟包,并且在數(shù)據(jù)包中可以承擔(dān)一定程度的誤碼。因此,數(shù)據(jù)包的可靠傳輸應(yīng)該在業(yè)務(wù)模 塊中通過(guò)ARQ[4]方式實(shí)現(xiàn);通信模塊根據(jù)業(yè)務(wù)的類(lèi)型決定是否將具有誤碼的數(shù)據(jù)包提交給 業(yè)務(wù)模塊。最后,應(yīng)該在通信模塊中實(shí)現(xiàn)對(duì)通信資源的優(yōu)化分配,優(yōu)先保證實(shí)時(shí)通信業(yè)務(wù)所 需的帶寬資源。

圖1 多媒體通信終端結(jié)構(gòu)圖

  根據(jù)以上分析,通信模塊提供不可靠的數(shù)據(jù)包傳輸服務(wù),對(duì)業(yè)務(wù)進(jìn)行標(biāo)識(shí),根據(jù)業(yè)務(wù)類(lèi) 型實(shí)現(xiàn)通信資源的優(yōu)化分配,并判決是否將有誤碼的數(shù)據(jù)包提交給業(yè)務(wù)模塊;業(yè)務(wù)模塊以ARQ 方式保證數(shù)據(jù)包的可靠傳輸。在用C++語(yǔ)言進(jìn)行程序設(shè)計(jì)時(shí),可以將抽象的通信模塊 接口定義為基類(lèi),適用于以太網(wǎng)、網(wǎng)絡(luò)電臺(tái)和短波電臺(tái)的通信模塊都是該基類(lèi)的派生類(lèi)。下 面分別介紹針對(duì)三種通信設(shè)備的通信模塊設(shè)計(jì)。

  2.1 適用于以太網(wǎng)的通信模塊

  通過(guò)以太網(wǎng)卡進(jìn)行通信時(shí),可以通過(guò)套接字(socket)編程[5]實(shí)現(xiàn)UDP 數(shù)據(jù)包傳輸。如圖 2 所示,通信模塊中應(yīng)用了兩個(gè)套接字,分別負(fù)責(zé)發(fā)送和接收數(shù)據(jù)包。通信模塊主動(dòng)從各個(gè) 業(yè)務(wù)模塊中讀取數(shù)據(jù)包,并在數(shù)據(jù)包前添加一個(gè)字節(jié)的業(yè)務(wù)標(biāo)識(shí)。為了優(yōu)先保證語(yǔ)音和視頻 通信所需的帶寬資源,通信模塊優(yōu)先讀取來(lái)自語(yǔ)音和視頻業(yè)務(wù)模塊的數(shù)據(jù)包進(jìn)行發(fā)送。添加 了標(biāo)識(shí)的數(shù)據(jù)包通過(guò)發(fā)送套接字發(fā)送到目標(biāo)終端。流量控制模塊按照預(yù)先設(shè)定的速率控制每 秒鐘發(fā)送到以太網(wǎng)上的字節(jié)數(shù)。UDP 接收套接字在收到數(shù)據(jù)包時(shí),根據(jù)數(shù)據(jù)包的第一個(gè)字 節(jié)判斷業(yè)務(wù)類(lèi)型,并將數(shù)據(jù)包寫(xiě)入相應(yīng)業(yè)務(wù)模塊的接收緩沖區(qū)。UDP 協(xié)議保證了數(shù)據(jù)包內(nèi) 不會(huì)存在誤碼,因此在此通信模塊中省去了誤碼判斷的功能。適用于以太網(wǎng)的通信模塊是最 直觀也是結(jié)構(gòu)最簡(jiǎn)單的一個(gè)。

圖2 適用于以太網(wǎng)的通信模塊


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉