Code Monkey home page Code Monkey logo

Comments (27)

fboundy avatar fboundy commented on May 25, 2024

That looks pretty optimal to me.... Mine looks pretty similar - albeit with only the 10% Solcast forecast showing that much sun.

The cheapest slots are basically 3:00 to 5:30. After that it is, like you say, holding charge at 100% for a bit so that the solar when it kicks in will get you past the Peak. If earlier slots were used I suspect the solar wouldn't get you to past Peak rate so you would be worse off overall. Everything you are buying costs less than your export tariff so it makes sense to take as much as possible. Some of you 11 kWh of solar is then exported for the period from about 10:00 to 14:00 when you are at 100% SOC.

The only slot that maybe doesn't make sense is the last one but again it may be that buy buying a little at ~20p you save having to buy half that at 40p. If you send through the full log I could diagnose a bit better.

I am finding the Xmas has skewed my consumption history quite a bit - using more days will iron this out depending on how much history your keep in HA.

Threshold per pass and per slot probably won't make much difference. They are there to weed out marginally beneficial charge/discharge slots that don't make a material difference.

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

Hit a problem. Noticing the inverter isn't being commanded correctly on occasions.
I've failed to get AppDaemon file logging working (still no idea why, very frustrating), but from the console log it shows the following:

Screenshot 2024-01-04 at 22 34 26 Screenshot 2024-01-04 at 22 34 14 (I should add, I manually set the 15:21 @ 50amp earlier as it failed to auto set a charge.)

My inverter is a 6kWh Solis and the 4x Pylontech batteries (U2000C) allow for 100amp max charge (25amp per battery), but the 6000W @ 48.6v = 123.5 amp. Could this be attempting to command the inverter charging at a greater rate than the BMS/inverter allows? Or is it something else?

I've now manually set the charge to 100A.
image

Thanks.

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024
image Screenshot 2024-01-04 at 22 53 38 Some inverter values that may help... Note I manually set the charge time and amps when the PV_Opt hit the issue.

from pv_opt.

fboundy avatar fboundy commented on May 25, 2024

from pv_opt.

fboundy avatar fboundy commented on May 25, 2024

from pv_opt.

fboundy avatar fboundy commented on May 25, 2024

I think you are right in that the BMS Limit of 100A overrides the desired 6000w. The simple fix is to set your charger to be 5000w since it can't actually charge at 6000w with your batteries. I will also try to add a check to see if the desired charge/discharge current exceeds the BMS limits.

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024
image

Ok, I've adjusted the battery charging down accordingly. Also switched to Solcast P10 and it just started charging the batteries. I still can't understand why it would do this now and not wait until 13:30 when it's cheapest. Is it the historic load playing a part? Even so, this is after the cheap rate too.

Thanks.

from pv_opt.

fboundy avatar fboundy commented on May 25, 2024

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

2024-01-06 12:34:14.508175 INFO pv_opt: 07/01 00:00: 0.50 kWh at 8.41p. <==> 06/01 22:30: 15.61p/kWh 7.78p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 19.7% Net: 580.9
2024-01-06 12:34:14.605612 INFO pv_opt: 07/01 00:00: 0.50 kWh at 8.41p. <==> 06/01 22:30: 15.61p/kWh 7.78p SOC: 15.0%-> 19.7% New SOC: 15.0%-> 24.5% Net: 581.3
2024-01-06 12:34:14.715828 INFO pv_opt: 07/01 00:00: 0.50 kWh at 8.41p. <==> 06/01 22:30: 15.61p/kWh 7.78p SOC: 15.0%-> 24.5% New SOC: 15.0%-> 29.2% Net: 581.0
2024-01-06 12:34:14.858058 INFO pv_opt: 07/01 00:30: 0.43 kWh at 7.21p. <==> 06/01 22:30: 15.61p/kWh 6.67p SOC: 15.0%-> 29.2% New SOC: 15.0%-> 33.2% Net: 580.4
2024-01-06 12:34:15.194761 INFO pv_opt: 07/01 01:30: 0.29 kWh at 4.65p. <==> 06/01 22:30: 15.61p/kWh 4.59p SOC: 15.0%-> 33.2% New SOC: 15.0%-> 36.0% Net: 580.2
2024-01-06 12:34:15.289435 INFO pv_opt: 07/01 01:30: 0.29 kWh at 4.65p. <==> 06/01 22:30: 15.61p/kWh 4.59p SOC: 15.0%-> 36.0% New SOC: 15.0%-> 38.8% Net: 580.2
2024-01-06 12:34:15.384014 INFO pv_opt: 07/01 01:30: 0.23 kWh at 3.66p. <==> 06/01 22:30: 15.61p/kWh 3.61p SOC: 15.0%-> 38.8% New SOC: 15.0%-> 41.0% Net: 580.1
2024-01-06 12:34:15.507864 INFO pv_opt: 06/01 18:30: 0.11 kWh at 3.49p. <==> 06/01 12:30: 18.45p/kWh 2.08p SOC: 88.5%-> 95.9% New SOC: 88.5%-> 97.0% Net: 578.7
2024-01-06 12:34:15.602004 INFO pv_opt: 07/01 18:30: 0.05 kWh at 1.40p. <==> 07/01 14:00: 18.50p/kWh 0.84p SOC: 91.7%-> 83.7% New SOC: 91.7%-> 91.9% Net: 577.7
2024-01-06 12:34:15.612020 INFO pv_opt:
2024-01-06 12:34:15.615224 INFO pv_opt: Maximum 1st pass slot delta is 1.7p
2024-01-06 12:34:15.617972 INFO pv_opt:
2024-01-06 12:34:15.649422 INFO pv_opt: Previous message repeated 1 times
2024-01-06 12:34:15.650507 INFO pv_opt: Low Cost Charging
2024-01-06 12:34:15.653139 INFO pv_opt: ------------------
2024-01-06 12:34:15.655826 INFO pv_opt:
2024-01-06 12:34:15.658596 INFO pv_opt: Max export price when there is no forced charge: 15.00p/kWh.
2024-01-06 12:34:15.662577 INFO pv_opt: 0 slots have an import price less than the max export price
2024-01-06 12:34:15.665830 INFO pv_opt:
2024-01-06 12:34:15.668821 INFO pv_opt: Charge net cost delta: -0.0p: < threshold 4.0 => Excluded
2024-01-06 12:34:15.672464 INFO pv_opt: Iteration 11: Slots added: 0
2024-01-06 12:34:15.676826 INFO pv_opt:
2024-01-06 12:34:15.681013 INFO pv_opt: Removing cyclic charge/discharge
2024-01-06 12:34:15.758992 INFO pv_opt: Net cost revised from 577.7p to 577.9p
2024-01-06 12:34:15.816616 INFO pv_opt:
2024-01-06 12:34:15.847715 INFO pv_opt: Checking for Hold SOC slots
/homeassistant/appdaemon/apps/pv_opt/pv_opt.py:1572: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
self.windows["hold_soc"].loc[
2024-01-06 12:34:15.853587 INFO pv_opt:
2024-01-06 12:34:15.856168 INFO pv_opt: Optimal forced charge/discharge slots:
2024-01-06 12:34:15.859716 INFO pv_opt: 06-Jan 12:30 - 06-Jan 13:00 Power: 1800W SOC: 88% -> 97%
2024-01-06 12:34:15.862680 INFO pv_opt: 06-Jan 22:30 - 06-Jan 23:00 Power: 5500W SOC: 15% -> 41%
2024-01-06 12:34:15.865526 INFO pv_opt: 07-Jan 04:00 - 07-Jan 05:00 Power: 3700W SOC: 15% -> 50%
2024-01-06 12:34:15.868321 INFO pv_opt: 07-Jan 05:00 - 07-Jan 06:30 Power: 6000W SOC: 50% -> 100%
2024-01-06 12:34:15.871093 INFO pv_opt: 07-Jan 06:30 - 07-Jan 07:30 Power: 1200W SOC: 100% -> 100% <=
2024-01-06 12:34:15.873936 INFO pv_opt: 07-Jan 07:30 - 07-Jan 08:30 Power: 1200W SOC: 100% -> 100% <=
2024-01-06 12:34:15.876707 INFO pv_opt: 07-Jan 08:30 - 07-Jan 09:00 Power: 1100W SOC: 100% -> 100% <=
2024-01-06 12:34:15.879461 INFO pv_opt: 07-Jan 12:00 - 07-Jan 13:00 Power: 2900W SOC: 73% -> 100%
2024-01-06 12:34:15.882706 INFO pv_opt: 07-Jan 14:00 - 07-Jan 14:30 Power: 0W SOC: 92% -> 92% <=
2024-01-06 12:34:15.889999 INFO pv_opt:
2024-01-06 12:34:15.893115 INFO pv_opt: Plan time: 06-Jan 12:30 - 07-Jan 23:30 Initial SOC: 88.5 Base Cost: 678.99 Opt Cost: 577.86
2024-01-06 12:34:15.896291 INFO pv_opt:
2024-01-06 12:34:15.898757 INFO pv_opt: Optimiser elapsed time 3.9 seconds
2024-01-06 12:34:15.900961 INFO pv_opt:
2024-01-06 12:34:17.536462 INFO pv_opt: Previous message repeated 1 times
2024-01-06 12:34:17.538951 INFO pv_opt: Output written to sensor.pvopt_optimiser_elapsed
2024-01-06 12:34:17.722991 INFO pv_opt: Average unit cost today: 23.30p/kWh
2024-01-06 12:34:17.744850 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-06 12:34:17.971031 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-06 12:34:18.224020 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-06 12:34:18.264465 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-06 12:34:18.284774 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-06 12:34:18.311461 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-06 12:34:18.347318 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-06 12:34:18.376873 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-06 12:34:18.398802 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-06 12:34:18.420309 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-06 12:34:18.458942 INFO pv_opt:
2024-01-06 12:34:18.461958 INFO pv_opt: Current inverter status:
2024-01-06 12:34:18.464386 INFO pv_opt: ------------------------
2024-01-06 12:34:18.466775 INFO pv_opt: mode : Timed Charge/Discharge
2024-01-06 12:34:18.469175 INFO pv_opt: code : 35
2024-01-06 12:34:18.482072 INFO pv_opt: switches :
2024-01-06 12:34:18.485566 INFO pv_opt: SelfUse : True
2024-01-06 12:34:18.488187 INFO pv_opt: Timed : True
2024-01-06 12:34:18.491019 INFO pv_opt: OffGrid : False
2024-01-06 12:34:18.494309 INFO pv_opt: BatteryWake : False
2024-01-06 12:34:18.496940 INFO pv_opt: Backup : False
2024-01-06 12:34:18.499496 INFO pv_opt: GridCharge : True
2024-01-06 12:34:18.502163 INFO pv_opt: FeedInPriority : False
2024-01-06 12:34:18.504739 INFO pv_opt: charge :
2024-01-06 12:34:18.507397 INFO pv_opt: start : 06-Jan 12:30
2024-01-06 12:34:18.510106 INFO pv_opt: end : 06-Jan 13:00
2024-01-06 12:34:18.512514 INFO pv_opt: current : 13.9
2024-01-06 12:34:18.514943 INFO pv_opt: active : True
2024-01-06 12:34:18.517295 INFO pv_opt: discharge :
2024-01-06 12:34:18.520375 INFO pv_opt: start : 06-Jan 00:00
2024-01-06 12:34:18.522993 INFO pv_opt: end : 06-Jan 00:00
2024-01-06 12:34:18.525571 INFO pv_opt: current : 0.0
2024-01-06 12:34:18.528773 INFO pv_opt: active : False
2024-01-06 12:34:18.531897 INFO pv_opt: hold_soc :
2024-01-06 12:34:18.534977 INFO pv_opt: active : False
2024-01-06 12:34:18.537924 INFO pv_opt: soc : 100.0
2024-01-06 12:34:18.540879 INFO pv_opt:
2024-01-06 12:34:18.543554 INFO pv_opt: Current charge/discharge windows ends in 25.7 minutes.
2024-01-06 12:34:18.548413 INFO pv_opt: >>> SelfUse: True
2024-01-06 12:34:18.551356 INFO pv_opt: >>> Timed: True
2024-01-06 12:34:18.554246 INFO pv_opt: >>> Backup: False
2024-01-06 12:34:18.556960 INFO pv_opt: >>> GridCharge: True
2024-01-06 12:34:18.562513 INFO pv_opt: Updating inverter charge control:
2024-01-06 12:34:18.567432 INFO pv_opt: start: None
2024-01-06 12:34:18.570415 INFO pv_opt: end: 2024-01-06 13:00:00+00:00
2024-01-06 12:34:18.573121 INFO pv_opt: power: 1800
2024-01-06 12:34:18.577471 INFO pv_opt: Inverter already at correct time settings
2024-01-06 12:34:18.583622 INFO pv_opt: Power 1800 = 35.4A at 50.9V
2024-01-06 12:34:19.098673 INFO pv_opt: Current 35.4 written to inverter
2024-01-06 12:34:19.102573 INFO pv_opt: Wating for Modbus Read cycle: 18 seconds

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

2024-01-06 12:34:15.879461 INFO pv_opt: 07-Jan 12:00 - 07-Jan 13:00 Power: 2900W SOC: 73% -> 100%
2024-01-06 12:34:15.882706 INFO pv_opt: 07-Jan 14:00 - 07-Jan 14:30 Power: 0W SOC: 92% -> 92% <=
2024-01-06 12:34:15.889999 INFO pv_opt:
2024-01-06 12:34:15.893115 INFO pv_opt: Plan time: 06-Jan 12:30 - 07-Jan 23:30 Initial SOC: 88.5 Base Cost: 678.99 Opt Cost: 577.86
2024-01-06 12:34:15.896291 INFO pv_opt:
2024-01-06 12:34:15.898757 INFO pv_opt: Optimiser elapsed time 3.9 seconds
2024-01-06 12:34:15.900961 INFO pv_opt:
2024-01-06 12:34:17.536462 INFO pv_opt: Previous message repeated 1 times
2024-01-06 12:34:17.538951 INFO pv_opt: Output written to sensor.pvopt_optimiser_elapsed
2024-01-06 12:34:17.722991 INFO pv_opt: Average unit cost today: 23.30p/kWh
2024-01-06 12:34:17.744850 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-06 12:34:17.971031 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-06 12:34:18.224020 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-06 12:34:18.264465 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-06 12:34:18.284774 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-06 12:34:18.311461 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-06 12:34:18.347318 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-06 12:34:18.376873 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-06 12:34:18.398802 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-06 12:34:18.420309 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-06 12:34:18.458942 INFO pv_opt:
2024-01-06 12:34:18.461958 INFO pv_opt: Current inverter status:
2024-01-06 12:34:18.464386 INFO pv_opt: ------------------------
2024-01-06 12:34:18.466775 INFO pv_opt: mode : Timed Charge/Discharge
2024-01-06 12:34:18.469175 INFO pv_opt: code : 35
2024-01-06 12:34:18.482072 INFO pv_opt: switches :
2024-01-06 12:34:18.485566 INFO pv_opt: SelfUse : True
2024-01-06 12:34:18.488187 INFO pv_opt: Timed : True
2024-01-06 12:34:18.491019 INFO pv_opt: OffGrid : False
2024-01-06 12:34:18.494309 INFO pv_opt: BatteryWake : False
2024-01-06 12:34:18.496940 INFO pv_opt: Backup : False
2024-01-06 12:34:18.499496 INFO pv_opt: GridCharge : True
2024-01-06 12:34:18.502163 INFO pv_opt: FeedInPriority : False
2024-01-06 12:34:18.504739 INFO pv_opt: charge :
2024-01-06 12:34:18.507397 INFO pv_opt: start : 06-Jan 12:30
2024-01-06 12:34:18.510106 INFO pv_opt: end : 06-Jan 13:00
2024-01-06 12:34:18.512514 INFO pv_opt: current : 13.9
2024-01-06 12:34:18.514943 INFO pv_opt: active : True
2024-01-06 12:34:18.517295 INFO pv_opt: discharge :
2024-01-06 12:34:18.520375 INFO pv_opt: start : 06-Jan 00:00
2024-01-06 12:34:18.522993 INFO pv_opt: end : 06-Jan 00:00
2024-01-06 12:34:18.525571 INFO pv_opt: current : 0.0
2024-01-06 12:34:18.528773 INFO pv_opt: active : False
2024-01-06 12:34:18.531897 INFO pv_opt: hold_soc :
2024-01-06 12:34:18.534977 INFO pv_opt: active : False
2024-01-06 12:34:18.537924 INFO pv_opt: soc : 100.0
2024-01-06 12:34:18.540879 INFO pv_opt:
2024-01-06 12:34:18.543554 INFO pv_opt: Current charge/discharge windows ends in 25.7 minutes.
2024-01-06 12:34:18.548413 INFO pv_opt: >>> SelfUse: True
2024-01-06 12:34:18.551356 INFO pv_opt: >>> Timed: True
2024-01-06 12:34:18.554246 INFO pv_opt: >>> Backup: False
2024-01-06 12:34:18.556960 INFO pv_opt: >>> GridCharge: True
2024-01-06 12:34:18.562513 INFO pv_opt: Updating inverter charge control:
2024-01-06 12:34:18.567432 INFO pv_opt: start: None
2024-01-06 12:34:18.570415 INFO pv_opt: end: 2024-01-06 13:00:00+00:00
2024-01-06 12:34:18.573121 INFO pv_opt: power: 1800
2024-01-06 12:34:18.577471 INFO pv_opt: Inverter already at correct time settings
2024-01-06 12:34:18.583622 INFO pv_opt: Power 1800 = 35.4A at 50.9V
2024-01-06 12:34:19.098673 INFO pv_opt: Current 35.4 written to inverter
2024-01-06 12:34:19.102573 INFO pv_opt: Wating for Modbus Read cycle: 18 seconds
2024-01-06 12:34:42.833208 INFO pv_opt:
2024-01-06 12:34:42.837304 INFO pv_opt: Current inverter status:
2024-01-06 12:34:42.841028 INFO pv_opt: ------------------------
2024-01-06 12:34:42.844534 INFO pv_opt: mode : Timed Charge/Discharge
2024-01-06 12:34:42.848525 INFO pv_opt: code : 35
2024-01-06 12:34:42.851757 INFO pv_opt: switches :
2024-01-06 12:34:42.854157 INFO pv_opt: SelfUse : True
2024-01-06 12:34:42.856554 INFO pv_opt: Timed : True
2024-01-06 12:34:42.861337 INFO pv_opt: OffGrid : False
2024-01-06 12:34:42.864308 INFO pv_opt: BatteryWake : False
2024-01-06 12:34:42.866784 INFO pv_opt: Backup : False
2024-01-06 12:34:42.869201 INFO pv_opt: GridCharge : True
2024-01-06 12:34:42.871819 INFO pv_opt: FeedInPriority : False
2024-01-06 12:34:42.874317 INFO pv_opt: charge :
2024-01-06 12:34:42.877859 INFO pv_opt: start : 06-Jan 12:30
2024-01-06 12:34:42.880613 INFO pv_opt: end : 06-Jan 13:00
2024-01-06 12:34:42.883036 INFO pv_opt: current : 35.3
2024-01-06 12:34:42.886217 INFO pv_opt: active : True
2024-01-06 12:34:42.888727 INFO pv_opt: discharge :
2024-01-06 12:34:42.891125 INFO pv_opt: start : 06-Jan 00:00
2024-01-06 12:34:42.893520 INFO pv_opt: end : 06-Jan 00:00
2024-01-06 12:34:42.895903 INFO pv_opt: current : 0.0
2024-01-06 12:34:42.899012 INFO pv_opt: active : False
2024-01-06 12:34:42.901504 INFO pv_opt: hold_soc :
2024-01-06 12:34:42.904043 INFO pv_opt: active : False
2024-01-06 12:34:42.907173 INFO pv_opt: soc : 100.0
2024-01-06 12:34:42.909723 INFO pv_opt:
2024-01-06 12:34:42.912303 INFO pv_opt: Current charge/discharge windows ends in 25.3 minutes.
2024-01-06 12:34:42.917854 INFO pv_opt: >>> SelfUse: True
2024-01-06 12:34:42.920981 INFO pv_opt: >>> Timed: True
2024-01-06 12:34:42.923672 INFO pv_opt: >>> Backup: False
2024-01-06 12:34:42.926306 INFO pv_opt: >>> GridCharge: True
2024-01-06 12:34:42.930339 INFO pv_opt: Updating inverter charge control:
2024-01-06 12:34:42.933215 INFO pv_opt: start: None
2024-01-06 12:34:42.937185 INFO pv_opt: end: 2024-01-06 13:00:00+00:00
2024-01-06 12:34:42.940266 INFO pv_opt: power: 1800
2024-01-06 12:34:42.944550 INFO pv_opt: Inverter already at correct time settings
2024-01-06 12:34:42.949926 INFO pv_opt: Power 1800 = 35.1A at 51.3V
2024-01-06 12:34:42.953498 INFO pv_opt: Inverter already at correct current
2024-01-06 12:34:42.957021 INFO pv_opt: Wating for Modbus Read cycle: 18 seconds

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

Set to read only after I reset the inverter charge times manually:

2024-01-06 12:49:39.004007 INFO pv_opt:
2024-01-06 12:49:39.006700 INFO pv_opt: Starting Opimisation with discharge disabled
2024-01-06 12:49:39.008585 INFO pv_opt: --------------------------------------------
2024-01-06 12:49:39.012716 INFO pv_opt:
2024-01-06 12:49:39.016574 INFO pv_opt: Checking tariffs:
2024-01-06 12:49:39.018830 INFO pv_opt: -----------------
2024-01-06 12:49:39.043495 INFO pv_opt: Import: E-1R-AGILE-FLEX-22-11-25-A Start: 2023-12-26 13:00:00+0000 End: 2024-01-05 23:00:00+0000 <<< ERROR: Tariff end datetime in past
2024-01-06 12:49:39.048358 INFO pv_opt: Export: E-1R-OUTGOING-FIX-12M-19-05-13-A Start: 2019-05-15 23:00:00+0000 End: N/A
2024-01-06 12:49:39.052614 INFO pv_opt: AGILE tariff detected. Rates will update at 16:00 daily
2024-01-06 12:49:39.054899 INFO pv_opt: - Tariffs OK
2024-01-06 12:49:39.058491 INFO pv_opt:
2024-01-06 12:49:39.074688 INFO pv_opt: Solcast forecast loaded OK
2024-01-06 12:49:39.077481 INFO pv_opt: Getting expected consumption data
2024-01-06 12:49:39.886135 INFO pv_opt: - Estimated consumption from sensor.solis_house_load_today loaded OK
2024-01-06 12:49:39.937503 INFO pv_opt: Initial SOC: 88.5
2024-01-06 12:49:39.942567 INFO pv_opt: Calculating Base flows
2024-01-06 12:49:40.009757 INFO pv_opt: Base cost: 678.25p
2024-01-06 12:49:40.012855 INFO pv_opt:
2024-01-06 12:49:40.015682 INFO pv_opt: Optimising for Solcast_p10 forecast from 06-Jan 12:30 to 07-Jan 23:30
2024-01-06 12:49:40.099203 INFO pv_opt: Optimiser prices loaded for period 06/01 12:30 - 07/01 23:30
2024-01-06 12:49:40.192432 INFO pv_opt:
2024-01-06 12:49:40.195375 INFO pv_opt: High Cost Usage Swaps
2024-01-06 12:49:40.197769 INFO pv_opt: ---------------------
2024-01-06 12:49:40.200093 INFO pv_opt:
2024-01-06 12:49:40.299162 INFO pv_opt: 07/01 17:30: 1.23 kWh at 39.07p. <==> 07/01 05:00: 15.43p/kWh 18.96p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 20.8% Net: 679.9
2024-01-06 12:49:40.386969 INFO pv_opt: 07/01 17:30: 1.23 kWh at 39.07p. <==> 07/01 05:00: 15.43p/kWh 18.96p SOC: 15.0%-> 26.7% New SOC: 15.0%-> 26.7% Net: 680.8
2024-01-06 12:49:40.583273 INFO pv_opt: 07/01 17:30: 1.23 kWh at 39.07p. <==> 07/01 05:00: 15.43p/kWh 18.96p SOC: 15.0%-> 38.3% New SOC: 15.0%-> 32.5% Net: 680.8
2024-01-06 12:49:40.682649 INFO pv_opt: 07/01 17:30: 1.23 kWh at 39.07p. <==> 07/01 05:00: 15.43p/kWh 18.96p SOC: 15.0%-> 50.0% New SOC: 15.0%-> 38.3% Net: 679.7
2024-01-06 12:49:40.775003 INFO pv_opt: 07/01 17:30: 1.23 kWh at 39.07p. <==> 07/01 05:00: 15.43p/kWh 18.96p SOC: 15.0%-> 61.6% New SOC: 15.0%-> 43.4% Net: 678.0
2024-01-06 12:49:40.859046 INFO pv_opt: 07/01 17:30: 1.23 kWh at 39.07p. <==> 07/01 04:00: 15.44p/kWh 18.97p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 20.8% Net: 676.2
2024-01-06 12:49:40.965102 INFO pv_opt: 07/01 17:30: 1.23 kWh at 39.07p. <==> 07/01 04:00: 15.44p/kWh 18.97p SOC: 15.0%-> 26.7% New SOC: 15.0%-> 26.7% Net: 674.9
2024-01-06 12:49:41.055749 INFO pv_opt: 07/01 17:30: 1.23 kWh at 39.07p. <==> 07/01 04:00: 15.44p/kWh 18.97p SOC: 15.0%-> 38.3% New SOC: 15.0%-> 32.5% Net: 674.4
2024-01-06 12:49:41.143041 INFO pv_opt: 07/01 17:30: 1.23 kWh at 39.07p. <==> 07/01 06:00: 15.95p/kWh 19.59p SOC: 100.0%-> 83.3% New SOC: 100.0%->100.0% Net: 669.7
2024-01-06 12:49:41.228438 INFO pv_opt: 07/01 17:30: 1.23 kWh at 39.07p. <==> 07/01 07:00: 17.17p/kWh 21.10p SOC: 100.0%-> 87.3% New SOC: 100.0%->100.0% Net: 657.7
2024-01-06 12:49:41.313586 INFO pv_opt: 07/01 17:30: 1.23 kWh at 39.07p. <==> 07/01 08:00: 17.95p/kWh 22.05p SOC: 100.0%-> 88.6% New SOC: 100.0%->100.0% Net: 639.7
2024-01-06 12:49:41.403299 INFO pv_opt: 07/01 17:30: 1.23 kWh at 39.07p. <==> 07/01 12:00: 18.45p/kWh 22.67p SOC: 73.0%-> 66.6% New SOC: 73.0%-> 78.8% Net: 612.9
2024-01-06 12:49:41.485884 INFO pv_opt: 07/01 18:00: 0.86 kWh at 26.50p. <==> 07/01 12:00: 18.45p/kWh 15.78p SOC: 73.0%-> 84.7% New SOC: 73.0%-> 82.9% Net: 602.2
2024-01-06 12:49:41.588760 INFO pv_opt: 06/01 18:30: 0.78 kWh at 24.27p. <==> 06/01 12:30: 18.45p/kWh 14.45p SOC: 88.5%-> 86.5% New SOC: 88.5%-> 95.9% Net: 589.2
2024-01-06 12:49:41.695418 INFO pv_opt: 07/01 18:30: 0.78 kWh at 24.27p. <==> 07/01 12:00: 18.45p/kWh 14.45p SOC: 73.0%-> 92.8% New SOC: 73.0%-> 86.6% Net: 580.0
2024-01-06 12:49:41.887209 INFO pv_opt: 07/01 00:00: 0.50 kWh at 8.41p. <==> 06/01 22:30: 15.61p/kWh 7.78p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 19.7% Net: 580.4
2024-01-06 12:49:41.974688 INFO pv_opt: 07/01 00:00: 0.50 kWh at 8.41p. <==> 06/01 22:30: 15.61p/kWh 7.78p SOC: 15.0%-> 19.7% New SOC: 15.0%-> 24.5% Net: 580.8
2024-01-06 12:49:42.067657 INFO pv_opt: 07/01 00:00: 0.50 kWh at 8.41p. <==> 06/01 22:30: 15.61p/kWh 7.78p SOC: 15.0%-> 24.5% New SOC: 15.0%-> 29.2% Net: 580.5
2024-01-06 12:49:42.207979 INFO pv_opt: 07/01 00:30: 0.43 kWh at 7.21p. <==> 06/01 22:30: 15.61p/kWh 6.67p SOC: 15.0%-> 29.2% New SOC: 15.0%-> 33.2% Net: 579.9
2024-01-06 12:49:42.425080 INFO pv_opt: 07/01 01:30: 0.29 kWh at 4.65p. <==> 06/01 22:30: 15.61p/kWh 4.59p SOC: 15.0%-> 33.2% New SOC: 15.0%-> 36.0% Net: 579.7
2024-01-06 12:49:42.538472 INFO pv_opt: 07/01 01:30: 0.29 kWh at 4.65p. <==> 06/01 22:30: 15.61p/kWh 4.59p SOC: 15.0%-> 36.0% New SOC: 15.0%-> 38.8% Net: 579.7
2024-01-06 12:49:42.864942 INFO pv_opt: 07/01 01:30: 0.23 kWh at 3.66p. <==> 06/01 22:30: 15.61p/kWh 3.61p SOC: 15.0%-> 38.8% New SOC: 15.0%-> 41.0% Net: 579.6
2024-01-06 12:49:42.970887 INFO pv_opt: 06/01 18:30: 0.11 kWh at 3.49p. <==> 06/01 12:30: 18.45p/kWh 2.08p SOC: 88.5%-> 95.9% New SOC: 88.5%-> 97.0% Net: 578.2
2024-01-06 12:49:43.069849 INFO pv_opt: 07/01 18:30: 0.05 kWh at 1.40p. <==> 07/01 14:00: 18.50p/kWh 0.84p SOC: 91.7%-> 83.7% New SOC: 91.7%-> 91.9% Net: 577.1
2024-01-06 12:49:43.081225 INFO pv_opt:
2024-01-06 12:49:43.084763 INFO pv_opt: Maximum 1st pass slot delta is 1.7p
2024-01-06 12:49:43.087602 INFO pv_opt:
2024-01-06 12:49:43.113676 INFO pv_opt: Previous message repeated 1 times
2024-01-06 12:49:43.114861 INFO pv_opt: Low Cost Charging
2024-01-06 12:49:43.117572 INFO pv_opt: ------------------
2024-01-06 12:49:43.120349 INFO pv_opt:
2024-01-06 12:49:43.123144 INFO pv_opt: Max export price when there is no forced charge: 15.00p/kWh.
2024-01-06 12:49:43.127115 INFO pv_opt: 0 slots have an import price less than the max export price
2024-01-06 12:49:43.132013 INFO pv_opt:
2024-01-06 12:49:43.135931 INFO pv_opt: Charge net cost delta: -0.0p: < threshold 4.0 => Excluded
2024-01-06 12:49:43.139433 INFO pv_opt: Iteration 11: Slots added: 0
2024-01-06 12:49:43.148206 INFO pv_opt:
2024-01-06 12:49:43.152662 INFO pv_opt: Removing cyclic charge/discharge
2024-01-06 12:49:43.243350 INFO pv_opt: Net cost revised from 577.1p to 577.4p
2024-01-06 12:49:43.310127 INFO pv_opt:
2024-01-06 12:49:43.356210 INFO pv_opt: Checking for Hold SOC slots
/homeassistant/appdaemon/apps/pv_opt/pv_opt.py:1572: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
self.windows["hold_soc"].loc[
2024-01-06 12:49:43.362718 INFO pv_opt:
2024-01-06 12:49:43.366279 INFO pv_opt: Optimal forced charge/discharge slots:
2024-01-06 12:49:43.371397 INFO pv_opt: 06-Jan 12:30 - 06-Jan 13:00 Power: 1800W SOC: 88% -> 97%
2024-01-06 12:49:43.374691 INFO pv_opt: 06-Jan 22:30 - 06-Jan 23:00 Power: 5500W SOC: 15% -> 41%
2024-01-06 12:49:43.378475 INFO pv_opt: 07-Jan 04:00 - 07-Jan 05:00 Power: 3700W SOC: 15% -> 50%
2024-01-06 12:49:43.382718 INFO pv_opt: 07-Jan 05:00 - 07-Jan 06:30 Power: 6000W SOC: 50% -> 100%
2024-01-06 12:49:43.387613 INFO pv_opt: 07-Jan 06:30 - 07-Jan 07:30 Power: 1200W SOC: 100% -> 100% <=
2024-01-06 12:49:43.391102 INFO pv_opt: 07-Jan 07:30 - 07-Jan 08:30 Power: 1200W SOC: 100% -> 100% <=
2024-01-06 12:49:43.394533 INFO pv_opt: 07-Jan 08:30 - 07-Jan 09:00 Power: 1100W SOC: 100% -> 100% <=
2024-01-06 12:49:43.398093 INFO pv_opt: 07-Jan 12:00 - 07-Jan 13:00 Power: 2900W SOC: 73% -> 100%
2024-01-06 12:49:43.401453 INFO pv_opt: 07-Jan 14:00 - 07-Jan 14:30 Power: 0W SOC: 92% -> 92% <=
2024-01-06 12:49:43.408170 INFO pv_opt:
2024-01-06 12:49:43.411312 INFO pv_opt: Plan time: 06-Jan 12:30 - 07-Jan 23:30 Initial SOC: 88.5 Base Cost: 678.25 Opt Cost: 577.35
2024-01-06 12:49:43.413578 INFO pv_opt:
2024-01-06 12:49:43.415884 INFO pv_opt: Optimiser elapsed time 4.4 seconds
2024-01-06 12:49:43.418098 INFO pv_opt:
2024-01-06 12:49:43.442618 INFO pv_opt: Previous message repeated 1 times
2024-01-06 12:49:43.448121 INFO pv_opt: Output written to sensor.pvopt_optimiser_elapsed
2024-01-06 12:49:43.652149 INFO pv_opt: Average unit cost today: 22.90p/kWh
2024-01-06 12:49:43.677607 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-06 12:49:43.997365 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-06 12:49:44.330483 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-06 12:49:44.382476 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-06 12:49:44.414611 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-06 12:49:44.442527 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-06 12:49:44.491133 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-06 12:49:44.521855 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-06 12:49:44.560408 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-06 12:49:44.592790 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-06 12:49:44.599086 INFO pv_opt: Read only mode enabled. Not querying inverter.

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

I let time progress to see if it would pickup the next cheap slot, but it doesn't...

024-01-06 13:20:00.055401 INFO pv_opt: No upcoming Octopus Saving Events detected or joined:
2024-01-06 13:20:00.057240 INFO pv_opt:
2024-01-06 13:20:00.058954 INFO pv_opt: Starting Opimisation with discharge disabled
2024-01-06 13:20:00.060685 INFO pv_opt: --------------------------------------------
2024-01-06 13:20:00.062459 INFO pv_opt:
2024-01-06 13:20:00.064270 INFO pv_opt: Checking tariffs:
2024-01-06 13:20:00.067661 INFO pv_opt: -----------------
2024-01-06 13:20:00.089538 INFO pv_opt: Import: E-1R-AGILE-FLEX-22-11-25-A Start: 2023-12-26 13:00:00+0000 End: 2024-01-05 23:00:00+0000 <<< ERROR: Tariff end datetime in past
2024-01-06 13:20:00.092374 INFO pv_opt: Export: E-1R-OUTGOING-FIX-12M-19-05-13-A Start: 2019-05-15 23:00:00+0000 End: N/A
2024-01-06 13:20:00.094444 INFO pv_opt: AGILE tariff detected. Rates will update at 16:00 daily
2024-01-06 13:20:00.096586 INFO pv_opt: - Tariffs OK
2024-01-06 13:20:00.098499 INFO pv_opt:
2024-01-06 13:20:00.111943 INFO pv_opt: Solcast forecast loaded OK
2024-01-06 13:20:00.114928 INFO pv_opt: Getting expected consumption data
2024-01-06 13:20:00.439673 INFO pv_opt: - Estimated consumption from sensor.solis_house_load_today loaded OK
2024-01-06 13:20:00.493271 INFO pv_opt: Initial SOC: 86.5
2024-01-06 13:20:00.495885 INFO pv_opt: Calculating Base flows
2024-01-06 13:20:00.564296 INFO pv_opt: Base cost: 673.22p
2024-01-06 13:20:00.567883 INFO pv_opt:
2024-01-06 13:20:00.570830 INFO pv_opt: Optimising for Solcast_p10 forecast from 06-Jan 13:00 to 07-Jan 23:30
2024-01-06 13:20:00.655305 INFO pv_opt: Optimiser prices loaded for period 06/01 13:00 - 07/01 23:30
2024-01-06 13:20:00.854342 INFO pv_opt:
2024-01-06 13:20:00.859022 INFO pv_opt: High Cost Usage Swaps
2024-01-06 13:20:00.863034 INFO pv_opt: ---------------------
2024-01-06 13:20:00.867402 INFO pv_opt:
2024-01-06 13:20:01.009961 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 05:00: 15.43p/kWh 15.11p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 19.6% Net: 674.6
2024-01-06 13:20:01.095200 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 05:00: 15.43p/kWh 15.11p SOC: 15.0%-> 24.3% New SOC: 15.0%-> 24.3% Net: 675.4
2024-01-06 13:20:01.186244 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 05:00: 15.43p/kWh 15.11p SOC: 15.0%-> 33.6% New SOC: 15.0%-> 28.9% Net: 675.6
2024-01-06 13:20:01.278823 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 05:00: 15.43p/kWh 15.11p SOC: 15.0%-> 42.8% New SOC: 15.0%-> 33.6% Net: 675.2
2024-01-06 13:20:01.371462 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 05:00: 15.43p/kWh 15.11p SOC: 15.0%-> 52.1% New SOC: 15.0%-> 38.2% Net: 673.9
2024-01-06 13:20:01.457793 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 05:00: 15.43p/kWh 15.11p SOC: 15.0%-> 61.4% New SOC: 15.0%-> 42.8% Net: 672.3
2024-01-06 13:20:01.564139 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 05:00: 15.43p/kWh 15.11p SOC: 15.0%-> 70.7% New SOC: 15.0%-> 43.4% Net: 672.1
2024-01-06 13:20:02.008844 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 04:00: 15.44p/kWh 15.12p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 19.6% Net: 670.8
2024-01-06 13:20:02.197339 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 04:00: 15.44p/kWh 15.12p SOC: 15.0%-> 24.3% New SOC: 15.0%-> 24.3% Net: 669.8
2024-01-06 13:20:02.418597 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 04:00: 15.44p/kWh 15.12p SOC: 15.0%-> 33.6% New SOC: 15.0%-> 28.9% Net: 668.9
2024-01-06 13:20:02.601739 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 06:00: 15.95p/kWh 15.62p SOC: 99.7%-> 85.4% New SOC: 99.7%->100.0% Net: 664.5
2024-01-06 13:20:03.034896 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 07:00: 17.17p/kWh 16.82p SOC: 100.0%-> 87.9% New SOC: 100.0%->100.0% Net: 655.1
2024-01-06 13:20:03.230215 INFO pv_opt: 07/01 17:00: 0.98 kWh at 31.14p. <==> 07/01 08:00: 17.95p/kWh 17.58p SOC: 100.0%-> 89.2% New SOC: 100.0%->100.0% Net: 638.1
2024-01-06 13:20:03.320266 INFO pv_opt: 07/01 17:30: 0.98 kWh at 31.14p. <==> 07/01 12:00: 18.45p/kWh 18.07p SOC: 74.2%-> 66.6% New SOC: 74.2%-> 78.8% Net: 612.6
2024-01-06 13:20:03.422532 INFO pv_opt: 07/01 18:00: 0.99 kWh at 30.60p. <==> 07/01 12:00: 18.45p/kWh 18.23p SOC: 74.2%-> 83.5% New SOC: 74.2%-> 83.5% Net: 600.2
2024-01-06 13:20:03.507443 INFO pv_opt: 06/01 18:30: 0.72 kWh at 22.34p. <==> 06/01 14:00: 18.50p/kWh 13.34p SOC: 81.1%-> 66.7% New SOC: 81.1%-> 84.5% Net: 586.0
2024-01-06 13:20:03.597883 INFO pv_opt: 07/01 18:30: 0.72 kWh at 22.34p. <==> 07/01 12:00: 18.45p/kWh 13.30p SOC: 74.2%-> 92.8% New SOC: 74.2%-> 86.9% Net: 577.2
2024-01-06 13:20:03.707519 INFO pv_opt: 07/01 00:00: 0.56 kWh at 9.46p. <==> 06/01 22:30: 15.61p/kWh 8.76p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 20.3% Net: 577.7
2024-01-06 13:20:03.808160 INFO pv_opt: 07/01 00:00: 0.56 kWh at 9.46p. <==> 06/01 22:30: 15.61p/kWh 8.76p SOC: 15.0%-> 20.3% New SOC: 15.0%-> 25.6% Net: 577.9
2024-01-06 13:20:04.034346 INFO pv_opt: 07/01 00:00: 0.44 kWh at 7.35p. <==> 06/01 22:30: 15.61p/kWh 6.80p SOC: 15.0%-> 25.6% New SOC: 15.0%-> 29.8% Net: 577.3
2024-01-06 13:20:04.360948 INFO pv_opt: 07/01 00:30: 0.36 kWh at 6.16p. <==> 06/01 22:30: 15.61p/kWh 5.70p SOC: 15.0%-> 29.8% New SOC: 15.0%-> 33.2% Net: 576.9
2024-01-06 13:20:04.503022 INFO pv_opt: 07/01 01:00: 0.34 kWh at 5.35p. <==> 06/01 22:30: 15.61p/kWh 5.28p SOC: 15.0%-> 33.2% New SOC: 15.0%-> 36.4% Net: 576.8
2024-01-06 13:20:04.600901 INFO pv_opt: 07/01 18:30: 0.07 kWh at 2.07p. <==> 07/01 14:00: 18.50p/kWh 1.24p SOC: 92.0%-> 84.0% New SOC: 92.0%-> 92.3% Net: 575.5
2024-01-06 13:20:04.618978 INFO pv_opt:
2024-01-06 13:20:04.622334 INFO pv_opt: Maximum 1st pass slot delta is 1.4p
2024-01-06 13:20:04.625035 INFO pv_opt:
2024-01-06 13:20:04.651564 INFO pv_opt: Previous message repeated 1 times
2024-01-06 13:20:04.652578 INFO pv_opt: Low Cost Charging
2024-01-06 13:20:04.655618 INFO pv_opt: ------------------
2024-01-06 13:20:04.658669 INFO pv_opt:
2024-01-06 13:20:04.661454 INFO pv_opt: Max export price when there is no forced charge: 15.00p/kWh.
2024-01-06 13:20:04.665717 INFO pv_opt: 0 slots have an import price less than the max export price
2024-01-06 13:20:04.669062 INFO pv_opt:
2024-01-06 13:20:04.671956 INFO pv_opt: Charge net cost delta: -0.0p: < threshold 4.0 => Excluded
2024-01-06 13:20:04.675472 INFO pv_opt: Iteration 11: Slots added: 0
2024-01-06 13:20:04.679431 INFO pv_opt:
2024-01-06 13:20:04.682753 INFO pv_opt: Removing cyclic charge/discharge
2024-01-06 13:20:04.786772 INFO pv_opt: Net cost revised from 575.5p to 575.7p
2024-01-06 13:20:04.843700 INFO pv_opt:
2024-01-06 13:20:04.893325 INFO pv_opt: Checking for Hold SOC slots
/homeassistant/appdaemon/apps/pv_opt/pv_opt.py:1572: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
self.windows["hold_soc"].loc[
2024-01-06 13:20:04.899570 INFO pv_opt:
2024-01-06 13:20:04.902278 INFO pv_opt: Optimal forced charge/discharge slots:
2024-01-06 13:20:04.905741 INFO pv_opt: 06-Jan 14:00 - 06-Jan 15:00 Power: 700W SOC: 81% -> 88%
2024-01-06 13:20:04.908794 INFO pv_opt: 06-Jan 22:30 - 06-Jan 23:00 Power: 4500W SOC: 15% -> 36%
2024-01-06 13:20:04.912175 INFO pv_opt: 07-Jan 04:00 - 07-Jan 05:00 Power: 2900W SOC: 15% -> 43%
2024-01-06 13:20:04.915301 INFO pv_opt: 07-Jan 05:00 - 07-Jan 06:30 Power: 6000W SOC: 43% -> 100%
2024-01-06 13:20:04.918521 INFO pv_opt: 07-Jan 06:30 - 07-Jan 07:30 Power: 1000W SOC: 100% -> 100% <=
2024-01-06 13:20:04.921756 INFO pv_opt: 07-Jan 07:30 - 07-Jan 08:30 Power: 1000W SOC: 100% -> 100% <=
2024-01-06 13:20:04.924910 INFO pv_opt: 07-Jan 08:30 - 07-Jan 09:00 Power: 1000W SOC: 100% -> 100% <=
2024-01-06 13:20:04.927889 INFO pv_opt: 07-Jan 12:00 - 07-Jan 13:00 Power: 2700W SOC: 74% -> 100%
2024-01-06 13:20:04.931038 INFO pv_opt: 07-Jan 14:00 - 07-Jan 14:30 Power: 100W SOC: 92% -> 92% <=
2024-01-06 13:20:04.937127 INFO pv_opt:
2024-01-06 13:20:04.940026 INFO pv_opt: Plan time: 06-Jan 13:00 - 07-Jan 23:30 Initial SOC: 86.5 Base Cost: 673.22 Opt Cost: 575.74
2024-01-06 13:20:04.942353 INFO pv_opt:
2024-01-06 13:20:04.946311 INFO pv_opt: Optimiser elapsed time 4.8 seconds
2024-01-06 13:20:04.950048 INFO pv_opt:
2024-01-06 13:20:04.973082 INFO pv_opt: Previous message repeated 1 times
2024-01-06 13:20:04.975974 INFO pv_opt: Output written to sensor.pvopt_optimiser_elapsed
2024-01-06 13:20:05.130249 INFO pv_opt: Average unit cost today: 22.00p/kWh
2024-01-06 13:20:05.151737 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-06 13:20:05.339537 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-06 13:20:05.606062 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-06 13:20:05.635960 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-06 13:20:05.655513 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-06 13:20:05.678843 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-06 13:20:05.702599 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-06 13:20:05.737741 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-06 13:20:05.759606 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-06 13:20:05.786469 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-06 13:20:05.792377 INFO pv_opt: Read only mode enabled. Not querying inverter.

image

from pv_opt.

fboundy avatar fboundy commented on May 25, 2024

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

Ok - I need to add a bit more to the logging to diagnose what’s going on.

Thanks - guessing you are seeing similar issues?

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

A further example log showing charging time slot selected differently than expected.
Also note the Optimum Charge Current didn't seem to lower when I set the Charger Power lower from 6000 to 5000W. I'm still in ReadOnly mode for the time being.

Screenshot 2024-01-08 at 16 18 14 Screenshot 2024-01-08 at 16 18 43

2024-01-08 16:11:06.809402 INFO pv_opt: Average unit cost today: 21.90p/kWh
2024-01-08 16:11:06.859385 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-08 16:11:07.031338 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-08 16:11:07.248266 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-08 16:11:07.284546 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-08 16:11:07.314248 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-08 16:11:07.348543 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-08 16:11:07.375376 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-08 16:11:07.396676 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-08 16:11:07.417930 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-08 16:11:07.441971 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-08 16:11:07.451588 INFO pv_opt: Read only mode enabled. Not querying inverter.
2024-01-08 16:11:09.088366 INFO pv_opt: State change detected for number.pvopt_battery_capacity_wh [config item: battery_capacity_wh] from 10000 to 9600:
2024-01-08 16:11:09.156604 INFO pv_opt:
2024-01-08 16:11:09.171856 INFO pv_opt: Previous message repeated 1 times
2024-01-08 16:11:09.173016 INFO pv_opt: Found Octopus Savings Events entity: event.octopus_energy_a_f1f23c9b_octoplus_saving_session_events
2024-01-08 16:11:09.177058 INFO pv_opt:
2024-01-08 16:11:09.179679 INFO pv_opt: No upcoming Octopus Saving Events detected or joined:
2024-01-08 16:11:09.182466 INFO pv_opt:
2024-01-08 16:11:09.185036 INFO pv_opt: Starting Opimisation with discharge enabled
2024-01-08 16:11:09.187028 INFO pv_opt: -------------------------------------------
2024-01-08 16:11:09.189039 INFO pv_opt:
2024-01-08 16:11:09.191717 INFO pv_opt: Checking tariffs:
2024-01-08 16:11:09.193780 INFO pv_opt: -----------------
2024-01-08 16:11:09.214510 INFO pv_opt: Import: E-1R-AGILE-FLEX-22-11-25-A Start: 2023-12-29 13:00:00+0000 End: 2024-01-08 23:00:00+0000
2024-01-08 16:11:09.217332 INFO pv_opt: Export: E-1R-OUTGOING-FIX-12M-19-05-13-A Start: 2019-05-15 23:00:00+0000 End: N/A
2024-01-08 16:11:09.219465 INFO pv_opt: AGILE tariff detected. Rates will update at 16:00 daily
2024-01-08 16:11:09.221456 INFO pv_opt: - Tariffs OK
2024-01-08 16:11:09.223379 INFO pv_opt:
2024-01-08 16:11:09.235542 INFO pv_opt: Solcast forecast loaded OK
2024-01-08 16:11:09.238565 INFO pv_opt: Getting expected consumption data
2024-01-08 16:11:09.475858 INFO pv_opt: - Estimated consumption from sensor.solis_house_load_today loaded OK
2024-01-08 16:11:09.542710 INFO pv_opt: Initial SOC: 55.5
2024-01-08 16:11:09.545339 INFO pv_opt: Calculating Base flows
2024-01-08 16:11:09.609234 INFO pv_opt: Base cost: 242.29p
2024-01-08 16:11:09.612528 INFO pv_opt:
2024-01-08 16:11:09.615517 INFO pv_opt: Optimising for Solcast forecast from 08-Jan 16:00 to 09-Jan 23:30
2024-01-08 16:11:09.723313 INFO pv_opt: Optimiser prices loaded for period 08/01 16:00 - 09/01 23:30
2024-01-08 16:11:09.831410 INFO pv_opt:
2024-01-08 16:11:09.836739 INFO pv_opt: High Cost Usage Swaps
2024-01-08 16:11:09.842189 INFO pv_opt: ---------------------
2024-01-08 16:11:09.845289 INFO pv_opt:
2024-01-08 16:11:09.994056 INFO pv_opt: 09/01 06:00: 0.89 kWh at 15.00p. <==> 09/01 02:00: 15.87p/kWh 14.12p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 19.2% Net: 243.9
2024-01-08 16:11:10.079766 INFO pv_opt: 09/01 06:00: 0.89 kWh at 15.00p. <==> 09/01 02:00: 15.87p/kWh 14.12p SOC: 15.0%-> 23.4% New SOC: 15.0%-> 23.4% Net: 245.5
2024-01-08 16:11:10.168248 INFO pv_opt: 09/01 06:00: 0.89 kWh at 15.00p. <==> 09/01 02:00: 15.87p/kWh 14.12p SOC: 15.0%-> 31.9% New SOC: 15.0%-> 27.7% Net: 247.1
2024-01-08 16:11:10.251078 INFO pv_opt: 09/01 06:00: 0.89 kWh at 15.00p. <==> 09/01 02:00: 15.87p/kWh 14.12p SOC: 15.0%-> 40.3% New SOC: 15.0%-> 31.9% Net: 248.4
2024-01-08 16:11:10.407436 INFO pv_opt: 09/01 06:00: 0.89 kWh at 15.00p. <==> 09/01 02:00: 15.87p/kWh 14.12p SOC: 15.0%-> 48.7% New SOC: 15.0%-> 36.1% Net: 248.4
2024-01-08 16:11:10.679294 INFO pv_opt: 09/01 07:30: 0.55 kWh at 11.30p. <==> 09/01 02:00: 15.87p/kWh 8.75p SOC: 15.0%-> 57.2% New SOC: 15.0%-> 38.7% Net: 247.9
2024-01-08 16:11:10.782010 INFO pv_opt: 09/01 07:30: 0.55 kWh at 11.30p. <==> 09/01 03:00: 15.90p/kWh 8.77p SOC: 62.4%-> 49.1% New SOC: 62.4%-> 65.0% Net: 237.8
2024-01-08 16:11:10.954915 INFO pv_opt:
2024-01-08 16:11:10.958225 INFO pv_opt: Maximum 1st pass slot delta is 1.6p
2024-01-08 16:11:10.961623 INFO pv_opt:
2024-01-08 16:11:10.986311 INFO pv_opt: Previous message repeated 1 times
2024-01-08 16:11:10.987336 INFO pv_opt: Low Cost Charging
2024-01-08 16:11:10.990023 INFO pv_opt: ------------------
2024-01-08 16:11:10.992772 INFO pv_opt:
2024-01-08 16:11:10.995497 INFO pv_opt: Max export price when there is no forced charge: 15.00p/kWh.
2024-01-08 16:11:10.999537 INFO pv_opt: 0 slots have an import price less than the max export price
2024-01-08 16:11:11.004117 INFO pv_opt:
2024-01-08 16:11:11.009529 INFO pv_opt: Charge net cost delta: -0.0p: < threshold 4.0 => Excluded
2024-01-08 16:11:11.013469 INFO pv_opt:
2024-01-08 16:11:11.016522 INFO pv_opt: Forced Discharging
2024-01-08 16:11:11.019509 INFO pv_opt: ------------------
2024-01-08 16:11:11.022460 INFO pv_opt:
2024-01-08 16:11:11.026560 INFO pv_opt: 0 slots have an export price greater than the min import price
2024-01-08 16:11:11.031270 INFO pv_opt:
2024-01-08 16:11:11.034778 INFO pv_opt: Discharge net cost delta: -0.0p: < threshold (4.0) => Excluded
2024-01-08 16:11:11.038431 INFO pv_opt: Iteration 1: Slots added: 0
2024-01-08 16:11:11.046647 INFO pv_opt:
2024-01-08 16:11:11.050371 INFO pv_opt: Removing cyclic charge/discharge
2024-01-08 16:11:11.122700 INFO pv_opt: Net cost revised from 237.8p to 243.6p
2024-01-08 16:11:11.191887 INFO pv_opt:
2024-01-08 16:11:11.224330 INFO pv_opt: Checking for Hold SOC slots
/homeassistant/appdaemon/apps/pv_opt/pv_opt.py:1572: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
self.windows["hold_soc"].loc[
2024-01-08 16:11:11.233881 INFO pv_opt:
2024-01-08 16:11:11.238487 INFO pv_opt: Optimal forced charge/discharge slots:
2024-01-08 16:11:11.244265 INFO pv_opt: 09-Jan 02:00 - 09-Jan 03:30 Power: 5000W SOC: 15% -> 65%
2024-01-08 16:11:11.253826 INFO pv_opt:
2024-01-08 16:11:11.257900 INFO pv_opt: Plan time: 08-Jan 16:00 - 09-Jan 23:30 Initial SOC: 55.5 Base Cost: 242.29 Opt Cost: 243.61
2024-01-08 16:11:11.260579 INFO pv_opt:
2024-01-08 16:11:11.262930 INFO pv_opt: Optimiser elapsed time 2.0 seconds
2024-01-08 16:11:11.265236 INFO pv_opt:
2024-01-08 16:11:11.287162 INFO pv_opt: Previous message repeated 1 times
2024-01-08 16:11:11.292602 INFO pv_opt: Output written to sensor.pvopt_optimiser_elapsed
2024-01-08 16:11:11.448393 INFO pv_opt: Average unit cost today: 21.90p/kWh
2024-01-08 16:11:11.470536 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-08 16:11:14.306936 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-08 16:11:14.553076 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-08 16:11:14.591796 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-08 16:11:14.615842 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-08 16:11:14.636870 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-08 16:11:14.676127 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-08 16:11:14.705001 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-08 16:11:14.727948 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-08 16:11:14.847136 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-08 16:11:14.863317 INFO pv_opt: Read only mode enabled. Not querying inverter.

Thanks again for your help with this.

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

Something odd happening with the last information I provided - it's as if the config was lost. The above had battery discharge enabled for some reason. I just restarted AppDaemon and it now has a different charging plan! See below:

2024-01-08 16:31:56.123206 INFO pv_opt: Finished loading contract
2024-01-08 16:31:56.402382 INFO pv_opt:
2024-01-08 16:31:56.406116 INFO pv_opt: Running initial Optimisation:
2024-01-08 16:31:56.409579 INFO pv_opt:
2024-01-08 16:31:56.464300 INFO pv_opt: Previous message repeated 1 times
2024-01-08 16:31:56.464605 INFO pv_opt: Found Octopus Savings Events entity: event.octopus_energy_a_f1f23c9b_octoplus_saving_session_events
2024-01-08 16:31:56.473122 INFO pv_opt:
2024-01-08 16:31:56.474897 INFO pv_opt: No upcoming Octopus Saving Events detected or joined:
2024-01-08 16:31:56.483191 INFO pv_opt:
2024-01-08 16:31:56.484707 INFO pv_opt: Starting Opimisation with discharge disabled
2024-01-08 16:31:56.490384 INFO pv_opt: --------------------------------------------
2024-01-08 16:31:56.496131 INFO pv_opt:
2024-01-08 16:31:56.497687 INFO pv_opt: Checking tariffs:
2024-01-08 16:31:56.524349 INFO pv_opt: -----------------
2024-01-08 16:31:56.609303 INFO pv_opt: Import: E-1R-AGILE-FLEX-22-11-25-A Start: 2023-12-30 13:00:00+0000 End: 2024-01-09 23:00:00+0000
2024-01-08 16:31:56.619372 INFO pv_opt: Export: E-1R-OUTGOING-FIX-12M-19-05-13-A Start: 2019-05-15 23:00:00+0000 End: N/A
2024-01-08 16:31:56.628408 INFO pv_opt: AGILE tariff detected. Rates will update at 16:00 daily
2024-01-08 16:31:56.642590 INFO pv_opt: - Tariffs OK
2024-01-08 16:31:56.649278 INFO pv_opt:
2024-01-08 16:31:56.662468 INFO pv_opt: Solcast forecast loaded OK
2024-01-08 16:31:56.665367 INFO pv_opt: Getting expected consumption data
2024-01-08 16:31:59.574928 INFO pv_opt: - Estimated consumption from sensor.solis_house_load_today loaded OK
2024-01-08 16:31:59.705615 INFO pv_opt: Initial SOC: 52.5
2024-01-08 16:31:59.709242 INFO pv_opt: Calculating Base flows
2024-01-08 16:31:59.791859 INFO pv_opt: Base cost: 224.99p
2024-01-08 16:31:59.794559 INFO pv_opt:
2024-01-08 16:31:59.797296 INFO pv_opt: Optimising for Solcast forecast from 08-Jan 16:30 to 09-Jan 23:30
2024-01-08 16:31:59.874674 INFO pv_opt: Optimiser prices loaded for period 08/01 16:30 - 09/01 23:30
2024-01-08 16:31:59.964225 INFO pv_opt:
2024-01-08 16:31:59.967072 INFO pv_opt: High Cost Usage Swaps
2024-01-08 16:31:59.969647 INFO pv_opt: ---------------------
2024-01-08 16:31:59.971957 INFO pv_opt:
2024-01-08 16:32:00.123067 INFO pv_opt: 09/01 07:30: 0.68 kWh at 13.82p. <==> 09/01 03:30: 14.90p/kWh 10.08p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 21.4% Net: 225.4
2024-01-08 16:32:00.323843 INFO pv_opt: 09/01 07:30: 0.68 kWh at 13.82p. <==> 09/01 03:30: 14.90p/kWh 10.08p SOC: 15.0%-> 21.4% New SOC: 15.0%-> 27.8% Net: 226.2
2024-01-08 16:32:00.471151 INFO pv_opt: 09/01 07:30: 0.68 kWh at 13.82p. <==> 09/01 03:30: 14.90p/kWh 10.08p SOC: 15.0%-> 27.8% New SOC: 15.0%-> 34.2% Net: 227.0
2024-01-08 16:32:00.546138 INFO pv_opt: 09/01 07:30: 0.68 kWh at 13.82p. <==> 09/01 03:30: 14.90p/kWh 10.08p SOC: 15.0%-> 34.2% New SOC: 15.0%-> 38.7% Net: 227.6
2024-01-08 16:32:00.632295 INFO pv_opt: 09/01 07:30: 0.68 kWh at 13.82p. <==> 08/01 23:30: 15.21p/kWh 10.29p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 16.1% Net: 227.0
2024-01-08 16:32:00.847169 INFO pv_opt: 09/01 07:30: 0.68 kWh at 13.82p. <==> 08/01 23:30: 15.21p/kWh 10.29p SOC: 15.0%-> 22.7% New SOC: 15.0%-> 17.1% Net: 227.0
2024-01-08 16:32:00.985159 INFO pv_opt: 09/01 07:30: 0.61 kWh at 12.48p. <==> 08/01 23:30: 15.21p/kWh 9.29p SOC: 15.0%-> 24.8% New SOC: 15.0%-> 18.1% Net: 226.4
2024-01-08 16:32:01.101984 INFO pv_opt: 09/01 07:30: 0.41 kWh at 8.30p. <==> 08/01 23:30: 15.21p/kWh 6.18p SOC: 15.0%-> 26.8% New SOC: 15.0%-> 18.7% Net: 226.0
2024-01-08 16:32:01.252231 INFO pv_opt: 09/01 08:00: 0.36 kWh at 6.65p. <==> 08/01 23:30: 15.21p/kWh 5.42p SOC: 15.0%-> 28.0% New SOC: 15.0%-> 19.3% Net: 225.7
2024-01-08 16:32:01.333001 INFO pv_opt: 09/01 08:00: 0.36 kWh at 6.65p. <==> 08/01 23:30: 15.21p/kWh 5.42p SOC: 15.0%-> 29.2% New SOC: 15.0%-> 19.9% Net: 225.4
2024-01-08 16:32:01.422067 INFO pv_opt: 09/01 08:00: 0.36 kWh at 6.65p. <==> 08/01 23:30: 15.21p/kWh 5.42p SOC: 15.0%-> 30.3% New SOC: 15.0%-> 20.4% Net: 225.2
2024-01-08 16:32:01.535491 INFO pv_opt: 09/01 08:00: 0.27 kWh at 5.06p. <==> 08/01 23:30: 15.21p/kWh 4.12p SOC: 15.0%-> 31.4% New SOC: 15.0%-> 20.9% Net: 225.2
2024-01-08 16:32:01.626706 INFO pv_opt: 09/01 08:00: 0.18 kWh at 3.37p. <==> 08/01 23:30: 15.21p/kWh 2.75p SOC: 15.0%-> 32.3% New SOC: 15.0%-> 21.1% Net: 225.1
2024-01-08 16:32:01.741210 INFO pv_opt: 09/01 08:00: 0.12 kWh at 2.25p. <==> 08/01 23:30: 15.21p/kWh 1.84p SOC: 15.0%-> 32.8% New SOC: 15.0%-> 21.3% Net: 225.1
2024-01-08 16:32:01.839511 INFO pv_opt: 09/01 08:00: 0.08 kWh at 1.51p. <==> 08/01 23:30: 15.21p/kWh 1.23p SOC: 15.0%-> 33.2% New SOC: 15.0%-> 21.5% Net: 225.1
2024-01-08 16:32:01.926757 INFO pv_opt: 09/01 08:00: 0.05 kWh at 1.00p. <==> 08/01 23:30: 15.21p/kWh 0.82p SOC: 15.0%-> 33.5% New SOC: 15.0%-> 21.5% Net: 225.0
2024-01-08 16:32:02.046571 INFO pv_opt: 09/01 08:00: 0.04 kWh at 0.67p. <==> 08/01 23:30: 15.21p/kWh 0.54p SOC: 15.0%-> 33.6% New SOC: 15.0%-> 21.6% Net: 225.0
2024-01-08 16:32:02.075964 INFO pv_opt:
2024-01-08 16:32:02.079546 INFO pv_opt: Maximum 1st pass slot delta is 0.8p
2024-01-08 16:32:02.082242 INFO pv_opt:
2024-01-08 16:32:02.114956 INFO pv_opt: Previous message repeated 1 times
2024-01-08 16:32:02.116041 INFO pv_opt: Low Cost Charging
2024-01-08 16:32:02.118713 INFO pv_opt: ------------------
2024-01-08 16:32:02.125783 INFO pv_opt:
2024-01-08 16:32:02.131066 INFO pv_opt: Max export price when there is no forced charge: 15.00p/kWh.
2024-01-08 16:32:02.142334 INFO pv_opt: 0 slots have an import price less than the max export price
2024-01-08 16:32:02.145161 INFO pv_opt:
2024-01-08 16:32:02.151219 INFO pv_opt: Charge net cost delta: -0.0p: < threshold 4.0 => Excluded
2024-01-08 16:32:02.154519 INFO pv_opt: Iteration 11: Slots added: 0
2024-01-08 16:32:02.158537 INFO pv_opt:
2024-01-08 16:32:02.162443 INFO pv_opt: Removing cyclic charge/discharge
2024-01-08 16:32:02.227093 INFO pv_opt: Net cost revised from 225.0p to 230.5p
2024-01-08 16:32:02.274943 INFO pv_opt:
2024-01-08 16:32:02.304720 INFO pv_opt: Checking for Hold SOC slots
/homeassistant/appdaemon/apps/pv_opt/pv_opt.py:1572: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
self.windows["hold_soc"].loc[
2024-01-08 16:32:02.314359 INFO pv_opt:
2024-01-08 16:32:02.318735 INFO pv_opt: Optimal forced charge/discharge slots:
2024-01-08 16:32:02.322688 INFO pv_opt: 08-Jan 23:30 - 09-Jan 00:30 Power: 1400W SOC: 15% -> 28%
2024-01-08 16:32:02.325606 INFO pv_opt: 09-Jan 01:30 - 09-Jan 02:00 Power: 1400W SOC: 15% -> 22%
2024-01-08 16:32:02.328357 INFO pv_opt: 09-Jan 02:30 - 09-Jan 03:00 Power: 1400W SOC: 15% -> 22%
2024-01-08 16:32:02.331085 INFO pv_opt: 09-Jan 03:30 - 09-Jan 04:00 Power: 5000W SOC: 15% -> 39%
2024-01-08 16:32:02.334001 INFO pv_opt: 09-Jan 05:30 - 09-Jan 06:00 Power: 1400W SOC: 21% -> 27%
2024-01-08 16:32:02.342072 INFO pv_opt:
2024-01-08 16:32:02.345230 INFO pv_opt: Plan time: 08-Jan 16:30 - 09-Jan 23:30 Initial SOC: 52.5 Base Cost: 224.99 Opt Cost: 230.53
2024-01-08 16:32:02.347486 INFO pv_opt:
2024-01-08 16:32:02.349715 INFO pv_opt: Optimiser elapsed time 5.7 seconds
2024-01-08 16:32:02.351841 INFO pv_opt:
2024-01-08 16:32:05.036068 INFO pv_opt: Previous message repeated 1 times
2024-01-08 16:32:05.039263 INFO pv_opt: Output written to sensor.pvopt_optimiser_elapsed
2024-01-08 16:32:05.273422 INFO pv_opt: Average unit cost today: 21.50p/kWh
2024-01-08 16:32:05.292206 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-08 16:32:05.545165 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-08 16:32:05.803256 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-08 16:32:05.851787 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-08 16:32:05.893965 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-08 16:32:05.939604 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-08 16:32:05.984305 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-08 16:32:06.051117 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-08 16:32:06.088452 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-08 16:32:06.138949 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-08 16:32:06.143913 INFO pv_opt: Read only mode enabled. Not querying inverter.
2024-01-08 16:32:06.187164 INFO pv_opt: Optimiser will run every 10 minutes from 16:40 or on PV_OPT Event
2024-01-08 16:32:06.193913 INFO AppDaemon: App initialization complete
2024-01-08 16:32:56.130827 INFO pv_opt: >>> Agile Callback Handler

2024-01-08 16:31:56.123206 INFO pv_opt: Finished loading contract
2024-01-08 16:31:56.402382 INFO pv_opt:
2024-01-08 16:31:56.406116 INFO pv_opt: Running initial Optimisation:
2024-01-08 16:31:56.409579 INFO pv_opt:
2024-01-08 16:31:56.464300 INFO pv_opt: Previous message repeated 1 times
2024-01-08 16:31:56.464605 INFO pv_opt: Found Octopus Savings Events entity: event.octopus_energy_a_f1f23c9b_octoplus_saving_session_events
2024-01-08 16:31:56.473122 INFO pv_opt:
2024-01-08 16:31:56.474897 INFO pv_opt: No upcoming Octopus Saving Events detected or joined:
2024-01-08 16:31:56.483191 INFO pv_opt:
2024-01-08 16:31:56.484707 INFO pv_opt: Starting Opimisation with discharge disabled
2024-01-08 16:31:56.490384 INFO pv_opt: --------------------------------------------
2024-01-08 16:31:56.496131 INFO pv_opt:
2024-01-08 16:31:56.497687 INFO pv_opt: Checking tariffs:
2024-01-08 16:31:56.524349 INFO pv_opt: -----------------
2024-01-08 16:31:56.609303 INFO pv_opt: Import: E-1R-AGILE-FLEX-22-11-25-A Start: 2023-12-30 13:00:00+0000 End: 2024-01-09 23:00:00+0000
2024-01-08 16:31:56.619372 INFO pv_opt: Export: E-1R-OUTGOING-FIX-12M-19-05-13-A Start: 2019-05-15 23:00:00+0000 End: N/A
2024-01-08 16:31:56.628408 INFO pv_opt: AGILE tariff detected. Rates will update at 16:00 daily
2024-01-08 16:31:56.642590 INFO pv_opt: - Tariffs OK
2024-01-08 16:31:56.649278 INFO pv_opt:
2024-01-08 16:31:56.662468 INFO pv_opt: Solcast forecast loaded OK
2024-01-08 16:31:56.665367 INFO pv_opt: Getting expected consumption data
2024-01-08 16:31:59.574928 INFO pv_opt: - Estimated consumption from sensor.solis_house_load_today loaded OK
2024-01-08 16:31:59.705615 INFO pv_opt: Initial SOC: 52.5
2024-01-08 16:31:59.709242 INFO pv_opt: Calculating Base flows
2024-01-08 16:31:59.791859 INFO pv_opt: Base cost: 224.99p
2024-01-08 16:31:59.794559 INFO pv_opt:
2024-01-08 16:31:59.797296 INFO pv_opt: Optimising for Solcast forecast from 08-Jan 16:30 to 09-Jan 23:30
2024-01-08 16:31:59.874674 INFO pv_opt: Optimiser prices loaded for period 08/01 16:30 - 09/01 23:30
2024-01-08 16:31:59.964225 INFO pv_opt:
2024-01-08 16:31:59.967072 INFO pv_opt: High Cost Usage Swaps
2024-01-08 16:31:59.969647 INFO pv_opt: ---------------------
2024-01-08 16:31:59.971957 INFO pv_opt:
2024-01-08 16:32:00.123067 INFO pv_opt: 09/01 07:30: 0.68 kWh at 13.82p. <==> 09/01 03:30: 14.90p/kWh 10.08p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 21.4% Net: 225.4
2024-01-08 16:32:00.323843 INFO pv_opt: 09/01 07:30: 0.68 kWh at 13.82p. <==> 09/01 03:30: 14.90p/kWh 10.08p SOC: 15.0%-> 21.4% New SOC: 15.0%-> 27.8% Net: 226.2
2024-01-08 16:32:00.471151 INFO pv_opt: 09/01 07:30: 0.68 kWh at 13.82p. <==> 09/01 03:30: 14.90p/kWh 10.08p SOC: 15.0%-> 27.8% New SOC: 15.0%-> 34.2% Net: 227.0
2024-01-08 16:32:00.546138 INFO pv_opt: 09/01 07:30: 0.68 kWh at 13.82p. <==> 09/01 03:30: 14.90p/kWh 10.08p SOC: 15.0%-> 34.2% New SOC: 15.0%-> 38.7% Net: 227.6
2024-01-08 16:32:00.632295 INFO pv_opt: 09/01 07:30: 0.68 kWh at 13.82p. <==> 08/01 23:30: 15.21p/kWh 10.29p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 16.1% Net: 227.0
2024-01-08 16:32:00.847169 INFO pv_opt: 09/01 07:30: 0.68 kWh at 13.82p. <==> 08/01 23:30: 15.21p/kWh 10.29p SOC: 15.0%-> 22.7% New SOC: 15.0%-> 17.1% Net: 227.0
2024-01-08 16:32:00.985159 INFO pv_opt: 09/01 07:30: 0.61 kWh at 12.48p. <==> 08/01 23:30: 15.21p/kWh 9.29p SOC: 15.0%-> 24.8% New SOC: 15.0%-> 18.1% Net: 226.4
2024-01-08 16:32:01.101984 INFO pv_opt: 09/01 07:30: 0.41 kWh at 8.30p. <==> 08/01 23:30: 15.21p/kWh 6.18p SOC: 15.0%-> 26.8% New SOC: 15.0%-> 18.7% Net: 226.0
2024-01-08 16:32:01.252231 INFO pv_opt: 09/01 08:00: 0.36 kWh at 6.65p. <==> 08/01 23:30: 15.21p/kWh 5.42p SOC: 15.0%-> 28.0% New SOC: 15.0%-> 19.3% Net: 225.7
2024-01-08 16:32:01.333001 INFO pv_opt: 09/01 08:00: 0.36 kWh at 6.65p. <==> 08/01 23:30: 15.21p/kWh 5.42p SOC: 15.0%-> 29.2% New SOC: 15.0%-> 19.9% Net: 225.4
2024-01-08 16:32:01.422067 INFO pv_opt: 09/01 08:00: 0.36 kWh at 6.65p. <==> 08/01 23:30: 15.21p/kWh 5.42p SOC: 15.0%-> 30.3% New SOC: 15.0%-> 20.4% Net: 225.2
2024-01-08 16:32:01.535491 INFO pv_opt: 09/01 08:00: 0.27 kWh at 5.06p. <==> 08/01 23:30: 15.21p/kWh 4.12p SOC: 15.0%-> 31.4% New SOC: 15.0%-> 20.9% Net: 225.2
2024-01-08 16:32:01.626706 INFO pv_opt: 09/01 08:00: 0.18 kWh at 3.37p. <==> 08/01 23:30: 15.21p/kWh 2.75p SOC: 15.0%-> 32.3% New SOC: 15.0%-> 21.1% Net: 225.1
2024-01-08 16:32:01.741210 INFO pv_opt: 09/01 08:00: 0.12 kWh at 2.25p. <==> 08/01 23:30: 15.21p/kWh 1.84p SOC: 15.0%-> 32.8% New SOC: 15.0%-> 21.3% Net: 225.1
2024-01-08 16:32:01.839511 INFO pv_opt: 09/01 08:00: 0.08 kWh at 1.51p. <==> 08/01 23:30: 15.21p/kWh 1.23p SOC: 15.0%-> 33.2% New SOC: 15.0%-> 21.5% Net: 225.1
2024-01-08 16:32:01.926757 INFO pv_opt: 09/01 08:00: 0.05 kWh at 1.00p. <==> 08/01 23:30: 15.21p/kWh 0.82p SOC: 15.0%-> 33.5% New SOC: 15.0%-> 21.5% Net: 225.0
2024-01-08 16:32:02.046571 INFO pv_opt: 09/01 08:00: 0.04 kWh at 0.67p. <==> 08/01 23:30: 15.21p/kWh 0.54p SOC: 15.0%-> 33.6% New SOC: 15.0%-> 21.6% Net: 225.0
2024-01-08 16:32:02.075964 INFO pv_opt:
2024-01-08 16:32:02.079546 INFO pv_opt: Maximum 1st pass slot delta is 0.8p
2024-01-08 16:32:02.082242 INFO pv_opt:
2024-01-08 16:32:02.114956 INFO pv_opt: Previous message repeated 1 times
2024-01-08 16:32:02.116041 INFO pv_opt: Low Cost Charging
2024-01-08 16:32:02.118713 INFO pv_opt: ------------------
2024-01-08 16:32:02.125783 INFO pv_opt:
2024-01-08 16:32:02.131066 INFO pv_opt: Max export price when there is no forced charge: 15.00p/kWh.
2024-01-08 16:32:02.142334 INFO pv_opt: 0 slots have an import price less than the max export price
2024-01-08 16:32:02.145161 INFO pv_opt:
2024-01-08 16:32:02.151219 INFO pv_opt: Charge net cost delta: -0.0p: < threshold 4.0 => Excluded
2024-01-08 16:32:02.154519 INFO pv_opt: Iteration 11: Slots added: 0
2024-01-08 16:32:02.158537 INFO pv_opt:
2024-01-08 16:32:02.162443 INFO pv_opt: Removing cyclic charge/discharge
2024-01-08 16:32:02.227093 INFO pv_opt: Net cost revised from 225.0p to 230.5p
2024-01-08 16:32:02.274943 INFO pv_opt:
2024-01-08 16:32:02.304720 INFO pv_opt: Checking for Hold SOC slots
/homeassistant/appdaemon/apps/pv_opt/pv_opt.py:1572: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
self.windows["hold_soc"].loc[
2024-01-08 16:32:02.314359 INFO pv_opt:
2024-01-08 16:32:02.318735 INFO pv_opt: Optimal forced charge/discharge slots:
2024-01-08 16:32:02.322688 INFO pv_opt: 08-Jan 23:30 - 09-Jan 00:30 Power: 1400W SOC: 15% -> 28%
2024-01-08 16:32:02.325606 INFO pv_opt: 09-Jan 01:30 - 09-Jan 02:00 Power: 1400W SOC: 15% -> 22%
2024-01-08 16:32:02.328357 INFO pv_opt: 09-Jan 02:30 - 09-Jan 03:00 Power: 1400W SOC: 15% -> 22%
2024-01-08 16:32:02.331085 INFO pv_opt: 09-Jan 03:30 - 09-Jan 04:00 Power: 5000W SOC: 15% -> 39%
2024-01-08 16:32:02.334001 INFO pv_opt: 09-Jan 05:30 - 09-Jan 06:00 Power: 1400W SOC: 21% -> 27%
2024-01-08 16:32:02.342072 INFO pv_opt:
2024-01-08 16:32:02.345230 INFO pv_opt: Plan time: 08-Jan 16:30 - 09-Jan 23:30 Initial SOC: 52.5 Base Cost: 224.99 Opt Cost: 230.53
2024-01-08 16:32:02.347486 INFO pv_opt:
2024-01-08 16:32:02.349715 INFO pv_opt: Optimiser elapsed time 5.7 seconds
2024-01-08 16:32:02.351841 INFO pv_opt:
2024-01-08 16:32:05.036068 INFO pv_opt: Previous message repeated 1 times
2024-01-08 16:32:05.039263 INFO pv_opt: Output written to sensor.pvopt_optimiser_elapsed
2024-01-08 16:32:05.273422 INFO pv_opt: Average unit cost today: 21.50p/kWh
2024-01-08 16:32:05.292206 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-08 16:32:05.545165 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-08 16:32:05.803256 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-08 16:32:05.851787 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-08 16:32:05.893965 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-08 16:32:05.939604 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-08 16:32:05.984305 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-08 16:32:06.051117 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-08 16:32:06.088452 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-08 16:32:06.138949 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-08 16:32:06.143913 INFO pv_opt: Read only mode enabled. Not querying inverter.
2024-01-08 16:32:06.187164 INFO pv_opt: Optimiser will run every 10 minutes from 16:40 or on PV_OPT Event
2024-01-08 16:32:06.193913 INFO AppDaemon: App initialization complete
2024-01-08 16:32:56.130827 INFO pv_opt: >>> Agile Callback Handler

Screenshot 2024-01-08 at 16 35 13 Screenshot 2024-01-08 at 16 36 34

This makes more sense with higher charging rate during the cheapest slot. 27% current prediction for battery charge starting the day, with good solar forecast.

from pv_opt.

fboundy avatar fboundy commented on May 25, 2024

Agree that looks pretty sensible it's charging as much as possible in the cheapest slot and then using the next cheapest for the rest of what's needed. When there are multiple slots at the same price it just spreads the load across them so that the charge current is lower.

Keep me posted if is starts to misbehave.

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

What do you think of this evenings charging scheme? Unsure why its missing the cheapest slot.

Screenshot 2024-01-11 at 20 40 38 Screenshot 2024-01-11 at 20 42 37

2024-01-11 20:30:00.639997 INFO pv_opt: Base cost: 664.08p
2024-01-11 20:30:00.642569 INFO pv_opt:
2024-01-11 20:30:00.648012 INFO pv_opt: Optimising for Solcast_p10 forecast from 11-Jan 20:30 to 12-Jan 23:30
2024-01-11 20:30:00.848746 INFO pv_opt: Optimiser prices loaded for period 11/01 20:30 - 12/01 23:30
2024-01-11 20:30:00.965825 INFO pv_opt:
2024-01-11 20:30:00.969571 INFO pv_opt: High Cost Usage Swaps
2024-01-11 20:30:00.973478 INFO pv_opt: ---------------------
2024-01-11 20:30:00.975327 INFO pv_opt:
2024-01-11 20:30:01.086252 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 03:00: 15.41p/kWh 17.70p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 20.4% Net: 665.7
2024-01-11 20:30:01.185711 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 03:00: 15.41p/kWh 17.70p SOC: 15.0%-> 25.9% New SOC: 15.0%-> 25.9% Net: 664.6
2024-01-11 20:30:01.297692 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 03:00: 15.41p/kWh 17.70p SOC: 15.0%-> 36.8% New SOC: 15.0%-> 31.3% Net: 659.6
2024-01-11 20:30:01.412501 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 03:00: 15.41p/kWh 17.70p SOC: 15.0%-> 47.6% New SOC: 15.0%-> 36.3% Net: 652.4
2024-01-11 20:30:01.511654 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 02:00: 15.45p/kWh 17.73p SOC: 15.0%-> 15.0% New SOC: 15.0%-> 20.4% Net: 644.9
2024-01-11 20:30:01.595364 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 02:00: 15.45p/kWh 17.73p SOC: 15.0%-> 25.9% New SOC: 15.0%-> 25.9% Net: 638.6
2024-01-11 20:30:01.684571 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 02:00: 15.45p/kWh 17.73p SOC: 15.0%-> 36.8% New SOC: 15.0%-> 31.3% Net: 634.5
2024-01-11 20:30:01.778942 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 02:00: 15.45p/kWh 17.73p SOC: 15.0%-> 47.6% New SOC: 15.0%-> 36.3% Net: 632.9
2024-01-11 20:30:01.867778 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 04:00: 15.73p/kWh 18.06p SOC: 100.0%-> 91.2% New SOC: 100.0%->100.0% Net: 630.1
2024-01-11 20:30:01.959324 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 05:00: 16.33p/kWh 18.76p SOC: 100.0%-> 92.2% New SOC: 100.0%->100.0% Net: 626.7
2024-01-11 20:30:02.066461 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 12:00: 18.45p/kWh 21.18p SOC: 32.8%-> 27.2% New SOC: 32.8%-> 38.2% Net: 616.4
2024-01-11 20:30:02.182163 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 12:00: 18.45p/kWh 21.18p SOC: 32.8%-> 43.7% New SOC: 32.8%-> 43.7% Net: 598.7
2024-01-11 20:30:02.290624 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 12:00: 18.45p/kWh 21.18p SOC: 32.8%-> 54.6% New SOC: 32.8%-> 49.1% Net: 581.0
2024-01-11 20:30:02.401153 INFO pv_opt: 12/01 18:00: 1.15 kWh at 37.58p. <==> 12/01 12:00: 18.45p/kWh 21.18p SOC: 32.8%-> 65.4% New SOC: 32.8%-> 54.1% Net: 565.9
2024-01-11 20:30:02.507229 INFO pv_opt: 12/01 18:30: 0.74 kWh at 24.18p. <==> 12/01 11:00: 18.90p/kWh 13.96p SOC: 39.4%-> 32.8% New SOC: 39.4%-> 42.9% Net: 551.0
2024-01-11 20:30:02.627663 INFO pv_opt: 12/01 19:30: 0.68 kWh at 13.34p. <==> 12/01 11:00: 18.90p/kWh 12.78p SOC: 39.4%-> 46.4% New SOC: 39.4%-> 46.1% Net: 550.5
2024-01-11 20:30:02.860923 INFO pv_opt: 12/01 19:30: 0.33 kWh at 6.45p. <==> 12/01 11:00: 18.90p/kWh 6.18p SOC: 39.4%-> 52.9% New SOC: 39.4%-> 47.7% Net: 550.2
2024-01-11 20:30:02.891547 INFO pv_opt:
2024-01-11 20:30:02.894948 INFO pv_opt: Maximum 1st pass slot delta is 1.6p
2024-01-11 20:30:02.897901 INFO pv_opt:
2024-01-11 20:30:02.926055 INFO pv_opt: Previous message repeated 1 times
2024-01-11 20:30:02.928671 INFO pv_opt: Low Cost Charging
2024-01-11 20:30:02.933854 INFO pv_opt: ------------------
2024-01-11 20:30:02.938059 INFO pv_opt:
2024-01-11 20:30:02.940920 INFO pv_opt: Max export price when there is no forced charge: 15.00p/kWh.
2024-01-11 20:30:02.945328 INFO pv_opt: 0 slots have an import price less than the max export price
2024-01-11 20:30:02.948832 INFO pv_opt:
2024-01-11 20:30:02.952077 INFO pv_opt: Charge net cost delta: -0.0p: < threshold 4.0 => Excluded
2024-01-11 20:30:02.955265 INFO pv_opt: Iteration 11: Slots added: 0
2024-01-11 20:30:02.959141 INFO pv_opt:
2024-01-11 20:30:02.962813 INFO pv_opt: Removing cyclic charge/discharge
2024-01-11 20:30:03.041623 INFO pv_opt: Net cost revised from 550.2p to 566.9p
2024-01-11 20:30:03.124344 INFO pv_opt:
2024-01-11 20:30:03.294925 INFO pv_opt: Checking for Hold SOC slots
/homeassistant/appdaemon/apps/pv_opt/pv_opt.py:1572: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
self.windows["hold_soc"].loc[
2024-01-11 20:30:03.307508 INFO pv_opt:
2024-01-11 20:30:03.314884 INFO pv_opt: Optimal forced charge/discharge slots:
2024-01-11 20:30:03.320514 INFO pv_opt: 12-Jan 02:00 - 12-Jan 04:30 Power: 4500W SOC: 15% -> 100%
2024-01-11 20:30:03.324176 INFO pv_opt: 12-Jan 04:30 - 12-Jan 05:30 Power: 800W SOC: 100% -> 100% <=
2024-01-11 20:30:03.330170 INFO pv_opt: 12-Jan 05:30 - 12-Jan 06:00 Power: 800W SOC: 100% -> 100% <=
2024-01-11 20:30:03.335660 INFO pv_opt: 12-Jan 11:00 - 12-Jan 12:00 Power: 1700W SOC: 39% -> 56%
2024-01-11 20:30:03.339432 INFO pv_opt: 12-Jan 12:00 - 12-Jan 12:30 Power: 4500W SOC: 56% -> 77%
2024-01-11 20:30:03.346296 INFO pv_opt:
2024-01-11 20:30:03.349578 INFO pv_opt: Plan time: 11-Jan 20:30 - 12-Jan 23:30 Initial SOC: 24.0 Base Cost: 664.08 Opt Cost: 566.93
2024-01-11 20:30:03.352071 INFO pv_opt:
2024-01-11 20:30:03.354281 INFO pv_opt: Optimiser elapsed time 3.2 seconds
2024-01-11 20:30:03.356525 INFO pv_opt:
2024-01-11 20:30:03.381904 INFO pv_opt: Previous message repeated 1 times
2024-01-11 20:30:03.389235 INFO pv_opt: Output written to sensor.pvopt_optimiser_elapsed
2024-01-11 20:30:03.556102 INFO pv_opt: Average unit cost today: 15.50p/kWh
2024-01-11 20:30:03.580077 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-11 20:30:03.789493 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-11 20:30:03.980536 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-11 20:30:04.047073 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-11 20:30:04.066256 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-11 20:30:04.090577 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-11 20:30:04.114282 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-11 20:30:04.160360 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-11 20:30:04.184970 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-11 20:30:04.218101 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-11 20:30:04.263080 INFO pv_opt:
2024-01-11 20:30:04.267702 INFO pv_opt: Current inverter status:
2024-01-11 20:30:04.270610 INFO pv_opt: ------------------------
2024-01-11 20:30:04.273062 INFO pv_opt: mode : Timed Charge/Discharge
2024-01-11 20:30:04.275355 INFO pv_opt: code : 35
2024-01-11 20:30:04.277753 INFO pv_opt: switches :
2024-01-11 20:30:04.281943 INFO pv_opt: SelfUse : True
2024-01-11 20:30:04.285034 INFO pv_opt: Timed : True
2024-01-11 20:30:04.289473 INFO pv_opt: OffGrid : False
2024-01-11 20:30:04.292620 INFO pv_opt: BatteryWake : False
2024-01-11 20:30:04.297498 INFO pv_opt: Backup : False
2024-01-11 20:30:04.303268 INFO pv_opt: GridCharge : True
2024-01-11 20:30:04.308429 INFO pv_opt: FeedInPriority : False
2024-01-11 20:30:04.321504 INFO pv_opt: charge :
2024-01-11 20:30:04.326660 INFO pv_opt: start : 11-Jan 12:30
2024-01-11 20:30:04.334058 INFO pv_opt: end : 11-Jan 13:00
2024-01-11 20:30:04.337155 INFO pv_opt: current : 57.4
2024-01-11 20:30:04.340113 INFO pv_opt: active : False
2024-01-11 20:30:04.343081 INFO pv_opt: discharge :
2024-01-11 20:30:04.348008 INFO pv_opt: start : 11-Jan 04:20
2024-01-11 20:30:04.350546 INFO pv_opt: end : 11-Jan 04:20
2024-01-11 20:30:04.352987 INFO pv_opt: current : 0.0
2024-01-11 20:30:04.355417 INFO pv_opt: active : False
2024-01-11 20:30:04.358180 INFO pv_opt: hold_soc :
2024-01-11 20:30:04.363052 INFO pv_opt: active : False
2024-01-11 20:30:04.366152 INFO pv_opt: soc : 100.0
2024-01-11 20:30:04.368902 INFO pv_opt:
2024-01-11 20:30:04.371874 INFO pv_opt: Next charge window starts in 329.9 minutes. Nothing to do.

Couple of other questions:

  1. I don't seem to see the solar forecast value only the current PV output. Should it be displaying the days today or current hour PV output?
  2. Perhaps my electricity usage pattern isn't consistent with 2x children. Somethings the washing machine/tumble drier has to go on at suboptimal times but we do try to run appliances over night to coincide with the cheapest rates. Same for the electric oven or induction hub, we may eat at different times of the evening or not cook etc. Is there a way to switch on/off the predicted historic usage for the charging model? Perhaps it may help understand what it thinks my daily usage will be as a total (I can see the +15m prediction.

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

Some odd things happening...
Today the PV_Opt didn't charge to 100% (perhaps based on PV prediction, but it was very low). Noticed this the other day too.

This evenings charge plan looked suboptimal.

image

024-01-14 18:50:08.607404 INFO pv_opt:
2024-01-14 18:50:08.610826 INFO pv_opt: Charge net cost delta: -0.0p: < threshold 4.0 => Excluded
2024-01-14 18:50:08.613952 INFO pv_opt: Iteration 11: Slots added: 0
2024-01-14 18:50:08.617838 INFO pv_opt:
2024-01-14 18:50:08.621211 INFO pv_opt: Removing cyclic charge/discharge
2024-01-14 18:50:08.696024 INFO pv_opt: Net cost revised from 439.4p to 440.0p
2024-01-14 18:50:08.752778 INFO pv_opt:
2024-01-14 18:50:08.781227 INFO pv_opt: Checking for Hold SOC slots
/homeassistant/appdaemon/apps/pv_opt/pv_opt.py:1572: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
self.windows["hold_soc"].loc[
2024-01-14 18:50:08.788682 INFO pv_opt:
2024-01-14 18:50:08.791150 INFO pv_opt: Optimal forced charge/discharge slots:
2024-01-14 18:50:08.794363 INFO pv_opt: 15-Jan 02:00 - 15-Jan 03:00 Power: 3900W SOC: 15% -> 52%
2024-01-14 18:50:08.797756 INFO pv_opt: 15-Jan 03:00 - 15-Jan 04:30 Power: 4800W SOC: 52% -> 100%
2024-01-14 18:50:08.800707 INFO pv_opt: 15-Jan 04:30 - 15-Jan 05:00 Power: 800W SOC: 100% -> 100% <=
2024-01-14 18:50:08.803334 INFO pv_opt: 15-Jan 11:00 - 15-Jan 12:00 Power: 3200W SOC: 69% -> 99%
2024-01-14 18:50:08.808449 INFO pv_opt:
2024-01-14 18:50:08.811170 INFO pv_opt: Plan time: 14-Jan 18:30 - 15-Jan 23:30 Initial SOC: 15.0 Base Cost: 542.24 Opt Cost: 439.96
2024-01-14 18:50:08.813311 INFO pv_opt:
2024-01-14 18:50:08.815481 INFO pv_opt: Optimiser elapsed time 8.7 seconds
2024-01-14 18:50:08.819780 INFO pv_opt:
2024-01-14 18:50:08.847952 INFO pv_opt: Previous message repeated 1 times
2024-01-14 18:50:08.851315 INFO pv_opt: Output written to sensor.pvopt_optimiser_elapsed
2024-01-14 18:50:09.072304 INFO pv_opt: Average unit cost today: 14.60p/kWh
2024-01-14 18:50:09.091430 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-14 18:50:09.300596 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-14 18:50:09.501039 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-14 18:50:09.564897 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-14 18:50:09.591714 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-14 18:50:09.613173 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-14 18:50:09.634183 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-14 18:50:09.654626 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-14 18:50:09.678010 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-14 18:50:09.710470 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-14 18:50:09.746402 INFO pv_opt:
2024-01-14 18:50:09.753721 INFO pv_opt: Current inverter status:
2024-01-14 18:50:09.757030 INFO pv_opt: ------------------------
2024-01-14 18:50:09.759394 INFO pv_opt: mode : Timed Charge/Discharge
2024-01-14 18:50:09.761621 INFO pv_opt: code : 35
2024-01-14 18:50:09.764803 INFO pv_opt: switches :
2024-01-14 18:50:09.767845 INFO pv_opt: SelfUse : True
2024-01-14 18:50:09.770186 INFO pv_opt: Timed : True
2024-01-14 18:50:09.772429 INFO pv_opt: OffGrid : False
2024-01-14 18:50:09.777408 INFO pv_opt: BatteryWake : False
2024-01-14 18:50:09.780118 INFO pv_opt: Backup : False
2024-01-14 18:50:09.782400 INFO pv_opt: GridCharge : True
2024-01-14 18:50:09.784916 INFO pv_opt: FeedInPriority : False
2024-01-14 18:50:09.787181 INFO pv_opt: charge :
2024-01-14 18:50:09.789481 INFO pv_opt: start : 14-Jan 08:00
2024-01-14 18:50:09.791760 INFO pv_opt: end : 14-Jan 08:00
2024-01-14 18:50:09.794909 INFO pv_opt: current : 3.7
2024-01-14 18:50:09.797739 INFO pv_opt: active : False
2024-01-14 18:50:09.799973 INFO pv_opt: discharge :
2024-01-14 18:50:09.802281 INFO pv_opt: start : 14-Jan 06:20
2024-01-14 18:50:09.804553 INFO pv_opt: end : 14-Jan 06:20
2024-01-14 18:50:09.806809 INFO pv_opt: current : 0.0
2024-01-14 18:50:09.809108 INFO pv_opt: active : False
2024-01-14 18:50:09.811314 INFO pv_opt: hold_soc :
2024-01-14 18:50:09.813569 INFO pv_opt: active : False
2024-01-14 18:50:09.816114 INFO pv_opt: soc : 97.0
2024-01-14 18:50:09.818386 INFO pv_opt:
2024-01-14 18:50:09.821054 INFO pv_opt: Next charge window starts in 429.8 minutes. Nothing to do.

However, I then restarted AppDaemon and got this witch looks totally different.

image

2024-01-14 18:53:59.263577 INFO pv_opt:
2024-01-14 18:53:59.268329 INFO pv_opt: Charge net cost delta: -0.0p: < threshold 4.0 => Excluded
2024-01-14 18:53:59.272394 INFO pv_opt: Iteration 11: Slots added: 0
2024-01-14 18:53:59.277992 INFO pv_opt:
2024-01-14 18:53:59.287236 INFO pv_opt: Removing cyclic charge/discharge
2024-01-14 18:53:59.370121 INFO pv_opt: Net cost revised from 447.4p to 455.0p
2024-01-14 18:53:59.423076 INFO pv_opt:
2024-01-14 18:53:59.454879 INFO pv_opt: Checking for Hold SOC slots
/homeassistant/appdaemon/apps/pv_opt/pv_opt.py:1572: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
self.windows["hold_soc"].loc[
2024-01-14 18:53:59.460439 INFO pv_opt:
2024-01-14 18:53:59.463469 INFO pv_opt: Optimal forced charge/discharge slots:
2024-01-14 18:53:59.467104 INFO pv_opt: 14-Jan 22:30 - 14-Jan 23:00 Power: 2900W SOC: 15% -> 29%
2024-01-14 18:53:59.471701 INFO pv_opt: 15-Jan 00:00 - 15-Jan 00:30 Power: 2900W SOC: 15% -> 29%
2024-01-14 18:53:59.474933 INFO pv_opt: 15-Jan 01:00 - 15-Jan 01:30 Power: 2900W SOC: 25% -> 38%
2024-01-14 18:53:59.478321 INFO pv_opt: 15-Jan 01:30 - 15-Jan 02:30 Power: 4800W SOC: 38% -> 75%
2024-01-14 18:53:59.481254 INFO pv_opt: 15-Jan 02:30 - 15-Jan 03:00 Power: 4800W SOC: 75% -> 98%
2024-01-14 18:53:59.484034 INFO pv_opt: 15-Jan 03:30 - 15-Jan 04:30 Power: 1700W SOC: 93% -> 100%
2024-01-14 18:53:59.487966 INFO pv_opt: 15-Jan 04:30 - 15-Jan 05:00 Power: 400W SOC: 100% -> 100% <=
2024-01-14 18:53:59.491055 INFO pv_opt: 15-Jan 13:30 - 15-Jan 14:00 Power: 2900W SOC: 75% -> 89%
2024-01-14 18:53:59.496355 INFO pv_opt:
2024-01-14 18:53:59.499106 INFO pv_opt: Plan time: 14-Jan 18:30 - 15-Jan 23:30 Initial SOC: 15.0 Base Cost: 548.83 Opt Cost: 455.00
2024-01-14 18:53:59.501284 INFO pv_opt:
2024-01-14 18:53:59.504656 INFO pv_opt: Optimiser elapsed time 8.4 seconds
2024-01-14 18:53:59.506896 INFO pv_opt:
2024-01-14 18:53:59.528088 INFO pv_opt: Previous message repeated 1 times
2024-01-14 18:53:59.535404 INFO pv_opt: Output written to sensor.pvopt_optimiser_elapsed
2024-01-14 18:53:59.752550 INFO pv_opt: Average unit cost today: 14.50p/kWh
2024-01-14 18:53:59.775458 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-14 18:54:00.072972 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-14 18:54:00.312120 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-14 18:54:00.375125 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-14 18:54:00.505375 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-14 18:54:00.534081 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-14 18:54:00.562820 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-14 18:54:00.587925 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-14 18:54:00.627685 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-14 18:54:00.652307 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-14 18:54:00.696444 INFO pv_opt:
2024-01-14 18:54:00.699504 INFO pv_opt: Current inverter status:
2024-01-14 18:54:00.702052 INFO pv_opt: ------------------------
2024-01-14 18:54:00.704416 INFO pv_opt: mode : Timed Charge/Discharge
2024-01-14 18:54:00.706841 INFO pv_opt: code : 35
2024-01-14 18:54:00.714178 INFO pv_opt: switches :
2024-01-14 18:54:00.719940 INFO pv_opt: SelfUse : True
2024-01-14 18:54:00.723927 INFO pv_opt: Timed : True
2024-01-14 18:54:00.729946 INFO pv_opt: OffGrid : False
2024-01-14 18:54:00.741780 INFO pv_opt: BatteryWake : False
2024-01-14 18:54:00.850532 INFO pv_opt: Backup : False
2024-01-14 18:54:00.859036 INFO pv_opt: GridCharge : True
2024-01-14 18:54:00.898698 INFO pv_opt: FeedInPriority : False
2024-01-14 18:54:00.903191 INFO pv_opt: charge :
2024-01-14 18:54:00.905391 INFO pv_opt: start : 14-Jan 08:00
2024-01-14 18:54:00.912896 INFO pv_opt: end : 14-Jan 08:00
2024-01-14 18:54:00.915178 INFO pv_opt: current : 3.7
2024-01-14 18:54:00.922197 INFO pv_opt: active : False
2024-01-14 18:54:00.927996 INFO pv_opt: discharge :
2024-01-14 18:54:00.930344 INFO pv_opt: start : 14-Jan 06:20
2024-01-14 18:54:00.936784 INFO pv_opt: end : 14-Jan 06:20
2024-01-14 18:54:00.947278 INFO pv_opt: current : 0.0
2024-01-14 18:54:00.956571 INFO pv_opt: active : False
2024-01-14 18:54:01.005395 INFO pv_opt: hold_soc :
2024-01-14 18:54:01.020003 INFO pv_opt: active : False
2024-01-14 18:54:01.033108 INFO pv_opt: soc : 97.0
2024-01-14 18:54:01.040770 INFO pv_opt:
2024-01-14 18:54:01.057064 INFO pv_opt: Next charge window starts in 216.0 minutes. Nothing to do.
2024-01-14 18:54:01.142215 INFO pv_opt: Optimiser will run every 10 minutes from 19:00 or on PV_OPT Event
2024-01-14 18:54:01.165609 INFO AppDaemon: App initialization complete

Additionally, tomorrow's PV forecast is 19kWh, so no idea if its supposed to charge to 100% or not.
Any ideas?

Thanks.

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

Unsure why the batteries have charged past the end SOC.

image

2024-01-14 22:50:04.894319 INFO pv_opt:
2024-01-14 22:50:04.897971 INFO pv_opt: Plan time: 14-Jan 22:30 - 15-Jan 23:30 Initial SOC: 14.5 Base Cost: 464.02 Opt Cost: 354.55
2024-01-14 22:50:04.900990 INFO pv_opt:
2024-01-14 22:50:04.903696 INFO pv_opt: Optimiser elapsed time 4.8 seconds
2024-01-14 22:50:04.906648 INFO pv_opt:
2024-01-14 22:50:04.935567 INFO pv_opt: Previous message repeated 1 times
2024-01-14 22:50:04.946853 INFO pv_opt: Output written to sensor.pvopt_optimiser_elapsed
2024-01-14 22:50:05.192428 INFO pv_opt: Average unit cost today: 14.80p/kWh
2024-01-14 22:50:05.212716 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-14 22:50:05.440604 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-14 22:50:05.661724 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-14 22:50:05.712402 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-14 22:50:05.735580 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-14 22:50:05.762942 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-14 22:50:08.524730 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-14 22:50:08.554671 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-14 22:50:08.582445 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-14 22:50:08.609345 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-14 22:50:08.649569 INFO pv_opt:
2024-01-14 22:50:08.652402 INFO pv_opt: Current inverter status:
2024-01-14 22:50:08.655931 INFO pv_opt: ------------------------
2024-01-14 22:50:08.658393 INFO pv_opt: mode : Timed Charge/Discharge
2024-01-14 22:50:08.660704 INFO pv_opt: code : 35
2024-01-14 22:50:08.663012 INFO pv_opt: switches :
2024-01-14 22:50:08.665300 INFO pv_opt: SelfUse : True
2024-01-14 22:50:08.667592 INFO pv_opt: Timed : True
2024-01-14 22:50:08.676384 INFO pv_opt: OffGrid : False
2024-01-14 22:50:08.680157 INFO pv_opt: BatteryWake : False
2024-01-14 22:50:08.682845 INFO pv_opt: Backup : False
2024-01-14 22:50:08.685237 INFO pv_opt: GridCharge : True
2024-01-14 22:50:08.688113 INFO pv_opt: FeedInPriority : False
2024-01-14 22:50:08.690582 INFO pv_opt: charge :
2024-01-14 22:50:08.692926 INFO pv_opt: start : 14-Jan 22:30
2024-01-14 22:50:08.697124 INFO pv_opt: end : 14-Jan 23:00
2024-01-14 22:50:08.700841 INFO pv_opt: current : 44.7
2024-01-14 22:50:08.703992 INFO pv_opt: active : True
2024-01-14 22:50:08.707690 INFO pv_opt: discharge :
2024-01-14 22:50:08.710299 INFO pv_opt: start : 14-Jan 22:20
2024-01-14 22:50:08.712655 INFO pv_opt: end : 14-Jan 22:20
2024-01-14 22:50:08.714955 INFO pv_opt: current : 0.0
2024-01-14 22:50:08.717253 INFO pv_opt: active : False
2024-01-14 22:50:08.719488 INFO pv_opt: hold_soc :
2024-01-14 22:50:08.722095 INFO pv_opt: active : False
2024-01-14 22:50:08.724418 INFO pv_opt: soc : 97.0
2024-01-14 22:50:08.726675 INFO pv_opt:
2024-01-14 22:50:08.729193 INFO pv_opt: Current charge/discharge windows ends in 9.9 minutes.
2024-01-14 22:50:08.735735 INFO pv_opt: >>> SelfUse: True
2024-01-14 22:50:08.738865 INFO pv_opt: >>> Timed: True
2024-01-14 22:50:08.741571 INFO pv_opt: >>> Backup: False
2024-01-14 22:50:08.744200 INFO pv_opt: >>> GridCharge: True
2024-01-14 22:50:08.749499 INFO pv_opt: Updating inverter charge control:
2024-01-14 22:50:08.756525 INFO pv_opt: start: None
2024-01-14 22:50:08.760146 INFO pv_opt: end: 2024-01-14 23:00:00+00:00
2024-01-14 22:50:08.764771 INFO pv_opt: power: 1000
2024-01-14 22:50:08.769794 INFO pv_opt: Inverter already at correct time settings
2024-01-14 22:50:08.776198 INFO pv_opt: Power 1000 = 19.5A at 51.2V
2024-01-14 22:50:09.294684 INFO pv_opt: Current 19.5 written to inverter
2024-01-14 22:50:09.327140 INFO pv_opt: Wating for Modbus Read cycle: 18 seconds
2024-01-14 22:50:32.727219 INFO pv_opt:
2024-01-14 22:50:32.730330 INFO pv_opt: Current inverter status:
2024-01-14 22:50:32.732710 INFO pv_opt: ------------------------
2024-01-14 22:50:32.735044 INFO pv_opt: mode : Timed Charge/Discharge
2024-01-14 22:50:32.737333 INFO pv_opt: code : 35
2024-01-14 22:50:32.739578 INFO pv_opt: switches :
2024-01-14 22:50:32.741882 INFO pv_opt: SelfUse : True
2024-01-14 22:50:32.744139 INFO pv_opt: Timed : True
2024-01-14 22:50:32.746395 INFO pv_opt: OffGrid : False
2024-01-14 22:50:32.748657 INFO pv_opt: BatteryWake : False
2024-01-14 22:50:32.750994 INFO pv_opt: Backup : False
2024-01-14 22:50:32.754308 INFO pv_opt: GridCharge : True
2024-01-14 22:50:32.757890 INFO pv_opt: FeedInPriority : False
2024-01-14 22:50:32.760418 INFO pv_opt: charge :
2024-01-14 22:50:32.763265 INFO pv_opt: start : 14-Jan 22:30
2024-01-14 22:50:32.767766 INFO pv_opt: end : 14-Jan 23:00
2024-01-14 22:50:32.770581 INFO pv_opt: current : 19.5
2024-01-14 22:50:32.773004 INFO pv_opt: active : True
2024-01-14 22:50:32.775256 INFO pv_opt: discharge :
2024-01-14 22:50:32.777924 INFO pv_opt: start : 14-Jan 22:20
2024-01-14 22:50:32.780372 INFO pv_opt: end : 14-Jan 22:20
2024-01-14 22:50:32.782743 INFO pv_opt: current : 0.0
2024-01-14 22:50:32.785650 INFO pv_opt: active : False
2024-01-14 22:50:32.787941 INFO pv_opt: hold_soc :
2024-01-14 22:50:32.790216 INFO pv_opt: active : False
2024-01-14 22:50:32.792494 INFO pv_opt: soc : 97.0
2024-01-14 22:50:32.794822 INFO pv_opt:
2024-01-14 22:50:32.797325 INFO pv_opt: Current charge/discharge windows ends in 9.5 minutes.
2024-01-14 22:50:32.802651 INFO pv_opt: >>> SelfUse: True
2024-01-14 22:50:32.806796 INFO pv_opt: >>> Timed: True
2024-01-14 22:50:32.810218 INFO pv_opt: >>> Backup: False
2024-01-14 22:50:32.813058 INFO pv_opt: >>> GridCharge: True
2024-01-14 22:50:32.816977 INFO pv_opt: Updating inverter charge control:
2024-01-14 22:50:32.819796 INFO pv_opt: start: None
2024-01-14 22:50:32.824791 INFO pv_opt: end: 2024-01-14 23:00:00+00:00
2024-01-14 22:50:32.827858 INFO pv_opt: power: 1000
2024-01-14 22:50:32.832563 INFO pv_opt: Inverter already at correct time settings
2024-01-14 22:50:32.838085 INFO pv_opt: Power 1000 = 19.7A at 50.7V
2024-01-14 22:50:32.841578 INFO pv_opt: Inverter already at correct current
2024-01-14 22:50:32.844155 INFO pv_opt: Wating for Modbus Read cycle: 18 seconds
2024-01-14 22:50:58.573624 WARNING AppDaemon: Excessive time spent in callback 'optimise_time() in pv_opt', Thread 'thread.thread-1' - now complete after 58.57312 seconds (limit=45.0)
2024-01-14 22:54:50.690343 INFO pv_opt: >>> Agile Callback Handler

And then at 23:00 it has recalculated as follows:

image image

x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
/homeassistant/appdaemon/apps/pv_opt/pvpy.py:784: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
x = df[available][df["import"] < max_export_price][
2024-01-14 23:00:05.592391 INFO pv_opt:
2024-01-14 23:00:05.599855 INFO pv_opt: Charge net cost delta: -0.0p: < threshold 4.0 => Excluded
2024-01-14 23:00:05.606983 INFO pv_opt: Iteration 11: Slots added: 0
2024-01-14 23:00:05.613615 INFO pv_opt:
2024-01-14 23:00:05.626161 INFO pv_opt: Removing cyclic charge/discharge
2024-01-14 23:00:05.767334 INFO pv_opt: Net cost revised from 337.0p to 337.1p
2024-01-14 23:00:05.828948 INFO pv_opt:
2024-01-14 23:00:05.898038 INFO pv_opt: Checking for Hold SOC slots
/homeassistant/appdaemon/apps/pv_opt/pv_opt.py:1572: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
self.windows["hold_soc"].loc[
2024-01-14 23:00:05.917134 INFO pv_opt:
2024-01-14 23:00:05.927903 INFO pv_opt: Optimal forced charge/discharge slots:
2024-01-14 23:00:05.947215 INFO pv_opt: 15-Jan 00:00 - 15-Jan 00:30 Power: 3400W SOC: 18% -> 33%
2024-01-14 23:00:05.953108 INFO pv_opt: 15-Jan 01:00 - 15-Jan 01:30 Power: 3400W SOC: 31% -> 47%
2024-01-14 23:00:05.972477 INFO pv_opt: 15-Jan 01:30 - 15-Jan 02:30 Power: 4800W SOC: 47% -> 85%
2024-01-14 23:00:05.978579 INFO pv_opt: 15-Jan 02:30 - 15-Jan 03:00 Power: 4800W SOC: 85% -> 100%
2024-01-14 23:00:05.999498 INFO pv_opt: 15-Jan 03:30 - 15-Jan 04:30 Power: 1800W SOC: 96% -> 100%
2024-01-14 23:00:06.016044 INFO pv_opt: 15-Jan 04:30 - 15-Jan 05:00 Power: 500W SOC: 100% -> 100% <=
2024-01-14 23:00:06.031733 INFO pv_opt: 15-Jan 13:30 - 15-Jan 14:00 Power: 4200W SOC: 69% -> 88%
2024-01-14 23:00:06.038532 INFO pv_opt: 15-Jan 15:00 - 15-Jan 15:30 Power: 4000W SOC: 81% -> 100%
2024-01-14 23:00:06.056381 INFO pv_opt:
2024-01-14 23:00:06.062199 INFO pv_opt: Plan time: 14-Jan 23:00 - 15-Jan 23:30 Initial SOC: 25.0 Base Cost: 455.00 Opt Cost: 337.12
2024-01-14 23:00:06.066565 INFO pv_opt:
2024-01-14 23:00:06.073513 INFO pv_opt: Optimiser elapsed time 6.0 seconds
2024-01-14 23:00:06.076051 INFO pv_opt:
2024-01-14 23:00:11.510729 INFO pv_opt: Previous message repeated 1 times
2024-01-14 23:00:11.511028 INFO pv_opt: Output written to sensor.pvopt_optimiser_elapsed
2024-01-14 23:00:12.532398 INFO pv_opt: Average unit cost today: 14.80p/kWh
2024-01-14 23:00:12.553377 INFO pv_opt: Output written to sensor.pvopt_unit_cost_today
2024-01-14 23:00:13.335288 INFO pv_opt: Output written to sensor.pvopt_base_cost
2024-01-14 23:00:14.780598 INFO pv_opt: Output written to sensor.pvopt_opt_cost
2024-01-14 23:00:14.833621 INFO pv_opt: Output written to sensor.pvopt_charge_start
2024-01-14 23:00:14.864738 INFO pv_opt: Output written to sensor.pvopt_charge_end
2024-01-14 23:00:14.888406 INFO pv_opt: Output written to sensor.pvopt_charge_current
2024-01-14 23:00:14.919594 INFO pv_opt: Output written to sensor.pvopt_soc_h1
2024-01-14 23:00:14.950988 INFO pv_opt: Output written to sensor.pvopt_soc_h4
2024-01-14 23:00:14.984668 INFO pv_opt: Output written to sensor.pvopt_soc_h8
2024-01-14 23:00:15.015418 INFO pv_opt: Output written to sensor.pvopt_soc_h12
2024-01-14 23:00:15.054657 INFO pv_opt:
2024-01-14 23:00:15.058135 INFO pv_opt: Current inverter status:
2024-01-14 23:00:15.061240 INFO pv_opt: ------------------------
2024-01-14 23:00:15.063673 INFO pv_opt: mode : Timed Charge/Discharge
2024-01-14 23:00:15.065906 INFO pv_opt: code : 35
2024-01-14 23:00:15.068172 INFO pv_opt: switches :
2024-01-14 23:00:15.071496 INFO pv_opt: SelfUse : True
2024-01-14 23:00:15.076938 INFO pv_opt: Timed : True
2024-01-14 23:00:15.080599 INFO pv_opt: OffGrid : False
2024-01-14 23:00:15.083119 INFO pv_opt: BatteryWake : False
2024-01-14 23:00:15.085517 INFO pv_opt: Backup : False
2024-01-14 23:00:15.087897 INFO pv_opt: GridCharge : True
2024-01-14 23:00:15.091016 INFO pv_opt: FeedInPriority : False
2024-01-14 23:00:15.093524 INFO pv_opt: charge :
2024-01-14 23:00:15.095885 INFO pv_opt: start : 14-Jan 22:30
2024-01-14 23:00:15.098355 INFO pv_opt: end : 14-Jan 23:00
2024-01-14 23:00:15.100912 INFO pv_opt: current : 19.5
2024-01-14 23:00:15.103243 INFO pv_opt: active : False
2024-01-14 23:00:15.105452 INFO pv_opt: discharge :
2024-01-14 23:00:15.107743 INFO pv_opt: start : 14-Jan 22:20
2024-01-14 23:00:15.111553 INFO pv_opt: end : 14-Jan 22:20
2024-01-14 23:00:15.114775 INFO pv_opt: current : 0.0
2024-01-14 23:00:15.118761 INFO pv_opt: active : False
2024-01-14 23:00:15.122474 INFO pv_opt: hold_soc :
2024-01-14 23:00:15.125456 INFO pv_opt: active : False
2024-01-14 23:00:15.128876 INFO pv_opt: soc : 97.0
2024-01-14 23:00:15.131389 INFO pv_opt:
2024-01-14 23:00:15.134097 INFO pv_opt: Next charge window starts in 59.7 minutes. Nothing to do.

Hope this helps.
Thanks.

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

Back on negative costs again with Agile :)
But PV_Opt doesn't seem to want to charge during these periods...

image

from pv_opt.

fboundy avatar fboundy commented on May 25, 2024

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

No problem! I was logging it for reference. We all have lives to lead :) Very grateful you have written this to optimise everything.

Thanks.

I’m away at present so I haven’t been able to look at this I afraid

On 23 Jan 2024 at 20:59 +0100, solarjones @.>, wrote: Back on negative costs again with Agile :) But PV_Opt doesn't seem to want to charge during these periods... image.png (view on web) — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.>

from pv_opt.

solarjones avatar solarjones commented on May 25, 2024

Since forcing a restart of AppDaemon periodically (and more recently a daily automation), PV_OPT now seems to be inline with the correct cheapest time slots and behaving as designed. Unsure what would cause the app to get itself out of sync but if I don't force a restart it will pick the wrong charging slots, but once AppDaemon is restarted, the recalculations are spot on.

from pv_opt.

fboundy avatar fboundy commented on May 25, 2024

from pv_opt.

fboundy avatar fboundy commented on May 25, 2024

I think this is the same as #88 so I am closing this one. Please post any useful logs/screenshots to that issue

from pv_opt.

fboundy avatar fboundy commented on May 25, 2024

Please check release 3.7.0 beta 01 which I hope fixes this and has additional logging to debug

from pv_opt.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.