Status code to be associated with writing command

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
dingy
Sr. Member
Sr. Member
Posts: 14
Joined: 28 May 2013, 03:15

Status code to be associated with writing command

Post by dingy »

Hello, Support team:

I'd like to know, when an UA Client send an writing command to an UA variable, is there a specific status code associated with the writing data value?

For example, there is an UA variable that represents temperature of the real world, and it's data value is acquired from underlying system.

When an user wants to trig a temperature control command, he will send a writing request to this UA variable by updating it's data value. But at this moment, the data value of this variable will no more represent the temperature of the real world, but the expected value(setpoint) of the user.

In this case, I wonder how can we distinguish if the value of variable is acquired from the real world or is forced by the user?

If this problem can be solved with the status code, does OPC UA specification already define it for this situation?

Regards

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

Re: Status code to be associated with writing command

Post by Support Team »

Some servers may support writing not only the value but also the "quality" of a variable. Typically the variable representing the real world measurement will not be "writeble" from a client perspective. The szenario where you modify a setpoint in a controler would typically a different variable (the setpoint) that might be an additional Node below the PID controller object that represents the complete measurement device.

Best Regards
Support Team

dingy
Sr. Member
Sr. Member
Posts: 14
Joined: 28 May 2013, 03:15

Re: Status code to be associated with writing command

Post by dingy »

Hello,

I totally agree with you that the separation of the read variable and write variable is the best solution in most of the case.

But, as an acquisition gateway, our product has met some situation that the underlying system do not follow this strategy, specially for some old DCS or SCADA system.

Because our product depends on the behavior of low level system, so I wonder if there exist a status code which can mark that the current variable value is an user modified one instead of a physical world one. For example OpcUa_UncertainSubstituteValue or OpcUa_GoodLocalOverride.

Thanks

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

Re: Status code to be associated with writing command

Post by Support Team »

Even though it is in theory possible, I doubt theat you will find a server that allows over write of the status. In fact the server is the only entity that can decide if either the value was obtained from the source/process OR that the value was set by a external entity (the client). Having said that, the server should set the appropriate status for the value (in case the server supports this "feature").

Best Regards
Support Team

dingy
Sr. Member
Sr. Member
Posts: 14
Joined: 28 May 2013, 03:15

Re: Status code to be associated with writing command

Post by dingy »

Hello,

In fact, this stupid "feature" is not frequent when we communicate with the underlying system, but it does exist in some old control system (In our country, there are hundreds of device providers, and some of them are really not professional).

Anyhow, It seem that this "feature" is not the correct one, so we will not take it into account in our product.

Thanks a lot

Post Reply