周 斌
(东莞理工学院,广东东莞 523808)
研究发现传感器具有网络覆盖广、成本低廉等优点,非常适用较大范围的水质监测[1]。本文设计并实现了一种基于无线传感网络的物联网水质监测系统,采用基于ZigBee的无线传感器网络加串口数据传输技术框架,由监测节点、网关、服务器与网页客户端组成[2]。系统最终可以实现监测节点实时采集水体的水温、pH值、电导率值等参数信息,也可以开启监控功能定时采集参数信息,经过网关将数据传送至监测中心服务器,监测中心对水质情况进行统计和分析,提供网页端供用户在线查看当前水质情况和历史水质情况。
结合物联网系统的通用体系架构设计系统结构[3],可从信息感知系统(感知层)、多层次数据融合传输系统(网络层)、Web综合服务平台三个功能单元(平台层+应用层)展开描述。系统结构如图1所示。
图1 系统结构
(1)监测节点通过引脚与传感器的模数(AD)输出进行电路连接,获取各监测点工作电压,实现对水质的检测。
(2)监测节点具有采集实际物理量、数据无线传输、执行控制命令等功能,集成的芯片通过程序对采集的物理量进行分析转换,得到水质监测所需的各个关键参数,可以根据上层控制命令实现对底层节点的相应操作。
协调器节点作为中继数据传输系统,是数据传输的中转站,用于感知网络与服务器的互联,实现数据双向传输。
(1)监测节点获取传感器采集的相关数据信息后,通过短距高无线组网技术将数据发送给协调器节点。
(2)协调器节点将从监测节点接收到的数据,通过以太网的网络模块进行远距离传输,转发给监测中心服务器。
(3)监测中心服务器侦听程序将接收的数据,根据不同的任务进行解析并保存至数据库相应的数据表。
(4)Web综合服务平台根据用户的指令从数据库中读取数据进行处理并显示。
(1)根据用户的需求,从数据库查询相关数据,查到的数据在Web前端进行统计与分析处理,最终以直观形式展现在Web客户界面。
(2)Web端具有对监测节点下达命令功能,如在线数据采集功能的开启或关闭。
为方便进行调试和扩展相关的应用,选用模块化的硬件设计,水质监测传感器节点需要进行温度、pH值、电导率以及固体溶氧量值的采集[4]。传感器需要长期浸泡在水中进行水质的检测,必须采用较特殊的机械密封方式将电极的所有接线端密封起来,防止进水造成设备损毁。本系统分析采集水体的水温、pH值、电导率值的测量原理进行传感器的选型。选择的传感器分别是DS18B20温度传感器、E-201-C型PH电极以及固体溶氧量TDS传感器。
需要对采集的数据进行模数转换以及整合后进行数据发送,本系统采用STM32F103VET6作为开发板进行信号处理。通过STM32模块连接温度传感器、pH值电极以及固体溶氧量传感器,进行数据读取并通过串口将数据传输给CC2530模块[5]。采集模块的结构原理如图2所示。
图2 水质监测传感器节点模块结构原理
选用CC2530模块作为协调器节点模块,水质监测传感器节点与STM32模块串口连接接收数据,通过射频天线无线将数据发送到CC2530节点上,完成数据的无线传输[6]。
软件设计是实现本系统的重要组成部分,水质监测系统中有多个节点,需要通过软件设计实现节点间的数据传输。本系统软件部分主要包括水质监测传感器节点数据调理电路程序、网络协调器节点程序、上位机程序和网页端程序4个部分。软件部分的重点是网页端的实现,对Web数据统计与分析,将监控数据从数据库中提取出来,经过统计和分析,最终以折线图的形式展现在Web页面上。
该过程使用HTML和Javascript进行开发,获取数据到分析数据的执行过程如图3所示。
图3 Web端获取数据到分析数据的执行过程
在系统测试阶段,将pH值传感器连接到整流滤波放大模块,经电路将电压处理放大后通过STM32开发板的PC0引脚进行读取,温度传感器连接到PB10引脚进行读取,TDS传感器连接到PC2引脚进行读取,读取三个引脚的电压值后进行模数转换,整合成一条帧发送到串口。STM32通过串口连接CC2530集成的水质监测传感器节点,水质监测传感器节点接到一帧数据后,转发数据无线至CC2530协调器节点。协调器节点再将从监测节点接收到的数据通过以太网的网络模块进行远距离传输,转发给监测中心服务器。
根据流程连接部件,实物效果如图4所示。
图4 系统所需硬件实物连接效果
协调器节点将从水质监测传感器节点接收的数据,通过以太网的网络模块远距离传输转发给监测中心服务器后,监测中心服务器侦听程序将接到的数据根据不同的任务进行解析,保存至数据库相应的数据表。Web综合服务平台可以根据用户的指令从数据库中读取数据进行处理并显示。
具体效果如图5~图8所示。
图5 系统数据展示图
图6 pH值展示图
图7 电导率展示图
图8 固体溶氧量展示图
以CC2530为核心模块,搭载各类水质监测传感器,设计了具有模块化结构的水质监测传感器节点。同步开发了基于Web的用户客户端,可根据用户的需求,从监测中心服务器数据库中查询相关数据。查到的数据在Web前端进行统计与分析处理后可以以图表形式展现。试验测试表明该系统具有良好的通用性和可扩展性,实现了预期目标。