FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: P.A.Trick am 01 März 2014, 15:03:20

Titel: ReadingsVal - Probleme mit der Einheit W
Beitrag von: P.A.Trick am 01 März 2014, 15:03:20
Ich bekomme seit gestern, glaube ich zumindest, im FHEM Log folgenden Hinweis:

Argument "3.64 W" isn't numeric in numeric le (<=) at (eval 2643) line 1.

Das kommt von meiner DETC200 Fritz Steckdose und einer Verbrauchsabfrage (groesser und kleiner Watt). Der Wert wird
von einem ReadingsVal geliefert.
Frage: Kann man bei einem ReadingsVal die Einheit, in meinem Fall ein "W" am Ende, ersetzen (RegEX?)?
Hier noch der LogAuszug
2014.03.01 15:12:40 4: UG.WK.WaschmaschineBetriebAn exec {fhem ("set UG.WK.WaschmaschineBetrieb on;; setstate UG.WK.WaschmaschineAutoOff defined") if (ReadingsVal("UG.WK.SchalterWaschmaschine","power","") >= 30 && Value("UG.WK.WaschmaschineBetrieb") ne "on")}
2014.03.01 15:12:40 5: Cmd: >{fhem ("set UG.WK.WaschmaschineBetrieb on; setstate UG.WK.WaschmaschineAutoOff defined") if (ReadingsVal("UG.WK.SchalterWaschmaschine","power","") >= 30 && Value("UG.WK.WaschmaschineBetrieb") ne "on")}<
Argument "0.00 W" isn't numeric in numeric ge (>=) at (eval 3855) line 1.





Danke im Voraus!
Titel: Antw:ReadingsVal - Probleme mit der Einheit W
Beitrag von: betateilchen am 01 März 2014, 15:17:34
my ($val,undef) = split(/ /, ReadingsVal(...));

In $val hast Du dann den Wert ohne Leerzeichen und Einheit.
Titel: Antw:ReadingsVal - Probleme mit der Einheit W
Beitrag von: P.A.Trick am 01 März 2014, 15:34:38
UG.WK.SchalterWaschmaschine:* {fhem ("set UG.WK.WaschmaschineBetrieb on; setstate UG.WK.WaschmaschineAutoOff defined") if (my ($val,undef) = split(/ /, ReadingsVal("UG.WK.SchalterWaschmaschine","power","")) >= 30 && Value("UG.WK.WaschmaschineBetrieb") ne "on")}

Du bist mein Held! Danke betateilchen!