Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Strange MoveIt commander behavior with ROS Noetic #572

Closed
dudasdavid opened this issue May 19, 2021 · 7 comments
Closed

Strange MoveIt commander behavior with ROS Noetic #572

dudasdavid opened this issue May 19, 2021 · 7 comments

Comments

@dudasdavid
Copy link

Hi Universal Robots team,

I know that there isn't any official support yet for Noetic in this repository, but I can see that you're working on it in the Universal_Robots_ROS_Driver. @fmauch I'm using a fork based on your calibration_devel branch, but I tested your calibration_devel-staging, too.

I have no issues with ROS Melodic, only with Noetic and only when using moveit commander with pose target (using set_pose_target).

You can reproduce my issue with the following steps:

  1. git clone -b calibration_devel-staging https://github.com/fmauch/universal_robot
  2. Change arm_controller to pos_joint_traj_controller in ur3e_moveit_planning_execution.launch
  3. Launch the following launchfiles:
  • roslaunch ur_gazebo ur3e_bringup.launch limited:=true
  • roslaunch ur3e_moveit_config ur3e_moveit_planning_execution.launch sim:=true limited:=true
  1. Run my example code that can be found here.

This is the error I get from moveit:

[ INFO] [1621454575.663979800, 95.245000000]: Planning attempt 1 of at most 1
[ INFO] [1621454575.666822400, 95.248000000]: Planner configuration 'manipulator' will use planner 'geometric::RRTConnect'. Additional configuration parameters will be set when the planner is constructed.
[ INFO] [1621454575.667156900, 95.248000000]: manipulator/manipulator: Starting planning with 1 states already in datastructure
[ERROR] [1621454580.672333000, 99.602000000]: manipulator/manipulator: Unable to sample any valid states for goal tree
[ INFO] [1621454580.672491800, 99.602000000]: manipulator/manipulator: Created 1 states (1 start + 0 goal)
[ INFO] [1621454580.672859000, 99.602000000]: No solution found after 5.005736 seconds
[ INFO] [1621454580.683008900, 99.607000000]: Unable to solve the planning problem
[ INFO] [1621454580.685616400, 99.609000000]: Received event 'stop'

The same moveit commander script works in ROS Melodic (with Python 2.7) and I'm using a similar one for weeks both in simulation and a real UR3e. By the way I have the exactly same issue with the real robot using Noetic, so it's not a Gazebo related problem.

Do you have any idea what can be wrong with MoveIt on Noetic?

Let me know if you have any question, I'm happy to test and/or give further information!

David

@fmauch
Copy link
Contributor

fmauch commented May 20, 2021

For reference, my calibration_devel-staging currently is the same as in #538.

@gavanderhoorn
Copy link
Member

gavanderhoorn commented May 20, 2021

Just to clarify: this repository is not maintained by Universal Robots. It's a community effort at this point.

As to the problem you describe: at this point I'm inclined to assume it's a problem in MoveIt.

MoveIt development is quite active, and the differences between Melodic and Noetic are significant (Noetic is essentially tracking master, while Melodic is not).

From my own experience, "unable to sample any valid states for goal tree" is often caused by either:

  • robot is already in collision when planning starts (with itself, or the environment), so not as a result of moving somewhere, or
  • the IK solver is not working correctly

My suggestions would be:

  1. open an issue on the MoveIt issue tracker
  2. change your IK solver to KDL or Trac IK, just to avoid potential incompatibilities between ur_kinematics and whatever changed in Noetic in MoveIt, and see whether anything changes

@gavanderhoorn
Copy link
Member

For now I'm going to close this here, but if it turns out something needs to be fixed here, we'll re-open.

@dudasdavid
Copy link
Author

dudasdavid commented May 20, 2021

It was tested with KDL (since the UR IK doesn't really work well with limited joints and MoveIt). I can partially accept that it's a MoveIt issue, however the same MoveIt Commander application works with Panda robot in the simulation.
I'd also exclude a trivial MoveIt config issue, because I observe the same problem with @fmauch's calibration_devel and calibration_devel-staging branches.

@gavanderhoorn is there any planned official Universal Robots MoveIt support, if this repository isn't an official one anymore?

@fmauch
Copy link
Contributor

fmauch commented May 20, 2021

@gavanderhoorn is there any planned official Universal Robots MoveIt support, if this repository isn't an official one anymore?

It's not non-official, it is just not developed / maintained by the Company Universal Robots but driven by community effort.

@gavanderhoorn
Copy link
Member

gavanderhoorn commented May 20, 2021

is there any planned official Universal Robots MoveIt support, if this repository isn't an official one anymore?

this may have been unclear, but it's never been "official". It's always been a community effort. It's existed for far longer than UR's involvement with their driver, or with their interest in ROS actually.

And as I'm not part of UR, I'm not privy to what they plan to do or not.

@gavanderhoorn
Copy link
Member

gavanderhoorn commented May 20, 2021

As to your problem: this will require reproduction and then debugging MoveIt. That's unfortunately not something I can make time available for right now.

As a first step, I'd turn up the logging config for MoveIt itself to DEBUG, which might provide more insight into where exactly something is failing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants