OPC Unified Architecture
Has anyone worked with OPC Unified Architecture protocol (iot/machine to machine communication protocol for industrial automation)?
If so, how did you communicate with it?
Has anyone worked with OPC Unified Architecture protocol (iot/machine to machine communication protocol for industrial automation)?
If so, how did you communicate with it?
Hey Eduard,
The code I sent you, which communicates with OPC UA Server is example for binary protocol (opc.tcp://Server). However, as a new version of old OPC, focus was to make old OPC more available to new trends. Therefore, by standard, each OPC UA server should be able to communicate also as a web service (http://Server). However, I could not find much of the OPC UA servers that offer Web Service capability. Maybe some commercial implementations.
OPC UA is organized similarly to Service Oriented Architecture (SOA) Standard,
with a secure channel.
OPC UA Java Library that I use in my PoC implementation has whole stack implemented. It connects to the OPC UA Server, downloads certificates required for communication, and creates the secure channel to communicate with the server.
There are two main messages: Browse Request und Read Service Request.
The data on OPC UA server are organized in form of a tree, where every node has different types; metadata, attribute, variable, etc. Read Service Request is very sensitive about node types.
I used https://github.com/OPCFoundation/UA-Java-Legacy repository as a basis to build Java Business Host, but this repo is not maintained, so if there are some newer versions of the standard, this repository might not be up to date anymore.
Thanks, Aleksandar!
So HTTPS/WebServices/WebSockets are not widely supported?
I was just reading the standard spec and it was kind of implying that HTTPS or WebSockets are the way.
What I saw from the implementations so far, binary TCP communication is somehow preferred way because it is more optimised (no bulky soap messages sent over), but in theory, standard says it should be possible.
We have several partners working on industrial sector that have mentioned that having support for OPC UA in IRIS would be great as it's becoming a de-facto stantard in their sector... I didn't dig much into technical details so far, but, based on your knowledge, would it be worthy to have it natively supported in IRIS or is using Java Business Hosts+external Java Library the better approach in this case?
Hello Jose,
Taking into account only the amount of complexity of OPC UA standard, I could imagine it might need a bit more time to have it implemented natively. I am not much experienced in COS to be able to estimate that, but I would say quicker solution is still JBH+external library.
I will work further on this (hopefully temporal) JBH solution.
We have an opportunity where our client asks also for an OPC UA connector in IRIS and I have found this post about it. Does anyone have already something like this and some links to find some more information about OPC UA ?
Thanks