staubli_val3_driver: Unable to find user-specified joint names
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
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.Yes , but i followed the whole tutorial, and they doesn't say anything about a Robot Support package
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.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
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.
I'm just trying to do the command in the Readme
I've installed all dependancies with rosdep, and it compiled fine
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, runrosparam 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 regularrosparam
tag, not by runningrosparam set
) and have itinclude
the driver'.launch
file.But again: that's typically all down by the appropriate
.launch
files in a robot support package.I'm using a Staubli TX2-60L
I'll try that, thanks