ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

In essence the "dual arm" aspect here is not important.

From the ROS perspective you're basically starting two instances of the same node, and need to use namespacing to avoid collisions.

From the 'error' you include it's not clear to me whether you have the namespacing configured correctly on the driver side, but if you did, then you would have to make sure that the action client config (probably MoveIt?) is aware of the namespaces / the correct topics.

You'll have to tell us more about your exact setup and configuration to be able to help you.

In essence the "dual arm" aspect here is not important.

From the ROS perspective you're basically starting two instances of the same node, and need to use namespacing to avoid collisions.

From the 'error' you include it's not clear to me whether you have the namespacing configured correctly on the driver side, but if you did, then you would have to make sure that the action client config (probably MoveIt?) is aware of the namespaces / the correct topics.

You'll have to tell us more about your exact setup and configuration to be able to help you.


Edit:

PS:I use the package "ur_modern_driver" and my ur5 version is CB3.0

and:

launch file in the "ur_bringup" package:

...

  <include file="$(find ur_bringup)/launch/ur5_left_bringup.launch">

Two things here:

  1. if you're really using the ur_bringup package, then you're not using ur_modern_driver, but the old one ur_driver. You cannot use ur_bringup with ur_modern_driver.

    Use the launch files in ur_modern_driver/launch.

  2. what is in the ur5_left_bringup.launch and ur5_right_bringup.launch exactly? There shouldn't be a need for custom launch files other than the one that includes the regular launch file twice, but in separate ns.

In essence the "dual arm" aspect here is not important.

From the ROS perspective you're basically starting two instances of the same node, and need to use namespacing to avoid collisions.

From the 'error' you include it's not clear to me whether you have the namespacing configured correctly on the driver side, but if you did, then you would have to make sure that the action client config (probably MoveIt?) is aware of the namespaces / the correct topics.

You'll have to tell us more about your exact setup and configuration to be able to help you.


Edit:

PS:I use the package "ur_modern_driver" and my ur5 version is CB3.0

and:

launch file in the "ur_bringup" package:

...

  <include file="$(find ur_bringup)/launch/ur5_left_bringup.launch">

Two things here:

  1. if you're really using the ur_bringup package, then you're not using ur_modern_driver, but the old one ur_driver. You cannot cannot use ur_bringup with ur_modern_driver.

    Use the launch files in ur_modern_driver/launch.

  2. what is in the ur5_left_bringup.launch and ur5_right_bringup.launch exactly? There shouldn't should be no a need for custom launch files other than the one that includes the regular launch file twice, but in separate ns.

As to your controllers.yaml: the two instances of the driver are started in a right and a left namespace. I don't see that namespace anywhere in your controllers.yaml. The action_ns key should probably be something like right/follow_joint_trajectory (note the forward slash (/)).