add debug for check composition every 1h

This commit is contained in:
Muhammad Izza Alfiansyah 2024-07-05 20:19:22 +07:00
parent b649a9d9be
commit fb82faa477
2 changed files with 661 additions and 621 deletions

View File

@ -3,7 +3,7 @@
// #include <ESP32_Supabase.h> // #include <ESP32_Supabase.h>
// #include <WiFi.h> // #include <WiFi.h>
// #include <WiFiUdp.h> // #include <WiFiUdp.h>
// #include <Arduino_JSON.h> #include <Arduino_JSON.h>
// #include <assert.h> // #include <assert.h>
// #include <NTPClient.h> // #include <NTPClient.h>
// #include <Callmebot_ESP32.h> // #include <Callmebot_ESP32.h>
@ -52,7 +52,7 @@ float persentaseKadarGas;
bool pengujian = true; bool pengujian = true;
float kadarGasVoltase; float kadarGasVoltase;
String status = "Menunggu"; String status = "Menunggu";
// JSONVar dataPengujian; JSONVar dataPengujian;
// JSONVar pengaturan; // JSONVar pengaturan;
const char index_html[] PROGMEM = R"rawliteral(<!DOCTYPE html> const char index_html[] PROGMEM = R"rawliteral(<!DOCTYPE html>
@ -170,6 +170,10 @@ void generateServer() {
request->send(200, "text/html", index_html); request->send(200, "text/html", index_html);
}); });
server.on("/debug", HTTP_GET, [](AsyncWebServerRequest *request){
request->send(200, "application/json", JSON.stringify(dataPengujian));
});
server.on("/", HTTP_POST, [](AsyncWebServerRequest *request) { server.on("/", HTTP_POST, [](AsyncWebServerRequest *request) {
int params = request->params(); int params = request->params();
for(int i = 0; i < params; i++){ for(int i = 0; i < params; i++){
@ -361,6 +365,14 @@ void runFermentasi() {
suhu = dht.readTemperature(); suhu = dht.readTemperature();
kelembaban = dht.readHumidity(); kelembaban = dht.readHumidity();
if (isnan(suhu)) {
suhu = 0;
}
if (isnan(kelembaban)) {
kelembaban = 0;
}
if (suhu != 25.5 && kelembaban != 25.5) { if (suhu != 25.5 && kelembaban != 25.5) {
// menampilkan suhu dan kelembaban pada LCD // menampilkan suhu dan kelembaban pada LCD
lcd.clear(); lcd.clear();
@ -444,11 +456,39 @@ void runFermentasi() {
} }
} }
long waktuSekarang = 0;
long waktuLama = 0;
long waktuKe = 0;
void getDebugging() { void getDebugging() {
Serial.println("Voltase Kadar Gas : " + String(kadarGasVoltase)); Serial.println("Voltase Kadar Gas : " + String(kadarGasVoltase));
Serial.println("Persentase Kadar Gas : " + String(persentaseKadarGas) + " %"); Serial.println("Persentase Kadar Gas : " + String(persentaseKadarGas) + " %");
Serial.println("Suhu : " + String(suhu) + " C"); Serial.println("Suhu : " + String(suhu) + " C");
Serial.println("Kelembaban : " + String(kelembaban) + " %"); Serial.println("Kelembaban : " + String(kelembaban) + " %");
waktuSekarang = millis() / 1000;
int jarakWaktu = waktuSekarang - waktuLama;
int lamaJam = jarakWaktu / 3600;
int durasi = 1;
JSONVar req;
req["kadar_gas"] = persentaseKadarGas;
req["suhu"] = suhu;
req["kelembaban"] = kelembaban;
req["jam_ke"] = waktuKe;
if (dataPengujian.length() <= 0) {
dataPengujian[0] = req;
waktuKe += durasi;
}
if (lamaJam >= durasi) {
waktuLama = waktuSekarang;
waktuKe += durasi;
dataPengujian[dataPengujian.length()] = req;
}
} }
// mendapatkana nilai rata-rata kadar gas dari 100 data sampel yang diambil // mendapatkana nilai rata-rata kadar gas dari 100 data sampel yang diambil

File diff suppressed because it is too large Load Diff