Negative Diagramm-Werte mit -1 multiplizieren und positive anzeigen

Begonnen von maxnomo, 24 April 2021, 19:35:23

Vorheriges Thema - Nächstes Thema

maxnomo

Beim Auslesen meine PV Leistung kommen NEGATIVE Werte raus ,als z.B. -5120 Watt. Im Diagramm will ich aber positive Werte haben. Ebenso will ich 2 Readings (PV_Erzeugung MINUS Einspeisung ) voneinander abziehen und auch im Diagramm darstellen... Wer kann Helfen. Ich bin erst seit 1 Woche dabei...

Otto123

Willkommen.
Bitte beachten:
https://forum.fhem.de/index.php/topic,71806.0.html

userReadings wäre das Stichwort. Mehr Infos - mehr Feedback ;)

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle

aktives Mitglied des FHEM e.V. (Technik)

maxnomo

Hallo,
ich weiss ja noch nicht so auf was es ankommt. Im USERRERADINGS steht ein Beispiel wie folgt: attr HZ_EINSTRAHLUNG_T userReadings SolarTemp {ReadingsVal("HZ_EINSTRAHLUNG_T","reading",0)/10 ." °C"}
Daraus hab ich folgendes gebastel:

attr powerfox_PV userReadings POS_Power_PV {ReadingsVal("Power_PV","reading",0)*-1""}

Ich will eigentlich nur das Vorzeichen des Power_PV Wertes ändern. Aber die Syntax ist wohl falsch. PERL kann ich leider (noch) nicht.

KölnSolar

Vielleicht ist die Alternative einfacher für Dich: In den plotfiles lassen sich auch Funktionen benutzen. Für Deinen Fall sollte $fld[3]=-$fld[3] funktionieren.

Ich spekuliere, dass das userReadings so aussehen sollte
attr powerfox_PV userReadings POS_Power_PV:Power_PV {-ReadingsVal("powerfox_PV ","Power_PV",0)}
Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Otto123

und das zweite wäre dann so in der Art - mangels Information natürlich nur geraten :)
differenz:Power_PV:.* {ReadingsNum("powerfox_PV ","Power_PV",0) - ReadingsNum("powerfox_PV ","Einspeisung",0)}
Hier wären jetzt noch Infos zu den Funktionen: https://fhem.de/commandref_DE.html#perl
ZitatAber die Syntax ist wohl falsch.
Du hast falsch abgeschrieben und und es hätte einen Fehler geben müssen :)
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle

aktives Mitglied des FHEM e.V. (Technik)

maxnomo

@Köln Solar: im Ploteditor hat das $fld[3]=-$fld[3] geholfen. Danke  :) :) :)

Nur so zum Verständnis: woher weiss ich, dass das Argument der Wert $fld[3]  sein soll. Als Newbe erschliesst sich mir das keineswegs  :'(.

Die andere Lösung hat nix gebracht. Weiterhin keine Werte zum Anzeigen.

Otto123

Zitat von: maxnomo am 25 April 2021, 12:04:06
Die andere Lösung hat nix gebracht. Weiterhin keine Werte zum Anzeigen.
Wie ist das zu verstehen?
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle

aktives Mitglied des FHEM e.V. (Technik)

KölnSolar

Zitatwoher weiss ich, dass das Argument der Wert $fld[3] 
Einfach mal die "Wörter" einer Zeile im Datenfile zählen, dann macht es Klick. ;) Der kWh-Wert ist das wievielte "Wort" ?

ZitatDie andere Lösung hat nix gebracht
Das liegt dann leider an Dir.  :'( Ohne das konkrete Ergebnis eines list devicename können wir die Namen Deines devices u. dessen readings ja nur erraten. ???
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

maxnomo

Hallo,
ich hab im Logfile folgende Daten:

2021-04-26_10:22:30 powerfox_Verbr_Einsp power_V: -9265
2021-04-26_10:23:30 powerfox_PV power_PV: -9751
2021-04-26_10:23:30 powerfox_Verbr_Einsp power_V: -9199
2021-04-26_10:24:30 powerfox_PV power_PV: -9764
2021-04-26_10:24:30 powerfox_Verbr_Einsp power_V: -9189
2021-04-26_10:25:30 powerfox_PV power_PV: -9810
2021-04-26_10:25:30 powerfox_Verbr_Einsp power_V: -9259
2021-04-26_10:26:30 powerfox_PV power_PV: -9880
2021-04-26_10:26:30 powerfox_Verbr_Einsp power_V: -9304
2021-04-26_10:27:30 powerfox_PV power_PV: -9915
2021-04-26_10:27:30 powerfox_Verbr_Einsp power_V: -9365
2021-04-26_10:28:30 powerfox_PV power_PV: -9943
2021-04-26_10:28:30 powerfox_Verbr_Einsp power_V: -9466
2021-04-26_10:29:30 powerfox_PV power_PV: -9960
2021-04-26_10:29:30 powerfox_Verbr_Einsp power_V: -9534
2021-04-26_10:30:30 powerfox_PV power_PV: -9987
2021-04-26_10:30:30 powerfox_Verbr_Einsp power_V: -9500
2021-04-26_10:31:30 powerfox_PV power_PV: -10025
2021-04-26_10:31:30 powerfox_Verbr_Einsp power_V: -9520
2021-04-26_10:32:30 powerfox_PV power_PV: -10043
2021-04-26_10:32:30 powerfox_Verbr_Einsp power_V: -9541

Die beiden Messwerte sollen nun voneinander abgezogen werden und grafisch dargestellt werden.

Wie geht das ?

Danke

Otto123

Hi,

mit meinem Vorschlag konntest Du nichts anfangen und den anpassen? Dazu ist eigentlich keine Perlkenntnis notwendig :)
Mein Vorschlag von Oben mangels Info
differenz:Power_PV:.* {ReadingsNum("powerfox_PV ","Power_PV",0) - ReadingsNum("powerfox_PV ","Einspeisung",0)}
So abgewandelt für stumpfes C&P ::)
attr powerfox_PV userReadings differenz:power_PV:.* {ReadingsNum("powerfox_PV","power_PV",0) - ReadingsNum("powerfox_Verbr_Einsp ","power_V",0)}

Das neue Reading differenz musst Du natürlich mit loggen und ins Diagramm bringen.  :-X aber Du kannst das neue Reading natürlich auch Willi oder POS_Power_PV nennen.

Und wenn Du meine beiden Links nicht liest und auch beachtest - spiel ich nicht mehr mit  >:(

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle

aktives Mitglied des FHEM e.V. (Technik)

maxnomo

Hallo,
habe die Strukturierung des FHEM wohl noch nicht verstanden. Das Web WIKI bringt hier nur Bits-and-Pieces aber keine für mich verständlich strukturierte Erklärung. Ich hätte gerne ne grafische Eräuterung mit denganzen Interdependenzen. Im Moment bin ich noch am Einlernen.

Wo muss dieser Befehl rein?

Danke f die Geduld

maxnomo

Hab das CpoyPaste probiert (nachdem die ganze Zeile zu sehen war, also vorigen Post bitte vergessen)

Fehlermeldung: powerfox_PV: bad attribute name 'differenz:power_PV:.*' (allowed chars: A-Za-z/\d_\.-)

Und nu?

Otto123

Mein Fehler, habs korrigiert. :D
Auf der Wiki Startseite gibt es einen extra Kasten mit Erklärungen/Links für Anfänger. Suchst Du die hier? https://wiki.fhem.de/wiki/Erste_Schritte_in_FHEM

Du trägst entweder den relevanten Teils des Codes ins Attribute userReadings ein oder führst die Code Zeile in der FHEM Kommandozeile aus.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle

aktives Mitglied des FHEM e.V. (Technik)

maxnomo

@otto: Danke. Nun klappt es wie gewünscht. Die Differenzen sind angezeigt. Auch der Vorzeichenwechsel klappt.   :) :) :)  Vielen Dank der Community

Das einzige was ich nicht verstehe ist die Syntax von $fld[3]=-$fld[3].

$ heisst Variable.
dann folgt ein Array mit dem 3. Element.
Aber woher weiss ich den Namen des Arrays: fld ??? 
Kann nichts finden..

Sonnige Grüsse

Otto123

Steht hier im Wiki :)
https://wiki.fhem.de/wiki/Creating_Plots
Schneller verbreitet sich dieses Wissen durch die Community :) wenn's alle wissen ist es selbstverständlich und nicht mehr "der Rede wert" ;)
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle

aktives Mitglied des FHEM e.V. (Technik)