question

enodev avatar image
enodev asked

How does ESS MPPT throttling work

Hello World,

I would like to understand if there is a DBUS path or Victron Node RED node or parameter that can be observed to see when ESS starts throttling MPPT charger. I have looked everywhere and I do not seem to find anything related.


To explain why I need this.


When grid feed-in is enabled MPPT is operating at full power, and by looking at Multiplus AC Out and MPPT power output I can see how much Excess PV there is available. I can later use the excess PV to enable/disable and drive custom EV charger current to only charge a car with excess PV. It works great and I can share the Node RED workflow if anybody is interested.


However, now that the European summer season is coming, spot energy prices will mostly go negative during the PV production day, and therefore grid feed in will need to be disabled most of the day to avoid being penalised for grid feed in.


Now when the house battery is full, ESS starts throttling the MPPTs and their power output pretty much matches the house AC loads. Which is great. But that makes it impossible to compute how much possible PV excess is there.


So is there a way to observe that


a/ MPPT throttling is activated

b/ How much of the throttling is in place - to extrapolate potential PV power?


I am attaching an example screenshot from my dashboard. House battery is full, grid idle (grid feed in disabled because of negative sell price), and excess PV low since MPPT is throttled to match house AC load. Therefore the EV charger says "Waiting for Sun" which is not actually true since there is plenty sun.


thanks for any hints,

Martin


screenshot-2023-06-04-at-122556.png

MPPT ControllersESSev charging station
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

5 Answers
Mike Dorsett avatar image
Mike Dorsett answered ·

I've not looked at this from the Dbus side, but I detect throttling on my system by looking at the max current setpoint of the MPPT unit. Once this is reduced from the unit maximum, throttling is taking place. You can try looking at the following dbus services:

com.victronenergy.solarcharger:
Charge state
MPP operation mode

Once the MPPT operation mode goes from MPPT to CC/CV mode, then you know that limiting is taking place.

2 comments
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

enodev avatar image enodev commented ·

Hi @Mike Dorsett, thanks for the tips. I have found MPPT Operation Mode under Node Red Solar Charger node, and am watching it how it will change once battery is full and feed in is disabled. Looks promising. Charge state is also available to see if we are in Bulk, Float, etc...


Any tip how to extrapolate to find potential PV power? If that is even possible?


screenshot-2023-06-05-at-164222.png

0 Likes 0 ·
pedaaa avatar image pedaaa enodev commented ·
would be nice to know.

But my initial idea would be, to just increase consumption step by step, once the MPPTs are throttled.

Just until they are not throttled anymore and/or the systems starts to use Battery Power -> then decrease consumption a bit again.

0 Likes 0 ·
Mike Dorsett avatar image
Mike Dorsett answered ·

you also need to check when the MPPT first goes into CC mode, that the Battery current from the MPPT register is LESS than the maximum current for the unit.

How are you going to vary consumption? Normally in a system this is determined by the load, which is an uncontrolled variable?

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

enodev avatar image
enodev answered ·

Let me explain the original main goal behind the question.

The EV charger can either use 1phase, or 3phases.

The minimum charging current per phase is 6A.

When the EV charger starts with 1phase, the load on one phase bumps immediately by ~ 1380W,

When the EV charger starts with 3phases, the load bumps immediately by ~ 4000W,

The goal is to determine whether there is enough *Excess PV Power* available to start the EV charger, either on 1phase, or 3phases without drawing the power from Grid.


In our case, I will do this mostly when the house battery is already full.

A side note: house battery is much smaller than EV battery, so when the EV charger is active, the house battery needs to be put into idle mode so that it is not accidentally discharged into the car.


So you are left with Grid and PV only to charge the EV.


Computing excess PV is easy when Grid Feed In is enabled, because DC/AC coupled PV works on its maximum and you can easily compute the excess PV, for example by looking at the grid feed in.


But when the Grid Feed In is disabled, for example because the spot rices are negative, the AC/DC PV will get throttled to only accommodate the load.


The workaround I am using right now is to start the EV charger on low speed (6A) from grid anyway and observe for some time whether the PV has enough juice and whether it will ramp up, and if not, it will stop the EV charger automatically after some time, and then try manually again.


But out of academic interest, I'd love to find a nice solution that allows me to leave the car plugged in all the time, and push remaining PV juice in when available...

1 comment
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

apple047 avatar image apple047 commented ·

Sorry it’s not a direct answer to your question but, have you considered a sensor in the same plan as your array so you can measure irradiance and calculate the maximum theoretical power?

A dedicated pyanometer would be nice but reference cells are a lot more affordable

1 Like 1 ·
bigbadbob76 avatar image
bigbadbob76 answered ·

So to answer one of your questions.... Mppt is throttling when it is in abs or float mode.

mppt mode is available as a dbus value. Off the top of my head I think it is called "state".


As for knowing how much potential pv is available without trying to power a load, you would need an irradiance meter.

But you could do something like-

if mppt.state == 2 or mppt.state==3 (abs or float) then switch a relay to divert the panels to a fixed resistance dump load, measure the power produced and if it is enough then switch panels back to the mppt and enable the charger. repeat every 30 mins to check the sun is still out and power is enough.

2 comments
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

bigbadbob76 avatar image bigbadbob76 commented ·
to measure the power produced, use the pv panel voltage squared divided by the dump load resistance. ;-)
0 Likes 0 ·
enodev avatar image enodev commented ·
Thanks for the tip, much appreciated. I could find the MPPT state on dubs, and i did also find a power limit provided by Fronius. Both of these indicate that MPPT and Fronius are throttled and there may be more PV. Looks like there is no easy way to compute how much more without additional hardware…
0 Likes 0 ·
Mike Dorsett avatar image
Mike Dorsett answered ·

I made an irradience meter from a small solar panel ( about 5W or so) , loaded with a low value power resistor (P > panel rating). This was connected to a spare analogue input, the resistor value was low enough that under full sun the voltage was less than the MPPT voltage, this ensures that you are operating in the linear range. You can then use the voltage across the resistor as an indication of the pv power available. The panel should be mounted in the same plane as the main solar array.

1 comment
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

enodev avatar image enodev commented ·
Thanks for the detailed explanation Mike!
0 Likes 0 ·