springfall2008 / batpred

Home battery prediction and charging automation for Home Assistant, supporting many inverter types
https://springfall2008.github.io/batpred/
95 stars 33 forks source link

Two sunny day behaviours that are sub-optimal #791

Open PianSom opened 4 months ago

PianSom commented 4 months ago

Describe the bug My Predbat plan displays two behaviours on sunny days that are sub-optimal. This has been observed several times this month. The first issue has also been reported by another user; the second seems to be only me.

Expected behavior A more efficient plan should be followed

Predbat version 7.16.1

Environment details

Screenshots Today's behaviour:

Screenshot 2024-02-24 at 17 32 54

Note the two sub-optimal behaviours: (1) the battery was charged to 100% overnight, even though there was a high solar generation forecast. It would have been cheaper/more efficient to charge to a lower level from the grid at 5.30am and then top up from surplus solar later in the morning (2) having charged the battery to full/almost full from solar, Predbat chose to cycle around discharge/charge cycles. It would have been more efficient to freeze the battery and allow solar to carry the load and export any surplus.

I am on Intelligent Octopus Go (7.5p 11.30pm-5.30am, 30p otherwise) and Fixed export (15p).

Here is the plan, captured mid-morning:

1708683612-539872-screenshot-2024-02-23-at-101801

Log file No log file captured, but will do if necessary Here is the latest backup of settings. Note that since then I have changed input_number.predbat_metric_min_improvement_discharge to 5.0. I have also removed export_limit from apps.yaml (was 6000).

Please let me know if there is any personal info in this that I should not have posted - I don't think there is.

Settings backup

- default: false entity: update.predbat_version entity_picture: https://user-images.githubusercontent.com/48591903/249456079-e98a0720-d2cf-4b71-94ab-97fe09b3cee1.png friendly_name: Predbat Core Update installed_version: v7.16.1 name: version release_url: https://github.com/springfall2008/batpred/releases/tag/v7.16.1 restore: false title: Predbat type: update value: false - default: false entity: switch.predbat_expert_mode friendly_name: Expert Mode name: expert_mode type: switch value: true - default: false entity: switch.predbat_active friendly_name: Predbat Active name: active type: switch value: true - default: 0.15 entity: input_number.predbat_pv_metric10_weight friendly_name: Metric 10 Weight icon: mdi:multiplication max: 1.0 min: 0 name: pv_metric10_weight step: 0.01 type: input_number unit: '*' value: 0.17 - default: 1.0 entity: input_number.predbat_pv_scaling friendly_name: PV Scaling icon: mdi:multiplication max: 2.0 min: 0 name: pv_scaling step: 0.01 type: input_number unit: '*' value: 1.0 - default: 1.0 entity: input_number.predbat_load_scaling friendly_name: Load Scaling icon: mdi:multiplication max: 2.0 min: 0 name: load_scaling step: 0.01 type: input_number unit: '*' value: 1.1 - default: 1.1 entity: input_number.predbat_load_scaling10 friendly_name: Load Scaling PV10% icon: mdi:multiplication max: 2.0 min: 0 name: load_scaling10 step: 0.01 type: input_number unit: '*' value: 1.2 - default: 1.0 entity: input_number.predbat_load_scaling_saving friendly_name: Load Scaling for saving sessions icon: mdi:multiplication max: 2.0 min: 0 name: load_scaling_saving step: 0.01 type: input_number unit: '*' value: 1.0 - default: 1.0 entity: input_number.predbat_battery_rate_max_scaling friendly_name: Battery rate max scaling charge icon: mdi:multiplication max: 1.0 min: 0 name: battery_rate_max_scaling step: 0.01 type: input_number unit: '*' value: 1.0 - default: 1.0 entity: input_number.predbat_battery_rate_max_scaling_discharge friendly_name: Battery rate max scaling discharge icon: mdi:multiplication max: 1.0 min: 0 name: battery_rate_max_scaling_discharge step: 0.01 type: input_number unit: '*' value: 1.0 - default: 0.03 entity: input_number.predbat_battery_loss friendly_name: 'Battery loss charge ' icon: mdi:call-split max: 1.0 min: 0 name: battery_loss step: 0.01 type: input_number unit: '*' value: 0.04 - default: 0.03 entity: input_number.predbat_battery_loss_discharge friendly_name: Battery loss discharge icon: mdi:call-split max: 1.0 min: 0 name: battery_loss_discharge step: 0.01 type: input_number unit: '*' value: 0.04 - default: 0.04 entity: input_number.predbat_inverter_loss friendly_name: Inverter Loss icon: mdi:call-split max: 1.0 min: 0 name: inverter_loss step: 0.01 type: input_number unit: '*' value: 0.04 - default: true entity: switch.predbat_inverter_hybrid friendly_name: Inverter Hybrid name: inverter_hybrid type: switch value: false - default: true enable: expert_mode entity: switch.predbat_inverter_soc_reset friendly_name: Inverter SOC Reset name: inverter_soc_reset type: switch value: false - default: false enable: expert_mode entity: switch.predbat_battery_capacity_nominal friendly_name: Use the Battery Capacity Nominal size name: battery_capacity_nominal type: switch value: false - default: 1.0 entity: input_number.predbat_car_charging_energy_scale friendly_name: Car charging energy scale icon: mdi:multiplication max: 1.0 min: 0 name: car_charging_energy_scale step: 0.01 type: input_number unit: '*' value: 1.0 - default: 6.0 entity: input_number.predbat_car_charging_threshold friendly_name: Car charging threshold icon: mdi:ev-station max: 8.5 min: 4 name: car_charging_threshold step: 0.1 type: input_number unit: kW value: 6.0 - default: 7.4 entity: input_number.predbat_car_charging_rate friendly_name: Car charging rate icon: mdi:ev-station max: 8.5 min: 1 name: car_charging_rate step: 0.1 type: input_number unit: kW value: 7.4 - default: 0.08 entity: input_number.predbat_car_charging_loss friendly_name: Car charging loss icon: mdi:call-split max: 1.0 min: 0 name: car_charging_loss step: 0.01 type: input_number unit: '*' value: 0.08 - default: 0.0 enable: expert_mode entity: input_number.predbat_best_soc_min friendly_name: Best SOC Min icon: mdi:battery-50 max: 30.0 min: 0 name: best_soc_min step: 0.1 type: input_number unit: kWh value: 0.0 - default: 0.0 enable: expert_mode entity: input_number.predbat_best_soc_max friendly_name: Best SOC Max icon: mdi:battery-50 max: 30.0 min: 0 name: best_soc_max step: 0.1 type: input_number unit: kWh value: 0.0 - default: 0.5 entity: input_number.predbat_best_soc_keep friendly_name: Best SOC Keep icon: mdi:battery-50 max: 30.0 min: 0 name: best_soc_keep step: 0.1 type: input_number unit: kWh value: 1.5 - default: 0.0 enable: expert_mode entity: input_number.predbat_metric_min_improvement friendly_name: Metric Min Improvement icon: mdi:currency-usd max: 50.0 min: -50 name: metric_min_improvement step: 0.1 type: input_number unit: p value: 0.0 - default: 0.1 enable: expert_mode entity: input_number.predbat_metric_min_improvement_discharge friendly_name: Metric Min Improvement Discharge icon: mdi:currency-usd max: 50.0 min: -50 name: metric_min_improvement_discharge step: 0.1 type: input_number unit: p value: 0.1 - default: 0.5 enable: expert_mode entity: input_number.predbat_metric_battery_cycle friendly_name: Metric Battery Cycle Cost icon: mdi:currency-usd max: 50.0 min: -50 name: metric_battery_cycle step: 0.1 type: input_number unit: p/kWh value: 0.0 - default: 1.0 enable: expert_mode entity: input_number.predbat_metric_battery_value_scaling friendly_name: Metric Battery Value Scaling icon: mdi:multiplication max: 2.0 min: 0 name: metric_battery_value_scaling step: 0.1 type: input_number unit: '*' value: 1.0 - default: 0.0 enable: expert_mode entity: input_number.predbat_metric_future_rate_offset_import friendly_name: Metric Future Rate Offset Import icon: mdi:currency-usd max: 50.0 min: -50 name: metric_future_rate_offset_import step: 0.1 type: input_number unit: p/kWh value: 0.0 - default: 0.0 enable: expert_mode entity: input_number.predbat_metric_future_rate_offset_export friendly_name: Metric Future Rate Offset Export icon: mdi:currency-usd max: 50.0 min: -50 name: metric_future_rate_offset_export step: 0.1 type: input_number unit: p/kWh value: 0.0 - default: 0.95 enable: expert_mode entity: input_number.predbat_metric_inday_adjust_damping friendly_name: In-day adjustment damping factor icon: mdi:call-split max: 2.0 min: 0.5 name: metric_inday_adjust_damping step: 0.05 type: input_number unit: '*' value: 0.95 - default: true enable: expert_mode entity: switch.predbat_metric_cloud_enable friendly_name: Enable Cloud Model name: metric_cloud_enable type: switch value: true - default: 4.0 entity: input_number.predbat_set_reserve_min friendly_name: Set Reserve Min icon: mdi:percent max: 100 min: 4 name: set_reserve_min reset_inverter: true step: 1 type: input_number unit: '%' value: 4.0 - default: 0.0 enable: expert_mode entity: input_number.predbat_rate_low_threshold friendly_name: Rate Low Threshold icon: mdi:multiplication max: 2.0 min: 0.0 name: rate_low_threshold step: 0.05 type: input_number unit: '*' value: 0.0 - default: 0.0 enable: expert_mode entity: input_number.predbat_rate_high_threshold friendly_name: Rate High Threshold icon: mdi:multiplication max: 2.0 min: 0.0 name: rate_high_threshold step: 0.05 type: input_number unit: '*' value: 0.0 - default: true entity: switch.predbat_car_charging_hold friendly_name: Car charging hold name: car_charging_hold reset_inverter: true type: switch value: true - default: false entity: switch.predbat_car_charging_manual_soc friendly_name: Car charging manual SOC name: car_charging_manual_soc type: switch value: false - default: 0.0 enable: car_charging_manual_soc entity: input_number.predbat_car_charging_manual_soc_kwh friendly_name: Car manual SOC kWh icon: mdi:ev-station max: 100 min: 0 name: car_charging_manual_soc_kwh restore: false step: 0.01 type: input_number unit: kWh value: null - default: true entity: switch.predbat_octopus_intelligent_charging friendly_name: Octopus Intelligent Charging name: octopus_intelligent_charging type: switch value: true - default: false enable: expert_mode entity: switch.predbat_octopus_intelligent_ignore_unplugged friendly_name: Ignore Intelligent slots when car is unplugged name: octopus_intelligent_ignore_unplugged type: switch value: false - default: false entity: switch.predbat_car_charging_plan_smart friendly_name: Car Charging Plan Smart name: car_charging_plan_smart type: switch value: false - default: false entity: switch.predbat_car_charging_from_battery friendly_name: Allow car to charge from battery name: car_charging_from_battery reset_inverter: true type: switch value: false - default: true enable: expert_mode entity: switch.predbat_calculate_discharge_oncharge friendly_name: Calculate Discharge on charge slots name: calculate_discharge_oncharge type: switch value: true - default: false enable: expert_mode entity: switch.predbat_calculate_fast_plan friendly_name: Calculate plan faster (less accurate) name: calculate_fast_plan type: switch value: false - default: false enable: expert_mode entity: switch.predbat_calculate_second_pass friendly_name: Calculate full second pass (slower) name: calculate_second_pass type: switch value: false - default: false enable: expert_mode entity: switch.predbat_calculate_tweak_plan friendly_name: Calculate tweak second pass name: calculate_tweak_plan type: switch value: false - default: true enable: expert_mode entity: switch.predbat_calculate_regions friendly_name: Calculate region optimisation name: calculate_regions type: switch value: true - default: true enable: expert_mode entity: switch.predbat_calculate_inday_adjustment friendly_name: Calculate in-day adjustment name: calculate_inday_adjustment type: switch value: true - default: 10 enable: expert_mode entity: input_number.predbat_calculate_plan_every friendly_name: Calculate plan every N minutes icon: mdi:clock-end max: 60 min: 5 name: calculate_plan_every step: 5 type: input_number unit: minutes value: 10.0 - default: true entity: switch.predbat_combine_charge_slots friendly_name: Combine Charge Slots name: combine_charge_slots type: switch value: false - default: false enable: expert_mode entity: switch.predbat_combine_discharge_slots friendly_name: Combine Discharge Slots name: combine_discharge_slots type: switch value: false - default: true entity: switch.predbat_set_status_notify friendly_name: Set Status Notify name: set_status_notify type: switch value: true - default: false entity: switch.predbat_set_inverter_notify friendly_name: Set Inverter Notify name: set_inverter_notify type: switch value: false - default: true enable: expert_mode entity: switch.predbat_set_charge_freeze friendly_name: Set Charge Freeze name: set_charge_freeze reset_inverter: true type: switch value: true - default: false entity: switch.predbat_set_charge_low_power friendly_name: Set Charge Low Power Mode name: set_charge_low_power reset_inverter: true type: switch value: false - default: true enable: expert_mode entity: switch.predbat_set_reserve_enable friendly_name: Set Reserve Enable name: set_reserve_enable reset_inverter: true type: switch value: true - default: false enable: expert_mode entity: switch.predbat_set_discharge_freeze_only friendly_name: Set Discharge Freeze Only name: set_discharge_freeze_only reset_inverter: true type: switch value: false - default: true entity: switch.predbat_set_discharge_during_charge friendly_name: Set Discharge During Charge name: set_discharge_during_charge type: switch value: true - default: false entity: switch.predbat_set_read_only friendly_name: Read Only mode name: set_read_only reset_inverter_force: true type: switch value: false - default: false entity: switch.predbat_balance_inverters_enable friendly_name: Balance Inverters Enable (Beta) name: balance_inverters_enable type: switch value: false - default: true enable: balance_inverters_enable entity: switch.predbat_balance_inverters_charge friendly_name: Balance Inverters for charging name: balance_inverters_charge type: switch value: null - default: true enable: balance_inverters_enable entity: switch.predbat_balance_inverters_discharge friendly_name: Balance Inverters for discharge name: balance_inverters_discharge type: switch value: null - default: true enable: balance_inverters_enable entity: switch.predbat_balance_inverters_crosscharge friendly_name: Balance Inverters for cross-charging name: balance_inverters_crosscharge type: switch value: null - default: 1.0 enable: balance_inverters_enable entity: input_number.predbat_balance_inverters_threshold_charge friendly_name: Balance Inverters threshold charge icon: mdi:percent max: 20 min: 1 name: balance_inverters_threshold_charge step: 1 type: input_number unit: '%' value: null - default: 1.0 enable: balance_inverters_enable entity: input_number.predbat_balance_inverters_threshold_discharge friendly_name: Balance Inverters threshold discharge icon: mdi:percent max: 20 min: 1 name: balance_inverters_threshold_discharge step: 1 type: input_number unit: '%' value: null - default: false entity: switch.predbat_debug_enable friendly_name: Debug Enable icon: mdi:bug-outline name: debug_enable type: switch value: false - default: 07:00:00 entity: select.predbat_car_charging_plan_time friendly_name: Car charging planned ready time icon: mdi:clock-end name: car_charging_plan_time options: - 00:00:00 - 00:05:00 - 00:10:00 - 00:15:00 - 00:20:00 - 00:25:00 - 00:30:00 - 00:35:00 - 00:40:00 - 00:45:00 - 00:50:00 - 00:55:00 - 01:00:00 - 01:05:00 - 01:10:00 - 01:15:00 - 01:20:00 - 01:25:00 - 01:30:00 - 01:35:00 - 01:40:00 - 01:45:00 - 01:50:00 - 01:55:00 - 02:00:00 - 02:05:00 - 02:10:00 - 02:15:00 - 02:20:00 - 02:25:00 - 02:30:00 - 02:35:00 - 02:40:00 - 02:45:00 - 02:50:00 - 02:55:00 - 03:00:00 - 03:05:00 - 03:10:00 - 03:15:00 - 03:20:00 - 03:25:00 - 03:30:00 - 03:35:00 - 03:40:00 - 03:45:00 - 03:50:00 - 03:55:00 - 04:00:00 - 04:05:00 - 04:10:00 - 04:15:00 - 04:20:00 - 04:25:00 - 04:30:00 - 04:35:00 - 04:40:00 - 04:45:00 - 04:50:00 - 04:55:00 - 05:00:00 - 05:05:00 - 05:10:00 - 05:15:00 - 05:20:00 - 05:25:00 - 05:30:00 - 05:35:00 - 05:40:00 - 05:45:00 - 05:50:00 - 05:55:00 - 06:00:00 - 06:05:00 - 06:10:00 - 06:15:00 - 06:20:00 - 06:25:00 - 06:30:00 - 06:35:00 - 06:40:00 - 06:45:00 - 06:50:00 - 06:55:00 - 07:00:00 - 07:05:00 - 07:10:00 - 07:15:00 - 07:20:00 - 07:25:00 - 07:30:00 - 07:35:00 - 07:40:00 - 07:45:00 - 07:50:00 - 07:55:00 - 08:00:00 - 08:05:00 - 08:10:00 - 08:15:00 - 08:20:00 - 08:25:00 - 08:30:00 - 08:35:00 - 08:40:00 - 08:45:00 - 08:50:00 - 08:55:00 - 09:00:00 - 09:05:00 - 09:10:00 - 09:15:00 - 09:20:00 - 09:25:00 - 09:30:00 - 09:35:00 - 09:40:00 - 09:45:00 - 09:50:00 - 09:55:00 - '10:00:00' - '10:05:00' - '10:10:00' - '10:15:00' - '10:20:00' - '10:25:00' - '10:30:00' - '10:35:00' - '10:40:00' - '10:45:00' - '10:50:00' - '10:55:00' - '11:00:00' - '11:05:00' - '11:10:00' - '11:15:00' - '11:20:00' - '11:25:00' - '11:30:00' - '11:35:00' - '11:40:00' - '11:45:00' - '11:50:00' - '11:55:00' - '12:00:00' - '12:05:00' - '12:10:00' - '12:15:00' - '12:20:00' - '12:25:00' - '12:30:00' - '12:35:00' - '12:40:00' - '12:45:00' - '12:50:00' - '12:55:00' - '13:00:00' - '13:05:00' - '13:10:00' - '13:15:00' - '13:20:00' - '13:25:00' - '13:30:00' - '13:35:00' - '13:40:00' - '13:45:00' - '13:50:00' - '13:55:00' - '14:00:00' - '14:05:00' - '14:10:00' - '14:15:00' - '14:20:00' - '14:25:00' - '14:30:00' - '14:35:00' - '14:40:00' - '14:45:00' - '14:50:00' - '14:55:00' - '15:00:00' - '15:05:00' - '15:10:00' - '15:15:00' - '15:20:00' - '15:25:00' - '15:30:00' - '15:35:00' - '15:40:00' - '15:45:00' - '15:50:00' - '15:55:00' - '16:00:00' - '16:05:00' - '16:10:00' - '16:15:00' - '16:20:00' - '16:25:00' - '16:30:00' - '16:35:00' - '16:40:00' - '16:45:00' - '16:50:00' - '16:55:00' - '17:00:00' - '17:05:00' - '17:10:00' - '17:15:00' - '17:20:00' - '17:25:00' - '17:30:00' - '17:35:00' - '17:40:00' - '17:45:00' - '17:50:00' - '17:55:00' - '18:00:00' - '18:05:00' - '18:10:00' - '18:15:00' - '18:20:00' - '18:25:00' - '18:30:00' - '18:35:00' - '18:40:00' - '18:45:00' - '18:50:00' - '18:55:00' - '19:00:00' - '19:05:00' - '19:10:00' - '19:15:00' - '19:20:00' - '19:25:00' - '19:30:00' - '19:35:00' - '19:40:00' - '19:45:00' - '19:50:00' - '19:55:00' - '20:00:00' - '20:05:00' - '20:10:00' - '20:15:00' - '20:20:00' - '20:25:00' - '20:30:00' - '20:35:00' - '20:40:00' - '20:45:00' - '20:50:00' - '20:55:00' - '21:00:00' - '21:05:00' - '21:10:00' - '21:15:00' - '21:20:00' - '21:25:00' - '21:30:00' - '21:35:00' - '21:40:00' - '21:45:00' - '21:50:00' - '21:55:00' - '22:00:00' - '22:05:00' - '22:10:00' - '22:15:00' - '22:20:00' - '22:25:00' - '22:30:00' - '22:35:00' - '22:40:00' - '22:45:00' - '22:50:00' - '22:55:00' - '23:00:00' - '23:05:00' - '23:10:00' - '23:15:00' - '23:20:00' - '23:25:00' - '23:30:00' - '23:35:00' - '23:40:00' - '23:45:00' - '23:50:00' - '23:55:00' type: select value: 07:00:00 - default: Monitor entity: select.predbat_mode friendly_name: Predbat mode icon: mdi:state-machine name: mode options: - Monitor - Control SOC only - Control charge - Control charge & discharge reset_inverter_force: true type: select value: Control charge & discharge - default: null entity: select.predbat_update friendly_name: Predbat update icon: mdi:state-machine name: update options: - main - v7.16.1 New watch list feature, tweak to metric keep, bug fixes - v7.16.0 Multi-threaded Predbat - v7.15.21 Fix spurious inverter notification - v7.15.20 Auto restart updated to allow deleting of GivTCP .pkl files - v7.15.19 Fix reading of nordpool plugin data to include tomorrow - v7.15.18 Fix bug in nordpool data, change auto-restart to 5 minute threshold - v7.15.17 Auto-restart inverter feature, some fixes for potential crashes - v7.15.16 Tweaks to docs and update HA entity feature - v7.15.15 Support updates via HA update entity restore: false type: select value: v7.16.1 New watch list feature, tweak to metric keep, bug fixes - default: '' entity: select.predbat_manual_charge friendly_name: Manual force charge icon: mdi:state-machine manual: true name: manual_charge options: - '15:30:00' - '16:00:00' - '16:30:00' - '17:00:00' - '17:30:00' - '18:00:00' - '18:30:00' - '19:00:00' - '19:30:00' - '20:00:00' - '20:30:00' - '21:00:00' - '21:30:00' - '22:00:00' - '22:30:00' - '23:00:00' - '23:30:00' - 00:00:00 - 00:30:00 - 01:00:00 - 01:30:00 - 02:00:00 - 02:30:00 - 03:00:00 - 03:30:00 - 04:00:00 - 04:30:00 - 05:00:00 - 05:30:00 - 06:00:00 - 06:30:00 - 07:00:00 - 07:30:00 - 08:00:00 - 08:30:00 - 09:00:00 - '' - reset restore: false type: select value: '' - default: '' entity: select.predbat_manual_discharge friendly_name: Manual force discharge icon: mdi:state-machine manual: true name: manual_discharge options: - '15:30:00' - '16:00:00' - '16:30:00' - '17:00:00' - '17:30:00' - '18:00:00' - '18:30:00' - '19:00:00' - '19:30:00' - '20:00:00' - '20:30:00' - '21:00:00' - '21:30:00' - '22:00:00' - '22:30:00' - '23:00:00' - '23:30:00' - 00:00:00 - 00:30:00 - 01:00:00 - 01:30:00 - 02:00:00 - 02:30:00 - 03:00:00 - 03:30:00 - 04:00:00 - 04:30:00 - 05:00:00 - 05:30:00 - 06:00:00 - 06:30:00 - 07:00:00 - 07:30:00 - 08:00:00 - 08:30:00 - 09:00:00 - '' - reset restore: false type: select value: '' - default: '' entity: select.predbat_manual_idle friendly_name: Manual force idle icon: mdi:state-machine manual: true name: manual_idle options: - '15:30:00' - '16:00:00' - '16:30:00' - '17:00:00' - '17:30:00' - '18:00:00' - '18:30:00' - '19:00:00' - '19:30:00' - '20:00:00' - '20:30:00' - '21:00:00' - '21:30:00' - '22:00:00' - '22:30:00' - '23:00:00' - '23:30:00' - 00:00:00 - 00:30:00 - 01:00:00 - 01:30:00 - 02:00:00 - 02:30:00 - 03:00:00 - 03:30:00 - 04:00:00 - 04:30:00 - 05:00:00 - 05:30:00 - 06:00:00 - 06:30:00 - 07:00:00 - 07:30:00 - 08:00:00 - 08:30:00 - 09:00:00 - '' - reset restore: false type: select value: '' - default: '' entity: select.predbat_saverestore friendly_name: Save/restore settings icon: mdi:state-machine name: saverestore options: - save current - restore default - 24_01_16_19_50_00.yaml - 24_02_01_16_25_00.yaml - previous.yaml restore: false type: select value: null - default: false entity: switch.predbat_auto_update friendly_name: Predbat automatic update enable name: auto_update type: switch value: false - default: true enable: expert_mode entity: switch.predbat_load_filter_modal friendly_name: Apply modal filter historical load name: load_filter_modal type: switch value: true - default: false entity: switch.predbat_iboost_enable friendly_name: IBoost enable name: iboost_enable type: switch value: false - default: true entity: switch.predbat_iboost_solar friendly_name: IBoost on solar power name: iboost_solar type: switch value: true - default: false entity: switch.predbat_iboost_gas friendly_name: IBoost when cheaper than gas name: iboost_gas type: switch value: false - default: false entity: switch.predbat_iboost_charging friendly_name: IBoost when battery charging name: iboost_charging type: switch value: false - default: 1.0 enable: iboost_enable entity: input_number.predbat_iboost_gas_scale friendly_name: IBoost gas price scaling icon: mdi:multiplication max: 2.0 min: 0 name: iboost_gas_scale step: 0.1 type: input_number unit: '*' value: null - default: 3.0 enable: iboost_enable entity: input_number.predbat_iboost_max_energy friendly_name: IBoost max energy max: 5 min: 0 name: iboost_max_energy step: 0.1 type: input_number unit: kWh value: null - default: 0.0 enable: iboost_enable entity: input_number.predbat_iboost_today friendly_name: IBoost today max: 5 min: 0 name: iboost_today step: 0.1 type: input_number unit: kWh value: null - default: 2400 enable: iboost_enable entity: input_number.predbat_iboost_max_power friendly_name: IBoost max power max: 3500 min: 0 name: iboost_max_power restore: false step: 100 type: input_number unit: W value: null - default: 500 enable: iboost_enable entity: input_number.predbat_iboost_min_power friendly_name: IBoost min power max: 3500 min: 0 name: iboost_min_power step: 100 type: input_number unit: W value: null - default: 0.0 enable: iboost_enable entity: input_number.predbat_iboost_min_soc friendly_name: IBoost min soc icon: mdi:percent max: 100 min: 0 name: iboost_min_soc step: 5 type: input_number unit: '%' value: null - default: 0 entity: input_number.predbat_holiday_days_left friendly_name: Holiday days left icon: mdi:clock-end max: 28 min: 0 name: holiday_days_left restore: false step: 1 type: input_number unit: days value: 0.0 - default: 24 enable: expert_mode entity: input_number.predbat_forecast_plan_hours friendly_name: Plan forecast hours icon: mdi:clock-end max: 96 min: 8 name: forecast_plan_hours step: 1 type: input_number unit: hours value: 48.0 - default: false enable: expert_mode entity: switch.predbat_plan_debug friendly_name: HTML Plan Debug name: plan_debug type: switch value: true - entity: update.predbat_version entity_picture: https://user-images.githubusercontent.com/48591903/249456079-e98a0720-d2cf-4b71-94ab-97fe09b3cee1.png friendly_name: Predbat Core Update installed_version: v7.14.45 name: version release_url: https://github.com/springfall2008/batpred/releases/tag/v7.14.45 restore: false title: Predbat type: update value: null - default: false entity: switch.predbat_expert_mode friendly_name: Expert Mode name: expert_mode type: switch value: true - default: 0.15 entity: input_number.predbat_pv_metric10_weight friendly_name: Metric 10 Weight icon: mdi:percent max: 1.0 min: 0 name: pv_metric10_weight step: 0.01 type: input_number unit: fraction value: 0.15 - default: 1.0 entity: input_number.predbat_pv_scaling friendly_name: PV Scaling icon: mdi:multiplication max: 2.0 min: 0 name: pv_scaling step: 0.01 type: input_number unit: multiple value: 1.08 - default: 1.0 entity: input_number.predbat_load_scaling friendly_name: Load Scaling icon: mdi:multiplication max: 2.0 min: 0 name: load_scaling step: 0.01 type: input_number unit: multiple value: 1.15 - default: 1.1 entity: input_number.predbat_load_scaling10 friendly_name: Load Scaling PV10% icon: mdi:multiplication max: 2.0 min: 0 name: load_scaling10 step: 0.01 type: input_number unit: multiple value: 1.1 - default: 1.0 entity: input_number.predbat_battery_rate_max_scaling friendly_name: Battery rate max scaling icon: mdi:multiplication max: 1.0 min: 0 name: battery_rate_max_scaling step: 0.01 type: input_number unit: multiple value: 1.0 - default: 0.03 entity: input_number.predbat_battery_loss friendly_name: 'Battery loss charge ' icon: mdi:call-split max: 1.0 min: 0 name: battery_loss step: 0.01 type: input_number unit: fraction value: 0.04 - default: 0.03 entity: input_number.predbat_battery_loss_discharge friendly_name: Battery loss discharge icon: mdi:call-split max: 1.0 min: 0 name: battery_loss_discharge step: 0.01 type: input_number unit: fraction value: 0.04 - default: 0.04 entity: input_number.predbat_inverter_loss friendly_name: Inverter Loss icon: mdi:call-split max: 1.0 min: 0 name: inverter_loss step: 0.01 type: input_number unit: fraction value: 0.03 - default: true entity: switch.predbat_inverter_hybrid friendly_name: Inverter Hybrid name: inverter_hybrid type: switch value: false - default: false enable: expert_mode entity: switch.predbat_inverter_soc_reset friendly_name: Inverter SOC Reset name: inverter_soc_reset type: switch value: false - default: false enable: expert_mode entity: switch.predbat_battery_capacity_nominal friendly_name: Use the Battery Capacity Nominal size name: battery_capacity_nominal type: switch value: false - default: 1.0 entity: input_number.predbat_car_charging_energy_scale friendly_name: Car charging energy scale icon: mdi:multiplication max: 1.0 min: 0 name: car_charging_energy_scale step: 0.01 type: input_number unit: fraction value: 1.0 - default: 6.0 entity: input_number.predbat_car_charging_threshold friendly_name: Car charging threshold icon: mdi:ev-station max: 8.5 min: 4 name: car_charging_threshold step: 0.1 type: input_number unit: kW value: 6.0 - default: 7.4 entity: input_number.predbat_car_charging_rate friendly_name: Car charging rate icon: mdi:ev-station max: 8.5 min: 1 name: car_charging_rate step: 0.1 type: input_number unit: kW value: 7.4 - default: 0.08 entity: input_number.predbat_car_charging_loss friendly_name: Car charging loss icon: mdi:call-split max: 1.0 min: 0 name: car_charging_loss step: 0.01 type: input_number unit: fraction value: 0.08 - default: 0.0 enable: expert_mode entity: input_number.predbat_best_soc_min friendly_name: Best SOC Min icon: mdi:battery-50 max: 30.0 min: 0 name: best_soc_min step: 0.1 type: input_number unit: kWh value: 0.0 - default: 0.0 enable: expert_mode entity: input_number.predbat_best_soc_max friendly_name: Best SOC Max icon: mdi:battery-50 max: 30.0 min: 0 name: best_soc_max step: 0.1 type: input_number unit: kWh value: 0.0 - default: 0.5 entity: input_number.predbat_best_soc_keep friendly_name: Best SOC Keep icon: mdi:battery-50 max: 30.0 min: 0 name: best_soc_keep step: 0.1 type: input_number unit: kWh value: 1.5 - default: 0.0 enable: expert_mode entity: input_number.predbat_metric_min_improvement friendly_name: Metric Min Improvement icon: mdi:currency-usd max: 50.0 min: -50 name: metric_min_improvement step: 0.1 type: input_number unit: p value: 0.0 - default: 0.1 enable: expert_mode entity: input_number.predbat_metric_min_improvement_discharge friendly_name: Metric Min Improvement Discharge icon: mdi:currency-usd max: 50.0 min: -50 name: metric_min_improvement_discharge step: 0.1 type: input_number unit: p value: 0.1 - default: 1.0 enable: expert_mode entity: input_number.predbat_metric_battery_cycle friendly_name: Metric Battery Cycle Cost icon: mdi:currency-usd max: 50.0 min: -50 name: metric_battery_cycle step: 0.1 type: input_number unit: p/kWh value: 0.0 - default: 1.0 enable: expert_mode entity: input_number.predbat_metric_battery_value_scaling friendly_name: Metric Battery Value Scaling icon: mdi:multiplication max: 2.0 min: 0 name: metric_battery_value_scaling step: 0.1 type: input_number unit: fraction value: 1.0 - default: 0.0 enable: expert_mode entity: input_number.predbat_metric_future_rate_offset_import friendly_name: Metric Future Rate Offset Import icon: mdi:currency-usd max: 50.0 min: -50 name: metric_future_rate_offset_import step: 0.1 type: input_number unit: p/kWh value: 0.0 - default: 0.0 enable: expert_mode entity: input_number.predbat_metric_future_rate_offset_export friendly_name: Metric Future Rate Offset Export icon: mdi:currency-usd max: 50.0 min: -50 name: metric_future_rate_offset_export step: 0.1 type: input_number unit: p/kWh value: 0.0 - default: 0.95 enable: expert_mode entity: input_number.predbat_metric_inday_adjust_damping friendly_name: In-day adjustment damping factor icon: mdi:call-split max: 2.0 min: 0.5 name: metric_inday_adjust_damping step: 0.05 type: input_number unit: fraction value: 0.95 - default: true enable: expert_mode entity: switch.predbat_metric_cloud_enable friendly_name: Enable Cloud Model name: metric_cloud_enable type: switch value: true - default: 4.0 entity: input_number.predbat_set_reserve_min friendly_name: Set Reserve Min icon: mdi:percent max: 100 min: 4 name: set_reserve_min reset_inverter: true step: 1 type: input_number unit: '%' value: 4.0 - default: 0.0 enable: expert_mode entity: input_number.predbat_rate_low_threshold friendly_name: Rate Low Threshold icon: mdi:multiplication max: 2.0 min: 0.0 name: rate_low_threshold step: 0.05 type: input_number unit: multiple value: 0.0 - default: 0.0 enable: expert_mode entity: input_number.predbat_rate_high_threshold friendly_name: Rate High Threshold icon: mdi:multiplication max: 2.0 min: 0.0 name: rate_high_threshold step: 0.05 type: input_number unit: multiple value: 0.0 - default: true entity: switch.predbat_car_charging_hold friendly_name: Car charging hold name: car_charging_hold reset_inverter: true type: switch value: true - default: false entity: switch.predbat_car_charging_manual_soc friendly_name: Car charging manual SOC name: car_charging_manual_soc type: switch value: false - default: 0.0 enable: car_charging_manual_soc entity: input_number.predbat_car_charging_manual_soc_kwh friendly_name: Car manual SOC kWh icon: mdi:ev-station max: 100 min: 0 name: car_charging_manual_soc_kwh restore: false step: 0.01 type: input_number unit: kWh value: null - default: true entity: switch.predbat_octopus_intelligent_charging friendly_name: Octopus Intelligent Charging name: octopus_intelligent_charging type: switch value: true - default: false enable: expert_mode entity: switch.predbat_octopus_intelligent_ignore_unplugged friendly_name: Ignore Intelligent slots when car is unplugged name: octopus_intelligent_ignore_unplugged type: switch value: false - default: false entity: switch.predbat_car_charging_plan_smart friendly_name: Car Charging Plan Smart name: car_charging_plan_smart type: switch value: false - default: false entity: switch.predbat_car_charging_from_battery friendly_name: Allow car to charge from battery name: car_charging_from_battery reset_inverter: true type: switch value: false - default: true enable: expert_mode entity: switch.predbat_calculate_discharge_oncharge friendly_name: Calculate Discharge on charge slots name: calculate_discharge_oncharge type: switch value: true - default: false enable: expert_mode entity: switch.predbat_calculate_fast_plan friendly_name: Calculate plan faster (less accurate) name: calculate_fast_plan type: switch value: false - default: false enable: expert_mode entity: switch.predbat_calculate_second_pass friendly_name: Calculate full second pass (slower) name: calculate_second_pass type: switch value: false - default: false enable: expert_mode entity: switch.predbat_calculate_tweak_plan friendly_name: Calculate tweak second pass name: calculate_tweak_plan type: switch value: false - default: true enable: expert_mode entity: switch.predbat_calculate_regions friendly_name: Calculate region optimisation name: calculate_regions type: switch value: true - default: true enable: expert_mode entity: switch.predbat_calculate_inday_adjustment friendly_name: Calculate in-day adjustment name: calculate_inday_adjustment type: switch value: true - default: 10 enable: expert_mode entity: input_number.predbat_calculate_plan_every friendly_name: Calculate plan every N minutes icon: mdi:clock-end max: 60 min: 5 name: calculate_plan_every step: 5 type: input_number unit: kWh value: 10.0 - default: true entity: switch.predbat_combine_charge_slots friendly_name: Combine Charge Slots name: combine_charge_slots type: switch value: false - default: false enable: expert_mode entity: switch.predbat_combine_discharge_slots friendly_name: Combine Discharge Slots name: combine_discharge_slots type: switch value: false - default: true entity: switch.predbat_set_status_notify friendly_name: Set Status Notify name: set_status_notify type: switch value: true - default: false entity: switch.predbat_set_inverter_notify friendly_name: Set Inverter Notify name: set_inverter_notify type: switch value: true - default: true enable: expert_mode entity: switch.predbat_set_charge_freeze friendly_name: Set Charge Freeze name: set_charge_freeze reset_inverter: true type: switch value: true - default: false entity: switch.predbat_set_charge_low_power friendly_name: Set Charge Low Power Mode name: set_charge_low_power reset_inverter: true type: switch value: false - default: true enable: expert_mode entity: switch.predbat_set_reserve_enable friendly_name: Set Reserve Enable name: set_reserve_enable reset_inverter: true type: switch value: false - default: false enable: expert_mode entity: switch.predbat_set_discharge_freeze_only friendly_name: Set Discharge Freeze Only name: set_discharge_freeze_only reset_inverter: true type: switch value: false - default: true entity: switch.predbat_set_discharge_during_charge friendly_name: Set Discharge During Charge name: set_discharge_during_charge type: switch value: true - default: false entity: switch.predbat_set_read_only friendly_name: Read Only mode name: set_read_only reset_inverter_force: true type: switch value: false - default: false entity: switch.predbat_balance_inverters_enable friendly_name: Balance Inverters Enable (Beta) name: balance_inverters_enable type: switch value: false - default: true enable: balance_inverters_enable entity: switch.predbat_balance_inverters_charge friendly_name: Balance Inverters for charging name: balance_inverters_charge type: switch value: null - default: true enable: balance_inverters_enable entity: switch.predbat_balance_inverters_discharge friendly_name: Balance Inverters for discharge name: balance_inverters_discharge type: switch value: null - default: true enable: balance_inverters_enable entity: switch.predbat_balance_inverters_crosscharge friendly_name: Balance Inverters for cross-charging name: balance_inverters_crosscharge type: switch value: null - default: 1.0 enable: balance_inverters_enable entity: input_number.predbat_balance_inverters_threshold_charge friendly_name: Balance Inverters threshold charge icon: mdi:percent max: 20 min: 1 name: balance_inverters_threshold_charge step: 1 type: input_number unit: '%' value: null - default: 1.0 enable: balance_inverters_enable entity: input_number.predbat_balance_inverters_threshold_discharge friendly_name: Balance Inverters threshold discharge icon: mdi:percent max: 20 min: 1 name: balance_inverters_threshold_discharge step: 1 type: input_number unit: '%' value: null - default: false entity: switch.predbat_debug_enable friendly_name: Debug Enable icon: mdi:bug-outline name: debug_enable type: switch value: false - default: 07:00:00 entity: select.predbat_car_charging_plan_time friendly_name: Car charging planned ready time icon: mdi:clock-end name: car_charging_plan_time options: - 00:00:00 - 00:05:00 - 00:10:00 - 00:15:00 - 00:20:00 - 00:25:00 - 00:30:00 - 00:35:00 - 00:40:00 - 00:45:00 - 00:50:00 - 00:55:00 - 01:00:00 - 01:05:00 - 01:10:00 - 01:15:00 - 01:20:00 - 01:25:00 - 01:30:00 - 01:35:00 - 01:40:00 - 01:45:00 - 01:50:00 - 01:55:00 - 02:00:00 - 02:05:00 - 02:10:00 - 02:15:00 - 02:20:00 - 02:25:00 - 02:30:00 - 02:35:00 - 02:40:00 - 02:45:00 - 02:50:00 - 02:55:00 - 03:00:00 - 03:05:00 - 03:10:00 - 03:15:00 - 03:20:00 - 03:25:00 - 03:30:00 - 03:35:00 - 03:40:00 - 03:45:00 - 03:50:00 - 03:55:00 - 04:00:00 - 04:05:00 - 04:10:00 - 04:15:00 - 04:20:00 - 04:25:00 - 04:30:00 - 04:35:00 - 04:40:00 - 04:45:00 - 04:50:00 - 04:55:00 - 05:00:00 - 05:05:00 - 05:10:00 - 05:15:00 - 05:20:00 - 05:25:00 - 05:30:00 - 05:35:00 - 05:40:00 - 05:45:00 - 05:50:00 - 05:55:00 - 06:00:00 - 06:05:00 - 06:10:00 - 06:15:00 - 06:20:00 - 06:25:00 - 06:30:00 - 06:35:00 - 06:40:00 - 06:45:00 - 06:50:00 - 06:55:00 - 07:00:00 - 07:05:00 - 07:10:00 - 07:15:00 - 07:20:00 - 07:25:00 - 07:30:00 - 07:35:00 - 07:40:00 - 07:45:00 - 07:50:00 - 07:55:00 - 08:00:00 - 08:05:00 - 08:10:00 - 08:15:00 - 08:20:00 - 08:25:00 - 08:30:00 - 08:35:00 - 08:40:00 - 08:45:00 - 08:50:00 - 08:55:00 - 09:00:00 - 09:05:00 - 09:10:00 - 09:15:00 - 09:20:00 - 09:25:00 - 09:30:00 - 09:35:00 - 09:40:00 - 09:45:00 - 09:50:00 - 09:55:00 - '10:00:00' - '10:05:00' - '10:10:00' - '10:15:00' - '10:20:00' - '10:25:00' - '10:30:00' - '10:35:00' - '10:40:00' - '10:45:00' - '10:50:00' - '10:55:00' - '11:00:00' - '11:05:00' - '11:10:00' - '11:15:00' - '11:20:00' - '11:25:00' - '11:30:00' - '11:35:00' - '11:40:00' - '11:45:00' - '11:50:00' - '11:55:00' - '12:00:00' - '12:05:00' - '12:10:00' - '12:15:00' - '12:20:00' - '12:25:00' - '12:30:00' - '12:35:00' - '12:40:00' - '12:45:00' - '12:50:00' - '12:55:00' - '13:00:00' - '13:05:00' - '13:10:00' - '13:15:00' - '13:20:00' - '13:25:00' - '13:30:00' - '13:35:00' - '13:40:00' - '13:45:00' - '13:50:00' - '13:55:00' - '14:00:00' - '14:05:00' - '14:10:00' - '14:15:00' - '14:20:00' - '14:25:00' - '14:30:00' - '14:35:00' - '14:40:00' - '14:45:00' - '14:50:00' - '14:55:00' - '15:00:00' - '15:05:00' - '15:10:00' - '15:15:00' - '15:20:00' - '15:25:00' - '15:30:00' - '15:35:00' - '15:40:00' - '15:45:00' - '15:50:00' - '15:55:00' - '16:00:00' - '16:05:00' - '16:10:00' - '16:15:00' - '16:20:00' - '16:25:00' - '16:30:00' - '16:35:00' - '16:40:00' - '16:45:00' - '16:50:00' - '16:55:00' - '17:00:00' - '17:05:00' - '17:10:00' - '17:15:00' - '17:20:00' - '17:25:00' - '17:30:00' - '17:35:00' - '17:40:00' - '17:45:00' - '17:50:00' - '17:55:00' - '18:00:00' - '18:05:00' - '18:10:00' - '18:15:00' - '18:20:00' - '18:25:00' - '18:30:00' - '18:35:00' - '18:40:00' - '18:45:00' - '18:50:00' - '18:55:00' - '19:00:00' - '19:05:00' - '19:10:00' - '19:15:00' - '19:20:00' - '19:25:00' - '19:30:00' - '19:35:00' - '19:40:00' - '19:45:00' - '19:50:00' - '19:55:00' - '20:00:00' - '20:05:00' - '20:10:00' - '20:15:00' - '20:20:00' - '20:25:00' - '20:30:00' - '20:35:00' - '20:40:00' - '20:45:00' - '20:50:00' - '20:55:00' - '21:00:00' - '21:05:00' - '21:10:00' - '21:15:00' - '21:20:00' - '21:25:00' - '21:30:00' - '21:35:00' - '21:40:00' - '21:45:00' - '21:50:00' - '21:55:00' - '22:00:00' - '22:05:00' - '22:10:00' - '22:15:00' - '22:20:00' - '22:25:00' - '22:30:00' - '22:35:00' - '22:40:00' - '22:45:00' - '22:50:00' - '22:55:00' - '23:00:00' - '23:05:00' - '23:10:00' - '23:15:00' - '23:20:00' - '23:25:00' - '23:30:00' - '23:35:00' - '23:40:00' - '23:45:00' - '23:50:00' - '23:55:00' type: select value: 07:00:00 - default: Control charge & discharge entity: select.predbat_mode friendly_name: Predbat mode icon: mdi:state-machine name: mode options: - Monitor - Control SOC only - Control charge - Control charge & discharge reset_inverter_force: true type: select value: Control charge & discharge - default: null entity: select.predbat_update friendly_name: Predbat update icon: mdi:state-machine name: update options: - main - v7.14.45 Fix save/restore to not restore counters, fix bug in monitor mode where reserve was reset - v7.14.44 Fix issue where inverter skew is falsely reported - v7.14.43 Minor bug fix for save/restore feature - 'v7.14.42 Save/Restore settings selector function ' - v7.14.41 Account for time taken to calculate plan but reading inverter status again afterwards - v7.14.40 Change default metric battery cycle to 1.0p/kWh - v7.14.39 Minor fixes, new Predbat restore automation - v7.14.38 Additional fix for missing load scenario - v7.14.37 Minor tweak to allow new installs not to get zero load restore: false type: select value: v7.14.45 Fix save/restore to not restore counters, fix bug in monitor mode where reserve was reset - default: '' entity: select.predbat_saverestore friendly_name: Save/restore settings icon: mdi:state-machine name: saverestore options: - save current - restore default - 24_01_16_19_50_00.yaml restore: false type: select value: null - default: false entity: switch.predbat_auto_update friendly_name: Predbat automatic update enable name: auto_update type: switch value: false - default: true enable: expert_mode entity: switch.predbat_load_filter_modal friendly_name: Apply modal filter historical load name: load_filter_modal type: switch value: false - default: false entity: switch.predbat_iboost_enable friendly_name: IBoost enable name: iboost_enable type: switch value: false - default: true entity: switch.predbat_iboost_solar friendly_name: IBoost on solar power name: iboost_solar type: switch value: true - default: false entity: switch.predbat_iboost_gas friendly_name: IBoost when cheaper than gas name: iboost_gas type: switch value: false - default: false entity: switch.predbat_iboost_charging friendly_name: IBoost when battery charging name: iboost_charging type: switch value: false - default: 1.0 enable: iboost_enable entity: input_number.predbat_iboost_gas_scale friendly_name: IBoost gas price scaling icon: mdi:multiplication max: 2.0 min: 0 name: iboost_gas_scale step: 0.1 type: input_number unit: multiple value: null - default: 3.0 enable: iboost_enable entity: input_number.predbat_iboost_max_energy friendly_name: IBoost max energy max: 5 min: 0 name: iboost_max_energy step: 0.1 type: input_number unit: kWh value: null - default: 0.0 enable: iboost_enable entity: input_number.predbat_iboost_today friendly_name: IBoost today max: 5 min: 0 name: iboost_today step: 0.1 type: input_number unit: kWh value: null - default: 2400 enable: iboost_enable entity: input_number.predbat_iboost_max_power friendly_name: IBoost max power max: 3500 min: 0 name: iboost_max_power restore: false step: 100 type: input_number unit: w value: null - default: 500 enable: iboost_enable entity: input_number.predbat_iboost_min_power friendly_name: IBoost min power max: 3500 min: 0 name: iboost_min_power step: 100 type: input_number unit: w value: null - default: 0.0 enable: iboost_enable entity: input_number.predbat_iboost_min_soc friendly_name: IBoost min soc icon: mdi:percent max: 100 min: 0 name: iboost_min_soc step: 5 type: input_number unit: '%' value: null - default: 0 entity: input_number.predbat_holiday_days_left friendly_name: Holiday days left icon: mdi:clock-end max: 28 min: 0 name: holiday_days_left restore: false step: 1 type: input_number unit: days value: 0.0 - default: 24 enable: expert_mode entity: input_number.predbat_forecast_plan_hours friendly_name: Plan forecast hours icon: mdi:clock-end max: 96 min: 8 name: forecast_plan_hours step: 1 type: input_number unit: hours value: 24.0 - default: false enable: expert_mode entity: switch.predbat_plan_debug friendly_name: HTML Plan Debug name: plan_debug type: switch value: true

theblackcat9 commented 4 months ago

I'm on Octopus Flux tariff, Predbat is planning to charge my battery up to 96% tonight during the off-peak period at a cost including losses of 19.13p/kWh but this means with solar charging, the battery gets to 100% at 12:30/13:00 and starts to export to the grid during the day export rate of 14.86p/kWh including losses. I would have thought it was more profitable to charge the battery less overnight and let the solar charge the battery during the day reaching 100% at 4pm, the start of the peak export period and export the same amount during this peak period. image image I've got the following parameters set:- Battery loss charge 0.05 Battery loss discharge 0.05 Inverter loss 0.05 Best SOC keep 2.7 Best SOC min 0 Metric Battery cycle 0.5 Set Charge freeze off predbat_20240225.log predbat_debug.txt

springfall2008 commented 4 months ago

Can you show the battery curve with the 10% curve also?

I think the reasoning is that you want to maximise export at 24.97p including losses during that peak period. So the remaining solar (less your load) exported would be something like:

0.59 + 0.61 + 0.67 + 0.67 + 0.59 + 0.55 + 0.53 = 4.21

But if you account for the PV10% scenario I suspect most that margin disappears, hence the question on how that chart looks? You could also try pv10_weight of 0 to confirm my theory

PianSom commented 4 months ago

There is a nice solar day forecast for Wednesday. Assuming that doesn't change (!) I will test then and revert.

theblackcat9 commented 4 months ago

Currently pv_metric10_weight is set to 0.15 and the Predbat plan for tonight is to charge to 100% which means with Solar, I start exporting to the grid at 12:00 tomorrow.

If I change pv_metric10_weight to 0, the plan changes to charge to 80% tonight which means with solar, the battery gets to 100% about 16:00 and starts exporting in the peak period, which is what I was after.

Sorry, I'm still quite new to Predbat, when you say "Can you show the battery curve with the 10% curve also?" what exactly are you after?

PianSom commented 4 months ago

Oops @springfall2008 - were you talking @theblackcat9 or me?

springfall2008 commented 4 months ago

Currently pv_metric10_weight is set to 0.15 and the Predbat plan for tonight is to charge to 100% which means with Solar, I start exporting to the grid at 12:00 tomorrow.

If I change pv_metric10_weight to 0, the plan changes to charge to 80% tonight which means with solar, the battery gets to 100% about 16:00 and starts exporting in the peak period, which is what I was after.

Sorry, I'm still quite new to Predbat, when you say "Can you show the battery curve with the 10% curve also?" what exactly are you after?

So two things here:

  1. The pv10 weighting is basically saying how probable you want Predbat to consider the more worst case scenario of lower PV generation (solcast 10%) and higher house load (load_scaling10). If you set this to say 0.1 then you are saying 10% or 1:10 probably. This means Predbat will optimise cost to 90% of the normal scenario and 10% of the worst case. If you set this to 0 your plan will be "cheaper" on paper but may turn out to be more expensive in reality if things don't go to plan

  2. I was meaning the apex chart that shows the battery levels, it shows the normal and the 10% scenario side by side

springfall2008 commented 4 months ago

Oops @springfall2008 - were you talking @theblackcat9 or me?

Sorry I think i replied to black cat but the same is true for your 1.

For 2. Metric battery cycle will impact this, but change it gradually eg try in 0.5 increments

chrsphr commented 4 months ago

I'm also experiencing behaviour that feels suboptimal.

My desired behaviour would be to maximise solar self consumption, especially given the export rates during the day are quite poor, but on these sunnier days I've been exporting a kilowatt hour or so of solar when the battery has been charged to 100%

Is there a parameter I am not quite setting correctly?

image

springfall2008 commented 4 months ago

I'm also experiencing behaviour that feels suboptimal.

  • 2kwp array

  • 5kwh battery

  • Agile tariff import/export

  • I've fiddled with setting metric 10 to 0, 0.1, 0.2 and it didn't seem to make much difference.

My desired behaviour would be to maximise solar self consumption, especially given the export rates during the day are quite poor, but on these sunnier days I've been exporting a kilowatt hour or so of solar when the battery has been charged to 100%

Is there a parameter I am not quite setting correctly?

image

To me this plan seems good, maximum self consumption and take the extra from the grid when it's really cheap to keep the battery for the peak period later on?!

chrsphr commented 4 months ago

To me this plan seems good, maximum self consumption and take the extra from the grid when it's really cheap to keep the battery for the peak period later on?!

But I'm not maximally self consuming - because the battery is at 100%, my panels are intermittently exceeding the consumption of the house, and exporting

image

theblackcat9 commented 4 months ago

Sorry for the delay in adding the charts, I've been waiting for a forecast with more solar as this shows a bigger difference. With pv_metric10_weight set to 0.15, the overnight charge is to 100%, this means the battery gets back to 100% with solar at 12:00 and starts exporting to the grid:- image

image

With pv_metric10_weight set to 0, the overnight charge is to 71%, this means the battery gets back to 100% with solar at 16:00 and then starts exporting to the grid:- image image