[OpenRAVE-users] UR6 trajectory planning
Brought to you by:
rdiankov
|
From: gardiaza <gar...@in...> - 2012-10-29 16:40:36
|
Dear Rosen,first of all, thanks for all your help, and for openrave!I'm in
the process of making our universal robots work, and for the application we
have, we will be continously geting new positions where the robot has to
move, so I cannot precompute much.I made a small python script, plus an
environment (from your examples), I'm copying them here:test.py:from
openravepy import *
import numpy, time
env = Environment() # create the environment
env.SetViewer('qtcoin') # start the viewer
env.Load('ur5.env.xml') # load a scene
robot = env.GetRobots()[0] # get the first robot
robot.SetActiveManipulator('arm') # set the manipulator to arm
ikmodel =
databases.inversekinematics.InverseKinematicsModel(robot,iktype=IkParameterization.Type.Transform6D)
if not ikmodel.load(): ikmodel.autogenerate()manipprob =
interfaces.BaseManipulation(robot) # create the interface for basic
manipulation programsTgoal =
numpy.array([[0,-1,0,-0.81],[-1,0,0,0.24],[0,0,-1,0.02],[0,0,0,1]])res =
manipprob.MoveToHandPosition(matrices=[Tgoal],seedik=1000) # call motion
planner with goal joint anglesrobot.WaitForController(0) #
waittime.sleep(2)Tgoal =
numpy.array([[1,0,0,-0.81],[0,0,-1,-0.24],[0,-1,0,0.22],[0,0,0,1]])res =
manipprob.MoveToHandPosition(matrices=[Tgoal],seedik=1000) # call motion
planner with goal joint anglesrobot.WaitForController(0) #
waittime.sleep(2)Tgoal =
numpy.array([[0,-1,0,-0.81],[-1,0,0,0],[0,0,-1,0.22],[0,0,0,1]])res =
manipprob.MoveToHandPosition(matrices=[Tgoal],seedik=1000) # call motion
planner with goal joint anglesrobot.WaitForController(0) #
waittime.sleep(10)ur5.env.xml: 0.430986 -1.233453 1.412977 -0.946522
-0.231893 0.224324 122.297980 0 0 0 0 0 1 -45 0 1.5707 0 0 0 0
0 0 0 0.8 0.4 0.005 -0.4 0 0 .0 .6 .0 0.0
0.6 0.0 0.2 0.005 0.8 0.8 0.4 0 0.8
.0 .6 .0 0.0 0.6 0.0 0.2 0 0 0
0.055 0.095 0.05 -0.7 0 0.10 0 0 .6 0 0 .6 0
There are several things I've noticed:- The UR6 model of the robot model is
rotated 45 degrees, how can I correct that? (and submit a patch?)- The
ikmodel.autogenerate() is very slow in this robot (8-10 hours) vs the other
robots that are quite fast (< 5 minutes). I know I just need to do it once,
but I just want to inform you.- The trajectories are sometimes very complex
for movements that look quite easy (compare the second trajectory with the
third one). Is there any way to make the planning more efficient there?-
I've been playing with the "ikseed" parameter, and with some values (usually
bigger) I get trajectories that are much better behaved (shorter movements).
What is the purpose of ikseed? I didn't manage to find it.Thanks for your
help and suggestions.Cheers,Jose
--
View this message in context: http://openrave-users-list.185357.n3.nabble.com/UR6-trajectory-planning-tp4025594.html
Sent from the OpenRAVE Users List mailing list archive at Nabble.com. |