Open ltaoist opened 10 years ago
Dave, we are not sure of the parameters:
pregrasp_posture : [0.0], grasp_posture : [1.0]
It's not clear what they mean. Are these distances along the x-axis away from the centroid of the object to be grapsed?
And similarly for grasp_pose_to_eef : [0,0,0]
in 3D space?
@LTaoist , thanks for your effort, I'm impressed what you have figured out so far.
My original project, block_grasp_generator
was made for the ClamArm. I have since spun that project into two projects - moveit_simple_grasps and moveit_visual_tools - in an effort to make the more portable with any robot. So now it runs on Baxter and REEM (Pal Robotics) as well as some other projects of mine.
However, because I don't maintain the ClamArm project anymore all those changes hadn't been synced back downstream. I spent a couple hours today (and I'm kicking myself for it) trying to port those changes back to the ClamArm for you. I can't promise much other time. Here is the commit: https://github.com/davetcoleman/clam/commit/beb9c39a3a2318a2369a367f19504ae23a50c651
I essentially made a whole new file, and its very simple: https://github.com/davetcoleman/clam/blob/beb9c39a3a2318a2369a367f19504ae23a50c651/clam_pick_place/src/block_pick_place.cpp
All the functionality for block pick place has been moved to moveit_simple_grasps
, so make sure you build that from source, too, and have the latest. I've also moved the Clam grasp config you made (and I fixed it):
https://github.com/davetcoleman/moveit_simple_grasps/blob/hydro-devel/config/clam_grasp_data.yaml
Note you will need to merge this PR under review as well: https://github.com/davetcoleman/moveit_simple_grasps/pull/9
There are sill some issues with the controllers, but they are because of MoveIt changes (not this code) and I don't have time / will power to work on them because I work on other robots these days.
Hi Dave,
I am running movit and pick_place on ROS Hydro.
Currently, when Itry to run the pick and place demo, I get an error message stating "no motion planning found".
When I compare the
clam_pick_place/src/simple_pick_place.cpp
in hydro and groovy, I saw that the "loadRobotGraspData" function is not called in the hydro version.For this reason,
grasp_data_
is not initialized and then pick or place cannot compute any motion plan. I saw that for the Hydro version, you deleted this call in the following commit: https://github.com/davetcoleman/clam/commit/c341a813d55e9af8cc53a72b11e71bbb3f4b702e)I also found that in hydro,
loadRobotGraspData
became a part of the moveit API and it is now a method ofgrasp_data_
.It seems the functionality is the same as in Groovy. Except that in Hydro, the grasp data values are assigned through a yaml file while in groovy they are assigned within the code.
I tried to fix this. So I modified simple_pick_place.cpp by adding
grasp_data_. loadRobotGraspData(nh, EE_GROUP)
before the linemoveit_simple_grasps_.reset
. I also added a config file like the following one: reem_grasp_data.yaml and baxter_grasp_data.yaml and finally loaded through roslaunch.My code currently works, but the blocks are picked up by the wrist. I think the clam gripper posture is incorrect. I think the error maybe in my config file.
Here are my changes to "simple_pick_place.cpp" :
And here is my launch file:
And here is the yaml file :
I would appreciate any feedback on this. We almost got this working!