首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

无线物联网中CoAP协议的研究与实现(2)

无线物联网中CoAP协议的研究与实现(2)

3实验平台及CoAP协议的实现
  3.1实验平台硬件平台式是美信凌科公司的IPv6智能网关(MXG300)、MX231CC节点、USB无线网卡(STICK)和JTAG下载器。实验的硬件平台配置和硬件平台如图6,图7所示。软件平台是WinAVR和AVR studio,用于向节点和USB网卡中下载程序。

  

  其中IPv6智能网关上的主要芯片有:BCM 6358UKFBG支持多用户以太网功能,具有高度优化的32 MIPS CPU和标准的EJTAG调试器;BCM53 25EKQMG集成了5个收发器,具有128 KB的数据包缓冲区,最多可以支持2K的MAC地址,支持地址自动学习,提供真正的即插即用连接,而且是低功耗的;SIGe2521A60提供 2.4~2.5 GHz的无线工作频段范围,应用于ISM 2.4.GHz的无线解决方案。
  图8是IPv6智能无线网关的接口布局,它是基于OPENWRT系统定制完成的。具备3个局域网口,1个广域网口,1个802.11a/b/g WiFi无线网络接口,1个标准USB口和1个可选的串口调试口。该智能无线网关除具备通用无线路由器的功能以外,还可以实现基于Contiki操作系统的USB UIP网络和普通IP网络之间的IPv6互连,同时还支持有能力的系统在OPENWRT的基础上开发自己的应用软件包,实现更复杂的应用。

  

  OPENWRT是一个开源的Linux版本。主要应用于嵌入式系统。网关和节点上同时装有Contiki系统,它提供宏定义和RESTful网络服务实例。
  MX231CC节点上的主要芯片是ATmega1284P($4.6662),它具有128 KB的可编程闪存,4 KB的E2PROM,16 KB的片内SRAM,JTAG接口,优化的功耗和处理速度。节点上运行Contiki系统。节点上还有光敏传感器、室内温度传感器、三色LED指示灯等。
  3.2 CoAP协议的火狐浏览器实现(B/S架构)
  B/S架构的系统结构如图9所示。

  

  系统由用户浏览器、Web服务器、IPv6智能网关、MX231CC节点组成。用户浏览器通过HTTP协议访问Web服务器,MX231CC节点通过CoAP协议和IPv6智能网关进行通信,从而实现用户浏览器访问节点上资源的功能。图9中实线表示有线连接,虚线表示无线连接。
  在当前的Contiki 2.5中,集成了CoAP 03和CoAP06这两个版本。这两个文件在Contiki 2.5的apps目录下,关于CoAP的核心内容都在这两个文件中。程序的主要部分为:
  AUTOSTART_PROCESSES(PERIODIC_RESOURCE()为进程的主体部分。
  然后进行编译,编译成。elf文件,用JTAG下载器下载到节点上。节点地址设置为:2001:2::11:22ff::fe33:4499.这时,用火狐浏览器访问节点,因为火狐浏览器自带coap插件,如果用其他浏览器,那么需要进行coap的代理设置。以控制节点上的三色LED灯反转为例,用下面的请求格式:GETcoap://[]:
  /readings其中mote_ip_address是节点的IPv6地址,port_number是节点的端口号,readings是客户端请求的资源(温度)。
  所以在浏览器地址栏输入:coap://[2001:2::11:22ff:fe33:4499]:61616/toggle,作用是让节点上的三色LED灯进行反转。服务器端的响应信息如图10所示。

  

  从浏览器端可以看出,CoAP协议支持Discover和Observe功能,具有GET、POST、PUT和DELETE等方法。Type表示信息类型为ACK,Code为200,表示成功完成客户端的请求。事务ID为38 264,它用于重复信息检测,options为1表示有一个可选项,内容类型为text表示文本类型。
  由此可以看出,通过火狐浏览器的CoAP协议,可以访问节点上的传感器资源。
继承事业,薪火相传
返回列表