Connection between a universal robots robot (UR20) and a B&R plc via ETH/IP

I would like to remotely control the robot using the PLC so I don’t have to rely on the robot’s own screen and can perform the necessary maneuvers.

I tried connecting an X20 IF 10D1-1 module and an X20 BC 1083 to establish the connection, but I couldn’t find anything useful.

Hi @Eliat ,
Welcome to our B&R Community!
Did you make any search on their website? Universal Robots | Support Site
Ethernet/IP is a standard communication so I see they have information about hat configuration in general Ethernet IP guide - 18712 - collaborative robots support.

I have found some guidelines from AI, but I don’t know the UR20 robot so you have to double check that:

Configure the UR20 Robot:

  1. The robot must be prepared to accept incoming EtherNet/IP connections from the PLC.
  2. Enable EtherNet/IP: On the PolyScope teach pendant, navigate to Installation > Fieldbus > EtherNet/IP and toggle it to Enabled.
  3. Set Static IP: Ensure the robot has a fixed IP address that is on the same subnet as the B&R PLC.
  4. Safety Watchdog: Configure the “Action on loss of connection” (e.g., Stop, Pause, or None). By default, the robot may stop if communication is lost to prevent damage.
  5. Save Installation: You must save the installation file for these changes to persist after a reboot.Configure the B&R PLC (Automation Studio)

The B&R PLC acts as the scanner to manage the data exchange.

  1. Add Hardware: In the Physical View of Automation Studio, add the X20IF10D1-1 interface module to your controller configuration.

  2. Import EDS File: Download the Electronic Data Sheet (EDS) file from the Universal Robots support site and import it into the DTM Catalog in Automation Studio.

  3. Setup Connection:

  • Add the UR20 as a device under the X20IF10D1-1 master.

  • Enter the Robot’s IP Address in the device settings.

  • Set the Connection Type to Unicast (point-to-point), as this is typically required for UR communication.

  1. Define I/O Mapping: Map the robot’s registers (Input/Output instances) to PLC variables. UR typically uses instance 100 for Inputs (Robot to PLC) and 112 for Outputs (PLC to Robot)

=================
I see your post on their website too Comunication with an B&R PLC - Technical Questions / Robot Communication - Universal Robots Forum we will see

=================
I did small test and as you see below I can add under X20IF10D1-1 Universal Robot V1.1 as DTM generic Ethernet/IP device:

First you have to go to Tools > Manage 3rd-Party Devices…

Thanks
Ciao
Valerio

Hi @valerio.manenti ,

Yes, I did a thorough search and haven’t found anything useful yet.

The manual you linked earlier isn’t for the PLC I use. Besides that, I’m trying to find the file you showed me in the last image, but the problem is that the .eds extension is for Rockwell Automation only.

I haven’t been able to find the file on the UR page, but I’m still looking for a way to connect to it, but i found that they have a section that links to URCaps SDK, which is the tool for developing plugins for graphical programming interface PolyScope.

Thanks

Eliat

Hi @Eliat ,
I don’t think Universal Robot has released one EDS file specifically for each PLC brand (AB, Siemens, B&R, Mitsubishi,… ).
In our case we add the robot just as generic Ethernet/IP device and if you check on AB settings we have common configuration:

B&R

AB:

The missing part are the user data types to organize in more readable way all information:

So far in I/O mapping you have 480 Input variables (USINT type) and 224 Output variables (USINT type)

In AB they provide, I guess, these data type (one for input and one for output):

then in the code in their task you see they call couple of memcopy:

In our case you have to define (I hope with their help) those 2 structure types.

I’m sure their Support will provide the information you need.

From our side I see you have selected the correct HW (X20 IF 10D1-1 and X20 BC 1083).
Ciao
Valerio

Hi @valerio.manenti ,

Thanks to your help I was able to solve it.

Eliat