Ankündigung

Einklappen
Keine Ankündigung bisher.

kWh-Zähler, aus dem Aktor-Strom

Einklappen
Dieses Thema ist geschlossen.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #16
    Da besteht durchaus optimierungs-potential, richtig, aber ob der Wert jetzt aus $plugin_info oder dem eibd-Cache gelesen wird ist nahezu Jacke wie Hose..

    Die Frage wäre: woher kommen die "0"-Werte??

    Das rrdtool ist ja ursprünglich dafür gemacht, um inkrementelle Bytes (mit überlauf und so) auf Netzwerk-Schnittstellen (ersetzte hier durch Ws - egal..) als Counter zu zählen..
    Das Plugin ist ein Quickhack und sicher nicht toll aber geht ansich verdammt gut..

    Makki
    EIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
    -> Bitte KEINE PNs!

    Kommentar


      #17
      Anhand des Plugin-Log kann ich eindeutig nachvollziehen, das das Plugin mehrmals kurz hintereinander aufgerufen wird. Eine Änderung des aktuellen Zählerstandes zum vorigen gibt es logischerweise nur beim ersten Aufruf.

      Die Frage wäre, warum das Plugin mehr als 1x ausgeführt wird??


      Zu deinem Plugin:
      D.h. du speicherst im RRD nur die Zählerstände und holst dur bei Bedarf das Inkrement Wh und s aus dem RRD?


      Code:
      2012-09-29 10:21:26.286,Leistung_aus_kWh.pl,7/0/129=0.240200868744979,0s,
      2012-09-29 10:21:26.388,Leistung_aus_kWh.pl,7/0/139=0.960929812797195,0s,
      2012-09-29 10:21:26.489,Leistung_aus_kWh.pl,7/0/139=0,0s,
      2012-09-29 10:21:26.566,Leistung_aus_kWh.pl,7/0/119=1.80126199441047,0s,
      2012-09-29 10:21:26.645,Leistung_aus_kWh.pl,7/0/119=0,0s,
      2012-09-29 10:21:32.560,GA2RRD.pl,4,0s,
      2012-09-29 10:22:26.193,Leistung_aus_kWh.pl,7/0/129=0.240361503702617,0s,
      2012-09-29 10:22:26.254,Leistung_aus_kWh.pl,7/0/139=0.722816274620311,0s,
      2012-09-29 10:22:26.318,Leistung_aus_kWh.pl,7/0/119=1.44779711459114,0s,
      2012-09-29 10:22:33.698,GA2RRD.pl,4,0s,
      2012-09-29 10:23:26.172,Leistung_aus_kWh.pl,7/0/129=0,0s,
      2012-09-29 10:23:26.286,Leistung_aus_kWh.pl,7/0/139=0.959521021546826,0s,
      2012-09-29 10:23:26.383,Leistung_aus_kWh.pl,7/0/139=0,0s,
      2012-09-29 10:23:26.461,Leistung_aus_kWh.pl,7/0/119=1.31701522776017,0s,
      2012-09-29 10:23:26.536,Leistung_aus_kWh.pl,7/0/119=0,0s,
      2012-09-29 10:23:35.056,GA2RRD.pl,4,0s,
      2012-09-29 10:24:26.101,Leistung_aus_kWh.pl,7/0/129=0,0s,
      2012-09-29 10:24:26.202,Leistung_aus_kWh.pl,7/0/139=0.48146216984467,0s,
      2012-09-29 10:24:26.299,Leistung_aus_kWh.pl,7/0/119=1.08427905453605,0s,
      2012-09-29 10:24:35.366,GA2RRD.pl,4,0s,
      2012-09-29 10:25:26.066,Leistung_aus_kWh.pl,7/0/129=0.240150822955661,0s,
      2012-09-29 10:25:26.178,Leistung_aus_kWh.pl,7/0/139=0.480219084542827,0s,
      2012-09-29 10:25:26.246,Leistung_aus_kWh.pl,7/0/139=0,0s,
      2012-09-29 10:25:26.297,Leistung_aus_kWh.pl,7/0/119=0.959988399623092,0s,
      2012-09-29 10:25:26.346,Leistung_aus_kWh.pl,7/0/119=0,0s,
      Endlich umgezogen. Fertig? Noch lange nicht... ;-)

      Kommentar


        #18
        Zitat von Hauke Beitrag anzeigen
        D.h. du speicherst im RRD nur die Zählerstände und holst dur bei Bedarf das Inkrement Wh und s aus dem RRD?
        Ja, das macht das rrdtool ganz alleine und seit gefühlt 20J tausendfach richtig

        Man darf natürlich keinen Mist reinfüttern, aber das muss man wenn an der Quelle verhindern..

        Makki
        EIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
        -> Bitte KEINE PNs!

        Kommentar


          #19
          Wie wäre denn der Aufruf um aus dem RRD nicht den Wert sondern das Inkrement oder besser noch delta_Wh/delta_t auszulesen (ok, die Division bekomme ich notfalls noch zu Fuß im Plugin gebacken ) ?

          Trotzdem wäre noch interessant zu wissen warum das Plugin hier mehrfach ausgeführt wird (auch wenn's das rrdtool nicht stören wird...)
          Endlich umgezogen. Fertig? Noch lange nicht... ;-)

          Kommentar


            #20
            Zitat von Hauke Beitrag anzeigen
            Trotzdem wäre noch interessant zu wissen warum das Plugin hier mehrfach ausgeführt wird (auch wenn's das rrdtool nicht stören wird...)
            Entweder zyklisch oder bei eintreffen eines Telegramms (plugin_subscribe)..

            Makki
            EIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
            -> Bitte KEINE PNs!

            Kommentar


              #21
              Hmm. Zyklisch scheidet aus...
              Code:
              $plugin_info{$plugname.'_cycle'} = 0;
              Das Plugin wird aber je Telegramm nur einmal mit der entsprechenden GA durchlaufen, oder? Ein kurz zuvor gesendetes Telegramm wird dann zuverlässig als "alt" bzw. schon abgearbeitet erkannt?

              Bei Durchsicht des Bus-Log und Plugin-Log ist mir gerade zum erstan Mal aufgefallen, das tatsächlich gelegentlich Telegramme mehrfach gesendet werden - das hatte ich bisher so noch nicht gesehen.
              Code:
              2012-10-02 06:55:39.218,A_GroupValue_Write,1.1.51,7/0/120,00 10 7D EC,1080812,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:55:39.298,A_GroupValue_Write,1.1.51,7/0/130,00 9A ED 00,10153216,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:55:39.380,A_GroupValue_Write,1.1.51,7/0/110,00 CD 16 E8,13440744,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:55:39.446,A_GroupValue_Write,1.1.254,7/0/129,00 48,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:55:39.530,A_GroupValue_Write,1.1.254,7/0/139,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:55:39.617,A_GroupValue_Write,1.1.254,7/0/119,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:56:06.168,A_GroupValue_Write,1.1.51,7/0/140,00 01 06 B8,67256,13.xxx,13.000,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:56:33.858,A_GroupValue_Write,1.1.254,7/0/109,00 48,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:56:39.175,A_GroupValue_Write,1.1.51,7/0/120,00 10 7D F4,1080820,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:56:39.257,A_GroupValue_Write,1.1.51,7/0/130,00 9A ED 00,10153216,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:56:39.345,A_GroupValue_Write,1.1.51,7/0/110,00 CD 16 E8,13440744,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:56:39.409,A_GroupValue_Write,1.1.254,7/0/129,00 30,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:56:39.464,A_GroupValue_Write,1.1.254,7/0/139,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:56:39.506,A_GroupValue_Write,1.1.254,7/0/119,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:57:34.694,A_GroupValue_Write,1.1.254,7/0/109,00 30,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:57:39.109,A_GroupValue_Write,1.1.51,7/0/120,00 10 7D FC,1080828,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:57:39.169,A_GroupValue_Write,1.1.51,7/0/130,00 9A ED 00,10153216,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:57:39.220,A_GroupValue_Write,1.1.51,7/0/110,00 CD 16 E8,13440744,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:57:39.269,A_GroupValue_Write,1.1.254,7/0/129,00 30,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:57:39.311,A_GroupValue_Write,1.1.254,7/0/139,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:57:39.342,A_GroupValue_Write,1.1.254,7/0/119,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:58:35.542,A_GroupValue_Write,1.1.254,7/0/109,00 30,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:58:39.053,A_GroupValue_Write,1.1.51,7/0/120,00 10 7E 04,1080836,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:58:39.157,A_GroupValue_Write,1.1.51,7/0/130,00 9A ED 00,10153216,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:58:39.224,A_GroupValue_Write,1.1.51,7/0/110,00 CD 16 E8,13440744,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:58:39.304,A_GroupValue_Write,1.1.254,7/0/129,00 30,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:58:39.360,A_GroupValue_Write,1.1.254,7/0/139,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:58:39.401,A_GroupValue_Write,1.1.254,7/0/119,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:59:26.127,A_GroupValue_Write,1.1.51,7/0/140,00 01 06 B8,67256,13.xxx,13.000,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:59:35.641,A_GroupValue_Write,1.1.254,7/0/109,00 30,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:59:38.998,A_GroupValue_Write,1.1.51,7/0/120,00 10 7E 0C,1080844,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:59:39.143,A_GroupValue_Write,1.1.51,7/0/130,00 9A ED 00,10153216,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:59:39.245,A_GroupValue_Write,1.1.51,7/0/130,00 9A ED 00,10153216,DPT_ActiveEnergy,13.010,1,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:59:39.336,A_GroupValue_Write,1.1.51,7/0/110,00 CD 16 E8,13440744,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:59:39.422,A_GroupValue_Write,1.1.51,7/0/110,00 CD 16 E8,13440744,DPT_ActiveEnergy,13.010,1,low,6,T_DATA_XXX_REQ,0
              2012-10-02 06:59:39.573,A_GroupValue_Write,1.1.254,7/0/129,00 30,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:59:39.639,A_GroupValue_Write,1.1.254,7/0/139,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:59:39.682,A_GroupValue_Write,1.1.254,7/0/139,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:59:39.724,A_GroupValue_Write,1.1.254,7/0/119,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 06:59:39.766,A_GroupValue_Write,1.1.254,7/0/119,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 07:00:36.437,A_GroupValue_Write,1.1.254,7/0/109,00 30,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 07:00:38.946,A_GroupValue_Write,1.1.51,7/0/120,00 10 7E 14,1080852,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 07:00:39.093,A_GroupValue_Write,1.1.51,7/0/130,00 9A ED 00,10153216,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 07:00:39.244,A_GroupValue_Write,1.1.51,7/0/110,00 CD 16 E8,13440744,DPT_ActiveEnergy,13.010,0,low,6,T_DATA_XXX_REQ,0
              2012-10-02 07:00:39.393,A_GroupValue_Write,1.1.51,7/0/110,00 CD 16 E8,13440744,DPT_ActiveEnergy,13.010,1,low,6,T_DATA_XXX_REQ,0
              2012-10-02 07:00:39.515,A_GroupValue_Write,1.1.51,7/0/110,00 CD 16 E8,13440744,DPT_ActiveEnergy,13.010,1,low,6,T_DATA_XXX_REQ,0
              2012-10-02 07:00:39.697,A_GroupValue_Write,1.1.51,7/0/110,00 CD 16 E8,13440744,DPT_ActiveEnergy,13.010,1,low,6,T_DATA_XXX_REQ,0
              2012-10-02 07:00:39.831,A_GroupValue_Write,1.1.254,7/0/129,00 30,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 07:00:39.869,A_GroupValue_Write,1.1.254,7/0/129,00 30,,,,1,low,7,T_DATA_XXX_REQ,0
              2012-10-02 07:00:39.897,A_GroupValue_Write,1.1.254,7/0/129,00 30,,,,1,low,7,T_DATA_XXX_REQ,0
              2012-10-02 07:00:39.925,A_GroupValue_Write,1.1.254,7/0/129,00 30,,,,1,low,7,T_DATA_XXX_REQ,0
              2012-10-02 07:00:39.977,A_GroupValue_Write,1.1.254,7/0/139,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 07:00:40.031,A_GroupValue_Write,1.1.254,7/0/119,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 07:00:40.062,A_GroupValue_Write,1.1.254,7/0/119,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 07:00:40.100,A_GroupValue_Write,1.1.254,7/0/119,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              2012-10-02 07:00:40.135,A_GroupValue_Write,1.1.254,7/0/119,00 00,,,,0,low,7,T_DATA_XXX_REQ,0
              Code:
              2012-10-02 2012-10-02 06:55:39.258,Leistung_aus_kWh.pl,7/0/129=0.720517005914551,0s,
              2012-10-02 06:55:39.345,Leistung_aus_kWh.pl,7/0/139=0,0s,
              2012-10-02 06:55:39.421,Leistung_aus_kWh.pl,7/0/119=0,0s,
              2012-10-02 06:56:33.830,GA2RRD.pl,4,0s,
              2012-10-02 06:56:39.226,Leistung_aus_kWh.pl,7/0/129=0.480300156299901,0s,
              2012-10-02 06:56:39.308,Leistung_aus_kWh.pl,7/0/139=0,0s,
              2012-10-02 06:56:39.383,Leistung_aus_kWh.pl,7/0/119=0,0s,
              2012-10-02 06:57:34.661,GA2RRD.pl,4,0s,
              2012-10-02 06:57:39.134,Leistung_aus_kWh.pl,7/0/129=0.480667327385834,0s,
              2012-10-02 06:57:39.197,Leistung_aus_kWh.pl,7/0/139=0,0s,
              2012-10-02 06:57:39.242,Leistung_aus_kWh.pl,7/0/119=0,0s,
              2012-10-02 06:58:35.510,GA2RRD.pl,4,0s,
              2012-10-02 06:58:39.110,Leistung_aus_kWh.pl,7/0/129=0.480273700291227,0s,
              2012-10-02 06:58:39.199,Leistung_aus_kWh.pl,7/0/139=0,0s,
              2012-10-02 06:58:39.273,Leistung_aus_kWh.pl,7/0/119=0,0s,
              2012-10-02 06:59:35.605,GA2RRD.pl,4,0s,
              2012-10-02 06:59:39.067,Leistung_aus_kWh.pl,7/0/129=0.480425545928658,0s,
              2012-10-02 06:59:39.214,Leistung_aus_kWh.pl,7/0/139=0,0s,
              2012-10-02 06:59:39.296,Leistung_aus_kWh.pl,7/0/139=0,0s,
              2012-10-02 06:59:39.378,Leistung_aus_kWh.pl,7/0/119=0,0s,
              2012-10-02 06:59:39.500,Leistung_aus_kWh.pl,7/0/119=0,0s,
              2012-10-02 07:00:36.402,GA2RRD.pl,4,0s,
              2012-10-02 07:00:39.018,Leistung_aus_kWh.pl,7/0/129=0.480277351329688,0s,
              2012-10-02 07:00:39.166,Leistung_aus_kWh.pl,7/0/139=0,0s,
              2012-10-02 07:00:39.318,Leistung_aus_kWh.pl,7/0/119=0,0s,
              2012-10-02 07:00:39.443,Leistung_aus_kWh.pl,7/0/119=0,0s,
              2012-10-02 07:00:39.594,Leistung_aus_kWh.pl,7/0/119=0,0s,
              2012-10-02 07:00:39.764,Leistung_aus_kWh.pl,7/0/119=0,0s,
              Ich werde mir noch mal die Parametrierung des Binäreingangs ansehen (ABB BE/s 8.20.2.1) aber da sollte nur zyklisches Senden eingestellt sein. Keine Ahnung warum da einiges mehrmals gesendet wird.
              Das Plugin wird anscheinend 1x je Telegramm ausgeführt, ich bekomme aber zum Teil aus einem Durchlauf mehrere Telegramme auf die gleiche GA. Auch dafür habe ich noch keine Erklärung.
              Endlich umgezogen. Fertig? Noch lange nicht... ;-)

              Kommentar


                #22
                Ohne jetzt nochmal alles zurückzulesen: das sind typische Telegramm-Wiederholungen, weil es schlicht niemand auf der TP1-Linie ACKed..

                Geht am WG nur mit TP-UART (oder "Empfänger"/LK/IP-Router..)

                Makki
                EIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
                -> Bitte KEINE PNs!

                Kommentar


                  #23
                  Genau deswegen wundert's mich ja. WG mit TP-UART ist dran.
                  An der Konfiguration des Eibd hab ich nix geändert, ich denke mal das sollte so passen.
                  Code:
                  /usr/bin/eibd -e 1.1.254 -c -S -D -i -T -R --tpuarts-disch-reset --tpuarts-ack-all-group -d -u --pid-file=/var/run/eibd.pid -c tpuarts:/dev/ttyS0
                  Mich wundert an der stelle nur das nicht geACKed wird. Erkannt wurde das Telegramm ja wohl schon beim ersten Mal, sonst wäre wohl kaum das Plugin ausgeführt worden.

                  Falls du mal reinschauen willst: wiregate448, Wartungs-VPN ist offen...

                  Generell: Macht's denn Sinn das die Plugins auf Telegrammwiederholungen mehrfach reagieren?
                  Endlich umgezogen. Fertig? Noch lange nicht... ;-)

                  Kommentar


                    #24
                    Zitat von Hauke Beitrag anzeigen
                    Generell: Macht's denn Sinn das die Plugins auf Telegrammwiederholungen mehrfach reagieren?
                    Jein. Das Problem: Telegrammwiederholungen sind besonders in kleinen Installationen wo nicht alles 100% "sauber" ist, nach meiner Erfahrung eher die Regel denn die Ausnahme..
                    Mit TP-UART wird nach "best-effort" geacked, geht aber (ohne in Grenzwertigen Situationen den Bus zu schrotten) - nicht 100%
                    Man kann/könnte natürlich Telegrammwiederholungen ($msg{'repeated'}) im Plugin ausfiltern, man weiss aber nicht wirklich ob es verpasst wurde, also eine legitime Wiederholung ist.. Ein bisschen wird das ja schon - soweit möglich und sinnvoll - gemacht.
                    -> Im Kern ist jegliche Logik/Plugin so auszulegen, das sie damit klarkommt..

                    Makki
                    EIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
                    -> Bitte KEINE PNs!

                    Kommentar


                      #25
                      Alles klar, das ist mal ne Aussage.

                      Ich war schon am grübeln was hier schief läuft da offensichtlich nicht alle Telegramme geACKed werden.
                      Anscheinend kommen die Statusmeldungen der einzelnen Kanäle zu schnell hintereinander, das kann (will) ich dem ABB nicht abgewöhnen. Keine Ahnung was z.B. mit Kanal2-8 passiert wenn ich die Telegrammrate auf 1/s begrenze und Kanal1 schon jede Sekunde sendet. Einen Min-Abstand kann man anscheinend nicht angeben. Und die zulässige Anzahl an Telegrammen wird laut Beschreibung zu Beginn des Zeitintervalls schnellstmöglich gesendet.

                      Ich habe mir jetzt so beholfen, dass die Berechnung nur bei delta_time > 30s ausgeführt wird - wenn der Zählerstand sich dann nicht verändert hat, darf auch Null ins RRD. Sollte er sich zwischendurch doch verändert haben, habe ich einfach nur eine schlechtere zeitliche Auflösung. Aber so schnell hintereinander sollten die Statusmeldungen eh nicht eintreffen.

                      Danke für die Info!

                      Hauke
                      Endlich umgezogen. Fertig? Noch lange nicht... ;-)

                      Kommentar

                      Lädt...
                      X