Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
OPC UA in RoboDK
Is there any documentation about how to connect and interact with OPC UA signals?
We have a plugin that you can use to make RoboDK behave as an OPC-UA server or an OPC-UA client. You can follow these steps to activate it:
  1. Select Tools-Plug-Ins
  2. Select Load Plug-In
  3. Select OPC-UA
You should see an additional menu with some OPC-UA options.

Among other things, RoboDK's OPC-UA server exposes access to station parameters by using the nodes StationParameter and StationValue. You can set the station parameter you want to see or modify in StationParameter field and view/modify the value using StationValue. You can also retrieve items by name (like you can do with the API) and retrieve or update the position of robots and mechanisms.

You'll find the station parameters by right clicking the station root and selecting "Station Parameters". When you use Inputs and Outputs some IO parameters are automatically created and updated.


You may need to customize the plugin if you want to use RoboDK as an OPC-UA client (it currently retrieves the station parameters of a RoboDK server as an example). This plugin is open source and available on GitHub (it uses the OPC-UA Open62541 library).
Can you use OPC UA to:
  • Run an existing simulation program created using the GUI
  • Execute an existing program instruction created using the GUI.  What is the difference between the setJoints method in the UA interface and a MoveJ instruction?  I would like to be able to call an existing MoveJ instruction using OPC UA.
  • Execute an off-line python program?
I can modify the OPC UA server source code if needed to add a variable to control the program.  Is there an example of calling a simulation program built using the GUI from an external python program?

Users browsing this thread:
1 Guest(s)