基于茶园旱情监测系统的WSN网关设计
扫描二维码
随时随地手机看文章
干旱缺水历来是制约我国农业生产发展的主要因素,南方省份如广东,尽管年降雨量充足,但季节性缺水仍然严重,粤北、粤西地区尤为突出。茶树对土壤含水量的要求较高,水分不足或过多均不利于茶树生育,因而建立茶园旱情监测系统,将为解决茶园合理灌溉的问题提供了科学依据。
近年来,无线传感器网络(WSN)技术迅速兴起,成为国内外研究的热点领域之一。WSN中的网关负责接收来自节点发送的数据,并将数据进行修正、融合等处理,然后通过以太网或GPRS等网络基础设施将数据接入Internet网络,传送至远程终端,同时对远程终端所发出的指令进行及时处理和反应。目前,国内外对于信息远距离传输的WSN网关技术已进行了初步的研究。美国的Crossbow公司曾推出具有以太网通信功能的汇聚节点产品并得到应用。哈佛大学的科研人员曾经在位于厄瓜多尔境内的唐古拉瓦火山(volean thngnrahua)附近部署了小范围的无线传感器网络,采集次声波信号并传送至汇聚节点,通过接入无线Modem将数据转发到9 km外火山监测站的PC机上。国内一些大学和科研机构也提出了有关解决方案,比较典型的是基于有线通信方式的以太网和无线通信方式的GPRS,CDMA等WSN网关,也有利用公共电话网(PSTN),采用拨号方式建立临时连接方式实现远程数据传输的网关。
这里的目的是设计、开发一种适合于山地茶园旱情的WSN网关。
1网关系统的硬件设计
系统的硬件组成框图如图1所示。由CPU、存储模块、本地连接模块、簇内网络连接模块以及簇外网络连接模块组成。
系统采用三星公司的S3C2410作为CPU。S3C2410是一款基于ARM920T内核的16/32位RISC嵌入式处理器,内部有内存管理单元(memory managerunit,MMU),可以稳定运行在266 MHz。
存储模块由FLASH存储器、SDRAM以及SD卡组成。其中,FLASH 7存储器采用三星公司的K9F1208UDM NAND FLASH;内存SDRAM部分采用Hynix Semiconductor公司的HY57V561620芯片;S3C2410带有SD卡接口,系统扩展出SD卡插槽,用SD卡扩展数据存储空间。
本地连接模块由串口电路、USB接口电路以及JTAG接口电路3部分组成。串口电路用于系统调试以及连接(自身)汇聚节点的DB51针扩展接口。USB接口用来连接USB设备,以及实现与工作站连接、下载Linux内核等功能。该模块还提供了JTAG接口,方便用户进行JTAG调试。
簇内网络连接模块主要负责网关与汇聚节点的连接,汇聚节点通过DB51针连接器与网关本地连接模块中DB9串口连接,实现了网关与汇聚节点的连接功能。
簇外网络连接模块的功能是实现网关系统利用以太网或GPRS网络接入Internet进行数据传输,供远程终端进行数据查询以及远程监控。簇外连接模块由以太网接口电路以及GPRS接口电路组成。
[!--empirenews.page--]2 网关系统软件平台搭建
Linux是内核可裁剪、重新配置的操作系统。在ARM平台上移植Linux嵌入式操作系统的工作分为建立交叉编译环境、Bootloader移植、Linux内核(kernel)移植、文件系统移植和系统驱动程序设计等。Linux系统移植示意图如图2所示。
交叉编译环境是由编译器、连接器和解释器组成的综合开发环境,可以将应用程序转换成能在目标机上运行的二进制代码。
Bootloader是嵌入式系统上电后执行的第一个软件代码。它的主要运行任务就是将内核映像从硬盘上读到RAM中,然后跳转到内核的入口点去运行,即开始启动操作系统。
文件系统是指在物理设备上的任何文件组织和目录,它构成了Linux系统上所有数据的基础。该系统选用JFFS2作为文件系统。
在Linux中,设备驱动程序的设计和使用一般有两种方式可供选择。第一种方式是将设备驱动程序作为可加载的模块,动态地加载到内核,模块是内核的一部分,但以独立的个体形式存在;第二种方式是将设备驱动程序作为内核代码的一部分编译到内核中去,是以内核模式运行的。本文选用了第二种方式。
3 远程数据传输方式设计与实现
在无线传感器网络与外部网络进行远程数据传输的过程中,网关处于承上启下的地位,是数据传输的中枢节点。本文的通信软件包括网关与汇聚节点通信模块和网关与远程终端通信模块。
网关与汇聚节点之间的通信主要是指网关接收汇聚节点数据的过程,一般采用串口通信方式。由于Linux内核中已嵌入了串口驱动程序,对串口的操作可通过设备文件来实现。
网关与远程终端进行数据传输则分别通过开发以太网应用程序和利用PPP协议,实现了以太网的有线通信和GPRS的无线通信。采用面向连接的客户机/服务器模型,其通信过程见图3。考虑到对数据传输的可靠性要求较高,故采用基于TCP的流式套接字(socket)通信机制。利用Sierra Wireless公司的Aircard750上网卡连接移动GPRS网络接入Internet,从而实现网卡与远程监控中心的数据交换。利用PPP协议栈把数据包封装成IP包的格式,发送给无线模块。完成从拨号到最终逻辑通信链路的建立需要经过:网关首先通过拨号呼叫ISP,在得到ISP应答后,建立起初始的物理连接,此时可以检测到载波信号;然后终端与ISP之间开始传送一系列经过PPP封装的LCP分组,用于协商选择将要采用的PPP参数,参数协商完成后开始认证过程;认证成功后,通信双方开始交换一系列的NCP分组来配置网络层。对于上层使用IP协议的情况而言,此过程是由IPCP完成的;当NCP配置完成后,逻辑通信链路就建立好了,双方可以开始在此链路上交换上层数据。该过程中PPP状态转换如图4所示。
[!--empirenews.page--]4 试验分析
网关系统要完成的主要任务包括采集传感器节点旱情监测的相关数据,对数据进行处理和封装后通过以太网或GPRS网络发送到远端具有固定公网IP的PC机。为了验证该网关系统数据传输的实时性、可靠性和适应性,分别对以太网连接和GPRS远程传输可靠性进行了测试试验。
试验条件:
(1)Ethernet Switch交换机1个,EIA/TIA 568B标准网线(直连网线)2根;
(2)网关系统1套,采用嵌入式Linux操作系统、以太网口驱动程序、串口数据采集程序、socket套接字联接程序;
(3)利用10Base-T接至网络的PC机1台,采用Windows XP操作系统;
(4)Crossbow公司MICAz节点和MTS310传感器6套,采用Crossbow公司的Moteview监控软件。
以太网的连接试验主要是针对网关连接、网关接收汇聚节点数据以及远程数据传输进行测试。网关连接测试是验证网关嵌入式Linux操作系统、CS8900网卡初始化和驱动程序的运行正常与否,以及网关与监测中心能否通过以太网进行正常的网络连接。测试网关接收汇聚节点数据的目的主要是验证SD卡的初始化、驱动程序正常与否,网关能否通过串口读取汇聚节点所接收的WSN节点数据。试验证明,网关系统能够实时采集WSN节点数据,并通过以太网远程传输到监控中心,系统运行稳定可靠。
GPRS数据传输可靠性可以由误码率和丢包率来衡量。为了节省网络带宽,该实验以丢包率作为分析的主要依据。由于GPRS传输延迟的不确定性,数据传输的可靠性与数据包的发送时间间隔相关,间隔时间越大,数据传输的可靠性就会降低。分别对TCP/IP传输和UDP传输两种通信方式进行了测试丢包率试验,发送间隔时间为1~10 s,每种间隔时间进行500次数据传输试验,计算的丢包率如图5所示。可以看出,在2种传输模式中,4~5 s是1个分界点,自此以后丢包率基本趋于稳定,这时的丢包状况来源于网络的不可控因素。由于茶园旱情监测对数据传输的实时性没有过高的要求,因此,网关GPRS远程传输采用TCP方式,间隔时间选为5 s。
5 结 语
针对目前无线传感器网络的应用特点及发展趋势,结合现今网络技术、嵌入式系统技术的发展,设计采用嵌入式系统平台实现多种远程数据传输技术的WSN网关,用于茶园旱情监测系统。网关通过串行口与汇聚节点通信,可以通过以太网或GPRS两种可选方式监测数据发到远程监控中心。开发了功能完善的WSN网关应用软件,在实际应用中取得了良好的效果。随着3G时代的到来以及工业级3G通信模块的推出,如何利用网关系统实现WSN与3G的互联是今后拟研究解决的问题。