PR2 and manipulation

35 views
Skip to first unread message

Maximiliano Castro Díaz

unread,
Feb 9, 2016, 4:12:00 PM2/9/16
to PR2_Users
Hello everyone!
I'm currently working on my bachelor's final project at the University of Chile, programming an algorythm for stably placing any object on a flat surface. This has been quite challenging for me, as I started without knowing anything about ROS or the PR2 or robotics in general. So far I've done almost everything by myself using the official documentation (... yeah), forums, and trial-error.
Today my algorythm is more or less functional and I have until mid-march to finish it.
All that said, I want to ask you for some insight, advice, opinions, anything about my approach to the placing problem. I need to know if it makes sense to you, and if not, how would you do it or did you do it. It would mean the world to me.
I'm using ROS Hydro on Ubuntu 12.04, so far everything's been tested on gazebo 1.9.

My current implementation consists on the following steps:
  • First, the PR2 starts with an object firmly grasped on a known gripper.
  1. Look at surroundings (kinect), seek for a suitable plane somewhere (pcl, segmentation)
  2. When found, move close to it (rudimentary navigation, as I could not use the navigation_stack with Hydro)
  3. Perform an in-hand "3D scan" (kinect) by getting and merging snapshots of the gripper with the object from different perspectives. Later, I filter the robot parts (very rudimentary too. I failed to use every legit self-filter I found)
  4. Analyze object geometry, search for the best way to stably place it. (This part is very important and so far works a treat according to me). Translate this into a pose.
  5. Look for a placing area on the surface and try to place object according to the pose obtained in 4) (MoveIt)

 On Gazebo, I've had some trouble testing with more complex objects (when the gripper closes around them, they go flying, slip or oscilate badly). But the simpler objects on which I've managed to do some tests (sadly, just cuboids), show pretty satisfactory results. I haven't been able to test on the real PR2, since it has been giving me some problems with TF and openni among others, that I don't understand yet and don't want to spend too much time on given the time I've got left to work.

 Any comment, suggestion, anything will be greatly appreciated.
 Many thanks and cheers.
Reply all
Reply to author
Forward
0 new messages