You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
//https://beelogger.de/sensoren/temperatursensor-ds18b20/ für Pinning und Anregung
5
2
#include<OneWire.h>
6
3
#include<DallasTemperature.h>
@@ -13,6 +10,7 @@
13
10
#defineLED_OK19
14
11
#defineONE_WIRE_BUS25
15
12
static byte debug = 0;
13
+
static String lastError = "-";
16
14
17
15
//Sicherheitsfunktionen
18
16
intvolatile hardwareError = 0; // Indikator, ob ein Sensordefekt erkannt wurde.
@@ -25,15 +23,15 @@ int volatile panicMode = 0; // Indikator für die Zwangsabschaltung - ab jet
25
23
26
24
// Definition der Zugangsdaten WiFi
27
25
#defineHOSTNAME"ESP32_Heizung_PowerGuard"
28
-
constchar* ssid = "MyNETWORK";
29
-
constchar* password = "MyPASSWORD";
26
+
constchar* ssid = "YourSSID";
27
+
constchar* password = "YourPassword";
30
28
WiFiClient myWiFiClient;
31
29
32
30
//Definition der Zugangsdaten MQTT
33
-
#defineMQTT_SERVER"MyIP"
31
+
#defineMQTT_SERVER"Your MQTT BrokerIP"
34
32
#defineMQTT_PORT1883
35
-
#defineMQTT_USER"My_ioBrokerUSER"
36
-
#defineMQTT_PASSWORD"My_ioBrokerPASSWORD"
33
+
#defineMQTT_USER"MQTT broker user"
34
+
#defineMQTT_PASSWORD"Your MQTT Password"
37
35
#defineMQTT_CLIENTID"ESP32_PowerGuard"//Name muss eineindeutig auf dem MQTT-Broker sein!
38
36
#defineMQTT_KEEPALIVE90
39
37
#defineMQTT_SOCKETTIMEOUT30
@@ -52,18 +50,22 @@ unsigned long MQTTReconnect = 0;
52
50
PubSubClient mqttClient(myWiFiClient);
53
51
54
52
// Anzahl der angeschlossenen DS18B20 - Sensoren
55
-
int DS18B20_Count = 0; //Anzahl der erkannten DS18B20-Sensoren
53
+
int DS18B20_Count = 0; //Anzahl der erkannten DS18B20-Sensoren
56
54
//Sensorsetting (Ausgabe im Debugmodus (debug = 3) auf dem serial Monitor)
57
-
floatvolatile temp1 = 0.0; //Sensor in Slot 2
58
-
floatvolatile temp2 = 0.0; //Sensor in Slot 3
59
-
float tempLimit = 90.0; //Ab dieser Temperatur wir 12V abgeschalten und thermalLimit = 1
60
-
float tempReconnect = 80.0; //Ab dieser Temperatur thermalLimit = 0 und panicMode = 0 zurückgesetzt -> ESP32 Heizstabsteuerung boot neu nach PanicMode / bei thermalLimit wird kurz 5V abgeschaltet und der Neustart erzwungen..
61
-
float tempMaxLimit = 95.0; //Panik-Abschaltung ab dieser Temperatur = 5V und 12V abschalten und thermalLimit = 1 & panicMode = 1
62
-
float tempHysterese = 2.0; //bei Unterschreitung von (tmpLimit-tempHysterese)
63
-
float deltaT = 2.0; //Limit des Betrags von Differenz zwischen tempTop1 tempTop2 (|tempTop1-tempTop2|)
64
-
float minTemp = 10.0; //untere Plausibilitätsgrenze für Temperatursignale. Bei Unterschreitung => Notabschaltung, da ggf. Sensor defekt
65
-
float maxTemp = 100.0; //obere Plausibilitätsgrenze für Temperatursignale. Bei Überschreitung => Notabschaltung, da ggf. Sensor defekt
66
-
55
+
floatvolatile temp1 = 0.0; //Sensor in Slot 2
56
+
floatvolatile temp2 = 0.0; //Sensor in Slot 3
57
+
float tempLimit = 90.0; //Ab dieser Temperatur wir 12V abgeschalten und thermalLimit = 1
58
+
float tempReconnect = 80.0; //Ab dieser Temperatur thermalLimit = 0 und panicMode = 0 zurückgesetzt -> ESP32 Heizstabsteuerung boot neu nach PanicMode / bei thermalLimit wird kurz 5V abgeschaltet und der Neustart erzwungen..
59
+
float tempMaxLimit = 95.0; //Panik-Abschaltung ab dieser Temperatur = 5V und 12V abschalten und thermalLimit = 1 & panicMode = 1
60
+
float tempHysterese = 2.0; //bei Unterschreitung von (tmpLimit-tempHysterese)
61
+
float deltaT = 2.0; //Limit des Betrags von Differenz zwischen tempTop1 tempTop2 (|tempTop1-tempTop2|)
62
+
float minTemp = 10.0; //untere Plausibilitätsgrenze für Temperatursignale. Bei Unterschreitung => Notabschaltung, da ggf. Sensor defekt
63
+
float maxTemp = 100.0; //obere Plausibilitätsgrenze für Temperatursignale. Bei Überschreitung => Notabschaltung, da ggf. Sensor defekt
64
+
intvolatile tempTSensorFail = 0; //Fehlercounter zur Temperaturmessung - Resilienz gegen gelegentliche Fehlauswertungen der Temperatursensoren
65
+
int maxTSensorFail = 3; //maximal zulässige, hinereinander folgende Sensorfehler - danach panicStop
66
+
float DS18B20_minValue = -55.0; //unterster Messwert im Messbereich [°C]
67
+
float DS18B20_maxValue = 125.0; //unterster Messwert im Messbereich [°C]
0 commit comments