首页 > 微机单片机 >单片机制作 > 利用ESP32制作一个电容式土壤湿度传感器

利用ESP32制作一个电容式土壤湿度传感器

来源:互联网发布者:走马观花 关键词: 湿度传感器 ESP32 更新时间: 2023/12/25

为了方便给冬季大棚里养护的植物浇水,我准备建立一个系统以备不时之需。

思考再三后,我的结论是准备自己做一个传感器,因为对于我的植物浇水项目(即将到来),我需要几个传感器用于几个植物。

我选择ESP32作为微控制器,因为它具有多个12位ADC输入,并且能够以比ArduinoUno等更高的频率生成PWM信号。在这个项目中,将为每个传感器生成一个600kHz的信号。

该传感器由广泛使用的简单低成本材料制成,可用作电容式湿度传感器。

第1步:制作湿度传感器

DIY传感器由简单的材料制成:

一些音频线

两个火锅叉

接线端子

塑料座椅腿套

硅胶膏

poYBAGJ2PdqACLNhAALvpLHHuDU056.png

销从火锅叉上切下,镀铬有助于避免腐蚀。带有接线端子的结构可以轻松地将铜电缆线连接到镀铬引脚。销(不弯曲)便于插入植物的土壤中。

作为测量水分含量的指标,我正在重复使用为我之前的项目开发的水位指示器:

poYBAGJ2PdaASRpRAAHNctbKMpw670.png

第4步:电子设置

在面包板设置中,我使用了ESP32s(节点MCU)。这种选择的原因如介绍中所述。

我的计划是扩展这个设置,使其具有制作完整的植物浇水系统的功能,并具有在线监测和警告功能。(ESP32板载WiFi和蓝牙)。

电路图(用Fritzing制作)如下:

pYYBAGJ2PdKAPF4zAATgiZAVkTY871.png

传感器电路图如下:

pYYBAGJ2Pc6AYTOpAAJq5APF2Qw966.png

面包板上的实际设置如下所示:

poYBAGJ2PcqAP9zpAAQP6ehs6nw388.png

ESP32由USB端口提供5V电源,并且板载3、3V稳压器。一个输出GPIO引脚通过10KOhm电阻连接到湿度传感器的一侧,并在5次测量期间(持续5秒)向传感器发送600kHz信号。ESP32(12位ADC)的一个输入引脚通过二极管和R/C网络(1MOhm和1uF)连接。传感器的另一条腿连接到GND。

传感器仅在测量期间通电,以避免对镀铬笔产生电解影响。

在我的实验中,我通过将传感器放入水中(最低测量值)和露天(最高值)来确定传感器的最小值和最大值。将传感器放入花盆中会产生介于最小值和最大值之间的中间值,具体取决于土壤湿度水平。中间值的比例似乎是相当线性的。

第3步:制作软件

ArduinoSketch中的循环函数很简单,只包含调用2个函数:

pYYBAGJ2PcaATviJAAA12Z6gUHw856.png

测量之间的1秒延迟仅用于实验和演示目的。在实际应用中,这种频率会低得多(通常每天几次,取决于植物的口渴程度)

ARDUINOIDE的绘图监视器以及串行监视器在实验过程中非常有用。绘图监视器图的视图如下所示:

poYBAGJ2PcKALHBXAAFXqkvn6OA429.png

plotmonitor上的读数显示由12位ADC测量的值。ESP32的完整3.3V刻度除以4096,即:每步0.8mV。

使用以下代码测量水分含量:

poYBAGJ2Pb6ARMHcAAGnPpUuAwM877.png

此后根据上表确定平均值所在的括号,并在湿度指示器上用颜色指示湿度水平,这要归功于《Adafruit_NeoPixel.h》库:

pYYBAGJ2PbeAf1MvAACUdBrv_nI924.png

要通过USB端口将草图下载到ESP32,需要按住Boot按钮。

提问/讨论

这里还没有内容,您有什么问题吗?

我要提问/讨论

推荐帖子 最新更新时间:2024-11-21 20:00

满足复杂信号测量需要的实时频谱分析工具
数字RF设备的特点是RF信号不再采用简单的AM或FM调制,而是采用高度复杂的时变调制方式,且信号随时间有很大的变化,本文将讨论载波信号中时间与频率的变化关系,并说明:为了真实地测量信号随时间变化的特征,工程师需要采用实时仪器对未预期的事件进行触发、无缝捕获并分析过去一段时间内累积
 JasonYooRF/无线
TI 通用LED照明研讨会
全球半导体领导厂商 - 德州仪器 ( Texas Instruments, TI ),在2011年 9 月底与美国国家半导体合并后为市场提供更丰富的LED照明芯片产品, TI将于3月14日,3月16日以及3月20日到22日分别在厦门,上海、深圳,中山和广州举办2012 TI
 maylove模拟与混合信号
ucos ii 下GPRS模块通过拨号方式进行tcp连接,不知如何下手?
现在mcu是stm32 芯片,gprs模块是华为gtm900 ,通过查找资料如果不用模块内部的协议栈的话,自己得在ucos ii上实现ppp协议与tcp/ip协议栈,现在在网上下载了ucip1-0-3,里面就是src 目录下,有相关代码,里面还有makefile,似乎应该在l
 课程设计实时操作系统RTOS
用vb.net在WinCE下,调用sndPlaySound函数!
Declare Function sndPlaySound Lib \"Coredll.lib\" (ByVal SoundName As String, ByVal Flags As Byte) As Boolean Private Sub Form1_Loa
 netWindowsCE
GPS设备术语详解
天线 天线主要是指GPS接收信号时所用的电线是处于接收器什么位置上,如内置天线、外置天线、车载天线等。 安装位置精确度 安装位置精确度主要是指GPS设备以安装位置为圆心的一个圆,当GPS卫星定位,GPS接收设备时其最大误差不会定位到
 frozenviolet汽车电子
请教:IIS和UDA1341工作原理
L3-interface用来控制音量,低音等,怎么控制的,控制信号是什么信号?PWM脉冲波?还是其他的 请教:IIS和UDA1341工作原理 留个邮箱我把我的驱动代码发给你,不过我是s3c2440 wince4.2的,应该都差不多 控制uda1341其实就是通过cpu的L3接
 sgch嵌入式系统

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版 版权声明

EEWORLD 电路图 站点相关: 下载中心 Datasheet 参考设计

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved