control two ur10e arms separately on the same machine
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 ?
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...