基于STM32单片机的水质检测系统设计(STM32代码编写+手机APP设计+PCB设计+Proteus仿真)

系列文章目录



前言

本文设计出一款基于STM32单片机的水质检测系统。

主要功能如下:

1、检测水质的温度、TDS电导率、浑浊度、液位、PH值。

2、按键调节阈值,超出阈值声光报警。

3、温度过高自动开启风扇,液位过低自动开启水泵。

4、显示屏实时显示数据。

5、通过ESP8266连接 OneNET 云平台,实现云平台-单片机-手机APP三方交互。


1 资料获取与演示视频

1.1 资料介绍

在这里插入图片描述

1.2 资料获取

完整资料获得链接:基于STM32单片机水质检测类系统设计

1.3 演示视频

完整演示视频请看:基于STM32单片机水质检测系统视频演示 (STM32编写+手机APP设计+PCB设计+Proteus仿真)


2 系统框架

系统框架如图所示:

在这里插入图片描述
单片机整体框图:

在这里插入图片描述

3 硬件

3.1 主控制器

主控制器选择STM32F103C8T6,在淘宝上买的,如下图所示:

在这里插入图片描述
STM32F103C8T6 是意法半导体(ST)推出的一款基于 ARM Cortex-M3 内核的 32 位微控制器,以下从其性能参数、功能特性、应用领域等方面进行介绍:

  1. 主频
    最高可达 72MHz,具备 1.25DMIPS/MHz 的运算能力,能够快速处理各种指令和任务。
    内核处理器:采用 ARM Cortex-M3 内核,具有高性能、低功耗的特点,支持 Thumb-2 指令集,能够高效地执行各种指令。

  2. 存储
    拥有 64KB 的 Flash 存储器,用于存储程序代码和常量数据;20KB 的 SRAM,用于存储运行时的变量和临时数据。

  3. 丰富的外设接口
    USART:集成了 3 个 USART(通用同步异步收发器)接口
    SPI:2 个 SPI(串行外设接口)接口
    I2C:2 个 I2C(Inter-Integrated Circuit)接口
    USB: 1 个 USB 2.0 全速接口

  4. 定时器
    包含 7 个定时器,其中包括 4 路 PWM 输出,可用于脉冲宽度调制、输入捕获、输出比较、正交编码器接口等功能,广泛应用于电机控制、脉冲信号生成等领域。

  5. ADC(模数转换器)
    内置 2 个 12 位 ADC,转换时间仅为 1μs,具有 10 个通道,可对多路模拟信号进行快速采样转换,适用于各种需要采集模拟信号的场景,如传感器数据采集等。

  6. 时钟系统
    内置 4-16MHz 的高速内部时钟(HSI)和 32KHz 的低速内部时钟(LSI),也可通过外部晶振提供更高精度的时钟源,通常包括一个 8MHz 的高速外部时钟(HSE)和一个 32.768KHz 的低速外部时钟(LSE),为芯片内部各个模块提供精确的时钟信号,确保它们能够同步工作。

  7. 其他功能
    集成了看门狗定时器、CRC 计算单元、RTC 实时时钟、SysTick 定时器、DMA(Direct Memory Access)控制器等,进一步增强了芯片的功能和可靠性。支持 JTAG(Joint Test Action Group)和 SWD(Single Wire Debug)调试接口,方便开发人员连接调试器进行程序调试和下载,提高开发效率。

3.2 显示屏

使用1.8寸显示屏,分辨率128*160。如图,

在这里插入图片描述

1.8寸彩屏,支持16BIT RGB 65K彩色显示,显示色彩丰富

128X160分辨率,显示清晰

采用SPI串行总线,只需几个IO即可点亮显示

带SD卡槽方便功能扩展

军工级工艺标准,长期稳定工作

3.3 WIFI模块

WIFI模块使用ESP8266,如图,

在这里插入图片描述

ESP01S 是一款基于乐鑫 ESP8266EX 芯片的低成本、低功耗 Wi-Fi 模块,专为物联网(IoT)和嵌入式系统设计。
以下是其详细介绍:

核心架构与性能
处理器:采用 32 位 Tensilica L106 RISC 处理器,主频支持 80MHz 或 160MHz,集成 TCP/IP 协议栈,可直接运行用户程序。
内存配置:
闪存(Flash):提供 1MB 或 4MB 两种版本(具体型号差异),用于存储固件和用户代码。
RAM:64KB,支持程序运行和数据缓存。
通信协议:支持 802.11b/g/n 标准,数据传输速率最高 4Mbps,覆盖 2.4GHz 频段,支持 STA、AP、STA+AP 三种工作模式。
硬件资源与接口
引脚定义:
供电:3.0V~3.6V(推荐 3.3V),传输电流 170mA,接收电流 56mA。
通信:UART 接口(TXD/RXD),支持 AT 指令交互,波特率默认 115200bps。
GPIO:提供 2 个可编程引脚(GPIO0、GPIO2),可用于控制外设(如 LED、继电器)或传感器输入。
其他:CH_PD(使能引脚,高电平有效)、RST(复位引脚)。
扩展能力:
PWM:部分引脚支持 PWM 输出,用于电机调速或灯光控制。
I²C/SPI:需通过外部扩展芯片(如 PCF8574、MCP23017)实现。
低功耗特性
工作模式:
活跃模式:传输时电流约 170mA,接收时 56mA。
睡眠模式:
轻睡眠:电流约 10mA,保留网络连接。
深度睡眠:电流低至 20μA,适用于电池供电设备。
唤醒方式:支持定时唤醒、GPIO 触发唤醒或 UART 数据唤醒。
应用场景
智能家居:通过 Wi-Fi 连接控制灯光、空调、门锁等设备。
环境监测:采集温湿度、空气质量等数据并上传至云端。
工业自动化:远程监控设备状态,实现无线数据传输。
智能农业:监测土壤湿度、光照等参数,优化种植管理。

3.4 温度传感器和TDS电导率传感器

温度传感器和TDS电导率传感器公用一个转接板,使用不同的探头,如图所示:

在这里插入图片描述
左侧上面接TDS传感器探头,左侧下面接DS18B20温度传感器探头。右侧接单片机。
在这里插入图片描述

TDS传感器是一种用于测量水中总溶解固体(Total Dissolved Solids,简称TDS)含量的传感器。 TDS是指水中溶解的无机盐和有机物的总量,通常以毫克/升(mg/L)或者以微西门子/厘米(μS/cm)来表示。 TDS水质传感器的工作原理是通过测量水中的电导率来间接估算TDS含量。 当水中溶解的离子增多时,电导率也会相应增加。TDS传感器在饮用水检测、工业过程控制、农业灌溉等领域有广泛应用。

3.5 浑浊度传感器

浑浊度传感器如图:
在这里插入图片描述

3.6 液位传感器

液位传感器如图:
在这里插入图片描述

模块原理:MSP20水深/液位传感器模块原理:传感器内部是一款压阻式压力传感器,由一个弹簧膜片和四个集成在隔膜的四个压电电阻器,建立一个惠斯通电桥结构。弹性膜片有受到压力时,惠斯通电桥会产生一个线性电压信号 (mV) 输出。水深越大,对管道内的气压就越大,根据输出电压值,即可检测液位深度的变化。

工作电压:DC5.0V
输出信号:模拟信号0-3V(水位越深,输出电压值越大)
检测精度:1cm
检测量程:10-300cm
运用场合:单片机检测水压,水深,液位高度等电子设计
外形尺寸:33x18x1.6mm
发货清单: MSP20水深/液位传感器模块1,0.8米软管1

接线:
VCC:接DC5.0V电源正极(给传感器供电)
GND:接电源负极
AO:模拟信号输出,接单片机AD输入引脚

3.7 PH值传感器

PH值传感器如图:
在这里插入图片描述
在这里插入图片描述

pH值范围:0-14PH

温度范围:0-60℃
BNC连接适合大多数pH计和控制器
适用于广泛的应用:水族馆,水培,实验室等
该pH电极具有单缸,允许pH计,控制器,或具有BNC输入端子任意pH装置的输入端子直接连接
pH电极探头精确可靠的可以提供几乎瞬时的读数,帮助您重新检查你的水一次次的质量

3.8 继电器

本文使用继电器隔离风扇和水泵。
继电器模块如图:
在这里插入图片描述


4 设计PCB

直接使用上述模块,线路非常杂乱,因此,我们需要自己设计一块PCB底板。开发工具使用立创EDA。

相关资料已经放在本文第一节,“资源分享”。

4.1 安装下载立创EDA专业版

4.2 画原理图

在这里插入图片描述

4.3 摆放元器件,设计规则,泪滴,铺铜。

在这里插入图片描述
在这里插入图片描述

4.4 使用嘉立创下单助手进行下单,打板。

4.5 实物图

实物如图:
在这里插入图片描述


5 软件设计

5.1 编写STM32单片机代码

工程目录如图所示:
在这里插入图片描述
在这里插入图片描述

5.2 编写手机客户端代码

在这里插入图片描述
手机截屏:
在这里插入图片描述
手机长截屏:
在这里插入图片描述


6 proteus 仿真

本系统使用proteus8.17进行仿真测试。
在这里插入图片描述

完整视频请看本文1.3 演示视频


7 实验测试

7.1 准备

1、准备好硬件实物,接好传感器和其他外设。
2、将TFT LCD插在底板响应位置。
3、ESP8266插在相应位置。
4、在手机端安装机智云APP。
5、上电

7.2 烧录软件

下载代码需要提前安装好MDK环境,准备好SWD下载器,在MDK中进行“LOAD”下载。

7.3 实验验证

1、 proteus仿真测试

2、温度、TDS电导率、浊度、液位、PH值测试

3、按键调节阈值报警测试

4、风扇、水泵自动调节测试

5、手机客户端测试

演示视频:

STM32单片机水质检测类系统设计(包含stm32代码编写+手机APP设计+PCB设计+proteus仿真)

完整视频请看本文1.3 演示视频


总结

以上,就是基于STM32单片机的水质检测系统设计,包含实物,仿真、PCB,手机APP等,并对每个环节进行了详细测试。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值