DataChangeFilter on TimeStampServer

Unified Architecture topics related to OPC UA Specification, compliant behavior and any technical issues of OPC UA, like Security, Information Model, Companion Specs DI, PLCopen, ADI, ...

Moderator: Support Team

Post Reply
rom2mars
Jr. Member
Jr. Member
Posts: 4
Joined: 09 Sep 2013, 16:21

DataChangeFilter on TimeStampServer

Post by rom2mars »

Hi,

Sorry for my bad english.

On my server OPC UA I have variables OPC UA with only the TimeStampServer changes. This is normal the normal behaviour.

Is it possible from a client UA to be notified on the TimeStampServer change?

Thanks,
Best regards,
Romain

User avatar
Support Team
Hero Member
Hero Member
Posts: 3064
Joined: 18 Mar 2011, 15:09

Re: DataChangeFilter on TimeStampServer

Post by Support Team »

Hello Romain,

A DataValue in OPC UA consists of Value, SourceTimestamp, ServerTimestamp and Status.
The default setting for Data MonitoredItems in OPC UA is to send a new DataValue to the client if either Value or Status changed.

A client is able to change this behaviour by setting a DataChange filter for a Data MonitoredItem when calling CreateMonitoredItems. This filter allows to request a new DataValue if the Value, Status or SourceTimestamp changes.
See client sample code in SDK version 1.3.3 in examples\client_cpp_sdk\client_cpp_sdk.cpp line 701.

It is not possible to send a DataValue based on a ServerTimestamp change. This is not possible since it makes no sense.
The SourceTimestamp indicates the last time the value was changed. The ServerTimestamp indicates the last time the server checked for a change.
It makes sense to inform a client about a change, even if the value was changed back to the value that is known to the client. This is indicated through a change in SourceTimestamp.
To tell the client that the server checked for change but nothing was changed is nothing a client is interested in if the client works with MonitoredItems.

Best regards
Support Team

Post Reply