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

Controller aborts trajectory goal with GOAL_TOLERANCE_VIOLATION after execution

asked 2017-10-23 09:33:08 -0500

ipa-hsd gravatar image

updated 2017-10-23 09:58:13 -0500

I am simulating denso arm in Gazebo 2 on Indigo.


    type: joint_state_controller/JointStateController
    publish_rate: 125

    type: "position_controllers/JointTrajectoryController"
      - joint_1
      - joint_2
      - joint_3
      - joint_4
      - joint_5
      - joint_6

      goal_time: 0.6
      stopped_velocity_tolerance: 0.05
      joint_1: {trajectory: 0.1, goal: 0.1}
      joint_2: {trajectory: 0.1, goal: 0.1}
      joint_3: {trajectory: 0.1, goal: 0.1}
      joint_4: {trajectory: 0.1, goal: 0.1}
      joint_5: {trajectory: 0.1, goal: 0.1}
      joint_6: {trajectory: 0.1, goal: 0.1}
    stop_trajectory_duration: 0.5
    state_publish_rate:  125
    action_monitor_rate: 10

I am setting the following parameters while initializing my move_group:


After executing a reachable target (whether named or pose target), the controller throws an error:

[ WARN] [1508768453.519348029, 51.904000000]: Dropping first 1 trajectory point(s) out of 10, as they occur before the current time.
First valid point will be reached in 0.208s.
[ WARN] [1508768455.123441445, 53.504000000]: Controller vs087/arm_controller failed with error code GOAL_TOLERANCE_VIOLATED
[ WARN] [1508768455.123507438, 53.504000000]: Controller handle vs087/arm_controller reports status ABORTED

This is the output of rostopic echo /vs087/arm_controller/state which seems to be within the set goal tolerance (even though joint 2 has much higher error than the others, which is always the case)

  positions: [-1.760044554544038e-09, -0.001160522929334995, -9.655529709107213e-10, 1.208886324377545e-09, 3.4927438719023485e-10, 3.33908012351003e-10]
  velocities: [-1.7600773791239206e-06, -1.1605230596161191, -9.655595170077191e-07, 1.209310674844269e-06, 3.492708007257761e-07, 3.342539573532484e-07]

Sometimes I also get an error:

Controller is taking too long to execute trajectory (the expected upper bound for the trajectory execution was 1.2 seconds). Stopping trajectory.

I am able to plan and execute in RViz most of times. What am I missing here? I think I have set the nexessary parameters according to previous similar issues.

I am able to plan and execute in RViz most of the times for random positions

edit retag flag offensive close merge delete


Just noticed velocity error for joint 2 is always quite high

ipa-hsd gravatar image ipa-hsd  ( 2017-10-23 10:04:18 -0500 )edit

I'm facing the same problem. I noticed one thing though. On the topic /<robot_namespace>/arm_controller/follow_joint_trajectory/goal the values of path_tolerance, goal_tolerance and goal_time_tolerance are empty and not set by the server. Can you please check and confirm?

cgnarendiran gravatar image cgnarendiran  ( 2018-01-27 02:23:06 -0500 )edit

What did you do @cgnarendiran ? I think I have exactly the same error.

Deastan gravatar image Deastan  ( 2019-07-08 07:16:38 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2017-10-26 03:27:53 -0500

ipa-hsd gravatar image

I upgraded to ros-kinetic (and Gazebo 7) and everything works fine now. Could not figure out what the issue was.

edit flag offensive delete link more


I think the issue is related to using position_controllers. If you have the same environment and switch to effort_controllers (also change the transmission-related args) it would work fine, given you have adequate controller gains.

abouseif gravatar image abouseif  ( 2019-10-20 10:22:46 -0500 )edit

Question Tools



Asked: 2017-10-23 09:33:08 -0500

Seen: 1,607 times

Last updated: Oct 23 '17