Probleme mit Einschaltdauer
Moderator: Co-Administratoren
Probleme mit Einschaltdauer
Hallo zusammen,
ich habe aktuell eine Frage aufgrund eines Problems mit dem Aktor HM-LC-Sw4-WM und dem Thema Einschaltdauer.
Über zwei dieser Aktoren mit jeweils 4 Kanälen schalte ich meine Gartenbewässerung. Am ersten Kanal von Aktor 1 hängt meine Gartenpumpe, an der weiteren Kanälen die jeweiligen Bewässerungsstränge, Strang1-Strang6.
In Abhängigkeit von Umweltbedingungen (Regen, Bodenfeuchtigkeit, ...) setze ich eine Timervariable (BewV1) in Sekunden (z.B. 900), die nachher die Einschaltzeit definiert.
Zu bestimmten Uhrzeiten setze ich eine weitere Variable Bew_On auf wahr, um die Bewässerung zu starten.
Wird diese Variable „wahr“, reagiert mein Programm Strang1 und setzt die Einschaltdauer des Aktors von Kanal2 auf die Sekunden, die vorher in der Variable BewV1 geschrieben wurde ...
Wenn Systemzustand Bew_On ist wahr bei Änderung auslösen
Dann
Geräteauswahl Strang_1 verzögert um 1 Sekunde Einschaltdauer mit BewV1
Geräteauswahl Strang_1 verzögert um 2 Sekunden Schaltzustand ein
Ist die Zeit abgelaufen, schaltet sich der Aktor Kanal 2 aus. Dieses Ausschalten bewirkt, dass das Programm Strang2 gestartet wird, da in der Wenn Bedingung steht ...
Wenn Geräteauswahl Strang_1 Schaltzustand: aus bei Änderung auslösen ...
usw.
Das funktioniert auch seit Monaten bis auf wenige Ausnahmen. In solchen Fällen scheint mir (meine Vermutung), dass die Einschaltdauer nicht korrekt und nur der Schaltzustand: ein übertragen wird. Dies äußert sich dadurch, dass der Strang sich nicht nach den zuvor definierten Sekunden (z.B. 900) ausschaltet und unendlich läuft.
Das Problem tritt, wenn es Auftritt, an den unterschiedlichen Strängen auf, mal Strang2 dann Strang4 ...
Wäre toll, wenn jemand eine Idee hätte, das sicherer zu machen.
Meine Ideen:
- Verweildauer im Aktor geht nicht, da nur interne Gerätetaste,
- Direktverknüpfung Mittel virtueller Gerätetaste geht nicht, da kein auslesen der Zeit aus Variable möglich ist
- Auslesen der Einschaltdauer im Aktir, kein Weg gefunden ...
Vorab schon mal Danke!
Gruss FredW
ich habe aktuell eine Frage aufgrund eines Problems mit dem Aktor HM-LC-Sw4-WM und dem Thema Einschaltdauer.
Über zwei dieser Aktoren mit jeweils 4 Kanälen schalte ich meine Gartenbewässerung. Am ersten Kanal von Aktor 1 hängt meine Gartenpumpe, an der weiteren Kanälen die jeweiligen Bewässerungsstränge, Strang1-Strang6.
In Abhängigkeit von Umweltbedingungen (Regen, Bodenfeuchtigkeit, ...) setze ich eine Timervariable (BewV1) in Sekunden (z.B. 900), die nachher die Einschaltzeit definiert.
Zu bestimmten Uhrzeiten setze ich eine weitere Variable Bew_On auf wahr, um die Bewässerung zu starten.
Wird diese Variable „wahr“, reagiert mein Programm Strang1 und setzt die Einschaltdauer des Aktors von Kanal2 auf die Sekunden, die vorher in der Variable BewV1 geschrieben wurde ...
Wenn Systemzustand Bew_On ist wahr bei Änderung auslösen
Dann
Geräteauswahl Strang_1 verzögert um 1 Sekunde Einschaltdauer mit BewV1
Geräteauswahl Strang_1 verzögert um 2 Sekunden Schaltzustand ein
Ist die Zeit abgelaufen, schaltet sich der Aktor Kanal 2 aus. Dieses Ausschalten bewirkt, dass das Programm Strang2 gestartet wird, da in der Wenn Bedingung steht ...
Wenn Geräteauswahl Strang_1 Schaltzustand: aus bei Änderung auslösen ...
usw.
Das funktioniert auch seit Monaten bis auf wenige Ausnahmen. In solchen Fällen scheint mir (meine Vermutung), dass die Einschaltdauer nicht korrekt und nur der Schaltzustand: ein übertragen wird. Dies äußert sich dadurch, dass der Strang sich nicht nach den zuvor definierten Sekunden (z.B. 900) ausschaltet und unendlich läuft.
Das Problem tritt, wenn es Auftritt, an den unterschiedlichen Strängen auf, mal Strang2 dann Strang4 ...
Wäre toll, wenn jemand eine Idee hätte, das sicherer zu machen.
Meine Ideen:
- Verweildauer im Aktor geht nicht, da nur interne Gerätetaste,
- Direktverknüpfung Mittel virtueller Gerätetaste geht nicht, da kein auslesen der Zeit aus Variable möglich ist
- Auslesen der Einschaltdauer im Aktir, kein Weg gefunden ...
Vorab schon mal Danke!
Gruss FredW
-
- Beiträge: 4155
- Registriert: 09.09.2012, 10:41
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 78 Mal
- Danksagung erhalten: 301 Mal
Re: Probleme mit Einschaltdauer
Ohne jetzt alles zu verstehen, was du uns zu schildern versuchst - das mit der Einschaltdauer verhält sich folgendermaßen:
Wenn du für ein Gerät eine Einschaltdauer setzt, wird die nicht ans Gerät übertragen sondern in der CCU zwischengespeichert.
Wenn dann (meist ja schon 1 Sekunde später im gleichen Programm) der eigentliche Einschaltbefehl folgt, wird nur ein Telegramm ans Gerät übertragen, in dem die (vorher zwischengespeicherte) Einschaltdauer mitgesandt wird.
Dieses Verhalten kann zu extremer Verwirrung führen, wenn - aus welchen Gründen auch immer - noch eine Einschaltdauer "wartet" und das Gerät dann eingeschaltet wird.
Wenn du für ein Gerät eine Einschaltdauer setzt, wird die nicht ans Gerät übertragen sondern in der CCU zwischengespeichert.
Wenn dann (meist ja schon 1 Sekunde später im gleichen Programm) der eigentliche Einschaltbefehl folgt, wird nur ein Telegramm ans Gerät übertragen, in dem die (vorher zwischengespeicherte) Einschaltdauer mitgesandt wird.
Dieses Verhalten kann zu extremer Verwirrung führen, wenn - aus welchen Gründen auch immer - noch eine Einschaltdauer "wartet" und das Gerät dann eingeschaltet wird.
Es gibt 10 Arten von Menschen: solche die Binärcode verstehen und solche, die ihn nicht verstehen.
Re: Probleme mit Einschaltdauer
Hallo manfredh,
Erst einmal Danke! Aber was sagt mir nun deine Antwort?
Ok, die Einschaltdauer wird in der CCU zwischengespeichert und danach mit dem Einschaltbefehl übertragen. Demnach müsste es die sicherste Methode und mein Vorgehen korrekt sein. Es funktioniert aber in sehr wenigen Ausnahmefällen nicht. Daher vermutete ich, dass „Einschaltdauer“ und „ein“ getrennt übertragen werden. Nach deiner Aussage dürfte das Problem erst gernicht auftreten, da der Aktor für die Einschaltdauer selbst verantwortlich ist.
Erst einmal Danke! Aber was sagt mir nun deine Antwort?
Ok, die Einschaltdauer wird in der CCU zwischengespeichert und danach mit dem Einschaltbefehl übertragen. Demnach müsste es die sicherste Methode und mein Vorgehen korrekt sein. Es funktioniert aber in sehr wenigen Ausnahmefällen nicht. Daher vermutete ich, dass „Einschaltdauer“ und „ein“ getrennt übertragen werden. Nach deiner Aussage dürfte das Problem erst gernicht auftreten, da der Aktor für die Einschaltdauer selbst verantwortlich ist.
- shartelt
- Beiträge: 7421
- Registriert: 14.01.2015, 14:59
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 524 Mal
- Danksagung erhalten: 753 Mal
-
- Beiträge: 7151
- Registriert: 31.12.2006, 15:18
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Rhein-Main
- Danksagung erhalten: 34 Mal
Re: Probleme mit Einschaltdauer
Hi,
bist Du sicher, das der Aktor wirklich unendlich lange eingeschaltet bleibt, oder fehlt nur die Aus-Meldung vom Aktor?
Wenn der Aktor mit Hardwaretimer eingeschaltet wird, schaltet der eigentlich auch zuverlässig wieder ab, außer der bekommt zwischendrin was anderes zugefunkt, was die Einschaltdauer überschreibt.
Wenn die Einschaltdauer im Aktor abgelaufen ist, meldet der Aktor seinen neuen Zustand aber nur per Broadcast, und nicht als bidirektionales Telegramm mit Quittungszwang, deswegen kann es durchaus sein, das die Zentrale nur den falschen Zustand kennt, und deswegen das Programm auch nicht weiterläuft.
Meiner Meinung nach einzige Chance, dem Treiben auf die Spur zu kommen: rfd auf "Alles loggen" stellen und das Syslog extern aufzeichnen und dann im Problemfall ganz konkret im Syslog schauen, was wann geschickt wurde, da sieht man auch, welche Einschaltdauer ursprünglich übermittelt wurde, und ob der Aktor mit Timer eingeschaltet hat (WORKING-Datenpunkt ist nur true, wenn ein Hardware-Timer läuft).
Der Familienvater
bist Du sicher, das der Aktor wirklich unendlich lange eingeschaltet bleibt, oder fehlt nur die Aus-Meldung vom Aktor?
Wenn der Aktor mit Hardwaretimer eingeschaltet wird, schaltet der eigentlich auch zuverlässig wieder ab, außer der bekommt zwischendrin was anderes zugefunkt, was die Einschaltdauer überschreibt.
Wenn die Einschaltdauer im Aktor abgelaufen ist, meldet der Aktor seinen neuen Zustand aber nur per Broadcast, und nicht als bidirektionales Telegramm mit Quittungszwang, deswegen kann es durchaus sein, das die Zentrale nur den falschen Zustand kennt, und deswegen das Programm auch nicht weiterläuft.
Meiner Meinung nach einzige Chance, dem Treiben auf die Spur zu kommen: rfd auf "Alles loggen" stellen und das Syslog extern aufzeichnen und dann im Problemfall ganz konkret im Syslog schauen, was wann geschickt wurde, da sieht man auch, welche Einschaltdauer ursprünglich übermittelt wurde, und ob der Aktor mit Timer eingeschaltet hat (WORKING-Datenpunkt ist nur true, wenn ein Hardware-Timer läuft).
Der Familienvater
-
- Beiträge: 3733
- Registriert: 23.09.2017, 12:04
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 120 Mal
Re: Probleme mit Einschaltdauer
Guten Abend
während wir noch auf den Screenshot warten ...
Ich bin da anderer Meinung, was die Einschaltdauer betrifft. Die Einschaltdauer wird von der CCU an den Aktor übertragen und gespeichert, bis der nächste Einschaltbefehl kommt. Also _nicht_ in der CCU zwischengespeichert und gemeinsam übertragen.
Test - ein Programm stellt nur die Einschaltdauer auf 2 min. Ein anderes Programm schaltet später den Aktor ein.
Leider komme ich in den nächsten 3 Wochen an keine CCU, um das selbst zu testen.
während wir noch auf den Screenshot warten ...
Ich bin da anderer Meinung, was die Einschaltdauer betrifft. Die Einschaltdauer wird von der CCU an den Aktor übertragen und gespeichert, bis der nächste Einschaltbefehl kommt. Also _nicht_ in der CCU zwischengespeichert und gemeinsam übertragen.
Test - ein Programm stellt nur die Einschaltdauer auf 2 min. Ein anderes Programm schaltet später den Aktor ein.
Leider komme ich in den nächsten 3 Wochen an keine CCU, um das selbst zu testen.
- Sammy
- Beiträge: 9172
- Registriert: 09.09.2008, 20:47
- Hat sich bedankt: 15 Mal
- Danksagung erhalten: 174 Mal
Re: Probleme mit Einschaltdauer
Einschaltdauer wird in der CCU gespeichert und gemeinsam mit dem nächsten Schaltbefehl übertragen.
Links: CCU-Logik, Tipps für Anfänger, WebUI-Doku, Expertenparameter, virtuelle Aktorkanäle
Inventur vom 22.01.14: 516 Kanäle in 165 Geräten, 132 Programme, 270 Direkte Verknüpfungen
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!
Inventur vom 22.01.14: 516 Kanäle in 165 Geräten, 132 Programme, 270 Direkte Verknüpfungen
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!
Re: Probleme mit Einschaltdauer
Hallo,
damit niemand so lange auf meinen Screenshot warten muss ...
So sehen alle 6 Programme aus, die jeweils einen Strang ein und wieder ausschalten. Ich wüsste nun nicht, wo ich etwas falsch gemacht habe.
Daher war meine Frage, wie kann ich prüfen ob der Aktor nach absenden der Einschaltzeit diese auch korrekt erhalten hat, bzw. gibt es weitere Möglichkeit dem Aktor zu sagen, nun bist du seit 1h eingeschaltet, das kann nicht sein, schalte aus, da es sonst eine Überschwemmung gibt.
@Familienvater,
aufgrund der Wassermenge habe ich nach ca. 1h die Aktion abgebrochen, d.h. ich habe den Aktor manuell ausgeschaltet.
@Sammy,
meine Vermutung war die, die auch von NickHM vertreten wurde. Wenn du aber das korrigierst, dann stimmt deine Aussage.
Frage ist und bleibt ... warum funktioniert das 50 x und 1 x nicht. Genau das 1 x möchte ich irgendwie abfangen.
Gruß FredW
damit niemand so lange auf meinen Screenshot warten muss ...
So sehen alle 6 Programme aus, die jeweils einen Strang ein und wieder ausschalten. Ich wüsste nun nicht, wo ich etwas falsch gemacht habe.
Daher war meine Frage, wie kann ich prüfen ob der Aktor nach absenden der Einschaltzeit diese auch korrekt erhalten hat, bzw. gibt es weitere Möglichkeit dem Aktor zu sagen, nun bist du seit 1h eingeschaltet, das kann nicht sein, schalte aus, da es sonst eine Überschwemmung gibt.
@Familienvater,
aufgrund der Wassermenge habe ich nach ca. 1h die Aktion abgebrochen, d.h. ich habe den Aktor manuell ausgeschaltet.
@Sammy,
meine Vermutung war die, die auch von NickHM vertreten wurde. Wenn du aber das korrigierst, dann stimmt deine Aussage.
Frage ist und bleibt ... warum funktioniert das 50 x und 1 x nicht. Genau das 1 x möchte ich irgendwie abfangen.
Gruß FredW
-
- Beiträge: 3733
- Registriert: 23.09.2017, 12:04
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 120 Mal
Re: Probleme mit Einschaltdauer
Hallo
wenn eine Einschaltzeit läuft ist in der WebUi ein Zahnrad zu sehen und der Datenpunkt "Working" müsste aktiv sein.
PS Du kannst im Programm einstellen
- Einschaltzeit 1h
- Einschalten verzögert um 2 sec
- Ausschalten verzögert um 1h 5min
Wenn der Aktor nach 1h aus geht, ist der zweite Befehl überflüssig. Sonst wird er eben 5 min später durch die CCU ausgeschaltet.
wenn eine Einschaltzeit läuft ist in der WebUi ein Zahnrad zu sehen und der Datenpunkt "Working" müsste aktiv sein.
PS Du kannst im Programm einstellen
- Einschaltzeit 1h
- Einschalten verzögert um 2 sec
- Ausschalten verzögert um 1h 5min
Wenn der Aktor nach 1h aus geht, ist der zweite Befehl überflüssig. Sonst wird er eben 5 min später durch die CCU ausgeschaltet.