emhass 0.13.0__py3-none-any.whl → 0.13.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,71 @@
1
+ config_categorie,legacy_parameter_name,parameter,list_name
2
+ retrieve_hass_conf,freq,optimization_time_step
3
+ retrieve_hass_conf,days_to_retrieve,historic_days_to_retrieve
4
+ retrieve_hass_conf,var_PV,sensor_power_photovoltaics
5
+ retrieve_hass_conf,var_PV_forecast,sensor_power_photovoltaics_forecast
6
+ retrieve_hass_conf,var_load,sensor_power_load_no_var_loads
7
+ retrieve_hass_conf,load_negative,load_negative
8
+ retrieve_hass_conf,set_zero_min,set_zero_min
9
+ retrieve_hass_conf,var_replace_zero,sensor_replace_zero,list_sensor_replace_zero
10
+ retrieve_hass_conf,var_interp,sensor_linear_interp,list_sensor_linear_interp
11
+ retrieve_hass_conf,method_ts_round,method_ts_round
12
+ retrieve_hass_conf,continual_publish,continual_publish
13
+ params_secrets,time_zone,time_zone
14
+ params_secrets,lat,Latitude
15
+ params_secrets,lon,Longitude
16
+ params_secrets,alt,Altitude
17
+ optim_conf,costfun,costfun
18
+ optim_conf,logging_level,logging_level
19
+ optim_conf,set_use_pv,set_use_pv
20
+ optim_conf,set_use_adjusted_pv,set_use_adjusted_pv
21
+ optim_conf,adjusted_pv_regression_model,adjusted_pv_regression_model
22
+ optim_conf,adjusted_pv_solar_elevation_threshold,adjusted_pv_solar_elevation_threshold
23
+ optim_conf,set_use_battery,set_use_battery
24
+ optim_conf,num_def_loads,number_of_deferrable_loads
25
+ optim_conf,P_deferrable_nom,nominal_power_of_deferrable_loads,list_nominal_power_of_deferrable_loads
26
+ optim_conf,minimum_power_of_deferrable_loads,minimum_power_of_deferrable_loads
27
+ optim_conf,def_total_hours,operating_hours_of_each_deferrable_load,list_operating_hours_of_each_deferrable_load
28
+ optim_conf,treat_def_as_semi_cont,treat_deferrable_load_as_semi_cont,list_treat_deferrable_load_as_semi_cont
29
+ optim_conf,set_def_constant,set_deferrable_load_single_constant,list_set_deferrable_load_single_constant
30
+ optim_conf,def_start_penalty,set_deferrable_startup_penalty,list_set_deferrable_startup_penalty
31
+ optim_conf,delta_forecast,delta_forecast_daily
32
+ optim_conf,load_forecast_method,load_forecast_method
33
+ optim_conf,load_cost_forecast_method,load_cost_forecast_method
34
+ optim_conf,load_cost_hp,load_peak_hours_cost
35
+ optim_conf,load_cost_hc,load_offpeak_hours_cost
36
+ optim_conf,prod_price_forecast_method,production_price_forecast_method
37
+ optim_conf,prod_sell_price,photovoltaic_production_sell_price
38
+ optim_conf,set_total_pv_sell,set_total_pv_sell
39
+ optim_conf,lp_solver,lp_solver
40
+ optim_conf,lp_solver_path,lp_solver_path
41
+ optim_conf,lp_solver_timeout,lp_solver_timeout
42
+ optim_conf,set_nocharge_from_grid,set_nocharge_from_grid
43
+ optim_conf,set_nodischarge_to_grid,set_nodischarge_to_grid
44
+ optim_conf,set_battery_dynamic,set_battery_dynamic
45
+ optim_conf,battery_dynamic_max,battery_dynamic_max
46
+ optim_conf,battery_dynamic_min,battery_dynamic_min
47
+ optim_conf,weight_battery_discharge,weight_battery_discharge
48
+ optim_conf,weight_battery_charge,weight_battery_charge
49
+ optim_conf,weather_forecast_method,weather_forecast_method
50
+ optim_conf,open_meteo_cache_max_age,open_meteo_cache_max_age
51
+ optim_conf,def_start_timestep,start_timesteps_of_each_deferrable_load,list_start_timesteps_of_each_deferrable_load
52
+ optim_conf,def_end_timestep,end_timesteps_of_each_deferrable_load,list_end_timesteps_of_each_deferrable_load
53
+ optim_conf,list_hp_periods,load_peak_hour_periods
54
+ plant_conf,P_from_grid_max,maximum_power_from_grid
55
+ plant_conf,P_to_grid_max,maximum_power_to_grid
56
+ plant_conf,module_model,pv_module_model,list_pv_module_model
57
+ plant_conf,inverter_model,pv_inverter_model,list_pv_inverter_model
58
+ plant_conf,surface_tilt,surface_tilt,list_surface_tilt
59
+ plant_conf,surface_azimuth,surface_azimuth,list_surface_azimuth
60
+ plant_conf,modules_per_string,modules_per_string,list_modules_per_string
61
+ plant_conf,strings_per_inverter,strings_per_inverter,list_strings_per_inverter
62
+ plant_conf,inverter_is_hybrid,inverter_is_hybrid
63
+ plant_conf,compute_curtailment,compute_curtailment
64
+ plant_conf,Pd_max,battery_discharge_power_max
65
+ plant_conf,Pc_max,battery_charge_power_max
66
+ plant_conf,eta_disch,battery_discharge_efficiency
67
+ plant_conf,eta_ch,battery_charge_efficiency
68
+ plant_conf,Enom,battery_nominal_energy_capacity
69
+ plant_conf,SOCmin,battery_minimum_state_of_charge
70
+ plant_conf,SOCmax,battery_maximum_state_of_charge
71
+ plant_conf,SOCtarget,battery_target_state_of_charge
Binary file
Binary file
@@ -0,0 +1,128 @@
1
+ {
2
+ "logging_level": "INFO",
3
+ "costfun": "profit",
4
+ "optimization_time_step": 30,
5
+ "historic_days_to_retrieve": 9,
6
+ "method_ts_round": "nearest",
7
+ "continual_publish": false,
8
+ "data_path": "default",
9
+ "set_total_pv_sell": false,
10
+ "lp_solver": "default",
11
+ "lp_solver_path": "empty",
12
+ "lp_solver_timeout": 45,
13
+ "set_nocharge_from_grid": false,
14
+ "set_nodischarge_to_grid": true,
15
+ "set_battery_dynamic": false,
16
+ "battery_dynamic_max": 0.9,
17
+ "battery_dynamic_min": -0.9,
18
+ "weight_battery_discharge": 0.0,
19
+ "weight_battery_charge": 0.0,
20
+ "sensor_power_photovoltaics": "sensor.power_photovoltaics",
21
+ "sensor_power_photovoltaics_forecast": "sensor.p_pv_forecast",
22
+ "sensor_power_load_no_var_loads": "sensor.power_load_no_var_loads",
23
+ "sensor_replace_zero": [
24
+ "sensor.power_photovoltaics",
25
+ "sensor.p_pv_forecast"
26
+ ],
27
+ "sensor_linear_interp": [
28
+ "sensor.power_photovoltaics",
29
+ "sensor.power_load_no_var_loads"
30
+ ],
31
+ "load_negative": false,
32
+ "set_zero_min": true,
33
+ "number_of_deferrable_loads": 2,
34
+ "nominal_power_of_deferrable_loads": [
35
+ 3000.0,
36
+ 750.0
37
+ ],
38
+ "minimum_power_of_deferrable_loads": [
39
+ 0.0,
40
+ 0.0
41
+ ],
42
+ "operating_hours_of_each_deferrable_load": [
43
+ 4,
44
+ 0
45
+ ],
46
+ "weather_forecast_method": "open-meteo",
47
+ "open_meteo_cache_max_age": 30,
48
+ "load_forecast_method": "naive",
49
+ "delta_forecast_daily": 1,
50
+ "load_cost_forecast_method": "hp_hc_periods",
51
+ "start_timesteps_of_each_deferrable_load": [
52
+ 0,
53
+ 0
54
+ ],
55
+ "end_timesteps_of_each_deferrable_load": [
56
+ 0,
57
+ 0
58
+ ],
59
+ "load_peak_hour_periods": {
60
+ "period_hp_1": [
61
+ {
62
+ "start": "02:54"
63
+ },
64
+ {
65
+ "end": "15:24"
66
+ }
67
+ ],
68
+ "period_hp_2": [
69
+ {
70
+ "start": "17:24"
71
+ },
72
+ {
73
+ "end": "20:24"
74
+ }
75
+ ]
76
+ },
77
+ "treat_deferrable_load_as_semi_cont": [
78
+ true,
79
+ true
80
+ ],
81
+ "set_deferrable_load_single_constant": [
82
+ false,
83
+ false
84
+ ],
85
+ "set_deferrable_startup_penalty": [
86
+ 0.0,
87
+ 0.0
88
+ ],
89
+ "load_peak_hours_cost": 0.1907,
90
+ "load_offpeak_hours_cost": 0.1419,
91
+ "production_price_forecast_method": "constant",
92
+ "photovoltaic_production_sell_price": 0.1419,
93
+ "maximum_power_from_grid": 9000,
94
+ "maximum_power_to_grid": 9000,
95
+ "set_use_pv": false,
96
+ "set_use_adjusted_pv": false,
97
+ "adjusted_pv_regression_model": "LassoRegression",
98
+ "adjusted_pv_solar_elevation_threshold": 10,
99
+ "pv_module_model": [
100
+ "CSUN_Eurasia_Energy_Systems_Industry_and_Trade_CSUN295_60M"
101
+ ],
102
+ "pv_inverter_model": [
103
+ "Fronius_International_GmbH__Fronius_Primo_5_0_1_208_240__240V_"
104
+ ],
105
+ "surface_tilt": [
106
+ 30
107
+ ],
108
+ "surface_azimuth": [
109
+ 205
110
+ ],
111
+ "modules_per_string": [
112
+ 16
113
+ ],
114
+ "strings_per_inverter": [
115
+ 1
116
+ ],
117
+ "inverter_is_hybrid": false,
118
+ "compute_curtailment": false,
119
+ "set_use_battery": false,
120
+ "battery_discharge_power_max": 1000,
121
+ "battery_charge_power_max": 1000,
122
+ "battery_discharge_efficiency": 0.95,
123
+ "battery_charge_efficiency": 0.95,
124
+ "battery_nominal_energy_capacity": 5000,
125
+ "battery_minimum_state_of_charge": 0.3,
126
+ "battery_maximum_state_of_charge": 0.9,
127
+ "battery_target_state_of_charge": 0.6
128
+ }
Binary file
@@ -0,0 +1,36 @@
1
+ <!-- advance div, dynamically appended inside of index.html -->
2
+ <!-- action button elements section -->
3
+ <div class="loading-div" id="advance">
4
+ <h4>Use the buttons below to manually launch different optimization tasks</h4>
5
+ <div id=loader></div> <!-- status dynamic element -->
6
+ </div>
7
+ <button type="button" id="perfect-optim" class="button button1">Perfect Optimization</button>
8
+ <button type="button" id="dayahead-optim" class="button button2">Day-ahead Optimization</button>
9
+ <button type="button" id="naive-mpc-optim" class="button button3">MPC Optimization</button>
10
+ <!--ml toggled div button -->
11
+ <h4>Use the button below to publish the optimized variables at the current timestamp</h4>
12
+ <button type="button" id="publish-data" class="button button1">Publish Optimization Results</button>
13
+ <h4>Use the buttons below to fit, predict and tune a machine learning model for testing</h4>
14
+ <button type="button" id="forecast-model-fit" class="button button1">ML forecast model fit</button>
15
+ <button type="button" id="forecast-model-predict" class="button button2">ML forecast model
16
+ predict</button>
17
+ <button type="button" id="forecast-model-tune" class="button button3">ML forecast model tune</button>
18
+ </br></br>
19
+ <button type="button" id="regressor-model-fit" class="button button1">ML regressor model fit</button>
20
+ <button type="button" id="regressor-model-predict" class="button button2">ML regressor model predict</button>
21
+ <!-- -->
22
+ <!--dynamic runtime parameter input (list and box) elements section -->
23
+ <h4>Input Runtime Parameters</h4>
24
+ <div class="input-button-container">
25
+ <div class="input-buttons">
26
+ <button type="button" id="input-plus">+</button>
27
+ <button type="button" id="input-minus">-</button>
28
+ <select name="Select" id="input-select">
29
+ <option value="List" selected>List</option>
30
+ <option value="Box">Box</option>
31
+ </select>
32
+ <button type="button" id="input-clear">Clear</button>
33
+ </div>
34
+ </div>
35
+ <div id="input-container"> <!-- (Box/List) dynamic input elements will be added here -->
36
+ </div>
@@ -0,0 +1,14 @@
1
+ <!-- basic div, dynamically appended inside of index.html -->
2
+ <!-- action button elements section -->
3
+ <div class="loading-div" id="basic">
4
+ <h4>Use the button below to manually launch optimization task</h4>
5
+ <div id=loader></div> <!-- status dynamic element -->
6
+ </div>
7
+ <button type="button" id="dayahead-optim-basic" class="button button1">Day-ahead Optimization</button>
8
+ <div class="info">
9
+ <p>The day-ahead optimization button will run once, based on the values entered into the configuration page.
10
+ </br>
11
+ After a few seconds, the charts and table below should be updated to reflect the optimization plan for the next
12
+ 24 hours.
13
+ </p>
14
+ </div>
@@ -0,0 +1,48 @@
1
+ <!-- configuration list dynamically appended inside of configuration.html -->
2
+ <!-- configuration list view parameter sections -->
3
+ <div id="Local" class="section-card">
4
+ <div class="section-card-header">
5
+ <h4>Local</h4>
6
+ </div>
7
+ <div class="section-body"> </div> <!-- parameters will get generated here -->
8
+ </div>
9
+ <div id="System" class="section-card">
10
+ <div class="section-card-header">
11
+ <h4>System</h4>
12
+ </div>
13
+ <div class="section-body"> </div> <!-- parameters will get generated here -->
14
+ </div>
15
+ <div id="Tariff" class="section-card">
16
+ <div class="section-card-header">
17
+ <h4>Tariff</h4>
18
+ </div>
19
+ <div class="section-body"> </div> <!-- parameters will get generated here -->
20
+ </div>
21
+ <div id="Deferrable Loads" class="section-card">
22
+ <div class="section-card-header">
23
+ <h4>Deferrable Loads</h4>
24
+ <input id="number_of_deferrable_loads" min="1" type="number">
25
+ </label>
26
+ </div>
27
+ <div class="section-body"> </div> <!-- parameters will get generated here -->
28
+ </div>
29
+ <div id="Solar System (PV)" class="section-card">
30
+ <div class="section-card-header">
31
+ <h4>Solar System (PV)</h4>
32
+ <label class="switch"> <!-- switch connected to set_use_pv -->
33
+ <input id="set_use_pv" type="checkbox">
34
+ <span class="slider"></span>
35
+ </label>
36
+ </div>
37
+ <div class="section-body"> </div> <!-- parameters will get generated here -->
38
+ </div>
39
+ <div id="Battery" class="section-card">
40
+ <div class="section-card-header">
41
+ <h4>Battery</h4>
42
+ <label class="switch"> <!-- switch connected to set_use_battery -->
43
+ <input id="set_use_battery" type="checkbox">
44
+ <span class="slider"></span>
45
+ </label>
46
+ </div>
47
+ <div class="section-body"> </div> <!-- parameters will get generated here -->
48
+ </div>