graspplanning example and physics

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

graspplanning example and physics

richard
Hello,

hope my mail is not too long. I'm using the graspplanning.py example
with my environment (Puma robot, static table and dynamic cylindric
objects), I can successfully grasp the objects and place them on my
table. I'm always defining the objects place destination a little bit
above the table, and the 'move hand down' line

res =
self.basemanip.MoveHandStraight(jacobian=0.02,direction=-self.updir,stepsize=0.003,minsteps=1,maxsteps=100)

seems to move the hand down until the grasped object reaches the table
(hope I'm right?) - that's what the result looks like. Now, if I want to
place a second object on the first one (to stack them), I'm defining the
destination again a little bit over the first object placed, but this
time the 'move hand down' line from above puts my second object into the
first one. Ok, physics are off, but it works with the table (maybe
because the table is static?). I was searching in the docs and in the
source code of MoveHandStraight, but I don't know, how I can use it to
stop at the object below. There was a similar topic in the mailing list,
but unfortunately, it doesn't answer my questions.

My 3 questions:

1) Do I have to use physics to stack objects with MoveHandStraight or is
there another way?

2) About physics: is there a tutorial of how to integrate physics in a
planning and plan executing environment? I tried adding the lines from
testphysics.py at the beginning

8<---
    physics = RaveCreatePhysicsEngine(env,'ode')
    env.SetPhysicsEngine(physics)
    physics.SetGravity(array((0,0,-9.8)))
    env.StopSimulation()
    env.StartSimulation(timestep=0.01)
--->8

to see what happens, but it does not end to produce

8<---
    Coin warning in SbPlane::SbPlane(): The three points defining the
plane cannot be coincident.
    Coin warning in SbPlane::SbPlane(): The three points defining the
plane cannot be on line.
--->8

...I guess it does not work that simple. In a project using ODE, i had
to implement stuff in a physics loop (to make the physics time step),
maybe it's similar here?


3) Very often, weired graspings are generated for the Puma (only when he
grasps from above) - I'm sure, using physics, the grasper would not hold
the object for that cases. Is there a way to force the Puma to use only
horizontally oriented graspings (maybe when generating the grasp table)?

best regards

Richard

--
Richard Cubek, Dipl.-Ing.(FH)
University of Applied Sciences Ravensburg-Weingarten
Intelligent Mobile Robotics Laboratory
Phone: (0049) (0)751 501 9838
Mobile: (0049) (0)163 88 39 529


------------------------------------------------------------------------------
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
Spend less time writing and  rewriting code and more time creating great
experiences on the web. Be a part of the beta today.
http://p.sf.net/sfu/beautyoftheweb
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users