moveit physical robot not moving

asked 2018-11-07 02:46:39 -0600

Demian23 gravatar image

updated 2018-11-07 04:27:15 -0600

I am using ROS kinetic with moveit! and a Franka Emika Panda Robot arm. I launch

roslaunch panda_moveit_config panda_control_moveit_rviz.launch robot_ip:=xxx launch_rviz:=true

and it is possible to move the (physical) robot via rviz to a intended goal. But when I move the robot outside of rviz to a goal the robot should later move to again it won't work.

[ INFO] [1541579924.253244531]: ParallelPlan::solve(): Solution found by one or more threads in 0.001951 seconds
[ INFO] [1541579924.253403768]: RRTConnect: Starting planning with 1 states already in datastructure
[ INFO] [1541579924.253485121]: RRTConnect: Starting planning with 1 states already in datastructure
[ INFO] [1541579924.254391440]: RRTConnect: Created 4 states (2 start + 2 goal)
[ INFO] [1541579924.254624690]: RRTConnect: Created 4 states (2 start + 2 goal)
[ INFO] [1541579924.254769375]: ParallelPlan::solve(): Solution found by one or more threads in 0.001425 seconds
[ INFO] [1541579924.257346657]: SimpleSetup: Path simplification took 0.002502 seconds and changed from 3 to 2 states
[ WARN] [1541579924.272074411]: Dropping first 1 trajectory point(s) out of 10, as they occur before the current time.
First valid point will be reached in 0.321s.
[ WARN] [1541579926.223711716]: Controller position_joint_trajectory_controller failed with error code GOAL_TOLERANCE_VIOLATED
[ WARN] [1541579926.223884099]: Controller handle position_joint_trajectory_controller reports status ABORTED
[ INFO] [1541579926.223942264]: Completed trajectory execution with status ABORTED ...

The same problem happens if I try to move the robot to a position with:

move_group.asyncMove()

I can move the robot in rviz and then move the robot with asyncMove() to a earlier saved position. But if I move the robot outside of rviz (in the real life with the buttons) the robot seems to forget its starting point (but the new position is visible in rviz).

TIA for any help and if you need more information feel free to ask.

edit retag flag offensive close merge delete

Comments

If you plan a trajectory in moveit, then move the real robot, that trajectory is no longer valid and a new one will need to be planned. Is this the problem you're having?

PeteBlackerThe3rd gravatar imagePeteBlackerThe3rd ( 2018-11-07 08:22:09 -0600 )edit

Sadly not. I plan a new path but there appears to be a old starting point the arm wants to take. But (after a lot of trial and error) it appears the problem is with the robot itself not moveit. Apparently the robot unloads its state publisher or something like this when physically moved.

Demian23 gravatar imageDemian23 ( 2018-11-07 08:32:25 -0600 )edit

I have seen the same thing on some of the UR robots, using the paddle to move the arm, shutdown part of the ROS driver! It was a pain.

PeteBlackerThe3rd gravatar imagePeteBlackerThe3rd ( 2018-11-07 09:08:18 -0600 )edit

I use a panda arm. Got it working by using the recovery topic. It is probably not the most beautiful workaround but I only move the robot to teach some new positions and using the recovery afterwards works and is enough for my usecase right now. Thank you for your time.

Demian23 gravatar imageDemian23 ( 2018-11-08 03:14:18 -0600 )edit

Glad you got it working.

PeteBlackerThe3rd gravatar imagePeteBlackerThe3rd ( 2018-11-08 05:29:44 -0600 )edit

@Demian23 Im experiencing the same issue with the panda robot and moveit (i.e. panda_control_moveit_rviz.launch used in the ros-planning git ).

The robot isnt moving after executing the plan and gives as error ABORTED : Solution found but controller failed.

Can you please elaborate on your fix?

akcast gravatar imageakcast ( 2018-11-26 06:31:59 -0600 )edit

@akcast I found a way to recover the robot after moving it manual by calling: rostopic pub -1 /franka_control/error_recovery/goal franka_control/ErrorRecoveryActionGoal "{}" Doc

Demian23 gravatar imageDemian23 ( 2018-11-27 02:35:37 -0600 )edit