Rosanswers logo


I’m trying to implement pick and place using moveit + gazebo. i.e i want to send trajectory planned by moveit to gazebo and see pick and place being demonstrated in gazebo.

My query is related to pick () function of movegroup class. In moveit pick and place tutorial when we call pick function we have to give two arguments i.e object name as string and the grasp message. This can be seen here.

I understand that the string input argument is name of the object added in planning scene in RVIZ, in my case i dont want to add any object in planning scene in RVIZ. I have created necessary simulation envirnoment in Gazebo, adding planning scene object in RVIZ is just an overhead for me.

is there any way to use moveit high level APIs of movegroup::pick() and not create planning scene object in RVIZ? or is there any alternative function which doesn’t require the planning scene creation in RVIZ.

Thanks for your time.

Originally posted by mvish7 on ROS Answers with karma: 104 on 2019-02-28

Post score: 0


1 Answer 1


Rosanswers logo

The pick-and-place pipeline in MoveIt! is not the best for accomplishing custom tasks like the one you describe. In fact, the move_group interfaces can be really limiting. For custom tasks, it is almost always better to use the MoveIt! libraries directly. I am in the process of open-sourcing `MoveIt! Grasps, a package for grasp generation and scoring that sounds like it would fit your needs.

Note that moveit_grasps is intended to be used outside of MoveGroup.

Originally posted by mlautman with karma: 101 on 2019-03-05

This answer was ACCEPTED on the original site

Post score: 1

Original comments

Comment by mvish7 on 2019-03-06:
Thank you for suggesting this. In meantime i added collision object to rviz and performed pick-n-place but i'm not convinced with that way. I'll see how can i make use of Moveit_Grasps.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.