我为一些植物创造了一个自动浇水系统。我正在使用电机控制它们,土壤传感器告诉他们什么时候需要水。但是我既不了解我应该如何处理这个问题,又是我的代码无法正常工作的问题。我的问题是while循环从未被初始化,所以电机永远不会停止我可以通过我的串行监视器告诉它。
if(sensorVal1 <= thresholdDown1){
Serial.println("Plant Group 1 is Dry!");
Serial.println(sensorVal1);
Serial.println("Watering");
digitalWrite(in1, LOW); //LEFT
digitalWrite(in2, HIGH);
analogWrite(enA, 255);
delay(6250);
startTime = millis();
while(sensorVal1 <= thresholdDown1){
Serial.println("Stopping");
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
if(sensorVal1 >= thresholdUp1){
break;
}
}
totalTime = millis() - startTime;
digitalWrite(in1, HIGH); //RIGHT
digitalWrite(in2, LOW);
delay(500);
digitalWrite(in1, LOW); //OFF
digitalWrite(in2, LOW);
delay(totalTime);
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
delay(500);
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
delay(totalTime);
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
delay(3000);
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
}
答案 0 :(得分:0)
您可以尝试以下非常简单逻辑:
\w