09/14/2021
I have recently been using an OPC-DA to UA bridge so that I can read values on an OPC-DA server with an OPC-UA client.
When performing a ReadRequest for a value on the server the ReadResponse's result's statusCode returned is 0x000000c0. I believe the bridge is adding the OPC-DA quality code to the additional information bits of the StatusCode. My question is: Is this valid in OPC-UA and compliant with https://reference.opcfoundatio.....t4/7.34.1/?
I am of the understanding that it is not, as the above specification states:
"The complete list of StatusCodes is defined in OPC 10000-6. Servers shall not define their own StatusCodes."
and the complete list of status code's does not contain this status code. Additionally, according to Table 175 – StatusCode Bit Assignments, since the InfoType bits are 00, then it states "The info bits are not used and shall be set to zero." but here the info bits are no set to zero.
However, Someone that I have spoken to mentions that this is valid as the specification states:
The bottom 16 bits are bit flags that contain additional information but do not affect the meaning of the StatusCode
and so that makes the StatusCode 0x000000c0 valid since the 16 bottom bits do not affect the meaning of the StausCode and it is "only extra information you can choose to ignore." And so the OPC-DA quality code is added to provide "a precise error description without a conversion".
Would the correct behaviour also be to map the DA quality code to a UA quality code following https://reference.opcfoundatio.....rt8/A.3.2/?
Would it be possible to get some clarification on this?
Thanks in advance!
1 Guest(s)