滕 飞,贾怀义
(北京交通大学电子信息工程学院,北京100044)
在传统的无线传感网络(WSN)中,传感器节点通常是散布于一些用户感兴趣的,并且有时并不连续的区域。但是单个传感器节点的通信范围和数据处理能力十分有限,因此这些分散区域的传感器节点间的通信,以及数据如何汇聚到监控中心就成了一个需要关注的问题。基于IEEE 802.11标准的无线局域网(WLAN)目前已十分成熟,它具有覆盖范围大(相对于WSN),组网灵活,运行成本较低等特点,因此,两种网络的结合可以弥补上述单纯用WSN组网的不足[1]。
本文提出的网络系统整体结构可分为两部分,如图1。
图1 系统结构图
(1)传感器网络,几个传感器网络按照需要,分布于需要监控的几个并不连续的区域。每个传感器网络由3种不同类型的设备组成:终端设备(ED)、中继设备(RE)和数据中心(DC),这3种设备协同工作完成WSN的各项功能。(2)WLAN网络,它在较大的区域实现无线覆盖,在WLAN网络中,WSN的数据中心通过WLAN接口以无线的方式发送至WLAN内的监控设备。
SimpliciTI协议是TI公司推出针对简单小型无线网络的专有低功耗无线网络协议。该协议所需的硬件资源较少,具有低成本、低功耗、易于开发等特点。
协议主要包括3层,如图2,用户主要在应用层进行相应开发来实现各种功能的网络系统[2]。
图2 SimpliciTI协议框架
本文设计与实现的基于SimpliciTI协议的WSN,在室内环境中对光照强度和温度进行采集。数据中心通过串口与电脑相连,如图3,通过电脑可以实现对WSN的监控。
图3 无线传感器网络示意图
终端设备由射频模块、传感器模块和电源模块组成,由它来实际负责环境数据的采集并将处理完的有效数据发回数据中心;范围扩展设备由射频模块和电源模块组成,它为无法直接与数据中心通信的终端设备提供中继;数据中心由射频模块和数据处理模块组成,通过串口与监控计算机相连,通过计算机端的监控程序,可以实时查看各终端设备发送回来的光照和温度信息,同时还可以实现对整个传感器网络的配置和管理。
系统的硬件主要包括射频模块、传感器模块和电源模块3部分。其中,射频模块包括处理器单元和通信单元,处理器单元负责控制整个传感器设备的操作,存储和处理本身采集的数据以及其它设备发来的数据;通信单元负责与其他传感器设备进行通信,交换控制信息和收发采集数据。
系统的软件设计主要分为数据中心设备、范围扩展设备和终端设备3部分。考虑到程序的开发周期和可读性,程序使用C语言进行开发。
2.4.1 数据中心设备
数据中心设备经过BSP(应用板支持层程序包)、协议栈、串口等初始化后,打开串口中断,实现计算机与数据中心的通信,然后建立串状网络,等待终端节点和范围扩展节点的加入。对于已经加入网络的设备,数据中心监测是否收到这些设备发来的数据,如果收到符合格式的数据,则通过串口上传给计算机显示。同时数据中心不断检测信道噪声,如果噪声过大,则广播通知所有设备跳转到信道列表的下一个信道。
2.4.2 范围扩展设备
范围扩展设备经过硬件初始化和协议栈初始化之后,向数据中心发送加入网络请求。成功加入网络后,向数据中心节点周期发送Ping消息,如果收到应答,则处于等待数据转发状态,向数据中心转发终端节设备来的数据信息,如果没有收到应答,则查询网络当前的工作信道,并跳转至该信道,再转发数据信息。
2.4.3 终端设备
终端设备在初始化底层模块、定时器和各传感器模块后,开始向中心节点发送加入网络消息,并等待加入。加入网络后,每隔一个固定的时间间隔通过传感器模块采集环境信息,查找中心节点工作的信道并跳变到该信道,将采集的环境信息发送到数据中心。
IEEE 802.11b是当今无线局域网应用最为广泛的标准之一,它工作在2.4 GHz的ISM频段上,数据传输速率能根据环境条件的改变而调整, 最高可达到11 Mb/s。传输范围在室内约为100m,在室外约为300 m。基于上述特点,以及兼容该标准的设备成本较低,所以本系统的WLAN采用了该无线协议标准。
本系统包括WSN和WLAN两层网络,重点是如何实现两种网络的互联。
互联的实现,在硬件上主要是通过为WSN的数据中心设备添加一个WLAN接口,而软件上需要改造的功能主要有两部分:(1)在数据中心设备的程序中添加WLAN接口模块的配置程序,完成不同网络间数据格式的转换,实现数据中心与WLAN接口的协调工作;(2)在计算机端开发监控程序,实现任何接入该WLAN的计算机都能够通过无线方式监控和管理WSN。
图4 多个传感器网络互联系统数据流程图
数据流程如图4,WSN的终端设备在采集到光照和温度的数据后,通过WSN的无线链路将数据发送至数据中心,数据中心对数据进行一定的处理和转换后通过串口将数据再发送给数据中心的WLAN接口模块,WLAN接口通过无线局域网将数据经过无线路由器(WLAN AP)将发往目标IP的监控计算机。其中WLAN接口模块和WSN数据中心是通过接口电路封装在一起的整体器件。
3.3.1 硬件设计
WLAN接口选用Wi-Fi 1000的串口WLAN模块。它可实现802.11b网卡的功能,支持UART串口通信,具有体积小,稳定性强和用户接口开发较为快捷等优点。由于和数据中心设备所使用的串口电平标准不同,还需一个转换芯片及相关外围电路。
3.3.2 软件设计
软件部分的主要工作是为数据中心设备添加相应的程序,以实现对WLAN接口模块的各种参数进行配置以及协调工作。由于WLAN接口模块需要通过串口以命令的形式操作,所以需要在其产品手册中查找相应的命令来实现各种操作。其中需要配置的参数分为系统参数和网络参数。系统参数包括联网模式、传输模式、监听模式等。网络参数包括BSSID、信道号、SSID等。协调工作包括用命令的方式来引导WLAN模块扫描,加入或者断开网络,完成数据传递以及转换地址格式等。其流程如图5。
图5 数据中心设备程序流程
WSN通过WLAN接口实现了WLAN接入,因此任何一个接入到这个WLAN的终端,比如台式机、笔记本、手机等,只要安装有相应平台的监控程序,都可以实现对WSN的监控和管理。
本文使用Visual Basic 6.0开发了Windows操作系统下的监控程序。程序主要包括4个功能模块:通信、数据处理、数据显示和绘图。程序流程如图6。
图6 监控程序流程图
通信模块接收来自数据中心通过WLAN接口发送来的数据包,接收到数据包后将数据拆包,检测是否需要转发。如果需要转发,则根据目标设备的设备地址查找其所在WSN数据中心WLAN接口的IP,进行转发。对于不需要转发的数据包,将数据包中的终端设备信息和采集到数据放提取出来:通过读取设备信息,实时监测每个设备的连接状态和工作状态;将传感器采集的数据进行整理后,进行动态实时显示。
从目前的趋势来看,无线传感器网络与现有通信网络的融合必将成为一个重要的发展方向,而WSN与WLAN的结合,应用在适当的环境下,可以实现优势互补,更加有效地完成环境监测任务[3]。本文首先设计并实现了基于SimpliciTI协议的无线传感网络,然后在WLAN环境下实现了WLAN与WSN的互联以及多个WSN网络之间的互联,扩展了传感器网络实时数据的发布能力,也加强了用户对传感器网络的远程管理和监控能力。
[1] 刘元安,叶靓,邵谦明,等.无线传感器网络与TCP/IP网络的融合[J] . 北京邮电大学学报,2006,29(6):1-4.
[2] Texas Instruments.SimpliciTI:Simple Modular RF Network Specification Version 1.09[EB/OL] . http://www.TI.com.
[3] Mainwaring A.,J. Polastre,R. Szewczyk,D. Culler. Wireless Sensor Networks for Habitat Monitoring[J] .Intel Research,IRB-TR-02-006 June 2002.