From the dynamic ess manual it is not clear to me what is meant by system efficiency.
From the manual: ### Q: What about the efficiency losses of the battery?
Dynamic ESS on VRM takes battery losses into account. The system looks at the dbus service com.victronenergy.settings, path Settings/DynamicEss/SystemEfficiency.
On my system the grid->battery losses are 10% and the battery-> grid losses are also 10%. Making a total roundtrip efficiency of 80%.
If I look with dubs-spy at the system efficiency, it is set at 90%.
Should I change this to 80% to reflect my roundtrip efficiency?
Are you discharging into grid from battery?
Are you charging from grid as well?
Is your pv AC or DC. All of the above methods to feedback have different efficiencies.
The inverter efficiency can be as high as 90% depends on load as well.
I have seen poor set ups also create poor efficiency.
So it will be one of those things you learn from your system through use.
So yes the answer is unclear as it really is - It depends on your system design and construction.
The efficiency of the ESS system is considered (by default) to be 90%, meaning that if your solar yield is 10kWh and you put that in your battery, you are able to only pull 9kWh back out of it (for either consumption or selling to the grid). Note that this is not only the efficency of the battery, but also includes inverter losses.
I saw that statement from one of the development notes for v3.2
I haven’t used DESS recently so i can say if it (the efficiency figure) is editable
I don’t think it will be round trip. I could be corrected
Solar production does not have round trip efficiency. It only moves one way.
It does not make sense that round trip is counted.
Charging is one direction - discharge is one direction. Efficiency is based on the direction of flow. In the explanation it says 10kw but onky 9 stored = 90% efficiency - one direction
Then you should be able to calculate the value to be entered under dbus service com.victronenergy.settings , path Settings/DynamicEss/SystemEfficiency from the Victron production report:
That is now the round trip efficiency. And yes can be calculated.
When buy and sell are happening it is a one way trip. DESS will deal with one way at a time.
Efficiency now on a battery is also determined by how often your are balancing etc.
You can edit the dBus figure to reflect your efficiency.
I don’t think it should be the round trip but one way figure.
This would be 87% efficient if you take the middle ground.
But that also wont be fixed, because it will also depend on how fast you charge and discharge your battery. And how much you loose to heat.
Do you charge and discharge at the same rate?
Friday morning 22/11/2024 DESS was planning to buy at 13:00 at €0,27 and sell 5 hours later at 18:00 at €0,32.
System efficiency was set at 90%.
So first there is 10% loss grid-to-battery
At 13:00 hr buy 2kWh x 0,27 = €0,54 costs and 1,8kWh in the battery
And there is battery cost 0,01/kWh x 2 kWh = €0,02
Next there is 10% loss battery-to-grid
At 18:00 hr sell 1,65kWh x 0,32 = €0,53 sale
So the sale (€0,53) minus the costs (€0,56) results in a loss of 3 cents!
However DESS thinks it can make a profit. This is only possible if you leave out the battery-to-grid losses.
Sell 1,8kWh x 0,32=€0,58.
So the sale (€0,58) minus the costs (€0,56) results in a profit of 2 cents.
Then I changed the system efficiency to 80% and DESS changed its mind on the next hourly run and removed the buy/sell from the forecast. So now with 80% set, DESS sees the X cents loss!
Conclusion: The system efficiency in dbus is only for grid-to-battery or pv-to-battery.
For now I keep the system efficiency set on 80%. This way I avoid losses.
Does it really matter whether the effectiveness is 78% or 84%? If in doubt, I would increase the battery costs by 1 cent and then you would be on the safe side and not lose any money. On the other hand, in the last few weeks there have been price differences of 10-90 cents on the spot exchanges. I don’t want to offend anyone and of course a system should work correctly, but the economically decisive factors are different.
Ultimately, someone from Victron would have to answer that, we can only try to understand it as well as possible…
As already mentioned above, the production report gives me an efficiency of 75% if you put the amount of discharge energy in relation to the amount of charge energy:
Anyway, I have observed that DESS with Settings/DynamicEss/SystemEfficiency = 75 and battery costs in the range of 1 to 3 cents/kWh only charges the battery from the grid and later uses it to supply the AC loads if charging price / consumption price <= 0.75, as it should be.
Another question is:
Is this (user set) value taken into consideration?
I mean, did you really tested it with different values and the system is behaving differently?
Modifying only this value and see some different behaviors?
I’ve asked because I’ve took a look in the code and although the value is read, I didn’t find any reference to the read value.
Maybe I am rusting and I am missing things…
Calculating round-trip efficiency is complete crap for some batteries!!!
I have Pytes EBox 48100R connected to Multiplus II via BMS-CAN.
The BMS is not taking the voltage into account when accumulating the charged / discharged energy. It only relies on the charge/discharge current and a fixed voltage of 51V, iirc.
This is because internally it is only counting “Coulomb” in Ampere*Seconds which can be translated into Ampere Hours. This can be verified by reading the Coulomb counters via RS232, convert to Ampere Hours, multiply with 51V, compare with reported charged/discharged energy in GX.
Usually charge voltage is higher than discharge voltage. Hence, the numbers reported via BMS-CAN are very much biased.
In order to fix this, they have to update their firmware. As a workaround a smart measurement shunt could be added that also takes into account the voltage.
Hi @dognose
You worked a lot with DESS…
Did you saw any reference to the dess_efficiency (Settings/DynamicEss/SystemEfficiency) where this value is taken into consideration?
I mean in the original code…
Thank you!