在本教程中,您将学会如何让湿度传感器在nodemcu上面工作。并了解传感器如何根据湿度的大小来进行工作的,以及学会在串行监视器查看湿度传感器输出的数据。
目录
步骤1:材料准备
以上图片中的是这节课程需要用到的东西,
硬件清单:
NodeMCU
湿度传感器
一块面包板
若干跳线
USB数据线
两个LED灯(红绿各一个)
软件环境
Arduino IDE(安装了esp8266)
步骤2:相关说明
湿度传感器是可以用来检测土壤的水分的,或者用来判断周围有没有水分,这可以用来制作一个智能浇花系统之类的。
该传感器非常容易使用,您只需将这个传感器插入土壤并读取数据即可。
步骤3:电路搭建
将湿度传感器连接到NodeMCU是非常容易的。
接线方式如下:
在连接湿度传感器时线连接到放大器的两个引脚上,再从放大器连接三根线到nodemcu,不懂的看图。
将Vcc从放大器连接到NodeMCU上的3.3V引脚。
将GND引脚连接到NodeMCU上的地(GND)引脚。
将模拟引脚连接到NodeMCU上的A0引脚。
通过USB数据线将NodeMCU连接到PC。
完成接线后,将传感器插入土壤或将其放置在任何您想要的地方。
接下来的示范就放到水上进行演示。
步骤4:准备Arduino IDE
如图上图所示是进行开发板选择和端口选择,选择好之后就可以开始编程了。
步骤5:编程/编译/上传
程序编写好之后,就可以进行编译然后上传了。
本节课程序:
[scu name=”arduino-ide-post” platform=”esp8266:esp8266:nodemcuv2″]
int WET = 16; //数字引脚D0处的湿指示灯
int DRY = 2; //数字引脚D4上的干指示灯
int sense_Pin = 0; //模拟引脚A0连接传感器输入
int value = 0;
void setup() {
Serial.begin(9600);
pinMode(WET, OUTPUT);
pinMode(DRY, OUTPUT);
delay(2000);
}
void loop() {
Serial.print("MOISTURE LEVEL:");
value = analogRead(sense_Pin);
value = value / 10;
Serial.println(value);
if (value < 50) {
digitalWrite(WET, HIGH);
} else {
digitalWrite(DRY, HIGH);
}
delay(1000);
digitalWrite(WET, LOW);
digitalWrite(DRY, LOW);
}
[/scu]
步骤6:检测结果
您可以在串行监视器看到输出的数据。同时,指示灯在湿度小于50与大于等于50所亮的指示灯是不一样的。
大家可以尝试着扩展一下。
以下是本节课的代码: