Commit graph

55 commits

Author SHA1 Message Date
Rahix 1e21222705 succd: Optimize color usage for HP HMI
In the process automation world, there is a trend to move away from
colorful user-interfaces, towards more "boring" colorschemes.  The
argument is about situational awareness - by only using colors to
highlight abnormal situations, they become instantly recognizable to the
operators.

This design philosophy is outlined by the ISA-101 [1] under the name
"High Performance HMI".  While it covers much more than just colors, I
think this is the most important part and the one that is most
applicable for our usecase.

So let's do a bit of HP HMI - reduce colors usage such that only
important information is highlighted.

[1]: https://www.isa.org/standards-and-publications/isa-standards/isa-standards-committees/isa101
2024-10-05 17:37:10 +00:00
Rahix 7a56b0fe70 succd: Fix mobile layout
Use smaller font sizes for mobile devices so the full interface fits on
a single screen (mostly).
2024-10-05 17:37:10 +00:00
Rahix f4339e54ef succd: Fix layout on large screens
Make sure the grid cannot grow too large on big screens.  Also slightly
adjust the breakpoint to avoid some weird artifacts.
2024-10-05 17:37:10 +00:00
Rahix e2fc15ed9b succd: Use tigher hysteresis values
All checks were successful
/ test (pull_request) Successful in 10s
/ test (push) Successful in 10s
It seems we can get away with less hysteresis still.  Make the values a
bit smaller.
2024-10-04 23:30:28 +02:00
Rahix ef959f4be3 succd: Configure hysteresis for rough and high thresholds
Add CLI flags for rough and high hysteresis and configure default values
based on experiments.
2024-10-04 23:30:28 +02:00
Rahix 8645718748 succd: Add hysteresis feature to thresholdOutput blocks
Add a hysteresis value that can be optionally configured for
thresholdOutput blocks.  This will hopefully help to prevent jumping
outputs from feedback that is caused by the thresholdOutput itself.
2024-10-04 23:30:28 +02:00
Rahix ed8adad611 succd: Fix table jiggle
Make sure the table size doesn't dynamically jiggle with movement of
width changes of the load-average value.
2024-10-04 23:30:28 +02:00
Rahix 313569e1dc succd: Use grid layout to show all info on a single screen
Use CSS grids to all information on a single screen if possible.  There
is a breakpoint for smaller screens.
2024-10-04 23:30:28 +02:00
Rahix 102393a689 succbone: Update title pic
All checks were successful
/ test (pull_request) Successful in 3s
/ test (push) Successful in 3s
2024-09-28 23:35:09 +02:00
Serge Bazanski 2899677059 succd: add info on how to run tests
All checks were successful
/ test (pull_request) Successful in 4s
/ test (push) Successful in 4s
2024-09-28 16:13:10 +02:00
Serge Bazanski 2454a44350 succd: add ci, tests
All checks were successful
/ test (push) Successful in 4s
2024-09-28 16:09:07 +02:00
Serge Bazanski 96e07ece2d succd: run at 100Hz, monitor load and jitter 2024-09-28 14:27:43 +02:00
Serge Bazanski 12f6815673 succd: gofmt 2024-09-28 14:27:43 +02:00
zdmx f5d80a335f succd: remove redundant if 2024-09-28 11:20:25 +02:00
Serge Bazanski fbf41203de succd: do not engage pirani failsafe on startup, as that prohibits restarting succd when the machine runs 2024-09-28 10:23:15 +02:00
Serge Bazanski dda098f634 succd: early refuse unsafe operations 2024-09-28 10:22:40 +02:00
Serge Bazanski 960be9cd23 succd: rewrite processing loop 2024-09-28 10:17:05 +02:00
Serge Bazanski 3d81a1f56c succd: roll process_state.go back into process.go 2024-09-28 09:48:50 +02:00
Serge Bazanski 185525ca30 succd: downgrade high pressure lockout message to warning 2024-09-28 09:46:49 +02:00
Serge Bazanski 590e93e43e succd: log pressures in error messages 2024-09-28 09:46:18 +02:00
Serge Bazanski 451b44e31b succd: move out processing blocks to separate file 2024-09-28 09:39:44 +02:00
Serge Bazanski 4df00f0a63 succd: factor out ringbuffer, do not recalculate average on every request 2024-09-28 09:35:41 +02:00
Serge Bazanski 42c9ae2fa7 succd: httpServer -> webServer 2024-09-28 09:19:14 +02:00
Serge Bazanski f66afc0c8f succd: restyle slightly 2024-09-28 08:32:07 +02:00
Serge Bazanski 8f7ec7e141 succd: split out http server, daemon state, daemon controller
This improves the structure of the code, separating the data/control
interface out and then implementing the http interface as a user of this
interface.
2024-09-28 08:10:35 +02:00
Serge Bazanski 3ec6fd1d1b succd: unify html/js data source 2024-09-28 07:54:18 +02:00
Serge Bazanski 776f7a9911 succd: add hysteresis for high pressure safety interlock 2024-09-28 07:36:37 +02:00
Serge Bazanski 239a5c40cc succd: factor out safety status to separate struct 2024-09-28 07:36:37 +02:00
Serge Bazanski 80f482b732 succd: tristate pirani safety detection 2024-09-28 07:31:06 +02:00
Rahix 85d2afbdd0 succd: Fix javascript and template syntax errors
Turns out the go templating engine fails silently when unclosed strings
are present in the templated file.........

Fix javascript code :))
2024-09-28 00:05:18 +02:00
zdmx 908727608a succd: add safety status to web frontend 2024-09-27 23:49:24 +02:00
zdmx eb7707f1a0 succd: change safety reset threshold 2024-09-27 23:35:44 +02:00
zdmx ae9ac4ea0e succd: reset failsafe only after vent 2024-09-27 23:33:03 +02:00
Rahix 93ca80706f succbone: panel: Wire fake-pirani signals to NC contacts
Pirani thresholds are signalled by breaking the connection so let's wire
this up correctly.
2024-09-27 23:25:11 +02:00
zdmx 7a64ce91d4 succd: check currentmost pirani values for safety lock 2024-09-27 23:24:55 +02:00
zdmx 9db2213fa6 succd: log rate of change 2024-09-27 23:06:56 +02:00
zdmx 9ad6ce7dad succd: calcuate change rate for safety interlock directly from adc ringbuffer 2024-09-27 23:02:21 +02:00
zdmx d3391b28ec succd: add additional safety interlocks 2024-09-27 22:29:56 +02:00
Rahix f7752922c2 succd: Cleanup whitespace in HTML file 2024-09-27 02:32:36 +02:00
Serge Bazanski 34ab508b13 succd: add pirani failsafe 2024-09-27 02:24:19 +02:00
Serge Bazanski 6d97eb62a8 succd: implement threshold outputs, rework processing 2024-09-27 02:12:38 +02:00
Serge Bazanski 781bbaaeb4 succd: show logo 2024-09-27 02:12:38 +02:00
Serge Bazanski 7dffd2a4b4 succd: add logo 2024-09-27 02:12:38 +02:00
Serge Bazanski 0eacd74484 succd: README: add pin table 2024-09-27 02:12:38 +02:00
Rahix ed56aabfb1 succbone: panel: Update drawings 2024-09-27 02:01:24 +02:00
Rahix efbe9d6b53 succbone: Add relay board mount
This mount is vertical to save some space on the panel
2024-09-27 01:19:56 +02:00
Rahix 45eab4938b Add a README 2024-09-26 19:14:22 +02:00
Rahix dc21da8158 succbone: panel: Add pirani gauge and ethernet connection 2024-09-26 02:35:23 +02:00
Rahix 20cc111f2c succbone: panel: More updates
- Added -WDB4 for roughing pump connection
- Added -WGA2 for button panel connection
2024-09-26 01:35:10 +02:00
Rahix 8d8d1cb4cb succbone: Panel update 1
- Add external wiring
- Separate power for diffusion pump
2024-09-26 00:16:18 +02:00