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

Can't find controller with Moveit

asked 2017-10-02 10:59:40 -0600

Fiddle gravatar image

As the titles says, I can load the robot model with gazebo, start the controller, and receive the robot position from Gazebo, I even can plan the movement, but the execution fails with message

[ INFO] [1506956704.438899700, 37.700000000]: Returned 0 controllers in list
[ERROR] [1506956704.438925955, 37.700000000]: Unable to identify any set of controllers that can actuate the specified joints: [ Kuka_kr3__base_revolute Kuka_kr3__fifth_rotation Kuka_kr3__first_rotation Kuka_kr3__fourth_rotation Kuka_kr3__second_rotation Kuka_kr3__third_rotation ]
[ERROR] [1506956704.438944708, 37.700000000]: Known controllers and their joints:

[ INFO] [1506956704.468491442, 37.729000000]: ABORTED: Solution found but controller failed during execution

I also noticed, that when loading the rviz, there is an error

[ERROR] [1506956691.328915099, 24.714000000]: Parameter controller_list should be specified as an array
[ INFO] [1506956691.328985645, 24.714000000]: Returned 0 controllers in list

While doing this I tried to follow this tutorial and I setup the gazebo controller, maybe the problem is here, here is the code:

from the gazebo control package /config kuka_control.yaml

from /launch kuka_control.launch

Here are the topics, when I launch the kuka_control.launch

/kuka_kr3/joint_states
/kuka_kr3/joint_trajectory_controller/command
/kuka_kr3/joint_trajectory_controller/follow_joint_trajectory/cancel
/kuka_kr3/joint_trajectory_controller/follow_joint_trajectory/feedback
/kuka_kr3/joint_trajectory_controller/follow_joint_trajectory/goal
/kuka_kr3/joint_trajectory_controller/follow_joint_trajectory/result
/kuka_kr3/joint_trajectory_controller/follow_joint_trajectory/status
/kuka_kr3/joint_trajectory_controller/gains/Kuka_kr3__base_revolute/parameter_descriptions
/kuka_kr3/joint_trajectory_controller/gains/Kuka_kr3__base_revolute/parameter_updates
/kuka_kr3/joint_trajectory_controller/gains/Kuka_kr3__fifth_rotation/parameter_descriptions
/kuka_kr3/joint_trajectory_controller/gains/Kuka_kr3__fifth_rotation/parameter_updates
/kuka_kr3/joint_trajectory_controller/gains/Kuka_kr3__first_rotation/parameter_descriptions
/kuka_kr3/joint_trajectory_controller/gains/Kuka_kr3__first_rotation/parameter_updates
/kuka_kr3/joint_trajectory_controller/gains/Kuka_kr3__fourth_rotation/parameter_descriptions
/kuka_kr3/joint_trajectory_controller/gains/Kuka_kr3__fourth_rotation/parameter_updates
/kuka_kr3/joint_trajectory_controller/gains/Kuka_kr3__second_rotation/parameter_descriptions
/kuka_kr3/joint_trajectory_controller/gains/Kuka_kr3__second_rotation/parameter_updates
/kuka_kr3/joint_trajectory_controller/gains/Kuka_kr3__third_rotation/parameter_descriptions
/kuka_kr3/joint_trajectory_controller/gains/Kuka_kr3__third_rotation/parameter_updates
/kuka_kr3/joint_trajectory_controller/state

then, the files on the Moveit side:

controllers.yaml

demo_planning_execution.launch

Kuka_kr3_moveit_controller_manager.launch.xml

I wonder, where the problem might be, since the topics are present, and I think I've targeted them correctly...

edit retag flag offensive close merge delete

Comments

As this is a setup created by the construct, tagging their accounts here: @R. Tellez, @Ruben Alves.

gvdhoorn gravatar image gvdhoorn  ( 2017-10-03 03:08:40 -0600 )edit
1

btw: I know you did not set this up yourself, but I would recommend to never use any uppercase characters in any resource names with ROS. So no capitals in pkg names, node names, tf frames, urdf joints or links, etc, etc.

Also: Kuka_kr3__second_rotation seems like a rather contrived joint name.

gvdhoorn gravatar image gvdhoorn  ( 2017-10-03 03:11:27 -0600 )edit

The problem was rather trivial one, I forgot to insert a space after a hyphen sign before name part in controllers.yaml.

Fiddle gravatar image Fiddle  ( 2017-10-03 04:59:28 -0600 )edit

If you include the actual changes that you made to files and post that as an answer then you can accept your own answer.

gvdhoorn gravatar image gvdhoorn  ( 2017-10-03 05:00:41 -0600 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2017-10-03 06:31:28 -0600

Fiddle gravatar image

The reason that the controller couldn't be detected was in the controllers.yaml file, rather stupid mistake, but nevertheless:

Original code:

controller_list:
-name: /kuka_kr3/joint_trajectory_controller/
action_ns: "follow_joint_trajectory"
type: FollowJointTrajectory
joints:
  -  Kuka_kr3__base_revolute
  -  Kuka_kr3__first_rotation
  -  Kuka_kr3__second_rotation
  -  Kuka_kr3__third_rotation
  -  Kuka_kr3__fourth_rotation
  -  Kuka_kr3__fifth_rotation

Fixed version (name parameter lacked a space)

controller_list:
- name: /kuka_kr3/joint_trajectory_controller/
action_ns: "follow_joint_trajectory"
type: FollowJointTrajectory
joints:
  -  Kuka_kr3__base_revolute
  -  Kuka_kr3__first_rotation
  -  Kuka_kr3__second_rotation
  -  Kuka_kr3__third_rotation
  -  Kuka_kr3__fourth_rotation
  -  Kuka_kr3__fifth_rotation
edit flag offensive delete link more

Comments

I was getting the same bunch of errors. I changed my controller file, but even then I am getting the same error

Yug Ajmera gravatar image Yug Ajmera  ( 2019-02-01 13:37:23 -0600 )edit

Question Tools

1 follower

Stats

Asked: 2017-10-02 10:59:40 -0600

Seen: 2,429 times

Last updated: Oct 03 '17