Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
If statement 如何为arduino上的泵通电_If Statement_Arduino_Arduino C++ - Fatal编程技术网

If statement 如何为arduino上的泵通电

If statement 如何为arduino上的泵通电,if-statement,arduino,arduino-c++,If Statement,Arduino,Arduino C++,我想做一个项目,可以启动泵根据以下条件 如果“jaraak”小于5,泵1将打开 如果“jaraak”超过10,泵2将打开 如果“TDS值”小于700,泵3和4将打开 如果“TDS值”超过800,泵2将接通 我编写的代码正确吗?因为在我的代码中,泵1始终打开 if (jaraak <= 5) { antares.getInt("jaraak"); antares.add("Tandon Aman, jarak air " , jaraak ); digita

我想做一个项目,可以启动泵根据以下条件

如果“jaraak”小于5,泵1将打开

如果“jaraak”超过10,泵2将打开

如果“TDS值”小于700,泵3和4将打开

如果“TDS值”超过800,泵2将接通

我编写的代码正确吗?因为在我的代码中,泵1始终打开

if (jaraak <= 5)
    { antares.getInt("jaraak");
      antares.add("Tandon Aman, jarak air " , jaraak  );
      digitalWrite(pompa1, pompaON);
      digitalWrite(pompa2, pompaOFF);
      }

  if (jaraak >= 10) 
    { antares.getInt("jaraak");
      antares.add("Tandon Habis, jarak air " , jaraak  );
      digitalWrite(pompa1, pompaOFF);
      digitalWrite(pompa2, pompaON);
      }

  if (tdsValue < 700)
    { antares.getFloat("tdsValue");
      antares.add("\n Kepekatan Nutrisi (ppm)" , tdsValue  );
      {digitalWrite(pompa3, pompaON);
      digitalWrite(pompa4, pompaON);}
    }

  if (tdsValue > 800)
    { antares.getFloat("tdsValue");
      antares.add("\n Kepekatan Nutrisi (ppm)" , tdsValue  );
      digitalWrite(pompa3, pompaOFF);
      digitalWrite(pompa4, pompaOFF);
      digitalWrite(pompa2, pompaON);
    }
if(jaraak=10)
{antares.getInt(“jaraak”);
安塔雷斯加上(“坦顿哈比斯,雅拉克空气”,雅拉克);
数字写入(pompa1、pompaOFF);
digitalWrite(pompa2,pompaON);
}
如果(TDS值<700)
{antares.getFloat(“tdsValue”);
antares.添加(“\n Kepekatan Nutrisi(ppm)”,TDS值);
{数字写入(pompa3、pompaON);
数码书写(pompa4,pompaON);}
}
如果(TDS值>800)
{antares.getFloat(“tdsValue”);
antares.添加(“\n Kepekatan Nutrisi(ppm)”,TDS值);
数字写入(pompa3、pompaOFF);
数字写入(pompa4、pompaOFF);
digitalWrite(pompa2,pompaON);
}

<代码> > p>代码不考虑变量的所有可能值。考虑这个替代方案:

if (jaraak < 5)   // You say: "the pump 1 will on if jaraak LESS than 5"
{                 //          "the pump 2 will on if jaraak MORE than 10" 
     // ...
     digitalWrite(pompa1, pompaON);
     digitalWrite(pompa2, pompaOFF);
}
else if (jaraak <= 10)  // <-- This is the case when  5 <= jaraak <= 10
{
     // ...
     digitalWrite(pompa1, pompaOFF);
     digitalWrite(pompa2, pompaOFF);
}
else                    // <-- This is the case when  jaraak > 10
{
     // ...
     digitalWrite(pompa1, pompaOFF);
     digitalWrite(pompa2, pompaON);
}
// The same for tdsvalue 
if(jaraak<5)//您说:“如果jaraak小于5,泵1将打开”
{//“如果jaraak超过10,泵2将打开”
// ...
数码书写(pompa1、pompaON);
数字写入(pompa2、pompaOFF);
}

else if(jaraak)这不是完全正确的。您没有考虑中间值。例如,pump1不会关闭if 5抱歉,这是最新的“if”(JARAAK>=5 & & JARAAK)不要在注释中添加代码,改进你的文章……ARDUINO是用C++ BTW编程的,知道你正在尝试什么语言可能有助于TDS条件的改变,如果其他的话?