Universal_Robots_ROS_Driver: Connection setup failed for :50002
Summary
I have two robots setup and launching two driver nodes on one PC. Launch fails on attempt to run second driver instance.
From error log message (please find at Issue details section) seems like it needs this TODO implemented: https://github.com/UniversalRobots/Universal_Robots_ROS_Driver/blob/c12e39366920b3e28ac8838200c90d2ff9425df3/ur_robot_driver/src/ur/ur_driver.cpp#L84
Versions
- ROS Driver version: commit 0bec493
- Affected Robot Software Version(s): please ask if important
- Affected Robot Hardware Version(s): please ask if important
- Robot Serial Number: please ask if important
- UR+ product(s) installed: please ask if important
- URCaps Software version(s): please ask if important
Impact
Impossible to use more then one driver instance on one PC.
Issue details
Please find driver log error message below
[ INFO] [1574698359.241920363]: Setting up RTDE communication with frequency 500.000000
[ERROR] [1574698360.273018129]: Connection setup failed for :50002
terminate called after throwing an instance of 'std::runtime_error'
what(): Could not bind to server
================================================================================REQUIRED process [green/robot/ur_hardware_interface-2] has died!
process has died [pid 20560, exit code -6, cmd /home/khassanov/Workspace/remy/after_oven_ros/devel/lib/ur_robot_driver/ur_robot_driver_node __name:=ur_hardware_interface __log:=/home/khassanov/.ros/log/9777a6be-0f90-11ea-bd6a-c485089fc0e0/green-robot-ur_hardware_interface-2.log].
log file: /home/khassanov/.ros/log/9777a6be-0f90-11ea-bd6a-c485089fc0e0/green-robot-ur_hardware_interface-2*.log
Initiating shutdown!
================================================================================
Use Case and Setup
Setup: two URSim UR5
Steps to Reproduce
- Launch 2 instances of URSim,
- Launch two instances of this package in different namespaces with IP addresses to connect to URSim instances,
- Attempting to launch second instance of robot driver will produce you the error.
Expected Behavior
One can use this driver to control a setup with multiple robots.
Actual Behavior
Second instance of driver fails with an error on launch.
Workaround Suggestion
Seems like it works if there is another mahine (possible virtual) to launch second driver instance, but I did not check. Another workaround seems possible is to build a copy of this driver with
uint32_t script_sender_port = 50003;
UPD Workaround with a node on virtual machine works for me.
About this issue
- Original URL
- State: closed
- Created 5 years ago
- Comments: 30 (11 by maintainers)
This got merged in #57, so I’m closing this.