11:29, EEST
October 19, 2018
Hey Guys,
I am a student and currently doing my Master Thesis , as i am pretty new to OPC UA and i have few questions about the information modelling concept. I am working right now on modeling the data that need to be exposed via OPC UA server.my question at this point is , If i have an object or a variable named as “Errors”. and for that variable , there could be six possible boolean values for Errors , over length-front,over length-back, over length-left,over length-right,,over height,´and overweight and if any error occur, the bool value will be true , lets say if component is overweight, and over height, it will send the value true, and “Error” node should represent it that there are two errors at the moment. .. How exactly should i model it? .. Should i model “Error” as an object and the possible errors(over length,overweight ..etc) should be made its children with HasComponent reference? , or shouid i Model “Error” as a Variable node and possible errors (over length,overweight ..etc) should be its children with HasProperty Reference? In my Opinion the possible errors (over length,overweight ..etc) should not be the children of “Error” node because they are just the possible values of “Error” node,,.may be “error ” node could be a variable with a structure data type, and in that structure i can write the possible error values ? i am confused about it .Can some one please help me in that. and how it should be done while building the OPC UA server,
Many Thanks
Talha
15:48, EEST
April 17, 2013
Hi,
It seems the question is basically how to model an application specific Error code.
The OPC UA specification contains datatype OptionSet which represents a bit mask. In principle, your error variable corresponds quite nicely to a bitmask with different bits representing certain error condition. Please see the specification part 3 for an explanation about OptionSet datatype.
This being said, the OptionSet datatype is not very widely used and although theoretically the best option, it might not be most convenient in practice.
Other good option would be to model the error variable as an OPC UA structure, as you already mentioned also yourself. It’s also allowed to model a variable which has a structured data type and also expose structure fields as sub-variables of that main variable. An example of this approach is the ServerStatus node i=2256 which is available in all OPC UA servers.
Let us know in case of further questions or issues.
12:20, EET
October 19, 2018
Hey Heikki ,
Thanks alot for ur rapid response, i really appreciate for your help, I have a question regarding the Modelling Rules. If i create some variables in an ObjectType as the Children of that ObjectType, and i want to make these variables having Optional Modelling Rule , How can i expose them in an Instance ? ,I am trying it in server , when i create an Instance of that ObjectType in server , then UaExpert client is unable to browse those variables whose Modelling Rule was optional in ObjectType , I want actually , that the client can also see and browse those variables of Instance who had modelling rule optional in ObjectType. How can we do that , can anyone help me please ? What i read from the Book is that If we make an InstanceDeclaration with Optional Modelling Rule. then each instance may have such a counterpart ,but it is not required that each instance hast such a counterpart.,
i will be greatfull if anyone can help,
Many Thanks,
14:48, EET
April 17, 2013
Hi,
Only nodes with ModellingRule Mandatory are created by default. You can configure which optional nodes should be created using the NodeBuilder.
Please see the server tutorial document and chapter “7.3.2 Conditions” which shows an example code listing on how to instantiate nodes with ModellingRule Optional.
13:54, EET
October 19, 2018
Hello Heikki ,
Thank you very much for your help, i wanted to ask that how can we Map the data from client to the system in which client is integrated, like if a client is integrated in an application and that client is reading data from an OPC UA server, once client has read all the required data , then this data should be mapped to that application where the client was integrated, so that the system could data from the client and do some processing on it and then wanna send a response to other system where server is integrated.
Many Thanks ,
Talha
15:28, EET
April 17, 2013
Hi Talha,
This is exactly the ‘application level’ processing which you must figure out when using the Prosys OPC UA Java SDK.
The Java SDK takes care of all the OPC UA communication details, so you don’t have to. But you’ll have to know what you want to do with the data and how it should be mapped to your existing application.
If you had some specific issue or question that I missed, please let me know.
Most Users Ever Online: 1919
Currently Online:
28 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: 737
Moderators: 7
Admins: 1
Forum Stats:
Groups: 3
Forums: 15
Topics: 1524
Posts: 6450
Newest Members:
fannielima, kristiewinkle8, rust, christamcdowall, redaahern07571, nigelbdhmp, travistimmons, AnnelCib, dalenegettinger, howardkennerleyModerators: Jouni Aro: 1026, Pyry: 1, Petri: 0, Bjarne Boström: 1026, Jimmy Ni: 26, Matti Siponen: 346, Lusetti: 0
Administrators: admin: 1