摘要:基于S3C6410和CC2530接收传感器数据,使用嵌入式Linux实现任务调度,利用ZigBee模块将数据传输到服务器上,WSN信息管理系统使用了MVC经典框架Struts2做整体系统架构,在WEB应用前端上采用DWR框架,在WEB后台开发上使用JSP技术进行开发.本系统主要提供WSN对服务器信息管理的一种新机制,实现对数据、用户、系统进行有效、协调的数据信息管理与维护,同时通过对数据进行图表化处理,可以直观地显示、分析从传感器采集的数据.
关键词:WSN;JSP;信息管理;ZigBee
无线传感器网络(WSN)是由传感器节点、汇聚节点、互联网和用户终端等组成的无线通信网络,其目的是协作地感知、采集和处理网络覆盖区域中被感知对象的信息,并发送给用户[1].WSN信息管理系统的设计目的是在WSN运转的过程中,把传感器节点采集的数据通过协议传输到后台数据库中,利用设计的信息管理平台将获得的数据加以整理、规划、存储,与数据监控平台实现数据的双向传输与信息交互验证,并实现数据可视化,可方便、直观地查看数据.
1硬件平台
在WSN网络中有传感器节点、路由节点、汇聚节点和管理节点,如图1所示.传感器节点采集数据通过路由节点或者直接将数据传输到汇聚节点;路由节点有两种功能,一是对数据进行融合并转发数据,二是可以采集数据,与传感器节点相互协作;汇聚节点连接不同通信网络,实现不同网络之间的数据交换,并将采集的数据通过外部网络传输到管理节点;管理节点可以是PC机、手机、平板等,本系统采用PC机作为管理节点监控数据.分布在不同区域的节点越多,网络的复杂程度就越高,网络中传输的数据量就越大,从而对节点的软硬件资源要求增高[2].本项目优化了节点数据处理能力,并选择了目前稳定性较好的处理器和无线收发模块,同时考虑到通信协议,设计出如图2所示的无线传感器网络汇聚节点方案.图2汇聚节点框架本系统采用单片机S3C6410为核心,在射频模块方面,采用TI的CC2530接收传感器模块传送数据,GPRS/GSM模块与PC端服务器通信,由于Linux操作系统拥有完善的文件管理机制和网络通讯,选择在高频率ARM11内核上运行Linux操作系统,用Linux做任务管理.常用的WSN无线通信技术协议包括蓝牙、红外、Wi-Fi、ZigBee等,它们在应用中都各有特色[3].其中蓝牙技术协议复杂、功耗大、适合短距离数据传输、抗干扰能力差,并且开发成本高.红外技术只能实现点对点的连接,同时它是一种视距传输,可移动性差,无法灵活构建网络.Wi-Fi技术成本高、功耗大、安全性能低.ZigBee技术有协议简单、低功耗、成本低、短时延和高安全性等优点,是一种双向无线通信技术,协议栈只有32kB,可以便捷地嵌入各种设备中;目前生产ZigBee协议的无线芯片公司比较多,本方案选用CC2530芯片,全面兼容IEEE802.15.4标准、ZigBee通信协议,其他节点只要也遵从ZigBee协议就能实现节点自动采集和处理数据,保证各节点之间的通信.同时,ZigBee技术的网络扩展能力强,可以随时接入节点,节省网络中能量.
2信息管理系统的框架
MVC组织代码的方式是用业务逻辑、数据、界面显示分离的方法,将业务逻辑聚集到一个部件里面,在进行人机交互、定制和改进界面时,不用再编写业务逻辑[4].MVC模式以独特的方式用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面结构中.2.1Struts2的基本使用基于MVC本身的特性以及其优点,本信息管理系统使用了Struts2基本框架结构.使用Struts2基本框架具备以下优点:MVC结构清晰,开发者只需要实现业务逻辑;拥有丰富的tag和灵活的标记库,开发效率得到大幅度提高;页面导航功能提高系统清晰度;提供Exception处理机制;提供数据库链接池管理;支持I18N[5].2.2基本角色分配设计基于WSN数据的特点,角色设计分配方案,划分3种管理角色来管理WSN信息管理系统,分别是系统管理员、数据管理员、用户管理员.3种角色划分不同权限.系统内设计所有功能、数据都有开启、关闭设置,因此系统管理员可根据权限设置系统内部的各项数据、功能开关设置,不可以处理数据和用户角色;数据管理员只可以维护和处理数据;用户管理员只能处理用户,主要有增加、删除、修改、查询等功能,但不可删除或修改初始时的系统管理员.3种角色之间的关系是相互制约、相互协调、相互协作的,有利于系统安全、数据安全、运营维护,应避免唯一用户完全权限过大,导致其他未知危险情况发生[6].
3系统功能模块设计
3.1软件功能概述系统使用B/S结构,软件主体功能框架如图3所示.本系统主体设计可分为3个基本模块:角色用户模块、数据处理模块以及系统维护模块.3.2角色用户模块角色用户功能模块,主要有日志查询功能、新建用户功能、修改用户功能、查询用户功能、权限分配功能等.用户进行登录界面时,WEB端将数据处理成JSON数据格式将数据传送给服务器端,在服务器上处理数据并查询数据库验证用户存在,以及其角色身份,并将结果返回给浏览器端,若存在则登录系统,并记录Session值.用户对数据进行的操作有新建、删除、修改、查询等功能.利用Struts2框架的优势,在服务器上利用JAVA语言编写脚本代理处理浏览器发送来的请求操作来处理相关数据.用户权限分配功能,针对不同用户根据其身份角色对应的相应权限分配.角色权限采用开启、关闭设置,可开关不同用户使用不同功能.可开关数据增删改查功能,数据库远程、数据导出功能、条形、折型、即时图显示功能.3.3数据处理模块数据处理模块主要是将传感器接收的数据优化后进行处理的设计,将展示页面设计为两部分,在左侧的导航进行点击时,右侧出现不同的页面效果.主要有接收数据、开放数据、新增数据、修正数据、删除数据、查询数据功能等.3.4系统维护模块系统维护模块主要有系统运行、角色执行、数据执行、日志执行、图表数据、信息流转功能等.系统管理员身份登录后,主要展示主界面图和系统设置界面图.主界面中展示设置、用户、数据、分析区域;系统设置界面中对系统相关功能进行设置,包括数据权限设置、角色权限设置、日志执行设置、系统消息设置、系统运行设置等.
4系统数据的处理策略
4.1异步刷新数据本系统在执行异步数据交换时,采用DWR框架统一管理JAVA代理执行程序,并转换成JSON输出到浏览器段,利用JS中的JQuery函数库画出各种图表设计.4.2多种方式展示除了对基本数据操作外,可以以图表形式显示传感器接收数据的情况,主要提供了条形统计图、折线统计图和即时统计图3种图表显示数据,如图4所示.折线统计图主要展示相隔较远时间段数据的变化起伏情况;条形统计图主要展示单一传感器属性数值在各个阶段所出现的数值情况;即时统计图主要展示最近时间内数据起伏状态的实时动态.4.3数据安全备份本系统进行数据库备份主要是使用数据库自带的数据备份命令实现备份数据.系统管理员在系统中执行数据库备份操作,后台代理执行并驱动数据库执行数据库备份的操作命令.5结语本文介绍的WSN信息管理系统,以本项目数据传输协议研究、数据监控和数据逻辑处理为前提条件,设计并实现一个对WSN数据的监控与逻辑处理的后台支撑数据管理系统.此软件系统具有对WSN数据合理性管理、权限功能管理、合作式等新特性.
[参考文献]
[1]王安义,彭渝.基于TD-SCDMA煤炭行业信息化系统研究[J].西安邮电学院学报,2010,15(6):36-39.
[2]欧庆于,罗芳,赵俊阁.基于多传感器的嵌入式安全监控体系研究[J].计算机工程,2011,37(2):114-116.
[3]吴全恩.基于ARM9和Linux的无线传感器网络汇聚节点的设计与实现[D].成都:西南交通大学,2014.
[4]李山,杨波.基于WiFi的环境监测系统设计[J].软件,2011,32(1):42-45.
[5]李建军.港口防雷装置技术状态评估及管理信息系统的研发[J].交通科技,2016(5):178-180.
[6]王永杰,杨小平.基于无线传感器网络的智能小区监控系统设计[J].制造业自动化,2011,33(2):68-70.
作者:谢巧玲 孙少波 单位:西安文理学院