Код
if (StrContains(HTTP_req, "ajax_flame")) {
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("Connection: keep-alive");
client.println();
int smoke_gas = 0; //пин на котором подключен MQ-2
int sensorReading = analogRead(smoke_gas);
int chk;
if (sensorReading > 40) {
digitalWrite (2, HIGH);
tone(9, 500, 500);
}
else {
digitalWrite (2, LOW);
}
client.print(sensorReading);
client.println(":");
client.print(t);
client.print(":");
client.print(ts);
client.print(":");
client.print(h);
client.print(" :");
client.print(pa);
client.print(" :");
client.print((digitalRead(2)) ? "1" : "0");
client.print(":");
client.print((digitalRead(3)) ? "1" : "0");
client.print(":");
client.print((digitalRead(5)) ? "1" : "0");
client.print(":");
client.print((digitalRead(6)) ? "1" : "0");
}
этот блок кода выполняется только когда скрипт из браузера этого попросит. в оригинале - 1 раз в секунду.
чтобы условие sensorReading>40 проверялось каждый проход цикла, его нужно перенести в начало loop.
Код
void loop() {
if (analogRead(0) > 40) {
digitalWrite (2, HIGH);
tone(9, 500, 500);
}else {
digitalWrite (2, LOW);
}
float h = dht.readHumidity();
float ts = dht.readTemperature();
float t = bmp.readTemperature();
float pa = bmp.readPressure()/133.322;
и дальше...