Ankündigung

Einklappen
Keine Ankündigung bisher.

HS-Anfängerfrage: Logikproblem

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

    HS-Anfängerfrage: Logikproblem

    Tja, jetzt hab' ich dann auch einen HS und beginne langsam, mir über Fragen Gedanken zu machen, die ich früher gar nicht kannte

    Ich habe den HS prinziell am Laufen, nutze ihn auch schon für einfachste Logikschaltungen und wollte jetzt hier weitermachen (Visu und der ganze andere Luxus kommt später ...). Passend zur Jahrezeit geht es mir um die Heizung:

    Ich möchte die Heizungsbetriebmodi von Konnex (1Byte) auf Einzelbit und zurück umrechnen. Ich fahre zwar 1Byte, aber auf einigen Tastern und deren Status-LEDs will ich direkt zwischen z.B. "Standby" und "Komfort" wechseln, die Taster sind aber ziemlich primitiv von den Möglichkeiten. Also der HS (auf dem BJ ControlPanel hab ich es am laufen, aber das Panel ist schon "überfüllt")

    Es gibt die beiden Abhängigkeiten:
    • 1Byte-Betriebsart setzt bei Änderung die Einzelbits
    • Einzelbits setzen bei Änderung die 1Byte-Betriebsart
    also z.B.
    ich setzen die GA für 1Byte auf "01" (Komfort), dann muss Standby=0, Komfort=1 und Nachbetrieb=0 werden.
    Setze ich umgekehrt z.B. "Standby=1", dann muss die 1Byte-GA auf "02" (Standby) gehen und zusätzlich die Bitwerte Komfort=0 und Nacht=0.

    Ich habe schon mit der Logik gespielt, bin aber immer wieder in Schleifen und (natürlich) nicht funktionierenden Ausgaben gelandet.

    Ich brauch keine fertige Lösung (möchte ja selber dazulernen), aber gerne ein paar Tips, welche Logikbausteine man für die Umwandlungen Bit-Status zu Byte-Wert und umgekehrt am besten nimmt. Wenn Ihr mir noch einen Tipp gebt, wie man die Schleifen sicher vermeidet, dann wäre das eine weitere Hilfe. In den Foren habe ich mit meiner Suche leider nix gefunden.


    Grüße,
    Hartmut

    #2
    Hallo Hartmut,

    Deine beschribung der Funktion ist sehr ausgiebig. Leider vergisst Du, wie so Viele in solchen Fällen, die Kernfunktion zu beschriben: d.h. das was Du eigentlich damit bezweckst. Dann würden vieleicht andere Lösungen ersichtlich werden. Denn das was Du machen wilst führt unweigerlich, wie Du selbst sagst, zu Schleifen, welche im HS schwer aufzulösen sind, d.h. vermeiden dass es irgend einen Fall gibt in dem die Schleife endlos Daten schickt.

    Ich habe einen Baustein geschrieben der Bitwerte nach KNX Byte umwandelt, und dies unter berücksichtigung der normalen Priorität wie in den meisten (alle?) RTRs implementiert ist wenn mehrere Bits auf 1 sind. Allerdings kann diese Priorität in meinem Baustein parametriert werden.

    Einen Baustein für den Umgekehrten Fall habe ich noch nicht geschrieben da ich dies noch nicht gebraucht habe. Wobei wir wieder bei der Frage sind warum Du eigentlich beide Richtungen brauchst ?

    Gruss,
    Gaston

    Kommentar


      #3
      Wenn du am RTR nur 2 Betriebsmodis umschalten willst, mit dem 1byte Konnex-Objekt, kannst du 2 Tasten auch als Wertgeber definieren.

      Ggf. würde es auch sinn machen
      1) Die Betriebsmodi nur über die VISU zu ändern
      2) Die Betriebsmodi automatisiert zu ändern
      3) Die Betriebsmodi durch Zeitschaltuhren zu ändern.

      Kommentar


        #4
        Danke für die Hinweise bisher.

        @Gaston: Ich dachte, dass die Beschränkung auf die Kernproblematik der Umwandlung es einfacher machen würde, einen Hinweis zu bekommen. Natürlich wird man meine Anforderung auch anders lösen können, aber da müßte ich wirklich weit ausholen ...
        Ich hatte irgendwie gedacht, dass die Umwandlung ein "alltägliches" Thema sei und war schon erstaunt, dass ich nicht einen fertigen Baustein im HS gefunden hatte.
        Köntest / Würdest Du Deine Oneway-Lösung dem Forum zur Verfügung stellen (Downloadbereich ?)


        @EIB-Freak
        Wenn du am RTR nur 2 Betriebsmodis umschalten willst, mit dem 1byte Konnex-Objekt, kannst du 2 Tasten auch als Wertgeber definieren.
        Guter Vorschlag, aber mein Punkt ist, dass ich gerne von zwei (tschuldigung) "stroh-doofen" Merten Taster 6234xx die Modi umschalten möchte und der kann fast gar nichts. Wertgeber ist leider nicht.



        Ich probiere mal selbst weiter, ich kann mir nicht vorstellen, dass mein ControlPanel etwas kann, was ich nicht mit dem HS auch abbilden kann . (Das ControlPanel könnte ich auch weiter dafür benutzen, aber es widerstrebt mir, ein "bißchen Logik hier" und ein "bißchen Logik dort" zu haben)

        Danke und Gruß
        Hartmut

        Kommentar


          #5
          Betriebsart RTR bidirektional umrechnen

          Hallo Hartmut,
          konntest du das Problem der Umrechnung zwischenzeitlich mit dem HS lösen?
          Ich habe BJ Triton RTR und die können nur die alten 1-Bit GA senden bzw. lesen. Der Quad Client kann aber nur die 1-Byte Variante. Das Dilemma ist, das sowohl dir Vorort-Bedienung am RTR als auch die über den QC ohne Schleife in der HS Logik funktionieren sollte.
          Mich würde auch interessieren, wie du das im BJ Controlpanel gelöst hast.

          Falls ich trotz intensiver Suche die Lösung übersehen habe, bitte ich um Entschuldigung, wäre aber für einen Hinweis für Suchbegriff und Lösung dankbar.

          Danke und viele Grüße
          Mike

          Kommentar


            #6
            Hi Hartmut,
            Zitat von HartmutB Beitrag anzeigen
            welche Logikbausteine man für die Umwandlungen Bit-Status zu Byte-Wert und umgekehrt am besten nimmt.
            Not sure I get you right, but I've written a Baustein that converts bit value (i.e. coming from the RTR status byte) to corresonding text.
            As an example:
            x02 = night
            x00 = standBy
            x04 = comfort
            I use it to display the RTR current mode in the Visu
            If this is what you need, you could eventually test it.

            If you want your output in pure numeric form, then the Baustein "Nummer des eingangs" will do it.
            I've modified it to cope for my requirements.

            Kommentar


              #7
              Hallo Mike,

              uups, das (mein) Posting ist ja schon lange her ...

              Ich habe das jetzt alles im HS gelöst, deshalb ist das ControlPanel inzwischen außen vor. "Früher" hatte ich es mal im Panel, aber ich kann das (ehrlich gesagt) nicht mehr nachvollziehen, war ein bißchen "von hinten durch die Brust ins Auge" und ich war froh, dass es funktioniert hat.

              Im HS ist es mit ein bißchen Logik ganz einfach, aber natürlich von den Randbedingungen abhängig. Den Status (als Byte) selbst halte ich in einem Kommunikationsobjekt, dass der HS verwaltet (remanent). Änderungen an den Bitwerten verändern durch Logik den Wert des gespeicherten Byte-Wertes: "wenn Bit "Standy" = 1, dann setze Status-Byte auf Wert xx (weiß ich gerade nicht)". Umgekehrt genauso: Wenn das Status-Byte geändert wird, dann Starte eine Sequenz "Bit Standby=0, Bit Comfort=1, Bit Nacht=0" oder entsprechend.

              Muss man es halt auf jeden Fall auf die persönlichen Belange anpassen.
              Schleifen vermeide ich dadurch, dass ich die Kontrolle über die Objekte in den HS lege.

              Ob man das auf die Problematik QC übertragen kann, weiß ich leider nicht.


              Gruß
              Hartmut

              Kommentar


                #8
                Hallo Hartmut,
                die Antwort kam ja bltzschnell. Vielen Dank. Da der QC ja nur das Statusbyte verändert, sollte die Implementierung nach deiner Empfehlung kein Problem mehr sein.

                Ich melde mich wieder mit dem Ergebnis.


                Viele Grüße
                Mike

                Kommentar


                  #9
                  Ich habe das so gelöst.
                  https://knx-user-forum.de/showthread.php?t=3805&page=2
                  Auf die Funktion den Status vom QC zu steuern, habe ich verzichtet. Macht für mich keinen Sinn. Es sollte eigentlich der umgekehrte Weg meiner Lösung zu sein.
                  Gruß Klaus

                  Kommentar


                    #10
                    Betriebsart RTR Triton<-> QC bidirektional umrechnen

                    Hallo zusammen,
                    vielen Dank für die zahlreichen Hinweise. Leider kann ich derzeit nur Sonntag abend etwas für den HS tun.

                    Die eine Richtung von EIB-Klaus gefiehl mir sofort (BA Bit -> BA Byte) und den Rückweg mit den Sequenzen von Hartmut. Bei der Umsetzung bzw. Tests ist mir aber folgendes aufgefallen:
                    Nach der Logik (... und meinem bescheidenen Kenntnisstand) kann das BA Byte nur die Werte von 1-4 annehmen.
                    1 = Komfort
                    2 = Standby
                    3 = Nacht
                    4 = Frostschutz

                    Zu Testzwecken habe ich eine "leere" GA auf die Betriebsart im QC gelegt. Wenn ich dort schalte bekomme ich folgende Werte (Dezimal) auf dem Bus:
                    Komfort = 3
                    Standby = 5
                    Nacht = 8
                    Frost = 10
                    Obendrein sendet der QC eine geänderte Solltemperatur, was aus meiner
                    Sicht die Kontrolle über einen einheitlichen Sollwert (z.B. für eine Etage) etwas erschwert. Die altmodischen Tritons haben dafür einen "Basis Sollwert", den ich hier etwas vermisse.

                    Die Hilfe ist wenig hilfreich und leider nicht in der prima Qualität wie für die "gestandenen" Teile des HS.

                    Was mache ich verkehrt? Bringe ich da verschiedene Sachen durcheinander?

                    @EIB-Klaus: Funktioniert deine Logik mit der Heizungs-Funktionsvorlage im QC?

                    Viele Grüße
                    Mike

                    Kommentar


                      #11
                      Hallo Mike,
                      bitt gedulde dich ein paar Tage, ich habe einen Logikbaustein geschrieben, der vielleicht dein Problem löst. Ich warte noch auf eine ID Nummer Zuteilung seitens Dacom, dann werde ich diesen Baustein hier uploaden.
                      Gruß Klaus

                      Kommentar


                        #12
                        Hallo Klaus,
                        klar, da warte ich gern und hoffe, dass die Dacom noch nicht im Weihnachtsurlaub ist.
                        Wenn du zur Hilfe einen Tester brauchst, gib mir Bescheid.

                        Viele Grüße

                        Mike

                        Kommentar


                          #13
                          Hallo Mike,
                          mein derzeit erstellter Baustein sendet nach dem Konnex Standard die Werte 1-4 an den QC. Diese werden dann korrekt angezeigt, im Gegenteil zu meiner geposteten Übergangslösung mit dem 8bit-1byte Wandler. Dort gibt es Probleme z.B. bei der Umschaltung von Frost auf Nacht. Ich habe festgestellt, dass sobald Nacht ist und ich ein Fenster öffne und schließe, der Raum wieder im Komfort landet. Das ist in meinem Baustein nicht mehr so. Ob der Weg rückwarts nötig ist, sehe ich im Moment nicht. Aber auch da habe ich mir vorgenommen einen Baustein zu schreiben. Um den Basissollwert meiner Tritons zu andern, habe ich mir einen weiteren KO "Wert" hinzugefügt. Nicht sauber, aber ich arbeite an weiteren Lösungen.
                          Gruß Klaus

                          Kommentar


                            #14
                            Hallo Klaus,
                            bei deiner Installation (FK, Präsenz) benötigst du den Rückweg sehr wahrscheinlich nicht, bei mir ist das etwas anders. Die Person im Raum soll (am Triton) Einstellungen vornehmen können. Unabhängig davon möchte ich von der Visu (QC) diese überprüfen bzw. ggf. korrigieren können. Klar könnte man das auch mit einem "globalen" Rücksetzen von Einstellungen erreichen, die Gäste während ihres Besuches verändern durften. Schöner finde ich aber, wenn ich das auch in der Visu kann.

                            Wenn bei dir z.B. ein Fensterkontakt spinnt, möchtest du vielleicht auch die Einstellung deiner Logik per Visu "überschreiben", weil du weißt: Das Fenster ist zu. Gerade wenn du remote schaust, wie es deinem Haus geht.

                            Kannst du meine Werte der Betriebsart für das Heizungs-Funktionsmodul nachvollziehen?


                            Viele Grüße
                            Mike

                            Kommentar


                              #15
                              Hallo Mike,
                              Ich habe nun auch den anderen Baustein fertig, aber nicht live getestet. In einem Test-Aufbau sendet er aber die gewünschten Werte.
                              Schick mir doch mal ein PM, dann schicke ich dir vorab die beiden Bausteine. wenn ich die ID Nummern erhalte, musst du nur den Baustein umbenennen und neu im Experten einfügen.
                              Gruß Klaus

                              Kommentar

                              Lädt...
                              X