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.

Mapping Custom Data Types

More
12 Jul 2023 09:06 #11903 by H64P
Replied by H64P on topic Mapping Custom Data Types
Hello,
An update of the open62541 server in combination with an update of the LWIP solved our problem. Now we can read our custom data types. You did a great job with the complex data extension. It's very convenient to read user-defined data types with just a "one-liner". Thumbs up!

Best regards.
The following user(s) said Thank You: support

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

More
11 Jul 2023 12:41 #11897 by support
Replied by support on topic Mapping Custom Data Types
Hello,

thank you for update. Actually, the "BadOutOfMemory" can be generated both on the server, or on the client. Possibly use Wireshark to make sure it is in your (embedded) server, before you start digging deeper. But yes, it is quite possible that in your embedded server you somehow truly exceed the available memory.

Best regards

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

More
11 Jul 2023 06:52 #11895 by H64P
Replied by H64P on topic Mapping Custom Data Types
Hello and thank you again for your reply.
The client reports an "OPC UA Service Result - {Bad OutOfMemory}" when I try to read a user-defined data type. So I thought it had to do with mapping or something similar.
Inpiried on your post I have tested the server on a linux system instead of the embedded hardware. Shazam - it works. Awesome how easy complex data can be handled/accesed with quickopc.

Now we have to debug why our opc server (implemented on embedded hardware with the open62541) doesn't work fine.
So far we haven't had any problems with the opc server... I keep you up to date.

Best regards.
The following user(s) said Thank You: support

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

More
07 Jul 2023 13:41 #11891 by support
Replied by support on topic Mapping Custom Data Types
Hello,

for custom data types, we do not use the mapping approach (and therefore no NodeSet2 or Types.xsd). We read the data type information from the server, and then provide the custom data types in "dynamic" form (where you e.g. need to access the properties by string names and retrieve them from a dictionary object, and not as named properties of a C# object). The whole thing is described here: opclabs.doc-that.com/files/onlinedocs/QuickOpc/Latest/User%2...omplex%20Data%20Extension.html . Example reading code: opclabs.doc-that.com/files/onlinedocs/QuickOpc/Latest/User%2...0Complex%20Data%20reading.html .

And it should work. If it doesn't (and gives BadOutOfMemoryException), something is wrong. However, the whole feature is quite complex, so there is little chance of discovering the cause without having a reproducible case that we can debug here, on our side.

Do you perhaps have a demo version of your server that can be run on a PC, or can open a port for us to access it?
(Note: Going to vacation tomorrow - any deep technical investigation need to wait for approx. 2 weeks - apologies).

One last thing: What do you actually mean by "BadOutOfMemoryException"? The name seems to be mangled somehow. Are you talking about
1) .NET exception - which is named OutOfMemoryException (and not BadOutOfMemoryException), OR
2) OPC UA status code/service result - that one is called BadOutOfMemory (i.e. also not BadOutOfMemoryException)
3) something else?

Best regards

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

More
07 Jul 2023 12:55 #11890 by H64P
Replied by H64P on topic Mapping Custom Data Types
Thanks for your reply. I'm asking primary for mapping the data types.

My issue is that the EasyUAClient.ReadValue() fails for our custom data types. The method works fine for generic data types.
When I use ReadValue() for a node with our custom data type the BadOutOfMemoryException is thrown. I expect that this is cased of the missing mapping.

Am I on the right way?

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

More
07 Jul 2023 12:30 #11889 by support
Replied by support on topic Mapping Custom Data Types
Hello.

Are you asking about object/variable types, or data types (or both)? These are quite different things in OPC UA.
Object/variable types define the structure of nodes.
Data types define mainly custom "structures" that are passed *inside* values of nodes.

Best regards

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

More
07 Jul 2023 11:59 #11888 by H64P
Hello,
does Quickopc offer the possibility of automatic mapping with NodeSet2 or Types.xsd or does the mapping for non-generic types have to be done via "live mapping"?

I am asking this because we have an OPC server with custom data types (designed by ourselves, definition files are present) and Quick OPC currently cannot handle these types due to missing mapping information.

Thanks and with the best regards.

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

Moderators: support
Time to create page: 0.064 seconds