Code Beispiel aus dem readingsGroup Wiki

Begonnen von rvideobaer, 25 Oktober 2015, 22:11:52

Vorheriges Thema - Nächstes Thema

rvideobaer

Hallo,

ich beschäftige mich seit kurzer zeit mit der Heizungssteuerung von Max Thermostaten mit FEHM.
Nun habe ich versucht das Code Beispiel "Heizungswerte, Status und Regelmöglichkeit" aus dem readingsgroup Wiki an Max anzupassen. Teilweise funktioniert es auch, aber bei der Temperatursteuerung lässt sich mit Auf und Ab immer nur 1° weiterschalten.
#Heizung regeln in readingsGroup
sub
myUtils_HeizungUpDown($$)
{
   my($DEVICE,$CMD) = @_;
 
   my $icon = $CMD;
   my $VALUE = ReadingsVal($DEVICE,"desired-new","10" );
   $VALUE = ReadingsVal($DEVICE,"desiredTemperature","10" )
      if( !$VALUE || $VALUE == 0 );
   my $link;
 
   if( $CMD eq "up" ) {
     $icon = "control_arrow_upward";
     $VALUE += 1;
 
     if( $VALUE <= 27 ) {
       $icon .= "\@red";
       $link = "setreading $DEVICE desired-new $VALUE";
     }
   } elsif( $CMD eq "down" ) {
     $icon = "control_arrow_downward";
     $VALUE -= 1;
 
     if( $VALUE >= 8 ) {
       $icon .= "\@blue";
       $link = "setreading $DEVICE desired-new $VALUE";
     }
   }
 
   my $notify = "notifyHeizungUpDown";
   if( !defined($defs{$notify}) ) {
     CommandDefine(undef,
                    "$notify notify .*:desired-new.* "
                    ."{ myUtils_HeizungUpDownNotify(\$NAME,\$EVTPART1); }" );
   }
 
   my $ret = "%$icon";
   $ret .= "%$link" if( $link );
 
   return $ret;
}
sub
myUtils_HeizungUpDownNotify($$)
{
   my($DEVICE,$VALUE) = @_;
 
   return if( $VALUE == 0 );
 
   my $at = "triggerHeizungUpDown_$DEVICE";
   CommandDelete(undef, $at) if( defined($defs{$at}) );
   CommandDefine(undef,
                  "$at at +00:00:03 "
                  ."{my \$v = ReadingsVal(\"$DEVICE\",\"desired-new\",undef);"
                  ."fhem(\"set $DEVICE desiredTemperature auto \$v\") if( \$v );"
                  ."fhem(\"setreading $DEVICE desired-new 00\");}" );
 
   return undef;
}

Leider kenne ich mich nicht gut genug aus um den Fehler zu finden. Vielleicht kann mir jemand dabei Helfen.

Gruß Rolf
Raspberry Pi 2, HM-Uart,1x HM-LC-Sw1PBU-FM, 1x HM-RC-2-PBU-FM,1x HM-LC-SW4-DR,1x HM-LC-Sw1-Pl-DN-R1,1x HM-TC-IT-WM-W-EU, 5x HM-CC-RT-DN und noch mehr

justme1968

ist dein fhem aktuell? welche version hat das radingGroup modul?

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

rvideobaer

Hallo,

die Fhem Installation habe ich erst am WE aktualisiert. Die version des Moduls wies ich leider nicht, aber ich denke es ist auch aktuell.

Gruß Rolf
Raspberry Pi 2, HM-Uart,1x HM-LC-Sw1PBU-FM, 1x HM-RC-2-PBU-FM,1x HM-LC-SW4-DR,1x HM-LC-Sw1-Pl-DN-R1,1x HM-TC-IT-WM-W-EU, 5x HM-CC-RT-DN und noch mehr

ph1959de

Zitat von: rvideobaer am 26 Oktober 2015, 16:18:44
... Die version des Moduls wies ich leider nicht, ...
Dann kann Dir zumindest dabei geholfen werden: hier.

Peter
Aktives Mitglied des FHEM e.V. | Moderator im Forenbereich "Wiki"

rvideobaer

Hallo,

die Version ist:
33_readingsGroup.pm  9513 2015-10-18 10:25:13Z justme1968

Gruß Rolf
Raspberry Pi 2, HM-Uart,1x HM-LC-Sw1PBU-FM, 1x HM-RC-2-PBU-FM,1x HM-LC-SW4-DR,1x HM-LC-Sw1-Pl-DN-R1,1x HM-TC-IT-WM-W-EU, 5x HM-CC-RT-DN und noch mehr