6.3 KiB
Shop PLC dashboards
Built October 21, 2026 for https://dev.atomhmi.com/site_atom/. Device ID shop, display name Shop.
Scope and inventory
The register table contains 2,472 entries. The equipment/system inventory saved in artifacts/shop/register-inventory.json contains 264 non-alarm-manager entries, including 233 g_ entries. Alarm-manager internals were excluded from selection, pages, settings, trends, and alarms. No atGVL_alarmManager register or its configuration was modified.
All equipment registers used were already enabled. No enable or recording configuration changes were necessary. Existing operating setpoints, alarm thresholds, alarm-source enables, calibration, and output states were preserved. Runtime entry dialogs were opened and cancelled; no PLC setpoint or output commands were submitted during this build.
Published pages
| Page | Route | Content |
|---|---|---|
| Overview | page_overview | Default page; office/shop temperatures, heat targets, heat-pump/window output statuses, equipment links and combined temperature history |
| Office Heating | page_office_heating | Office temperature; editable heating setpoint/deadband; demand/output/fault; temperature and target trend; four temperature limits and individual hysteresis; four controller alarm-reporting enables |
| Floor Heating | page_floor_heating | Shop temperature; editable floor heat target/deadband; demand/output/fault; trend; four limits/hysteresis and alarm-reporting enables |
| Window Actuator | page_window_actuator | Office temperature; editable automatic window setpoint/deadband; open/close solenoid status and faults; temperature/target trend |
| Temperature Trends | page_temperatures | Office vs shop temperature, office heating/window targets, and floor-heating target history; 1H/1D/7D selectors |
| Diagnostics | page_diagnostics | Two temperature sensor/channel/overrange/underrange fault groups, raw inputs, electrical signals/supplies, and two I/O card faults |
Native Copy/Paste component trees are saved as artifacts/shop/*-template.json. New navigation entries were added with Overview as default. The Atom HMI brand link opens the default page.
Register map
All references below use shop:.
- Office temperature:
g_teOffice_out_eu; shop temperature:g_teShop_out_eu. - Office heating:
g_officeHeatCtrl_sp,g_officeHeatCtrl_db, demandg_officeHeatCtrl_Q; actual outputg_officeHeat_out_val, faultg_officeHeat_fault_out. - Floor heating:
g_shopFloorCtrl_sp,g_shopFloorCtrl_db, demandg_shopFloorCtrl_Q; outputg_shopFloor_out_val, faultg_shopFloor_fault_out. - Window control:
g_windowSP,g_windowDB; solenoid outputsg_officeWndOpen_out_val,g_officeWndClose_out_val; corresponding_fault_outregisters. - For each temperature prefix
g_teOffice/g_teShop, limits use_limits_{lo,lolo,hi,hihi}_in_sp, individual hysteresis_in_hyst, controller reporting enables_alm_in_en, and HMI alarm sources_alm_out. - Temperature diagnostics use
_sensorFault_out,_faults_chan_out,_faults_over_out,_faults_under_out; raw/signal/supply use_in_raw,_in_signal,_in_supVlt. - Hardware faults:
g_base1_card01_fault_out,g_base1_card02_fault_out.
Numeric settings read the register and write value back to the same register. Deadband/hysteresis entry limits are 0–100 °C; operating setpoints and thresholds retain signed numeric entry. Two-position alarm switches use 1 enabled / 0 disabled. They change PLC alarm reporting enable inputs, distinct from the HMI alarm definition's enabled setting.
Alarms
Created 22 HMI alarms from existing PLC fault and limit alarm outputs: 8 temperature-limit alarms, 8 temperature-input/sensor faults, 2 heating-output faults, 2 window-solenoid faults and 2 I/O card faults. All 22 were reopened and verified enabled/non-latching. Update interval 1 second, HMI delays 0; PLC source logic retains its existing delays. High/Low temperature alarms are Warning; High-High/Low-Low and faults are Critical. Alarm and return-to-normal messages identify equipment in plain language. No notification group was selected, and no external notification recipients were configured.
The full alarm manifest and verification is artifacts/shop/alarms-created.json. No alarms were generated from alarm-manager internals or reset/acknowledgement globals.
Commissioning notes
- Existing temperature limits are 0 °C. These were exposed rather than replaced with invented thresholds. Set coherent operating limits before relying on temperature alarming. HMI alarms follow existing
_alm_outsignals; HMI non-latching does not change PLC latching/source logic. g_teShopdescriptions incorrectly repeat Office temperature. Page/alarm names follow the distinct Shop register prefix and control-loop mapping.- No separate boiler-water temperature or boiler operating target was found. Floor Heating shows the floor loop's room-temperature demand and pump output; it does not claim to provide direct boiler control.
- Window open/close signals are solenoid output commands. No position-feedback register was found. Do not label these as confirmed fully open/closed or offer direct output writes without establishing control logic.
- Heating demand and pump output are deliberately separate. At inspection the floor demand was 1 with pump output 0; this build does not establish the interlock or pump-feedback behavior.
- Runtime counters
_out_rtexist but their time units are not documented, so no guessed hours conversion was added. - Historical chart loading takes longer than live numeric polling. Wait for plotted traces, not only axis labels, before recording QA screenshots.
Verification and artifacts
- Saved and opened all six pages; overview showed live office ~23.7–23.8 °C, shop ~18.5 °C and both heating targets 20 °C.
- Confirmed plotted sensor/target history on the Temperature Trends page.
- Opened Heating Setpoint at 20 °C and Window Setpoint at 22.5 °C; cancelled both.
- Reopened every new alarm and checked its ID, enabled=true and latching=false.
- Screenshots include overview.jpg, office-heating.jpg, floor_heating.jpg, window_actuator.jpg, temperatures.jpg, diagnostics.jpg and alarms.jpg. Early runtime-audit snapshots can contain temporary polling placeholders; final trend screenshot shows loaded traces.
Use ATOMHMI-PLAYBOOK.md for the general Copy/Paste, modal, and navigation editing workflow.