基于单片机的水位控制系统设计

作者: 顾绮芳

基于单片机的水位控制系统设计0

摘要:在日常生活和工业生产中,为了有效检测水位,并提高水位控制[1]系统的可靠性和准确性,本文设计了一种以单片机为核心的水位控制系统。该系统主要由水位检测模块、单片机控制模块和执行控制模块组成。文章根据水位检测控制的实际需求,对常用的水位检测控制方法的对比分析和研究,介绍了水位控制系统总体方案的设计,其中包括硬件和软件两部分,在硬件设计中重点阐述了电路图设计。

关键词:单片机;超声波测距;水位监测控制

中图分类号:TP311  文献标识码:A

文章编号:1009-3044(2024)22-0092-03

开放科学(资源服务)标识码(OSID)

0 引言

本课题主要研究基于单片机的水位控制系统。该系统以单片机STM32F103C8T6为核心,由硬件和软件两部分内容构成。其中,硬件部分主要包括信号发送和接收模块、电源模块、测量模块和显示模块;软件部分是在Keil4开发运行环境下使用高级汇编C++语言编程实现,利用超声波测距技术来测量水位高度。该系统适用于水位控制、防洪、自动灌溉等多种场景。通过本研究,能够有效地监测水位高度,提高水位控制与测量的精度和可靠性,为人们的生活与农业生产带来便利。此外,基于单片机的水位控制系统具有结构简单、功能齐全、成本、操作方便等优点,使得该系统的应用范围更广泛,能够更好地满足社会需求。

1 系统总体方案设计

基于单片机的水位控制系统,由多个部件组成,其中传感器部件实时采集水位的信号,并将信号传输给单片机进行存贮、分析、运算和处理。

除超声波传感器元件外,系统还包括单片机、继电器、水泵、显示屏等部件。单片机负责接收和处理传感器测得的水位和温度数据。水泵控制水的进出,以维持水池水位稳定。显示屏实时显示水位高度和系统状态。系统总体方案框架图如图1所示。

2 系统硬件设计

这个基于超声波技术的测距系统主要包括发射、接收、单片机接口和显示报警等相关电路。主要设计围绕单片机功能实现,强调超声波传递和接收方面的优化,以达到更高的测量准确度和分辨率。对于超声波发射器UCM40T和接收器UCM40R所接受到的超声回波电压值只有几十毫伏,同时伴随着强烈的噪声信号。因此,在放大电路的设计中,需要同时处理信号和噪声,并使信号得到合适的放大。为此,决定使用CX20106A集成电路来实现这两个任务,并将其传递到MCU中通过P2.7端口进行处理。随后,使用动态扫描方式将处理后的数据展示,并利用单片机编程将时间数据转化为相应的距离信息,并在OLED显示器上展示。

2.1 最小系统

基于STM32F103C8T6单片机的相关电路如下介绍。单片机晶振电路如图2所示。

单片机RTC晶振电路如图3所示。

这是表示复位的输出,一旦晶体振荡器开始运转,RST引脚将连续产生两个机械循环的波形,并使用其高电平执行对微处理器的重置。当看门狗定时器被关闭后,RST的管脚将被调到高水平,具体细节可以在图4中看到。

从图4 可以看出,当RST管脚被按下时,它通过电阻器R24与系统+5V电源相连,只要这个时间保持在至少2个机械周期,单片机就会完成重置操作。

2.2 超声波水位传感器[3]电路

本课题选用超声波传感器HC-SR04,经发射端发出的超声波波长为6毫米左右,频率为40千赫兹。这个信号会被液面反射,然后被接收器接受。其在收到信号时,会发出毫伏量级的弱电压讯号。超声波传感器模块的电路如图5所示。

超声波传感器一般由电声换能器、接收器和控制电路组成。电声换能器将电能转换成声能,发射超声波到液面,接收器接收反射回来的声波并转换成电信号,送至控制电路计算和处理。

2.3 OLED显示电路

水位高度等有关的定制文字以点阵方式储存于OLED荧光屏的随机存取存储器内,即可完成定制文字的显示。其中,定制文字的点阵信息必须转换成二元信息,然后以OLED显示屏寻址的形式存入内存,最后再根据一一对应的指示,在画面上显示出定制的文字。OLED显示电路如图6所示。

2.4 蜂鸣器

在本课题中需要使用蜂鸣器,以实现对P1.2相关频率信号的推导。此举可达到一定的放大效果,提高信号传输的效率。注意连接时须谨慎,确保连接正确无误。具体细节可以在图7中看到。

2.5 电源电路

为了确保水位控制系统[4]在供电方面的稳定性,本课题设计了USB供电和电源电路。

1) USB供电。整个系统的电源输入采用USB接口。由于USB接口提供的电压是5V,我们需要将这个电压转换为系统所需的工作电压。对于较小的系统,可以使用超小型线性稳压器或切换稳压器将5V直接转换为所需工作电压。

2) 电源电路。选择使用电源稳压芯片来保证稳定的电源,并与USB供电形成双重电源保护。在电源稳压芯片的电路中,我们还加入了输入和输出的滤波电容,滤除高频噪声和干扰信号,降低对系统稳定性的影响。其电路图如8所示。

2.6 按键电路

键盘在单片机的应用和管理中是必不缺少的部件,键盘中的按键相当于一个独立的按钮,与单片机的输入输出接口对应连接,通过程序扫描的查询方式,完成单片机系统中信号交互任务。在程序扫描的方式下,通过输入输出端口读取键盘按下与松开的状态,在按键被按下时输入输出端与地面间的短接就会使得输入输出端变为低电压,相应的接口就会置“0”,松开时,在MCU中有一个上拉电阻器,使输入输出处于一个高电压的状态,相应的接口就会置“1”这样根据电压高低状态就能判断是否按下按键。硬件电路如图9所示。

2.7 水泵控制电路

在水泵控制电路中,我们使用单刀双掷型(SPDT) 继电器[7],利用继电器的COM引脚为公共端,NO和NC两个引脚来控制水泵的启停。具体实现方式是,当水箱内的水位低于最低水位线时,单片机控制继电器[2]进行触点切换,接通NO和COM两个引脚,使得水泵启动开始进水;当水箱内的水位高于最高水位线时,单片机控制继电器进行一次触点切换,接通NO和COM两个引脚,使得水泵停止工作;这样就实现了一种简单、可靠的水泵控制电路。

除了继电器,水泵控制[8]电路中还需要加入一些保护电路来防止水泵短路、过载等情况对单片机和继电器造成损害。具体保护电路的设计可以根据实际情况进行选择。其电路如图10所示。

2.8 PCB板

该系统的硬件部分采用了PCB技术,即将电路图设计成实体化的电路板。PCB的设计包括电路原理图转换、布线、走线、光绘、钻孔和贴装等步骤。在硬件设计方面,采用了双层PCB的设计形式,其中一层用于电源线和信号线的布线,另一层则用于对细节部分进行布线和走线,以确保电路的精细和稳定性。通过PCB的制作,可以将电路板制作成固定的形式,提高系统的整体可靠性和稳定性。

3 系统软件设计

本次软件设计是在Keil 4开发环境下利用高级编程语言C++进行程序编写,在硬件设计的基础上对系统程序控制和系统管理。主要内容包括如下:

系统程序结构如下:

1) 引入头文件:包含所需的库文件和宏定义。

2) 全局变量定义:定义需要用到的全局变量,包括超声波传感器数据、参考水位、当前水位、泵状态、OLED显示屏对象等。

3) 初始化函数:对各个模块进行初始化,包括超声波传感器、OLED显示屏、继电器以及定时器等。

4) 主函数:程序的入口,包括以下5种功能:

a. 超声波传感器数据读取:通过超声波传感器获取当前水位数据;该系统最小可以是112毫米左右的测量范围。

b. 水位判断:根据当前水位和参考水位,判断是否需要启动或关闭水泵;

c. OLED显示屏刷新:根据当前水位和泵状态,实时更新OLED显示屏的内容;

d. 继电器控制水泵:根据水泵状态控制继电器的开关;

e. 定时器中断:设置定时器,定时读取当前水位并更新系统状态;

5) 子函数:包括水泵启动和关闭、OLED显示屏更新、定时器中断函数等,用于辅助实现系统功能。

综上所述,该水位控制系统基于STM32F103C8T6单片机,通过超声波传感器测量水位,利用OLED显示屏实时显示水位状态,根据参考水位判断是否需要启动或关闭水泵,借助继电器实现水泵的开关控制,同时通过定时器定时更新系统状态,实现全自动[6]的水位控制功能。本系统的流程控制严密,功能齐全,可以有效地保障水位控制的稳定性和安全性。系统的主流程如图11所示。

4 结束语

本文旨在探讨基于单片机的水位控制系统的设计实现。选用了STM32F103C8T6作为控制中心,利用超声波水位传感器实时监测水位[5]并根据预设的水位阈值控制水泵的开关。同时,该系统还加入了OLED显示屏用于展示实时水位信息,蜂鸣器和继电器用于实现异常报警和电路保护等功能。该系统经过实验验证,能够准确、稳定地控制水位,对于异常情况也可以及时响应,具有很好的实用价值。

参考文献:

[1] 李春秀,孙书芹.基于单片机的水位控制技术在水处理中的应用[J].农村自用水电,2020(2):46-48.

[2] 孔祥恒.单片机控制的自动供水系统设计[J].数码设计,2019(12):198.

[3] 杜凡,周华.基于单片机的水位传感器应用研究[J].电子测量与仪器,2018(1):50-52.

[4] 党强.基于单片机的煤矿井下水位测控系统[J].百科论坛电子杂志,2021(1):2189.

[5] 龙文峰,袁梦鑫.一种基于单片机的水位监测系统设计[J].探索科学,2021(2):333-334.

[6] 朱强军,李金帅.基于Proteus水位自动控制系统的设计[J].电子制作,2020(2):72-73.

[7] 唐彬夏,许建明.基于单片机的水塔水位控制系统设计[J].电子制作,2013(1):59.

[9] 朱昌富.基于单片机的水位监控系统[J].宁德师范学院学报(自然科学版),2012,24(2):169-172.

【通联编辑:梁书】

上一篇 点击页面呼出菜单 下一篇