Wartefunktion für Rollladenaktor

Programmierung der HomeMatic CCU mittels contronics homeputer CL

Moderator: Co-Administratoren

Antworten
pittiplatsch
Beiträge: 40
Registriert: 07.10.2014, 14:27
Wohnort: Magdeburg

Wartefunktion für Rollladenaktor

Beitrag von pittiplatsch » 21.04.2017, 16:22

Hallo Zusammen,

ich komme mal wieder nicht weiter, darum hier mein Hilferuf.
Es soll ein Rollladen gesteuert werden. Öffnen und schließen nach Uhrzeiten + Sonnenauf- und Untergang + in Anhängigkeit zur Helligkeit. Bis dahin funktioniert alles zur Zufriedenheit. Dann soll der Rollladen zur Beschattung bei Überschreiten einer bestimmten Helligkeit runterfahren. Auch das macht er!
Aber dann wird es „nervig“. Sowie eine Wolke am Himmel ist fährt er wieder hoch und fünf Minuten später wieder `runter.
Die Anweisung „warte(„02:00:00“)“, um für zwei Stunden Ruhe `rein zu bekommen, wird genauso ignoriert wie der unten dargestellte Versuch mit der Stoppuhr-Funktion.
Das Ziel ist der Rollladen soll, wenn er zum Beschatten in Position "halb" für zwei Stunden dort bleiben.

Was mache ich falsch?
Hat jemand eine Idee?


Vielen Dank vorab
pittiplatsch


Code: Alles auswählen

wenn Uhrzeit < Sonnenuntergang und
     Uhrzeit > Sonnenaufgang und
     EG_WZ_Rolll_Ter_Kl_Zeit eingeschaltet und
     OG_Balkon_Daemmerung > Sollwert_OG_Balkon_Daemmerung_2 und
     OG_Balkon_Daemmerung < Sollwert_OG_Balkon_Daemmerung_3 dann
     EG_WZ_Rollla_Ter_Kl:= "oben"
sonst
  wenn Monat < 5 und
       Monat >=1 und
       Uhrzeit < "15:00:00" und
       Uhrzeit > "09:00:00" und
       OG_Balkon_Daemmerung > Sollwert_OG_Balkon_Daemmerung_3 dann
       EG_WZ_Rollla_Ter_Kl:= "halb"
     sonst
             wenn EG_WZ_Rollla_Ter_Kl = "halb" dann
                wenn Stoppuhr(EG_WZ_Rollla_Ter_Kl.CT) groesser "02:00:00" dann
                     EG_WZ_Rollla_Ter_Kl:= "oben"
                endewenn
             endewenn
   endewenn
  wenn EG_WZ_Rolll_Ter_Kl_Zeit ausgeschaltet und
     OG_Balkon_Daemmerung < Sollwert_OG_Balkon_Daemmerung_1 dann

     EG_WZ_Rollla_Ter_Kl:= "unten"
  endewenn
  verlassen
endewenn
Zuletzt geändert von pittiplatsch am 21.04.2017, 17:31, insgesamt 1-mal geändert.

Familienvater
Beiträge: 7151
Registriert: 31.12.2006, 15:18
System: Alternative CCU (auf Basis OCCU)
Wohnort: Rhein-Main
Danksagung erhalten: 34 Mal

Re: Wartefunktion für Rollladenaktor

Beitrag von Familienvater » 21.04.2017, 16:28

Hi,

Code bitte in Code-Tags posten...

In welchem Objekt steht der Code?
Welche Trigger hat das Objekt (Ausführungsintervall, Ausführen bei Empfang, bei Änderung,....) ?

Der Familienvater

pittiplatsch
Beiträge: 40
Registriert: 07.10.2014, 14:27
Wohnort: Magdeburg

Re: Wartefunktion für Rollladenaktor

Beitrag von pittiplatsch » 21.04.2017, 16:35

Hallo,
der Trigger ist auf Minutentakt eingestellt.
Der Code ist im Rollladenaktor (EG_WZ_Rollla_Ter_Kl) geschrieben.

Mit der Darstellung im Code bin ich nicht klargekommen. Aber nun hat es doch funktioniert.

pittiplatsch

Familienvater
Beiträge: 7151
Registriert: 31.12.2006, 15:18
System: Alternative CCU (auf Basis OCCU)
Wohnort: Rhein-Main
Danksagung erhalten: 34 Mal

Re: Wartefunktion für Rollladenaktor

Beitrag von Familienvater » 22.04.2017, 00:06

Hi,

es liegt bei mir sicherlich gerade auch an der fortgeschrittenen Stunde, aber durch den Spaghetti-Code im Minutenintervall ggf. mit zusätzlicher Triggerung bei Änderung der Rolladenposition blicke ich nicht durch.

Es gibt min. 6 Bedingungen (Uhrzeit, EG_WZ_Rolll_Ter_Kl_Zeit, OG_Balkon_Daemmerung, EG_WZ_Rollla_Ter_Kl, Monat, EG_WZ_Rollla_Ter_Kl.CT), die gegen unterschiedlichste Zustände/Bereiche in 4 sich teilweise ausschließenden Blöcken verwurschtelt geprüft werden, davon sind mir Grundsätzlich die Uhrzeit, Sonnenauf- und Untergang und evtl. noch EG_WZ_Rollla_Ter_Kl halbwegs klar, Sollwert_OG_Balkon_Daemmerung_1-3 sind wohl irgendwelche variablen Grenzwerte, deren Werte ich nicht kenne, und deswegen schonmal mit 3 weiteren Unbekannten denken muss, je nach Wert macht das ganze vielleicht einen Sinn, evtl. auch gar nicht, die Bedueutung des Schalters EG_WZ_Rolll_Ter_Kl_Zeit könnte man vielleicht noch deuten, aber auch daneben liegen, also eine 4. unbekannte.

Da also lapidar gesprochen a+b+c = d ist, gibt es unendlich viele Lösungen für a, b, c und d.

Rolladensteuerung nur per "Zeit" ist schwierig genug, Beschattung dazuzubringen ist noch viel komplizierter, das ganze Zeitgesteuert mit Helligkeitswerten und Beschattung, ich habe es bei mir noch nicht realisiert...

Da das ganze auch noch 1440 mal pro Tag läuft (davon mindestens 1400 mal umsonst, eher 1437 mal umsonst) macht es das absolut nicht einfacher.

Der Familienvater

pittiplatsch
Beiträge: 40
Registriert: 07.10.2014, 14:27
Wohnort: Magdeburg

Re: Wartefunktion für Rollladenaktor

Beitrag von pittiplatsch » 22.04.2017, 17:19

Hallo,
ich versuche es nochmal. Der Rollladen soll automatisch öffnen und schließen und bei Sonneneinstrahlung halb schließen.
Der Code ist geschrieben im Rollladenaktor und der Trigger ist auf 1Minute eigestellt.
Öffnen:
Der Rollladen (EG_WZ_Rollla_Ter_Kl) öffnet in Abhängigkeit von Uhrzeit (EG_WZ_Rolll_Ter_Kl_Zeit), Sonnenaufgang, Mindesthelligkeit (Sollwert_OG_Balkon_Daemmerung_2) und BeschattungsHelligkeit (Sollwert_OG_Balkon_Daemmerung_3)(wurde später zur Beschattung eingefügt)
Schließen:
Der Rollladen (EG_WZ_Rollla_Ter_Kl) schließt in Abhängigkeit von Uhrzeit (EG_WZ_Rolll_Ter_Kl_Zeit), und der Dämmerundshelligkeit (Sollwert_OG_Balkon_Daemmerung_1) Bis hierher hat alles sofort und wie erhofft funktioniert.

Dann erst kam die Forderung nach der Beschattung und sie wurde eingefügt.

Im Zeitraum Januar bis Ende April wird in der Zeit zwischen 09Uhr und 15 Uhr in Abhängigkeit von BeschattungsHelligkeit (Sollwert_OG_Balkon_Daemmerung_3) Beschattung benötigt.
Auch das funktioniert.
Aber „eine Wolke“ und der Rollladen fährt erstmal wieder hoch bis die eingestellte Helligkeit wieder Überschritten ist und er wieder runterfährt. Hier wollte ich „Ruhe“ `reinkriegen.
Im ersten Versuch habe ich die Warte-Anweisung probiert. Das hatte keine Veränderung gebracht, so als hätte ich die Zeile gar nicht eingetragen.

Code: Alles auswählen

wenn Uhrzeit < Sonnenuntergang und
     Uhrzeit > Sonnenaufgang und
     EG_WZ_Rolll_Ter_Kl_Zeit eingeschaltet und
     OG_Balkon_Daemmerung > Sollwert_OG_Balkon_Daemmerung_2 und
     OG_Balkon_Daemmerung < Sollwert_OG_Balkon_Daemmerung_3 dann
     EG_WZ_Rollla_Ter_Kl:= "oben"
sonst
  wenn Monat < 5 und
       Monat >=1 und
       Uhrzeit < "15:00:00" und
       Uhrzeit > "09:00:00" und
       OG_Balkon_Daemmerung > Sollwert_OG_Balkon_Daemmerung_3 dann
       EG_WZ_Rollla_Ter_Kl:= "halb"
       warte ("02:00:00")
   endewenn
  wenn EG_WZ_Rolll_Ter_Kl_Zeit ausgeschaltet und
     OG_Balkon_Daemmerung < Sollwert_OG_Balkon_Daemmerung_1 dann

     EG_WZ_Rollla_Ter_Kl:= "unten"
  endewenn
  verlassen
endewenn
Danach kam die Idee stattdessen diesen Block mit der Stoppuhr einzufügen (wie oben dargestellt).
Auch keine Reaktion.
Da das Ganze aus der Situation heraus gewachsen ist, ist die Gefahr immer gegeben, daß das Ergebnis etwas unübersichtlich werden kann.
Den Hinweis von Familienvater den Ausführungsintervall zu entschärfen indem anstelle Minutentakt „Ausführen bei Änderung“ aktiviert wird werde ich unabhängig vom Ausgangsproblem mal testen.

pittiplatsch

Familienvater
Beiträge: 7151
Registriert: 31.12.2006, 15:18
System: Alternative CCU (auf Basis OCCU)
Wohnort: Rhein-Main
Danksagung erhalten: 34 Mal

Re: Wartefunktion für Rollladenaktor

Beitrag von Familienvater » 22.04.2017, 19:34

Hi,

das mit dem Eierlegenden Wollmichsau-Makro wird schwierig werden, ohne Ausführungsintervall...

Ich würde das ganze auf mehrere Objekte aufteilen, die ganz klar geregelte Aufgaben haben, und jedes Objekt für sich ist "eventgesteuert" und nicht Intervallgesteuert.

Das
pittiplatsch hat geschrieben:Öffnen:
Der Rollladen (EG_WZ_Rollla_Ter_Kl) öffnet in Abhängigkeit von Uhrzeit (EG_WZ_Rolll_Ter_Kl_Zeit), Sonnenaufgang, Mindesthelligkeit (Sollwert_OG_Balkon_Daemmerung_2) und BeschattungsHelligkeit (Sollwert_OG_Balkon_Daemmerung_3)(wurde später zur Beschattung eingefügt)
verstehe ich immer noch nicht, wie etwas mit dieser Beschreibung in Abhängigkeit von 3 Dingen funktioniert.

Ich würde z.B. verstehen:
Wichtigste Regel: Der Rolladen soll frühestens nach Sonnenaufgang hochgehen (ist es vor Sonnenaufgang passiert nichts, egal wie Hell oder Dunkel es ist)
Dann: Ist es nach Sonnenaufgang, soll der Rolladen hoch gehen, wenn die Helligkeit den Wert 80 überschreitet (die 80 kann ja ruhig in einer Variable sein, aber wir müssen den Wert trotzdem kennen, weil es noch einen 2. Wert und 3. Wert gibt, und wenn die logisch wiedersprüchlich wären...)
Als nächstes: Der Rolladen soll wieder hochgehen, wenn er mindestens seit 2h auf halb steht, und es nicht mehr zu Hell ist.

Von Offen auf Halb fahren:
wird zwischen SA und SU die Helligkeit von 175 min. für mindestens 3 Meldungen überschritten, dann soll der Rolladen automatisch auf Halb fahren, aber nur wenn nicht der Griff der Türe auf offen steht.

Schließen:
Der Rolladen soll frühestens mit dem Sonnenuntergang schließen, aber erst, wenn eine gewisse Helligkeit unterschritten wird.
Oder der Rolladen soll spätestens mit dem Sonnenuntergang schließen, oder schon wenn eine gewisse Helligkeit unterschritten wird.

Formuliere Deine Wünsche für uns ganz normal, in logisch nachvollziehbarer Sprache, mit Prioritäten, welche Regel eine andere Aktion "überschreibt", dann kann man sich überlegen, welche Regel wo hin muss, und wo welche Triggerung zu Zeitpunkten etc. hin muss. Und suche nach "logischen Lücken", ich habe absichtlich z.b. nicht beschrieben, was passiert, wenn es zum Sonnenaufgang schon so hell wäre, das beschattet werden müsste (erst hochfahren, dann 3 Werte zu Hell, dann auf halb, oder gleich auf halb?)
Und bei dem Formulieren wirst Du ggf. feststellen, das es in Deiner Muttersprache schon schwierig wird, das ganze so zu beschreiben (wenn Du fertig bist, lass es einfach mal Deine Frau lesen, und Dir erklären, was Sie verstanden hat, weil für einen selber ist das natürlich alles logisch, was da steht, außerdem hat es denn Vor-/Nachteil, das dann Ihre Wünsche auch noch gleich eingesteuert werden können...)

Der Familienvater

Familienvater
Beiträge: 7151
Registriert: 31.12.2006, 15:18
System: Alternative CCU (auf Basis OCCU)
Wohnort: Rhein-Main
Danksagung erhalten: 34 Mal

Re: Wartefunktion für Rollladenaktor

Beitrag von Familienvater » 22.04.2017, 19:38

Achso, und bei all dem natürlich auch mal berücksichtigen, ob es alternativ-Größen geben könnte...
-> Es kommt kein Helligkeitswert mehr, geht der Rolladen trotzdem irgendwann hoch/runter?
Gibt es unterschiede bei den Zeiten z.B. Mo-Fr und Sa/So/Feiertag/Ferien.

Was ist, wenn jemand den Rolladen per Hand aus der Offen in die Halb-Position bewegt?
Was ist, wenn jemand den Rolladen aus der Halb-Position ganz öffnet oder schließt?

Der Famillienvater

Daimler
Beiträge: 9115
Registriert: 17.11.2012, 10:47
System: Alternative CCU (auf Basis OCCU)
Wohnort: Köln
Hat sich bedankt: 37 Mal
Danksagung erhalten: 283 Mal

Re: Wartefunktion für Rollladenaktor

Beitrag von Daimler » 22.04.2017, 19:54

Hi,
Familienvater hat geschrieben:wenn Du fertig bist, lass es einfach mal Deine Frau lesen, und Dir erklären, was Sie verstanden hat
Da hast du dir aber jetzt eine never ending story eingefangen. :lol: :lol:
Gruß Günter

pivccx mit 3.xx in Produktiv und Testsystem mit HM-, HM-W, HMIP- und HMIP-W Geräten, HPCx Studio 4.1,
L-Gateways, RS-L-Gateways, HAP, Drap, FHZ200x, vereinzelt noch FS2x-Komponenten.
HM / HM-IP: Zur Zeit knapp 300 Komponenten mit ??? Kanälen .

Ich übernehme für alle von mir gegebenen Hinweise, Tipps und Links keine Haftung! Das Befolgen meiner Tipps ist nur für Fachkundige gedacht und erfolgt auf eigene Gefahr!

Antworten

Zurück zu „homeputer CL“