基于单片机的饮用水源监测系统
2022-08-19宋汶凯
宋汶凯
(山东理工大学 山东 淄博 255000)
0 引言
水是构成细胞液、组织液、血浆的重要物质,占人体体重的60%左右,但自然界中淡水资源仅占2.7%,而可供人类有效利用的淡水资源仅约0.007%。所以如何充分、安全地保护和利用淡水资源显得尤为迫切。目前国内、国外的研究者开发了多种监测系统,但要么成本昂贵、难以普及,要么功能单一、效率低下。因此,本文结合物联网与多种监测技术开发设计了一套智能物联综合水源监测系统,可以实时全方位地掌握饮用水源的状态和水质安全等情况。该系统可以完成:(1)水深监测:通过超声波监测技术实时测量水位的变化,定时向用户提供水位信息,并根据用户的设定,及时调整水位,保证水位在安全范围之内;(2)流速监测:采用先进的霍尔流速传感器,它保证了测量的精确度,对水域的流速监测提供了可靠的保证;(3)水质检测:通过多种传感器对pH 值、浑浊度、TDS、电导率等影响饮用水源安全的主要因素进行在线监控。该系统基于物联网工程、数据通信,真正做到了智能、方便、经济、安全、可靠,为现代饮用水域治理提供可靠手段。
1 系统总体设计方案
系统总体方案采用上位机、下位机结构,物联网技术提供了可靠安全的信息传输和智能控制保障。饮用水源监测系统是以STM32 单片机为核心,结合不同功能的传感器组成的信息采集系统而构成,有以下三大功能模块。饮用水源监测系统总体框图见图1。
(1)基于单片机的水深测量模块,主要有3 部分组成,分别为:单片机最小系统、超声波传感器、温度传感器。该模块主要通过超声波传感器发出超声波,在水中传播,当抵达池底时,声波被反射传回,记录超声波从发出到接收的时间,配合温度传感器对温度的监控,通过温度补偿,两方面结合,传送给系统加以计算。
(2)基于单片机的液体流速检测模块,主要有3 个部分组成,分别是:单片机的最小系统、霍尔流速传感器的数据采集系统以及液晶实时显示系统。该模块主要工作流程为通过利用霍尔流速传感器不同磁极旋转切割磁感线,来对液体的实时流速进行计算并采集,由数据传输线传输到单片机进行信号的处理,单片机把处理好的信号传给显示模块。
(3)基于单片机的水质监测模块,分为4 个子模块,包括:pH 监测模块、浑浊度检测模块、TDS 监测模块、电导率监测模块。分别针对水样的酸碱度、浑浊度、总溶解固体以及电导率给出测定。4 个模块利用已有传感器,将检测的数据通过数据传输线传送到上机位,进而对数据进行处理,通过蓝牙传送等方式,将信息传送到用户端。
2 饮用水源监测系统模块设计
2.1 水深监测模块
本模块以单片机为控制核心,由传感器、换能器作为组成部分,以串口收发作为传输接口,通过串口进行数据通信,我们采用超声波传感器来实现对水深的监测。超声波由于频率高,因此从传感器发出之后几乎全部以成束状直线向前传播,具有很好的指向性。超声波可以穿过一种介质或通过两种介质的界面而进入其他介质内,这种现象称为超声波的透射。除了介质以外,决定超声波的透射能力的主要因素是超声波的频率和波长,超声波在传播过程中,当遇到两种不同声阻抗物体所构成的声学界面时,一部分超声波会返回到前一种介质中,称作反射。本文正是利用超声波的这一点性质来计算距离,这种技术实施简便,测量准确,可以做到对水位的动态监测。
单片机开始工作后,先向超声波传感器发送信号,传感器内部的压电陶瓷做机械震荡[1],产生超声波信号,通过超声波传感器发出超声波后,并开始计时装置,超声波以速度v 在水样中传播,在到达容器底部时,超声波会被反射,然后返回,由换能器接收,经过声电转化为微弱的电信号,经过放大电路的放大,检波,再放大,得到一个回波脉冲,接收到信号后计时器停止计时,利用已有公式:
其中:S-距离;v-速度;t-时间。
利用该式便可以求得超声波传感器与容器底部的距离。通常在没有太大温差的情况下,超声波在水中的传输速度大约为1 500 m/s,特别要强调的是,如果用户对于精度要求较高,则可利用计算温度-声速函数以求得精确的超声波传输速度或采取温度的补偿与校正,通过附加温度传感器将数据送入处理器,进行标准化处理。根据计时器记录的时间t,代入上述公式,就可以得到较为精准的水深情况。在后面其他部分的监测中,我们也多次使用了温度补偿的方法对测量结果加以矫正,这是一种可靠、可行的手段。
单片机系统运行后,发送40 kHz 的方波,经电路放大后通过超声波发射器输出;超声波换能器将接收到的返回信号经放大器放大,当信号返回,则通过IO 口ECHO 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间,用锁相环电路进行检波处理后,启动单片机中断程序,测得时间为t,再由软件进行判别、计算,得出水位数据并传送至LCD 显示。如果水位超过预设水位,则系统启动水泵,开始控制水位,以此来实现对某水域的长时间在线监测。
2.2 水流量监测模块
本模块以单片机为控制核心,以霍尔流速传感器以及液晶实时显示系统作为组成部分。霍尔流速传感器当水样流经涡轮开关并推动带磁性的转子转动的时候,产生了不同磁极的旋转磁场,转子切割磁感线运动,脉冲电平高低变化。因为霍尔元件输出脉冲电平的频率是和磁性转子的转速成正相关,而且水样推动磁性转子转动,磁性转子的转速又是和水样的流动速度成正相关,通过这几项因素的关联,便可以准确计算出水的流速,这种方法具有精度高、响应快、线性效果好、更加稳定的优点。
水流量的测量原理主要依靠霍尔流速传感器给出测量得到的频率,系统对得到的频率进行处理,由传感器在一段时间内产生高电平的个数决定,即QF/R。根据需要,在单片机中写入设定的时间,利用单片机内部的定时器,计算出该时间之下得到的高电平即可,由于磁性转子的转速又是和水样的流动速度成正相关,这样就可以根据已有公式推算出液体的流速,其中已有公式有:
公式(2)中:F-脉冲信号频率,Q-水流速,ω-角速度,V-线速度,F-频率(Hz),Q-水流量(L/min)。
把负载电阻接入霍尔流速传感器的正极,同时为了使电流的方向和磁场的方向相互正交,加上5 V 的直流电压。当水样流过转子组件的时候带动磁性转子的转动,并且转速是随着水流速成线性变化的。霍尔流速传感器就实时输出相应的脉冲信号发送给单片机,由单片机判断液体流速的大小。
2.3 水质监测模块
水质检测模块分为3 个子模块,分别对应不同的功能。pH 监测模块组成部分有单片机和pH 值传感器,实现对水样pH 值的在线监测;浑浊度监测模块组成部分有单片机和浑浊度传感器,实现对水样浑浊度、悬浮颗粒的在线监测;TDS、电导率监测模块组成部分有单片机、TDS 监测系统和电导率传感器,实现对水样TDS 和电导率的实时监测。水质监测模块系统框图见图2。
2.3.1 pH 监测模块
本模块以单片机为核心,以pH 值传感器[2]为组成部分,以玻璃电极为指示电极、以饱和甘汞电极为参比电极,把这两种电极封装组成复合玻璃电极,与溶液一起构成原电池系统。pH 就是指溶液中氢离子的浓度,即酸碱度,pH 的定义为:-log(h+)。采用这种方法测量,更加方便高效,测量结果更加准确,有利于实现对水质的实时监测。
实际生产中,电位分析法可以实现在线监测和过程监控,所以我们利用电位分析法进行测量,通过能斯特方程得到水样的pH。能斯特方程表达式为:
公式(3)中:E0- 标准电极电势;R- 气体常数8.314 3 J/(k·mol);T-绝对温度k;F-法拉第常数;n-电极反应中得失的电子数。
该检测需要提取被检测区域边缘、内部的多组水样,以保证数据的可靠性。Nernst 方程与绝对温度有严格的关系,我们可以再次利用之前设计的温度传感器对电极附近的水样温度进行收集,采取温度补偿的措施[3],将数据交给单片机处理。
组块采集水样的电动势信号,经过处理和增益放大后,传输给A/D 模数转换芯片将模拟信号转换成数字信号。在这个过程中我们还需要温度信息,pH 值采集与温度采集信息互联,MSU 对采集到的酸碱度信息进行滤波和温度的补偿,对水样的pH 值进行精准计算,计算结果传送到计算机。
2.3.2 浑浊度监测模块
该模块以单片机最小系统为核心,以浑浊度传感器为组成部分。浑浊度是表示水质的重要参数,它是指水样中不同大小、比重、形状的悬浮胶体颗粒、污泥、浮游生物以及其他微生物等阻碍光线透过的程度。因此这就为我们的设计提供了思路。
根据浑浊度的定义和水样的性质,我们使用对液体悬浮颗粒有敏感反射作用的红外光作为检测手段,通过朗伯-比尔定律加以计算。根据朗伯-比尔定律,得到水样的浑浊度公式:
公式(4)中:H-浑浊度;B-介质散射系数;L-光束透过液体的直线距离(mm);E0-发光强度(Lx);E-接收到的光强。
在水池的边缘、内部随机提取多组水样样本,在水样中设置适当波长的红外线灯管作为发光光源。红外线灯管置于水样内部,由光源发出的红外光穿过被测液体通道,组块接收端的光电三极管接收发出的光束[4]。
接收端选取与发射红外光波相近的硅光电三极管,光电三极管因受激励而产生光电流,光电流近似线性变化[5],LG 构成射极跟随器来提高输出阻抗,经过带通滤波器处理后输出,射极跟随器输出随浑浊度变化的电平,送到CPU,得到与浑浊度对应的检测信号,信号经处理器分析计算后得到对应的水样浑浊度。因此,浑浊度转换成了通过光电三极管的输出电流或输出电压的函数。光电三极管射极的输出电压经过滤波器滤波,处理后送到用户端[6]。
2.3.3 TDS 监测、电导率监测模块
本模块以单片机为控制核心,以TDS 监测系统、电导率传感器为组成部分,通过电导率测量系统中的探头采集电导率信号,提取水池边缘、内部的多组水样,以保证数据的准确性、可靠性。总溶解固体,它表明1L 水样中溶解有多少毫克溶解性固体,本模块的TDS 监测采用更加智能的电极法。
因为TDS 与溶液的阻抗有关,阻抗又与电导率紧密相关,因此电导率和TDS 存在紧密的关系。根据基础化学,我们可以知道,水溶液的电导率和溶解性固体总浓度成正比,而且离子浓度越高电导率越大,根据摩尔电导率公式我们就可以加以计算,公式:
公式(5)中:k-电导率;Vm-样本体积;c-溶液浓度。
由于温度对TDS 测量结果的准确性有很大影响,当温度不为标准温度25 ℃时,我们就需要用温度传感器采集水样温度,将采集到的电导率信息与温度信传至送单片机,通过算法补偿温度差别带来的误差。
该系统通过测量水样的电导率产生谐振,把传感器上的排针插入待测水样,通过这个方法构成一个电极,这样就可以使整个模块构成一个封闭的谐振回路[7],谐振后引脚就会向单片机最小系统传输一个基于待测水样的电导率的频率f。由于开关晶体管具有很好的带负载能力,所以把输出端引脚接开关晶体管,这样就保证了系统的稳定性,从而使输出频率近似呈线性变化,保证数据的可靠性。
3 结语
本文设计了一种基于STM32 单片机系统的智能化综合饮用水源监测系统,该系统以STM32 单片机为核心。在设计过程中,充分考虑多种影响因素,尤其以温度控制最为明显,多次采用了温度传感器采样进行温度补偿的办法对数据进行计算与处理。该系统通过水深监测模块、水流量监测模块、水质监测模块对饮用水源保护区的水深、流速、酸碱度、浑浊度、TDS、导电性进行了全方位的综合监控与治理。我们的饮用水源监测系统与现有手段相比较,更加的经济、方便,实用性和普及性更高,节省了大量的人力、物力、财力,这一综合性系统打破了以往单一系统测量局限的问题,并能对饮用水源保护区进行全方位的监测,提高了经济效益,具有很强的实用性。