余搏立
摘 要:文章以STM32F103VET6单片机为核心控制器设计一种简易水情检测系统,该系统能够实现液位和溶液pH值检测,并实时显示状态数据,测量精度高,功耗低,性能稳定。
关键词:STM32F103VET6单片机;玻璃电极;递推平均滤波算法
中图分类号:TP274 文献标志码:A 文章编号:2095-2945(2018)20-0035-03
Abstract: In this paper, a simple water regime detection system is designed with STM32F103VET6 single chip microcomputer as the core controller. The system can detect the liquid level and pH value of solution, and display the state data in real time. The measurement accuracy is high, the power consumption is low, and the performance is stable.
Keywords: STM32F103VET6 microcontroller; glass electrode; recursive average filter algorithm
1 概述
随着科技水平的进步与创新,简易水情检测系统中溶液pH值测量和液位测量迈向智能化。检测系统对测量精度的要求愈加细致与严格。本文提出的设计方法对溶液pH值和液位高度能够实现精确测量与显示。整个系统仅由3.7V电池组供电,采用TFT液晶屏显示实时数据。
2 方案设计
2.1 总体设计
本文选用玻璃电极pH值传感器对溶液pH值检测,设计信号调理电路将输出信号转化成模拟量电压信号,经过控制器AD转换成数字量信号进行处理;选用超声波液位传感器进行液位测量,经串口通信传输控制器参与运算;测量数据经递推平均滤波算法处理后采用TFT液晶屏实时显示水位测量高度、pH测量值、电池输出电压等状态监控数据,构成简易水情检测系统[1]。
本文设计的检测系统分STM32单片机最小系统、传感器检测电路、A/D采样电路、液晶显示电路、电源模块电路构成。系统方框图如图1所示。
2.2 pH测量的基本原理
水溶液中氢离子的占比通过PH予以表示。根据能斯特方程,测量电极和被测量液体之间的电位差对应于液体中氢离子的浓度[2]。能斯特方程简化后的数学表达式如下:
公式(1)中K为理论斜率;E为指定H+浓度下电极电势;E0为标准电极电位,温度一定时为一常数。上式说明电极的电位变化与被测溶液的pH值成线性关系。
2.3 液位测量原理与计算
超声波传感器安装位置相对于液面的高度和超声波发出经液面反射接收的时间差具有一一对应关系,故可将单片机系统测得时间差换算成液面高度。安装时注意将超声波传感器发射端正对液面。记超声波传感器相对液面的高度为L,单位为毫米;超声波的传播时间差为T,单位为秒;声音在空气中的传播速度V;数学关系式如下:
3 电路设计
3.1 pH值传感器信号调理电路
根据pH值传感器电极输出的电压为信号电极与参考电极的电位差,当pH值每变化1个单位时,传感器电极输出为几十毫伏,如要将毫伏数量级信号放大到伏特数量级供AD转换,需放大几百倍。玻璃电极的感应端电阻很高,产生的干扰也被放大,进一步加大误差。若用pH-电位平移,只需较小的电压放大倍数,即可实现pH值与输出电压之间的线性关系[3]。单电源运放能实现线性放大的运放有LM358,LM324,TLC4502等,由于玻璃复合电极的内阻极高,电路测量的关键是选择高输入阻抗的运放,TLC4502具有输入阻抗高,具有高精密低温飘特点,故采用TLC4502。电路原理如图2所示。
图2(a),通过调整RW给参比电极(PH-端)赋予了一个1.1V的基准电压值,用来保证信号电极(PH+端)电压恒为正值,运放单电源供电也满足要求。对于输入1V以上的测量信号,只需放大2~3倍即可满足单片机测量要求,如图2(b)所示,只要合理地调整RX实现电极输出电压与pH值之间的线性关系。
设计的电极在不同pH值(标准pH计进行测量)下得到的输出电压如表1所示。
以当前数据为基准进行数据分析,通过图形法导出PH线性方程:
3.2 电源电路
电源模块采用3.7V电池组,使用XL6009升压电路,输出电压经7805稳压后,用于运放电路和传感器供电。电路图如图3所示。
4 程序设计
系统的程序设计采用C语言编程。相对于汇编语言,C语言编程较简单,包含各种头文件,功能强大,易于理解,可读性强,单片机进行编程实现各项功能,更利于操作。系统程序流程图如图4所示。
在实际A/D转换测量中,发现每次采样转换的波动都很大,但实际用万用表测量时电压无波动。可知在软件A/D转换测量的结果不能直接用于计算,需进行有效的软件滤波以排除A/D测量的误差,经过多种方法的调试,最终采用如下方法软件滤波(递推平均滤波法):确定一个采样数据的队列数组,可参考数组长度4~12个;将单片机A/D采样数据存放在数组中,保持采样数据的连续性;根据先进先出特点将下一个采样结果置于数组末端,并删减队列首数据,保持采样数据队列整体长度不变;对数组中的采样结果经算数平均求解,作为最终测量值。
5 测试结果与数据
在自来水加入白醋,使用本设计进行测量,溶液pH值测量结果如表2所示,液位测量如表3所示。
通过以上测量結果可知:设计的pH和液位测量仪满足设计要求的误差范围(pH误差±0.1,液位误差±0.1mm)。
参考文献:
[1]胡继胜.电子技术基础及应用[M].北京:电子工业出版社,2014.
[2]李恒达.电极电势与金属-溶液界面电位差[J].松辽学刊(自然科学版),1999,04.
[3]张莉,夏红,徐善军,等.工业pH计在生产中的应用[J].中国氯碱,2009,05.
[4]唐晓波.浅谈水情测报系统设计中应考虑的问题[J].科技创新与应用,2016(33):236.
[5]张云鹏.水情测报系统在水库防汛中的运用分析[J].科技创新与应用,2017(28):149-150.