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

staubli_val3_driver: Unable to find user-specified joint names

asked 2021-08-19 10:08:08 -0500

hrj gravatar image

updated 2021-08-20 03:28:27 -0500

gvdhoorn gravatar image

Whenever i try to launch the driver, i get this error message. I installed all dependancies, and followed the tutorial on the readme

[ WARN] [1629384569.595690262]: Unable to find user-specified joint names in 'controller_joint_names'
[ WARN] [1629384569.596070911]: Unable to find URDF joint names in 'robot_description'
[ERROR] [1629384569.596094436]: Cannot find user-specified joint names. Tried ROS parameter 'controller_joint_names' and the URDF in 'robot_description'.
[ERROR] [1629384569.596110141]: Failed to initialize joint_names.  Aborting
edit retag flag offensive close merge delete

Comments

You'll have to describe your setup in more detail.

That error message is printed when you don't setup the controller_joint_names ROS parameter, which typically happens when you don't use a robot support package.

gvdhoorn gravatar image gvdhoorn  ( 2021-08-20 02:36:22 -0500 )edit

Yes , but i followed the whole tutorial, and they doesn't say anything about a Robot Support package

hrj gravatar image hrj  ( 2021-08-20 02:47:56 -0500 )edit

Could be, but that's why you get the error.

This is not a turn-key complete system, but a component based approach. The readme you refer to (please always link to instructions/tutorials/readmes you're trying to follow) only tells you how to start the base .launch file. The rest will depend on your own setup, the readme cannot tell you about that.

gvdhoorn gravatar image gvdhoorn  ( 2021-08-20 02:49:27 -0500 )edit

I've even added the Staubli_Experimental and Staubli packages wich contains urdf for the robots

And the launch files doesn't implement any way to add a urdf

hrj gravatar image hrj  ( 2021-08-20 03:01:14 -0500 )edit

Please tell us what you're trying to do. Also show the exact commands you're trying to use.

Building packages (which I believe you're referring to in your last comment) is not sufficient. The error is a runtime error, not a "build time" error.

Without more information we cannot help you.

gvdhoorn gravatar image gvdhoorn  ( 2021-08-20 03:02:36 -0500 )edit

I'm just trying to do the command in the Readme

roslaunch staubli_val3_driver robot_interface_streaming.launch robot_ip:=<Controller IP address>

I've installed all dependancies with rosdep, and it compiled fine

hrj gravatar image hrj  ( 2021-08-20 03:05:31 -0500 )edit

Which robot are you trying to use?

Starting a driver in isolation is a rather atypical use-case, which is why you see the errors you quote.

If you really want to start it by itself, start a roscore in a separate terminal, run rosparam set controller_joint_names '[joint_1, joint_2, ...]' and then start the driver's .launch file (list all joints of course, I've just shortened the command with the ellipsis).

To persist this, create your own .launch file setting that parameter (using the regular rosparam tag, not by running rosparam set) and have it include the driver' .launch file.

But again: that's typically all down by the appropriate .launch files in a robot support package.

gvdhoorn gravatar image gvdhoorn  ( 2021-08-20 03:13:22 -0500 )edit

I'm using a Staubli TX2-60L

I'll try that, thanks

hrj gravatar image hrj  ( 2021-08-20 03:16:15 -0500 )edit

1 Answer

Sort by » oldest newest most voted
1

answered 2021-08-20 03:27:03 -0500

gvdhoorn gravatar image

updated 2021-08-20 03:28:03 -0500

I'm using a Staubli TX2-60L

Instead of what I wrote in my comment, do the following:

  • git clone https://github.com/ros-industrial/staubli_experimental.git into your workspace
  • go to staubli_experimental/staubli_tx2_60_support/launch
  • create a robot_interface_streaming_tx2_60l.launch file
  • add the following content to that file:

    <?xml version="1.0"?>
    <launch>
      <arg name="robot_ip" doc="IP of controller" />
    
      <rosparam command="load" file="$(find staubli_tx2_60_support)/config/joint_names_tx2_60l.yaml" />
    
      <include file="$(find staulbi_val3_driver)/launch/robot_interface_streaming.launch">
        <arg name="robot_ip" value="$(arg robot_ip)" />
      </include>
    </launch>
    
  • save it

then run it with:

roslaunch \
  staubli_tx2_60_support \
  robot_interface_streaming_tx2_60l.launch \
  robot_ip:=<Controller IP address>

You may also want to read up on how robot support packages and drivers are structured and used: Working with ROS-Industrial Robot Support Packages.

edit flag offensive delete link more

Comments

Yeah i was stupid to forgot to load the tx2-60l, thanks guys !

hrj gravatar image hrj  ( 2021-08-20 07:18:40 -0500 )edit

Could you please mark the question as answered by ticking the checkmark (✓) to the left of the answer if you feel it has been answered? Thanks

gvdhoorn gravatar image gvdhoorn  ( 2021-08-20 07:23:59 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2021-08-19 10:08:08 -0500

Seen: 243 times

Last updated: Aug 20 '21