-
Notifications
You must be signed in to change notification settings - Fork 313
Open
Description
Affected ROS2 Driver version(s)
humble
Used ROS distribution.
Humble
Which combination of platform is the ROS driver running on.
Ubuntu Linux with standard kernel
How is the UR ROS2 Driver installed.
Build both the ROS driver and UR Client Library from source
Which robot platform is the driver connected to.
Real robot
Robot SW / URSim version(s)
Polyscope X - 10.11.0
How is the ROS driver used.
Headless without using the teach pendant
Issue details
Summary
Configuring Robotiq Hardware Interface causes Pipeline producer overflowed! <RTDE Data Pipeline>
Issue details
I am launching a ROS2 Control Controller Manager node that starts two Hardware Interfaces (UR and Robotiq).
- The UR hardware interface starts the socat server and client and sets the tool voltage properly.
- The UR hardware interface is configured and activated properly.
- Then the Robotiq hardware interface tries sending deactivate/activate commands through the serial interface.
This is when I get flooded with the overflow errors:
Pipeline producer overflowed! <RTDE Data Pipeline>and the RTDE with the whole reverse port connection drops.
My ur_robot (and hw interface) parameters are as follows:
<xacro:ur_robot
name="${name}"
tf_prefix="${tf_prefix}"
parent="${parent}"
robot_ip="${robot_ip}"
use_fake_hardware="${use_fake_hardware}"
fake_sensor_commands="${use_fake_hardware}"
headless_mode="true"
initial_positions="${xacro.load_yaml(initial_positions_file)}"
joint_limits_parameters_file="${joint_limits_file}"
kinematics_parameters_file="${kinematics_file}"
physical_parameters_file="$(find ur_description)/config/${robot}/physical_parameters.yaml"
visual_parameters_file="$(find ur_description)/config/${robot}/visual_parameters.yaml"
use_tool_communication="true"
tool_voltage="24"
tool_baud_rate="115200"
tool_parity="0"
tool_stop_bits="1"
tool_rx_idle_chars="1.5"
tool_tx_idle_chars="3.5"
tool_device_name="${tool_device_name}"
script_filename="$(find ur_client_library)/resources/external_control.urscript"
input_recipe_filename="$(find ur_robot_driver)/resources/rtde_input_recipe.txt"
output_recipe_filename="$(find ur_robot_driver)/resources/rtde_output_recipe.txt">
<xacro:insert_block name="origin" />
</xacro:ur_robot>Steps to Reproduce
- Create a URDF that starts the UR hardware interface and the Robotiq hardware interface (use
ur_robotmacro and therobotiq_grippermacro) - Use the proper parameters to establish the link
- Launch the controller manager
- Activate the UR hardware interface first
- Activate the Robotiq hardware interface secondSwitching the order of the hardware interfaces does not work because at that point there is no COM port
socatlink.
Expected Behavior
Both hardware interfaces working properly.
Actual Behavior
Pipeline producer overflowed! <RTDE Data Pipeline>and Reverse Port connection dropping.
Workaround Suggestion
The only way I have been able to solve the issue with is to:
- Configure and Activate the UR hardware interface
- Deactivate and Unconfigure the UR hardware interface
- Configure and Activate the Robotiq hardware interface
- Configure and Activate the UR hardware interface
Relevant log output
[ur_ros2_control_node-6] [INFO] [1765816332.545433707] [resource_manager]: 'configure' hardware 'manipulator'
[ur_ros2_control_node-6] [INFO] [1765816332.545499330] [URPositionHardwareInterface]: Starting ...please wait...
[ur_ros2_control_node-6] [INFO] [1765816332.545561375] [URPositionHardwareInterface]: Initializing driver...
[ur_ros2_control_node-6] [INFO] [1765816332.546643045] [UR_Client_Library:]: SCHED_FIFO OK, priority 99
[ur_ros2_control_node-6] [INFO] [1765816332.548147317] [UR_Client_Library:]: Negotiated RTDE protocol version to 2.
[ur_ros2_control_node-6] [INFO] [1765816332.548520047] [UR_Client_Library:]: Setting up RTDE communication with frequency 500.000000
[ur_ros2_control_node-6] [INFO] [1765816333.596684573] [UR_Client_Library:]: Starting primary client pipeline
[ur_ros2_control_node-6] [INFO] [1765816333.720104004] [URPositionHardwareInterface]: Calibration checksum: 'calib_221927923814618764'.
[ur_ros2_control_node-6] [INFO] [1765816333.720141647] [URPositionHardwareInterface]: Calibration checked successfully.
[ur_ros2_control_node-6] [INFO] [1765816333.720190490] [URPositionHardwareInterface]: System successfully started!
[ur_ros2_control_node-6] [INFO] [1765816333.720205108] [resource_manager]: Successful 'configure' of hardware 'manipulator'
[ur_ros2_control_node-6] [INFO] [1765816333.720240091] [resource_manager]: 'activate' hardware 'manipulator'
[ur_ros2_control_node-6] [INFO] [1765816333.720244563] [URPositionHardwareInterface]: Activating HW interface
[ur_ros2_control_node-6] [INFO] [1765816333.720247497] [resource_manager]: Successful 'activate' of hardware 'manipulator'
[ur_ros2_control_node-6] [INFO] [1765816333.720577863] [UR_Client_Library:]: SCHED_FIFO OK, priority 99
[ros2-7] Successfully set manipulator to state lifecycle_msgs.msg.State(id=3, label='active')
[ur_ros2_control_node-6] [INFO] [1765816333.747962165] [UR_Client_Library:]: Robot connected to reverse interface. Ready to receive control commands.
[INFO] [ros2-7]: process has finished cleanly [pid 363074]
[INFO] [ros2-8]: process started with pid [363242]
[ur_ros2_control_node-6] [INFO] [1765816334.628838694] [resource_manager]: 'configure' hardware 'tool'
[ur_ros2_control_node-6] [INFO] [1765816334.628964913] [resource_manager]: Successful 'configure' of hardware 'tool'
[ur_ros2_control_node-6] [INFO] [1765816334.628984121] [resource_manager]: 'activate' hardware 'tool'
[ur_ros2_control_node-6] [INFO] [1765816334.628995477] [DefaultDriver]: Deactivate...
[ur_ros2_control_node-6] [ERROR] [1765816334.755522722] [UR_Client_Library:]: Pipeline producer overflowed! <RTDE Data Pipeline>
(...)
[ur_ros2_control_node-6] [ERROR] [1765816335.631499571] [UR_Client_Library:]: Pipeline producer overflowed! <RTDE Data Pipeline>
[ur_ros2_control_node-6] [INFO] [1765816335.631633299] [UR_Client_Library:]: Connection to reverse interface dropped.
[ur_ros2_control_node-6] [ERROR] [1765816335.633496646] [UR_Client_Library:]: Pipeline producer overflowed! <RTDE Data Pipeline>
(...)
[ur_ros2_control_node-6] [ERROR] [1765816336.855409299] [UR_Client_Library:]: Pipeline producer overflowed! <RTDE Data Pipeline>
[ur_ros2_control_node-6] [INFO] [1765816336.855539967] [RobotiqGripperHardwareInterface]: Robotiq Gripper successfully activated!
[ur_ros2_control_node-6] [INFO] [1765816336.855584517] [resource_manager]: Successful 'activate' of hardware 'tool'Accept Public visibility
- I agree to make this context public
Metadata
Metadata
Assignees
Labels
No labels