Files

101 lines
8.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# KAV site guide
Verified through production Configure Pages and native element Copy on 2026-10-21 (America/Edmonton). This was a read-only context survey: no page saves, pastes, register writes, alarm changes, device actions, or operational command tests. Bindings describe the configured UI, not proven PLC behavior. No credentials or camera/map endpoints are retained.
## Site identity and coverage
| Selector label | Production site | Catalog count |
| --- | --- | ---: |
| KAV Main - Mill | https://www.atomhmi.com/site_kav/ | 43 |
| KAV East - Mill | https://www.atomhmi.com/site_kav_east_mill/ | 4 |
| KAV Main - Water | https://www.atomhmi.com/site_kav_water/ | 29 |
| KAV East - Water | https://www.atomhmi.com/site_kav_east_water/ | 38 |
The production host in this browser is www.atomhmi.com. The user identifies atomhmi.com and dev.atomhmi.com as the two work environments; development copies of these KAV sites were not verified in this survey. Each site's administration menu exposes Configure Pages. KAV's in-page Select Site components are separate from the global administrator site selector.
Read SITE-STUDY.md and PAGE-INVENTORY.md for the October 20 full catalog study. October 21 refreshed all four catalogs and selected active page trees, copied representative subtrees, and opened all four East Mill page trees. It did not repeat every legacy Main Mill/water page inspection. Main Mill now includes Mill 2 Test, absent from the earlier 42-page inventory; the other counts are unchanged.
## Main Mill: where to start
| Page title | Slug after page_ | Roots / role verified October 21 |
| --- | --- | --- |
| Mill 2 | mill2 | row diagram + Status controls; 285 total elements |
| Mill 2 Test | mill_2_test | row; 38 diagram elements, not a complete control-page substitute |
| Mill 2 Settings | mill2_settings | All + Status; 201 elements |
| Tempering | tempering | row diagram + All; 261 elements |
| Tempering 2 | tempering2 | All; 63 elements |
| Bin Inventory | bin_inventory | Totals, Receiving / Tempering Bins, Rolled Bins, Trend Row, Bin Weights |
| Receiving | receiving | row diagram + Control Row; 166 elements |
| Receiving Settings | rec_settings | Settings; 67 elements |
| Receiving Trend | rec_trend | Status; 30 elements |
The diagram uses View Port level indicators, static/two-state/multi-state images and text. Receiving also uses a ten-state image. Inventory adds Dropdown Select, numeric values, gauges and a trend. Preserve every page root; copying the diagram alone omits the command controls.
Copied Mill 2 Status root has 247 elements. Its configured command targets use device prefix `mill`:
- Start / Stop: `mill:cmdMill2Start` / `mill:cmdMill2Stop`, each writes 1.
- Source/destination toggles include `cmdMill2T1Tgl`, `cmdMill2T2Tgl`, `cmdMill2B2Tgl`, `cmdMill2B3Tgl`, `cmdMill2B4Tgl`; corresponding `ASTgl` targets also occur.
- Shutdown Timer reads `mill:Mill2SDNTim * 1000` in Timespan (ms), writes `value / 1000`.
- Some non-editable historical runtime fields retain `test:` update targets and inconsistent write expressions. Their editable flag was false; a populated updateRegister is not proof that the field is currently writable.
## East Mill
Four pages: Bins (`bins`), Device Status (`device_status`), Select Site (`select_site`), Settings (`settings`).
Bins has four roots: Heading, row, Site Select, Molasses Tanks. The row contains the equipment viewport; the Molasses Tanks subtree includes the combined level trend. Its exact chart mappings are:
| Series | Register |
| --- | --- |
| Limestone East (%) | mill:bin01Lvl_eu |
| Limestone West (%) | mill:bin04lvl_eu |
| Rolling (%) | mill:bin02lvl_eu |
| Receiving (%) | mill:bin03lvl_eu |
| Molasses 1 (%) | mill:bin05lvl_eu |
| Molasses 2 (%) | mill:bin06lvl_eu |
Axis 0–100%; navigator `mill:bin06lvl_eu`, default button index 2. Case differs between register names; preserve it. Diagnostics has one All root (111 elements); Settings is a small Site Select root (5 elements).
## Main Water
| Page | Slug | Structure verified October 21 |
| --- | --- | --- |
| Cistern | cistern | Main Info; 146 elements |
| Wells | wells | Wells; 195 elements |
| Well 1 New | well_1_new | div, control, information/map roots; 128 elements |
| Well 10 New | well_10_new | div, control, information/map roots; 136 elements |
| Out Pump 1 | out_pump_1 | control root; 34 elements |
| TruckWater | truck_water | two Control Row roots + Settings; 16 elements |
Well 10 New's copied operating root has 67 elements:
- Flow `water:g_well10_flow_out_eu` in gpm; level `water:g_well10_lvl_out_eu` in ft.
- Run feedback `water:g_well10Pump_out_run`; mode `g_well10Pump_in_autoMode` (1 Auto / 0 Manual).
- Start writes 1 to `water:g_well10Pump_in_manFwd`; Stop writes 1 to `water:g_well10Pump_in_manStop`.
- Speed mode targets `water:GVL_Well10SP_AutoSpeedMode` (1/0).
- Editable Flow SP `g_well10_flow_limits_lo_in_sp`: 0–30 gpm; Level SP `g_well10_lvl_limits_lo_in_sp`: 0–30 ft; manual `g_well10Pump_in_manSpeedRef`: 0–90 Hz.
- Low-flow alarm enable: `g_well10_flow_limits_lo_alm_in_en`, 1/0. The same low-flow threshold is shown read-only elsewhere.
- Concentration `water:g_chemStrength` is editable but limits=false, despite populated 0/20 fields. Rate `g_well10Rate` is read-only, mL/h.
- History series use `g_well10_lvlHistory_hi`, `g_well10_lvlHistory_lo`, `g_well10_lvl_out_eu`; level axis 0–40, navigator current level.
**Corrected and persisted, October 21, 2026:** on production Well 10 New (`well_10_new`), element Chlorine Current PPM (visible label Target ppm, element ID `4f503dce-01d9-4339-9d14-8668186b2cea`) now reads and writes `water:g_well10ChemPPM`. The original write target was `water:g_well1ChemPPM`. Changed only `updateRegister` through Configure Element, saved the element and page (Successfully Saved Page), then reloaded and reopened the configuration. Comparison of all 37 form controls confirmed only the intended write target changed. Editable=true, writeValue=`value`, limits=false, suffix ppm, number format 0.0 and all other captured controls were preserved. No chlorine value was submitted and no live register-write/physical dosing test was performed.
## East Water
| Page | Slug | Structure |
| --- | --- | --- |
| Cisterns | cisterns | Main Info; 192 elements |
| Cistern 1 Transfer | cist_1_trans | div + three control roots; 82 elements |
| Outflow | outflow | Main Info + Pumps; 245 elements |
| Wells | wells | Wells; 245 elements, copied |
| Sys 1_1 | sys11 | div + control; 46 elements |
| Temps | temps | Trend Div; 2 elements |
| Well 25 New | well25-new | div, control, Water Settings; 97 elements |
| Well 26 New | well26-new | div, control, Water Settings; 97 elements |
Do not derive slugs from titles: underscore, hyphen and spacing conventions vary.
The Wells chart has ten series. Older registers include `water:well21GPM`, `well22GPM`, `well23GPM`, `well24Flow_eu`, `well25GPM`, `well26GPM`, `well27Flow_eu`, `well28Flow_eu`; newer ones use `water:g_well29_flow_out_eu` and `g_well30_flow_out_eu`. Axis is 0–20 gpm; navigator `water:inTotGPMCalc`, default button 1.
**Corrected and persisted, October 21, 2026:** on production KAV East Water Wells (`site_kav_east_water/page_wells`), Trend element `95ec8b60-2fe9-462d-8222-f2c069e41560`, the series bound to `water:g_well30_flow_out_eu` is now named Well 30 (previously Well 29). Changed only that series name through Configure Element and saved the element/page. Fresh reload/reopen confirmed persistence: the 10-series array differs only at this name, and the other 10 captured chart controls are unchanged. The live page legend separately displays Well 29 and Well 30. Register, scale gpm, color #b8c564, axes, buttons and navigator were preserved. No register values or operational controls were written.
## Future work
Use this guide to locate the relevant page and equipment without repeating the whole site survey. Reopen only the page/subtree being changed, verify its current read/write bindings, and back it up before authorized edits. Neither alarm latching nor PLC interlocks were audited here. Operational testing requires its own site-specific authorization.