Sonoff POW Energiemessung Speichern

  • Habe hier einen Sonoff POW am laufen mit dem ich den Ertrag der Solaranlage messen kann. Da werden die Daten vom Aktuellen Tag und auch vom Vortag gespeichert und angezeigt. Nur wäre es in meinem Fall schön wenn ich z.B. von die letzten 7 Tagen speichern könnte. Gibt es da wo eine Möglichkeit in Tasmota das man das machen kann?

    Firmware Version ist Tasmota 6.4.1

  • Ich sehe in Tasmota da keine Möglichkeit.


    Aber grundsätzlich kann man das mit einem Script 1xtäglich abfragen (cmnd=EnergyReset) und in eine Datenbank oder Datei ablegen.


    Code
    http://IPvomSonOffPOW/cm?cmnd=EnergyReset

    Meine Hardware@home: Fritzbox 7490, 3xFritzDect 200, 9xTasmota-Geräte, Syno NAS, Raspberry Pi 3B f. PiHole, Docker, TasmoAdmin, Portainer

    Einmal editiert, zuletzt von Marc ()

  • Mich hatte das noch etwas beschäftigt. ;)


    Wenn ich auf der Konsole eines Raspberry den folgenden Befehl absetze:

    Code
    curl http://IPvomSonOffPOW/cm?cmnd=EnergyReset

    bekomme ich als Rückantwort von meinem Gosund SP1 (Tasmota 6.5.0):

    Code
    {"EnergyReset":{"Total":0.006,"Yesterday":0.003,"Today":0.003}}

    Ich möchte daraus natürlich nur den Wert von "Yesterday", also die "0.003" extrahieren.


    Das habe ich dann so geschafft:

    Code
    curl --silent http://IPvomSonOffPOW/cm?cmnd=EnergyReset | cut -d\" -f7 | cut -c 2-99 | sed 's/.$//'

    So kam als Ergebnis:

    Code
    0.003

    So kann man also mit einem Einzeiler den Wert täglich einmal ziehen und weiterverarbeiten, z.B. in einer Textdatei oder Datenbank, jeweils mit dem Datum ablegen.


    Ich wünsche viel Spaß und Erfolg!

    Meine Hardware@home: Fritzbox 7490, 3xFritzDect 200, 9xTasmota-Geräte, Syno NAS, Raspberry Pi 3B f. PiHole, Docker, TasmoAdmin, Portainer

    Einmal editiert, zuletzt von Marc ()

  • Einer geht noch... ;)

    falls du noch die Spannung loggen willst, bekommst du sie so:


    Code
    curl --silent http://IPvomSonOffPOW/cm?cmnd=Status%2010 | cut -d\" -f29 | cut -c 2-99 | sed 's/.$//' 2>&1

    Ausgabe:

    Code
    233

    Meine Hardware@home: Fritzbox 7490, 3xFritzDect 200, 9xTasmota-Geräte, Syno NAS, Raspberry Pi 3B f. PiHole, Docker, TasmoAdmin, Portainer

  • Hi, direkt in Tasmota gäbe es nur die Möglichkeit die Daten über Rule und Variablen aufzusummieren,

    ...wär mir zu umständlich.


    Bei Node-RED kann man dafür eine Datenbank im Hintergrund laufen lassen (z.B. MySQL).


    Das Ganze ist eine 'klassische Aufgabe' für eine Home-Automatisierung -

    wie schon erwähnt ioBroker...


    In Domoticz brauch ich dafür nicht mal einen extra Adapter noch MQTT installieren,

    es funktioniert out of the box inkl. grafischer Darstellung der Daten über 1 Jahr

    und ganz ohne endlosem VIS-Gebastel ;)


    Idx eintragen und schon erfolgt die Datenaufzeichnung und mit einem Click zum fertigen Diagramm.

  • Danke für die Info! Im Grunde habe ich hier eine DB am laufen mit InfuxDB nur dachte es gäbe auch vielleicht in Tasmota auch eine Möglichkeit. Was das Dashboard angeht baue ich mir meine Sachen lieber selber als wenn man was fertiges nimmt so wie ioBroker und Co. da weiß ich dann was alles so läuft und wenn es ein Problem gibt, findet man den Fehler auch leichter.

  • Ja gut so, war auch nur als Vorschlag gedacht.


    Die Möglichkeiten in Tasmota -> wie oben genannt -

    für viel mehr Datenverarbeitung reicht der iRam und wohl auch Flash dann nicht.


    Die Frage bleibt nur, wie konsequent kann man das "baue ich mir meine Sachen lieber selber" durchziehen,


    programmiert man sich dann eine Tasmota / Node-RED /...-Alternative auch selbst,

    strickt man Pullover / baut sich sein Auto selber... :)


    LG

  • Meine Gedanken für eine sehr einfache Lösung zum Selberbauen:

    1. tägliche 1x Ausführung zum Holen vom Wert für Yesterday
    2. Ablegen bzw. Hinzufügen dieses Wertes in einer Datei (tag.txt)
    3. am 1. des Monats werden alle Werte aus der tag.txt zusammengerechnet, in eine monat.txt gespeichert, sowie die tag.txt geleert
    4. am 1.1. jedes Jahres werden die 12 Werte aus der monat.txt zusammengerechnet, in eine jahr.txt gespeichert, sowie die monat.txt geleert.

    Meine Hardware@home: Fritzbox 7490, 3xFritzDect 200, 9xTasmota-Geräte, Syno NAS, Raspberry Pi 3B f. PiHole, Docker, TasmoAdmin, Portainer

  • Ich habe das Script in sehr einfacher Ausführung geschrieben. Das Script läuft bei mir auf einem Raspberry und wird 1x morgens um 2:30 Uhr durch einen Cronjob aufgerufen.


    Dabei zieht es den Yesterday-Wert vom eingestellten Endgerät und speichert diesen in einer Textdatei (Tag) ab.

    Jeden 1. im Monat rechnet es alle Werte zusammen und packt das Ergebnis in eine weitere Textdatei (Monat) und leert die Textdatei (Tag).

    Am 1.1. jeden Jahres rechnet es die 12 Werte aus der Textdatei (Monat) zusammen und legt eine Textdatei für das betreffende Jahr an und leert danach die Textdatei (Monat).


    So hat man die Tageswerte vom laufenden Monat, die Monatswerte vom laufenden Jahr und die Jahreswerte von jedem Jahr.


    Anpassen muss man im Configbereich das Verzeichnis, wo das Script liegt, den IP-Bereich vom Netzwerk (bei mir z.B. 192.168.0.) und das Endgerät (letzte Nummer der IP). Dann einfach einen Cronjob auf das Script, der es nur 1x täglich ausführt (nicht mehrmals!).


    Falls das Endgerät passwortgeschützt ist, muss man im Script im Bereich "Holen der Daten" noch die Logindaten einbauen. Hier der Codeschnipsel:

    Code
    user=admin&password=DeinPasswort&


    Und bitte nicht über die Qualität vom Code philosophieren. Es geht bestimmt irgendwie besser. Ich bin aber kein Programmierer. :S

    Ich übernehme auch keinerlei Gewährleistung. ;)

    Gerne kann das Script weiterverwendet oder auch verbessert werden. Ich würde mich freuen, wenn man die Verbesserung hier öffentlich macht, damit es jeder nutzen kann.

    Meine Hardware@home: Fritzbox 7490, 3xFritzDect 200, 9xTasmota-Geräte, Syno NAS, Raspberry Pi 3B f. PiHole, Docker, TasmoAdmin, Portainer

    2 Mal editiert, zuletzt von Marc ()

  • Hi Marc,

    Bin eben auf dein Script gestoßen :thumbup:

    Genauso möchte ich's auch lösen.

    2018 hab ich schon mal am Raspi 3 mit iobroker und dem Pow Experiment, hab den auch einbinden können. Seither auf Eis gelegt. Würdest du mir mit dem einbinden helfen "Cronjob auf das Script"

    lg

  • Das Script von Marc ist total Super!


    ABER wenn du schon einen Raspi mit IOBroker am laufen hast, kannst du diese Werte auch mit dem History Adapter aufzeichnen, und mit Flot grafisch darstellen. CSV Export zu Excel ist natürlich auch möglich.


    Ich erfasse zB über den POW die Zeit die mein Ölbrenner am brennen ist, und erreche daraus Betriebsstunden und Verbrauch und stelle diesen mit Flot, im Vergleich zu den Aussentemps. dar.

    Das geht natürlich in Excel auch, aber mit IOBroker um einiges einfacher ...

  • Würdest du mir mit dem einbinden helfen "Cronjob auf das Script"

    Schau mal hier:

    http://raspberry.tips/raspberr…m-raspberry-pi-einrichten


    Zu meinem Script:

    Ich frage derzeit um 3.30 Uhr meine vier Steckdosen ab. Inzwischen habe ich auch ein Script gebastelt, welches die Werte auf Yesterday, 7 Tage, 30 Tage, 90 Tage und 180 Tage ausrechnet, die Durchschnittswerte anzeigt und auch farblich markiert die Prozente jeweils angibt.

    Mein Script ist aber inzwischen ein Moloch, da ich immer wieder rumgebastelt habe. Ich will die nächsten Wochen das noch mal überarbeiten bzw. neu setzen. Wenn ich soweit bin, veröffentliche ich hier die neueste Version.


    Probiere auch mal den Lösungsweg von Einstein67. Der ist auch super. So hat man gleich eine grafische Auswertung.

    Meine Hardware@home: Fritzbox 7490, 3xFritzDect 200, 9xTasmota-Geräte, Syno NAS, Raspberry Pi 3B f. PiHole, Docker, TasmoAdmin, Portainer

  • Schönen Feiertag!

    Bin fasziniert von euren Umsetzungen. Mein Raspi noch Modell B, eine zähe Angelegenheit zumindest mit iobroker.vis vom Handy aus. Die Vorstellung damals siehe unten. Das steuern der Sonoff's und Cam's geht ja ohne Raspi auch, Beitrag "Garagentor Steuerung". Beim Pow, schaut mich die Raspi Script gut an. lg

  • Ohne Zugriff auf den Ntp_servers geht die Uhr wahrscheinlich auf Zeit falsch

    Ja, die geht falsch! Habs vor längerer Zeit mal getestet und da waren es mehrere Minuten pro Tag.


    Allerdings wurde da ja auch viel optimiert, und das Ergebnis könnte jetzt besser sein.


    EDIT: So gerade einen neuen Test gestartet. Zeit manuell auf 10:45 gesetzt und NTP-Sync auf Aus. In 6 Stunden werde ich vergleichen :)

  • Die Energiemessung wird dann nur mit dem umstellen zum nächsten Tag beeinflusst. Wenn dem so ist, wird doch durch Gelegentliche Korrektur das Ergebnis verfälscht oder. Ich lasse den Router nur bei Gebrauch ins Netz. lg