Probleme mit Einschaltdauer

Allgemeines zur HomeMatic Haussteuerung

Moderator: Co-Administratoren

Benutzeravatar
Homoran
Beiträge: 8613
Registriert: 02.07.2013, 15:29
Wohnort: Köln
Danksagung erhalten: 4 Mal

Re: Probleme mit Einschaltdauer

Beitrag von Homoran » 11.06.2018, 19:40

Und leere sonstwenn haben in Programmen nichts zu suchen.
Das führt zu reproduzierbaren Problemen

Gruß Rainer
Alle meine Hinweise sind auf eigene Gefahr umzusetzen. Immer einen Fachmann zu Rate ziehen!

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

Re: Probleme mit Einschaltdauer

Beitrag von JRiemann » 11.06.2018, 20:02

Und was noch viel wichtiger ist... Das WENN und das SONST-WENN gehört in getrennte Programme weil die Chance hoch ist das eine unerwünschte Schaltung passiert.
Wenn z.B. "Bew-Rasen-voren" endet und der Aktor ausschaltet, dann wird durch die Statusänderung das Programm aus dem SONST-WENN heraus getriggert. Der Durchlauf beginnt in der ersten Zeile des Programms, der WENN-Block ist erfüllt weil "Bew-On" wahr ist und anschl. wir das DANN ausgeführt und "Bew-Rasen-vorne" nochmals eingeschaltet. Solange "Bew-On" wahr ist hast Du damit eine Endlosschleife.

Ich bezweifle also das das Programm jemals richtig bzw. wie gewünscht gearbeitet hat.
Viele Grüße!
Jörg

Gluehwurm
Beiträge: 12432
Registriert: 19.03.2014, 00:37
System: in Planung
Hat sich bedankt: 105 Mal
Danksagung erhalten: 380 Mal

Re: Probleme mit Einschaltdauer

Beitrag von Gluehwurm » 11.06.2018, 21:31

Das sind schon zwei getrennte Programme, nur die Titelleiste wurde ein Mal abgeschnitten. :wink:

Leider fehlen wieder die Programme, die die Zeiten setzen. Stimmen die hinterlegten Zeiten in der SysVar oder fängt das Problem vielleicht schon viel früher an?

Xel66
Beiträge: 14085
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 580 Mal
Danksagung erhalten: 1492 Mal

Re: Probleme mit Einschaltdauer

Beitrag von Xel66 » 11.06.2018, 23:28

Wir die Einschaltzeit auch als Integer- oder Gleitkommawert übergeben oder ist es ggf. ein String? Auch dieses kann zu Problemen führen.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

FredW
Beiträge: 297
Registriert: 01.05.2013, 16:20
Hat sich bedankt: 1 Mal

Re: Probleme mit Einschaltdauer

Beitrag von FredW » 12.06.2018, 12:55

Hallo,

erst einmal herzlichen Dank für die Rückmeldungen. Ich versuche die Fragen zu beantworten:

@NickHM,

deine Antwort hat mir einen Tipp gegeben, dem ich nachgehen werde. "Datenpunkt Working" müsste aktiv sein. Das werde ich prüfen, sobald das Problem wieder auftritt. Ausschalten verzögert ist eine gute Idee, ich kann sie aber nicht einsetzen, da ich die Einschaltdauer aus einer Variablen auslese, deren Wert sich ändern kann. Der Wert dieser Variablen liegt zwischen 300 und 1200 Sekunden. Die Ausschaltverzögerung kann ich nicht variabel übergeben. Muss da aber nochmals nachdenken.

@JRiemann,
Der Durchlauf beginnt in der ersten Zeile des Programms, der WENN-Block ist erfüllt weil "Bew-On" wahr ist und anschl. wir das DANN ausgeführt und "Bew-Rasen-vorne" nochmals eingeschaltet. Solange "Bew-On" wahr ist hast Du damit eine Endlosschleife.
Kann ich so nicht nachvollziehen und ist auch so noch nie eingetreten.
EDIT: Mein Versuch ... alle Programme für die Stränge 2-6 ausgeschaltet und Bew_On auf True gesetzt. Programm startet, Ventil wird für die Sekunden, die in der Variablen stehen eingeschaltet. Nach Ablauf der Zeit schaltet sich Strang 1 und nichts mehr passiert. Ich muss lediglich dann manuell Bew_ON auf false setzen, da das sonst im letzten Strang-Programm passiert.
Ich bezweifle also das das Programm jemals richtig bzw. wie gewünscht gearbeitet hat.
Das Programm läuft seit ca. 3 Jahren mit minimalen Änderungen (z.B. Anzahl Stränge, Einschaltzeit variabel) ohne Probleme, bis auf diese eine seltene Ausnahme

@Glühwurm,

kein Programm setzt eine Zeit (siehe Screenshot). Über ein Zeitmodul (oder per Fernbedienung bzw. App Remote) setze ich die "Bew_On" Variable auf "true". Danach läuft der erste Bewässerungsstrang los. Schaltet dieser ab, wir der zweite Strang gestartet usw.

@Rainer,

ich konnte das bisher noch nicht feststellen, dass leere "sonstwenn Bedingungen" Probleme bereiten. Aber eventuell können wir das beim nächsten HUG RheinMain besprechen.
Dateianhänge
Bildschirmfoto 2018-06-12 um 12.38.26.png

Gluehwurm
Beiträge: 12432
Registriert: 19.03.2014, 00:37
System: in Planung
Hat sich bedankt: 105 Mal
Danksagung erhalten: 380 Mal

Re: Probleme mit Einschaltdauer

Beitrag von Gluehwurm » 12.06.2018, 17:56

FredW hat geschrieben:... kein Programm setzt eine Zeit (siehe Screenshot). Über ein Zeitmodul (oder per Fernbedienung bzw. App Remote) setze ich die "Bew_On" Variable auf "true".
Und wie funktioniert dann das ?
FredW hat geschrieben:In Abhängigkeit von Umweltbedingungen (Regen, Bodenfeuchtigkeit, ...) setze ich eine Timervariable (BewV1) in Sekunden (z.B. 900), die nachher die Einschaltzeit definiert.
Aber mir isses zwischenzeitlich egal, habe keine Lust jeden Wurm einzeln rauszuziehen. Bin raus.

FredW
Beiträge: 297
Registriert: 01.05.2013, 16:20
Hat sich bedankt: 1 Mal

Re: Probleme mit Einschaltdauer

Beitrag von FredW » 13.06.2018, 08:27

@Gluehwurm,

ich habe doch geschrieben und per Screenshot gezeigt, wie ich die Variable Bew_ON per Zeitmodul auf "true". Was ist an dem Screenshot unklar? Über die App PocketControlHM kann ich auch die Variable auf true setzen und damit den Programmablauf starten.

Die Variable BewV1 enthält derzeit fest 300 Sekunden, um jede andere "Störung" auszuschließen. Aber du solltest mir schon nach 7 Jahren Homematic vorher FS20 und sehr vielen Jahren Programmierung zutrauen, dass ich weiß, wie man die Variable mit einer Zahl vorbelegt, wie z.B. dom.GetObject("BewV1").State("300");
Eugen Stall (Leuchtturm) hat auf seiner Homepage vieles zu dem Thema Feuchtigkeitssensor geschrieben und auch Coding veröffentlicht. Ich kann nur nochmals betonen, dass der Programmablauf über Wochen fehlerfrei funktioniert und nur in wenigen Ausnahmen das Problem auftritt.

Ich gebe ja gerne auf jede Frage eine Antwort ...

Danke und Gruß Fred

alchy
Beiträge: 10752
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 672 Mal

Re: Probleme mit Einschaltdauer

Beitrag von alchy » 13.06.2018, 09:03

Die Einschaltdauervariable über eine verknüpfte Systemvariable dynamisch zu setzen funktioniert sehr gut.
Hat auch den Vorteil, das man alleine durch die Einschaltdauer etwas triggern lassen kann.
Vielleicht schreib ich da mal ne Anleitung.
Hab mal schnell eine >> Anleitung << zusammengeschrieben.
Aber du solltest mir schon nach 7 Jahren Homematic vorher FS20 und sehr vielen Jahren Programmierung zutrauen, dass ich weiß, wie man die Variable mit einer Zahl vorbelegt, wie z.B. dom.GetObject("BewV1").State("300");
Naja, wenn man es streng nimmt, ist das Script fehlerhaft. :mrgreen: aber es funktioniert trotzdem (noch?).

Alchy
Zuletzt geändert von alchy am 13.06.2018, 09:59, insgesamt 1-mal geändert.
Grund: strike

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

FredW
Beiträge: 297
Registriert: 01.05.2013, 16:20
Hat sich bedankt: 1 Mal

Re: Probleme mit Einschaltdauer

Beitrag von FredW » 13.06.2018, 09:31

Hallo Alchy,

danke dir ... funktioniert alles (noch) ... 8)

Gruß Fred

alchy
Beiträge: 10752
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 672 Mal

Re: Probleme mit Einschaltdauer

Beitrag von alchy » 13.06.2018, 10:28

mit dem Script sollte nur ein Hinweis sein. :wink: Man weiß ja nie, wann da jemand was daran ändert.
Solange man Logikvariablen auch Integerwerte oder auch Zahlen oder Zahlen als String getarnt unterjubeln kann, glaube ich aber so schnell auch nicht daran.

egal

Was die Benutzung der "dynamischen" Einschaltdauer angeht, habe ich mal schnell eine >> Anleitung << zusammengeschrieben.
Die Lösung kannte wohl noch nicht jeder.

Zu deinem Problem. So wie ich es verstanden habe funktioniert Strang 1 immer richtig?
die weiteren Kanäle werden dann im Fehlerfall nicht abgeschalten aber immer ein?
Klingt interessant, muss ich mal bei Gelegenheit nachstellen.

hast du mal die Kanäle und alle Beteiligten mal auf Protokollieren gestellt? Mit einer fixen relativ kurzem Einschaltdauer sollte man da schön den Programmablauf im Systemprotokoll nachvollziehen können.


Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

Antworten

Zurück zu „HomeMatic allgemein“