Phase 3 PR 62 -- Siemens S7 native driver project scaffold #61
Reference in New Issue
Block a user
Delete Branch "phase-3-pr62-s7-driver-scaffold"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
First non-Modbus in-process driver. Scaffolds
src/ZB.MOM.WW.OtOpcUa.Driver.S7using S7netplus (managed .NET, MIT, port 102 ISO-on-TCP).S7DriverOptions— Host, Port=102, CpuType=S71500, Rack=0, Slot=0, Timeout, Tags, Probe (defaultMW0).S7TagDefinition— Address string (DB1.DBW0,M0.0,QD4…),S7DataTypeenum (Bool/Byte/Int16/UInt16/Int32/UInt32/Int64/UInt64/Float32/Float64/String/DateTime),StringLength=254(S7 max).S7Driver : IDriver— opensPlc(CpuType, Host, Rack, Slot), awaitsOpenAsyncwith linked CTS, tracks health, closes cleanly on fault or shutdown.Gate(SemaphoreSlim) +Plcexposed to test project viaInternalsVisibleToso PR 64's Read/Write can stack on the same single-connection serialization per S7netplus convention.Validation
S7DriverScaffoldTests)dotnet build ZB.MOM.WW.OtOpcUa.slnx: 0 errorsScope boundaries
ITagDiscovery/IReadable/IWritable/ISubscribable/IHostConnectivityProbedeliberately NOT in this PR — they depend on the S7 address parser (PR 63) and land in PRs 64-65.Test plan