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

基于Android平台的物联网网关方案设计 02

基于Android平台的物联网网关方案设计 02

  3.2 Android网络通信
  Android完全支持JDK本身的TCP、UDP网络通信的API,可以使用SeverSocket、Socket来建立基于TCP/IP协议的网络通信,也可以使用DatagramSocket、Datagrampacket、MulticastSocket来建立UDP协议的网络通信。本设计采用TCP/IP协议来实现网络通信,通信流程如图6所示。

   
  本设计只实现客户端编程,服务端用SocketTool TCP/IP通信调试工具V2.2在PC端建立。使用Socket来实现客户端的步骤如下:
  (1)通过IP地址和端口实例化Socket,请求连接服务器
  (2)获取Socket上的流以进行读写。
  (3)把流包装进BufferedReader的实例。
  (4)对Socket进行读写
  (5)关闭打歼的流程。
  关键代码如下:



  4 网关的管理功能及实现
  网关在应用层实现对WSN的管理,主要包括安全认证、时间统一、监测数据采集、节点定位和远程传输功能,从而实现对现场的实时临控和管理。功能设计如下:
  (1)安全认证:协调节点在安全认汪中,将申请节点的ID发给网关,网关查找配置表中的授权入网节;如果该节点ID在表中,则通知协调节点允许入网,否则不允许入网。同时,网关可以显示、添加或修改节点配置表中的授权入网节点。
  如图8-1所示,网关插入配置表信息,该实验为四个节点组成的ZigBee网络,节点编号分别为0080E102001BC94D、0080E102001BCE91、0080E102001BC204和0080E102001BCF51.ZigBee组成的无线传感器网络实现点对点通信,网关可以采集到节点数据信息,并用绿灯显示该网络实现的是1号节点和3号节点之间的点对点通信,红灯表明处于非工作状态。
  (2)时间统一:在进行时间统一的过程中,首先通过NTP协议对网关校时,并以此时间为基准,把时间发给协调器节点,从而校准协调节点的时间和网内子节点的时间,实现网络中节点的时间统一。如图7(a)所示,网关的最下方显示了NTP协议实现的校时。

  (3)监测数据采集:在进行节点定位的过程中,网关可以采集节点数据、提取节点号和RSSI值。如图7(h)所示,上方滚动串口显示了收到的来自ZigBee无线传感器网络的串口数据。
  (4)节点定位:ZigBee网络使用RSSI测距法实现节点定位,网关采集节点RSSI值解算出了节点大概位置。
  (5)存储监测数据:接收节点监测数据并定期以文件形式保存到本地的SD卡中。如图8-2截取的存储至SD卡的数据传输数据,命名为Bluetooth.txt.
返回列表