[gelöst] Wie genau ist Sonoff POW?

Begonnen von andies, 15 August 2017, 14:13:45

Vorheriges Thema - Nächstes Thema

Reinhart

Zitat von: andies am 25 August 2017, 22:33:58
(Also nicht zipfile, sondern github - bin aber unsicher)

Gesendet von iPhone mit Tapatalk Pro

genau so wars, aber das Zipfile mit der letzten Version ist nun schon korrekt.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

andies

So, nun habe ich die letzte Version (5.6.1g, wenn ich das richtig erinnere). Sieht schon besser aus, ist aber noch immer nicht perfekt. Die rote Linie wird von DECT gemessen und muss immer größer sein als die blaue (Power direkt von Sonoff) bzw die grüne (von mir ausgerechnete power, einfach Factor*Voltage*Current). Es gibt nach wie vor Fehler, dass Sonoff mehr misst als da ist. Auch ist wieder eine Spitze da. Ich beobachte das mal, aber es könnte sein, dass ich das Gerät für meine Zwecke werde einsetzen können. Dazu müsste dann der Anstieg beim Entkalker auch in grün/blau deutlich und eindeutig sichtbar sein.

Aber es ist schon ein deutlicher Fortschritt zu 5.6.1a.
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

Reinhart

Zitat von: andies am 30 August 2017, 16:40:28
Es gibt nach wie vor Fehler, dass Sonoff mehr misst als da ist

Diese Fehler fallen mir auch immer auf, ich vermute wenn der Shunt über den gemessen wird nur Bruchteile abweicht hat man das Thema. Ich messe dann einfach die tatsächliche Spannung in der Steckdose und kalibriere dann den POW möglichst genau in der Konsole darauf. So richtig hundertprozentig ist das allerdings auch nicht, weil bei jedem Messzyklus die Spannung in der Ausgabe etwas schwankt aber besser wird es allemal.

Bei mir ist meist die angezeigte Spannung viel zu klein, 216 - 223V und tatsächlich habe ich 229 - 232, ich bin 150m neben dem Trafo.

Aber dein Plot kommt jetzt schon sehr nahe dem erwünschten Ziel.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

andies

Kalibrierst du alles: Spannung, Strom und Leistung?


Gesendet von iPad mit Tapatalk Pro
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

Reinhart

#19
Zitat von: andies am 30 August 2017, 23:01:44
Kalibrierst du alles: Spannung, Strom und Leistung?

ja aber meist nur rechnerisch ermittelt. Ich habe eine 100W Wärmelampe und da rechne ich den Strom aus und stelle diesen dann ein. Sonst braucht man einen Adapter dazwischen um den Strom zu messen.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

andies

Also, ich habe jetzt eine 48h-"Versuchsreihe". Ich hänge kein Bild an, weil auch die Verbesserung der Firmware und das Kalibrieren nichts genützt hat. Der Sonoff ist nicht genau genug im Bereich von 3-6W. Er zeigt die vorhandene Leistungsspitze nicht an, dafür mehrere Stunden später eine Leistungsspitze, die es definitiv nicht gab.

Der Shunt ist anscheinend dafür nicht ausgelegt. Deshalb ist das Gerät vermutlich auch um einiges billiger als der DECT. Ich werden Sonoff nutzen, aber eben nicht dafür, einstellige Wattleistungen genau zu messen. Schade, aber ist nun mal nicht zu ändern. Es wird sicher andere Verwendungsmöglichkeiten dafür geben, und sei es als Wifi-Lichtschalter.

(Soll ich das Thema schließen? Die Frage ist ja beantwortet.)
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

Reinhart

Fazit, mit der neuen Software ist es besser geworden, aber die Ungenauigkeit bei sehr kleinen Leistungen unter 10W ist unzureichend.

Ja schließ bitte den Thread ab und kennzeichne die Überschrift vorne als [erledigt], dann finden andere es schneller wenn sie in diesem Bereich was suchen.
Deine Plots sind ja sehr aussagekräftig um das Problem klar darzustellen!

LG
Reinhart
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

andies

Ich öffne das Thema mal wieder. Es gibt Neuigkeiten. In github hat mir jemand einen Tipp gegeben:

  • Telemetric period auf 30 (!) setzen.
  • Statt des richtigen Wertes von power einen gleitenden Durchschnitt benutzen, also PowerAv:Time.* {movingAverage("Sonoff_pow1","Power",300)} Zudem habe ich noch "event-min-interval 10" gesetzt.
Moving Average ist dem Wiki (https://wiki.fhem.de/wiki/Gleitende_Mittelwerte_berechnen_und_loggen) entnommen. Das glättet anscheinend die problematischen Stellen weg. Ich mache da mal eine Langzeitbeobachtung. Grün ist Sonoff, rot ist DECT in dem Bild unten.
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

andies

Hmm. Ich glaube, ich sollte das lassen. Schaut mal:
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

andies

Ja, das habe ich auch gemerkt. Man darf nicht Power auswerten, sondern anscheinend "difference Total". Das mittle ich dann und das ist stabiler als das gemittelte Power. Komisch. Aber so ist das nun mal.

Hier die beiden Größen graphisch abgetragen. Einmal PowerAv und einmal myPower.av
userReadings
PowerAv:Time.* {movingAverage("Sonoff_pow1","Power",300)}, myPower:Time.* difference { 1000*ReadingsVal("Sonoff_pow1","Total",0);;}, myPower.av:Time.* {movingAverage("Sonoff_pow1","myPower",300)}
 
ergibt das Bild unten.
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

andies

#25
Nun habe ich, nach einem Hinweis im github-Forum, die Sache doch in den Griff bekommen. Ich hatte einen Denkfehler. Power misst die unmittelbar aktuelle Last (in Watt), ich brauche aber das Integral davon - den Verbrauch in der Zeit (in Wattstunden). Also darf ich nicht Power anschauen, sondern muss die Differenz von Total beachten! Diese Differenz habe ich dann auch noch gemittelt. Ob meine Werte ideal sind, weiß ich nicht, aber sie funktionieren und der RPi läuft nicht heiß. Also lasse ich das so und in der Tat kann ich nun zwischen 3W (wahrscheinlich MilliwattStunden oder was auch immer) und 6W unterscheiden.

Die Readings lauten so
userReadings
myPower:Time.* difference { 1000*ReadingsVal("Sonoff_pow1","Total",0);;}, myPower.av:Time.* {movingAverage("Sonoff_pow1","myPower",360)}

und ich habe als Teleperiod 90 Sekunden eingestellt (hat sich als sinnvoll erwiesen, 30 war einfach zu viel). Die movingAverage-Funktion habe ich aus dem Wiki. Dann ergibt sich folgendes Bild. Rot ist der DECT, blau die ungemittelte Differenz aus Total (die schwankt schon ein wenig hin und her) und grün der gleitende Mittelwert. Grün und rot zeigen die gleiche Richtung an, ich kann sehr genau erkennen, wann der Entkalker anspringt. Vielen Dank an alle, die mir hier geholfen haben.

Ich habe das Wiki entsprechend angepasst, dort sind mehr Details zu finden. Und das Thema angepasst (erledigt -> gelöst).

<EDIT> Eine Woche später: Alles immer noch stabil, wie oben beschrieben.
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann