Rollosteuerung variabel steuern

Begonnen von John Hanson, 08 Mai 2017, 22:29:52

Vorheriges Thema - Nächstes Thema

John Hanson

Guten Abend zusammen,
bis jetzt bin ich von FHEM wirklich begeistert und meine Steuerung wächst.

Nun zu meinem Problem, mittlerweile habe ich 9 Rolläden die ich steuere und Abends fahren sie auf 15% runter.
Diese 15% möchte ich gern Variable gestalten über einen  "dummy" wenn das denn überhaupt möglich ist.

Ziel ist es mit hoffentlich baldiger steigender Sonnenactivität die Wärme über Nacht aus dem Haus zu bekommen.

Aktuell scheitere ich daran das ich den "dummy" nicht in mein Doif rein bekomme.

define SchalterRollo15 dummy
attr SchalterRollo15 alias RolloOeffnung
attr SchalterRollo15 devStateIcon on:fts_shutter_10 off:fts_shutter_100
attr SchalterRollo15 group Rollo
attr SchalterRollo15 icon fts_shutter
attr SchalterRollo15 room Automation
attr SchalterRollo15 setList state:slider,10,1,50,1
attr SchalterRollo15 webCmd state


([RolloModus] eq "FHEM" and ([[RolloHoch_WT]|8] or [[RolloHoch_WE]|7]) or [RolloModus] eq "ASTRO" and [Tageslicht] eq "hell") (set R_Arbeit 100, set R_Kind1 100, set R_Kind2 100, set R_Schlafzimmer 100) DOELSEIF ([RolloModus] eq "FHEM" and ([[RolloRunterX]|8] or [[RolloRunterX]|7]) or [RolloModus] eq "ASTRO" and [Tageslicht] eq "dunkel") (set R_Arbeit 15, set R_Kind1 15, set R_Kind2 15, set R_Schlafzimmer 15") DOELSEIF ([RolloModus] eq "FHEM" and ([[RolloRunter]|8] or [[RolloRunter]|7]) or [RolloModus] eq "ASTRO" and [Tageslicht] eq "dunkel") (set R_Kind1 0, set R_Kind2 0, set R_Schlafzimmer 0)


Versucht habe ich es mit so was:
set R_Arbeit pct [RolloOeffnung]
set R_Arbeit [RolloOeffnung]
set R_Arbeit eq [RolloOeffnung]


Habt ihr einen Tip wie ich das hinbekommen kann?
Aber mir fehlt wohl noch etwas das Verständnis wie diese Befehle aussehen müssen.

Gruß
John Hanson

KernSani

Auf jeden Fall funktionieren sollte set R_Arbeit {(ReadingsVal("RolloOeffnung","state",0))}
aber DOIF hat da sicher noch elegantere Wege...
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

CoolTux

#2
 Nicht den Alias im set Befehl sondern den richtigen Devicenamen.

set R_Arbeit pct [SchalterRollo15:state]
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

John Hanson

Herzlichen dank für die schnelle Hilfe, das funktioniert super.
Ich verstehe zwar noch nicht die Vor- oder Nachteile der hier aufgeführten Varianten aber ich habe mich für die von CoolTux entschieden da der geschriebene Code kürzer ist.
Ganz pragmatisch...

Gruß
John Hanson

Damian

Zitat von: John Hanson am 09 Mai 2017, 22:03:08
Herzlichen dank für die schnelle Hilfe, das funktioniert super.
Ich verstehe zwar noch nicht die Vor- oder Nachteile der hier aufgeführten Varianten aber ich habe mich für die von CoolTux entschieden da der geschriebene Code kürzer ist.
Ganz pragmatisch...

Gruß
John Hanson

es dürfte auch

set R_Arbeit pct [SchalterRollo15]

funktionieren.

Du kannst nur keine Aliasnamen nehmen, sondern nur die "echten" - einfach deswegen, weil DOIF die nicht kennt.

Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

CoolTux

Zitat von: Damian am 09 Mai 2017, 22:11:07
set R_Arbeit pct [SchalterRollo15]

Dachte auch das es so gehen sollte aber leider hat es in meiner Testumgebung nicht funktioniert. Daher
DEVICENAME:state
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Damian

Zitat von: CoolTux am 09 Mai 2017, 22:17:36
Dachte auch das es so gehen sollte aber leider hat es in meiner Testumgebung nicht funktioniert. Daher
DEVICENAME:state

Warum sollte es nicht gehen? Mit [SchalterRollo15] ist das Internal STATE gemeint mit [SchalterRollo15:state] das Reading "state" und die beiden sind meistens identisch - das gilt zumindest für DOIF, was bei set-magic Kommandos auf der FHEM-Ebene ohne DOIF gilt, weiß ich nicht - das wurde nachträglich für set eingebaut.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

John Hanson

Werde das morgen mal testen, jetzt schlafen die Kinder ;-)