Lemonergy · Studio block
Coolant flow controller
Controls the hottest cooling channel or coldest heating channel with hysteresis.
- Implementation ID
battery-coolant-controller- Reviewed
- 2026-10-27
Behavior
Uses the hottest channel for cooling or the coldest channel for heating. Separate on and off thresholds provide hysteresis. Enable gates the commanded coolant mass flow or heater power.
Interface
| Name | Direction | Unit | Meaning |
|---|---|---|---|
temperature | input | K | Cell temperatures; 3 channels at the default configuration. |
enable | input | true / false | Enable; scalar. |
command | output | kg/s | Coolant flow request; scalar. |
active | output | true / false | Active; scalar. |
Parameters
Defaults are initial model values. Select values for your own model and operating conditions.
| Parameter | Unit | Default | Meaning and limits |
|---|---|---|---|
Sample interval (s)sampleTimeS | s | 1 | Positive sample interval. Initialization has zero elapsed time; subsequent accepted samples update memory. |
Number of measurement channelscells | 1 | 3 | Number of measurement channels. This is an editable model input; the default belongs to the synthetic worked example. |
Turn-on temperature (K)onK | K | 310 | Turn-on temperature (K). This is an editable model input; the default belongs to the synthetic worked example. |
Turn-off temperature (K)offK | K | 305 | Turn-off temperature (K). This is an editable model input; the default belongs to the synthetic worked example. |
Coolant flow request (kg/s)command | kg/s | 0.1 | Coolant flow request (kg/s). This is an editable model input; the default belongs to the synthetic worked example. |
Equations and rules
cooling uses max(cell temperatures); heating uses min(cell temperatures)command = active ? configured command : 0
Worked example
Coolant flow controller worked example
Use the defaults below with Cell temperatures = [300, 315, 310] K, Enable = 1 true / false. At 0 s, Coolant flow request is 0.1 kg/s. Additional checks are listed below.
Open Studio example after release →| Output | Time (s) | Expected value | Unit | Absolute tolerance |
|---|---|---|---|---|
Coolant flow requestcommand | 0 | 0.1 | kg/s | 1e-08 |
Explore the recorded outputs
Coolant flow controller recorded example
Coolant flow controller / Coolant flow request2 actual recorded samples. Lines are visual guides between samples. Synthetic example, not measured cell data.
Read the selected signal as a table
| Time (s) | Value |
|---|
Download the recorded samples (JSON) · Open this Studio example after release
Use in a workflow
Coolant flow controller worked example
Controls the hottest cooling channel or coldest heating channel with hysteresis.
- Coolant flow controller: Uses the hottest channel for cooling or the coldest channel for heating. Separate on and off thresholds provide hysteresis. Enable gates the commanded coolant mass flow or heater power.
- Use the parameter values in the block reference.
- Implementation tested locally; public release pending.
Connected concepts
Limits and interpretation
- The controller emits a request. Fluid transport and heater heat delivery require connected plant models.
- The example verifies numerical behavior for synthetic parameters. Cell characterization and validation for an intended use are separate tasks.
Scientific and mathematical references
These sources explain the scientific and mathematical background. The behavior, interface and limits above define the Lemonergy implementation; a citation does not imply every model option in the source is implemented.
- University Physics Volume 2, §1.6: Mechanisms of Heat Transfer
OpenStax, Rice University
Technical reference · Conduction, convection, radiation and thermal resistance.
Implementation sources
This reference follows the public interface and locally verified numerical checks for an upcoming release.
Contract: Lemonergy Studio public contract · Verification record: verification-2026-10-27
docs/glossary/native-block-verification.json
This implementation and its workflow uses (JSON) · Knowledge graph (JSON-LD)