王春明 王翔宇 缪明
摘要:设计了一种基于ZigBee无线传感器网络的水产养殖水质环境监控系统,主要由协调器模块、终端传感器节点模块、上位机系统和移动应用系统等部分组成。传感器终端节点选用TI公司的CC2530作为主处理器芯片,在Z-Stack协议栈的基础上组建无线监控网络。在上位机及移动终端上实现了水溶氧、水温、pH值等环境状态的监控功能。
关键词:水质监控;物联网;Z-Stack协议栈;CC2530
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2015)22-0154-04
Abstract: Design a aquaculture water quality monitoring system based on ZigBee wireless sensor network. The system consists mainly by the coordinator module, terminal sensor node module, epigynous machine and mobile application etc. Sensor terminal node chooses CC2530 of TI company as the main processor chips, To set up the Wireless monitoring network based on the Z-Stack protocol stack. The epigynous machine and the mobile terminal has realized the monitoring function that to monitor the water dissolved oxygen, temperature and pH value.
Key words: Water quality monitoring; IoT; Z-Stack Protocol; CC2530
随着水产养殖规模的不断扩大,传统的靠经验来管理水产养殖水质状况已无法适应生产实际需求,实施智能监控水溶氧含量、pH值、温度以及水位等环境状态已经非常重要。
物联网技术是信息技术的有一次革命,在物联网应用领域中,以ZigBee技术为核心的无线传感器网络是一种基于IEEE802.15.4协议的结构简单、功耗微小、数据传输速率较低并且成本低廉的技术标准统一的短距离无线通信技术,非常适用于环境监测、现代农业、医疗与健康保护、家庭自动化、智能建筑、智能交通系统、工业控制等方面[1]。
ZigBee网络包含三种类型的节点,即协调器节点、路由节点和终端传感器节点。一个ZigBee网络首先必须包含一个承担网络管理功能的协调器,负责启动网络、配置网络成员地址、维护节点的绑定关系表等;路由节点在网状网络或簇状网络中存在,实现扩展网络的功能;终端节点作为无线网络系统的边缘设备,通过其配置的传感器及控制端口直接对环境状态进行监控。
将无线传感网络技术引入到规模化设施水产养殖中,构建基于无线网络的水产养殖环境远程智能化测控系统,是水产规模化养殖发展的必然趋势[2]。
1 系统总体结构设计
系统总体结构如图1所示。系统采用ZigBee无线传感器网络监控水产养殖水质环境状态,主要由协调器模块、终端传感器节点模块、上位机系统和移动应用系统等部分组成[3]。
系统的具体主要工作过程如下:首先由协调器创建ZigBee网络,然后等待终端传感器节点加入网络。终端传感器节点上电后,会自动查找并加入已由协调器创建的ZigBee网络,并将自身的网络地址发送给协调器。协调器把传感器节点的相关信息通过串口RS232发送给上位机进行保存。
网络组建成功后,由上位机负责对网络的管控,包括:设置传感器采样时间间隔、设置增氧泵的启停阀值以及设置移动应用服务器的相关功能。
各个终端节点在上位机的指令控制下工作。当上位机想要获取终端节点的传感器数值时,只需按程序操作,通过串口向协调器发送相应的测量指令,协调器会通过ZigBee无线网络向有关终端节点发出测量启动命令。传感器终端节点模块收到来自协调器的测量命令后,开始进行环境参数测量,最终将测量数据通过经过ZigBee无线网络经协调器发送到上位管理机,上位管理机根据预先设定的监控策略进行相应处理并显示测量结果。
本系统中ZigBee模块选用TI公司成熟的无线射频芯片CC2530作为核心处理器,该射频芯片功能强大,是一款符合IEEE802.15.4规范的SoC系统解决方案。ZigBee模块在TI公司的无线收发模块CC2591的协作下,借助ZigBee网络,实现底层数据的更长距离传输,完成数据采集与命令传递。
2 协调器节点设计
协调器节点是ZigBee无线传感器网络的控制中心,它一方面负责网络的发起、相关参数的设定、信息的管理与维护以及确定无线通信信道、设置网络通道标识码(PANID) 、配置无线网络描述文件(Profile文件)、对请求加入网络的节点作出响应,还要完成网络设备的绑定和网络内部地址的分配等工作;另一方面,协调器节点还要及时接收终端节点发来的环境测量数据,将这些收到的数据进行汇集出理后按规定的数据格式上传给上位管理机,还要接收由上位机下达给终端节点的诸如启停增氧泵等操作的伺服命令。
协调器节点主要由射频芯片CC2530处理器模块、射频前端模块、串口通信模块、LED状态指示灯、晶振时序控制模块、电源状态监控模块以及其他外设接口模块组成[4]。协调器节点的主要硬件电路原理框图如图2 所示。
LED状态指示模块用来指示无线网络状态。CC2591是TI公司提供的與CC2530配套的2.4GHz的射频功放前端,可使射频输出功率达到22分贝。协调器采用标准RS232串口与上位机进行通讯。
协调器模块处理器芯片CC2530集成了2.4 GHz的射频收发器、增强型工业标准的8051MCU、内置256 KB可编程FLASH存储器、8KB的RAM存储器,含有丰富的的外设,包括2个USART、21个通用GPIO和1个12位ADC。CC2530支持TI公司的无线网络协议栈Z-Stack,这样可以有效提高开发效率,开发者只需关注应用层的设计。
为了增加通信距离,RF前端采用了TI公司针对低功耗与低电压无线应用的高性价比的2.4GHz RF前端射频芯片CC2591。该芯片内部集成有增益为+22dBm的功率放大器(PA)、RF匹配网络、平衡/不平衡转换电路和低噪声放大器(LNA)等。CC2591可用在所有2.4GHzISM系统等无线传感器网络通信系统。使用CC2591只需使用较少的外围电路就可以有效地改善无线射频通信性能,实现高功率输出,达到增加无线通信距离的目的。
对于CC2591的3个使能控制,HGM_EN、PA_EN 、LNA_EN分别与CC2530的P0_7、P1_1、P1_4相连。其中,控制高增益模式HGM_EN的P0_7可以由任意的GPIO代替,但要注意的是另外两个引脚接法不能改动,因为它们分别映射到系统协议栈内部接口和寄存器。
3 终端传感器节点设计
终端传感器节点接有溶氧、pH值、温度、水位等传感器,处理器采用CC2530、无线射频通信采用CC2591模块。终端模块是本系统的基本构成单元,完成水质环境数据的采集和传输以及对伺服系统的控制。
传感器节点也是采用CC2530F256芯片外接CC2591功放模块。CC2530处理器把采集的数据通过CC2591功放芯片发给协调器节点。终端传感器节点硬件主要部分设计原理如图3所示。
终端节点中的溶解氧传感器采用性能稳定的PPM级在线溶解氧电极(DOG-209F)。该型溶解氧传感器的测量范围是0-20mg/L,测量誤差±0.1 mg/L。该溶解氧传感器运行稳定可靠,适用于大面积水产养殖溶解氧的连续测定。
终端节点中的温度传感器系统采用美国Dallas半导体公司的数字式温度传感器DS18B20。专门设计的传感器采用不锈钢外壳封装,防水防潮,同时采用导热性高的密封胶灌封,保证了温度传感器的高灵敏性,极小的温度延迟。DS18B20采用单总线(1-Wire)通信传输协议,无需A/D转换,直接输出的是被测温度数字值,测温范围为-55℃~+125℃,测量分辨率为0.0625℃。该传感器运行稳定,非常适合于水产养殖环境的实时温度测量。
终端节点中的pH 值传感器选用WQ201型号的pH值传感器探头。整个WQ201传感器部件使用环氧树脂灌封在不锈钢柱体内。根据需要,传感器采用数十米长的海洋级电缆连接,该pH值测量探头采用3线制,输出范围为4~20mA。
水位传感器选用投入式液位传感器(PY201型),其工作基本原理是将一定水位高度的压力转换成4~20mA标准电信号,该型水位传感器采用不锈钢焊封结构,适用于河流、养殖池塘等的液位测控。
4 ZigBee无线网络软件设计
ZigBee协议建立在IEEE 802.15.4协议之上,采用分层设计的技术架构。IEEE802.15.4定义了低速率无线个域网(LR-WPAN)的物理层(PHY)和介质访问控制层(MAC) 规范。ZigBee协议在底层协议(IEEE802.15.4)的基础上,增加了应用层(APS)和网络层(NWK)协议规范。可以说,ZigBee协议是对IEEE802.15.4协议的扩充和细化。ZigBee协议采用分层设计的好处是每一层只负责自己的事务,数据传输更加透明和高效[5]。
ZigBee网络类似于GSM或CDMA网络,其数据传输模块如同移动通信的网络基站。在一个完整的ZigBee网络内,各个ZigBee无线网络节点之间可以相互通信,通讯距离随着天线选用和空间开阔程度可从标准的75米到几百米甚至几公里,并且支持无限扩展。美国TI公司提供的Z-Stack协议栈完美地实现了ZigBee协议的全部功能。
本项目系统采用IAR Embedded Workbench For8051开发环境,在TI公司提供的Z-Stack基础协议栈上,编写了协调器模块和终端节点模块的应用程序,这样,可以提高开发效率,保证系统性能稳定和可靠运行。上位机监控程序用C#语言编写。系统涉及的软件主要包括协调器节点程序、终端节点程序、上位机程序以及移动应用服务器程序。协调器与终端节点软件设计流程如图4所示。
协调器节点软件是在Z-Stack协议栈的基础上实现的,包括ZigBee协议栈中诸如网络号(PanID)及通道号的配置、ZigBee网络组建、终端节点绑定和应用层业务软件的开发 [6]。协调器上电后,首先运行对CC2530的初始化程序,发起新建一个新的无线传感器网络。如果网络组建成功,当有终端节点加入网络后,协调器为该终端节点分配网络地址,则进入应用业务层流程工作,其软件流程如图4(a)所示。
终端节点也是由射频处理器芯片(CC2530)中烧写Z-Stack协议栈构成,负责监测水溶氧浓度、pH值、水温和水位等各种养殖环境参数,并能接收上位机的控制指令进行相关的控制操作。
终端传感器节点能自动搜索并加入由协调器创建的网络,首先向协调器发出请求绑定的信息,协调器对该绑定请求作出响应,终端完成与网络的绑定。之后,终端节点会定时将测量到的水溶氧、水温、pH值等数据经由无线网络发给协调器。如果在通信过程中,与协调器“失联”,终端传感器节点则解除这一绑定,重复搜索网络并建立新的绑定。一般情况下,终端传感器节点多数时间处于休眠状态,只有当接收到协调器传来的测量命令或程序中设定的定时中断触发时,才会被唤醒进入正常工作模式。终端将测量的环境数据通过无线网络发给协调器,协调器将这些数据通过串口上传到上位机,由上位机进行整个系统的管理和控制。其软件流程如图4(b)所示。
5 上位机管理系统设计
上位机管理界面可以为管理人员清楚地提供传感器所在位置、水溶氧浓度、pH值和水温等数据,实现远程无线测量和控制,工作人员能够在上位机上方便地对增氧泵进行远程控制,上位机监控系统工作界面如图5所示。
上位机监控平台接收从水产养殖池塘传来的测量数据并及时存入数据库,监控平台实时显示监测到的环境状态。数据库中保存的历史数据可用于进行技术分析、辅助决策等需要。
水质环境对鱼虾养殖的影响很大,本系统针对南美白对虾的水质需求,实时监控和管理水质环境。系统提供了设置水质参数报警与控制阀值的功能,上位机在收到来自养殖现场终端的水质测量数据后,一方面进行动态显示,另一方面与阈值比对,如果超出阀值范围,则发出声光报警与短信提示信息,同时向相关终端节点发出控制命令,启动增氧泵等伺服设备。这样,管理人员可以方便地观测和掌控远端养殖现场的环境状况,保证水质处于适宜鱼虾生长的良好状态。
至于移动应用服务器的设计,其功能与上位计算机一致,相关信息可在手机等移动设备上显示,用户可通过手机实时掌控现场状态。
6 系统测试
在对协调器、终端模块及上位机模块的各项功能进行联调后,本系统已安装在江苏沿海某南美白對虾养殖基地。南美白对虾原产于南美洲沿海,具有生长速度快,抗病力强等养殖优势,二十世纪八十年代末由南美洲引入我国,先后在江苏、广东、广西等省沿海区域大量推广养殖。
南美白对虾能在水温10℃~40℃水域中生存,最适宜水温为20℃~30℃。南美白对虾对水质要求较高,尤其要求水体溶氧充足。人工养殖南美白对虾水体溶氧度一般控制在5mg/L以上,这样对其生长更为有利,南美白对虾的窒息点为0.8mg/L左右。对水体pH值控制在7~8.5之间。
在养殖池塘安放了四个终端测控节点,一个网络协调器节点,养殖池塘与监控室相距2公里左右,其中某一池塘的部分监测数据如表1所示。
7 结语
养鱼即养水,水产养殖本质上是对水质的有效养护。传统的人工养护方式对水质因素的变化反应迟钝,往往是等到池塘里的鱼虾出现异常现象时,才感到水质发生了问题。如果采用人工方式,不断地对水质进行抽样检测,则必然会增加人工成本。本系统采用物联网无线测控技术,在上位机上实时显示养殖池塘水质状况,配合参数阈值设置与报警功能,给水产养殖水质监控提供了科学先进的管理方法和手段,达到减少风险、增加效益的目的。
本文在介绍ZigBee无线网络相关知识的基础上,以TI公司的射频芯片CC2530为硬件基础,阐述了无线传感器监控网络的模块构成、工作原理及工作流程,介绍了各模块的件设计方法。经测试,系统运行稳定,测量数据准确,操控方便可靠,具有组网容易,安装维护快捷方便、成本低廉、易于普及等优点。
本文介绍的技术在水产养殖水质监控、智能农业环境监控等领域具有良好的推广应用价值。
参考文献:
[1] 瞿雷,刘盛德,胡咸斌.ZigBee技术及应用[M].北京:北京航空航天大学出版社,2007.
[2] 周洪波. 物联网技术、应用、标准和商业模式[M].北京:电子工业出版社,2011.
[3] 黄玉立,童玲.基于CC2531+CC291的WSN节电通信模块设计[J].单片机与嵌入式系统应用,2011(1):71-73.
[4]章伟聪,俞新武.基于CC2530及ZigBee协议栈设计无线网络传感器节点.计算机系统应用,2011,20(7):184-187.
[5] 徐 健, 杨珊珊.基于CC2530的ZigBee协调器节点设计[J].物联网技术可靠传输,2012(5):57-59.
[6] 王绍卜.基于ZigBee的水产养殖智能监测系统设计[J].微型机与应用,2013,32(7):16-19.