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

    OK gerade am Studieren.

    Ich glaube das dem Eingang 1 jetzt der Startwert fehlt für die Berechnung da er sich nicht mehr über die Antwort Aktualisiert.

    Versuch noch folgendes.

    Schreibe zuerst einen wert auf 0/1/31
    Danach Impuls danach Lesen

    Wenn das nicht geht bin gerade Ratlos🧐

    Kommentar


      Jetzt wird wirklich spannend.
      Dachte zuerst dass es keinen Effekt hat. Aaaber:

      Log, Erläuterung unten:image.png
      • Beim ersten Impuls passiert nichts. (1)
      • Beim zweiten Impuls addiert er wie gewünscht (2)
      • Alle folgenden Impulse funktionieren tadellos
      • Beim ersten "Read" auf die Regenmenge (A), wird ebenfalls gerechnet und addiert
      • Beim zweiten und allen folgenden "Read" (B) nicht mehr
      Bin schon fast gewillt das so zu akzeptieren. ;-)
      Aber erklären kann ich es mir nicht...

      Danke dir jedenfalls für deine Hilfe!
      Angehängte Dateien

      Kommentar


        Zitat von thengsty Beitrag anzeigen
        Aber erklären kann ich es mir nicht...
        Aber ich , zumindest teilweise.

        Du hast angegeben: Alle Ausgänge senden bei Impulseingang. Dein Log sagt nichts dazu, wie es zu dem Wert 1.3 (Regenmenge) kommt, aber gehen wir davon aus, dass der Wert irgendwie gesetzt wurde.
        Dein Read liest diesen Wert -> passt.
        Dein nächster Regenimpuls macht das, was Du gesagt hast: Sende den Wert auf den Ausgang (1.3). Dieser Wert wird von Eingang empfangen und eine 0.26 drauf gerechnet. Der Wert ist jetzt 1.56. Vom Senden ist da ja keine Rede.
        Jetzt wird der nächste Regenimpuls empfangen. Es wird gesendet (1.56), dieser Wert wird empfangen und erneut 0.26 drauf gerechnet. Der Wert ist 1.82. Wieder wird nichts gesendet.
        ​Jetzt wird der nächste Regenimpuls empfangen. Es wird gesendet (1.82), dieser Wert wird empfangen und erneut 0.26 drauf gerechnet. Der Wert ist 2.08. Wieder wird nichts gesendet.
        ​Jetzt wird der nächste Regenimpuls empfangen. Es wird gesendet (2.08), dieser Wert wird empfangen und erneut 0.26 drauf gerechnet. Der Wert ist 2.33. Wieder wird nichts gesendet.
        ​Jetzt sind wir im Log genau auf der Zeile vor dem großen A.
        Ein Read liest den zuletzt berechneten Wert (2.33). Der Wert wird nicht irgendwie empfangen also wird auch nichts gerechnet.
        Weitere Reads lesen den zuletzt berechneten Wert (2.33)
        usw.

        Deine Denkfehler:
        Es wird nicht beim Impuls gerechnet, beim Impuls wird ausgegeben!
        Gerechnet wird beim Werteingang auf Eingang1.

        Ich kenne das Logikmodul nicht gut genug, um Dir eine Lösung nennen zu können, aber das Verhalten ist so, wie erwartet.

        Gruß, Waldemar
        OpenKNX www.openknx.de

        Kommentar


          Hallo mumpf,
          vielen Dank für deine sehr ausführliche Antwort! Das hat mir wirklich sehr geholfen beim Verständnis. Das Teil verhält sich genau wie von dir beschrieben.
          Jetzt muss ich mir nur noch überlegen wie ich das gelöst bekomme. ;-)
          Ich werde berichten...

          Danke und schönen Sonntag,
          Thomas

          Kommentar


            Hi Thomas,

            Was auf jeden Fall gehen würde, wäre eine Lösung mit 2 Kanälen:
            Kanal 1 ist wie jetzt definiert, nur addiert er eine 0. Er würde also bei einem Impuls den Eingangswert auf den Ausgang schicken (im Prinzip eine TOR-Funktion). Der Ausgang vom Kanal 1 ist mit dem Eingang vom Kanal 2 verbunden, der die 0.26 draufrechnet und bei jeder Änderung sendet. Der Ausgang von Kanal 2 ist wieder mit dem Eingang von Kanal 1 verbunden.
            Du hast dann zwar immer 2 Werte auf dem Bus, den zuletzt berechneten und sofort danach den neuen (auf 2 verschiedenen GA natürlich), aber Du musst ja nur den neuen auswerten.

            Gruß, Waldemar
            OpenKNX www.openknx.de

            Kommentar


              Hi Waldemar,
              nochmals recht herzlichen Dank für deine Hilfe. Die von dir vorgeschlagene Lösung funktioniert genau wie beschrieben.
              Habe das eben umgesetzt und bin damit sehr happy. Man muss nur drauf achten dass man beim Reset der Regenmenge diesen Wert nicht auf 0,0 zurücksetzt. Weil dann rechnet er beim nächsten Impuls gar nicht erst los. Ich setze die Regenmenge daher einfach auf 0,01 zurück. Das ist hinreichend genau.

              image.png

              Danke nochmal! Wieder eine Funktion mehr vom zentralen Server ​umgezogen auf den Bus.

              Thomas

              Kommentar

              Lädt...
              X