Ankündigung

Einklappen
Keine Ankündigung bisher.

relative Dimmfunktion auswerten

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

    relative Dimmfunktion auswerten

    Um die relative Dimmfunktion aus KNX zu verwenden, muss ich den "type: list" verwenden. Allerdings stellt sich für mich die Frage, was in der Liste genau drin steht und wie ich das auswerten kann. Ich möchte mit dieser Funktion einen langen Tastendruck nachbilden.

    Meine Frage ist also konkret, wie kann ich in den Items direkt dieses Element auswerten?

    Vom Verständnis her, müsste das höchste Bit 0 sein und das niedrigste Bit 1 sein, damit klar ist, dass ich den Taster lange (dimmen nach unten) drücke. Ist das korrekt?

    Code:
                        lange:
                            type: list
                            knx_dpt: 3
                            knx_send: 5/1/9
                            knx_listen: 5/1/9
                            knx_init: 5/1/9
                            enforce_updates: yes
                            visu_acl: rw
                            on_change: EG.Buero.Praesenz.Sperren.manu = True if value[3] == 0 and value[1] == 1 else None
    So funktioniert das zumindest nicht.
    Zuletzt geändert von Cannon; 07.12.2018, 19:17. Grund: Code zugefügt

    #2
    Ich.verstehe nicht was Du auswerten willst. Kannst Du das näher erläutern?

    Zur Funktionsweise: In der KNX Spezifikation ist DPT 3 ein 4 Bit Wert. Dieser Wert setzt sich aus einem Bit für die Direction (up/down) und 3 Bit Value (also 0 bis 7) zusammen. value bestimmt um welchen Wert der Dimmaktor erhöht bzw. erniedrigt werden soll.

    Das KNX Plugin bildet als knx_dpt 3 diesen 4 Bit Wert als Liste mit 2 Elementen ab. Das erste Element gibt dir Richtung an, das 2. Element den Wert. So ist es auch in der README des KNX Plugins beschrieben.
    Zuletzt geändert von bmx; 08.12.2018, 07:49.
    Viele Grüße
    Martin

    There is no cloud. It's only someone else's computer.

    Kommentar


      #3
      Zitat von Msinn Beitrag anzeigen
      .verstehe nicht was Du auswerten willst. Kannst Du das näher erläutern?

      Ich möchte mittels langem Tastendruck, wenn das Licht aus ist den Präsenzmelder sperren. Das geht jetzt auch wunderbar, dank deiner Tipps.

      Wenn manuell gesperrt wird (sperren.manu) gibt es eine Quittierung. Manuell sperren geht jetzt, wenn das Licht aus ist und ich dann den Taster lange (nach aus) drücke. Sperren und Sperren.manu sind beide mit dem Sperrobjekt des Präsenzmelders verbunden. Das bedeutet auch, dass die manuelle Sperre immer dann zurückgesetzt wird, wenn die (automatiche) Sperre zurückgesetzt wird.

      Code:
                      WW:
                          schalten:
                              type: bool
                              knx_dpt: 1
                              knx_send: 5/0/9
                              knx_listen: 5/2/9
                              knx_init: 5/2/9
                              enforce_updates: yes
                              visu_acl: rw
                          dimmen:
                              type: num
                              knx_dpt: 5
                              knx_send: 5/3/9
                              knx_listen: 5/3/9
                              knx_init: 5/3/9
                              enforce_updates: yes
                              visu_acl: rw
                          sperren:
                              type: bool
                              knx_dpt: 1
                              knx_send: 5/4/6
                              knx_listen: 5/4/6
                              knx_init: 5/4/6
                              enforce_updates: yes
                              visu_acl: rw
                              manu:
                                  type: bool
                                  knx_dpt: 1
                                  knx_send: 5/4/7
                                  knx_listen: 5/4/7
                                  knx_init: 5/4/7
                                  enforce_updates: yes
                                  visu_acl: rw
                                  blinken_ga: 5/3/9
                                  blinken_anzahl: 3
                                  blinken_puls: 6
                                  blinken_pause: 6
                                  blinken_startpause: 10
                                  blinken_dimmwert_ein: 20
                          lange:
                              type: list
                              knx_dpt: 3
                              knx_send: 5/1/9
                              knx_listen: 5/1/9
                              knx_init: 5/1/9
                              enforce_updates: yes
                              visu_acl: rw
                              on_change: ..sperren.manu = True if value[0] == 0 and not sh...schalten() else None

      Kommentar


        #4
        Ich finde das eine sehr spannende Idee.
        Leider gibt es viele Binäreingänge, welche zwar Dimmen mit Langdruck können, aber kein Schalten kurz/lang unterstützen. Wäre also eine reine Softwarefrage.

        Kommentar


          #5
          Zitat von smai Beitrag anzeigen
          Leider gibt es viele Binäreingänge, welche zwar Dimmen mit Langdruck können, aber kein Schalten kurz/lang unterstützen.
          Ich habe die Message jetzt x-fach gelesen und versuche sie immernoch zu verstehen. ;-) Was hat das mit Binäreingängen zu tun? Oder bezieht sich das auf einen Taster, der per Binäreingang angebunden ist? Wenn ja, meine ich hier eigentlich reine Tastsensoren, die das unterstützen.

          Grundsätzlich ist es aber so, dass ich gerne alles minimalistisch haben will, aber dennoch nicht auf Funktionen verzichten will. Deshalb suche ich hier immer nach Lösung, wie ich das beste aus den Tastsensoren rausholen kann. Doppelklick wäre auch eine Lösung, aber das funktioniert nicht so recht, weil es kein Protokoll im KNX gibt und die items in SmartHomeNG nur Zeiten von mind. einer Sekunde auswerten können.

          Kommentar


            #6
            Wieso können Items in SmartHomeNG nur Zeiten von mind. 1 Sekunde auswerten?
            Viele Grüße
            Martin

            There is no cloud. It's only someone else's computer.

            Kommentar


              #7
              Zitat von Cannon Beitrag anzeigen
              Was hat das mit Binäreingängen zu tun? Oder bezieht sich das auf einen Taster, der per Binäreingang angebunden ist? Wenn ja, meine ich hier eigentlich reine Tastsensoren, die das unterstützen.
              Genau so war es gemeint, ja. Ich war mir nicht bewusst, dass es selbst integrierte Tastsensoren mit so dämlichen Applikationen gibt.

              Kommentar


                #8
                Zitat von Msinn Beitrag anzeigen
                Wieso können Items in SmartHomeNG nur Zeiten von mind. 1 Sekunde auswerten?
                Vielleicht irre ich mich, aber sämtliche item-Funktionen (autotimer, age, usw.) sind alle auf Werte von Sekunden ausgelegt. Wie soll ich denn damit kleinerere Werte verwenden können? Wenn das in ms ginge, könnte man damit echt viel mehr machen.
                Zitat von smai Beitrag anzeigen
                Genau so war es gemeint, ja. Ich war mir nicht bewusst, dass es selbst integrierte Tastsensoren mit so dämlichen Applikationen gibt.
                Doch die von Berker. ;-) Die sehen zwar toll aus, aber die Applikationssoftware lässt zu wünschen übrig. Da könnte man viel mehr rausholen (doppelklick, LED direkt ansteuern, usw.).

                Kommentar


                  #9
                  In wie weit Du Sekunden als Werte mit Nachkommastellen angeben kannst musst Du ausprobieren. In Logiken kannst Du auf jeden Fall durch Zugriff auf die time Funktionen bis in den Millisekunden Bereich runter.
                  Viele Grüße
                  Martin

                  There is no cloud. It's only someone else's computer.

                  Kommentar


                    #10
                    Zitat von Msinn Beitrag anzeigen
                    In wie weit Du Sekunden als Werte mit Nachkommastellen angeben kannst musst Du ausprobieren.
                    Werde ich. Ich dachte immer, dass sind ganze Zahlen.

                    Zitat von Msinn Beitrag anzeigen
                    In Logiken kannst Du auf jeden Fall durch Zugriff auf die time Funktionen bis in den Millisekunden Bereich runter.
                    Ich weiß. ;-)

                    Kommentar

                    Lädt...
                    X