Ankündigung

Einklappen
Keine Ankündigung bisher.

Verfahrstatus bei basic.shutter

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

    Verfahrstatus bei basic.shutter

    Hallo,

    ich suche wieder einmal Hilfe bei meiner Visualisierung. Aktuell habe ich bei meiner Visu eine Testpage fuer die Rollo in meinem Buero. Die Steuerung funktioniert dabei wiederum tadellos, allerdings updated die Visu nicht, wenn ich mittels Taster die Rollo verfahre. Gibt es da einen Trick?

    room_office.html
    Code:
    {{ basic.shutter('test_buero', 'EG.Buero.Rollo_Buero.position', ' ', '0', '255') }}
    sv_office.yaml:
    Code:
    Rollo_Buero:
                sv_widget: "{{ device.blind('item', 'item.name', 'item.move', 'item.stop', 'item.position') }} "
                move:
                    name: RoBueLa
                    type: bool
                    knx_dpt: 1
                    knx_send: 2/1/0
                    knx_listen: 2/1/2
                    enforce_updates: 'true'
                    visu_acl: 'rw'
                stop:
                    name: RoBueKu
                    type: bool
                    knx_dpt: 1
                    knx_send: 2/1/1
                    enforce_updates: 'true'
                    visu_acl: 'rw'
                position:
                    name: RoBuePos
                    type: num
                    knx_dpt: 5
                    knx_send: 2/0/6
                    knx_listen: 2/0/6
                    knx_cache: 2/0/6
                    enforce_updates: 'true'
                    knx_init: 2/0/6
                    visu_acl: 'rw'
    ich habe alle knx_* testweise reingegeben um eine Aenderung zu provozieren.

    Danke und lg
    D.
    Zuletzt geändert von birdie12; 16.01.2019, 18:43.

    #2
    Bei position kann knx_send und knx_cache bzw. knx_listen nicht die gleiche GA sein.
    In cache oder listen kommt der Status deines Aktors rein.
    Apropos "oder": Du solltest in jedem Item nur entweder cache oder listen verwenden, nicht beides.

    Kommentar


      #3
      Hallo birdie12,

      ich kann nicht ganz folgen, in der items.yaml hast Du "device.blind(....)" definiert, in der room_office.html taucht dann der "basic.shutter" auf. Welcher wird nun tatsächlich verwendet ? Deine Config lt. *.yaml:
      Code:
       {{ basic.shutter('test_buero', 'EG.Buero.Rollo_Buero.position', ' ', '0', '255') }}
      Verwende den device.shutter mit den vorgesehenen Parametern an der richtigen Stelle, so läuft das bei mir korrekt. Config lt. SmartVisu 2.7 Doku (bin nicht sicher ob hier bei 2.8/2.9 was anders ist)
      Code:
       {{ device.shutter(id, txt, item_move, item_stop, item_pos, item_shift, item_angle, item_saved, min, max, step, mode) }}
      Beispiel aus meiner *.html
      Code:
       {{ device.shutter ('OG.Buero.Rolladen', 'Rolladen Buero', 'OG.Buero.Rolladen.move', 'OG.Buero.Rolladen.stop', 'OG.Buero.Rolladen.pos', '', '', '', 0, 255, 5, 'full') }}
      Gruss Andre

      Kommentar


        #4
        Hallo AndreK,

        habe mein SmarthomeNG z.Z. über einen HyperV realisiert und die Lichtsteuerung der Aktoren funktioniert soweit einwandfrei.

        Jetzt versuche ich die Rolladensteuerung anzugehen, finde aber keine richtigen Beispiele... kannst Du mir da weiterhelfen..

        Als KNX Gruppenadressen haben ich immer die gleiche Folge.
        z.B.:
        Langzeit = 2/5/0
        Kurzzeit = 2/5/1
        Position = 2/5/2 (0-100%)
        Rückmeldung = 2/5/3

        das wiederholt sich jetzt mit anderen Tastern immer wieder.., natürlich mit unterschiedliche Gruppenadressen
        Wie habt Ihr die items definiert und hinterher in der VISU Oberfläche dargestellt..

        Habt Ihr hierfür Beispiele ??

        Gruß aus Solingen



        Kommentar


          #5
          Hallo es muss dann so werden.


          Code:
          Rollo_Buero:
              sv_widget: "{{ device.blind('item', 'item.name', 'item.fahren', 'item.stop', 'item.pos') }} "
              fahren:
                  type: bool
                  enforce_updates: 'yes'
                  visu_acl: rw
                  knx_dpt: 1
                  knx_send: 2/5/0
              stop:
                  type: bool
                  visu_acl: rw
                  enforce_updates: 'yes'
                  knx_dpt: 1
                  knx_send: 2/5/1
              pos:
                  type: num
                  enforce_updates: 'yes'
                  visu_acl: rw
                  knx_dpt: 5.001
                  knx_send: 2/5/2
                  knx_cache: 2/5/3
          #       cache: 'yes'
          Gruß Danny

          Wenn du cache: 'yes' aktivierst dann wird deine Position remanet gespeichert und der letzte Wert wird übernommen vorm Neustart von NG. knx_cache macht aber eine Anfrage auf den KNX Bus und sollte bei cache: 'yes' in knx_listen: 2/5/3 geändert werden.(dann hört er nur zu und macht bei Nestart keine Anfrage)
          Zuletzt geändert von danny; 11.02.2020, 19:46.

          Kommentar


            #6
            Hallo Danny,

            klappt eigentlich schon ganz gut, siehe:

            Code:
             Rollos:
            Rollo_WHZ1:
            sv_widget: "{{ device.blind('item', 'item.name', 'item.fahren', 'item.stop', 'item.pos') }} "
            fahren:
            type: bool
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 1
            knx_send: 2/5/0
            stop:
            type: bool
            visu_acl: rw
            enforce_updates: 'yes'
            knx_dpt: 1
            knx_send: 2/5/1
            pos:
            type: num
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 5.001
            knx_send: 2/5/2
            knx_cache: 2/5/3
            # cache: 'yes'
            
            Rollo_WHZ2:
            sv_widget: "{{ device.blind('item', 'item.name', 'item.fahren', 'item.stop', 'item.pos') }} "
            fahren:
            type: bool
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 1
            knx_send: 2/5/4
            stop:
            type: bool
            visu_acl: rw
            enforce_updates: 'yes'
            knx_dpt: 1
            knx_send: 2/5/5
            pos:
            type: num
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 5.001
            knx_send: 2/5/6
            knx_cache: 2/5/7
            # cache: 'yes'
            
            Rollo_WHZ3:
            sv_widget: "{{ device.blind('item', 'item.name', 'item.fahren', 'item.stop', 'item.pos') }} "
            fahren:
            type: bool
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 1
            knx_send: 2/5/8
            stop:
            type: bool
            visu_acl: rw
            enforce_updates: 'yes'
            knx_dpt: 1
            knx_send: 2/5/9
            pos:
            type: num
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 5.001
            knx_send: 2/5/10
            knx_cache: 2/5/11
            # cache: 'yes'
            
            Rollo_WHZ4:
            sv_widget: "{{ device.blind('item', 'item.name', 'item.fahren', 'item.stop', 'item.pos') }} "
            fahren:
            type: bool
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 1
            knx_send: 2/5/12
            stop:
            type: bool
            visu_acl: rw
            enforce_updates: 'yes'
            knx_dpt: 1
            knx_send: 2/5/13
            pos:
            type: num
            enforce_updates: 'yes'
            visu_acl: rw
            knx_dpt: 5.001
            knx_send: 2/5/14
            knx_cache: 2/5/15
            # cache: 'yes'
            
            
            
            und hier der Eintrag in der HTML-Datei
            
            <div class="ui-block-a">{{ device.blind ('EG.Wohnzimmer.Rollos', 'Jalousie Whz1', 'EG.Wohnzimmer.Rollos.Rollo_WHZ1.fahren', 'EG.Wohnzimmer.Rollos.Rollo_WHZ1.stop', 'EG.Wohnzimmer.Rollos.Rollo_WHZ1.pos') }} </div>
            <div class="ui-block-b">{{ device.blind ('EG.Wohnzimmer.Rollos', 'Jalousie Whz2', 'EG.Wohnzimmer.Rollos.Rollo_WHZ2.fahren', 'EG.Wohnzimmer.Rollos.Rollo_WHZ2.stop', 'EG.Wohnzimmer.Rollos.Rollo_WHZ2.pos') }} </div>
            <div class="ui-block-c">{{ device.blind ('EG.Wohnzimmer.Rollos', 'Jalousie Whz3', 'EG.Wohnzimmer.Rollos.Rollo_WHZ3.fahren', 'EG.Wohnzimmer.Rollos.Rollo_WHZ3.stop', 'EG.Wohnzimmer.Rollos.Rollo_WHZ3.pos') }} </div>
            <div class="ui-block-d">{{ device.blind ('EG.Wohnzimmer.Rollos', 'Jalousie Whz4', 'EG.Wohnzimmer.Rollos.Rollo_WHZ4.fahren', 'EG.Wohnzimmer.Rollos.Rollo_WHZ4.stop', 'EG.Wohnzimmer.Rollos.Rollo_WHZ4.pos') }} </div>
            habe nur noch einen eigenartigen Effekt...
            wenn ich das Rollo2 stoppe, fährt Rollo1 hoch... und bei einem anderen Rollo genauso, allerdings fährt dann Rollo2 runter, die Gruppenadressen stimmen aber eigentlich... kann das etwas mit dem Cache bzw. Pos zutun haben?

            Gruß
            Alexander

            P.S.: die Positionsanzeigender Rollos stimmen auch nicht richtig, kann aber eine Einstellung im Aktor sein

            Kommentar


              #7
              Die Einrückungen in der items.yaml sind essentiell für die korrekte Abarbeitung. Die Einrückungen sind mit Leerzeichen zu machen (üblich sind 4), nicht mit Tabs(!). Wenn die Einrückungen Dir nur hier im Thread abhanden gekommen sind, solltest Du bitte nochmal die korrekte Struktur oben einfügen.

              In den Aufrufen des widgets device.blind hast Du außerdem immer dieselbe ID (EG.Wohnzimmer.Rollos). Die IDs sollen aber immer "unique", also einzigartig sein. Aus Prinzip würde ich diese deshalb unterschiedlich benennen. Ein kurzer Blick in die device.html zeigt allerdings, dass dies hier nicht die Fehlerursache sein sollte, da die Angabe der ID in diesem widget optional ist.
              Gruß Wolfram

              P.S.: Es freut mich zu lesen, dass Du Deine Installation zum Laufen bekommen hast. Da waren ja einige Forenmitglieder in mehreren Threads involviert. Da die Foren für alle in der Community Wissen generieren und dokumentieren sollen, fände ich es fair, wenn Du die Lösung in dem entsprechenden Thread dokumentieren würdest. (vermutlich ist diese in Deinem Thread im knxd Forum am besten aufgehoben)

              Kommentar


                #8
                Hallo wvhn,

                Die Einrückung stimmt, allerdings nimmt der Codeblock bei mir dies wieder hier heraus, mal sehen was jetzt passiert.
                Code:
                Rollos:
                Rollo_WHZ1:
                sv_widget: "{{ device.blind('item', 'item.name', 'item.fahren', 'item.stop', 'item.pos') }} "
                fahren:
                type: bool
                enforce_updates: 'yes'
                visu_acl: rw
                knx_dpt: 1
                knx_send: 2/5/0
                stop:
                type: bool
                visu_acl: rw
                enforce_updates: 'yes'
                knx_dpt: 1
                knx_send: 2/5/1
                pos:
                type: num
                enforce_updates: 'yes'
                visu_acl: rw
                knx_dpt: 5.001
                knx_send: 2/5/2
                knx_cache: 2/5/3
                # cache: 'yes'

                habe jetzt auch einmal die items in der SmartVisu page einem eindeutigen Namen gegeben.

                Anscheinend lag es wirklich daran, dass die Items alle den gleichen Namen hatten, werde es einmal beobachten !!

                Danke !

                P.S.: Ich hatte ja erhebliche Probleme mit meiner SmarthomeNG überhaupt auf den KNX-Bus zu kommen und Befehle abzusetzen.
                Durch den Einsatz eines Gira-IP-Routers 216700 und der richtigen knxd.conf Einstellung waren die Probleme behoben !!

                Wir haben dem IP-Router die 192.168.10.250 in LAN und einen KNX-Gruppenadressenbereich von 1.1.59 - 1.1.63 vergeben.

                Die knxd.conf lautet jetzt:

                # für den Gira IP-Router
                KNXD_OPTS="-e 1.1.60 -E 1.1.61:2 -D -T -S -b ipt:192.168.10.250"


                mit dieser Konstellation hat es auf Anhieb funktioniert.

                Gruss aus Solingen

                Kommentar


                  #9
                  aber mal eine andere Frage zum dimmen...


                  mein Item ist so beschrieben, natürlich mit der richtigen Einrückung:

                  LampeEsszimmerTisch:
                  schalten:
                  type: bool
                  knx_dpt: 1
                  knx_send: 1/5/100
                  knx_listen: 1/5/103
                  visu_acl: rw
                  dimmen:
                  type: num
                  knx_dpt: 5
                  knx_send: 1/5/101
                  knx_listen: 1/5/103
                  visu_acl: rw


                  und in der Page:
                  {{ device.dimmer('light1', 'Esstisch', 'EG.Esszimmer.Licht.LampeEsszimmerTisch.schalten', 'EG.Esszimmer.Licht.LampeEsszimmerTisch.dimmen',0 , 100) }}


                  so, ein bzw. ausschalten lässt sich die Lampe über SmartVISU, nur dimmen klappt nicht und wenn man der Schieber bewegt, springt der sofort wieder in die Ausgangsposition zurück.

                  Habe im Anhang einmal die Aufzeichnung vom ETS-Busmonitor beigefügt, wenn ich den KNX-Taster im Esszimmer für die Lampe zum dimmen steuere... vielleicht kann man da etwas erkennen...

                  Ich kenne mich da zu wenig aus.

                  Gruß aus Solingen


                  Angehängte Dateien

                  Kommentar


                    #10
                    Wenn Du dafür einen neuen Thread aufmachst, antworte ich Dir gerne. Wir sollten bitte die Disziplin haben, dass wir keine Themen vermischen. Das macht das Suchen für alle anderen nach uns zum Horror.

                    Kommentar


                      #11
                      Vor dem Pasten hier um Forum (nachdem Du den Codeblock mit dem # Button erzeugt hast) in den "Quellmode" umschalten (Button ganz links mit <>), dann Pasten und danach den "Quellmode" wieder ausschalten.
                      Viele Grüße
                      Martin

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

                      Kommentar


                        #12
                        habe zu dem Thema ebenfalls eine Frage, bzw. möchte ich auch den shutter benutzen... kann mir hier jemand weiterhelfen?

                        so sieht mein Item aus:
                        Code:
                        EG:
                        
                        ROLLADEN:
                        
                        GH_HAUSSEITE:
                        name: Gartenhaus Hausseite
                        
                        Fahren:
                        type: bool
                        visu: 'yes'
                        visu_acl: rw
                        knx_dpt: 1
                        knx_listen: 1/2/0
                        knx_send: 1/2/0
                        knx_init: 1/2/0
                        enforce_updates: 'true'
                        
                        UZSU:
                        type: dict
                        uzsu_item: EG.ROLLADEN.GH_HAUSSEITE.Fahren
                        cache: 'True'
                        visu_acl: rw
                        
                        Stop:
                        type: bool
                        visu: 'yes'
                        visu_acl: rw
                        knx_dpt: 1
                        knx_send: 1/6/0
                        enforce_updates: 'true'
                        
                        Position:
                        type: num
                        visu_acl: rw
                        knx_dpt: 5
                        knx_listen: 1/3/0
                        knx_send: 1/3/0
                        knx_init: 1/3/0
                        enforce_updates: 'true'
                        und so meine Visuseite:
                        Code:
                        <div class="preblock">
                        </div>
                        <div class="block">
                        <div class="set-2" data-role="collapsible-set" data-theme="c" data-content-theme="a" data-mini="true">
                        <div data-role="collapsible" data-collapsed="false" >
                        <h3>Rollos</h3>
                        <table width="95%">
                        </tr>
                        <td align="left" width="200px">
                        {{ basic.switch('GHTTF', 'EG.ROLLADEN.GH_HAUSSEITE.Fahren', icon0~'control_arrow_up.svg', icon0~'control_arrow_up.svg', 0, 0) }}
                        {{ basic.switch('GHTTS', 'EG.ROLLADEN.GH_HAUSSEITE.Stop', icon0~'control_on_off.svg', '', 1, 1) }}
                        {{ basic.switch('GHTTF1', 'EG.ROLLADEN.GH_HAUSSEITE.Fahren', icon0~'control_arrow_down.svg', icon0~'control_arrow_down.svg', 1, 1) }}
                        </td>
                        <td>Gartenhaus HS</td>
                        </tr>
                        <td align="left" width="200px">
                        {{ basic.switch('GHFF', 'EG.ROLLADEN.GH_POOLSEITE.Fahren', icon0~'control_arrow_up.svg', icon0~'control_arrow_up.svg', 0, 0) }}
                        {{ basic.switch('GHFS', 'EG.ROLLADEN.GH_POOLSEITE.Stop', icon0~'control_on_off.svg', '', 1, 1) }}
                        {{ basic.switch('GHFF1', 'EG.ROLLADEN.GH_POOLSEITE.Fahren', icon0~'control_arrow_down.svg', icon0~'control_arrow_down.svg', 1, 1) }}
                        </td>
                        <td>Gartenhaus PS</td>
                        <tr>
                        <td align="left" width="100px">
                        {% import "widget_shutter.html" as shutter %}
                        {{ device.shutter ('SHGUZ66', 'HS', 'EG.ROLLADEN.GH_HAUSSEITE.Fahren', 'EG.ROLLADEN.GH_HAUSSEITE.Stop', 'EG.ROLLADEN.GH_HAUSSEITE.Position', '', '', '', 0, 255, 5, 'full') }}
                        <tr>
                        </table>
                        und hier noch das Bild der Visu:
                        shutter_bild.JPG

                        Ich möchte auf den shutter klicken können, damit das Rollo in die entsprechenden Position fährt. leider passiert gar nichts, wenn ich in den Shutter klicke....

                        Kann mir jemand verraten was ich falsch mache?

                        Vielen Dank

                        Kommentar


                          #13
                          Code:
                          {% import "widget_shutter.html" as shutter %}
                          ist definitv falsch und muss ersatzlos entfernt werden.

                          Wenn Du einen Aktor hast, an den Du den Positionswert als Fahrbefehl schickst, dann können die GAs bei knx_send und knx_listen nicht die gleichen sein. Schau noch einmal, auf welcher GA der Aktor die Ist-Position zurück meldet.

                          Gruß
                          Wolfram

                          Kommentar


                            #14
                            Das ist ein Bild von meinem MDT Aktor, hier ist jeweils eine GA hinterlegt. Welche nehme ich dann? und wie sieht das item aus?

                            MDT_Rollo_Aktor_Bild.JPG

                            Vielen Dank

                            Kommentar


                              #15
                              Für Position ist dann nach meinem Verständnis
                              Code:
                              Position:
                                  type: num
                                  visu_acl: rw
                                  knx_dpt: 5
                                  knx_listen: 7/1/0
                                  knx_send: 7/2/0
                                  knx_init: 7/1/0
                                  enforce_updates: 'true'
                              zu verwenden, wobei mir der Aktor nicht bekannt ist und Du am besten nochmal anhand des Handbuchs des Aktors prüfen solltest, ob auf 7/1/0 die Istposition rückgemeldet wird oder auf 1/3/0.

                              Gruß Wolfram

                              Kommentar

                              Lädt...
                              X