Skip to content

Commit

Permalink
Merge branch 'master' into config
Browse files Browse the repository at this point in the history
  • Loading branch information
jeremypoulter authored May 21, 2023
2 parents 377c48d + 8ce9db4 commit b34274c
Show file tree
Hide file tree
Showing 51 changed files with 15,940 additions and 8,422 deletions.
6 changes: 3 additions & 3 deletions api.yml
Original file line number Diff line number Diff line change
Expand Up @@ -192,9 +192,9 @@ paths:
Configure Solar divert:
value:
divert_enabled: true
divert_attack_smoothing_factor: 0.4
divert_decay_smoothing_factor: 0.05
divert_min_charge_time: 60
divert_attack_smoothing_time: 8
divert_decay_smoothing_time: 300
divert_min_charge_time: 20
Set normal charging mode:
value:
charge_mode: fast
Expand Down
5 changes: 4 additions & 1 deletion divert_sim/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -82,4 +82,7 @@ $RECYCLE.BIN/

*.o
divert_sim
output

*.csv
test_results.xml
!*_master.csv
4 changes: 3 additions & 1 deletion divert_sim/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ CPPFLAGS := \
# \
# -D ENABLE_DEBUG \
# -D ENABLE_DEBUG_DIVERT \
# -D ENABLE_DEBUG_INPUT_FILTER \
# -D ENABLE_DEBUG_EVSE_MAN \
# -D ENABLE_DEBUG_EVSE_MONITOR
LDFLAGS := -pthread
Expand Down Expand Up @@ -65,6 +66,7 @@ STREAM_SPY_OBJ := \
StreamSpy.o \

OPENEVSE_WIFI_OBJ := \
input_filter.o \
divert.o \
current_shaper.o \
evse_man.o \
Expand Down Expand Up @@ -135,7 +137,7 @@ clean:
rm -f $(TARGETS) $(OBJ)

server:
python3 -m http.server
python3 server.py

$(OBJ): %.o : %.cpp $(DEPS)
$(CPP) -c -o $@ $< $(CPPFLAGS)
Expand Down
6 changes: 6 additions & 0 deletions divert_sim/data/config-default.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"divert_PV_ratio": 1.1,
"divert_attack_smoothing_time": 20,
"divert_decay_smoothing_time": 600,
"divert_min_charge_time": 600
}
6 changes: 6 additions & 0 deletions divert_sim/data/config-inputfilter-noimport.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"divert_PV_ratio": 1.1,
"divert_attack_smoothing_time": 300,
"divert_decay_smoothing_time": 20,
"divert_min_charge_time": 600
}
6 changes: 6 additions & 0 deletions divert_sim/data/config-inputfilter-nowaste.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"divert_PV_ratio": 0.5,
"divert_attack_smoothing_time": 20,
"divert_decay_smoothing_time": 600,
"divert_min_charge_time": 600
}
6 changes: 3 additions & 3 deletions divert_sim/data/test_config.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"divert_PV_ratio": 0.5,
"divert_attack_smoothing_factor": 0.4,
"divert_decay_smoothing_factor": 0.05,
"divert_PV_ratio": 1.1,
"divert_attack_smoothing_time": 20,
"divert_decay_smoothing_time": 600,
"divert_min_charge_time": 600
}
73 changes: 73 additions & 0 deletions divert_sim/interactive.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
<!DOCTYPE html>
<html>

<head>
<title>OpenEVSE Solar Divert Simulations</title>
<script type="text/javascript" src="https://canvasjs.com/assets/script/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="https://canvasjs.com/assets/script/canvasjs.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
<script type="text/javascript" src="simulations.js"></script>
<script type="text/javascript">
var profiles = [
"master",
"interactive"
];

function run_simulation() {
$.post("simulation", JSON.stringify({
"divert_PV_ratio": parseFloat($("#divert_PV_ratio").val()),
"divert_attack_smoothing_time": parseInt($("#divert_attack_smoothing_time").val()),
"divert_decay_smoothing_time": parseInt($("#divert_decay_smoothing_time").val()),
"divert_min_charge_time": parseInt($("#divert_min_charge_time").val())
}), () => {
init_summary(profiles);
loadSummary("output/summary_master.csv", () => {
loadSummary("output/summary_interactive.csv", () => {
generate_summary_table(profiles);
for (const dataset of datasets) {
var id = dataset.id + "_interactive";
loadChart(id, "output/"+ id + ".csv", dataset.title + " (interactive)", dataset.class);
}
}, "interactive");
});
});
}
</script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />
<link rel="stylesheet" href="simulations.css" />
</head>

<body>
<h1>OpenEVSE Solar Divert Simulations</h1>

<a href="view.html">Test Results</a><br/>

<label for="divert_PV_ratio">divert_PV_ratio</label>
<input type="text" id="divert_PV_ratio" value="1.1"><br/>
<label for="divert_attack_smoothing_time">divert_attack_smoothing_time</label>
<input type="text" id="divert_attack_smoothing_time" value="20"><br/>
<label for="divert_decay_smoothing_time">divert_decay_smoothing_time</label>
<input type="text" id="divert_decay_smoothing_time" value="200"><br/>
<label for="divert_min_charge_time">divert_min_charge_time</label>
<input type="text" id="divert_min_charge_time" value="600"><br/>

<button onclick="run_simulation()">Run Simulation</button>

<h2>Summary</h2>
<div id="summary_table">
</div>

<script type="text/javascript">

for (const dataset of datasets) {
var id = generate_chart(dataset, "master");;
loadChart(id, "output/"+ id + ".csv", dataset.title + " (master)", dataset.class);
generate_chart(dataset, "interactive");
}
//<div id="day1_default" style="width:100%; height:300px;" class="solar" csv="output/day1_default.csv" title="Day 1"></div>

</script>

</body>

</html>
Loading

0 comments on commit b34274c

Please sign in to comment.