Tag Subscription rates

Hi there, what kind of rate do you suggest for e.g. control buttons (e.g. run motor) and real time indications?
Is less than 1000ms too fast (e.g. 500ms 250ms)?

I recommend 100ms. Unfortunately, to get that kind of seamless UI performance, you usually cannot use a normal OPC driver. I am a bit biased, but your question was the spur for the existence of my Ethernet/IP module:

@pturmel sorry you mean 100ms or 1000ms?

One hundred milliseconds. One-tenth of a second. That is the performance boundary where human operators are more likely to think a button is “instant” than not. Real pushbuttons wired to real PLC remote I/O typically have latencies in the tens of milliseconds or less. You have to get close to that to “feel” like a real button.

1 Like

:joy: Sorry I just had to make sure I got it right. wow so with that module that you’ve suggested, we can set the rate to 100ms wow
so would 1000ms be a kind of a recommended rate for standard Ignition OPC?

It’s a good place to start, which is why it’s the default.

You can go faster but it depends on the device and how many tags you’re asking for at that rate.

1 Like

Yes, for data in Class 1 Ethernet/IP packets (I/O slave, I/O master, or Producer/Consumer tags). But you wouldn’t use the Leased/Driven rate, but the main Rate. (Leased doesn’t make sense for a continuous flow of UDP packets.) You would set it to match the RPI in the connection.

Hi Kevin, thank you the reason I asked is because I wanted to make sure my understanding is correct with this. (i think I’ve asked something similar before on other forum)
I have total Request Count of 68
1st scenario (all on 1000ms)

2nd (some on 300 ms and 1000ms)

I have my machine stop start control button on the fast update group that I swap between 1000 and 300.

so performance wise are my tags responding faster when it is in 300ms or 1000ms?


They should be responding faster when using 300ms.

Hi Kevin but its Mean Response time is faster on 1000ms when we have 1000 and 300 ms (6.91ms) ? but the mean Response time is faster on both when compared to everything on 1000ms

Correct me if I am wrong, but wouldn’t you also improve responsiveness by spreading the reads across scan classes? Even if they trigger at the same frequency?