Warm the loop by the mixed bulk; record the flow check to the heater's ceiling

flow_warm_validate.py warms in rounds (the heater at 50 percent for three
minutes, off, 45 s of circulation, the two sensors' mean read) and judges
the target on that mixed bulk, not on the upstream sensor beside the
heater, which reached any target within two minutes while the bulk had
barely moved. Run with a 28 C target the loop plateaus at 27.2 C in a
20 C room; six checks at 26.2 to 27.2 C read every verdict right, the flow
band under 11.9 C and the no-flow band over 18.0 C against the 14.4 C
limit. CAMPAIGN-LOG records the run; BRINGUP item 1 keeps only the
button-latch check, the flow check's bands holding from 19 to 27 C.

No catalog consequence: a bench tool and documentation.
This commit is contained in:
ScottW514
2026-08-29 19:37:26 -04:00
parent 9bfdba44c8
commit cd00b0d16f
3 changed files with 64 additions and 29 deletions
+4 -5
View File
@@ -1045,11 +1045,10 @@ Open items only. Anything closed is in `CAMPAIGN-LOG.md`.
1. **Laser commissioning leftovers.** Verify the hardware button latch persists
across kernel-run gaps mid-job (if OK_2_FIRE drops between motion bursts, the
fix is a stream keepalive across armed gaps); the flow check's bands from
a loop warmer than 25 C (the bands hold from 19 to 25 C with the margin
widening warm; the warm-up in `flow_warm_validate.py` must be judged on
the mixed bulk, not the upstream sensor beside the heater, to reach 28 C
and above).
fix is a stream keepalive across armed gaps). The flow check's bands
hold from 19 to 27 C, the loop heater's ceiling in a 20 C room, with the
margin widening warm; above that only a running tube warms the loop,
and the check takes the tube's share off.
2. **Low-temperature gates and warm-up (planned).** Two keys in the Cooling
card: `cool_temp_min` (hard floor, default ~5 °C, a fire gate) and
`cool_temp_start` (warm-up gate, default ~16 °C) — a job starting below the