Ankündigung

Einklappen
Keine Ankündigung bisher.

KNX-Binding: Status-GA

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

    KNX-Binding: Status-GA

    Hallo,

    Derzeit statte ich unser neu gebautes Passivhaus mit KNX Systemtechnik aus. Unter anderem werden 20 Raffstore und etwa 80 Leuchten so gesteuert (Jalousieaktoren von ABB, Schaltaktoren von MDT).
    Mit OpenHAB experimentiere ich derzeit, um es eventuell für die Systemintegration, Visualisierung und einige Komfortfunktionen einzusetzen.
    Die Ansteuerung der Lampen und Jalousien über das KNX-Binding von OpenHAB funktioniert auch bereits, jedoch habe ich noch ein Problem mit dem Status-update. Wie bei KNX-Systemen üblich, laufen die Steuerkommandos zu den Aktoren und die Abfrage der Aktorstati über unterschiedliche Gruppenadressen. Im KNX-Binding von OpenHAB ist jedoch nur eine Main-GA vorgesehen, über die gesteuert und der Status gelesen wird (wenn mit ‚<’ gekennzeichnet). Wenn ich nun die Steuer-GA als Main-GA einsetzte kann ich beim Systemstart den Status des Kanals nicht lesen und der Status des Items in OpenHAB stimmt erst nach dem ersten Steuerbefehl, wenn ich die Status-GA als Main-GA einsetze sehe ich zwar den korrekten Status des Kanals, kann dann jedoch nicht über dieses Item nicht steuern.
    Gibt ist beim KNX-Binding von OpenHAB die Möglichkeit, unterschiedliche Gruppenadressen für Steuer-GA und Status-GA anzugeben?

    Gruß
    Tony

    #2
    Wenn ich Dich richtig verstehe, hast Du neben der GA mit der Du die Funktion auslöst die Rückmeldeobjekte der Aktoren auf separate GAs gelegt.

    Das sollte zunächst einmal gehen, wenn Du die Rückmelde-GAs als hörende Adressen konfigurierst, diese Adressen kannst Du da wo Du eine Ga angibst mit + getrennt angebenb, also z.B. 1/2/3+4/5/6, dann wäre 4/5/6 die hörende Adresse und der Status wird übernommen, wenn der Aktor ein Status-Telegramm schickt.

    Das Auslesen des aktuellen Wertes sollte auf der "normalen" GA (hier 1/2/3) funktionieren, ansonsten ist das eine Frage der Konfiguration des Aktors. Ev. musst Du Dir mal die Flags anschauen.

    Bei Hager Dimmaktoren hatte ich auch mal die Besonderheit, dass es wohl einen Bug in der Firmware gibt. Der lies sich umgehen, indem die Objekte Dimmwert und Zustand Dimmwert auf die gleiche Gruppenadresse gelegt und dann die Flags angepasst wurden. Ev. hast Du da was ähnliches.

    Es ist natürlich auch denkbar, dass der Aktor das Auslesen nicht unterstützt, da sollte die Doku weiterhelfen.

    Kommentar


      #3
      Hallo Jockel,
      danke für deine Rückmeldung.
      Es ist so ähnlich wie du bei deinem Hager Dimmaktor beschreibst, nur dass es vermutlich beim ABB Jalousieaktor kein Bug ist.
      Es gibt zwei verschieden Kommunikationsobjekte für "Höhe Position anfahren", bei mir GA 5/5/1 und "Status Höhe", bei mir die GA 5/6/1. Dazu gibt es natürlich noch das 1-bit-Kommunikationobjekt für "Behang auf/ab fahren", liegt auf der GA 5/1/1.
      Mein Binding sieht so aus: {knx="1.008:5/1/1, 5.004:5/5/1+5/6/1}
      Das ganze funktioniert auch wunderbar, aber erst nachdem die Jalousie einmal bewegt wurde. Dann bekomme ich den Status auf der 5/6/1. Aber vorher kann ich ihn nicht auslesen.
      Auch das Auslesen der 5/5/1 hilft nicht weiter, wenn die Jalousie davor mit der 1-Bit Objekt 5/1/1 bewegt wurde.
      Deinen Tip, die beiden Kommunikationsobjekte für Steuern und Status auslesen in eine GA zu packen habe ich ausprobiert. Das funktioniert, arbeitet aber nicht zuverlässig. Manchmal klappt der Positionsupdate nicht. Ich weiß noch nicht, woran das liegt.
      Was ich bräuchte wäre das:
      {knx="1.008:5/1/1, 5.004:5/5/1+<5/6/1}
      Wird aber von OpenHAB nicht unterstützt.
      Viele Grüße
      Tony

      Kommentar


        #4
        Hi Tony,

        was Du wohl brauchst, ist dies hier: Issue 132 - openhab - KNX Status Groupadress does not work as expected - empowering the smart home - Google Project Hosting
        Cyril hat dafür sogar schon einen Patch implementiert - ich kam nur noch nicht dazu, mich da tiefer reinzulesen, weil es doch einige Änderungen sind.
        Falls Du Dir die openHAB IDE aufgesetzt hast, kannst Du Dir das Changeset ja vielleicht einfach mal selber von Cyril ziehen und es testen. Ansonsten hoffe ich, dass ich dazu komme, es in den kommenden Wochen zu Reviewen und aufzunehmen.

        Viele Grüße,
        Kai

        Kommentar


          #5
          Hallo Kai,

          danke für den Hinweis.
          Das ist tatsächlich genau was ich brauche.
          Hab mir die IDE geholt und es gleich mal ausprobiert. Es funktioniert soweit. Echt super.
          Ich hoffe das kommt dann ins nächste Release.
          Werde die Version jetzt mal für meine nächsten Versuche nutzten. Ich melde mich, falls mir bei dem Feature noch was auffällt.

          Viele Grüße
          Tony

          Kommentar


            #6
            Hi Tony,

            super, danke fürs schnelle Testen - ich werde mich dann möglichst bald dran machen, die Änderung einzupflegen!

            Viele Grüße,
            Kai

            Kommentar


              #7
              Hallo zusammen,

              ich habe auch ABB Aktoren und wollte folgende GA's nutzen

              0/1/1 Auf/Ab
              0/1/2 Stopp
              0/1/3 Pos. Höhe anfahren
              0/1/4 Sonne
              0/1/5 Sonne/Höhe anfahren
              0/1/6 Status Höhe (von 0/1/3)

              Kann ich dies mit der derzeitigen Implementierung nutzen?? Und wo finde ich bitte die aktuelle 1.2 zum DL, da dies dort ja bereits implementiert wurde??

              Viele Grüße,

              Joerg

              Kommentar


                #8
                Hi noch einmal,

                ich fürchte mein Problem ist noch größer

                Up/Down/Stop funktioniert

                Den Rest bekomme ich einfach nicht hin. Ich bekomme noch nicht einmal den Status (wo steht die Rolllade) ausgelesen und als Zahl angezeigt.

                Sorry für das nerven und ich baue auf Euch

                Gruß

                Joerg

                Kommentar


                  #9
                  Zitat von JoergA Beitrag anzeigen
                  Und wo finde ich bitte die aktuelle 1.2 zum DL, da dies dort ja bereits implementiert wurde??
                  Hier: https://openhab.ci.cloudbees.com/job/openHAB/

                  Sollte bei Dir mit irgendwas wie { knx="0/1/1,0/1/2,0/1/3+0/1/6" } funktionieren. Hast Du sichergestellt, dass der Aktor auf 0/1/6 auch wirklich regelmäßig die aktuelle Position meldet?

                  Grüße,
                  Kai

                  Kommentar


                    #10
                    Zitat von kkreuzer Beitrag anzeigen
                    Hier: https://openhab.ci.cloudbees.com/job/openHAB/

                    Sollte bei Dir mit irgendwas wie { knx="0/1/1,0/1/2,0/1/3+0/1/6" } funktionieren. Hast Du sichergestellt, dass der Aktor auf 0/1/6 auch wirklich regelmäßig die aktuelle Position meldet?

                    Grüße,
                    Kai
                    Klappt prima

                    Der Aktor gibt bei Status Änderung immer die neue Position mit.

                    Was mir aufgefallen ist:
                    Wenn der Rollladen hochgefahren wird, wird erst einmal das icon aktualisiert (ganz offen) und wenn dann vorher gestoppt wird, wird das Icon mit der entsprechenden Höhe angepasst.

                    Sehe ich aber als Feature ;-)

                    Wie definiere ich den ein Item um eine Position aus einer Rule heraus als Status zu senden??

                    In der ETS geht dies als Prozentwert über 5.001

                    Viele Grüße
                    Joerg

                    Kommentar


                      #11
                      Hi Jörg,

                      Zitat von JoergA Beitrag anzeigen
                      Wenn der Rollladen hochgefahren wird, wird erst einmal das icon aktualisiert (ganz offen) und wenn dann vorher gestoppt wird, wird das Icon mit der entsprechenden Höhe angepasst.
                      das kriegst Du weg, indem Du das Item wie folgt definierst:

                      { knx="0/1/1,0/1/2,0/1/3+0/1/6", autoupdate="false" }

                      In diesem Fall dürfte sich das Icon wirklich erst dann verändern, wenn über die entsprechende GA die Position gemeldet wird.

                      Zitat von JoergA Beitrag anzeigen
                      Wie definiere ich den ein Item um eine Position aus einer Rule heraus als Status zu senden??
                      Die Frage verstehe ich nicht ganz? Willst Du von openHAB aus die prozentuale Position an eine Rollade schicken, also bspw. Rollade-Küche=50%?
                      Visualisierung, Rule/Logic-Engine, Integrationsplattform mit openhab (Supportforum)

                      Kommentar


                        #12
                        Danke, werde ich morgen mal testen.

                        Zitat von teichsta Beitrag anzeigen

                        Die Frage verstehe ich nicht ganz? Willst Du von openHAB aus die prozentuale Position an eine Rollade schicken, also bspw. Rollade-Küche=50%?
                        Hi,

                        ja. Ich könnte einmal im Aktor programieren "Sonne = 1 ; dann fahre auf x%) aber ich fände es charmanter dies aus openHAB zu senden. Oder wie regelt ihr dies??

                        VG
                        Joerg

                        Kommentar


                          #13
                          Hi,

                          Zitat von JoergA Beitrag anzeigen
                          "Sonne = 1 ; dann fahre auf x%)
                          ahh, ok, die Regel dazu sähe so aus:

                          Code:
                          rule "Jalousie-Automatik"
                          when
                            Item Sonne changed to ON
                          then
                            Jalousie_Wohnzimmer.sendCommand(new PercentType(50))
                          end
                          Voraussetzung ist der import von

                          Code:
                          import org.openhab.core.library.types.*
                          zu Beginn des Rules-Files.

                          Gruß,

                          Thomas E.-E.
                          Visualisierung, Rule/Logic-Engine, Integrationsplattform mit openhab (Supportforum)

                          Kommentar


                            #14
                            Ich hab für so etwas Szenen im KNX-Aktor definiert, dann muss man nicht jede Rollade einzeln fahren sondern kann sie Gruppenweise ansprechen.

                            Kommentar


                              #15
                              Die Zeile
                              Code:
                                Jalousie_Wohnzimmer.sendCommand(new PercentType(50))
                              kann man sogar noch einfacher als
                              Code:
                                Jalousie_Wohnzimmer.sendCommand(50)
                              schreiben.

                              Kommentar

                              Lädt...
                              X