Re: [OpenRAVE-users] MoveHandStraight Problem
Brought to you by:
rdiankov
|
From: Rosen D. <ros...@gm...> - 2012-10-30 05:04:38
|
sorry for the late response, the problem was because IKFast was
failing at [0 0 0 0 0 0] since there was a singularity there, we just
added some major improvements to ikfast on the latest openrave master
branch. can you check it out and see if your problem is fixed?
rosen,
2012/10/12 fherr <flo...@gm...>:
> Hi Rosen,
>
> why does MoveHandStraight fail with the robot kuka-kr5-r850.zae at the
> startconfiguartion with DOF Values [0 0 0 0 0 0]
> ( there are many more positions where MoveHandStraight fail)
> I can't find the problem
>
> openrave output:
> success =
> manipprob.MoveHandStraight(direction=updir,stepsize=0.01,minsteps=1,maxsteps=10)
> File
> "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_/interfaces/BaseManipulation.py",
> line 86, in MoveHandStraight
> raise planning_error('MoveHandStraight')
> openravepy._openravepy_.openravepy_ext.planning_error: openrave
> planning_error: 'MoveHandStraight'
>
>
> testcode:
> from openravepy import *
> import numpy
> env = Environment() # create the environment
> env.SetViewer('qtcoin') # start the viewer
> env.Load('robots/kuka-kr5-r850.zae')
> robot = env.GetRobots()[0] # get the first robot
>
> manip = robot.SetActiveManipulator('arm') # set the manipulator to leftarm +
> torso
> 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 programs
>
> robot.SetDOFValues(numpy.array([1.5,0,0.3,1,-1,1]),manip.GetArmIndices())
> #work
> # robot.SetDOFValues(numpy.array([0,0,0,0,0,0]),manip.GetArmIndices()) #fail
>
> Tee = manip.GetEndEffectorTransform()
> DOFValues = robot.GetDOFValues()
> print Tee
>
>
> updir = numpy.array((0,0,1))
> success =
> manipprob.MoveHandStraight(direction=updir,stepsize=0.01,minsteps=1,maxsteps=10)
> robot.WaitForController(0)
>
> Tgoal = numpy.array([[0,-1,0,-0.21],[-1,0,0,0.04],[0,0,-1,0.92],[0,0,0,1]])
> res = manipprob.MoveToHandPosition(matrices=[Tgoal],seedik=10) # call motion
> planner with goal joint angles
> robot.WaitForController(0) # wait
>
> Tgoal = Tee
> res = manipprob.MoveToHandPosition(matrices=[Tgoal],seedik=10) # call motion
> planner with goal joint angles
> robot.WaitForController(0) # wait
>
> res = manipprob.MoveManipulator(goal=DOFValues)
> robot.WaitForController(0) # wait
>
>
> updir = numpy.array((0,0,1))
> success =
> manipprob.MoveHandStraight(direction=updir,stepsize=0.01,minsteps=1,maxsteps=10)
> robot.WaitForController(0)
>
>
>
> --
> View this message in context: http://openrave-users-list.185357.n3.nabble.com/MoveHandStraight-Problem-tp4025556.html
> Sent from the OpenRAVE Users List mailing list archive at Nabble.com.
>
> ------------------------------------------------------------------------------
> Don't let slow site performance ruin your business. Deploy New Relic APM
> Deploy New Relic app performance management and know exactly
> what is happening inside your Ruby, Python, PHP, Java, and .NET app
> Try New Relic at no cost today and get our sweet Data Nerd shirt too!
> http://p.sf.net/sfu/newrelic-dev2dev
> _______________________________________________
> Openrave-users mailing list
> Ope...@li...
> https://lists.sourceforge.net/lists/listinfo/openrave-users
|