control two ur10e arms separately on the same machine

asked 2022-12-02 09:45:41 -0500

awhichi gravatar image

hello, i am trying at the moment to control two ur10e arms with ros2. i am using ubuntu22.04 and ros2 humble on a virtual machine.

in order to achieve the control i followed these two approches :

1st approach :

i run the ur_driver with the ip address of the first robot :

ros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur10e robot_ip:=192.168.102.210 launch_rviz:=false initial_joint_controller:=joint_trajectory_controller

then i run the program that has the eternal control on the robot side and i get this on the terminal :

**[ur_ros2_control_node-1] [INFO] [1669992433.027872458] [UR_Client_Library]: Robot requested program then on a second console i run the ur driver with the ip of the second robot :

ros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur10e robot_ip:=192.168.102.209 launch_rviz:=false initial_joint_controller:=joint_trajectory_controller

then i run the program that has the eternal control on the robot side and i get this on the terminal :

[ur_ros2_control_node-1] terminate called after throwing an instance of 'std::system_error' [ur_ros2_control_node-1] what(): Failed to bind socket for port 50002 to address. Reason: Address already in use: Address already in use

2nd approach

i basically follow the same steps except running the ur_driver with the ip of the second robot in a different ros_domain

export ROS_DOMAIN_ID=2 and then i run the driver. however the same issue still persist.

my Question here is should i change the script_sender_port on both the ur10e robot side and my machine side ? if so which ports i can use ? also why couldn't using the different ros domain fix the issue ?

edit retag flag offensive close merge delete

Comments

Yes, there are a couple of issues regarding multi-robot setup at the moment. See https://github.com/UniversalRobots/Un..., https://github.com/UniversalRobots/Un...

fexner gravatar image fexner  ( 2022-12-05 01:44:50 -0500 )edit