计算机系统应用教程网站

网站首页 > 技术文章 正文

基于ZigBee远程通信的水质监测系统设计

btikc 2024-10-12 11:06:44 技术文章 7 ℃ 0 评论

摘要:ZigBee由于具有低功耗、低成本、短时延、高安全和自组网等优点,被广泛应用在各种工作领域。本文设置CC2530为通信芯片,STMF103为主控芯片作为系统的硬件电路和软件部分,将电导率模块、pH模块和DS18B20温度模块的信息传输到上位机,利用ZigBee自组网可以在上位机上读取水域不同位置的水体信息。实验结果表明,本文制作的水质监控具有低功耗、实时性高等优点。

关键词:ZigBee;水质监控;自组网

Abstract: ZigBee is widely used in various fields due to its advantages such as low power consumption, low cost, short time delay, high security and AD hoc network. In this paper, CC2530 is used as the communication chip and STMF103 as the main control chip as the hardware circuit and software part of the system. The information of conductivity module, pH module and DS18B20 temperature module is transmitted to the upper computer, and ZigBee AD hoc network can be used to read the information of water bodies at different positions in a sea area on the upper computer. The experimental results show that the water quality monitoring produced in this paper has the advantages of low power consumption and high real-time performance.

Key words: ZigBee; Water quality monitoring; Ad-hoc network

1 引言

对于较大水域其不同区域的温度、pH和电导率等会存在差异,为了得到水体的综合信息,因此需要机器来对水体各个区域的水质信息进行采集和上传。对于室外水产的养殖,环境复杂多变,设备需要长时间在水中工作,这要求设备要具有较高的续航能力。同时为了确保水体信息的实时性,往往需要多个机器协同工作[1、2]。为了解决设备的续航里程和成本高等问题,本文以ZigBee作为无线通信技术,以STM32为主控芯片,将电导率模块、pH模块和DS18B20温度模块采集的水质信息传输到终端,利用ZigBee自组网可以在上位机上读取到一片海域不同位置的水体信息[3、4]。

2 硬件设计

为了检测和上传水域的pH、温度和电导率,采用雷磁pH复合电极E-201-C作为pH计,再通过4502AC将信号放大,把pH值转化为模拟电压传给单片机。温度检测采用DS18B20不锈钢封装模块。电导率检测使用的是量程为0到44000μs/cm的EC变送器。ZigBee采用DL-LN32P模块,该模块内部封装了通讯协议,单片机只需通过串口发送就可以使其把数据发生出去。

STM32F103ZET6作为MCU,对各个模块的信息进行读取,并且通过ZigBee把数据发生出去。


2.1 求解pH的线性方程

液体的pH值取决于液体中氢离子的浓度,通过测量电极系统被测液构成的测量电池的电动势,可得到被测液体氢离子活度。从传感器电极系统中获得的电压信号与氢离子的活度有对应关系。依据能斯特方程,电极反应中物质从一相转移到另一相时需要消耗能量[5],其表达式表示为:

E=E0-S×pH (1)

其中S=RT/nF=54.20+0.1984×t为理论斜率项;气体常数R=8.14焦耳/摩×克分子;法拉第常数F=96500库/摩;N为离子化合价,对于氢离子n=1;T=273.15;t为检测的被测液体的摄氏温度,E0为等电势点的点位,E即为传感器电极在被测液体作用下的输出电位。

由于玻璃电极的制作工艺等原因,式(1)中的E0和S的实际值会发生改变,需要通过已知标准液对上述参数进行测定。常用的标准液为苯二甲酸氢钾(pH=4.01)、硼砂(pH=9.18)和混合磷酸盐(pH=6.86),根据被测液体的酸碱度,适当地选择两种标准溶液。当被测液体呈酸性时,选择pH=4.01和pH6.86的标准溶液校正;当被测液体呈碱性时,选择pH=6.86和pH=9.18的标准溶液进行校正;当被测液体pH使用范围较大时或者不确定时,可以选择pH=4.01和pH=9.18的标准溶液进行校正[6、7]。雷磁pH复合电极E-201-C的具体校正方法如下:

将电极放入混合磷酸盐(pH=6.86)溶液中,用电压表测试模拟输出电压,调节运放板上的电位器使得输出电压为1.7V。再将电极用蒸馏水清洗干净并且玻璃电极上无水滴后放入苯二甲酸氢钾(pH=4.01)标准溶液中,记录输出电压。重复上面步骤,得出硼砂(pH=9.18)标准溶液的输出电压。由式(1)可知模拟电压U与pH为线性关系,可以设线性方程为:

pH=a×U+b (2)

把得到的数据带入到,可得到pH与雷磁pH复合电极E-201-C模块的输出电压关系。

3 软件设计

软件部分分为DS18B20温度数据的读取、pH模块和电导率模块的AD采样和转换、ZigBee数据发送、上位机读取ZigBee数据等几大模块,图2为软件设计总体流程。在完成所有的初始化工作后,需要先读取DS18B20的数据,由于DS18B20的读取时间需要大于50ms,所以读取数据的频率不宜过高。为了数据的准确性,设置了每200ms读取一次数据,共读取5次并取平均值作为最终数据发送到上位机显示。


3.1 pH模块和电导率模块

pH模块和电导率模块输出的都是模拟电压,需要通过STM32的ADC将其转化为数字信息,读取到的数据为0~4096范围。pH模块需要软件把ADC的数值归一化到0~3.3V后作为电压带入到式(2)中。由于电导率模块输出模拟电压与电导率成正比,所以只需要将转换后的数值归一到0~44ms/cm即可[8]。但是由于式(2)中的参数a和b均受温度影响,所以最终得到的pH值需要进行温度补偿,由式(2)可知,最终温度补偿后的pH需要乘以T0/T(T0为寻找方程时液体温度,T为当前液体温度)。

3.2 ZigBee模块

DL-LN23P ZigBee模块内部集成了通信协议,所以通过串口向其发送数据包即可。软件上通过主控芯片的USART1外设对ZigBee进行通信,为了数据传输的准确,设置USAR1的中断优先级为0。需要上位机发送FE05 90 90 XX XX FF(XX XX为目的设备地址)来得到某个ZigBee设备的信息[9、10]。

3.3 基于C#编写的上位机

上位机作用时对串口数据进行采集并且显示。图3为上位机初始界面。开始时选择好串口和波特率,在发送按钮左边的方框内输入FE 05 90 90 03 00 00 FF,自动采样周期选择1000ms。电导率、pH和温度的右方分布有两个小方框,上面和下面的分别为最大和最小值,大于最大值或小于最小值上位机都会报警。按下自动采样后,上位机会自动绘制图表。


4 系统测试

系统基于ZigBee对水质信息(电导率、pH和水温)进行传输,为了检测pH和水温的准确,需要与电子pH计进行对比。本文搭建了ZigBee水质系统测试平台,对制作完成的基于ZigBee通信的远程水质监控系统进行了软硬件调试。

将地址为0001的ZigBee模块通过USB转串口模块接入电脑,打开上位机,设置好具体参数然后点击自动采样。如图4所示为酸性条件下上位机实时曲线,表1为酸性条件下上位机显示数据。通过STM32单片机的定时器计数延时约为50ms,将报警参数设置在接受到的数据之上或之下,观察旁边是否有小感叹号显示以及警报声发出。由于数据是先压缩为0~255区间范围内,再由上位机解码,所以数据会与下位机发出数据有偏差,误差精度为0.01。


表1 酸性条件下上位机显示数据

5 小结

本文搭建了ZigBee水质检测测试平台,对水质检测和通过ZigBee模块与上位机通信进行了软硬件的试验,并用电子pH计进行对比以及在上位机中显示,验证了本文所设计的硬件和软件部分均能正常稳定工作。同时通过测试不同温度和pH等的液体来和电子pH计进行对比和在上位机中显示,并且显示延时在300ms以内,证明了该基于ZigBee通信的水质检测系统的可行性、短延时和可靠性。

基金项目:广东海洋大学“创新强校工程”项目(Q14580);大学生创新创业训练计划项目(CXXL2019262; CXXL2019268)

参考文献:

[1] Hossein Alilou, Alireza Moghaddam Nia, Mohsen MohseniSaravi, Ali Salajegheh,Dawei Han,Bahram Bakhtiari Enayat. A novel approach for selecting sampling points locations to river water quality monitoring in data-scarce regions[J]. Journal of Hydrology, 2019, 573.

[2] 贾烁. 基于北斗卫星系统的海洋水文实时监测系统研究[D]. 海南:海南大学, 2018.

[3] 李红杰.基于浮标的近海海洋环境监测与接入技术[D].成都:电子科技大学, 2016.

[4] 陈志坤. 东江水资源水量水质监控系统数据集成[J]. 广东水利水电, 2018, ( 12 ) : 26 - 30.

[5] 王士明, 俞阿龙, 杨维卫, 等. 基于ZigBee的大水域水质环境监测系统设计[J]. 传感器与微系统, 2014, ( 11 ) : 102 - 105.

[6] 李杰, 刘佳. 基于ZigBee的饮水机监控系统设计[J]. 产业与科技论坛, 2018, ( 7 ) : 59 - 60.

[7] 申伟, 杜文娟. 基于ZigBee无线传感技术的水库水质多参数监控系统[J]. 通信与信息处理, 2018, ( 4 ) : 40 - 43.

[8] 严丽平, 宋凯. 基于ZigBee与GPRS的嵌入式水质检测系统设计[J]. 计算机工程与设计, 2011, ( 5 ) : 1638 - 1640.

[9] 张虎, 肖惠云. 无线通讯技术在工业领域中的应用[J]. 自动化博览, 2018 , 35 ( 11 ) : 124 - 130.

[10] 范利平, 王志坚. 融合GPRS技术的ZigBee无线网路水质检测系统的设计[J]. 长沙大学学报, 2012, ( 26 ) : 55 - 56.

作者简介:

林 聪(1988-),男,广东湛江人,讲师,现任教于广东海洋大学,研究方向为智能控制与智能自动化。

于 跃(1991-),女,吉林通化人,讲师,现任教于广东海洋大学,主要研究方向为电力电子技术、智能控制技术。

卢叶枫(1997-),男,广东怀集人,现就读于广东海洋大学,研究方向为嵌入式技术。

肖贤哲(1999-),女,广东广州人,现就读于广东海洋大学,研究方向为嵌入式技术。

摘自《自动化博览》2020年1月刊

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表