水质监测系统的研究

2019-07-08 05:33吴鹏汪善盛
现代电子技术 2019年13期
关键词:性能测试水质监测软件设计

吴鹏 汪善盛

摘  要: 拟设计一款水质监测系统,用于对水体多个参数进行实时监测。系统采用STM32控制器为核处理器,通过控制ADS1256分别对水体温度、电导率和pH值三个参量进行数据采集,并设有过压量程自动转化电路,提高数据采集的稳定性和可靠性。水体参量测量数据可存储于本地铁电存储器中,并同时通过串口实时传输到上位机,通过LabVIEW进行串口数据接收和显示,整个系统工作稳定可靠,可直观实时显示当前测量参数的曲线变化及实时数值大小,有较强的人机交互功能,能应用于水质监测等环境监测领域。

关键词: STM32控制器; 电路设计; 软件设计; 性能测试; LabVIEW; 水质监测

中图分类号: TN98?34                         文献标识码: A                            文章编号: 1004?373X(2019)13?0122?05

Study on water quality monitoring system

WU Peng1, 2, 3, WANG Shansheng3

(1. Key Laboratory of Earthquake Geodesy, Institute of Seismology, China Earthquake Administration, Wuhan 430071, China;

2. Hubei Subsurface Multi?scale Imaging Key Laboratory, Institute of Geophysics and Geomatics, China University of Geosciences, Wuhan 430074, China;

3. Wuhan Institute of Seismologic Instrument Co., Ltd., Xianning 437000, China)

Abstract: A water quality monitoring system is designed to monitor several parameters in real time. The STM32 controller is used as the core processor of the system. The data of water temperature, conductivity and PH value is collected by controlling ADS1256, and the automatic conversion circuit of overvoltage range is set to improve the stability and reliability of data acquisition. The measured data of water body parameters can be stored in the local electric storage, transmitted to the upper computer through serial port in real time, and received and displayed through LabVIEW. The whole system works stably and reliably. The curve changes of current measurement parameters and real?time numerical value can be displayed directly and in real time. The system has strong man?machine interaction function, and can be used in the field of environmental monitoring such as water quality monitoring.

Keywords: STM32 controller; circuit design; software design; performance test; LabVIEW; water quality monitoring

0  引  言

随着我国工农业的迅速发展,人们生活水平的提高,对水质量的要求也越来越高。但因水土流失、水源污染等因素的影响,地表水成分逐渐趋于复杂,有机成分增多,饮用水处理难度增大。由于水体受到污染,导致水体富营养化,对日常饮用水带来了极大的危害,严重影响着人群健康水平。因此,水质监测显得尤为重要。

水质监测可以监视和测定水体中污染物的种类以及各类污染物的浓度和变化趋势,其监测范围十分广泛,包括未被污染和已受污染的天然水(江、河、湖、海和地下水)及各种各样的工业排水等。目前,主要反映水质状况的综合指标有温度、pH值、悬浮物、溶解氧、电导率等。水质监测可以为环境管理提供数据和分析资料,可以为评价江河和海洋水质状况提供依据[1]。

1  系统方案设计

水质监测系统方案框图如图1所示,系统主要分为信号调理模块和数据采集通信部分。

整个系统的工作原理为:STM32控制器通过I2C接口控制ADS1256进行电导率、温度和pH值的测量,与此同时会通过自动量程转换电路对电导率测量值进行自动量程判断和切换,监测数据会依次存储于铁电存储器中[2],STM32会通过网络模块将实时监测数据通过网络传输到数据终端服务器,用户可通过客户端Web浏览器进行参数查询及数值下载。

图1  水质监测系统方案框图

2  硬件电路设计

2.1  电导率测量及自动量程转化电路

一般来说,电阻的测量方法都可以采用电导率测量来实现。通过直接测量法能简单直接进行电导率的测量[3],其测量电路如图2所示。

图2  电导率测量电路

采用高精度电压基准芯片ADR4533作为电导液池的激励电压,分别通过高精度运放OPA2211来实现电压分压,产生1 V的激励电压。

如图3所示,测量电路的放大倍数[Av=-RfRx],因此,为了满足AD1256的测量范围,将整个测量电路的测量电压最大值控制在2 V以内才能保证所测结果的有效性,由于设定激励电压为1 V,根据放大倍数[Av]选择为1属于合理值。

根据经验,从理论纯水(0.548 ?S/cm)到电导率很大的海水(30 000 ?S/cm),对应的测量电极的电阻变化范围从Ω级到MΩ级。因此,拟将整个电路放大倍数进行档位划分,分为四个档位,电路如图4所示。通过选用具有三组单刀双掷的模拟开关来实现四个档位[Rf]切换的功能。依据CD4052的增值表,当CTR0,CTR1分别为0,0时,[X]与[X0]导通,电阻[R1]接入回路;当CTR0,CTR1分别为1,0时,[X]与[X1]导通,电阻[R2]接入回路;当CTR0,CTR1分别为0,1时,[X]与[X2]导通,电阻[R3]接入回路;当CTR0,CTR1分别为1,1时,[X]与[X3]导通,电阻[R4]接入回路。其中,依次选择[R1],[R2],[R3],[R4](其分别用于等效为[Rf])分别为10,100,1 000,10 000的[110 000]精密电阻。分别用于对应所测溶液电阻档位:第一档(10~100),第二档(100~1 000),第三档(1 000~10 000),第四档(大于10 000)。

图3  激励电压产生电路

图4  自动量程转换电路图

2.2  温度测量模块

本文采用PT100铂电阻进行温度测量,通过四线测量法来实现[5]。具体测量电路如图5所示,选择MAX6126作为电压基准源,提供[Vref=]2.5 V的基准电压,其精度可达正负0.02%,温度系数为3 ppm/℃,1.3 μVp?p的超低噪声。

图5  恒流源温度测量模块

2.3  pH值测量模块

工业型pH计主要要求有较高的稳定性、精度适中、专用性强,一般要求实现自动温度补偿,并且仪器应能输出标准电压或电流信号。pH值的测定采用电位测定法,输出电压[E]是pH的函数:

系统选用的BNT7120型pH传感器,其测量范围为0~14,温度测量范围为0~80 ℃,零电位pH=7.00,精度可达0.1。测量电路如图6所示,采用仪表运放IN128来实现,设置放大倍数为[Av=1+50KR3=3],通过滑动变阻器调整其基准零位和输入负端零位。在上述计算公式中,温度值[T]则通过系统温度测量电路来提供。

图6  pH值测量电路

2.4  数据采集

系统控制器选择STM32F101RBT6来实现,分别用于数据采集电路和数据存储电路。其中:采用24位A/D采集芯片ADS1256进行实时多路信号数据采集;选择MAX6126作为基准电压芯片,为A/D提供2.5 V的基准电压;同时,选择3.3 V供電的铁电存储器FM25L256作为数据存储,最多可实现存储256 KB的数据量,按照每分钟可分别存储一个温度、pH值和电导率的数据来计算,每个数据占有8 B,则1 h数据量可达1 440 B,因此,该容量足够实现3天的数据备份应用[9]。

3  系统上位机软件设计

系统上位机软件采用图形化编程语言LabVIEW实现,其具有开发周期短、移植性强和稳定性高等特点,根据需要可调取相应的功能VI子模块进行编程,省去了底层开发周期和繁冗的编程过程。上位机软件的核心部分是与下位机进行串口通信程序,通过调用VISA串口VI读取下位机测量数据,并进行数据类型转换[10]。

LabVIEW的串口程序采用状态机来实现,状态机的状态共分为四种:Initialize(默认)状态、receive状态、sum状态和stop状态。

如图7所示,在while循环结构中设置2个移位寄存器,分别用于状态机的不同状态切换和进行接收数据缓存。在Initialize(默认)状态,对数据缓存移位寄存器进行清零初始化操作,并通过读取串口缓冲区的属性节点判断其是否为空。如果是空,则返回Initialize(默认)状态继续等待;如果不为空,则进入receive状态进行数据接收。

图7  Initialize(默认)状态

如图8所示,在receive状态,通过调用VISA的子模块VI对串口缓冲区的属性节点进行字节读取,每次读取一个字节的数据,读取的字节数据以字符串的数据格式存储在移位寄存器中,结束符字节为十六进制AA。判断寄存器的数据个数是否大于等于3个字节,是,则进入sum状态;否,则对当前所接收到的字节与AA进行比较,若当前接收的数据与AA相同,则跳转到Initialize(默认)状态,若不同,则继续进行数据接收。

如图9所示,在sum状态,通过数据转换,将字符串类型的数据转化为十进制二维数组,并通过索引数组进行字节从低位到高位依次读取操作。当该状态完毕后,如图10所示,状态机进入stop状态,至此,整个状态机的一个循环动作执行完毕。

图8  receive状态

图9  sum状态

图10  stop状态

4  系统整机性能测试

4.1  温度测试

采用恒温水槽、高精度FLUKE温度计分别进行温度准确控制和标定测试。温度测量拟设置15 ℃,20 ℃,25 ℃,30 ℃,35 ℃,40 ℃,50 ℃等几个点进行标定测试。调节室内温度控制在25 ℃左右,分别设定恒温水槽控制温度,并利用标准温度计进行比对,以标准温度计为准,精确读数到1%。采取当温度稳定到0.5 h,1 h和1.5 h分别进行读数,如表1所示。

表1  温度测试数据

4.2  pH值测试

采用HI223A高精度实验室pH测定仪进行标定测试。采用醋酸和纯碱配置溶液进行结果测试,数据如表2所示。

表2  pH值测试数据

4.3  電导率测试

电导率测试选择含磷化肥作为实验对象,采用型号为DDB?303A的便携式电导率仪作为标定设备,通过每次截取定量的肥料溶解于准备好的装有纯净水的200 mL玻璃杯中,每次标定比测完毕后,将再次增加之前设定量的肥料,一共测试4次,测试比对结果如表3所示。

表3  电导率测试数据

5  结  论

本文仪器采用STM32控制器与ADS1256进行温度、pH值和电导率的实时监测,通过串口与上位机LabVIEW进行数据通信和显示。经过对比实验,系统所测数据比较稳定可靠,可应用于水质监测等领域。

参考文献

[1] 郑才庆,支国强,李田富,等.我国地下水污染现状及对策措施分析[J].环境科学导刊,2018,37(6):49?52.

ZHENG Caiqing, ZHI Guoqiang, LI Tianfu, et al. Analysis of current situation and countermeasures of groundwater pollution in China [J]. Environmental science survey, 2018, 37(6): 49?52.

[2] 荣华,何培忠.采用MSP430的pH值与电导率一体化测量仪设计[J].现代制造工程,2013(12):85?88.

RONG Hua, HE Peizhong. Design of a detector for pH value and conductivity based on MSP4430 [J].Modern manufacturing engineering, 2013(12): 85?88.

[3] 宋丽娟,祁欣.基于同步采样方法的电导率测量系统设计[J].电子测量技术,2017,40(3):35?39.

SONG Lijuan, QI Xin. Design of a conductivity measuring system based on the synchronous sampling method [J]. Electronic measurement technology, 2017, 40(3): 35?39.

[4] 杨卫国.水溶液电导率测量系统的研究[J].热能动力工程,2015,30(1):95?100.

YANG Weiguo. Study of a water solution electric conductivity measurement system [J]. Journal of engineering for thermal energy and power, 2015, 30(1): 95?100.

[5] 陈平平,杨雷,张志坚.基于铂电阻的温度测量仪的设计与实现[J].计算机测量与控制,2015,23(3):1041?1044.

CHEN Pingping, YANG Lei, ZHANG Zhijian. Design and implementation of temperature measuring instrument based on PT100 [J]. Computer measurement & control, 2015, 23(3): 1041?1044.

[6] 徐英,刘新峰,张涛,等.基于XTR110的高精度恒流源设计[J].化工自动化及仪表,2015,42(1):71?74.

XU Ying, LIU Xinfeng, ZHANG Tao, et al. Designs of constant current source based on XTR110 [J]. Control and instruments in chemical industry, 2015, 42(1): 71?74.

[7] 绍伟恒,顾昂,隋俊杰.基于STM32的便携式恒流源设计[J].自动化与仪表,2015(12):29?32.

SHAO Weiheng, GU Ang, SUI Junjie. Design of STM32?based portable constant current source [J]. Automation & instrumentation, 2015(12): 29?32.

[8] 林关成.基于STC89C52单片机的pH值测量仪设计[J].计算机与数字工程,2017,45(9):1874?1877.

LIN Guancheng. Design of PH measure instrument based on STC89C52 microcontrollers [J]. Computer & digital enginee?ring, 2017, 45(9): 1874?1877.

[9] 王磊,江小华.基于SPI总线的FRAM存储设计[J].现代电子技术,2013,36(4):52?54.

WANG Lei, JANG Xiaohua. Design of FRAM storage based on SPI [J]. Modern electronics technique, 2013, 36(4): 52?54.

[10] 马敏,杨胜伟.基于LabVIEW的气体监测系统串口通讯设计[J].自动化仪表,2016(11):43?46.

MA Min, YANG Shengwei. Design of multi gas monitoring system based on LabVIEW and serial port [J]. Automation & instrumentation, 2016(11): 43?46.

猜你喜欢
性能测试水质监测软件设计
2014—2016年北戴河近岸海域水质监测数据对比分析
Hadoop性能测试自动化研究
基于STM8S903K3的序列打螺丝夹具的软件设计
基于生物传感器的饮用水有毒物质检测
浅谈重铬酸盐法与快速消解分光光度法的比较
一种VHDL语言代码重用的方法
关于Java软件的性能测试分析
基于WSN监测的水质预报系统模型