常用传感器讲解八--土壤湿度传感器(XH-M214)

493 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

具体讲解

在这里插入图片描述 土壤水分传感器测量土壤水分随土壤电导率的变化而变化(土壤电阻随干旱而增加)。在传感器的两个电极之间测量电阻。

当超过可调整的阈值时,比较器将激活数字输出。

在开始编写代码时,我们定义了3个变量:

int sensorPin = A0; -第一个定义了Arduino的模拟引脚

int sensorValue;
-第二个定义了Arduino读取的传感器的模拟值

int limit = 300; 第三个定义了一个限制(在这种情况下,如果sensorValue大于该限制,那么一个LED将会亮起)


void setup() { Serial.begin(9600); pinMode(13, OUTPUT); } 之后,我们通过指示波特数(此处为9600)以及通过指示当前输出的Arduino的第十三引脚(LED引脚)来初始化串行监视器。


void loop() {
sensorValue = analogRead(sensorPin); 我们将sensorValue定义为Arduino读取的值。

Serial.println("Analog Value : "); Serial.println(sensorValue); 我们在串行监视器上显示sensorValue。

if (sensorValue<limit) { digitalWrite(13, HIGH); } else { digitalWrite(13, LOW); } delay(1000); } 如果sensorValue小于限制,那么这部分代码可以使LED点亮。否则,LED保持熄灭。

电路连接

连接数 Arduino的->比较器 3V-> VCC

地线->地线

A0-> A0

比较器->传感器 +-> +

-->-

Arduino的-> LED D13-> +

GND->-

在LED的+和-之间连接一个电阻。

代码部分

int sensorPin = A0; 
int sensorValue;  
int limit = 300; 

void setup() {
 Serial.begin(9600);
 pinMode(13, OUTPUT);
}

void loop() {

 sensorValue = analogRead(sensorPin); 
 Serial.println("Analog Value : ");
 Serial.println(sensorValue);
 
 if (sensorValue<limit) {
 digitalWrite(13, HIGH); 
 }
 else {
 digitalWrite(13, LOW); 
 }
 
 delay(1000); 
}