Seite 3 von 3

Re: Saunatemperatur

Verfasst: 1. Nov 2022 14:14
von Snatsch
hab jetzt erst mal ein Update eingespielt , vielleicht bringt es was :) aber komisch ist das er erst genau bei 85 Grad anfängt rumzuspinnen.

Code: Alles auswählen

rule "Sauna Temperatur 85 Grad"
when
    Item Sauna_Temperatur changed
then
    if(!(newState instanceof Number)) {                                                         // Falls aktuell kein gültiger Wert
       logWarn("SaunaTemperatur", "Sensor Item liefert keinen gültigen Zahlenwert. Abbruch!")   // Meldung
       return;                                                                                  // und Abbruch
    }
    val newTemp = (newState as Number).floatValue                                               // übernimm Wert ohne Einheit
    var oldTemp = 20.1                                                                          // erzwinge eine Variable vom Typ Float
    if(!(previousState instanceof Number)) {                                                    // falls alter Wert ungültig
       logInfo("SaunaTemperatur", "Vorgängerwert ungültig. Setze Wert unter Grenzwert!")        // Meldung
       oldTemp = 80                                                                             // und default Wert setzen
    } else                                                                                      // falls alter Wert gültig
       oldTemp = (previousState as Number).floatValue                                           // übernimm diesen ohne Einheit

    if(oldTemp <= 85 && newTemp > 85) {                                                         // falls Temperatur gerade über 85 gestiegen
        logInfo("SaunaTemperatur", "Die Sauna Temperatur ist ueber 85 Grad")                    // Meldung
        Meldung.postUpdate("Die Sauna hat die Temperatur von 85 Grad ereicht")
    }
end

Re: Saunatemperatur

Verfasst: 1. Nov 2022 16:00
von udo1toni
Snatsch hat geschrieben: 1. Nov 2022 14:14 aber komisch ist das er erst genau bei 85 Grad anfängt rumzuspinnen.
Ist das tatsächlich so? Der Screenshot gibt darüber keinen Aufschluss :)

Re: Saunatemperatur

Verfasst: 1. Nov 2022 16:14
von Snatsch
ja sie erste Ausgabe kam als der Sensor 85 Grad hatte und dann kamen die ganzen hinterher

Re: Saunatemperatur

Verfasst: 1. Nov 2022 17:29
von udo1toni
Das wäre allerdings eine kleine Untersuchung wert. Greifst Du schreibend auf das Item zu? Greifst Du schreibend auf den Shelly zu, wenn die Temperatur überschritten wird? passieren andere Dinge (vom Shelly aus gesehen), wenn diese Temperatur erreicht ist? Denn eins ist mal sicher: die Rule als solche kann hier keinen Einfluss haben, allenfalls indirekt (und das träfe dann auf alle Rule zu, in denen Meldung per postUpdate beschrieben wird), indem die Meldungs-Rule das System so sehr auslastet, dass anschließend Fehler in der Datenverarbeitung auftreten.

Re: Saunatemperatur

Verfasst: 1. Nov 2022 17:40
von Snatsch
habe noch eine Rule am laufen mit einen Shelly am Pufferspeicher meiner Heizung.

Code: Alles auswählen

rule "Pufferspeicher Nachricht"
when 
    Item Pufferspeichersensor_Temperatur changed 
then
    logDebug("warmwasser", "Rule getriggert! Wert : {} ", Pufferspeichersensor_Temperatur.state )
    if(!(previousState instanceof Number))
       logWarn("warmwasser", "kein gültiger Vergleichswert! Setze Wert unter 60.")
    val nPrev = if(previousState instanceof Number) (previousState as Number).floatValue else 55
    if(!(newState instanceof Number)) {
       logWarn("warmwasser", "Sensor Item liefert keinen gültigen Zahlenwert. Abbruch!")
       return;
    }
    val nNew = (newState as Number).floatValue
    if(nNew > 60 && nPrev <= 60) {
       logInfo("warmwasser", "Pufferspeicher hat Temperatur 60 °C überschritten! ")
       Meldung.postUpdate("Der Pufferspeicher hat die Temperatur 60 °C überschritten!")
       // Hier Code zum Setzen der Solltemperatur einbauen:
       // Heizung1_Soll.sendCommand(21)
       // Heizung2_Soll.sendCommand(21)
    }
    if(nNew > 85 && nPrev <= 85) {
       logWarn("warmwasser", "Pufferspeicher hat Temperatur 85 °C überschritten!")
       Meldung.postUpdate("Der Pufferspeicher hat die Temperatur 85 °C überschritten!")
    }
end
die läuft ohne Probleme

Re: Saunatemperatur

Verfasst: 1. Nov 2022 18:55
von udo1toni
Das spricht dann aber doch für ein Problem mit dem Fühler selbst, zumal hier ja sogar mehr oder weniger der gleiche Code zum Einsatz kommt.

Re: Saunatemperatur

Verfasst: 1. Nov 2022 19:48
von Snatsch
ich werde es jetzt beim nächsten Saunaabend noch mal testen. Habe in der Beschreibung gelesen das der Sensor nur bis 100 Grad zuverlässig funktioniert. Vieleicht hat er wirklich einen abbekommen als die Temperatur das letzte mal auf 115 Grad war :o Ich liebe es warm in der Sauna :lol:

Re: Saunatemperatur

Verfasst: 9. Nov 2022 19:34
von Snatsch
Screenshot (64).png
Also hab heute gemerkt das der Fühler wahrscheinlich hin ist :roll: die Störung geht bei 90 Grad los :o mal schauen ob ich einen Messfühler bekomme der für solche Temperaturen geeignet ist :?

Re: Saunatemperatur

Verfasst: 25. Nov 2022 23:18
von Snatsch
Habe jetzt einen neuen Sensor verbaut der bis 125 Grad gehen soll :o aber immer noch das gleiche Problem. In der Shelly App kann ich nicht feststellen das der Sensor keinen gültigen Wert ausgibt. Ich werde jetzt erst mal die Rule "Meldung " ändern bis ich eine andere Lösung habe

Re: Saunatemperatur

Verfasst: 8. Feb 2023 20:50
von Snatsch
wollte mal eine Rückmeldung geben :) seit ich auf openhab 3.4.1 gegangen bin funktioniert alles wie es soll :D also lag es an der Vorgängeversion.
Screenshot (69).png