UE5.2 OPC UA Client Plugin Release

We developed an OPC UA client plugin for Unreal Engine 5.2

We created a basic widget.
We can create a 3D when we get enough interest.

Current features

  • Cross platform (Currently Windows and Android. We can support other platforms with request.)
  • Async read and write (boolean, byte, sbyte, float, double, int16/32/64, string)
  • Read timestamps, node name, node description
  • Historical data access
  • Multiple server connections
  • Secure connection (username, signed, encrypted) with MBedTLS
  • Runtime self-signed certificate creation with OpenSSL (not temporary certificate)
  • Fully exposed blueprint function library
  • Our plugin exposes all values as Unreal variables. So, you can send them to other services with other client or server integrations.

Road Map:

  • PubSub
  • Local Discovery Server (There is an exprimental support)
  • HTTP/2 and /3 Server Integration

Limitations:

  • Our plugin doesn’t support opc.https protocol.
    (This HTTPS connection is completely different than standart HTTP/S which you can send GET and POST requests. You can’t send API requests to this HTTPS. Companies use opc.https to publish values outside of their local network. But IT-OT and cyber security teams block this because security reasons. You have to use VPN or Zero Trust solutions to read them. If you have one these access protocols, you can use TCP as well.)

What is OPC UA ?
First of all, it has absolutely nothing to do with game related projects. (Maybe some gamification projects, but… maybe.)
OPC UA is a communication (if you enable historical access feature you can read previous values and use it as a somekind of database, too) technology to access deployed PLCs (programmable logic controllers such as Siemens S7 and Schneider) on factories.

Sample Use Cases
Factories and industrial automation service providers use this technology to create SCADA (industrial automation dashboards) projects.
For example,

  • Your customer has a casting or heat treatment machine in their factory. They want from you to develope a program to read heat values in real time.
  • Training simulations based on real life datas.
  • Remote manufacturing. (Control a every PLC connected device from Unreal Engine such as real/physical industrial robots, conveyor belts, cooling units and etc. Because it has write feature)
  • Industrial HMI projects.
  • You can send OPC values to GPT projects to create periodic summaries.
    (Some companies forbided GPT usages because information privacy reasons but there are some enterprise GPT solutions for bussiness like Microsoft Cognitive Services.)

Current Solutions

  • Bridge Based Solutions:

    • Some industrial software development companies offers bridge tools to publish OPC values as ODBC, MQTT, Kafka and REST/SOAP APIs but these solutions has some problems.

    • Factories have to buy these softwares. This creates additional cost for your customers.

    • IT and CyberSecurity teams consider OPC datas as critical datas. So, additional software installation attemps will slow down your project publishing speed at customer.

    • If you are not a vendor of this kind of softwares, suggesting other products as dependencies can be a bad practice for B2B deals.

  • SDK Based Solutions:

    • There are some C/C++ libraries for creating OPC UA clients but even if you use free open source ones, you have to develope your plugin by yourself. Making a simple client is not that hard but fully featured digital twin projects requires secure connections.

Our Plan
We don’t consider to share it on marketplace for feasibility reasons (updates, supports and target market) but if there will be enough requests, we can make subscription based product.

So, is there anyone who might be interested ?
You can contact me with my LinkedIn profile which I share on top.

1 Like

I am interested. I research VR/AR at an University and look for a way to connect Unreal to Siemens Stuff. May I contribute somehow?

Let’s talk about it from LinkedIn, can you send me a message from there ? you can find my profile from URL which I shared in my post.

Can I learn your code to achieve my project requirements,looking forward to your reply~

Unfortunately no. We don’t offer any tutorial about developing such plugin.