Ankündigung

Einklappen
Keine Ankündigung bisher.

Zeitgesteuerte Sperre

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

    Zeitgesteuerte Sperre

    Hallo zusammen,

    seit einigen Tagen versuche ich zwischendurch, eine Schaltung zusammenzubauen, die folgendes "Problem" löst:

    Ein Taster sendet bei Druck eine 0. Wenn nun der Taster innerhalb einer gewissen Zeitspanne 2 Mal gedrückt wird, möchte ich die zweite 0 anders interpretieren.
    Etwa: Mit der ersten 0 schalte ich alle Lampen im Zimmer aus, mit der zweiten 0 alle Steckdosen, aber eben nur dann, wenn innerhalb von 3 Sekunden die zweite 0 gesendet wird. Wenn die zweite 0 erst nach 4 Sekunden oder später kommt, heißt sie weiterhin nur "alle Lampen aus".

    Es muss aber nicht zwingend die gleiche Gruppenadresse sein. In einer anderen Situation habe ich 2 Gruppenadressen, bei denen die zweite Gruppenadresse anders interpretiert werden soll als üblich, wenn sie "kurz nach" der ersten gesendet wird.

    In allen Fällen soll das Eintreffen der zweiten Gruppenadresse die Schaltung wieder zurücksetzen.

    Als Bausteinbeschreibung sähe das so aus:

    E1: Start des Bausteins bei 1, Stop bei 0
    E2: Zeit in Sekunden, setzt E1 nach E2 Sekunden wieder auf 0
    E3: Signal

    A1: =E3, falls innerhalb von E2 Sekunden nach E1 empfangen, setzt dann E1=0

    Man könnte A1 auch zum Rückkoppeln verwenden, um E1 wieder auf 0 zu setzen.

    Meine Idee war, über ein RS-Flipflop und Telegrammverzögerer eine Sperre zu bedienen, die mir dann den zweiten Wert zurücksendet, bis das verzögerte Telegramm über das RS-FlipFlop die Sperre wieder ausschaltet. Allerdings hat mir der Telegrammverzögerer immer die Sperre zurückgesetzt, auch, wenn das zweite Telegramm schon durch war. D.h. ich konnte die Schaltung nicht 2 Mal kurz hintereinander triggern, da dann noch die Telegrammverzögerung des ersten Triggerns griff.

    Als selbstgeschriebener Baustein dürfte das kein Hexenwerk sein. Da fehlt mir allerdings die Erfahrung.

    Wie würdet ihr das lösen?
    openHAB 4.2

    #2
    hallo tokamak,

    kann Dein Schalter langer / kurzer Tastendruck? Das wäre die einfachste Möglichkeit das einzuspielen.

    Peter
    never fummel a running system...

    Kommentar


      #3
      Hallo Peter,

      ja, kann er. Allerdings wird die 0 schon beim langen Tastendruck gesendet. Auf "kurz" liegt das Umschalten für die Deckenbeleuchtung.

      Außerdem würde das für die zweite Situation mit 2 unterschiedlichen Gruppenadressen nicht helfen.

      Viele Grüße
      /Tokamak
      openHAB 4.2

      Kommentar


        #4
        Torsteuerung - mit 1. "0" freigeben und mit einem Zeitglied innerhalb der nächsten 3 Sekunden wieder sperrren.

        Bedingt aber, daß Du im System einen Baustein/Logikmodul mit entsprechender Möglichkeit hast.
        Gruss
        GLT

        Kommentar


          #5
          Ich nehme dazu regelmäßig den baustein:

          DaCom - Database Computing GmbH

          Als Zeit habe ich 0.3 eingetragen, 1 ist zu lang.
          Gruß Matthias
          EIB übersetzt meine Frau mit "Ehepaar Ist Beschäftigt"
          - PN nur für PERSÖNLICHES!

          Kommentar


            #6
            Zählerbaustein

            Hallo.
            So auf die Schnelle würde ich sagen:

            mit Zählerbaustein nach vergleicher die entsprechenden Telegramme absetzten.
            reset des Zählerbausteines mit einem Telegrammverögere

            könnte hinhauen
            Gruss Aendu
            Gruss Aendu
            HS3/HS2/Pronto/.......

            Kommentar


              #7
              @GLT
              Mir ist leider nicht klar, welche Bausteine du meinst.

              @Matthias
              Eine Nebenbedingung, die ich nicht genannt hatte, ist, dass ich alles auf dem HS machen wollte, also keinen Sensor oder Aktor umprogrammieren möchte. Die meisten meiner Taster senden 0 oder 1 direkt an Aktoren oder schalten diese um, da das Haus grundlegend auch dann funktionieren soll, wenn der HS nicht da ist.
              Eine Taste in jedem Raum schaltet bei langem Druck mit einer 0 alle Lampen in diesem Raum aus. Das möchte ich gerne ergänzen (erste 0: Licht, zweite 0: Steckdosen). Wenn ich die Taster umprogrammieren müsste (1 bei steigender Flanke, 0 bei fallender Flanke), bäuchte ich den HS, um dies wieder auf die Aktoren umzusetzen. Andernfalls würde die 1 alle Lampen im Raum einschalten.

              @Aendu
              In dem Moment, wenn ein Telegrammverzögerer oder ähnliches dabei ist, geht es schief. Daher kann man das meines Erachtens nicht verwenden.
              Beispiel:
              Die Schaltung sei so aufgebaut, dass die zweite 0 spätestens nach 5 Sekunden eingegeben werden muss.
              Angenommen, die 0en werden so gesendet: Erste 0 bei 0, zweite bei 2, dritte bei 4, vierte bei 6 Sekunden. Dann wird der Telegrammverzögerer bei der ersten 0 auf 5 Sekunden aufgezogen und die Schaltung, nachdem die dritte 0 nach 4 Sekunden eingetroffen ist, nach der 5. Sekunde rücksetzen, weswegen die vierte 0 nicht mehr zum Zuge kommt.

              So ist es mir in meiner ersten Schaltung passiert. Das ist in meinem Beispiel sicher nicht erheblich, war aber dennoch der Grund, weswegen ich mich von der Lösung verabschiedet habe. Denn ich würde auch gerne ein Muster erzeugen, das immer funktioniert.

              Darüber habe ich dann eben nochmal sinniert und bin beim Durchforsten mal wieder auf die Treppenhauslichtfunktion gestoßen. Daraus habe ich dann die angehängte Schaltung aufgebaut.

              Die Treppenhausschaltung wird durch eine 0 in der Eingangsbox getriggert, die negiert wird. Der Treppenhauslichtbaustein öffnet für maximal 5 Sekunden die Sperre. Diese lässt in diesem Zeitraum ein mögliches zweites Gruppentelegramm durch. Die Sperre wird wieder unpassierbar, wenn die 5 Sekunden des Treppenhausbausteins abgelaufen sind oder die Rückkopplung des zweiten Telegramms den Eingang über das UND-Gatter auf 0 gesetzt hat.

              Leider lässt der Experte diese Schaltung wegen eines vermeintlichen Zyklus' durch die Rückkopplung nicht zu, der zwar formal da ist, aber logisch nicht.

              Verflixt.

              Kann ich den Experten konfigurieren, dass er den formal vorhandenen Zyklus zulässt?
              Angehängte Dateien
              openHAB 4.2

              Kommentar


                #8
                Ne, kannst du nicht. Und das ist in dem Fall auch gut so

                Was du tun kannst, ist die Linie durch ein internes KO ersetzen. Aber sich sage die gleich, du wirst staunen!
                Gruß Matthias
                EIB übersetzt meine Frau mit "Ehepaar Ist Beschäftigt"
                - PN nur für PERSÖNLICHES!

                Kommentar


                  #9
                  Warum ist das gut so? Egal, was durch die Sperre durchgeht (wenn überhaupt): Das Treppenhauslicht erhält über das UND-Gatter eine 0, wird damit ausgeschaltet, die Sperre unpassierbar. Nichts geht mehr, auch keine Endlosschleife.
                  openHAB 4.2

                  Kommentar


                    #10
                    Hallo Tokama
                    hier ein Basis Modul, mit dem sollte es machbar sein.
                    es fehlt die Auswertung des Zählers.
                    Im weiteren muss man sich überlegen wie das mit dem ausschalten (0) gehen soll.

                    Gruss Aendu
                    Angehängte Dateien
                    Gruss Aendu
                    HS3/HS2/Pronto/.......

                    Kommentar

                    Lädt...
                    X