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.
- Forum
- Discussions
- QuickOPC-UA in .NET
- Reading, Writing, Subscriptions
- Read, Write and Subscribe to data change of complex data types
Read, Write and Subscribe to data change of complex data types
In your original post title, you used a term "(complex) data type".
That is, however, at least n OPC UA terms, something very different from a (custom/complex) object.
With great simplification, a complex object is basically a hierarchy nodes. Each of these nodes is also accessible separately, and when it is a variable, it has a value.
Values themselves can be simple (such as integers, floats, strings, arrays), or complex ("structures", as you have put it).
Complex values can then be of types that are pre-defined in OPC UA spec, or custom.
So, saying a "complex data type", you are talking about a situation where one variable already has a type that it itself complex.
QuickOPC definitely supports complex *objects*.
QuickOPC also supports those pre-defined complex data types that come from OPC UA spec itself and are needed to make the Data Access and Alarms&Conditions work.
What QuickOPC does *not* currently support are custom data types.
Regards
Please Log in or Create an account to join the conversation.
- vinaypatel.ce@gmail.com
- Topic Author
- Offline
- Premium Member
- Posts: 8
- Thank you received: 0
I was going through documents and on page opclabs.doc-that.com/files/onlinedocs/QuickOpc/2016.2/User%2...ta%20(Classic%20and%20UA).html, and I found Live Mapping concept. It mentioned to work for classic and UA both. For UA I do not find any example though.
Would you please help me to understand how Live Mapping functionality work with UA with example of read, write and monitor value changes for single complex object and array of complex objects?
Does it support custom complex objects?
Please Log in or Create an account to join the conversation.
I am sorry I cannot give you better news.
Best regards
Please Log in or Create an account to join the conversation.
- vinaypatel.ce@gmail.com
- Topic Author
- Offline
- Premium Member
- Posts: 8
- Thank you received: 0
So, there is no direct provision in QuickOPC to handle custom complex data types. I was doing some tests using QuickOPC library with sample server opcua.demo-this.com:51211/UA/SampleServer. I found an array of object node at browse path "[ObjectsFolder]/Data.Static.Array.StructureValue". I tried to ready it in my demo application and it is returning bytes array. Please refer attachment for visualization.
Again, is there any straight way to get it in proper object or any way to convert bytes array to object array? Same questions exist for single object.
If there is no an easy way to get or convert bytes to object through QuickOPC, What you suggest as an alternate approach to handle complex types and array of complex types?
Please Log in or Create an account to join the conversation.
The short answer is that unfortunately, complex data types are not yet supported.
A bit more elaborated answer is that 1) there is a partial/limited support for complex data types predefined in the OPC UA specifications (*not* custom data types): They will be returned to you as types from OPC UA .NET stack, and b) with extra effort, it may also be possible to pack/unpack other complex data types, using an ExtensionObject. See a related discussion here: www.opclabs.com/forum/ua-reading-writing-subscriptions/2029-opc-ua-extensionobject?start=0 . None of this is documented/supported and will never be (because when we eventually get to provide support for custom complex data types, it will be implemented very differently).
Best regards
Please Log in or Create an account to join the conversation.
- vinaypatel.ce@gmail.com
- Topic Author
- Offline
- Premium Member
- Posts: 8
- Thank you received: 0
opclabs.doc-that.com/files/onlinedocs/QuickOpc/Latest/User%2...s%20of%20OPC%20UA%20Nodes.html
opclabs.doc-that.com/files/onlinedocs/QuickOpc/Latest/User%2...s%20of%20OPC%20UA%20Nodes.html
opclabs.doc-that.com/files/onlinedocs/QuickOpc/Latest/User%2...%20UA%20Monitored%20Items.html
Please Log in or Create an account to join the conversation.
- Forum
- Discussions
- QuickOPC-UA in .NET
- Reading, Writing, Subscriptions
- Read, Write and Subscribe to data change of complex data types