arduino 自动浇水代码
时间: 2023-07-09 12:11:28 浏览: 176
以下是一个基本的 Arduino 自动浇水代码,使用一个水泵和一个土壤湿度传感器来控制植物的浇水:
```
int soilSensorPin = A0; // 土壤湿度传感器连接的模拟输入引脚
int pumpPin = 2; // 水泵连接的数字输出引脚
int dryValue = 500; // 土壤干燥的阈值,需要根据实际情况进行调整
void setup() {
pinMode(pumpPin, OUTPUT);
digitalWrite(pumpPin, HIGH); // 水泵默认关闭
Serial.begin(9600);
}
void loop() {
int soilMoisture = analogRead(soilSensorPin); // 读取土壤湿度传感器的值
Serial.print("Soil moisture: ");
Serial.println(soilMoisture);
if (soilMoisture < dryValue) { // 如果土壤太干了
digitalWrite(pumpPin, LOW); // 打开水泵
delay(5000); // 浇水 5 秒钟
digitalWrite(pumpPin, HIGH); // 关闭水泵
delay(30000); // 等待 30 秒钟,等待土壤吸收水分
}
delay(1000); // 等待 1 秒钟
}
```
在此代码中,我们首先定义了土壤湿度传感器连接的模拟输入引脚和水泵连接的数字输出引脚。然后,在 `setup` 函数中,我们将水泵引脚设置为输出模式,并将其默认关闭。接下来,在 `loop` 函数中,我们读取土壤湿度传感器的值,并将其打印到串口监视器上。如果土壤太干,我们将打开水泵并等待 5 秒钟,然后关闭水泵并等待 30 秒钟,以便土壤可以吸收水分。最后,我们等待 1 秒钟,然后重新开始循环。需要根据实际情况对代码进行调整。
阅读全文