4.6 KiB
Mandel settings expansion
October 24, 2026: completed the new Well/Tank/Filter Differential pressure UI and dedicated Alarms settings page. See MANDEL-PRESSURE.md for exact mappings, 81 polling updates, 21 new HMI alarms and verification limits. User confirmed psi. Live data remains unavailable; no PLC settings or values were written.
Later simulation testing, lighting controls, washer digital-limit feedback, and Copy/Paste discoveries are recorded in ATOMHMI-PLAYBOOK.md. The verification below describes the earlier build before those tests.
Updated October 20, 2026. The pressure-washer sensor is not active yet, as confirmed by the owner. Its pressure reading is not a commissioning reference.
Delivered adjustments
| Page | Editable settings |
|---|---|
| Chicken Coop | Heating setpoint, cooling setpoint, daily fan target (hours); four temperature alarm thresholds and low/high reset hysteresis |
| Air Compressor | Auto/Manual selector; four pressure alarm thresholds and low/high reset hysteresis |
| Pressure Washer | Auto/Manual selector; four pressure alarm thresholds and low/high reset hysteresis; inactive-sensor commissioning note |
| Ventilation | House fan speed (0–100%); four negative-pressure alarm thresholds and low/high reset hysteresis |
| Water Usage | Four house-flow alarm thresholds and low/high reset hysteresis |
Tap a bordered numeric value, enter a new value, and press Save to apply it. Cancel leaves the controller value unchanged. Auto/Manual switches apply their selected mode. Existing Start/Stop buttons remain available on the compressor and washer pages.
All existing threshold values, operating modes, and alarm-enable logic were preserved during this build. Exposing editable settings did not apply new setpoints or switch modes.
Register mapping
For each prefix below, Low, Low-Low, High, and High-High threshold fields read and write the corresponding <prefix>_limits_<level>_in_sp register, where level is lo, lolo, hi, or hihi. Low/High Reset Hysteresis fields use <prefix>_limits_lo_in_hyst and <prefix>_limits_hi_in_hyst.
| Page | Prefix | Display units |
|---|---|---|
| Air Compressor | g_airPressure |
psi |
| Pressure Washer | g_pressureWasherPres |
psi; sensor inactive |
| Chicken Coop | g_coopTemp |
°C |
| Ventilation | g_negAirPres |
PLC engineering units (EU) |
| Water Usage | g_houseFlow |
PLC engineering units (EU) |
The Manage Alarms catalog contains corresponding High, High-High, Low, and Low-Low alarm records for all five groups. These are alarm adjustments, not invented operating-pressure controls. Alarm activation still follows the controller's existing enable configuration.
Additional controls:
- Heating setpoint:
main:g_coopHeatSP, direct numeric read/write. - Cooling setpoint:
main:g_coopCoolSP, direct numeric read/write. - Daily fan target:
main:g_coopDailyFanDur, displayed as register / 3,600,000 and written as user value × 3,600,000. Entry range 0–24 hours. - House fan speed:
main:g_houseFanSpeed, direct numeric read/write with entry range 0–100%. - Compressor mode:
main:g_airCompressor_in_autoMode, Auto = 1, Manual = 0. - Washer mode:
main:g_pressureWasher_in_autoMode, Auto = 1, Manual = 0.
Enabled polling for the 30 threshold/hysteresis registers and the two mode registers. Existing coop setpoint and fan-speed registers were already enabled. This changes register availability, not the PLC's alarm-enable settings.
Verification
- Observed page-save confirmations and reopened all five saved runtime pages.
- Heating entry opened with its existing value of 10 °C, then was cancelled.
- High-High temperature alarm entry opened at its existing 35 °C, then was cancelled.
- Daily fan entry opened at 1 hour and showed 0–24 hour limits, then was cancelled.
- Fan-speed entry opened at 0% and showed 0–100% limits, then was cancelled.
- Checked the saved threshold readouts and Auto/Manual selectors without toggling modes.
- No PLC register values were written, no alarm thresholds were changed, and no equipment commands were run.
The write targets and conversion expressions were configured and reviewed; a submitted write was not tested. Alarm numeric fields preserve signed engineering values and do not enforce cross-field ordering. They should be set coherently for the installation. No arbitrary alarm bounds, delay-unit conversions, or sensor calibration changes were introduced.
Screenshots and the alarm/register audit are under artifacts/mandel/ with settings in their filenames. The Chicken Coop page is left open for review.