Autor Thema: Rolladensteuerung über Temperatur steuern  (Gelesen 672 mal)

Offline MadMax-FHEM

  • Hero Member
  • *****
  • Beiträge: 12266
  • NIVEAu ist keine Creme...
Antw:Rolladensteuerung über Temperatur steuern
« Antwort #15 am: Gestern um 10:22:37 »
Genau. Es sollte erstmal klar sein, was programmiert werden soll.

Genau.

Sauber formulierte "wenn-dann-Bedingungen" sollten sich ja "leicht" in ein DOIF (oder notify mit if/else) gießen lassen...

Bevor man da nicht sauber durchdacht "fertig" ist, wird das eh nichts gescheites/sauberes...
...bzw. "endloses Gebastel"...

(was nicht heißen soll, dass es gleich zu Beginn 100% "fertig" sein soll/muss und nie mehr angepasst/erweitert werden kann/soll aber zumindest in einem "Formulierungsstand" der schon Sinn macht zu laufen / weitere Anpassungen sollten dann nur noch Optimierungen etc. sein)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline Tutti_Bomovski

  • Full Member
  • ***
  • Beiträge: 194
Antw:Rolladensteuerung über Temperatur steuern
« Antwort #16 am: Gestern um 10:58:56 »
Vielleicht versuche ich mein Vorhaben hier noch mal zu beschreiben.

Einiges davon habe ich auch schon eingerichtet. Funktioniert halt "nur" nicht zu 100%.

Die Rollade soll, wenn es wärmer als 23° und der Anwesenheitsstatus "nicht zu Hause" ist um 25% nach oben fahren (wenn sie geschlossen ist).
Dazu nutzt mein DOIF die Temperatur aus dem Proplanta und den Anwesenheitsstatus.
Wenn die Temperatur nun wieder unter 23° geht und der Anwesenheitsstatus weiterhin "nicht zu Hause" ist, dann soll die Rollade vollständig schließen.
Wenn der Anwesenheitsstatus "zu Hause" ist, dann passiert einfach nichts.
Wenn in Proplanta nun aufgrund der Updates die Temperatur sich ändert und größer 23° bleibt, dann soll natürlich nicht bei jedem Update in proplante die Rollade wieder um 25% hoch gehen, sondern unverändert so bleiben. Sonst ist sie ja irgendwann komplett offen.

Den Status "Summer" setze ich wie bereits erwähnt durch ein DOIF. Das kann man sicher in einem DOIF kombinieren.

Ich hoffe, das hilft nun noch mal ein wenig weiter bei meinem Vorhaben und sorry nochmal, wenn meine Leitung manchmal etwas länger ist.  8) Ich versuche ja zu lernen. ;)

Internals:
   DEF        ([Summer] eq "warm_nichtzuHause") (set d_RolladeTerrassentuer up 25)
   FUUID      5d1b432e-f33f-8c13-2cb7-8acd877819a68778
   MODEL      FHEM
   NAME       di_Rollade_warmnichtzuHause
   NOTIFYDEV  global,Summer
   NR         239
   NTFY_ORDER 50-di_Rollade_warmnichtzuHause
   STATE      cmd_2
   TYPE       DOIF
   VERSION    26182 2022-06-29 18:57:26
   eventCount 76
   READINGS:
     2022-08-09 10:54:22   Device          Summer
     2022-08-07 17:54:22   cmd             2
     2022-08-07 17:54:22   cmd_event       Summer
     2022-08-07 17:54:22   cmd_nr          2
     2022-08-09 10:54:22   e_Summer_STATE  kalt_zuHause
     2022-07-29 14:13:02   mode            enabled
     2022-08-07 17:54:22   state           cmd_2
   Regex:
     accu:
     collect:
     cond:
       Summer:
         0:
           &STATE     ^Summer$
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::InternalDoIf($hash,'Summer','STATE') eq "warm_nichtzuHause"
   do:
     0:
       0          set d_RolladeTerrassentuer up 25
     1:
   helper:
     NOTIFYDEV  global,Summer
     event      kalt_zuHause
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   Summer
     timerevent kalt_zuHause
     triggerDev Summer
     timerevents:
       kalt_zuHause
     timereventsState:
       state: kalt_zuHause
     triggerEvents:
       kalt_zuHause
     triggerEventsState:
       state: kalt_zuHause
   hmccu:
   internals:
     all         Summer:STATE
   readings:
   trigger:
   uiState:
   uiTable:
Attributes:
   group      Rolladensteuerung
   room       Homematic,Sommer

Internals:
   DEF        ([Summer] eq "kalt_nichtzuHause") (set d_RolladeTerrassentuer close)

   FUUID      5d1b51c9-f33f-8c13-f7ea-64794f725ce33a8b
   MODEL      FHEM
   NAME       di_Rollade_kaltnichtzuHause
   NOTIFYDEV  global,Summer
   NR         243
   NTFY_ORDER 50-di_Rollade_kaltnichtzuHause
   STATE      cmd_1
   TYPE       DOIF
   VERSION    26182 2022-06-29 18:57:26
   eventCount 207
   READINGS:
     2022-08-09 10:54:22   Device          Summer
     2022-08-09 01:15:05   cmd             1
     2022-08-09 01:15:05   cmd_event       Summer
     2022-08-09 01:15:05   cmd_nr          1
     2022-08-09 10:54:22   e_Summer_STATE  kalt_zuHause
     2022-06-08 13:20:34   mode            enabled
     2022-08-09 01:15:05   state           cmd_1
   Regex:
     accu:
     collect:
     cond:
       Summer:
         0:
           &STATE     ^Summer$
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::InternalDoIf($hash,'Summer','STATE') eq "kalt_nichtzuHause"
   do:
     0:
       0          set d_RolladeTerrassentuer close
     1:
   helper:
     NOTIFYDEV  global,Summer
     event      kalt_zuHause
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   Summer
     timerevent kalt_nichtzuHause
     triggerDev Summer
     timerevents:
       kalt_nichtzuHause
     timereventsState:
       state: kalt_nichtzuHause
     triggerEvents:
       kalt_zuHause
     triggerEventsState:
       state: kalt_zuHause
   internals:
     all         Summer:STATE
   perlblock:
   readings:
   trigger:
   uiState:
   uiTable:
Attributes:
   do         always
   group      Rolladensteuerung
   room       Homematic,Sommer
« Letzte Änderung: Gestern um 11:38:03 von Tutti_Bomovski »

Offline MadMax-FHEM

  • Hero Member
  • *****
  • Beiträge: 12266
  • NIVEAu ist keine Creme...
Antw:Rolladensteuerung über Temperatur steuern
« Antwort #17 am: Gestern um 11:48:19 »
Zitat
Die Rollade soll, wenn es wärmer als 23° und der Anwesenheitsstatus "nicht zu Hause" ist um 25% nach oben fahren (wenn sie geschlossen ist).

Wenn du die Bedingung aus der Klammer rausnimmst und "ernst" nimmst, dann KANN der Rollo ja gar nicht mehrmals um 25% fahren, selbst wenn das DOIF ausgelöst wird/würde, da ja der Rollo NICHT (mehr) geschlossen ist nach der ersten 25% Fahrt...

Was soll passieren, wenn der Anwesenheitsstatus wechselt?

Weil neben den Bedingungen ist bei DOIF auch wichtig: soll die "Bedingung" ein "Auslöser" sein oder "nur" abgefragt werden!

Also soll, wenn sich der Anwesenheitsstatus ändert was passieren -> dann muss das Ereignis triggern
Soll nichts passieren, sondern "nur" in Abhängigkeit vom aktuellen Zustand das eine oder das andere (oder auch nichts) passieren, dann eben "nur" abfragen, also nicht triggern...

Also für mich sieht das noch nicht "zu Ende" gedacht aus ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Offline Tutti_Bomovski

  • Full Member
  • ***
  • Beiträge: 194
Antw:Rolladensteuerung über Temperatur steuern
« Antwort #18 am: Gestern um 12:11:02 »
Wenn du die Bedingung aus der Klammer rausnimmst und "ernst" nimmst, dann KANN der Rollo ja gar nicht mehrmals um 25% fahren, selbst wenn das DOIF ausgelöst wird/würde, da ja der Rollo NICHT (mehr) geschlossen ist nach der ersten 25% Fahrt...

Was soll passieren, wenn der Anwesenheitsstatus wechselt?

Weil neben den Bedingungen ist bei DOIF auch wichtig: soll die "Bedingung" ein "Auslöser" sein oder "nur" abgefragt werden!

Also soll, wenn sich der Anwesenheitsstatus ändert was passieren -> dann muss das Ereignis triggern
Soll nichts passieren, sondern "nur" in Abhängigkeit vom aktuellen Zustand das eine oder das andere (oder auch nichts) passieren, dann eben "nur" abfragen, also nicht triggern...

Also für mich sieht das noch nicht "zu Ende" gedacht aus ;)

Gruß, Joachim

Hallo Joachim,
vielen Dank für deine Geduld mit mir.  :)

Außer den beiden Punkten soll er halt "nichts" machen.
Wenn sich der Anwesenheitsstatus ändert, dann soll nichts passieren.
"Nur" die Steuerung der Rollade basierend auf der Temperatur und Status "nicht zu Hause".
Ich hatte ergänzend über die Bedingung "wenn Rollade geschlossen" ist nachgedacht und man kann das mit einbauen.
Dann dürfte ja quasi nicht mehrfach die Rollade bei Update der Temperatur um weitere 25% geöffnet werden.
Variante 1) wenn Temperatur >23° UND Anwesenheit "Nicht zu Hause" UND Rollade "Geschlossen" DANN 25% hoch.

([Temperatur] >23 and [Anwesenheit] eq "nicht zu Hause" and [Rollade] eq "closed") (set Rollade up 25)

Variante 2) wenn Temperatur <23° UND Anwesenheit "Nicht zu Hause" UND Rollade "nicht Geschlossen" DANN 100% schließen.



Danke und Gruß,
Michael
« Letzte Änderung: Gestern um 12:19:06 von Tutti_Bomovski »

Offline rabehd

  • Hero Member
  • *****
  • Beiträge: 1316
Antw:Rolladensteuerung über Temperatur steuern
« Antwort #19 am: Gestern um 12:48:19 »
Jetzt noch aus Variante Zweig machen, dann sieht es für mich schon gut aus und wäre die erste Version des DOIF.
Na ja, die Frage Trigger ja  oder nein fehlt noch.
Trigger wäre für mich nur die Temperatur, der Rest wird nur abgefragt.
([Temperatur] >23 and [?Anwesenheit] eq "nicht zu Hause" and [?Rollade] eq "closed") (set Rollade up 25)
Auch funktionierende Lösungen kann man hinterfragen.

Offline Tutti_Bomovski

  • Full Member
  • ***
  • Beiträge: 194
Antw:Rolladensteuerung über Temperatur steuern
« Antwort #20 am: Heute um 08:31:07 »
Jetzt noch aus Variante Zweig machen, dann sieht es für mich schon gut aus und wäre die erste Version des DOIF.
Na ja, die Frage Trigger ja  oder nein fehlt noch.
Trigger wäre für mich nur die Temperatur, der Rest wird nur abgefragt.
([Temperatur] >23 and [?Anwesenheit] eq "nicht zu Hause" and [?Rollade] eq "closed") (set Rollade up 25)

Danke für deine Nachricht.
Ja, die Temperatur soll der Trigger sein. Wenn Anwesenheit oder Rolladenstatus sich ändert soll nichts passieren.

Die Fragezeichen sind dann der entsprechende Hinweis für nur die Abfrage?

Offline MadMax-FHEM

  • Hero Member
  • *****
  • Beiträge: 12266
  • NIVEAu ist keine Creme...
Antw:Rolladensteuerung über Temperatur steuern
« Antwort #21 am: Heute um 08:45:59 »
Die Fragezeichen sind dann der entsprechende Hinweis für nur die Abfrage?

Ja, steht ja so in der commandref zu DOIF ;)

https://fhem.de/commandref_DE.html#DOIF_Zeitintervalle_Readings_und_Status_ohne_Trigger

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Offline Tutti_Bomovski

  • Full Member
  • ***
  • Beiträge: 194
Antw:Rolladensteuerung über Temperatur steuern
« Antwort #22 am: Heute um 08:52:01 »
Ja, steht ja so in der commandref zu DOIF ;)

https://fhem.de/commandref_DE.html#DOIF_Zeitintervalle_Readings_und_Status_ohne_Trigger

Gruß, Joachim

Dankeschön!
Ich hab im Wiki nachgeschaut und die Information nicht gefunden.
Für das nächste Mal dann die Commandref  :)

Ich werde das heute dann mal testen und berichten.

Vielen, vielen Dank für Eure Hilfe bis hier hin!

Offline MadMax-FHEM

  • Hero Member
  • *****
  • Beiträge: 12266
  • NIVEAu ist keine Creme...
Antw:Rolladensteuerung über Temperatur steuern
« Antwort #23 am: Heute um 09:24:33 »
Ich hab im Wiki nachgeschaut und die Information nicht gefunden.
Für das nächste Mal dann die Commandref  :)

Ich schon ;):
https://wiki.fhem.de/wiki/DOIF/Einsteigerleitfaden,_Grundfunktionen_und_Erl%C3%A4uterungen#Ereignisse

Zitat
Alle Auslöser

[?<Auslöserangabe>] Auslöser, die mit Fragezeichen beginnen lösen nicht aus, sie werden nur abgefragt

commandref/DOIF_Zeitintervalle_Readings_und_Status_ohne_Trigger


Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)


Offline frank

  • Hero Member
  • *****
  • Beiträge: 10951
Antw:Rolladensteuerung über Temperatur steuern
« Antwort #25 am: Heute um 10:09:50 »
@Tutti_Bomovski
mich würde mal der "nutzen/sinn" dieser automation interessieren.

warum lässt du wärme ins haus, wenn keiner da ist?
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html
Zustimmung Zustimmung x 1 Liste anzeigen

Offline Tutti_Bomovski

  • Full Member
  • ***
  • Beiträge: 194
Antw:Rolladensteuerung über Temperatur steuern
« Antwort #26 am: Heute um 13:06:57 »
@Tutti_Bomovski
mich würde mal der "nutzen/sinn" dieser automation interessieren.

warum lässt du wärme ins haus, wenn keiner da ist?

Ich lasse ja keine Wärme ins Haus.
Wenn wir alle das Haus verlassen, sind die bodentiefen Fensterrolladen zu 100% geschlossen. Gerade auf der Südseite zieht es dann aber die Rollade immer in Mitleidenschaft, wenn es zu warm / heiß wird. Daher öffne ich die Rollade dann minimal einen Spalt breit unten. :)