Siemens Enhanced Driver – Understanding Subscription vs. Polling

Hi all,

I’m looking to get some insight into how the Siemens Enhanced Driver works on the backend.

We have a requirement stating that we need to use publish/subscribe (pub-sub) communication with all of our end devices. I’m trying to understand whether the new Siemens Enhanced Driver actually subscribes to data being published by the PLC, or if the driver is continuously polling the PLC for data.

In other words, is the communication model truly PLC → driver (pub-sub), or is it driver → PLC (polling)?

Any insight into how this works under the hood would be greatly appreciated.

It's actually driver<-->driver. Both sides implement OPC-UA. It's not a straight forward pub-sub though; it really depends on the purpose of the requirement. Technically, write is exposed, and there's a good chance that's what they're trying to guard against. You need to get to the heart of why the requirement is there, I'd say.

Edit: im wrong

The Siemens drivers, both legacy and enhanced, poll the PLC. Only an OPC connection to the Siemens PLC would be a subscription.

If Ignition and the PLC are on the same LAN (not WAN), there are performance advantages to polling.

A blanket prohibition on polling is unwise. Circumstances matter.

Both the legacy and enhanced Siemens drivers are polling-based.

If instead of a driver you make a direct OPC UA connection to the controller's onboard OPC UA server, like the S7-1200 and S7-1500 have, then as long as you haven't switched your Ignition Tag Group into Polled/Read mode an OPC UA Subscription is used. OPC UA Subscriptions are report-by-exception.

I wouldn't go as far as to say it's "pub-sub", which typically implies one-to-many via middleware/broker.