Professional OPC
Development Tools

logos

Browsing issue with KepServer

More
16 Jun 2017 13:48 #5259 by m.baumgartner
Ok. We're building a monitoring system based on various protocols such as OPC-DA, OPC-UA and other specific protocols to our vertical market (manufacturing).

We want the end user to be able to configure which data he wants to include in it's monitoring. In the case of OPC that would mean choosing among all the OPC tags available. Once configure, our software can then boot, subscribe to those tags (thanks to quickOPC) and wait for them to change in order to take business actions accordingly.

We persist configurations on our side (database) in the form of the server URL (as a string) + the NodeID expanded text (as a string) as we believe it is those 2 together that will enable our software to subscribe to the correct data.
As of today, we extract the server URL from that browse dialog operation. If the user has to input the server url manually, it means he knows it, but our software don't. How are we going to subscribe to tags on this server if we don't know it's address?

Are we missing something here?

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

More
16 Jun 2017 13:41 #5258 by support
I know that KepserverEX requires extra steps in order to be discoverable by LDS. I do not consider it "bad" in terms of OPC UA, but what precisely the specs tell about this part I am not sure at this moment.

But it is then clear what happens in UABrowseDialog. The behavior is by design. The information in ApplicationElement comes from the discovery. If no discovery is being performed (either if the endpoint is passed to the dialog as an Input, or if the user enter it manually), then there is no ApplicationElement.

Can you describe the use case - i.e. is there any critical piece of information missing that would not allow your program to function as intended, if ApplicationElement is not available?

Thank you

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

More
16 Jun 2017 13:32 #5257 by m.baumgartner
Good guess!

We need to manually input the server URL in the dialog. I think it's because KepServer does not support OPC UA automatic discovery by default. Would that be the root of the issue?

You can get more details on this page www.kepware.com/en-us/support/resource-library/connectivity-guides/opc-ua/ : in section 5 (page 15)

Did we miss something while configuring KepServer? As an OPC-UA expert, do you feel like it's a "normal behavior" for an OPC UA Server to not be available for discovery by default?

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

More
16 Jun 2017 13:15 #5256 by support
5. Is the user actually selecting the server by browsing for it (a list of servers on a host = information coming from local discovery server), or is he/she entering the server URL manually into the dialog?

Thank you

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

More
16 Jun 2017 13:15 #5255 by support
5. Is the user actually selecting the server by browsing for it (a list of servers on a host = information coming from local discovery server), or is he/she entering the server URL manually into the dialog?

Thank you

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

More
16 Jun 2017 13:05 #5254 by m.baumgartner
4. Yes, we leave that as default.

the only thing we set before invoking the dialog is the following:

BrowseDialog.Mode.SelectElementType := UAElementType_Node;

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

More
16 Jun 2017 12:45 #5253 by support
Thank you. One more question please:

4. What do you pass to UABrowseDialog.Mode.AnchorElement? Is it at default, or do you set it to a specific value (and if so, which value)? Maybe post here the piece of code around the dialog invocation.

Best regards

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

More
16 Jun 2017 12:21 #5252 by m.baumgartner
1. 'BrowseDialog.Outputs.SelectionElements.Item.ApplicationElement.DiscoveryUriString'

2. Yes via 'BrowseDialog.Mode.MultiSelect := true;'

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

More
16 Jun 2017 11:04 #5251 by support
Hello. This should work. I have some questions:

1. Where precisely are you taking it from? Is it UABrowseDialog.Outputs.CurrentNodeElement.ApplicationELement ?

2. Is the dialog in the MultiSelect mode?

3. A video/animation may help but it depends on answers on 1 and 2.

Best regards

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

More
16 Jun 2017 09:29 #5249 by m.baumgartner
Hey,

We're using the Generic OPC-UA Browsing Dialog and it's working as expected with the sample server of opclabs available online. However we can't make it work with KepServer 6.1 as when we validate the form, the Element.ApplicationElement is nil (delphi).

NodeElement seems fine though. Is this a known issue? Is this due to kepserver or quickopc?


Thank you.

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

Moderators: support
Time to create page: 0.290 seconds

      

 Recommend this on Google