#include <HTTPClient.h>
#include <WiFi.h>
#define RED 18
#define CURRENT 4
#define FLOOD 5
unsigned long currentTime=0;
int alarmTime = 5000;
int floodStart = 0;
int wellIsArmed = 1;
int sentMessage = 0;
int floodRead;
int currentRead;
String msgText;
void setup() {
Serial.begin(115200); // Any baud rate should work
pinMode(RED, OUTPUT);
pinMode(CURRENT, INPUT);
pinMode(FLOOD, INPUT);
const char* ssid = "Wokwi-GUEST";
const char* password = "";
WiFi.begin(ssid, password);
}
void loop() {
floodRead = digitalRead(FLOOD);
currentRead = digitalRead(CURRENT);
//virtul button to stop alarm
if (wellIsArmed ==1) {
if ((currentRead == LOW || floodRead == HIGH) && floodStart==0) {
currentTime=millis();
floodStart=1;
sentMessage=1;
}
if (currentRead == HIGH && floodRead == LOW) {
floodStart=0;
digitalWrite(RED, LOW);
sentMessage=0;
}
if (floodStart ==1 && millis()-currentTime>5000) {
digitalWrite(RED, HIGH);
}
if (floodStart ==1 && millis()-currentTime>8000 && sentMessage==1) {
if (currentRead == LOW) msgText="%20pompa";
if (floodRead == HIGH) msgText = msgText + "%20czujnik%20poziomu%20wody";
sentMessage=0;
}
}
delay(10); // this speeds up the simulation
}