無線物聯(lián)網(wǎng)中CoAP協(xié)議的研究與實(shí)現(xiàn)(二)
3實(shí)驗(yàn)平臺(tái)及CoAP協(xié)議的實(shí)現(xiàn)
3.1實(shí)驗(yàn)平臺(tái)硬件平臺(tái)式是美信凌科公司的IPv6智能網(wǎng)關(guān)(MXG300)、MX231CC節(jié)點(diǎn)、USB無線網(wǎng)卡(STICK)和JTAG下載器。實(shí)驗(yàn)的硬件平臺(tái)配置和硬件平臺(tái)如圖6,圖7所示。軟件平臺(tái)是WinAVR和AVR studio,用于向節(jié)點(diǎn)和USB網(wǎng)卡中下載程序。
其中IPv6智能網(wǎng)關(guān)上的主要芯片有:BCM 6358UKFBG支持多用戶以太網(wǎng)功能,具有高度優(yōu)化的32 MIPS CPU和標(biāo)準(zhǔn)的EJTAG調(diào)試器;BCM53 25EKQMG集成了5個(gè)收發(fā)器,具有128 KB的數(shù)據(jù)包緩沖區(qū),最多可以支持2K的MAC地址,支持地址自動(dòng)學(xué)習(xí),提供真正的即插即用連接,而且是低功耗的;SIGe2521A60提供 2.4~2.5 GHz的無線工作頻段范圍,應(yīng)用于ISM 2.4.GHz的無線解決方案。
圖8是IPv6智能無線網(wǎng)關(guān)的接口布局,它是基于OPENWRT系統(tǒng)定制完成的。具備3個(gè)局域網(wǎng)口,1個(gè)廣域網(wǎng)口,1個(gè)802.11a/b/g WiFi無線網(wǎng)絡(luò)接口,1個(gè)標(biāo)準(zhǔn)USB口和1個(gè)可選的串口調(diào)試口。該智能無線網(wǎng)關(guān)除具備通用無線路由器的功能以外,還可以實(shí)現(xiàn)基于Contiki操作系統(tǒng)的USB UIP網(wǎng)絡(luò)和普通IP網(wǎng)絡(luò)之間的IPv6互連,同時(shí)還支持有能力的系統(tǒng)在OPENWRT的基礎(chǔ)上開發(fā)自己的應(yīng)用軟件包,實(shí)現(xiàn)更復(fù)雜的應(yīng)用。
OPENWRT是一個(gè)開源的Linux版本。主要應(yīng)用于嵌入式系統(tǒng)。網(wǎng)關(guān)和節(jié)點(diǎn)上同時(shí)裝有Contiki系統(tǒng),它提供宏定義和RESTful網(wǎng)絡(luò)服務(wù)實(shí)例。
MX231CC節(jié)點(diǎn)上的主要芯片是ATmega1284P,它具有128 KB的可編程閃存,4 KB的E2PROM,16 KB的片內(nèi)SRAM,JTAG接口,優(yōu)化的功耗和處理速度。節(jié)點(diǎn)上運(yùn)行Contiki系統(tǒng)。節(jié)點(diǎn)上還有光敏傳感器、室內(nèi)溫度傳感器、三色LED指示燈等。
3.2 CoAP協(xié)議的火狐瀏覽器實(shí)現(xiàn)(B/S架構(gòu))
B/S架構(gòu)的系統(tǒng)結(jié)構(gòu)如圖9所示。
系統(tǒng)由用戶瀏覽器、Web服務(wù)器、IPv6智能網(wǎng)關(guān)、MX231CC節(jié)點(diǎn)組成。用戶瀏覽器通過HTTP協(xié)議訪問Web服務(wù)器,MX231CC節(jié)點(diǎn)通過CoAP協(xié)議和IPv6智能網(wǎng)關(guān)進(jìn)行通信,從而實(shí)現(xiàn)用戶瀏覽器訪問節(jié)點(diǎn)上資源的功能。圖9中實(shí)線表示有線連接,虛線表示無線連接。
在當(dāng)前的Contiki 2.5中,集成了CoAP 03和CoAP06這兩個(gè)版本。這兩個(gè)文件在Contiki 2.5的apps目錄下,關(guān)于CoAP的核心內(nèi)容都在這兩個(gè)文件中。程序的主要部分為:
AUTOSTART_PROCESSES(PERIODIC_RESOURCE()為進(jìn)程的主體部分。
然后進(jìn)行編譯,編譯成。elf文件,用JTAG下載器下載到節(jié)點(diǎn)上。節(jié)點(diǎn)地址設(shè)置為:2001:2::11:22ff::fe33:4499.這時(shí),用火狐瀏覽器訪問節(jié)點(diǎn),因?yàn)榛鸷鼮g覽器自帶coap插件,如果用其他瀏覽器,那么需要進(jìn)行coap的代理設(shè)置。以控制節(jié)點(diǎn)上的三色LED燈反轉(zhuǎn)為例,用下面的請(qǐng)求格式:GETcoap://[]:
/readings其中mote_ip_address是節(jié)點(diǎn)的IPv6地址,port_number是節(jié)點(diǎn)的端口號(hào),readings是客戶端請(qǐng)求的資源(溫度)。
所以在瀏覽器地址欄輸入:coap://[2001:2::11:22ff:fe33:4499]
物聯(lián)網(wǎng)相關(guān)文章:物聯(lián)網(wǎng)是什么
評(píng)論