Ankündigung

Einklappen
Keine Ankündigung bisher.

Frage zur Zeitsteuerung mit Unterbrechung

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Frage zur Zeitsteuerung mit Unterbrechung

    Hallo,

    ich habe eine Programmier Frage:

    Ich habe eine automatische Bewässerung. Ich schalte einen Kreis nach verschiedenen Bedingungen. In meinem Brunnen habe ich einen Schwimmschalter, der ausschaltet wenn der Brunnen leer ist. Jetzt möchte ich einen Kreis eine halbe Stunde bewässern. wenn jetzt der Brunnen nach 20 min leer ist soll des Bewässerungskreis ausgeschaltet werden. Wenn der Brunnen wieder voll ist soll der Keis wieder eingeschaltet werden und die noch verbleibenden 10 min bewässern.

    Meine Frage ist jetzt wie ich das am besten umsetzte. Ich muss mir ja merken die lange ein Kreis vorher schon an war. Um dann wenn der Brunnen wieder voll ist (nach ca. einer Stunde) soll es ja an dem Punkt wieder weiter gehen.

    Mir fehlt der Ansatz wie ich dieses Problem löse. Da da jemand einen Tipp?

    #2
    Mal Dir am besten ein Ablaufdiagramm bzgl. Deiner Abhängigkeiten und schaue Dir mal die Timerfunktion an. Ich mache ähnliches mit Alerts und Reminder, hier starte ich einen Timer mit Zeit x der dann nach Ablauf die Logik wieder triggert.

    Kommentar


      #3
      Danke für die Antwort. Könntest Du ein paar Beispiel Codes posten?

      Kommentar


        #4
        Nee, das macht m.E. gar keinen Sinn und Beispiele gibt's hier im Forum und auf Github schon einige. Wie gesagt, mal Dir mal ein Ablaufdiagramm und schaue Dir das Wiki von SH an. Wenn es dann bei den Details noch Probleme gibt helfe ich gerne.

        Kommentar


          #5
          Hi, folgendermaßen würde ich das realisieren:
          • Ventile werden per Treppenlicht für nur 2 Minuten eingeschaltet
          • Logik wird alle 60 Sekunden getriggert (cycle = 60)
          • Brunnen-Leer-Signal triggert auch die Logik
          • In der Logik:
            • erstmal feststellen, ob noch weiter bewässert wird
            • Wenn ja, wird ein Zähler hochgezählt
            • angenommen, bei 3 Bewässerungskreisen a 20 Min, 10 Min, 30 Min hätte man 60 Min Bewässerungszeit - der Zähler wird bei 60 wieder auf 0 gesetzt
            • Dann kann man einfach Kreis 1 beu 0<=Zähler<20 einschalten
            • Kreis 2 bei 20<=Zähler<30
            • Kreis 3 bei 30<=Zähler
          Gruß, Waldemar
          OpenKNX www.openknx.de

          Kommentar

          Lädt...
          X