APP下载

无线传感网网关Web服务中间件的设计与实现

2014-11-30赵晓瑞

计算机工程与设计 2014年6期
关键词:中间件调用网关

王 恒,赵晓瑞,王 平

(重庆邮电大学工业物联网与网络化控制教育部重点实验室,重庆400065)

0 引言

无线传感器网络是一种由大量微型传感器节点组成的自组织网络[1],但是该网络并不是孤立存在的。为了达到不同的应用需求,网关需要通过特定的方式将传感器节点的信息发送到远程监控中心或用户,监控中心或用户再通过上位机软件查看相关数据和信息,同时监控中心将控制管理命令发送到网关完成对传感器网络的远程监控和管理[2]。

目前,国内外出现了一些无线传感器网络的可视化管理系统,如美国加州大学伯克利分校的TinyViz[3]、英国伍尔弗汉普顿大学的M-DAD以及我国中科院宁波分所开发的SNAMP[4]等。这些系统都具有显示节点列表、网络拓扑、数据实时分析、存储等全部或部分功能,且都在朝着人性化、操作简单化及功能多样化的方向发展[5],但是它们共同存在一个缺点,即建立在特定的应用环境基础上,采用私有协议和网关进行通信,没有标准化的服务接口,通用性和移植性较差[6]。本文考虑了浏览器/服务器 (B/S)模式的优点[7],开发了介于Web服务器和网关之间的中间件,标准化了通信接口,实现网关和底层传感器网络的任意挂接。

1 网关Web服务的整体结构

本文基于Web服务技术设计出一个具有标准化服务接口的Web服务中间件[8],该中间件工作在Web服务器和无线传感器网络网关之间,是整个无线传感网网关Web服务的核心。当用户通过浏览器查看无线传感器网络的相关信息时,首先点击网页界面的相关按钮,Web服务器便将相应的指令发送给中间件;然后中间件解析Web服务器指令,待解析完成后便发送标准指令到网关;最后网关将相应节点的数据或者网络信息返回给中间件,中间件再转发给Web服务器,Web服务器通过处理即可显示在网页界面上。Web服务整体结构如图1所示。

图1 Web服务整体结构

Web服务中间件有2个接口,其中传感网侧接口和网关进行通信,其主要功能是实现向网关发送读取数据指令或其它控制指令,并且接收网关返回的传感器节点数据信息;服务器侧接口和Web服务器进行通信,其主要功能是实现接收Web服务器发送的指令,同时实现向服务器转发网关返回的传感器节点数据信息,其功能结构如图2所示。

图2 Web服务中间件功能结构

2 Web服务中间件传感网侧接口设计

Web服务中间件提供数据服务和管理服务,因此其需要和网关进行交互。为了减少网关开发者开发多种现场总线协议和无线系统的工作量,对Web服务中间件的传感网侧接口进行了标准化设计,为配置和访问无线传感器网络提供了一个标准模型[9]。Web服务中间件传感网侧接口服务标准指令见表1。

表1 接口服务标准指令

中间件会在完成服务器指令解析后,然后发送上表中的具体指令到网关,网关根据指令内容进行相关操作。表中的指令主要包括2类:一类需要网关返回节点数据信息,例如读节点列表、节点数据、网络拓扑等,此类指令都以“r”打头,表示Web服务器需要获得相关节点数据信息时,便调用中间件,中间件发送此类指令给网关,网关返回相关数据信息,中间件再将数据信息转发给服务器;另一类不需要网关返回节点数据信息,但是会返回一个操作成功的确认标志 (success),例如网关配置、节点配置等,此类指令都以“w”打头,表示Web服务器需要进行网关或节点配置时,便调用中间件,中间件发送相应指令到网关,网关进行相应的配置操作,完成后返回一个确认标志。

下文就比较常用的几条指令做以详细的介绍,包括指令概述、参数描述以及中间件使用该指令的过程示意图。

(1)读取节点列表:当Web服务器需要获取网络节点列表信息时,通过调用中间件,中间件向网关发送该指令,网关便把整个网络的节点列表信息返回给中间件,中间件再转发到服务器。中间件调用该指令的过程如图3所示。

图3 中间件读取节点列表

(2)读取节点数据:当Web服务器需要获取网内某节点的数据时,通过调用中间件,中间件向网关发送该指令即可获取相应节点的数据,其中参数d_x中的x表示需要读取数据的节点编号。中间件调用该指令的过程如图4所示。

图4 中间件读取节点数据

(3)读取节点ID:当Web服务器需要获取网内某个节点的ID时,通过调用中间件,中间件向网关发送该指令即可获取相应节点的ID,其中参数d_x中的x表示需要读取ID的节点编号。中间件调用该指令的过程如图5所示。

图5 中间件读取节点ID

(4)读取网络拓扑结构:当Web服务器需要获取整个网络的节点拓扑结构信息时,通过调用中间件,中间件向网关发送该指令,网关将节点关联信息返回给中间件,中间件运行拓扑布局算法,最后将拓扑结构信息转发到Web服务器。中间件调用该指令的过程如图6所示。

图6 中间件获取网络拓扑结构

(5)网关配置:当Web服务器需要进行网关配置时,通过调用中间件,中间件向网关发送该指令,网关即可完成配置操作,并将确认标志返回给服务器。中间件调用该指令的过程如图7所示。

图7 中间件进行网关配置

(6)节点配置:当Web服务器需要对网内某一节点进行配置时,通过调用中间件,中间件向网关发送该指令,网关即可完成对相关节点的配置操作,并将确认标志返回给服务器,其中参数d_x表示配置节点的编号。中间件调用该指令的过程如图8所示。

图8 中间件进行节点配置

3 Web服务中间件服务器侧接口设计

Web服务中间件的服务器侧接口和Web服务器通信,主要用于接收服务器的调用指令和向服务器转发网关返回的数据。首先,中间件接收到Web服务器发送的指令,然后进行解析指令,指令解析后调用标准指令通过传感网侧接口发送给网关,如果服务器发送的是读取数据指令,则等待网关把相关数据发送回来,最后再将数据转发给Web服务器。

Web服务器采用CGI脚本和中间件进行交互,并且将服务指令通过参数的形式传递给中间件[10],具体过程如图9所示。

4 应用举例

Web服务中间件在提供数据服务和管理服务的过程中起着重要作用,下面以用户获取某一温度传感器节点的数据为例,说明其工作的整个过程。该过程如图10所示。

5 无线传感网网关Web服务的测试与验证

5.1 测试平台

本设计测试中的无线传感网采用802.15.4标准网络,网关采用ARM网关,Web服务器采用轻量级嵌入式Web服务器Boa[11],测试使用的传感器节点和网关都是由重庆邮电大学工业物联网与网络化控制教育部重点实验室开发与研制。测试使用硬件实物如图11所示。

图9 Web服务器调用中间件工作流程

图10 温度传感器数据读取全过程

图11 测试硬件实物

5.2 测试结果

5.2.1 服务接口数据交互

为了能够清楚的查看Web服务中间件工作的流程,在终端中将其服务接口数据的交互过程打印出来,结果如图12所示。

图12 模拟Web服务器调用中间件,图12中第一行表示Web服务器将指令以参数的形式传递给中间件,第二行表示中间件接收到服务器的指令,第三行表示中间件解析Web服务器的指令后发送标准化指令到网关,第四行表示网关将采集的数据返回给中间件,中间件再转发给Web服务器,最终在网页界面显示出来[12]。

图12 服务接口数据交互过程

5.2.2 网页显示界面

测试网络挂接了4种传感器节点:无线温湿度传感器节点、无线粉尘传感器节点、无线烟雾传感器节点和无线瓦斯传感器节点。节点列表显示页面和无线温湿度传感器节点数据显示页面分别如图13和图14所示。

图13 节点列表显示页面

图14 无线温湿度传感器节点数据显示页面

5.3 结果分析

本测试中使用的传感器节点都是实际网络节点,测试所得数据真实有效,测试结果表明,本文设计与实现的无线传感网网关Web服务中间件能够有效地完成Web服务器和无线传感网网关之间的数据信息交互,进而协助服务器和网关完成对无线传感器网络的数据采集和控制管理。

6 结束语

本文在现有网关和Web服务技术的基础上,设计与实现了无线传感网网关Web服务中间件,标准化了无线传感网网关Web服务接口。一方面,该Web服务中间件的传感器侧接口能够和底层通用型无线传感器网络任意挂接,在一定程度上减轻开发的工作量和复杂度,避免二次开发,有效节省开发成本和时间,而且有利于在不同网络和平台之间的移植;另一方面,该Web服务中间件能够协助服务器,使得用户通过浏览器网页界面远程查看传感器网络的节点数据信息,并且能够对网络进行控制和管理。

[1]QIAN Zhihong.Internet of things-oriented wireless sensor networks review [J].Journal of Electronics and Information Technology,2013,35(1):215-227(in Chinese).[钱志鸿.面向物联网的无线传感器网络综述[J].电子与信息学报,2013,35(1):215-227.]

[2]KUANG Xinghong,SHAO Huihe.Study of the gateway of wireless sensor networks[J].Computer Engineering,2007(6):228-230(in Chinese).[匡兴红,邵惠鹤.无线传感器网络网关研究[J].计算机工程,2007(6):228-230.]

[3]LIU Ying,YU Hongyi.Technology of application developing based on TinyOS in wireless sensor network[J].Transducer and Microsystem Technologies,2007,26(3):93-96(in Chinese).[刘营,于宏毅.基于TinyOS的无线传感器网络应用程序开发技术[J].传感器与微系统,2007,26(3):93-96.]

[4]LIRuijun,HU Shujuan,HOUWeiyan.Industrialwireless networks protocolwith time synchronization and node positioning[J].Computer Engineering and Design,2008,29(18):4701-4703(in Chinese).[李锐君,胡淑娟,侯维岩.具有时间同步和节点定位的工业无线网络协议[J].计算机工程与设计,2008,29(18):4701-4703.]

[5]HE Pengju,HAN Shuren,ZHOU Xianjuan.Research on the data managementsystem in wireless sensor network[J].Mining and Processing Equipment,2008(10):38-41(in Chinese).[何鹏举,韩树人,周贤娟.无线传感器网络数据管理系统研究[J].矿山机械,2008(10):38-41.]

[6]YUAN Nan,ZHOU Huachun,ZHENG Tao.Design and implementation of web-based visualization management system for wireless sensor network [J].Modern Electronics Technique,2011,34(17):43-46(in Chinese).[元男,周华春,郑涛.基于Web的无线传感器网络可视化管理系统的设计与实现[J].现代电子技术,2011,34(17):43-46.]

[7]LIU Yanpeng,YANG Baozhu,WANG Yuansheng.Design of forest warning and command system based on browse/server architecture[J].Computer Engineering and Design,2013,34(1):360-365(in Chinese).[刘艳朋,杨宝祝,王元胜.基于B/S的森林火灾预警与指挥系统设计 [J].计算机工程与设计,2013,34(1):360-365.]

[8]WANG Zhenhui,WANG Zhenduo,ZHANGMin,etal.Design and implement of security middleware of web database[J].Science Technology and Engineering,2013(5):1335-1340(in Chinese).[王振辉,王振铎,张敏,等.Web数据库安全中间件设计与实现[J].科学技术与工程,2013(5):1335-1340.]

[9]ISA-100.11a-2011:Wireless systems for industrial automation:Process control and related applications[S].2011.

[10]XIE Shiyi,XU Bing.Design of embedded web server and its implementation of CGI[J].Computer Engineering and Design,2007,28(7):1598-1600(in Chinese).[谢仕义,徐兵.嵌入式Web服务器的设计及其CGI实现[J].计算机工程与设计,2007,28(7):1598-1600.]

[11]SONG Kai,YAN Liping,GAN Lan.Design and implementation of embedded Web server[J].Computer Engineering and Design,2009,30(4):808-810(in Chinese).[宋凯,严丽平,甘岚.嵌入式Web服务器的设计与实现[J].计算机工程与设计,2009,30(4):808-810.]

[12]YU Haichao,WANG Honglei.Design and realization of intelligent network about home systems based on ARM processor[J].Information Technology,2012(4):162-165(in Chinese).[玉海超,王红蕾.基于ARM的智能网络家居系统的设计与实现[J].信息技术,2012(4):162-165.]

猜你喜欢

中间件调用网关
智能燃气表物联网运行体系网关技术研究
基于FPGA的工业TSN融合网关设计
大规模低轨卫星网络移动性管理方案
一种主从冗余网关的故障模式分析与处理
我国自主可控中间件发展研究
系统虚拟化环境下客户机系统调用信息捕获与分析①
以实力证明 用事实说话
利用RFC技术实现SAP系统接口通信
中移动集采:东方通中间件脱颖而出
金蝶 引领中间件2.0新时代