Arduino UNO驱动土壤湿度传感器检测
- 简介
- 运行要求
- Arduino UNO与传感器接线
- 程序展示
- 实践效果
- 总结
简介
本次使用到是这个新款土壤湿度传感器!
这款电容式土壤湿度传感器区别于市面上绝大部分的电阻式传感器,采用电容感应原理来检测土壤湿度。避免了电阻式传感器极易被腐蚀的问题,极大地延长了它的工作寿命。
运行要求
符号 | 引脚功能 |
---|
VCC | 电源正极 |
GND | 电源负极 |
Aout | 模拟量输出 |
工作电压: 3.3 ~ 5.5 VDC
输出电压: 0 ~ 3.0 VDC
湿度大时电压小,湿度小时电压大,可以用万用表测量确认。
接口: PH2.54-3P
尺寸: 98 x 23mm (LxW)
为方便读取,使用一块0.96的液晶显示屏,进行读取。
符号 | 引脚功能 |
---|
VCC | 电源正极 |
GND | 电源负极 |
SCL | 串行时钟线 |
SDA | 串行数据线 |
宽供电范围:3.3 - 5v
分辨率:128*64
通信方式:i2c
Arduino UNO与传感器接线
使用5v一组vcc和gnd,以及A4、A5一组默认的i2c引脚,给oled屏幕连接。使用3.3v和gnd一组,给土壤传感器供电,将输出的Aout引脚连接到A0模拟口上进行转化。
程序展示
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define OLED_RESET 13
Adafruit_SSD1306 display(OLED_RESET);
float a = 0;
void setup() {
display.begin(SSD1306_SWITCHCAPVCC,0x3C);
display.clearDisplay();
display.setTextColor(WHITE);
display.display();
}
void loop() {
a = analogRead(A0);
display.setTextSize(1);
display.setCursor(0,0);
if (a!=0;a = a/658) {
display.print("soil:");
a = 1-a;
a = a*100;
display.print(a);
display.println(" %RH");
display.println("come from yourcee");
display.display();
display.clearDisplay();
}else display.print("Error");
}
实践效果
总结
1、该实验过程,屏显数值需要推理计算,更加专业的计算方式,能够促进模块的测量效果
2、uno开发板有多个模拟量的接口 ,可以试着别的引脚定义,效果也是一样的。oled也可使用不同的库,利用汉字的说明。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)