SUMMARY0 U+ Y- S* ?3 q
摘 要+ {# O$ D7 I. V
& i4 A' j5 q5 \# [
& M9 P' y! d, `$ e
) _. a, z5 J6 h' C6 ~; C为提高传统水质污染监测系统的时效性和易操作性,结合无线传感器技术,设计一种基于无线传感器网络的水质监测系统。首先,根据系统需求,对水质监测系统的整体框架进行构建。然后分别对硬件和软件两个方面进行详细设计,其中硬件设计主要从ZigBee模块最小系统、水质参数采集模块、ZigBee/GPRS网关的接口三个模块进行设计和实现;软件设计则从网络协调器、路由节点和传感器节点三个模块进行设计。最后通过搭建系统软硬件平台,并对系统模块进行串口通信和节点组网实验,以及系统整体性能进行测试。结果表明,本文设计的水质污染检测系统可在2分钟内完成对温度、PH值和电导率的测量,且测试值与实际值误差较小,具备良好的实时性和可靠性。) ]- N* U" H9 @1 m2 F1 _. r
) w( }! d% Q' m. @' D! ?$ T' A: F8 b
N) x3 b \! Y; {$ \
2 x7 K# \: z8 l) v- q. |
s E; c* _1 i5 B0 W, s/ S- c) ?; K( Q. |% l3 R' e
水质监测 无线传感器 网络协调器. y8 f) H- G0 q8 i, x
( M0 |4 M8 O- o/ M+ _$ _1 d9 L7 w7 I1 z& l7 M: A
- V7 L- e1 s5 G/ K7 Q
, ^" K: M8 Q) I/ o! P9 c! h2 g' B+ m% _6 o, G }
引言4 i. T7 F) p. H
1 o6 E& Q+ H6 H6 z. {3 i3 A5 Z$ M- K5 r4 Q0 c+ y6 ?% @) ~
近年来,随着我国经济水平和工业水平的快速发展,水环境污染越来越严重,严重影响了人们的正常生活和身体健康。因此,实现水环境的可持续发展,做好水污染防治工作至关重要。其中,对水质进行实时监测是防治水污染的重要途径,水质污染监测系统随之诞生。然而,传统的水质监测系统具有成本高、操作性难和实时性差的问题,不适用于当前水质监测领域。近年来,随着无线传感器技术的提升,为水质监测提供了一种新的思路。目前,已有大量学者和专家针对无线传感器网络应用到水质监测中进行深入研究,并取得了一定的研究成果。
" O4 g* q' l i( w# J- o/ W$ w4 S% I陈玥[1]等提出基于海量异构传感器的物联网水质监测系统,通过结合物联网技术,将无线传感器网络应用在环境监测系统中,实现无人值守自动监测,在一定程度上提升了水环境监测的质量和效果;葛秋[2]基于ZigBee技术,构建了无线传感器网络的水质监测系统,通过此系统降低了水质监测的成本,增加了水质检测的灵活性;李鑫鑫等[3]基于GA-BP神经网络,构建了一个施工区域水质预测及预警模型,针对水质监测过程中出现的各种状况提出了相应的解决策略,从而降低施工对水环境的影响。结合以上学者研究成果,将无线传感器网络应用到水质监测中,构建一个基于传感器的水质污染监测系统。通过此系统实现水质监测自动监测和实时监测,提前采取防治措施,从而降低水环境的污染。
2 A' \: Y$ D. w$ q. p V& z4 `
+ [7 K8 D$ O. x; V5 K
+ |6 U( _) V5 u01
) F# ]+ D+ y# L$ v
: f6 S: Y% M# L: m i5 ~* ]系统整体框架
2 T: y! b! S6 m1 S5 m. y6 u6 c
7 v d& A. K9 }! T, _2 Z
/ C5 d" H( X* t" ?/ v; t水质监测系统,其主要作用是对公共水域或污染源水质状况进行实时监控。根据系统应用环境和系统需实现的功能,将基于无线传感器网络水质监测系统整体框架设计为如图1所示。, P* m: F: m. i# K$ j
% Y$ [& Y d. p# F u( e \系统主要由数据采集网络、ZigBee/GPRS网关和远程数据处理中心三个部分组成[4]。其中,数据采集网络即传感器网络,主要由多个传感器节点、路由器节点和网络协调器组成主要作用是对数据进行采集,ZigBee/GPRS网关的作用是实现采集信息和处理中心的通信;远程数据处理中心则对传输的数据进行控制和处理。
9 A+ ^* w8 k: o/ k: K% M9 |6 @水质监测的内容为水质的物理、化学和生物量。根据环保部发布的《水环境质量标准》,由于实际设备和条件的不足,本研究选择将温度、PH值和电导率作为判断水体质量的标准。: _( @6 |) f( k
在该系统中,由无线传感器网络的终端节点或路由器节点采集水质信息后,将采集信息发送到网络协调器中;然后通过协调器对接收的数据进行汇总[5];最后利用ZigBee/GPRS网关将数据传输到监控中心。客户通过网络服务器系统平台登录即可获取水质监测的温度、PH值和电导率等具体信息。. u" k* O1 Z1 T# m0 y7 _$ K
: D1 [1 m( [/ w8 d, ?3 r& Q' {; o5 L' z9 C N( R( h
02
3 a0 v1 q. J" m
- }0 v s6 T& K/ Y系统的设计与实现" w- o- E$ u: i( z6 ~( y5 E' k
' o. t# ]3 T0 ]- [+ g J4 ?& ?# {5 d% x; z8 w; G) ?0 A
2.1 硬件设计 - W0 f. l: i) P4 V7 I7 e4 y4 i
在硬件设计方面,主要对系统硬件ZigBee模块最小系统、水质参数采集模块和ZigBee/GPRS网关的接口进行详细设计[6]。硬件各节点设计原理如图2所示。 / f C5 H0 ^3 @
: ]# Q$ R7 F$ ~+ U- d6 L: s; i8 S1 I, m 登录/注册后可看大图
o+ N; w4 ]5 J8 @2.1.1 ZigBee模块最小系统设计
4 v) t; Y7 g* t' h1 l& v5 y在系统设计中,ZigBee模块最小系统是硬件设计的基础,采用高度集成化的CC2430芯片实现电路设计。该芯片只需一个外围电路即可完成信号收发系统的构建,构建过程十分简单易懂[7]。本次设计的CC2430外围电路图如图3所示。 # ?% p: h6 I/ R
, o, d- O5 b" h为向CC2430内部电路供给稳定的偏置电流,提升系统运行效果,将在处理器7、20、41、47等引脚与地之间接入不同电容值的去耦电容,以此降低射频负载[8]。其中,电容使用0402进行封装,型号为5%的精度,耐压50V的NP0电容,22引脚与电阻值为56K,型号为1%精度的进行接地,26引脚同上方式接地,但电阻值为43K[9]。 : d# Z Z9 r( n4 W
为提高系统水质监测的精确度,设计系统使用两个晶振,并分别应用在正常工作模式和低功耗模式两种模式下[10]。正常模式为32MHz系统主时钟,低功耗模式为3276Hz实时时钟。具体方法是将Y1的1、3引脚连接27pF电容,Y1为NX3225SA型4引脚贴片无源晶振;将Y2两个引脚连接15pF电容,Y2是普通2引脚晶振[11]。
$ c, M" a/ g) _2 {0 c2.1.2 水质参数采集模块设计 5 ?; N/ d' ]: H. D% Q' K
根据选取的水质评判指标,主要从水质的温度、PH值和电导率三个模块,对水质参数采集模块进行设计。具体设计如下: * M1 Z* f U9 J
(1)温度参数采集模块设计 . ^- t4 z! }6 V
选择使用DS18B20数字式湿度传感器对水质温度参数进行采集,该传感器具备以下三个优点: " B8 v4 u {* k; N) U1 y
①在复杂的水环境下平稳运行[12]; $ Q0 f* Y n( Q( g9 N
②采用单线接口方式,仅需一个接口线即可完成传感器和微处理器的双向通信;
( v, B4 w# ~0 D③传感器与微处理器协议相同,可直接对接不用另加外围电路;能够对多个节点进行组网,最多可将8个传感器进行并联。
' l U+ ^0 {* t- f3 wDS18B20传感器可通过3、6、8脚的三种方式进行封装。针对水质温度监测的实际情况,选择使用3引脚、TO-92的方式进行封装,封装方式如图4所示。
6 j, z& Z- r8 M0 e0 l; k4 W3 R5 M6 q: V& x
其中,传感器数字信号输入端与CC2430芯片的PO.4输出端进行连接,将GND接地,VDD为外接供电,电源大小为5V[13]。编写程序成功后即可对DS18B20水温测量功能进行调试。调试过程中,为取得更精确的测量结果,将DS18B20封装在注满变压器油的金属铅管中,使用隔水性能优越的玻璃胶密封封口,避免芯片进水。
2 H% s. o; f# P, l0 N( |& m(2)PH值参数采集模块设计
) W" [' I$ a3 P0 u+ [要判断水质是否达标,酸碱度的检测至关重要。选择复合型PH电极测量法测量水质PH值。其测量原理如图5所示,其中,饱和甘汞电极为参比电极,玻璃电极为指示电极,电极同KCL溶液、待测溶液构成电池,PH值与该电池的电动势值具备关联性[14]。因此,仅对电动势值进行测量即可获得监测水质PH值。 . y+ F( O& x; c" s
# ~8 y4 T+ d9 f4 Y+ G8 P
PH值测量原理如公式(1)所示:
4 ~+ i7 H7 Q2 F7 A
" H( @1 O1 \$ @( r7 n8 }. Z式中,PHx表示待测试的PH值,PHs表示标准KCL溶液的PH值,Ex和Es分别表示待测试溶液和KCL溶液的电动势,R表示为气体常数8.3144J/(K*mol),T表示绝对温度,F表示法拉第常数96485C/mol。 + z/ @- Z( d0 _: v1 s2 ]
已知温度为25℃时,1个PH单位的变化对应的电位差变化为59.16μV。由此可知,在上位机上能够直观地看出进行变换后的PH值。 $ e: |$ q6 `, H; Q
选择E-201-CPH电极作为PH传感器的应用,此电极以模拟量作为输出,可实时补充电解液,因此,可在长时间内不间断地对水质进行监测。该PH传感器技术参数如表1所示。 1 Y" K# n& \, Z/ L5 ~2 d
7 U8 @/ b; i8 ~1 s- M5 j: f' ]为增强PH传感器输出信号的强度,对信号调理电路进行设计,CC2430处理器的AD采样端口能够收到准确的电压变化必须借助此电路。 $ W% C/ S5 @( p- H0 d' i
(3)电导率参数采集模块设计 - F) J& l6 V* N! J7 ]
针对电导率参数采集模块,使用二极片式DJS-1型铂黑电导电极作为传感器。该传感器能够在测量高电导率溶液时避免发生极化现象。其测量的基本原理为:首先,在被测溶液中平行地置入两块极板,然后利用激励电压加载极板两端,利用测量出的电流,即能得到溶液电阻[15]。最后,利用欧姆定律即可计算出电导,电导随着电阻的增大而减小,两者呈反比关系。
/ F5 f0 R5 x7 ]" p在测量该过程中,电极性激励信号极易出现电极化的状况,从而导致更为严重的电极极化误差。因此,本次设计将在电导率电路中使用双极性脉冲的激励信号,以此降低其测量误差。具体电路图如图7所示。
' y) q: s5 h. z( |3 X0 J2 o C
; ?$ W5 d4 |+ G- C2.1.3 ZigBee/GPRS网关的接口设计 , I8 j1 n& Q" q
要实现监测系统的无线网络监测,仅仅依靠ZigBee远远不够,还需加入GPRS。基于此,将对ZigBee/GPRS网关的接口进行详细设计。其中,GPRS使用型号为SIM900A,该型号具备结构紧凑、双频、供应电压较小,不需要增加外围电路,就能实现协调器通信的优点。接口线路如图8所示,其接口不多,只需通过一根杜邦线就能连接两个模块,具体连接为:将SIM900A模块的RXD连接协调器的TXD,两个模块中的GND都连接地。 : M9 b8 y% T, C- p+ b6 [3 t
4 Y, U1 u5 J. G
2.2 软件设计
) v9 {! [0 t# l% J系统软件设计主要分为上位机和下位机两个部分。重点就下位机的网络协调器、路由节点和传感器节点三个内容完成软件设计,以此实现节点通信、参数采集传输和无线传感器网络创建的目标。
3 h/ D& ?; C0 M3 a2.2.1 软件开发平台
$ c* p$ R5 q6 D$ q: c5 _, Q# R软件开发环境选择为IAREmbeddedWorkbench(EW)集成开发平台。该平台具有功能齐全、简单易操作的编译器,且具备简单明了的用户界面。
" [) B: m; a( X- @" n. t软件开发工具为SmartRF05EB,可支持CC2430芯片高效的工作。
7 Y* U; l/ m, n6 g2.2.2 网络协调器节点程序
# @- @5 T7 \9 S6 R7 d. V. c; V在ZigBee网络中,网络协调器能够自主创建新网络,并能控制终端设备网络连接、接收监测数据、传输监测数据到上位机的多功能。协调器节点的工作流程为: 9 i' d+ B5 F! X- U
(1)自主建立一个新网络; 4 e5 @2 ^- L8 l' P0 x% u6 R
(2)对系统终端设备的网络进行加入或去除,接收水质监测的信息和网络请求信号,若接收到入网申请即可向该节点分配网络地址,并立刻向该路由器和上位机等节点发送调用收发函数。 # H: n9 s- {; ]$ z1 Y9 T
2.2.3 路由器节点设计 ! o3 h6 B3 \. Z6 S0 }& H$ Q: h
在设计的水质监测系统中,无线网络通信离不开路由器的设计。路由器传感器主要具备三个功能:第一是自身存在路由功能;第二是能够向协调器发送采集的水质监测数据;第三是可以扩大网络覆盖范围。当路由器传感器节点加入网络成功后,即使没有处于工作状态,但依旧可以实现网络通信。
' {9 ^. G) D/ Q# @1 r2.2.4 传感器设计
4 t- I( I) G9 l: D* H6 L在设计的水质监测系统中,传感器节点设计最为基础且关键。系统监测的全部数据均来源于传感器节点。传感器节点的软件部分包括两个方面,即数据采集程序和网络通信程序,该节点的具体程序流程如下:
1 | k" T8 e' \, `& |
" ?- q! R+ m$ ~7 @: L- n$ M8 C
& D! f7 H. [7 }- c$ q( z/ _. h& f
4 P" q% q; R8 a/ f, z034 Z9 c7 ?& q* h! ?5 U" x8 G
$ u. P+ J. {6 T2 n0 O5 s
系统测试; J8 U, b' M" Q. W" l' n9 F8 F. }
& \# G6 u+ q* Z' v6 j6 [' Z
. B5 V- A. D9 i% {4 l; n& C# T/ [+ C
3.1 系统软硬件平台的搭建
) a2 c$ ^; U; ?) B( H为验证设计的检测系统是否可行,对系统的软件和硬件平台进行搭建。其中,由于CC2430芯片极易受外围电路的影响,因此,通过0402封装电容电阻连接。 9 U" Q, q6 I/ K2 F
ZigBee模块主要分为CC2430芯片、天线和底板两个部分。该模块的实物图如下。 % z& h2 G/ M! Z1 [: ~
( k# ]" r/ j1 o7 Z3.2 串口通信测试 4 P; @4 P( U" I! S! Y4 T/ t; U
为验证构建的系统是否有效,实验将对无线网络中的串口通信进行测试。首先将系统设置为接收和发送状态,然后分别对接收模块和发送模块分配发送物理地址“FFFFFFFFFFFFFF01”和“FFFFFFFFFFFF02”。然后开启节点,若节点显示灯不断的闪烁,则表明串口通信连接成功。 : Q9 H9 T; { I, E- [& G& m
为更好地分析连通效果,本次实验测试丢包率和误码率。具体方法为增加两个监测节点的距离,使监测节点在不同位置每隔80s发送数据信息,利用串口调试助手对接收信息进行测试分析。测试结果如表2所示。
8 q, f9 d9 J8 s+ i5 F( R; s8 R- ]0 ?, a" H/ h, s" f- [) C5 A6 e- g
由表2可知,在通信距离为30m时,丢包率和误码率均为0.004。随着通信距离的增加,丢包数据越来越多,当通信距离大于50m后,系统丢包率和误码率也不断地增加至0.094和0.096,系统已经无法满足监测要求。整个测试结果表明该系统可很好地进行串口通信。 9 e: P4 o! Z( a! r
3.3 节点组网实验 . M1 B. Y6 W3 C2 `
为验证无线网络是否能够正常组网、并进一步测试组网的效果,将对协调器节点、路由器和终端节点进行组网实验。
& g) P2 S4 M# X; r7 q, m第一步需要在IAR开发平台界面的工作区分别下载区域点击下载协调器、路由器和终端。然后对其分配地址,网络协调器为FFFFFFFFFF01,路由节点为FFFFFFFFFFFFFF02,终端节点为FFFFFFFFFFFFFF03。之后再开启串口调试助手,将协调器与PC利用串口连接,打开串口并设置相应的串口参数,再将协调器节点、路由器和终端节点配置在远距离的不同位置。最后连接路由器和终端节点到电源,利用串口助手观察各个节点加入网络的状态和网络和具体地址。测试结果如图11所示。 ' V6 {2 ?$ G/ }4 k0 X5 b/ t+ v0 G
0 M& X) V/ o# r从图11可以看出,协调器分配网址为0X0000,路由器网址为0x0001,终端节点网址为0x0040,网络地址的特征为较低位置处于后端,较高位置处于前端。由此说明该系统节点组网成功,且平台界面完整准确地显示了组网数据,证明组网效果较好。
u2 g; ~+ ], v" Z; D) Y2 G$ A3.4 系统性能测试 . H' I8 [# }) F; a
为验证设计系统的性能,本文选择将苏打水饮料作为测试样本,该样本的PH值为7.83,电导率为329。系统每隔2分钟对水质参数进行采集。得到的系统性能测试结果如表3所示。 ; ]: h+ Z/ G. T" s' R
0 V: O7 @; Q- z4 p) B+ s' |4 O从上表可以看出,温度测量值为24.5℃,与实际温度值相同,PH值的平均值为7.678,与实际值的误差仅为0.143,电导率的平均值为327.689,与实际值的误差为1.311。PH值、电导率两者的平均值与实际值之间的误差较小,且在短时间内测试的数据十分接近实际值。由此说明设计的基于无线传感器的水质监测系统具备实时性和准确性。
! n; i- y" [% V. V# R! G1 H1 ?% s2 w- O
$ i: R4 o; }8 u2 e0 d( F' a04
7 C+ R7 L l5 f& e) q
6 q9 r% R# e0 F2 C结论
& F1 S) r/ Q) d+ f h. x" e) |& o" z7 `! A
5 P8 |0 ~/ j/ t( A! n综上所述,设计的基于传感器的水质污染监测系统具备可行性和有效性,利用无线传感器网络可以实现各节点的串口通信,并且在不同的通信距离中,均能取得较好的丢包率和误码率。同时,各节点可实现正常组网,取得了较好的结果。系统测试证明,设计的系统可在2分钟内实现温度、PH值和电导率的监测,且测试结果与实际值相近,具备实时性和准确性。但由于条件限制,仍存在一些不足,主要表现系统设计还不够完善,重点研究下位机的设计,忽视了上位机的设计。因此,在后续的研究中,应从这一方面进行改进,将系统与GPRS相结合,实现水质监测的远程化和网络化。, a9 I, J2 ^. ~% G$ S, m
6 B6 x5 @' M# X! U
该文章来源互联网,如有侵权请联系删除/ ~% Z# v9 U: X& S" P: R) |
查看原文:www.52ocean.cn |