NEWS
Test Adapter Energiefluss-erweitert v0.6.2
-
@leonundjulie Gut, wenn die
value
passend ist, benötigst Du nun denunit
- Bereich.Dieser ist genauso aufgebaut. Heisst, wir befinden uns hier weiterhin in JavaScript und nicht JAVA
Für jedes Property - in dem Falle
value
undunit
müssen diese Berechnungen erfolgen.
Dies ist generell bei Javascript natürlich nicht der Fall - da könnte man problemlos die Syntax nutzen, die du dort anstrebst.Heisst somit, du nutzt die "Basis-Berechnung für beide Fälle. Hintergrund ist, das dies jeweils 2 verschiedene Funktionen sind und die Variablen der anderen Funktion nicht zur Verfügung stehen (Out of Scope).
Basisberechnung:
const percentInWatt=Number(3000*{modbus.0.holdingRegisters.41046*Aout_Output*%})/100; const WB_in_Watt=Number({modbus.0.holdingRegisters.41605_car_charge_1_power}); const verbrauch = val - percentInWatt - WB_in_Watt; return verbrauch>1000 ? (verbrauch/1000).toFixed(2) : vebrauch
Was hier auffällt, ist das modifizierte
return
Statement. Hier wird geprüft, obverbrauch
größer als 1000 ist, wenn ja, gebe(verbrauch/1000).toFixed(2)
zurück. Ansonsten eben nurverbrauch
als Zahl.Ergibt dann:
{ "default": { "value": "val => { const percentInWatt=Number(3000*{modbus.0.holdingRegisters.41046*Aout_Output*%})/100; const WB_in_Watt=Number({modbus.0.holdingRegisters.41605_car_charge_1_power}); const verbrauch = val - percentInWatt - WB_in_Watt; return verbrauch>1000 ? (verbrauch/1000).toFixed(2) : vebrauch }" } }
Berechnung der
unit
:
Gleiche Berechnung wie oben. Allerdings mit einem anderenreturn
Statement.return verbrauch>1000 ? 'kW' : 'W' ;
Insgesamt sieht deine Überschreibung dann wie folgt aus:
{ "default": { "value": "val => { const percentInWatt=Number(3000*{modbus.0.holdingRegisters.41046*Aout_Output*%})/100; const WB_in_Watt=Number({modbus.0.holdingRegisters.41605_car_charge_1_power}); const verbrauch = val - percentInWatt - WB_in_Watt; return verbrauch>1000 ? (verbrauch/1000).toFixed(2) : vebrauch }", "unit": "val => { const percentInWatt=Number(3000*{modbus.0.holdingRegisters.41046*Aout_Output*%})/100; const WB_in_Watt=Number({modbus.0.holdingRegisters.41605_car_charge_1_power}); const verbrauch = val - percentInWatt - WB_in_Watt; return verbrauch>1000 ? 'kW' : 'W' ; }" } }
-
@hant0r Danke für die Klarstellung. Ist in der Mache!
-
@skb Danke für Deine Mühe. Dank Deiner Erklärungen denke ich, dass ich es auch verstanden habe.
Das Ergbenis: es läuft (Dein Update auf 6.2 von heute Morgen ist natürlich schon drin ) nachdem ich zwei Schreibfehler korrigiert hatte.
Die finale Version:
{ "default": { "value": "val => { const percentInWatt=Number(3000*{modbus.0.holdingRegisters.41046_Aout_Output_%})/100; const WB_in_Watt=Number({modbus.0.holdingRegisters.41605_car_charge_1_power}); const verbrauch = val - percentInWatt - WB_in_Watt; return verbrauch>1000 ? (verbrauch/1000).toFixed(2) : verbrauch }", "unit": "val => { const percentInWatt=Number(3000*{modbus.0.holdingRegisters.41046_Aout_Output_%})/100; const WB_in_Watt=Number({modbus.0.holdingRegisters.41605_car_charge_1_power}); const verbrauch = val - percentInWatt - WB_in_Watt; return verbrauch>1000 ? 'kW' : 'W' ; }" } }
Und dann sieht es so aus (habe den Heizstab im Boiler auf 20% = 600 W eingestellt) - zufällig kommen auch ein paar Watt von den PV-Feldern, so dass viel Bewegung auf dem Screen ist :
.Jetzt muss ich alles noch optisch tunen, aber letztendlich sehe ich jetzt 587 W Hausverbrauch. Die Wallbox kann ich in diesem Moment nicht testen weil das eAuto gerade X-MAS Shopping macht
Soweit ist alles top, Danke!
-
Moin moin,
sag mal, lässt es sich irgendwo einstellen, dass die die Verbinder gegenseitig nicht in der Fabgebung beeinflussen?
Habe die Linien mit einer Transparenz von 0,2 eingestellt, aber dadurch das mehre übereinander liegen, summiert sich leider die Tranparenz und ein Teil ist dadurch sichtbarer als gewollt:Frohe Weihnachten euch allen
-
@hant0r Wie soll das bei Transparenz gehen? Ist ja quasi "natürlich", dass sich das addiert,
-
@merlin123 sagte in Test Adapter Energiefluss-erweitert v0.6.2:
@hant0r Wie soll das bei Transparenz gehen? Ist ja quasi "natürlich", dass sich das addiert,
Naja, vielleicht durch eine Einstellung, dass aus Transparenz-Wet 1 + 1 nicht 2 wird sondern es beim maximal Wert der Objekte (in dem Fall 1) bleibt
-
@hant0r du erwartest immer alles! Wie soll hier alles adoptiert werden, was du wünschst?
-
@hant0r Das wäre aber für andere ein völlig unlogisches Verhalten.
-
@skb sagte in Test Adapter Energiefluss-erweitert v0.6.2:
@hant0r du erwartest immer alles! Wie soll hier alles adoptiert werden, was du wünschst?
Ich erwarte doch gar nichts! Ich habe lediglich gefragt, ob es vielleicht eine Einstellung dazu gibt, die ich noch nicht gefunden habe. Dein Adapter ist ja sehr umfangreich.
-
@hant0r ... dennoch hebelt er nicht die Gesetze aus