No description
The folder described behaviour and listed points, but nothing showed the
shape of the program. ARCHITECTURE.md covers what a reader needs before
opening any ST file:
- counts up front: 4 function blocks, 3 programs, 1 task, 69 located
variables, 65 process globals, 69 Modbus points, 1 comms interface
- the one architectural rule - only 10_globals.st and 50_prog_io_mux.st
may touch located variables, enforced by build.py - and why it is what
lets identical control logic run against a simulation or a real plant
- a layer diagram: Modbus slave / IO_MUX / CONTROL + its four FBs /
SIMULATION, with the direction of every flow
- what each of the 10 source files owns, with line counts
- execution order per build, and why SIMULATION runs first
- the 100 ms task interval is not independently adjustable: four POUs
integrate against a hardcoded SCAN_S := 0.1
- one comms interface, which is a runtime plugin rather than program
code - the reason 502 can be published and still refuse connections
- the 69 points by function code, with the %MW HR1024 warning
|
||
|---|---|---|
| 01-design | ||
| 03-plc | ||
| 99-reference | ||
| .gitattributes | ||
| .gitignore | ||
| README.md | ||
wrps-demo-kit
A kit for building demo automation use cases on Yokogawa CI Server (SCADA) and OpenPLC Runtime (soft PLC, in Docker) — with the Waterloo Road Pump Station (WRPS) demo as its first worked example.
Note
This repository is being assembled. It is the successor to an earlier working repo, and material is being reviewed and moved across one folder at a time. Sections not yet present have not yet been audited.
The two systems
| Role | Host | Address |
|---|---|---|
| SCADA — Yokogawa CI Server | yau-poc-cicore1 |
10.0.0.21 |
| PLC — OpenPLC Runtime container | yau-sls-poc-lin001 |
10.0.0.17 |
Architecture invariant: OpenPLC Runtime is the Modbus TCP server (slave) on port 502. CI Server is the Modbus client (master) and polls it. The register map is the contract between the two sides.
Layout
To be filled in as each part is brought across.
Assembled from the WRPS working repo, 2026-09.