Allow a Sud step to combine a ramp and a hold

A step can now carry both 'ramp' and 'hold': it ramps to the target
temp, then holds there for the given duration, instead of needing two
separate schedule entries. Sud.temp_reached() switches such a step
from its ramp phase into its hold phase in place (re-firing the
step-changed callback so SudTask/demo_sud re-apply the hold's stirrer
settings); user_wait_for_continue still applies once the whole step -
both phases - is done.

Merges sud_0010.json's three ramp/hold pairs into combined steps.
This commit is contained in:
2026-06-21 09:01:04 +02:00
parent 56de5cf4d6
commit 9bd9889cb0
6 changed files with 57 additions and 37 deletions
+12 -22
View File
@@ -54,20 +54,17 @@
{
"descr": "Einmaischen Rast",
"hold": {
"duration": 2000
"duration": 20
}
},
{
"descr": "Heizen Glucose-Rast",
"descr": "Glucose-Rast",
"ramp": {
"rate": 1.0,
"temp": 63
}
},
{
"descr": "Halten Glucose-Rast",
},
"hold": {
"duration": 4000,
"duration": 40,
"stirrer": {
"speed": 20,
"interval_time": 90,
@@ -76,16 +73,13 @@
}
},
{
"descr": "Heizen Verzuckerungs-Rast",
"descr": "Verzuckerungs-Rast",
"ramp": {
"rate": 1.0,
"temp": 72
}
},
{
"descr": "Halten Verzuckerungs-Rast",
},
"hold": {
"duration": 3000,
"duration": 30,
"stirrer": {
"speed": 35,
"interval_time": 120
@@ -94,19 +88,15 @@
},
{
"water_mass": 20,
"descr": "Heizen Abmaischen",
"descr": "Abmaischen",
"user_message": "Quittieren zum Abmaischen",
"user_wait_for_continue": true,
"ramp": {
"rate": 1.0,
"temp": 76
}
},
{
"water_mass": 20,
"descr": "Halten Abmaischen",
"user_message": "Quittieren zum Abmaischen",
"user_wait_for_continue": true,
},
"hold": {
"duration": 300,
"duration": 30,
"stirrer": {
"speed": 50
}