add_control
Automate a component input by reading a measured result and adjusting it with PI or hysteresis control, maintaining setpoints and avoiding rapid cycling.
Instructions
Add a control that reads one result and writes one component input.
pi: solve finds the output holding the setpoint (control_saturated if unreachable); simulate runs it after each step's solve. hysteresis: on below on_below, off above off_above (short_cycling if too frequent). Returns every control.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Control name (identifier). | |
| type | Yes | Control law. | |
| actuate | Yes | Numeric input it writes, e.g. 'pump.speed'. | |
| measure | Yes | Numeric result path, e.g. 'pump.outlet.p'. | |
| settings | Yes | pi: setpoint (e.g. '4 bar'), gain (output per measured unit, > 0), integral_time ('10 s'), output_min?, output_max? (default: input limits), direction? ('reverse' default: raise the output when the measure is low; 'direct'). hysteresis: on_below, off_above, on_value, off_value, initial? ('on'|'off'), max_switches_per_hour? (6). | |
| system_id | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| controls | Yes | ||
| system_id | Yes |