Hallo zusammen,
mir stellt sich folgende Herausforderung, die ich trotz intensiver Recherche im Forum leider bisher nicht alleine lösen konnte:
In einer readingsGroup möchte ich eine Kombination der commands aus den im WIKI aufgeführten Beispielen "heatingInfo machen:
attr heatingInfo commands {
'heatingInfo.sollsetz'=>'desired-temp:5.0,12.0,18.0,19.0,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0',
"controlMode.manual"=>"set %DEVICE controlMode auto","controlMode.auto"=>"set %DEVICE controlMode manual",
"R-globalBtnLock.on"=>"set %DEVICE regSet globalBtnLock off",
"R-globalBtnLock.off"=>"set %DEVICE regSet globalBtnLock on"}
Mir geht es darum, eine Drop-Down-Liste zu haben, bei gleichzeitiger Verwendung des Befehls "set %DEVICE regSet Auswahl aus Drop-Down"
Hintergrund ist, dass ich den Registerwert "valveMaxPos" meiner Homemativ Heizungs-Ventile übersichtlich anpassen möchte.
Ist das möglich, und wenn ja wie?
Wie hast du heatingInfo definiert?
list heatingInfo
Gruß Jens
Hallo,
vielen Dank für die Antwort!
Ich habe es wie folgt definiert, aber so funktioniert es natürlich nicht:
Internals:
CFGFN
DEF HM_45592B_Clima:R-valveMaxPos,<MaxValve>
NAME rg_Ventilwegbegrenzung
NR 11211
NTFY_ORDER 50-rg_Ventilwegbegrenzung
STATE Initialized
TYPE readingsGroup
mayBeVisible 1
CONTENT:
HM_45592B_Clima 1
CONTENT2:
DEVICES:
ARRAY(0x5527258)
Helper:
DBLOG:
HM_45592B_Clima.R-valveMaxPos:
logdb:
TIME 1540142137.38422
VALUE <html>50 %</html>
fhem:
lastDefChange 86
last_update 1540143855.88453
helper:
DEF
commands:
rg_Ventilwegbegrenzung.MaxValve R-valveMaxPos:60,70
positions:
HM_45592B_Clima.R-valveMaxPos 1:1
values:
formated:
undef
ARRAY(0x545fb28)
orig:
undef
ARRAY(0x5a05f28)
prefixsuffix:
undef
ARRAY(0x56b3a80)
Attributes:
commands { 'rg_Ventilwegbegrenzung.MaxValve'=>"set %DEVICE regSet valveMaxPos",'rg_Ventilwegbegrenzung.MaxValve'=>'R-valveMaxPos:60,70' }
room !Bastelecke
Der Hintergrund meines Vorhabens ist, dass ich eine übersichtliche Möglichkeit haben möchte, um die maximale Öffnung der Ventile der HM-Heizungsregler zu begrenzen.
Wir haben Fernwärme und das Wasser kommt mit nahezu 100°C durch die Heizkörper. Daher gibt es bei Sollwertänderungen oder auch im normalen Betrieb regelmäßig Überschwinger in der Raumtemperatur.
Ich habe mein Problem im Moment so gelöst, dass ich in der readingsGroup in 10%-Schritten feste Kommandos hinterlegt habe. Jedes Kommando setzt dann den Wert des entsprechenden Ventils.
{'rg_Ventilwegbegrenzung.V10' => "set $DEVICE regSet valveMaxPos 10 ",'rg_Ventilwegbegrenzung.V20' => "set $DEVICE regSet valveMaxPos 20 ",...}
Das sieht dann so aus wie das Bild im Anhang.
Viel besser wäre die Lösung mit Drop Down Auswahllisten, aber das bekomme ich nicht hin, weil ich, wenn ich die Drop Down Funktion integriere, das Kommando zum Setzen des Wertes im Ventil nicht integriert bekomme.
Vielleicht liest ja ein Perl Experte mit, der mir da noch auf die Sprünge helfen kann.