4.9 KiB
Sweet Grass 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.
Identity and coverage
Production: https://www.atomhmi.com/site_sweetgrass/
Configure: https://www.atomhmi.com/site_sweetgrass/configure_pages
Catalog remains 51 pages. PAGE-INVENTORY.md preserves the full list from October 20. October 21 refreshed the catalog and selected active pages, resolving both previous motor-tree inspection gaps. Combined historical coverage now includes every listed page tree, but this is not an audit of every element's behavior.
Useful starting pages
| Page | Slug | Roots / element count observed October 21 |
|---|---|---|
| Overview | overview | Main Selection; 49 |
| Center Receiving | center_receiving | Control Row; 228 |
| South Receiving | south_receiving | Control Row; 83 |
| Receiving Sequence | receiving_sequence | Control Row; 100 |
| Crimping | crimping | Control Row; 103 |
| Groater | groater | Control Row; 313 |
| Shipping | shipping | Control Row; 103 |
| dryer | dryer | Dryer Chart Div + Overview Row; 137 |
| Power Main | power_main | Menu + Main Row + Table; 186 |
| Power Dryer | power_dryer | Menu + Main Row + Table; 186 |
| Motors | motors | Motors; 1,435 |
| old Motors | old_motors | Motors; 1,246 |
| Receiving PID Tuning | receiving_pid_tuning | no roots/elements |
Use Overview for compact status cards; Center/South Receiving for routing and sequence controls; Groater for dropdown and equipment control; Shipping for four-state indicators and destination selection; dryer for chart-plus-controls; Power pages for chart/readouts/tables. Empty Receiving PID Tuning is not an established tuning interface.
Motor tree gap resolved
Motors and old Motors both loaded on October 21. Native Copy exported each whole root; active Motors has 103 direct children and old Motors has 83. These include menu/group structure, so do not interpret the counts as a proven motor count.
Active groups include dryer-style m02_01 through m90 families and other groups named M001, M002, M016, M101, M202, M301, etc. Group names and prefixes differ; inspect each intended unit rather than applying one global rename.
Representative active dryer motor m02_01:
| Function | Configured binding |
|---|---|
| Auto/Manual | main:dryer_g_m02_01_in_autoMode; 1/0 |
| Start | main:dryer_g_m02_01_in_manFwd; writes 1 |
| Stop | main:dryer_g_m02_01_in_manStop; writes 1 |
| Hertz display | main:dryer_g_m02_01_out_speedActHz |
| Hertz write target | main:dryer_g_m02_01_in_manSpeedRef; direct value |
| Time since start | main:dryer_g_m02_01_out_tss multiplied by 1000; non-editable HH:mm:ss |
The editable Hertz field intentionally separates actual-speed display from manual demand target. A configured target on the non-editable time display does not authorize writing an output.
For large trees, use the root's direct Copy control rather than resolving every descendant button. Reload a clean Configure Pages session before each large page; accumulated previews caused timeouts during this survey. See ATOMHMI-PLAYBOOK.md.
Prior verified context retained
The October 20 study in SITE-STUDY.md established:
- Device IDs global (Global) and main (Main PC).
- Main PC slave labels Codesys PLC, Groater PLC, Main PLC, SG Dryer, Shipping PLC, Terminal.
- Page → device-qualified register → slave → PLC tag mapping. Register presence does not establish enabled/updating/logged state.
- Overview's six-state indicator references main:dryer_g_m77_01_out_status.
- Center Receiving Start targets main:recvSeqStart with value 1.
- A Center Receiving ratio reads main:dryer_g_centRecBin21Ratio but writes main:dryer_g_centRecBin21RatioSel, writeValue=value. Limits checkbox was false despite populated 0/100.
- Sample dryer status address: tag sg_dryer.g.m77_01.out_status; enabled On Change/one-second polling, logging disabled in that earlier inspected definition.
These are dated prior observations, not a new register-table audit on October 21. The prior counts of 20,055 register definitions and 1,538 alarm definitions are historical, not freshly verified totals.
Future work boundaries
Use this guide and the earlier full catalog instead of repeating the general survey. Verify current Title/slug and the particular subtree before editing. Preserve roots, location anchors, read/write distinctions, state mappings, chart series/scales/navigator and time conversions.
No PLC commands, setpoint writes, motor tests, alarm-latching changes or device actions were performed. History retention, alarm notification/latching and physical interlocks remain outside this survey. Old/test page names do not establish which content is current or safe to modify.