Seite 5 von 9
Re: Meldung Waschmaschine wenn fertig
Verfasst: 24. Jun 2021 13:30
von Snatsch
ha jetzt die Log Datei mal ausgewertet. Der Stromverbrauch sinkt während eines Waschganges nie unter 6,070 W und wenn die Maschine fertig ist geht sie auf 3,290 W und wenn sie sich dann ausschaltet auf 0,350 bzw. 0,280 Watt runter.
Re: Meldung Waschmaschine wenn fertig
Verfasst: 24. Jun 2021 21:50
von Snatsch
so sollte es doch dann eigentlich passen oder ?
Code: Alles auswählen
var Timer tWash = null
var Boolean bWash = false
rule "Waschmaschine fertig"
when
Item Waschmaschine_Leistung changed
then
logInfo("Waschmaschine", "Rule triggert ! Wert : {} ", Waschmaschine_Leistung.state )
if(!bWash)
{
if(Waschmaschine_Leistung.state > 1800.000) // Erkennung die Maschine wurde gestartet
bWash = true
}
else
{ // bWash ist true -> Maschine aktiv
if(Waschmaschine_Leistung.state < 4.000)
{ // Erkennung die Maschine ist vielleicht fertig
if(tWash === null)
tWash = createTimer(now.plusMinutes(3), [|
MeldungWhatsApp.postUpdate("Die Waschmaschiene ist Fertig !")
MeldungSay.postUpdate("Die Waschmaschine ist fertig",null)
tWash = null
bWash = false
])
}
else if(Waschmaschine_Leistung.state > 6.000)
{ // notwendig, falls Stromaufnahme zwischendurch sehr niedrig
tWash?.cancel
tWash = null
}
}
end
Re: Meldung Waschmaschine wenn fertig
Verfasst: 25. Jun 2021 14:10
von Innocent
Innocent hat geschrieben: ↑18. Mai 2021 09:12
Werde ich testen. Vorerst vielen Dank dafür.
Rule funktioniert. Bekam heute die langersehnte Meldung. Danke

Re: Meldung Waschmaschine wenn fertig
Verfasst: 25. Jun 2021 14:13
von Innocent
Snatsch hat geschrieben: ↑24. Jun 2021 21:50
so sollte es doch dann eigentlich passen oder ?
Code: Alles auswählen
var Timer tWash = null
var Boolean bWash = false
rule "Waschmaschine fertig"
when
Item Waschmaschine_Leistung changed
then
logInfo("Waschmaschine", "Rule triggert ! Wert : {} ", Waschmaschine_Leistung.state )
if(!bWash)
{
if(Waschmaschine_Leistung.state > 1800.000) // Erkennung die Maschine wurde gestartet
bWash = true
}
else
{ // bWash ist true -> Maschine aktiv
if(Waschmaschine_Leistung.state < 4.000)
{ // Erkennung die Maschine ist vielleicht fertig
if(tWash === null)
tWash = createTimer(now.plusMinutes(3), [|
MeldungWhatsApp.postUpdate("Die Waschmaschiene ist Fertig !")
MeldungSay.postUpdate("Die Waschmaschine ist fertig",null)
tWash = null
bWash = false
])
}
else if(Waschmaschine_Leistung.state > 6.000)
{ // notwendig, falls Stromaufnahme zwischendurch sehr niedrig
tWash?.cancel
tWash = null
}
}
end
Dein Wert wird hier allerdings erst true wenn die Leistung über 1800 Watt geht.
Könnte mir vorstellen das nicht jedes Programm der Maschine diese Leistung zieht.
Re: Meldung Waschmaschine wenn fertig
Verfasst: 25. Jun 2021 14:18
von Snatsch
ok den Wert könnte ich ja eigentlich auch auf 1000 setzten oder ? Aber sonst müsste es passen oder mit den Werten die ich ausgelesen habe.
Bekomme beim speichern immer folgende Fehlermeldung
"The document file:///etc/openhab/rules/Waeschetrockner_fertig.rules has not been opened."
kann damit nichts anfangen

Re: Meldung Waschmaschine wenn fertig
Verfasst: 25. Jun 2021 14:29
von Innocent
Wenn nur ein Spülgang erfolgt ohne Heizung, Bleibt dein Wert auch false...
Re: Meldung Waschmaschine wenn fertig
Verfasst: 25. Jun 2021 23:56
von Snatsch

der erste Waschgang ist durch aber irgendwie ist nichts passiert

vielleicht einer ne Ahnung warum
Re: Meldung Waschmaschine wenn fertig
Verfasst: 26. Jun 2021 00:22
von Snatsch
Hab jetzt mal meinen Log. vielleicht könnte ja jemand mal drüber schauen und mir sagen was mit der Rule nicht stimmt
Code: Alles auswählen
Item 'Waschmaschine_Leistung' changed from 0.280 W to 21.600 W
Item 'Waschmaschine_Leistung' changed from 21.600 W to 44.840 W
Item 'Waschmaschine_Leistung' changed from 44.840 W to 12.940 W
Item 'Waschmaschine_Leistung' changed from 12.940 W to 67.730 W
Item 'Waschmaschine_Leistung' changed from 67.730 W to 34.900 W
Item 'Waschmaschine_Leistung' changed from 34.900 W to 6.790 W
Item 'Waschmaschine_Leistung' changed from 6.790 W to 50.210 W
Item 'Waschmaschine_Leistung' changed from 50.210 W to 6.720 W
Item 'Waschmaschine_Leistung' changed from 6.720 W to 47.630 W
Item 'Waschmaschine_Leistung' changed from 47.630 W to 75.810 W
Item 'Waschmaschine_Leistung' changed from 75.810 W to 1895.140 W
Item 'Waschmaschine_Leistung' changed from 1895.140 W to 1879.260 W
Item 'Waschmaschine_Leistung' changed from 1879.260 W to 1827.040 W
Item 'Waschmaschine_Leistung' changed from 1827.040 W to 1832.980 W
Item 'Waschmaschine_Leistung' changed from 1832.980 W to 1840.630 W
Item 'Waschmaschine_Leistung' changed from 1840.630 W to 1881.400 W
Item 'Waschmaschine_Leistung' changed from 1881.400 W to 1905.870 W
Item 'Waschmaschine_Leistung' changed from 1905.870 W to 1884.550 W
Item 'Waschmaschine_Leistung' changed from 1884.550 W to 1807.880 W
Item 'Waschmaschine_Leistung' changed from 1807.880 W to 1889.990 W
Item 'Waschmaschine_Leistung' changed from 1889.990 W to 1828.620 W
Item 'Waschmaschine_Leistung' changed from 1828.620 W to 1891.700 W
Item 'Waschmaschine_Leistung' changed from 1891.700 W to 1900.290 W
Item 'Waschmaschine_Leistung' changed from 1900.290 W to 1896.850 W
Item 'Waschmaschine_Leistung' changed from 1896.850 W to 1904.150 W
Item 'Waschmaschine_Leistung' changed from 1904.150 W to 1894.560 W
Item 'Waschmaschine_Leistung' changed from 1894.560 W to 1871.460 W
Item 'Waschmaschine_Leistung' changed from 1871.460 W to 1853.150 W
Item 'Waschmaschine_Leistung' changed from 1853.150 W to 1871.320 W
Item 'Waschmaschine_Leistung' changed from 1871.320 W to 113.860 W
Item 'Waschmaschine_Leistung' changed from 113.860 W to 81.180 W
Item 'Waschmaschine_Leistung' changed from 81.180 W to 6.220 W
Item 'Waschmaschine_Leistung' changed from 6.220 W to 86.610 W
Item 'Waschmaschine_Leistung' changed from 86.610 W to 6.220 W
Item 'Waschmaschine_Leistung' changed from 6.220 W to 75.240 W
Item 'Waschmaschine_Leistung' changed from 75.240 W to 83.110 W
Item 'Waschmaschine_Leistung' changed from 83.110 W to 87.180 W
Item 'Waschmaschine_Leistung' changed from 87.180 W to 82.680 W
Item 'Waschmaschine_Leistung' changed from 82.680 W to 13.940 W
Item 'Waschmaschine_Leistung' changed from 13.940 W to 72.310 W
Item 'Waschmaschine_Leistung' changed from 72.310 W to 58.650 W
Item 'Waschmaschine_Leistung' changed from 58.650 W to 92.330 W
tem 'Waschmaschine_Leistung' changed from 92.330 W to 167.360 W
Item 'Waschmaschine_Leistung' changed from 167.360 W to 226.020 W
Item 'Waschmaschine_Leistung' changed from 226.020 W to 37.260 W
Item 'Waschmaschine_Leistung' changed from 37.260 W to 12.230 W
Item 'Waschmaschine_Leistung' changed from 12.230 W to 78.460 W
Item 'Waschmaschine_Leistung' changed from 78.460 W to 13.080 W
Item 'Waschmaschine_Leistung' changed from 13.080 W to 19.310 W
Item 'Waschmaschine_Leistung' changed from 19.310 W to 190.110 W
Item 'Waschmaschine_Leistung' changed from 190.110 W to 214.570 W
Item 'Waschmaschine_Leistung' changed from 214.570 W to 18.590 W
Item 'Waschmaschine_Leistung' changed from 18.590 W to 6.220 W
Item 'Waschmaschine_Leistung' changed from 6.220 W to 104.490 W
Item 'Waschmaschine_Leistung' changed from 104.490 W to 127.020 W
Item 'Waschmaschine_Leistung' changed from 127.020 W to 38.980 W
Item 'Waschmaschine_Leistung' changed from 38.980 W to 84.470 W
Item 'Waschmaschine_Leistung' changed from 84.470 W to 181.030 W
Item 'Waschmaschine_Leistung' changed from 181.030 W to 216.220 W
Item 'Waschmaschine_Leistung' changed from 216.220 W to 18.310 W
Item 'Waschmaschine_Leistung' changed from 18.310 W to 15.800 W
Item 'Waschmaschine_Leistung' changed from 15.800 W to 12.230 W
Item 'Waschmaschine_Leistung' changed from 12.230 W to 76.310 W
Item 'Waschmaschine_Leistung' changed from 76.310 W to 20.740 W
Item 'Waschmaschine_Leistung' changed from 20.740 W to 118.160 W
Item 'Waschmaschine_Leistung' changed from 118.160 W to 194.760 W
Item 'Waschmaschine_Leistung' changed from 194.760 W to 241.540 W
Item 'Waschmaschine_Leistung' changed from 241.540 W to 312.490 W
Item 'Waschmaschine_Leistung' changed from 312.490 W to 303.410 W
Item 'Waschmaschine_Leistung' changed from 303.410 W to 336.240 W
Item 'Waschmaschine_Leistung' changed from 336.240 W to 325.080 W
Item 'Waschmaschine_Leistung' changed from 325.080 W to 40.910 W
Item 'Waschmaschine_Leistung' changed from 40.910 W to 3.210 W
Item 'Waschmaschine_Leistung' changed from 3.210 W to 0.280 W
Re: Meldung Waschmaschine wenn fertig
Verfasst: 26. Jun 2021 10:10
von udo1toni
Das kann ich Dir direkt sagen, das verwendete Item ist ein UoM Item, das heißt, im Status wird direkt die Einheit mitgeliefert. 4 W ist aber != 4, über die Größe lässt sich dann ohnehin keine Aussage treffen (4 könnte auch 4 Äpfel bedeuten).
Hänge in allen Vergleichen an die Zahlen, mit denen Du vergleichst ein |W an, sieht dann z.B. so aus:
Du musst keine Nachkommastellen angeben (es sei denn, sie sind ungleich 0, natürlich)! Sollte die zu vergleichende Zahl links vom Operator stehen sollte der Wert mitsamt Einheit geklammert werden, also z.B. so:
Möglicherweise musst Du um die Einheit (ohne senkrechten Strich!) Anführungszeichen setzen:
ich meine aber, dass es ohne Anführungszeichen geht.
Alternativ kannst Du den Wert explizit nach Float wandeln:
Code: Alles auswählen
if((Waschmaschine_Leistung.state as Number).floatValue > 1800)
dabei wird die Einheit komplett entfernt. Dann ist es aber sinnvoll, vorher zu testen, ob das Item tatsächlich eine Zahl enthält, sonst gibt es beim Casting eine NullPointer Exxeption. Es ist dann auch sinnvoll, über eine lokale Variable oder Konstante zu arbeiten, um sich viel Tipparbeit zu sparen.
Re: Meldung Waschmaschine wenn fertig
Verfasst: 26. Jun 2021 10:25
von Snatsch
vielen Dank für deine Antwort. Wie so oft

Das mit dem Strich hatte ich gestern Abend schon probiert und hatte aber keine Lehrzeichen gesetzt
Mein Code sieht jetzt so aus.
Code: Alles auswählen
var Timer tWash = null
var Boolean bWash = false
rule "Waschmaschine fertig"
when
Item Waschmaschine_Leistung changed
then
logInfo("Waschmaschine", "Rule triggert ! Wert : {} ", Waschmaschine_Leistung.state )
if(!bWash)
{
if(Waschmaschine_Leistung.state > 1600 | W ) // Erkennung die Maschine wurde gestartet
bWash = true
}
else
{ // bWash ist true -> Maschine aktiv
if(Waschmaschine_Leistung.state < 4 | W )
{ // Erkennung die Maschine ist vielleicht fertig
if(tWash === null)
tWash = createTimer(now.plusMinutes(3), [|
MeldungWhatsApp.postUpdate("Die Waschmaschiene ist fertig !")
MeldungSay.postUpdate("Die Waschmaschine ist fertig",null)
tWash = null
bWash = false
])
}
else if(Waschmaschine_Leistung.state > 6 | W )
{ // notwendig, falls Stromaufnahme zwischendurch sehr niedrig
tWash?.cancel
tWash = null
}
}
end
kannst du mir noch was zu der Logmeldung sagen ? Die kommt immer wenn ich die Rule abspeichere.
Code: Alles auswählen
2021-06-26 10:20:24.615 [ERROR] [se.xtext.ide.server.WorkspaceManager] - The document file:///etc/openhab/rules/Waschmaschine_Fertig.rules has not been opened.