Cuxd Timer Event nach Verzögerung ausführen Unklarheiten

Anbindung von FS20-Komponenten, ELV-Wetterstationen, EnOcean und DMX an HomeMatic

Moderator: Co-Administratoren

Antworten
QLink
Beiträge: 381
Registriert: 15.01.2013, 11:45
Hat sich bedankt: 19 Mal
Danksagung erhalten: 3 Mal

Cuxd Timer Event nach Verzögerung ausführen Unklarheiten

Beitrag von QLink » 02.04.2017, 20:15

Hi Leute,

ich komme einfach nicht auf die Lösung und hoffe auf eure Hilfe.

Ich möchte eine Hysterese in mein Rollladenprogramm einbauen um bei wechselnden Helligkeitswerten zu verhindern, dass die Rollläden permanent rauf und runter fahren.

Mit der eingebauten CCU Verzögerung funktioniert es leider nicht zuverlässig mit über 4min Verzögerung, daher hätte ich gerne Cuxd Timer verwendet für die 4min und die einzelne 3 Sekunden Staffelung der Rollläden mit der CCU Verzögerung.

Hier mein Programm:
Timer4min.PNG
Timer4min.PNG (9.09 KiB) 933 mal betrachtet
Wenn nicht mehr beschattet werden soll, dann ...
if.PNG
if.PNG (8.68 KiB) 933 mal betrachtet
und hier das folge programm mit der Sekunden Staffelung:
execute.PNG
Leider greifen die 4min Verzögerung nicht. Die Rollläden fahren immer sofort bzw. nach 3 und 6 Sekunden hoch.
Es kommt also nur die Sekundenverzögerung zum Zug und nicht die 240Sekunden vom Cuxd Timer...

Habe ich hier einen Denkfehler oder mache ich grundsätzlich etwas falsch ?


Vielen Dank für eure Hilfe.

Beste Grüße

Benutzeravatar
JRiemann
Beiträge: 3903
Registriert: 12.11.2015, 21:05
Wohnort: Aurich
Danksagung erhalten: 3 Mal

Re: Cuxd Timer Event nach Verzögerung ausführen Unklarheiten

Beitrag von JRiemann » 02.04.2017, 20:53

Etwas mehr Input bitte!
Hier geht es um die Steuerug der Beschattung? Richtig?
Du möchtest verhindern das bei wechselnder Sonne Achterbahn gefahren wird?

Für diesen Anwendungsfall finde ich die Umsetzung per CUxD unpraktisch bzw. aufwändig.
Ich würde Dir raten das über eine Systemvariable zu steuern. Die Funktion "verzögert um" ist nicht zuverlässig! Ich nutze es unzählige Male in fast jedem Programm ohne irgendwelche Auffälligkeiten.
Dazu sind einige Programme nötig:
Programm 1:

Code: Alles auswählen

WENN - Lichtwert größer xxx - bei Änderung auslösen 
DANN - Variable "Beschattung" - sofort - Zustand Beschattung
SONST-WENN - Lichtwert kleiner xxx - nur prüfen
DANN - Variable "Beschattung" - verzögert um 4 Min - Zustand Keine Beschattung
Programm 2:

Code: Alles auswählen

WENN - Variable "Beschattung" - Zustand Beschattung - bei Änderung auslösen
DANN - Rollladen - sofort - Behanghöhe xx
SONST-WENN - Variable "Beschattung" - Zustand Keine Beschsttung - nur prüfen
DANN - Rollladen - sofort - Behsnghöhe yy
Viele Grüße!
Jörg

QLink
Beiträge: 381
Registriert: 15.01.2013, 11:45
Hat sich bedankt: 19 Mal
Danksagung erhalten: 3 Mal

Re: Cuxd Timer Event nach Verzögerung ausführen Unklarheiten

Beitrag von QLink » 02.04.2017, 22:02

Hi JRiemann,

es geht hier nicht um mein Beschattungsprogramm, damit bin ich soweit eigentlich zufrieden. Das tut was es soll.
Schön dass bei dir die verzögert um Funktion stabil funktioniert, bei mir tut sie es leider nicht, sonst würde ich hier nicht nach einer Alternative suchen ...

Beste Grüße

Benutzeravatar
JRiemann
Beiträge: 3903
Registriert: 12.11.2015, 21:05
Wohnort: Aurich
Danksagung erhalten: 3 Mal

Re: Cuxd Timer Event nach Verzögerung ausführen Unklarheiten

Beitrag von JRiemann » 02.04.2017, 22:51

Und worum geht es dann wenn nicht um Beschattung?
Wie kommt es sonst dazu das morgens oder abends die Rollläden ständig rauf/runter fahren.
Evtl. hast Du ganz andere Fehler in Deiner Umsetzung?!
Du willst doch nicht wirklich jede Verzögerung in einem Programm durch einen Timer ersetzen?!
Dir ist schon klar das dann jeweils mind. 2 Programme nötig sind...

Wenn "verzögert um" bei Dir nicht funktioniert, dann ist es sicher ein Problem welches nur bei sehr sehr wenigen Usern auftritt. Was wiederum bedeutet das es kein Firmwarefehler sondern ein individueller Fehler ist. Solche Probleme sind meistens vom User verursacht bzw. einer "schlechten" Konfiguration geschuldet. Es wäre sicher ratsam den Fehler zu finden statt die Symptome zum umschiffen.

Eine Verzögerung mit dem Timer baut man so:
Programm 1:

Code: Alles auswählen

WENN - Lichtwert größer xxx - bei Änderung auslösen 
DANN - Timer - TIMER_SET - 240 Sek
SONST-WENN - Lichtwert kleiner xxx - nur prüfen
DANN - Timer - TIMER_STOP
Programm 2:

Code: Alles auswählen

WENN - Timer - Schaltzustand: EIN - bei Aktualisierung auslösen
UND - Rollladen - Behanghöhe - kleiner 100% - nur prüfen
DANN - Rollladen - sofort - Behanghöhe 100%
Nach identischem Muster muss dann auch in weiteren Programmen die Fahrt für die Gegenrichtung programmiert werden. Das verändern des Timerstatus Schaltzustand Ein/Aus ist nicht nötig. Der abgelaufene oder gestoppte Timer nimmt den Status EIN an. Beim nächsten Start findet aber trotzdem das erste Event (also der Auslöser) wieder bei EIN statt.
Viele Grüße!
Jörg

Antworten

Zurück zu „CUxD“