[twincat] TwinCAT — ADS Sum-read / Sum-write #310

Closed
opened 2026-04-25 12:34:34 -04:00 by dohertj2 · 2 comments
Owner

Auto-managed PR — Mode B (autonomous)

Driver: twincat Phase: 2 Plan PR: 2.1
Plan: docs/plans/twincat-plan.md
Effort: L Cross-driver: False

Summary

Replace per-tag ReadValueAsync loops with SumSymbolRead/SumSymbolWrite (IndexGroup 0xF080-0xF084). Bucket by DeviceHostAddress. Targets ~10x throughput. Perf-tier test gated TWINCAT_PERF=1.

Source files

  • src/ZB.MOM.WW.OtOpcUa.Driver.TwinCAT/AdsTwinCATClient.cs
  • src/ZB.MOM.WW.OtOpcUa.Driver.TwinCAT/TwinCATDriver.cs
  • src/ZB.MOM.WW.OtOpcUa.Driver.TwinCAT/ITwinCATClient.cs

Docs

  • docs/v3/twincat-backlog.md
  • docs/drivers/TwinCAT-Test-Fixture.md

Fixture

  • tests/ZB.MOM.WW.OtOpcUa.Driver.TwinCAT.IntegrationTests/TwinCatProject/PLC/GVLs/GVL_Perf.TcGVL

Notes

Perf-tier gated.


Branch: auto/twincat/2.1. Target: auto/driver-gaps.

<!-- queue-meta {"id": "twincat-2.1", "driver": "twincat", "phase": 2, "plan_pr_id": "2.1", "deps": [], "cross_driver": false} --> ## Auto-managed PR — Mode B (autonomous) **Driver**: `twincat` **Phase**: `2` **Plan PR**: `2.1` **Plan**: [`docs/plans/twincat-plan.md`](docs/plans/twincat-plan.md) **Effort**: `L` **Cross-driver**: `False` ## Summary Replace per-tag ReadValueAsync loops with SumSymbolRead/SumSymbolWrite (IndexGroup 0xF080-0xF084). Bucket by DeviceHostAddress. Targets ~10x throughput. Perf-tier test gated TWINCAT_PERF=1. ## Source files - `src/ZB.MOM.WW.OtOpcUa.Driver.TwinCAT/AdsTwinCATClient.cs` - `src/ZB.MOM.WW.OtOpcUa.Driver.TwinCAT/TwinCATDriver.cs` - `src/ZB.MOM.WW.OtOpcUa.Driver.TwinCAT/ITwinCATClient.cs` ## Docs - `docs/v3/twincat-backlog.md` - `docs/drivers/TwinCAT-Test-Fixture.md` ## Fixture - `tests/ZB.MOM.WW.OtOpcUa.Driver.TwinCAT.IntegrationTests/TwinCatProject/PLC/GVLs/GVL_Perf.TcGVL` ## Notes Perf-tier gated. --- _Branch: `auto/twincat/2.1`. Target: `auto/driver-gaps`._
dohertj2 added the phase/2auto-manageddriver/twincatqueue/queued labels 2026-04-25 12:34:34 -04:00
dohertj2 added queue/in-progress and removed queue/queued labels 2026-04-25 21:28:57 -04:00
Author
Owner

🤖 Auto-loop picked this up. Branch: auto/twincat/2.1. Status: in-progress.

🤖 Auto-loop picked this up. Branch: `auto/twincat/2.1`. Status: in-progress.
dohertj2 added queue/done and removed queue/in-progress labels 2026-04-25 21:46:25 -04:00
Author
Owner

Auto-loop completed. Merged via PR #364.

✅ Auto-loop completed. Merged via PR #364.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dohertj2/lmxopcua#310