Ankündigung

Einklappen
Keine Ankündigung bisher.

Telegrammratenbegrenzung

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

    Telegrammratenbegrenzung

    Hallo,

    wir (und 2 Anwender) haben festgestellt, dass man die FT1.2 Schnittstelle ausser Tritt bringen kann. Hintergrund ist wohl, dass die EibPC Hardware weit schneller ist, als die Schnittstelle.

    So z.B.
    if (...) then write(GA1,EIN)
    write(GA2,EIN) ... write(GA20,EIN) endif

    Der EibPC feuert alles auf die Schnittstelle, die empfängt ggf. was unvollständig und kommt dann ausser Tritt, so dass der EibPC bei der Kommunikation mit dieser hängenbleibt - der interne Messagebuffer des EibPC ist weit größer. Dies kann auch bei weniger Telegrammen passieren, wenn gleichzeitig andere Aktoren recht heftig aktiv sind.

    Wir werden im Januar ein Update herausbringen (unser Firmwarespezialist hat Urlaub), welches uns etwas mehr Einblick in diese Situation bringen soll, ggf. werden wir auch eine Telegrammratenbegrenzung einbauen. Derweil bitte ich um Nachsicht (IP Schnittstellenuser scheinen hier die besseren Karten zu haben).
    offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
    Enertex Produkte kaufen

    #2
    Zitat von enertegus Beitrag anzeigen
    ... IP Schnittstellenuser scheinen hier die besseren Karten zu haben
    Hoi Michael

    Ich hab' zwar einen IP/Router von Feller (= Gira denke ich) kann den aber nicht parametrisieren, ohne zweite Schnittstelle.

    Wenn ich wie bisher ohne den IP-Zugang mit dem EibPC über das Programm komuniziere ist alles ok und der EibPC blinkt gemütlich vor sich hin.

    Wenn ich den IP-Zugang aktiviere dann kann ich einige Sekunden alles sehen, oder sogar Werte auf den Bus senden.
    Danach verschluckt sich aber irgendwer und der Zugang funktioniert nicht mehr.
    Ich wollte mir aus obigen Gründen eigentlich eine zweite Schnittstelle besorgen. (FT1.2 oder TP-UART)
    Und jetzt höre ich, dass es dort auch zu Problemen kommen kann??? Hmmm *seufz*

    Ich weiss eben nicht ob der IP/Router der Switch (Cisco) oder der EibPC das Problem ist. Von Multicast hab' ich keine Ahnung und tunneling bzw. routing auch nicht.

    Die ETS3 und der eibd mit ipt:10.0.1.3 funktioniert zuverlässig. Mit ip:10.0.1.3 hab' ich bisher keinen Erfolg gehabt (nicht die richtigen Buchstaben angewandt.)

    Keine Ahnung wo bei mir der Wurm drin steckt.
    Grüsse Bodo
    Fragen gehören ins Forum, und nicht in mein Postfach;
    EibPC-Fan; Wiregate-Fan; Timberwolf-Fan mit 30x 1-Wire Sensoren;

    Kommentar


      #3
      Ich hab' zwar einen IP/Router von Feller (= Gira denke ich) kann den aber nicht parametrisieren, ohne zweite Schnittstelle.
      Was da genau das Problem ist, kann ich Dir nicht sagen. Aber wir nehmen nach 3-König Kontakt mit Dir auf (bis dahin schlägt der Urlaub zu) so dass wir hier weiterhelfen können.

      Wenn ich den IP-Zugang aktiviere dann kann ich einige Sekunden alles sehen, oder sogar Werte auf den Bus senden.
      Das kriegen wir bestimmt hin.

      Ich wollte mir aus obigen Gründen eigentlich eine zweite Schnittstelle besorgen. (FT1.2 oder TP-UART)
      TP-Uart geht nicht!

      Und jetzt höre ich, dass es dort auch zu Problemen kommen kann???
      Ich wollte hier keine Panik schüren, so dramtisch ist das nicht. Es tauchte bisher nur 2 mal auf. Bei meiner Installation nie, nie beim Betatest, nicht bei den anderen zig-Usern. ALSO: Kein Grund zu Panik.
      Außerdem werden wir das Problem sicher in KW3 fixen und einfach eine (konfugrierbare) Telegrammratenbegrenzung einbauen.

      Gruss
      Michael

      Keine Ahnung wo bei mir der Wurm drin steckt.
      Wir werden Deine IP Schnittstelle noch zum Laufen bringen, aber hierzu musste leider warten bis Januar (immer dieser olle Urlaub)...
      offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
      Enertex Produkte kaufen

      Kommentar


        #4
        Die FT1.2 kann man mit zu hoher Buslast sogar zerstören, "grillen" im wahrsten Sinn des Wortes.

        Eine Telegrammratenbegrenzung halte ich für außerordentlich sionnvoll.
        Gruß Matthias
        EIB übersetzt meine Frau mit "Ehepaar Ist Beschäftigt"
        - PN nur für PERSÖNLICHES!

        Kommentar


          #5
          Zitat von MatthiasS Beitrag anzeigen
          Die FT1.2 kann man mit zu hoher Buslast sogar zerstören, "grillen" im wahrsten Sinn des Wortes.
          Na, da hoffe ich aber, dass das vom Hersteller abhängt und nicht vom Protokoll.

          Ansonsten kann ich mich nur anschließen, sicherlich eine sinnvolle Sache! Wie sieht es eigentlich mit der Prio der GAs aus? In der Anleitung habe ich nichts darüber gefunden. (Nicht nur) Bei geringerer Telegrammrate könnte hierfür Bedarf bestehen.
          BR
          Marc

          Kommentar


            #6
            Telegrammratenbegrenzung

            Hallo Matthias,

            Zitat von MatthiasS Beitrag anzeigen
            Die FT1.2 kann man mit zu hoher Buslast sogar zerstören, "grillen" im wahrsten Sinn des Wortes.

            Eine Telegrammratenbegrenzung halte ich für außerordentlich sionnvoll.
            Das wirft beim mir ein paar Fragen grundsätzlicher Art auf:

            1.) Warum kann man die FT1.2 grillen? Baut die dann intern Hochfrequenz auf die einen Wärmeverlust proportional dem Quadrat der Telegrammfrequenz entwickelt?

            2.) Welche Faktoren bestimmen die maximal sinnvolle Telegrammrate in einem Eib-Netzwerk?

            - Anzahl der Linien
            - Länge der Leitungen (Reflexion am Leitungsende?)
            - Alter/Entwicklungsstand der Busteilnehmer
            - ?

            3.) Welche Ratenbegrenzung haben andere Aktoren oder Sensoren zur Auswahl?

            z.B. Gira Taster-Schnittstelle

            30 Telegramme pro 17 s
            60 Telegramme pro 17 s
            100 Telegramme pro 17 s
            127 Telegramme pro 17 s -> ca. 448 Telegramme pro Minute -> 7 Telegramme

            Als Basis wird bei vielen Geräten pro 17s angegeben.
            Die Telegrammrate ist einstellbar zwischen 5..127 pro 17s

            4.) Wie kann Telegrammratenbegrenzung funktionieren?

            Ein Ansatz könnte es sein, das alle Telegramme, die in einer bestimmten Zeit nicht gesendet werden konnten, einfach verfworfen werden.

            Eine andere Möglichkeit wäre es, einfach auf ruhigere Zeiten zu warten.

            4.) Wieviele Telegramme pro min. oder pro sek. sind nun in der Praxis eigentlich angebracht?

            Gruß,
            Bernd

            Kommentar


              #7
              Zitat von bmx Beitrag anzeigen
              H
              4.) Wie kann Telegrammratenbegrenzung funktionieren?
              Der EibPC schreibt eh alles in einen Message Buffer. Nun kann man einfach eine Kunstpause zwischen dem Raussschreiben einbauen.
              Damit begrenzt man natürlich nicht den Busverkehr im Allgemeinen,aber die Wahrscheinlichkeit der Kollision sinkt.
              offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
              Enertex Produkte kaufen

              Kommentar


                #8
                Zitat von enertegus Beitrag anzeigen
                ... TP-Uart geht nicht! ...
                Wir werden Deine IP Schnittstelle noch zum Laufen bringen, aber hierzu musste leider warten bis Januar (immer dieser olle Urlaub)...
                Hoi Michael

                Ich will ja nicht drängeln, aber ...
                Grüsse Bodo
                Fragen gehören ins Forum, und nicht in mein Postfach;
                EibPC-Fan; Wiregate-Fan; Timberwolf-Fan mit 30x 1-Wire Sensoren;

                Kommentar


                  #9
                  Zitat von Bodo Beitrag anzeigen
                  Hoi Michael
                  Ich will ja nicht drängeln, aber ...
                  Ich dachte, ich hätte das hier schon desöfteren erwähnt: Erst Morgen kommt der Spezialist erst wieder aus dem Urlaub - der hat ne Menge zu tun ... ich denke es wird sicher eher Ende der Woche, bis Du kontaktiert wirst. Du stehst auf unserer Featureliste (ich weiss jetzt die Nummer net).

                  Bis dahin mal noch etwas Geduld .

                  Michael
                  offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                  Enertex Produkte kaufen

                  Kommentar


                    #10
                    Zitat von enertegus Beitrag anzeigen
                    Du stehst auf unserer Featureliste (ich weiss jetzt die Nummer net).
                    Das Feature kannst du gerne HIER ergänzen. :-)

                    Kommentar


                      #11
                      Hallo zusammen,

                      Kann es sein, dass ähnliche Probleme auch bei einer IP-Schnittstelle auftreten. Um genau zu sein bei einer Siemens IP 148/21?

                      Bei folgendem Code, wird (laut Meldungsfenster) das letze Telegramm auf den Bus geschrieben ("Steckdose Flur für Stehlampe-2/2/2"), aber auf dem Bus kommt das wohl nicht wirklich an. Die Steckdose hat nämlich weiterhin Strom.
                      Code:
                      // Abwesend Lichter schalten
                      if is_abwesend_ein == EIN then \\
                          write("Deckenlicht Bad-1/2/2" , AUS); \\
                          write("Wandleuchte Bad WC schalten-1/2/22" , AUS); \\
                          write("Wandleuchte Bad Spiegel schalten-1/2/23" , AUS); \\
                          write("Deckenlicht Küche hinten schalten-1/2/12", AUS); \\
                          write("Deckenlicht Küche vorn schalten-1/2/11" , AUS); \\
                          write("Steckdose Küche Dunstabzugshaube-2/2/1"  , AUS); \\
                          write("Wandleuchte Balkon schalten-1/2/20" , AUS); \\
                          write("Deckenlicht Essen schalten-1/2/6" , AUS); \\
                          write("Leselichter Wohnzimmer schalten-1/2/19" , AUS); \\
                          write("Steckdose Wohnzimmer Ecke Sofa-2/2/0" , AUS); \\
                          write("Deckenlicht Wohnen schalten-1/2/8" , AUS); \\
                          write("Deckenlicht Flur schalten-1/2/3" , AUS); \\
                          [COLOR=Red][B]write("Steckdose Flur für Stehlampe-2/2/2" , AUS)[/B];[/COLOR] \\ Lichter bleiben an
                          write("Deckenlicht Schlafen schalten-1/2/1" , AUS) \\
                      endif
                      Packe ich den entsprechenden write Befehl weiter oben hin, funktionierts wunderbar:
                      Code:
                      // Abwesend Lichter schalten
                      if is_abwesend_ein == EIN then \\
                          write("Deckenlicht Bad-1/2/2" , AUS); \\
                          [COLOR=Red][B]write("Steckdose Flur für Stehlampe-2/2/2" , AUS);[/B][/COLOR] \\ Lichter gehen aus
                          write("Wandleuchte Bad WC schalten-1/2/22" , AUS); \\
                          write("Wandleuchte Bad Spiegel schalten-1/2/23" , AUS); \\
                          write("Deckenlicht Küche hinten schalten-1/2/12", AUS); \\
                          write("Deckenlicht Küche vorn schalten-1/2/11" , AUS); \\
                          write("Steckdose Küche Dunstabzugshaube-2/2/1" , AUS); \\
                          write("Wandleuchte Balkon schalten-1/2/20" , AUS); \\
                          write("Deckenlicht Essen schalten-1/2/6" , AUS); \\
                          write("Leselichter Wohnzimmer schalten-1/2/19" , AUS); \\
                          write("Steckdose Wohnzimmer Ecke Sofa-2/2/0" , AUS); \\
                          write("Deckenlicht Wohnen schalten-1/2/8" , AUS); \\
                          write("Deckenlicht Flur schalten-1/2/3" , AUS); \\
                          write("Deckenlicht Schlafen schalten-1/2/1" , AUS) \\
                      endif
                      Schicke ich hier tatsächlich zu viel in zu kurzer Zeit oder hab ich da irgendwas übersehen?

                      Gruß
                      Andreas
                      Gruß Kex

                      Kommentar


                        #12
                        Zitat von kex Beitrag anzeigen
                        Kann es sein, dass ähnliche Probleme auch bei einer IP-Schnittstelle auftreten. Um genau zu sein bei einer Siemens IP 148/21?
                        Ich habe eine ähnliche Konstellation wie Du und mit der aktuellen Beta Firmware tritt das gleiche Problem auf. Bei mir gehen in diesem Fall zwar alle Lichter aus, aber nicht der Fernseher.

                        Da ich vermute, das heute eine neue Firmware auf den Markt kommen könnte, werde ich das am Wochenende noch mal genauer untersuchen und parallel die ETS mitprotokollieren lassen.

                        Montag wissen wir Meer
                        Gruß aus dem Norden,
                        Bernd

                        Kommentar


                          #13
                          Zitat von bmx Beitrag anzeigen
                          Montag wissen wir Meer
                          Unter der Voraussetzung, das so eine GALERIE von WRITEs innerhalb
                          einer IF-Aweisung wirklich ohne FIFO STACK GLEICHZEITIG herausgesendet
                          werden, ist das beschriebene Verhalten völlig normal.

                          In einer Installation ohne EibPC würde exakt das gleiche passieren.
                          Das ist also ohne eine internen Sende FIFO im EibPC nicht zu machen.

                          So sehr ich den Wunsch verstehe OHNE echte Zentralbefehle auskommen
                          zu wollen - das Thema hatten wir schon - aber man sollte seine KNX-Installation
                          eben doch MIT Zentralbefehlen programmieren und nicht alle Zentral-Logik
                          in den EibPC packen.

                          Frank
                          Warum eine SPS wenns auch KNX gibt (oder war das umgekehrt???)

                          Kommentar


                            #14
                            Moin Frank,

                            Zitat von IBFS
                            In einer Installation ohne EibPC würde exakt das gleiche passieren.
                            Das ist also ohne eine internen Sende FIFO im EibPC nicht zu machen.
                            @Michael: Wie habt Ihr das gelöst? Ich war davon ausgegangen, ihr habt einen FIFO, oder?

                            Und: bei einer Readanweisung in einer If-Schleife wird doch auch nicht auf das Ergebnis gewartet, oder?

                            Zitat von IBFS
                            So sehr ich den Wunsch verstehe OHNE echte Zentralbefehle auskommen
                            zu wollen - das Thema hatten wir schon - aber man sollte seine KNX-Installation eben doch MIT Zentralbefehlen programmieren und nicht alle Zentral-Logik in den EibPC packen.
                            Stimme ich Dir zu. Soweit machbar und sinnvoll sollte man die Zentralbefehle nutzen (mit den derzeitigen Einschränkungen der Firmware bzgl. Rückmeldeobjekten). Ich kann für mich nur sagen, das ich für 4 Lampen und einen Fernseher keinen Zentralbefehl will und das mir das im EibPC besser aufgehoben ist.
                            Ein Zentral an z.B. bei Feuer gehört für mich wiederum direkt parametriert ohne EibPC, damit die Ausfallsicherheit größer wird.

                            Gruß,
                            Bernd

                            Kommentar


                              #15
                              Zitat von kex Beitrag anzeigen
                              Hallo zusammen,

                              Kann es sein, dass ähnliche Probleme auch bei einer IP-Schnittstelle auftreten. Um genau zu sein bei einer Siemens IP 148/21?

                              Bei folgendem Code, wird (laut Meldungsfenster) das letze Telegramm auf den Bus geschrieben ("Steckdose Flur für Stehlampe-2/2/2"), aber auf dem Bus kommt das wohl nicht wirklich an. Die Steckdose hat nämlich weiterhin Strom.
                              Code:
                              // Abwesend Lichter schalten
                              if is_abwesend_ein == EIN then \\
                                  write("Deckenlicht Bad-1/2/2" , AUS); \\
                                  write("Wandleuchte Bad WC schalten-1/2/22" , AUS); \\
                                  write("Wandleuchte Bad Spiegel schalten-1/2/23" , AUS); \\
                                  write("Deckenlicht Küche hinten schalten-1/2/12", AUS); \\
                                  write("Deckenlicht Küche vorn schalten-1/2/11" , AUS); \\
                                  write("Steckdose Küche Dunstabzugshaube-2/2/1"  , AUS); \\
                                  write("Wandleuchte Balkon schalten-1/2/20" , AUS); \\
                                  write("Deckenlicht Essen schalten-1/2/6" , AUS); \\
                                  write("Leselichter Wohnzimmer schalten-1/2/19" , AUS); \\
                                  write("Steckdose Wohnzimmer Ecke Sofa-2/2/0" , AUS); \\
                                  write("Deckenlicht Wohnen schalten-1/2/8" , AUS); \\
                                  write("Deckenlicht Flur schalten-1/2/3" , AUS); \\
                                  [COLOR=Red][B]write("Steckdose Flur für Stehlampe-2/2/2" , AUS)[/B];[/COLOR] \\ Lichter bleiben an
                                  write("Deckenlicht Schlafen schalten-1/2/1" , AUS) \\
                              endif
                              Packe ich den entsprechenden write Befehl weiter oben hin, funktionierts wunderbar:
                              Code:
                              // Abwesend Lichter schalten
                              if is_abwesend_ein == EIN then \\
                                  write("Deckenlicht Bad-1/2/2" , AUS); \\
                                  [COLOR=Red][B]write("Steckdose Flur für Stehlampe-2/2/2" , AUS);[/B][/COLOR] \\ Lichter gehen aus
                                  write("Wandleuchte Bad WC schalten-1/2/22" , AUS); \\
                                  write("Wandleuchte Bad Spiegel schalten-1/2/23" , AUS); \\
                                  write("Deckenlicht Küche hinten schalten-1/2/12", AUS); \\
                                  write("Deckenlicht Küche vorn schalten-1/2/11" , AUS); \\
                                  write("Steckdose Küche Dunstabzugshaube-2/2/1" , AUS); \\
                                  write("Wandleuchte Balkon schalten-1/2/20" , AUS); \\
                                  write("Deckenlicht Essen schalten-1/2/6" , AUS); \\
                                  write("Leselichter Wohnzimmer schalten-1/2/19" , AUS); \\
                                  write("Steckdose Wohnzimmer Ecke Sofa-2/2/0" , AUS); \\
                                  write("Deckenlicht Wohnen schalten-1/2/8" , AUS); \\
                                  write("Deckenlicht Flur schalten-1/2/3" , AUS); \\
                                  write("Deckenlicht Schlafen schalten-1/2/1" , AUS) \\
                              endif
                              Schicke ich hier tatsächlich zu viel in zu kurzer Zeit oder hab ich da irgendwas übersehen?

                              Gruß
                              Andreas
                              Kannst Du uns bitte möglichst bald das Programm und ESF schicken - reproduzierbare Fehler sind optimal.
                              offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                              Enertex Produkte kaufen

                              Kommentar

                              Lädt...
                              X