feature: add usage forecast#906
Conversation
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
* refactor: fix spelling Signed-off-by: F.N. Claessen <felix@seita.nl> * style: missing type annotation Signed-off-by: F.N. Claessen <felix@seita.nl> * refactor: method and variable renaming Signed-off-by: F.N. Claessen <felix@seita.nl> * refactor: add test case explanations Signed-off-by: F.N. Claessen <felix@seita.nl> --------- Signed-off-by: F.N. Claessen <felix@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
* refactor: fix spelling Signed-off-by: F.N. Claessen <felix@seita.nl> * style: missing type annotation Signed-off-by: F.N. Claessen <felix@seita.nl> * refactor: method and variable renaming Signed-off-by: F.N. Claessen <felix@seita.nl> * refactor: add test case explanations Signed-off-by: F.N. Claessen <felix@seita.nl> * fix: separate logic for falling back on a default attribute and applying a maximum capacity limit Signed-off-by: F.N. Claessen <felix@seita.nl> * fix: fill gaps in capacity sensor data using the max_value rather than with the fallback Signed-off-by: F.N. Claessen <felix@seita.nl> * fix: type annotation (see https://docs.python.org/3/library/typing.html#typing.Optional) Signed-off-by: F.N. Claessen <felix@seita.nl> * refactor: clearly separate steps of falling back and performing a nanmin Signed-off-by: F.N. Claessen <felix@seita.nl> * refactor: simplify and have get_quantity_from_attribute return a Quantity, as its name already suggested Signed-off-by: F.N. Claessen <felix@seita.nl> * refactor: switch argument order Signed-off-by: F.N. Claessen <felix@seita.nl> * refactor: update docstring Signed-off-by: F.N. Claessen <felix@seita.nl> * style: flake8 Signed-off-by: F.N. Claessen <felix@seita.nl> --------- Signed-off-by: F.N. Claessen <felix@seita.nl>
Flix6x
left a comment
There was a problem hiding this comment.
Please remind me: do we still have an unresolved issue in terms of having a test pass that we expected to fail (because of an unsustainable usage forecast)?
|
Will you tackle the todos in this PR or as a follow-up? |
Yes, other than adding a resampling factor for the sensor, the current test should fail as we are providing the value power_capacity as the energy value to each 15min interval.. |
…ery-power-capacity-as-sensor Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
… feature/planning/usage-forecast
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Flix6x
left a comment
There was a problem hiding this comment.
Awesome. Now it clicks. I only request documentation edits, including the changelog entry of course.
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Flix6x
left a comment
There was a problem hiding this comment.
Still missing the changelog entry.
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Signed-off-by: Victor <victor@seita.nl>
Fix typo (*los componentes*) and swap out some changelog entries between Features and Infrastructure. Signed-off-by: Felix Claessen <30658763+Flix6x@users.noreply.github.com>
|
Black is failing after your last merge. Feel free to merge after resolving. |
Signed-off-by: Victor Garcia Reolid <victor@seita.nl>
Description
The usage forecast is passed as a new column of the device constraints and later incorporated as a Pyomo parameter. This parameter is used in the
device_boundsconstraint as an extra component. Multiple components can be defined in theflex-modelusing the QuantityOrSensor syntax:{ "usage-forecast" : [ {"sensor" : 1}, {"sensor" : 2} ] }{ "usage-forecast" : [ "10 kWh", "40 kWh", ] }Further Improvements
capacity_in_mw. For example, using a capacity of 2MW, allowed me to charge 2MWh every 15min block while it should be 500kWh.TODOs
consumption_is_positive. By default, the usage forecast sign interpretation is (+) increase stock level (-) decrease stock level.Related Items