Universal Robots Forum

Hallo i have a question about new feature Cartesian Trajectory Controller. How can i start this action server and where is controller.yaml file, which i need to modiefy?

Beta, Cartesian Trajectory Controller, PoseCommandInterface

Look at the beta-testing branch of the driver. The controller.yaml files, e.g. ur10e_controllers.yaml already contains the correct controllers.

You can switch between controllers using the ROS controller_manager.

hallo, i configured my ur5_controller.yalm. I only added Joints to Cartesian controller. like here:

See my pfd file
document.pdf (16.2 KB)

then i start robot driver and in another shell try to start this controller. In the Robot_driver shell i see:

Could not start controller with name ‘pose_based_cartesian_traj_controller’ because no controller with this name exists

See also hole file with starting robot driver.
(The Cartesian controller are not loaded or ready to use or something)

document(1).pdf (24.8 KB)

i think, my config is false. Can i have step for step solution? :sparkling_heart: i struggle 2 weeks on this, just to move the robot to xyz-position :see_no_evil:

No need to change the controller config if using the mentioned beta-testing branch, as they will already be defined.

Looking at the output from your driver start it looks like you are using the default controller yaml file from the master branch.

in which line i can see what controller yaml is used/loaded? if i use rosrun controller_manager controller_manager list, i just only have this thinks:

i think you are right, i am using default controller yaml.

Now the most important question, how can i use beta controller yaml to load and start Cartesian stuff?

i need to replace my ur5_controller yaml in:
/home/bachelorarm/catkin_ws/src/Universal_Robots_ROS_Driver/ur_robot_driver/config
to which controller yaml?

or can i replace somewhere launch-file, which start the master branch to beta controller yaml?

May I kindly ask why you are not using the beta-testing branch if you want to test features from that branch? I think it would be easiest to get this running before making any modifications.

Apart from that, you might want to look at the launch file’s parameters. They are all documented.

i am using beta testing branch. All test above is about beta testing branch.

What i have to do, to use beta testing branch. its no more ridiculous. i build beta testing branch from source, start beta testing branch driver for my ur5 and check the topics, there is no Cartesian features.

i used this:

in the quick start, there is no how to start Cartesian topics, to publish xyz-pose.

Could you please execute the following inside your catkin_ws/src folder?

for repo in $(find . -name ".git" -type d | sed 's/\/.git//' | sort); do echo "$repo"; git -C $repo branch; done

here is it:
~/catkin_ws/src$ for repo in $(find . -name “.git” -type d | sed ‘s//.git//’ | sort); do echo “$repo”; git -C $repo branch; done
./cartesian_ros_control

  • beta-testing
    ./fmauch_universal_robot
  • calibration_devel
    ./Universal_Robots_Client_Library
  • beta-testing-boost
    ./Universal_Robots_ROS_Driver
  • beta-testing

slowly i understand how its works, but i need still help.

In the ur_control.launch i found default and stopped controller. Then i start my bring-up(ur_robot_driver) and kill default controller ( scaled_pos_joint_traj_controller and pos_joint_traj_controller), because i have “resource conflict”. Then I try to start some “Cartesian-Controller”.
How should my Controller list look? which controllers need to be running to have opportunity to publish xyz-pose? do i need only twist_controller or all of them:
“joint_group_vel_controller forward_joint_traj_controller forward_cartesian_traj_controller twist_controller pose_based_cartesian_traj_controller joint_based_cartesian_traj_controller”