Avatar

Please consider registering
guest

sp_LogInOut Log In sp_Registration Register

Register | Lost password?
Advanced Search

— Forum Scope —




— Match —





— Forum Options —





Minimum search word length is 3 characters - maximum search word length is 84 characters

sp_Feed Topic RSS sp_TopicIcon
Browse through nodes at once using OPC UA client SDK
May 13, 2013
7:27, EEST
Avatar
cto
Member
Members
Forum Posts: 15
Member Since:
March 22, 2013
sp_UserOfflineSmall Offline

Hi ,

I am new bee in OPC UA. Could you please let me know how can I browse through all the server nodes / list all the nodes at once , using your OPC UA Java client SDK.

Thanks in advance.

May 13, 2013
9:15, EEST
Avatar
Jouni Aro
Moderator
Moderators
Forum Posts: 1026
Member Since:
December 21, 2011
sp_UserOfflineSmall Offline

Since the OPC UA address space is a “free mesh” type of structure, it is not feasible to try to browse all nodes. It is difficult for the client to know when all the nodes have been browsed. Also, when you just follow the references between the nodes, you may find loops in the address space.

In practice, though, it may be safe to only follow all hierarchical references forward recursively, and consider that all nodes are found when you have got to the end of each “browse path” like this. Note that you may still find the same node(s) several times with this strategy.

May 14, 2013
8:53, EEST
Avatar
cto
Member
Members
Forum Posts: 15
Member Since:
March 22, 2013
sp_UserOfflineSmall Offline

Jouni Aro said

Since the OPC UA address space is a “free mesh” type of structure, it is not feasible to try to browse all nodes. It is difficult for the client to know when all the nodes have been browsed. Also, when you just follow the references between the nodes, you may find loops in the address space.

In practice, though, it may be safe to only follow all hierarchical references forward recursively, and consider that all nodes are found when you have got to the end of each “browse path” like this. Note that you may still find the same node(s) several times with this strategy.

Thanks Jouni. So this means user has to recursively browse through each and every nodes in an address space , by providing each and every node id. This will be an interactive activity. We cannot get all the nodes at one go.

May 14, 2013
9:34, EEST
Avatar
cguerin
Vienna, Austria
Member
Members
Forum Posts: 20
Member Since:
April 9, 2013
sp_UserOfflineSmall Offline

This function could be hidden from users but done on the client side.
For example KEPServer OPC UA Driver has a “add branch” that add all the children nodes from a selected root node…
In fact it just Browse the root node and then Browse the forward References of that root node and then browse the forward References of that one and so on.
It is not so efficient but its the only way to browse a full AddressSpace with OPC UA…

May 14, 2013
11:50, EEST
Avatar
Jouni Aro
Moderator
Moderators
Forum Posts: 1026
Member Since:
December 21, 2011
sp_UserOfflineSmall Offline

Yes, it is of course possible to do this programmatically by following the hierarchical forward references and “collecting” all the nodes that are found. But it is also necessary to detect loops (i.e. if a node is already collected, stop there).

We might consider such a method to the client SDK as well.

Forum Timezone: Europe/Helsinki

Most Users Ever Online: 1919

Currently Online:
26 Guest(s)

Currently Browsing this Page:
1 Guest(s)

Top Posters:

Heikki Tahvanainen: 402

hbrackel: 144

rocket science: 88

pramanj: 86

Francesco Zambon: 83

Ibrahim: 78

Sabari: 62

kapsl: 57

gjevremovic: 49

Xavier: 43

Member Stats:

Guest Posters: 0

Members: 735

Moderators: 7

Admins: 1

Forum Stats:

Groups: 3

Forums: 15

Topics: 1523

Posts: 6449

Newest Members:

rust, christamcdowall, redaahern07571, nigelbdhmp, travistimmons, AnnelCib, dalenegettinger, howardkennerley, Thomassnism, biancacraft16

Moderators: Jouni Aro: 1026, Pyry: 1, Petri: 0, Bjarne Boström: 1026, Jimmy Ni: 26, Matti Siponen: 346, Lusetti: 0

Administrators: admin: 1