Professional OPC
Development Tools

logos

Online Forums

Technical support is provided through Support Forums below. Anybody can view them; you need to Register/Login to our site (see links in upper right corner) in order to Post questions. You do not have to be a licensed user of our product.

Please read Rules for forum posts before reporting your issue or asking a question. OPC Labs team is actively monitoring the forums, and replies as soon as possible. Various technical information can also be found in our Knowledge Base. For your convenience, we have also assembled a Frequently Asked Questions page.

Do not use the Contact page for technical issues.

What does requestedUpdateRate really mean?

More
16 Jan 2013 21:12 #1180 by bjh
i believe that #2 is the more common interpretation / implementation. for data updating every 2 seconds, even if it is only 1% of your data, i would specify an update rate of 1000 msec or 1500 msec just to make sure that a slight timing issue wouldn't cause any data to be missed. if your other data is only changing every 12.5 or 15 seconds you will generally only be seeing that data every 12.5 or 15 seconds. keep in mind that the server's 1 second tick is not necessarily synchronized to your application's 1 second tick.

Please Log in or Create an account to join the conversation.

More
14 Jan 2013 19:04 #1172 by support
The component does not interpret the RequestedUpdateRate, it just passes it to the OPC Server, and the server should process it according to OPC specs. There is some ambiguity as to what can happen, but #4 is never correct. Most servers will do #2 or #3. Some servers will do #1, if at least the timestamp has changed (meaning that a new value has been collected, even if it's the same) - to allow for proper historizing/logging in case of values that are constant for long periods of time.
If you know upfront which items are updating fast and which are slow, you should set the RequestedUpdateRate differently for those items - that is perfectly possible, just use different instances of DAItemGroupArguments (or one instance for every item, and fill them all one by one). If you do not know this, and you must catch all updates, then your only choice is to use the lowest number of all.

Please Log in or Create an account to join the conversation.

More
14 Jan 2013 18:47 #1171 by tlaford
I call the DAItemGroupArguments() constructor and specify 15000 for the requestedUpdateRate and then use that instance in a SubscribeMultipleItems() call.

But, what does "requestedUpdateRate = 15000" really mean?

Does it mean:

Every 15 seconds data will be sent even if the data hasn't changed
Every 15 seconds data will be sent only if the data has changed
Data will be sent as soon as it changes with a minimum of 15 seconds between updates (this is essentially the same as #2)
Data will be sent as soon as it changes with a maximum of 15 seconds between updates

If 99% of my data is updating ever 12.5 seconds (or 10 seconds, or 15 seconds), but 1% of my data is updating every 2 seconds (or less) what is the best update rate setting?

Please Log in or Create an account to join the conversation.

Moderators: support
Time to create page: 0.046 seconds