Ankündigung

Einklappen
Keine Ankündigung bisher.

Herausforderungen für das MDT Logikmodul V2

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

    Hi,

    hängt davon ab, was Du möchtest. Das obige Flip Flop ist für Signallogik und nicht für Eventlogik, also für statische Signale und nicht für Telegramme geeignet.

    Ziehen wir es Mal von hinten auf: nehmen wir an, Dein S sendet immer eine 1, der R immer eine 0 und dem Telegrammempfänger Q ist es egal, dass mehrmals eine 1 bzw. eine 0 hintereinander kommen kann, musst du gar nichts machen. Einfach S, R und Q mit einer GA verbinden. Das ist nämlich das klassische schalten, das es in KNX schon immer gibt.

    Jetzt muss man gucken, wie die Ausgangssituation ist: Sendet S oder R immer den gleichen, aber falschen Wert (also immer 1 statt 0 oder immer 0 statt 1), muss man invertieren.

    Gibt S bzw. R sowohl 0 wie auch 1, muss man nochmal filtern und nur 0 (bei R) bzw. 1 (bei S) durchlassen.

    Und wenn Q immer nur einmal 1 senden soll, egal wie oft S kommt und auch nur einmal 0, egal wie oft R kommt, brauchst Du noch eine Identität am Ausgang, die nur sendet, wenn der Wert sich ändert.

    Es geht also mit 0-5 Logiken (2 Inverter, 2 Filter, eine Identität). Das das MDT Logikmodul pro Logikkanal mehrere dieser Logiken abbilden kann, sollte man maximal 3 Kanäle brauchen.

    Wenn du jetzt schreibst, was du brauchst, könnten wir über eine konkrete Realisierung nachdenken.

    Gruß, Waldemar
    OpenKNX www.openknx.de

    Kommentar


      Ich brauche ein richtiges FlipFlop. Wenn der S einmal auf 1 geht, dann kann der S senden was er will, der Ausgang bleibt immer auf 1. Erst wenn wieder ein Reset kommt, dann wir der Ausgang auf 0 zurückgesetzt.

      Meine aktuelle Realisierung ist auch mit 3 Kanälen (2x Inverter, 1 AND Logik), dachte nur das geht auch einfacher mit 1 Kanal.
      Zuletzt geändert von STSC; 15.01.2022, 18:15.

      Kommentar


        Für Telegramme gibt es Filter:
        • Beim S-Eingang muss nur die '1' durchgelassen werden, die '0' wird weggefiltert
        • Der R-Eingang wird genau so gefiltert und dann invertiert auf den gleichen Ausgang gelegt.

        Kommentar


          Zitat von knxPaul Beitrag anzeigen
          Für Telegramme gibt es Filter:
          • Beim S-Eingang muss nur die '1' durchgelassen werden, die '0' wird weggefiltert
          Das funktioniert mit einem reiner Filter nicht.
          z.B. S 1 - 0 - 1, dann würde er zwei mal eine 1 senden. Er darf aber nur einmal eine 1 senden. Erst nach einem Reset darf er wieder eine 1 senden.

          Kommentar


            Nimm die Steuertabelle, zwei Eingänge, Objektyp Ausgang = 1 Bit. Eingang 1 wird dein Signal, Eingang 2 verbindest du mit dem Ausgang.

            Bedingung 1: 10 -> Wert 1

            Dann sollte es nur einmal gesendet werden.

            Kommentar


              Hi,

              hab das gerade ausprobiert, gleiche Idee wie von Cybso :

              FlipFlop.jpg
              FlipFlop-2.jpg
              Viel Spaß,
              Waldemar
              OpenKNX www.openknx.de

              Kommentar


                Mit einer stinknormalen OR-Logik sollte es übrigens genauso funktionieren. Ausgang an einen der Eingänge, und senden "nur 1" bei Änderung. Spart dir ggfs den Kanal im Logikmodul :-)

                Kommentar


                  Cybso: Da kann ich Dir allerdings nicht zustimmen bzw. es würde mich interessieren, wie das gehen soll. IMHO hast Du mit dem OR ein "Sende 1 sobald eine 1 kommt und danach nie wieder was" gebaut.

                  Das mit der Steuertabelle ist schon prima, lässt sich setzen und zurücksetzen und wiederholt auch nichts.

                  Gruß, Waldemar
                  OpenKNX www.openknx.de

                  Kommentar


                    Zitat von mumpf Beitrag anzeigen
                    IMHO hast Du mit dem OR ein "Sende 1 sobald eine 1 kommt und danach nie wieder was" gebaut.
                    Das will er doch auch?

                    "Er darf aber nur einmal eine 1 senden. Erst nach einem Reset darf er wieder eine 1 senden."

                    Ich habe "Reset" hier als Busreset gelesen. Falls damit aber gemeint war, dass eine Eingangs-GA mit 0 kommt, dann ist tatsächlich die Steuertabelle der einfachste Weg.
                    Zuletzt geändert von Cybso; 15.01.2022, 23:46.

                    Kommentar


                      In der Tat verwende ich aktuell ein AND-Logik mit "nur 1", das hat für mich den Vorteil, dass der R erst mal auf 1 gehen muss um die Logik zu aktivieren. Ein späteres S läuft dann genau einmal durch und setzt dann das R wieder auf 0.

                      Aber wie man es auch dreht, ich komme immer auf mindestens 3 Kanäle

                      Bei der Steuertabellen-Lösung bräuchte ich vermutlich sogar 4 Kanäle, müsste ich aber ausprobieren.
                      - 1 Kanal um den R in eine neue GA zu puffern; bei mir sind das zentrale Steuerelement die nicht überschreiben werden sollen (z.B. Nacht = 1); Inverter: Eingang=Ausgang
                      - 1 Kanal, damit am Steuertabellen-Ausgang nur eine 1 durchgelassen wird für den S; Inverter: Eingang=Ausgang (nur 1)
                      - 1 Kanal, damit der R automtisch geresettet wird; Inverter: Eingang=Ausgang invertiert (nur 0)

                      Kommentar


                        So sieht das momentan bei mir aus:

                        F1: AND Gatter mit "nur 1" am Ausgang
                        Eingang 1: Setzer (1/1/10)
                        Eingang 2: Reset (1/1/0)
                        Ausgang: 1/1/20

                        F2: Inverter : Eingang = Ausgang
                        Eingang 1: Tag / Nacht (Tag = 0, Nacht = 1)
                        Ausgang 1: Reset (1/1/0)

                        F3: Inverter : Eingang -> Ausgang invertert (nur 0)
                        Eingang 1: Gatter-Ausgang 1/1/20
                        Ausgang 1: Reset (1/1/0) (nur 0)

                        Kommentar


                          Hi,

                          das ist kein RS-Flip-Flop, das ist ein Filter, der nur ein einziges Mal in der Nacht eine 1 durchlässt. Das hättest Du auch gleich sagen können.

                          Nimm folgende Steuertabelle:
                          FlipFlop.jpg
                          FlipFlop-2.jpg
                          Das macht das, was Deine 3 Kanäle machen, bis auf die Tatsache, dass es auch der Ausgang beim Umschalten von Nacht auf Tag eine 0 sendet. Falls Du das nicht haben willst, musst Du hinter den Ausgang noch eine Identität hängen, der nur 1 durchlässt.
                          Appropos: Einen Inverter mit Eingang = Ausgang gibt es nicht, das heißt Identität. Und nein, nur weil MDT es "einen Inverter, der nicht invertiert" nennt, wird es nicht Richtig...

                          Aber selbst mit der Identität sind es max. 2 Logikkanäle.

                          Gruß, Waldemar


                          OpenKNX www.openknx.de

                          Kommentar


                            Das ist ziemlich genial so! Danke! Ich werde das ganze mal die Tage testen....

                            Kommentar


                              Ich glaube nicht, dass das so funktioniert wie gewünscht.

                              110: Sendet einmal den Wert 1, weil anschließend 111, aber nur bei Nacht

                              x01: Resettet den Ausgang auf 0 bei Wechsel von Nacht auf Tag

                              Wenn ich dich richtig verstehe, dann willst du aber immer eine einzelne 1 gesendet haben, egal ob Tag oder Nacht, und erst beim Wechsel von Tag auf Nacht soll das wieder zurückgesetzt und eine neue 1 gesendet werden. Korrekt?

                              Kommentar


                                Nein, nur bei Nacht soll einmalig eine 1 möglich sein. Erst bei der nächsten Nacht soll das wieder möglich sein. Unter Tag gar nicht.
                                Ich denke schon, dass das geht... muss es aber auch erst noch testen.

                                Kommentar

                                Lädt...
                                X