• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      面向物聯(lián)網(wǎng)的嵌入式3G網(wǎng)關(guān)設(shè)計(jì)

      2012-06-25 07:02:24馬子超葉天翔
      電視技術(shù) 2012年6期
      關(guān)鍵詞:內(nèi)核網(wǎng)關(guān)藍(lán)牙

      張 毅,馬子超,葉天翔

      (重慶郵電大學(xué) 移動(dòng)互聯(lián)網(wǎng)技術(shù)研究所,重慶 400065)

      目前,感知化、互聯(lián)化、物聯(lián)化的大趨勢(shì)正在發(fā)生。國(guó)內(nèi)外已將物聯(lián)網(wǎng)解決方案廣泛應(yīng)用于環(huán)保、反恐、醫(yī)療、監(jiān)控等眾多領(lǐng)域,由于物聯(lián)網(wǎng)感知層中無(wú)線傳感技術(shù)種類繁多(如藍(lán)牙、ZigBee、RFID、NFC等),協(xié)議不一,適用的場(chǎng)所也各不相同,使得無(wú)線傳感器網(wǎng)絡(luò)的異構(gòu)性十分突出。

      3G移動(dòng)通信網(wǎng)絡(luò)在國(guó)內(nèi)已基本完成覆蓋,范圍觸及社會(huì)生活的方方面面,與2G移動(dòng)通信網(wǎng)絡(luò)相比,具備更豐富的功能和更出色的靈活性,將3G移動(dòng)通信網(wǎng)絡(luò)與傳感器網(wǎng)絡(luò)融合起來(lái),可以為物聯(lián)網(wǎng)中多種不同速率、不同業(yè)務(wù)類型的應(yīng)用提供更適合的網(wǎng)絡(luò)傳輸平臺(tái)[1]。

      基于以上考慮,本文設(shè)計(jì)一種面向物聯(lián)網(wǎng)的3G網(wǎng)關(guān),將傳感系統(tǒng)和3G網(wǎng)絡(luò)結(jié)合起來(lái),用以解決異構(gòu)傳感器網(wǎng)絡(luò)的數(shù)據(jù)匯聚和傳感信息的3G傳輸[2],實(shí)現(xiàn)協(xié)同感知,廣域傳輸,對(duì)于推動(dòng)物聯(lián)網(wǎng)發(fā)展和豐富3G應(yīng)用具有一定的現(xiàn)實(shí)意義。

      1 網(wǎng)關(guān)總體設(shè)計(jì)和工作流程

      網(wǎng)關(guān)是在傳輸層以上實(shí)現(xiàn)異構(gòu)網(wǎng)絡(luò)間的通信、負(fù)責(zé)網(wǎng)絡(luò)間的協(xié)議轉(zhuǎn)換以及不同類型網(wǎng)絡(luò)的數(shù)據(jù)傳輸?shù)脑O(shè)備。為了提高網(wǎng)關(guān)的靈活性,實(shí)現(xiàn)即插即用,采用模塊化設(shè)計(jì)思想。本設(shè)計(jì)的網(wǎng)關(guān)體系結(jié)構(gòu)主要由ARM處理器(LPC3250)、藍(lán)牙/ZigBee數(shù)據(jù)采集模塊、3G通信模塊(MC2716)組成。網(wǎng)關(guān)體系結(jié)構(gòu)如圖1所示。

      網(wǎng)關(guān)基本工作流程:

      網(wǎng)關(guān)可以實(shí)時(shí)感知來(lái)自傳感器網(wǎng)絡(luò)的信息(數(shù)據(jù)流),并接收來(lái)自客戶端的控制信息(控制流),實(shí)現(xiàn)對(duì)無(wú)線傳感器網(wǎng)絡(luò)的實(shí)時(shí)感知與控制。藍(lán)牙/ZigBee數(shù)據(jù)采集節(jié)點(diǎn)作為傳感器網(wǎng)絡(luò)的樞紐,將傳感信息實(shí)時(shí)上傳并保存在存儲(chǔ)模塊中。網(wǎng)關(guān)通過(guò)3G通信模塊撥號(hào)連接3G移動(dòng)通信網(wǎng)絡(luò),在成功獲得IP地址后,建立Socket服務(wù)器,監(jiān)聽(tīng)來(lái)自不同平臺(tái)的客戶端連接請(qǐng)求(如PC、移動(dòng)電話等)。一旦連接建立,即將來(lái)自藍(lán)牙/ZigBee數(shù)據(jù)采集節(jié)點(diǎn)的信息發(fā)送至客戶端。同時(shí),服務(wù)器可以檢測(cè)到客戶端發(fā)送的控制流,將控制信息通過(guò)藍(lán)牙/ZigBee數(shù)據(jù)采集節(jié)點(diǎn)傳達(dá)至傳感器網(wǎng)絡(luò)目標(biāo)節(jié)點(diǎn),實(shí)現(xiàn)對(duì)傳感器網(wǎng)絡(luò)的控制。

      2 硬件平臺(tái)設(shè)計(jì)

      2.1 控制器模塊

      控制器是整個(gè)網(wǎng)關(guān)體系結(jié)構(gòu)的核心,負(fù)責(zé)數(shù)據(jù)匯聚、數(shù)據(jù)采集、數(shù)據(jù)處理、數(shù)據(jù)轉(zhuǎn)發(fā)等關(guān)鍵處理,本設(shè)計(jì)采用NXP半導(dǎo)體帶有ARM926EJ-S CPU內(nèi)核的LPC3250,該系列ARM運(yùn)用了NXP半導(dǎo)體在降低功耗方面的技術(shù)專長(zhǎng),優(yōu)化內(nèi)部功率消耗。CPU時(shí)鐘運(yùn)行速率可以達(dá)到266 MHz,具有32 kbyte指令高速緩存和32 kbyte數(shù)據(jù)高速緩存,高達(dá)256 kbyte的內(nèi)部SRAM,同時(shí)該系列ARM帶有一系列豐富的標(biāo)準(zhǔn)外設(shè)資源,如Multi-layer總線系統(tǒng),2個(gè)NAND Flash控制器,1個(gè)支持Device、Host(遵循OHCI規(guī)范)、On-The-Go的USB2.0接口,多達(dá)7路串口(4個(gè)標(biāo)準(zhǔn)UART,3個(gè)高速UART),以及以太網(wǎng)、I2C、I2S等接口。

      綜上所述,該控制器模塊具備較強(qiáng)的數(shù)據(jù)處理能力和豐富的外設(shè)資源,支持Linux操作系統(tǒng),可以滿足方案的設(shè)計(jì)目標(biāo)。

      2.2 數(shù)據(jù)采集模塊

      本設(shè)計(jì)中的數(shù)據(jù)采集模塊有兩種:藍(lán)牙數(shù)據(jù)采集模塊和ZigBee數(shù)據(jù)采集模塊。

      藍(lán)牙數(shù)據(jù)采集模塊采用匯承信息科技有限公司的HC-05藍(lán)牙串口模塊,該模塊采用CSR BC4+8M Flash方案(8M代表8 Mbyte),協(xié)議版本為Bluetooth Specification V2.0 With EDR,2.4 GHz無(wú)線收發(fā),CLASS 2功率級(jí)別,采用自適應(yīng)跳頻技術(shù),具備低功耗、低成本、高性能的特點(diǎn),配合處理器即可方便地構(gòu)建藍(lán)牙傳感器網(wǎng)絡(luò)。藍(lán)牙數(shù)據(jù)采集模塊在藍(lán)牙傳感器網(wǎng)絡(luò)中的角色為從機(jī),負(fù)責(zé)監(jiān)聽(tīng)遠(yuǎn)程藍(lán)牙設(shè)備主機(jī)的鏈接請(qǐng)求,并執(zhí)行接收數(shù)據(jù)、斷開(kāi)鏈接等操作。

      ZigBee數(shù)據(jù)采集模塊采用TI/Chipcon公司開(kāi)發(fā)的2.4 GHz IEEE 802.15.4/ZigBee片上系統(tǒng)解決方案CC2430/CC2431,具備高速、超低功耗的8051內(nèi)核、最高128 kbyte的大容量閃存、8 kbyte SRAM、250 kbit/s高速無(wú)線通信接口,模塊采用DSSS頻譜傳輸,自動(dòng)調(diào)頻,防沖突,防碰撞,從而提高了無(wú)線數(shù)據(jù)傳輸?shù)目煽啃浴igBee數(shù)據(jù)采集模塊通過(guò)串口與微控制器連接,在ZigBee自組織網(wǎng)絡(luò)中擔(dān)任協(xié)調(diào)器的角色,負(fù)責(zé)啟動(dòng)、配置網(wǎng)絡(luò),在網(wǎng)絡(luò)啟動(dòng)和配置完成后,退化為一個(gè)普通路由器,實(shí)時(shí)將傳感器網(wǎng)絡(luò)中的信息上報(bào)至網(wǎng)關(guān)。

      2.3 通信接口部分

      該部分用于實(shí)現(xiàn)不同通信協(xié)議間信息的傳輸,主要包括控制器模塊與數(shù)據(jù)采集模塊之間的串口連接和控制器模塊與3G通信模塊間的USB接口連接。

      控制器LPC3250具備的7路串口中,UART3/4/5/6為普通串口,本設(shè)計(jì)中UART5為系統(tǒng)調(diào)試串口,分別將UART3和UART4連接至ZigBee數(shù)據(jù)采集模塊和藍(lán)牙數(shù)據(jù)采集模塊。LPC3250具備一路USB 2.0接口,將其與3G通信模塊連接。

      2.4 3G通信模塊

      目前國(guó)內(nèi)的3G網(wǎng)絡(luò)主要有CDMA2000,WCDMA和TD-SCDMA這3種制式,對(duì)應(yīng)有3種不同制式的3G模塊,考慮到CDMA20003G模塊撥號(hào)后獲得的是公網(wǎng)IP,不需要進(jìn)行NAT穿越即可訪問(wèn)外網(wǎng),本設(shè)計(jì)采用中興公司的MC2716 CDMA20003G通信模塊[3-4]。

      3 軟件平臺(tái)設(shè)計(jì)

      考慮到網(wǎng)關(guān)應(yīng)具有開(kāi)放和可移植特性,軟件平臺(tái)采用開(kāi)放源碼的Linux操統(tǒng)系統(tǒng),由于Linux操作系統(tǒng)具有高度模塊化和高度可移植性,在其基礎(chǔ)上完成應(yīng)用程序的編寫即可實(shí)現(xiàn)設(shè)計(jì)目標(biāo),軟件平臺(tái)的設(shè)計(jì)主要包括配置和編譯Linux操作系統(tǒng)、嵌入式Linux操作系統(tǒng)的移植、PPP協(xié)議的移植、CDMA2000撥號(hào)腳本的編寫、通信協(xié)議的制訂及系統(tǒng)主程序設(shè)計(jì)[5]。

      3.1 網(wǎng)關(guān)軟件體系結(jié)構(gòu)

      由于網(wǎng)關(guān)采用Linux操作系統(tǒng)和模塊化的設(shè)計(jì)思想,軟件體系分為操作系統(tǒng)和應(yīng)用系統(tǒng)兩部分,體系結(jié)構(gòu)如圖2所示。

      3.2 配置和編譯嵌入式Linux操作系統(tǒng)

      為了實(shí)現(xiàn)網(wǎng)關(guān)功能,需要配置并添加兩部分Linux內(nèi)核支持:3G通信模塊內(nèi)核支持和PPP協(xié)議內(nèi)核支持。

      3.2.1 添加3G通信模塊內(nèi)核支持

      輸入make menuconfig進(jìn)入Linux圖形內(nèi)核配置界面,在Device Driver選項(xiàng),將以下選項(xiàng)編譯進(jìn)內(nèi)核。

      USB support子選單下:

      圖2 軟件體系結(jié)構(gòu)圖

      以上配置完成后,將MC27163G通信模塊的PID:0x19d2和VID:0xffed添加入linux-2.6.27.8/drivers/usb/se?rial/option.c文件的option_ids[]數(shù)組中。至此,完成了Linux內(nèi)核對(duì)MC27163G通信模塊的支持。

      3.2.2 添加PPP協(xié)議內(nèi)核支持

      輸入make menuconfig命令進(jìn)入Linux圖形內(nèi)核配置界面,進(jìn)入Network device support選項(xiàng),將以下選項(xiàng)編譯進(jìn)內(nèi)核:

      至此,完成了Linux內(nèi)核對(duì)PPP協(xié)議的支持。

      3.3 嵌入式Linux操作系統(tǒng)移植

      設(shè)計(jì)中使用的 Linux 內(nèi)核版本 2.6.27.8,為了生成U-Boot格式的內(nèi)核文件,將u-boot中的mkimage程序復(fù)制到系統(tǒng)的目錄/usr/bin中,然后在內(nèi)核源代碼目錄輸入make uImage,編譯配置好的Linux內(nèi)核,之后在/arch/arm/boot目錄下會(huì)生成uImage文件。

      在ARM9硬件平臺(tái)上安裝嵌入式Linux操作系統(tǒng),大致分為5個(gè)步驟,依次為固化Kickstart和S1L、固化U-Boot、配置和編譯Linux內(nèi)核、固化Linux內(nèi)核以及固化Linux文件系統(tǒng)。

      網(wǎng)絡(luò)上介紹嵌入式Linux操作系統(tǒng)移植的教程已較為豐富,由于篇幅限制,在此不再贅述。

      將編譯好的Linux操作系統(tǒng)移植成功之后,通過(guò)USB接口連接3G通信模塊和控制器模塊,控制終端完成對(duì)USB設(shè)備3G模塊的枚舉后,可以識(shí)別出/dev/ttyUSB0至ttyUSB3的4個(gè)不同的虛擬串口。其中ttyUSB0為Modem撥號(hào)端口,用于實(shí)現(xiàn)撥號(hào)上網(wǎng),ttyUSB1為AT命令通道端口,用于實(shí)現(xiàn)網(wǎng)關(guān)信息的短信通知。

      3.4 PPP撥號(hào)套件移植

      由于Linux操作系統(tǒng)本身并沒(méi)有PPP軟件支持,需要進(jìn)行PPP撥號(hào)套件移植。PPP軟件可以在PPP的官方FTP下載,這里使用的版本為ppp-2.4.5.tar.gz。

      將此壓縮文件包解壓后進(jìn)入文件目錄,執(zhí)行./config?ure命令,完成后執(zhí)行命令make CC=/opt/nxp/gcc-4.3.2-glibc-2.7/bin/arm-vfp-linux-gnu-gcc進(jìn)行交叉編譯(此處需要使用和編譯內(nèi)核及文件系統(tǒng)同一個(gè)版本的交叉編譯器)。編譯成功之后,將pppd目錄下的可執(zhí)行文件pppd和chat目錄下的可執(zhí)行文件chat拷貝到ARM平臺(tái)的/usr/sbin/目錄下。

      至此完成PPP撥號(hào)套件的移植工作。

      3.5 CDMA2000撥號(hào)腳本配置

      在完成Linux內(nèi)核支持和PPP撥號(hào)套件移植之后,還需要在ARM平臺(tái)側(cè)建立、配置撥號(hào)腳本,才能實(shí)現(xiàn)撥號(hào)上網(wǎng)。由于篇幅限制,在此僅給出各個(gè)撥號(hào)腳本的作用。

      /etc/ppp/peers/cdma2000用于建立連接、質(zhì)量控制、配置網(wǎng)絡(luò)層協(xié)議。腳本中包括了用于連接的設(shè)備,波特率,接受服務(wù)器指定的IP地址、DNS地址,連接/斷開(kāi)撥號(hào)腳本等內(nèi)容。

      /etc/ppp/chat/cdma2000-connect-chat用于AT撥號(hào)連接,首先發(fā)出AT指令,等待OK返回后,設(shè)置撥號(hào)上網(wǎng)的APN、賬號(hào)、密碼等。

      /etc/ppp/chat/cdma2000-disconnect-chat用于斷開(kāi)AT撥號(hào)連接。

      此時(shí),在ARM控制平臺(tái)輸入命令pppd call cdma 2000,運(yùn)行撥號(hào)腳本即可實(shí)現(xiàn)嵌入式平臺(tái)的3G網(wǎng)絡(luò)撥號(hào)連接,同時(shí)獲得一個(gè)公網(wǎng)IP地址。

      3.6 制訂通信協(xié)議

      為了完成對(duì)來(lái)自傳感器網(wǎng)絡(luò)的數(shù)據(jù)的采集和匯聚,需要設(shè)計(jì)一個(gè)合適的通信協(xié)議來(lái)保證數(shù)據(jù)傳輸?shù)耐暾院涂煽啃?,本設(shè)計(jì)中使用的數(shù)據(jù)幀結(jié)構(gòu)如:

      上述程序中:SensorNetworkType表示傳感器網(wǎng)絡(luò)類型(0x00表示藍(lán)牙,0x01表示ZigBee);NodeType表示傳感器網(wǎng)絡(luò)不同的節(jié)點(diǎn)角色類型;NodeId表示傳感器網(wǎng)絡(luò)中某一個(gè)節(jié)點(diǎn)的標(biāo)號(hào);FunctionId表示定義好的功能碼;OperationCode表示定義好的操作碼;DataLength表示DataBuffer中數(shù)據(jù)的長(zhǎng)度;DataBuffer[]用于存儲(chǔ)來(lái)自傳感器網(wǎng)絡(luò)中各種傳感器的數(shù)據(jù)。

      在設(shè)計(jì)中,傳感器網(wǎng)絡(luò)按照此通信協(xié)議將信息上報(bào)至網(wǎng)關(guān),網(wǎng)關(guān)按照通信協(xié)議對(duì)數(shù)據(jù)進(jìn)行匯聚、解析、轉(zhuǎn)發(fā)。

      3.7 系統(tǒng)主程序設(shè)計(jì)

      在硬件平臺(tái)上移植Linux操作系統(tǒng)成功后,編寫應(yīng)用軟件即可實(shí)現(xiàn)網(wǎng)關(guān)功能。網(wǎng)關(guān)的主要功能有網(wǎng)關(guān)信息通知、串口接收和數(shù)據(jù)轉(zhuǎn)發(fā)3部分,軟件設(shè)計(jì)采用模塊化設(shè)計(jì)思想,各部分子程序分開(kāi)編寫,供主程序調(diào)用。

      由于網(wǎng)關(guān)每次撥號(hào)后會(huì)隨機(jī)獲取一個(gè)IP地址,需要有一種途徑使網(wǎng)關(guān)的使用者在網(wǎng)關(guān)重置后,即時(shí)獲取網(wǎng)關(guān)的IP地址、端口號(hào)等信息,在此通過(guò)AT指令,采用主動(dòng)通知與查詢通知兩種方式。主動(dòng)通知即每次網(wǎng)關(guān)重置后,以短信的形式將網(wǎng)關(guān)信息(IP地址,端口號(hào)等)發(fā)送至特定號(hào)碼;查詢通知即網(wǎng)關(guān)在運(yùn)行過(guò)程中,如收到來(lái)自某一號(hào)碼的網(wǎng)關(guān)信息查詢請(qǐng)求短信,將向此號(hào)碼發(fā)送網(wǎng)關(guān)的信息。

      串口接收指實(shí)時(shí)接收來(lái)自傳感器網(wǎng)絡(luò)的信息,主要涉及對(duì)Linux串口的配置操作。

      數(shù)據(jù)轉(zhuǎn)發(fā)部分依賴Socket網(wǎng)絡(luò)編程實(shí)現(xiàn),通過(guò)3G模塊撥號(hào)獲得IP后,在網(wǎng)關(guān)側(cè)建立Socket服務(wù)器,這樣從用戶的角度來(lái)看,只需要獲得Socket服務(wù)器的IP地址和端口號(hào),可以方便地使用筆記本電腦、智能手機(jī)等多種平臺(tái)的終端設(shè)備建立與網(wǎng)關(guān)Socket服務(wù)器的連接。在編寫Socket服務(wù)器的過(guò)程中,采用了多線程技術(shù),使得服務(wù)器可以同時(shí)處理多個(gè)客戶請(qǐng)求,極大地提高了網(wǎng)關(guān)的數(shù)據(jù)處理能力和響應(yīng)速度。系統(tǒng)主程序流程圖如圖3所示。

      圖3 網(wǎng)關(guān)主程序流程圖

      4 小結(jié)

      本文將無(wú)線傳感器技術(shù)、嵌入式操作系統(tǒng)和3G通信技術(shù)結(jié)合起來(lái),設(shè)計(jì)了一種面向物聯(lián)網(wǎng)的嵌入式3G網(wǎng)關(guān),實(shí)現(xiàn)了異構(gòu)無(wú)線傳感器網(wǎng)絡(luò)的數(shù)據(jù)匯聚,3G移動(dòng)通信網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)和多種終端平臺(tái)支持。該網(wǎng)關(guān)具有數(shù)據(jù)處理能力強(qiáng)、數(shù)據(jù)傳輸速率快、實(shí)時(shí)性較好、無(wú)須布線等特點(diǎn),對(duì)物聯(lián)網(wǎng)中豐富的應(yīng)用提供了支持,具備較好的應(yīng)用價(jià)值。

      [1]鞏浩,屈玉貴.基于短距無(wú)線通信與3G的無(wú)線集中抄表系統(tǒng)[J].計(jì)算機(jī)工程,2011(1):290-292.

      [2]曾桂根,吳霜.基于嵌入式Linux的3G接入方案的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2010(9):193-196.

      [3]ZTE Corporation.MC2700 technical specification[EB/OL].2011-02-02].http://wenku.baidu.com/view/fe0b491052d380eb62946d66.html?from=related.

      [4]ZTE Corporation.MC2716 MC2718 technical specifications and hardware design[EB/OL].[2011-02-02].http://www.headele.com/Datasheet/EVDO/MC2716&MC2718% 20Technical% 20Specifica?tions%20and%20Hardware%20Design.pdf.

      [5]SWEET M R.Serial programming guide for POSIX operating systems[EB/OL].[2011-03-02].http://www.easysw.com/~mike/serial/serial.html.

      猜你喜歡
      內(nèi)核網(wǎng)關(guān)藍(lán)牙
      萬(wàn)物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
      藍(lán)牙音箱的直線之美
      強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
      基于改進(jìn)RPS技術(shù)的IPSEC VPN網(wǎng)關(guān)設(shè)計(jì)
      基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
      Linux內(nèi)核mmap保護(hù)機(jī)制研究
      簡(jiǎn)單、易用,可玩性強(qiáng)Q AcousticsBT3藍(lán)牙音箱
      適合自己的才是最好的 德生(TECSUN) BT-50藍(lán)牙耳機(jī)放大器
      緊急:藍(lán)牙指尖陀螺自燃!安全隱患頻出
      玩具世界(2017年8期)2017-02-06 03:01:38
      LTE Small Cell網(wǎng)關(guān)及虛擬網(wǎng)關(guān)技術(shù)研究
      遂平县| 新河县| 陆川县| 阿图什市| 阿鲁科尔沁旗| 乌兰察布市| 阜平县| 景德镇市| 侯马市| 河池市| 天津市| 卢湾区| 嵊泗县| 望奎县| 青冈县| 林芝县| 青川县| 房产| 吴忠市| 汝阳县| 定西市| 呈贡县| 高碑店市| 开原市| 五河县| 永昌县| 襄樊市| 康保县| 玉屏| 兴安县| 玉门市| 定西市| 南华县| 明水县| 宣恩县| 房山区| 东源县| 和林格尔县| 大宁县| 文化| 广西|