-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Peak Shaving: Feature Enhancement
Context
This issue covers the implementation of advanced peak shaving strategies, building on the discussion from Issue #39 regarding battery and grid limitations. This will use the function "limited battery charging" (see PR #260 ), which allows granular management of battery SoC and grid feed-in.
Options for Peak Shaving
In the context of dynamic grid pricing and battery management, we need to discuss and implement two main peak shaving options:
-
Avoid Feed-in Below Price Threshold:
- Restrict grid feed-in if the net market price falls below a set threshold (e.g., below zero).
- Battery charging and discharging routines should be scheduled or limited based on expected market price events.
-
Avoid Random Battery Overshoot, Incorporating Expected Events:
- For scenarios where a specific event is expected (e.g., an EV car returns home, requiring a full battery at a known time), allow battery to fill up and accept grid feed-in up to a certain SoC.
- Calculate the expected time and quantity for battery charge, holding enough energy for forecasted needs, and then allow overflow (feed-in) only after reservation is met.
Implementation Notes
- When surplus criteria are met, fill battery up to target SoC (including any reserved energy for later events, e.g., allow_discharge state).
- Calculate where max_soc will be reached, limiting battery charge/discharge accordingly.
- Use functions such as
set_max_charging_from_grid_limit,set_always_allow_discharge_limit, and discharge block controls from existing PR code. - Integrate logic from
DefaultLogic.calculate_inverter_mode, considering forecasted price events, battery reserves, and grid limitations.
Code Snippet Reference
- Main configuration for battery management is in
src/batcontrol/core.py:
set_max_charging_from_grid_limit
set_always_allow_discharge_limit
DefaultLogic.calculate_inverter_mode
Related:
- Parent issue: Berücksichtigung der Leistungslimitierungen (Einspeiselimit, WR-Überbelegung, bzw. Batterieleistung)
Please elaborate and select the preferred option or propose enhancements for the peak shaving strategy. Feedback or further requirements welcome!
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request