FHEM Forum

FHEM => Automatisierung => Thema gestartet von: zaberwolfi am 25 November 2019, 11:22:21

Titel: Heizungs Thermostat wird nicht geschaltet
Beitrag von: zaberwolfi am 25 November 2019, 11:22:21
Hallo an alle

Ich habe folgendes Problem:

Ich schalte mit diesen Definition meine Heizungsthermostate auf off ,
hat der Kachelofen eine bestimmte Temperatur erreicht.

Kachelofen:temperature.* {if ((ReadingsVal("Kachelofen","temperature",99) > "28") && (Value("Kachelofen_Status")eq "off"))
{fhem (
"set HZ_Thermostat_Temperatur_Rechts desired-temp off ;
set HZ_Thermostat_Temperatur_Links desired-temp off ;
set HZ_Thermostat_Temperatur_Mitte desired-temp off ;
set Kachelofen_Status on")}}

Funktioniert tadellos.


Mit dieser Definition werden die Thermostate wieder eingeschaltet:

*23:50 if{(Value("Kachelofen_Status")eq "on")  {fhem (
        set HZ_Thermostat_Temperatur_Mitte desired-temp 24 ;
        set HZ_Thermostat_Temperatur_Links desired-temp 24 ;
        set HZ_Thermostat_Temperatur_Rechts desired-temp 24)}}

Es werden aber nur die    HZ_Thermostat_Temperatur_Links und
                                     HZ_Thermostat_Temperatur_Rechts eingeschaltet.

Der erste "set HZ_Thermostat_Temperatur_Mitte desired-temp 24 "
wird nicht geschaltet. Warum ??
Unten die Logfile aus der ich nicht schlau werde da ich mehrere Definitionen dieser
Art habe. Villeicht bin ich blind und übersehe etwas.

Logfile

   2019.11.24 23:50:00 3: CUL_HM set HZ_Thermostat_Temperatur_Links desired-temp 24
        2019.11.24 23:50:00 3: CUL_HM set HZ_Thermostat_Temperatur_Rechts desired-temp 24)}}
        2019.11.24 23:50:00 3: Heizung_einschalten: Unknown command if{(Value("Kachelofen_Status")eq, try help.

Für Hilfe wäre ich sehr Dankbar.   
Titel: Antw:Heizungs Thermostat wird nicht geschaltet
Beitrag von: Wzut am 25 November 2019, 11:36:47
Zitat von: zaberwolfi am 25 November 2019, 11:22:21
*23:50 if{(Value("Kachelofen_Status")eq "on")  {fhem (
        set HZ_Thermostat_Temperatur_Mitte desired-temp 24 ;
        set HZ_Thermostat_Temperatur_Links desired-temp 24 ;
        set HZ_Thermostat_Temperatur_Rechts desired-temp 24)}}

schau dir mal deine Klammern an , es fehlt die erste geschweifte Klammer auf vor dem if
Titel: Antw:Heizungs Thermostat wird nicht geschaltet
Beitrag von: zaberwolfi am 25 November 2019, 12:06:19
Setze ich die Klammer so

*23:50 { if (Value("Kachelofen_Status") eq "on") { fhem (set HZ_Thermostat_Temperatur_Mitte desired-temp 24 ; set HZ_Thermostat_Temperatur_Links desired-temp 24 ; set HZ_Thermostat_Temperatur_Rechts desired-temp 24 )}}

bekomme ich:
syntax error at (eval 1863233) line 1, near "temp 24"
syntax error at (eval 1863233) line 1, near "temp 24"
syntax error at (eval 1863233) line 1, near "temp 24"


Wolfgang
Titel: Antw:Heizungs Thermostat wird nicht geschaltet
Beitrag von: amenomade am 25 November 2019, 12:20:32
In Raw Definition oder Kommandofeld, Semikola verdoppeln
Ausserdem würde ich die set Befehle in " " einschliessen
Titel: Antw:Heizungs Thermostat wird nicht geschaltet
Beitrag von: zaberwolfi am 25 November 2019, 13:15:59
So funktionierts :

{if (Value("Kachelofen_Status") eq "on") { fhem ("set HZ_Thermostat_Temperatur_Mitte desired-temp 24 ; set HZ_Thermostat_Temperatur_Links desired-temp 24 ; set HZ_Thermostat_Temperatur_Rechts desired-temp 24" )}}

War doch etwas blind in andern Definitionen habe ich auch so gemacht

Danke an alle