Ankündigung

Einklappen
Keine Ankündigung bisher.

LBS: SML-Reader

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

    #76
    ich denke das geht hier schief:

    PHP-Code:
    if(isset($entry['value']) && isset($entry['scaler']))
                          {
                              
    // seems to be a numeric value
                              
    $entry['dispValue'] = $entry['value'] * pow(10$entry['scaler']); 
    Man könnte das isset man durch ein is_numeric ersetzen. Vielleicht löst das schon das Problem.
    Habe mir aber die Logik nicht weiter angeschaut, allerdings legt der Kommentar nahe, dass es numerische Werte sein sollten.

    Kommentar


      #77
      Zitat von jonofe Beitrag anzeigen
      ich denke das geht hier schief:
      Die Empfehlung für die IF-Abfrage ist plausibel. Mich würde nur interessieren, wie du auf die Zeile 281 kommst? Die in der Exception bemängelte Zeile 175 ist bei mir etwas weiter oben.

      Kommentar


        #78
        Die in der Edomi 1.52 nicht mehr unterstütze Version von writeToTraceLog habe ich entfernt und den Vorschlag von jonofe eingearbeitet. V1.3 ist jetzt online.

        Kommentar


          #79
          toggle Leider funktioniert bei mir die neue Version 1.3 nicht...

          Code:
           
          2017-08-27 12:22:10 079191 ? 31947 Datei: /var/edomi-backups/_public/main/include/php/incl_log.php | Fehlercode: 2 | Zeile: 81 | Missing argument 2 for writeToCustomLog(), called in /usr/local/edomi/www/data/liveproject/lbs/LBS19000350.php on line 12 and defined ERROR
          2017-08-27 12:22:10 079922 ? 31947 Datei: /var/edomi-backups/_public/main/include/php/incl_log.php | Fehlercode: 2 | Zeile: 81 | Missing argument 3 for writeToCustomLog(), called in /usr/local/edomi/www/data/liveproject/lbs/LBS19000350.php on line 12 and defined ERROR
          2017-08-27 12:22:10 080329 ? 31947 Datei: /var/edomi-backups/_public/main/include/php/incl_log.php | Fehlercode: 8 | Zeile: 103 | Undefined variable: logLevel ERROR
          2017-08-27 12:22:10 080615 ? 31947 Datei: /var/edomi-backups/_public/main/include/php/incl_log.php | Fehlercode: 8 | Zeile: 103 | Undefined variable: logMsg ERROR

          Kommentar


            #80
            Zitat von toggle Beitrag anzeigen
            Die Empfehlung für die IF-Abfrage ist plausibel. Mich würde nur interessieren, wie du auf die Zeile 281 kommst? Die in der Exception bemängelte Zeile 175 ist bei mir etwas weiter oben.
            Wenn der Fehler in EXEC ist, musst du die Zeilenummer ab dem Start des EXEC Blocks zählen.

            Der eigentliche LBS wird von EDOMI zerlegt in DEF, HELP, LBS und EXEC. Während der LBS Teil in die EDOMI Logic Engine integriert wird, wird aus dem EXEC Teil ein separates PHP Skript generiert, daher immer Zeilennummern ab dem EXEC Start Tag zählen.

            Kommentar


              #81
              Zitat von 19andy89 Beitrag anzeigen
              toggle Leider funktioniert bei mir die neue Version 1.3 nicht...
              Es war wohl nicht die finale Version in der Zwischenablage, als ich den Code in den Downloadbereich kopiert hatte. Jetzt müsste es richtig sein.

              Kommentar


                #82
                Zitat von toggle Beitrag anzeigen
                Es war wohl nicht die finale Version in der Zwischenablage, als ich den Code in den Downloadbereich kopiert hatte. Jetzt müsste es richtig sein.
                Vielen Dank... Jetzt funktioniert sie

                Kommentar


                  #83
                  Ich hab mich jetzt ein paar Tage mit dem Raspberry gespielt und bin nun soweit, dass ich die Smart-Meter Werte (ausgelesen mit dem optischen Lesekopf) im vzlogger angezeigt bekommen.
                  Zitat von toggle Beitrag anzeigen
                  Man könnte vzlogger installieren und so konfigurieren, dass er die Daten per HTTP exportiert (push oder pull). Vermutlich könnte eine Pull-Konfiguration die Daten sogar direkt an Edomi übergeben (d.h. ohne einen LBS).
                  Wo kann ich dazu mehr Infos finden? Wir bekomme ich die Werte möglichst einfach in edomi rein?

                  Kommentar


                    #84
                    Eins steht fest - eine fertige Lösung gibt es noch nicht. ;-)

                    vzlogger hat in der Config Abschnitte "push" und "local", die Push bzw. Pull unterstützen.

                    Bei Push wäre Edomi Empfänger, der von außen über fest definierte URLs Werte erhält und diese in interne KOs reinschreibt:
                    Code:
                    http://<Edomi IP address>/remote/?login=remote&pass=remote&koid=586&kovalue=743.64
                    Der blaue Teil des Strings ist pro KO fest (siehe Edomi-Hilfe zu remote), der rote variabel. Die Schwierigkeit dabei wäre, vzlogger beizubringen die URL so zu gestalten, wie Edomi sie erwartet.

                    Bei Pull würde Edomi zyklisch HTTP-Anfragen an vzlogger schicken. Dafür würde man in der Edomi-Konfiguration unter HTTP/UDP/Shell ein Objekt vom Typ HTTP anlegen und die URL von vzlogger eintragen, z.B. für den aktuellen Wert:
                    Code:
                    http://<vzlogger IP addresse>:<vzlogger port> /middleware.php/data/57acbef0-88a9-11e4-934f-6b0f9ecd95a8.json?tuple=1&to=
                    Grün wäre die UUID vom in vzlogger konfigurierten Kanal.
                    Details zur Middleware-API von vzlogger für weitere Abfragetypen gibt es hier.

                    Das Problem dabei wäre, dass die zurückgelieferten Daten (z.B. [[1234567890000, 743.64, 1]]) eventuell noch extrahiert/nachbearbeitet werden müssen.

                    Vermutlich wäre es einfacher, einen LBS zu erzeugen, der die vzlogger-Daten (ob Push oder Pull) verarbeitet und als einfache Werte ausgibt.
                    Zuletzt geändert von toggle; 03.09.2017, 17:51.

                    Kommentar


                      #85
                      Danke für die Infos.
                      Ich hab inzwischen einen eigenen Beitrag dazu erstellt.
                      Stromdaten aus vzlogger importieren

                      Kommentar


                        #86
                        Hallo zusammen,

                        Habe ein extrem unerklärliches Problem mit meinem Zähler (EMH eHZ-IW8E2A5...) in Verbindung mit diesem LBS v 1.3 und IR Lesekopf.

                        Diese Konstellation ist seit ca. 10 Monaten problemlos im Dauerbetrieb, inkl. aktualisiertem USB Treiber mit Edomi gemeinsam auf dem NUC5.

                        Hierbei hat mir die OBIS 1-0:1.8.0*255 den aktuellen Zählerstand, sowie OBIS 1-0:16.7.0*255 die aktuelle Leistung ausgegeben. Zählerstand entsprach auch dem auf dem Display.

                        Vor 3 Tagen ohne Änderungen am System kam es im laufenden Betrieb dann zu einem Sprung im Zählerwert. Von Soll: 21.861kWh auf 16.830kWh.
                        Es bleibt bis heute bei diesem offset, der Wert steigt jedoch mit dem Stromverbrauch korrekt an. Auf dem Display steht nach wie vor der korrekte Stand von 21.xxx
                        Auch ein Stromausfall konnte den Zähler nicht auf Spur bringen. Es wurde auch nichts an den OBIS Eingaben im LBS geändert.

                        Was kann hier schieflaufen ? Hat jemand einen Tip für die weitere Zählersuche ?
                        Da die anderen OBIS Werte wie die aktuelle Leistung korrekt sind und der Zählerstand korrekt hochzählt muss ja fast von einem Fehler im Zähler ausgegangen werden.


                        Anbei ein Log der eingestellten OBIS typen. 16830367.7 Wh ist der falsche Zählerwert, 604.4 W ist die korrekte aktuelle Leistung.
                        Code:
                         
                        2018-03-12 19:57:11 855722 11135 INFO: OBIS 1-0:1.8.0*255: 16830367.7
                        2018-03-12 19:57:11 855858 11135 INFO: OBIS 1-0:1.8.1*255: 16830367.7
                        2018-03-12 19:57:11 855977 11135 INFO: OBIS 1-0:1.8.2*255: 0
                        2018-03-12 19:57:11 856097 11135 INFO: OBIS 1-0:16.7.0*255: 604.4

                        Viele Grüße,

                        Christox
                        Zuletzt geändert von christox; 12.03.2018, 20:29.

                        Kommentar


                          #87
                          Wenn du mir eine Aufnahme von 5 Sekunden der Zählerdaten per PN zukommen lässt, könnte ich nachschauen, ob die Werte tatsächlich so sind oder ob es an der Dekodierung liegt. Dafür den folgenden Befehl aufrufen
                          Code:
                          cat /dev/ttyUSB0 > ehz.bin
                          und nach etwa 5 Seikunden mit Strg-C unterbrechen.

                          Richtig funktioniert es nur, wenn kein anderes Programm (z.B. Edomi) den Port geöffnet hat. /dev/ttyUSB0 sollte ggf. angepasst werden.

                          Kommentar


                            #88
                            Hi toggle,

                            Danke für Deine Unterstützung, Du hast PN

                            Grüsse,

                            christox

                            Kommentar


                              #89
                              Ich habe mal nachgeschaut. Die folgende Byte-Sequenz
                              Code:
                              77 07 01 00 01 08 01 ff
                              01
                              01
                              62 1e (Wh)
                              52 ff (Faktor 10-1)
                              56 00 0a 09 84 bc (Bezug)
                              01
                              enthält den Wert 168395964, der mit dem Faktor 0,1 multipliziert 16.839.596,4 Wh ergibt. Also würde ich behaupten, dass es nicht an der LBS-Dekodierung liegt.

                              Kommentar


                                #90
                                Hi toggle

                                Vielen Dank für Deine Analyse,

                                der Zähler (EMH) wurde nacheinigem hin und her von den Stadtwerken ausgetauscht.
                                Der nun verbaute ISKRA MT681 liefert den korrekten Zählerstand wie auch im Display angezeigt.

                                Viele Grüße,

                                Christox

                                Kommentar

                                Lädt...
                                X