XML-RPC (XML Remote Procedure Call) is a protocol used to facilitate communication between a Universal Robot (UR) controller and external applications via HTTP, using XML to encode calls. This method is essential for integrating UR robots with remote systems to execute procedures.
Key Features
- Remote Method Invocation: Allows remote execution of commands from an external program.
- Ease of Integration: Uses widely supported XML and HTTP protocols.
- Language Support: Examples provided in Python and C++.
XML-RPC Integration
In the context of XML-RPC communication with Universal Robots, the robot acts as the client. It sends requests to an external XML-RPC server, which processes these requests and returns the necessary responses. This setup allows the robot to invoke remote procedures, such as retrieving the next target pose for movement. The server can be implemented using various programming languages, with examples provided for Python and C++.
XML-RPC is an interface that is not an UR specific interface. This interface is mainly used to execute intensive calculations on a remote server. One common example would be the calculation for the next pick pose with a vision system. Basically, with XMLRPC you can make a call to a published method on a different machine. On this machine a XMLRPC Server is running and publishes selected functions/methods that then are called from a robot program via UR Script.