Skip to content

Commit 1de49ae

Browse files
Merge pull request #97 from davidusb-geek/davidusb-geek/dev/preparing_new_version
Davidusb geek/dev/preparing new version
2 parents 176e978 + dc461d0 commit 1de49ae

File tree

6 files changed

+28
-8
lines changed

6 files changed

+28
-8
lines changed

emhass/CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,14 @@
11
# Changelog
22

3+
## 0.10.2 - 2024-07-06
4+
### Improvement
5+
- Weather forecast caching and Solcast method fix by @GeoDerp
6+
- Added a new configuration parameter to control wether we compute PV curtailment or not
7+
- Added hybrid inverter to data publish
8+
- It is now possible to pass these battery parameters at runtime: `SOCmin`, `SOCmax`, `Pd_max` and `Pc_max`
9+
### Fix
10+
- Fixed problem with negative PV forecast values in optimization.py, by @GeoDerp
11+
312
## 0.10.1 - 2024-06-03
413
### Fix
514
- Fixed PV curtailment maximum possible value constraint

emhass/DOCS.md

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -96,10 +96,6 @@ The following parameters are associated with the technical specifications of the
9696

9797
We will define the technical parameters of the PV installation. For the modeling task we rely on the PVLib Python package. For more information see: [https://pvlib-python.readthedocs.io/en/stable/](https://pvlib-python.readthedocs.io/en/stable/)
9898

99-
The complete list of supported modules can be found here: [https://github.com/davidusb-geek/emhass-add-on/files/9234460/sam-library-cec-modules-2019-03-05.csv](https://github.com/davidusb-geek/emhass-add-on/files/9234460/sam-library-cec-modules-2019-03-05.csv)
100-
101-
And the list of inverter models can be found here: [https://github.com/davidusb-geek/emhass-add-on/files/9532724/sam-library-cec-inverters-2019-03-05.csv](https://github.com/davidusb-geek/emhass-add-on/files/9532724/sam-library-cec-inverters-2019-03-05.csv)
102-
10399
This webapp can help you find your correct module/inverter key: [https://emhass-pvlib-database.streamlit.app/](https://emhass-pvlib-database.streamlit.app/)
104100

105101
If your specific model is not found in these lists then solution (1) is to pick another model as close as possible as yours in terms of the nominal power.
@@ -113,6 +109,7 @@ Solution (2) would be to use SolCast and pass that data directly to emhass as a
113109
- modules_per_string: The number of modules per string. Defaults to 16. This parameter can be a list of integers to enable the simulation of mixed orientation systems, for example one east-facing array (azimuth=90) and one west-facing array (azimuth=270).
114110
- strings_per_inverter: The number of used strings per inverter. Defaults to 1. This parameter can be a list of integers to enable the simulation of mixed orientation systems, for example one east-facing array (azimuth=90) and one west-facing array (azimuth=270).
115111
- inverter_is_hybrid: Set to True to consider that the installation inverter is hybrid for PV and batteries. (Default False).
112+
- compute_curtailment: Set to True to compute a PV curtailment variable. (Default False).
116113
- set_use_battery: Set to True if we should consider an energy storage device such as a Li-Ion battery. Defaults to False.
117114

118115
If the `set_use_battery` is set to `true`, then the following parameters need to be defined properly. If you don't have a battery then just leave the default values, they will not be used.

emhass/config.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: EMHASS
22
description: Energy Management for Home Assistant
33
url: https://github.com/davidusb-geek/emhass
4-
version: 0.10.1
4+
version: 0.10.2
55
slug: emhass
66
arch:
77
- aarch64
@@ -65,6 +65,9 @@ options:
6565
list_set_deferrable_load_single_constant:
6666
- set_deferrable_load_single_constant: false
6767
- set_deferrable_load_single_constant: false
68+
list_set_deferrable_startup_penalty:
69+
- set_deferrable_startup_penalty: 0.0
70+
- set_deferrable_startup_penalty: 0.0
6871
load_peak_hours_cost: 0.1907
6972
load_offpeak_hours_cost: 0.1419
7073
photovoltaic_production_sell_price: 0.065
@@ -81,6 +84,7 @@ options:
8184
list_strings_per_inverter:
8285
- strings_per_inverter: 1
8386
inverter_is_hybrid: false
87+
compute_curtailment: false
8488
set_use_battery: false
8589
battery_nominal_energy_capacity: 5000
8690
schema:
@@ -132,6 +136,8 @@ schema:
132136
- treat_deferrable_load_as_semi_cont: "bool?"
133137
list_set_deferrable_load_single_constant:
134138
- set_deferrable_load_single_constant: "bool?"
139+
list_set_deferrable_startup_penalty:
140+
- set_deferrable_startup_penalty: "float?"
135141
load_cost_forecast_method: "list(hp_hc_periods|csv)?"
136142
production_price_forecast_method: "list(constant|csv)?" #optional
137143
load_peak_hours_cost: "float(0,)?"
@@ -150,6 +156,7 @@ schema:
150156
list_strings_per_inverter:
151157
- strings_per_inverter: "int(0,)?"
152158
inverter_is_hybrid: "bool?"
159+
compute_curtailment: "bool?"
153160
set_use_battery: "bool?"
154161
set_battery_dynamic: "bool?" #optional
155162
battery_dynamic_max: "float(0.0,1.0)?" #optional

emhass/config_emhass.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,9 @@ optim_conf:
3737
set_def_constant: # set as a constant fixed value variable with just one startup for each 24h
3838
- False
3939
- False
40+
def_start_penalty: # Set a penalty for each start up of a deferrable load
41+
- 0.0
42+
- 0.0
4043
weather_forecast_method: 'scrapper' # options are 'scrapper', 'csv', 'list', 'solcast' and 'solar.forecast'
4144
load_forecast_method: 'naive' # options are 'csv' to load a custom load forecast from a CSV file or 'naive' for a persistance model
4245
load_cost_forecast_method: 'hp_hc_periods' # options are 'hp_hc_periods' for peak and non-peak hours contracts and 'csv' to load custom cost from CSV file
@@ -78,6 +81,7 @@ plant_conf:
7881
strings_per_inverter: # The number of used strings per inverter
7982
- 1
8083
inverter_is_hybrid: False # Set if it is a hybrid inverter (PV+batteries) or not
84+
compute_curtailment: False # Compute a PV curtailment variable or not
8185
Pd_max: 1000 # If your system has a battery (set_use_battery=True), the maximum discharge power in Watts
8286
Pc_max: 1000 # If your system has a battery (set_use_battery=True), the maximum charge power in Watts
8387
eta_disch: 0.95 # If your system has a battery (set_use_battery=True), the discharge efficiency

emhass/requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@ h5py==3.11.0
1010
pulp>=2.4
1111
pyyaml>=5.4.1
1212
tables<=3.9.1
13-
skforecast==0.12.0
13+
skforecast==0.12.1
1414
# web server packages
1515
flask>=2.0.3
1616
waitress>=2.1.1
1717
plotly>=5.6.0
1818
#EMHASS
19-
emhass==0.10.1
19+
emhass==0.10.2
2020
#git+https://github.com/davidusb-geek/emhass

emhass/translations/en.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,10 @@ configuration:
163163
description: (Default 1). This parameter can be a list of integers to enable the simulation of mixed orientation systems, for example one east-facing array and one west-facing array.
164164
inverter_is_hybrid:
165165
name: inverter_is_hybrid, Set to True if it is a hybrid inverter (PV+batteries) or not
166-
description: Set to True to consider that the installation inverter is hybrid for PV and batteries. (Default False).
166+
description: A special parameter to consider that the installation inverter is hybrid for PV and batteries. (Default False).
167+
compute_curtailment:
168+
name: compute_curtailment, Set to True to compute a PV curtailment variable.
169+
description: A special parameter to define if we will compute a PV curtailment variable. (Default False).
167170
set_use_battery:
168171
name: set_use_battery, Set if a battery is present
169172
description: Set to True if we should consider an energy storage device such as a Li-Ion battery. (Default False).

0 commit comments

Comments
 (0)