[OpenRAVE-users] inversekinematics with custom built arm: MemoryError
Brought to you by:
rdiankov
|
From: Tien T. <ntt...@gm...> - 2012-10-24 09:05:50
|
Hi,
I have a 9DoF arm, without end effector (which will mount in the last
link later), and would like to use ikfast to do the inverse kinematics
for the arm_navigation stack in ROS.
But I have problem when using "openrave.py --database
inversekinematics ": which return
...
openravepy.ikfast: det_bareis, unification failed, trying direct division
Traceback (most recent call last):
File "/usr/bin/openrave.py", line 126, in <module>
database.run(args=args)
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/databases/inversekinematics.py",
line 923, in run
InverseKinematicsModel.RunFromParser(*args,**kwargs)
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/databases/inversekinematics.py",
line 895, in RunFromParser
model = DatabaseGenerator.RunFromParser(Model=Model,parser=parser,robotatts=robotatts,args=args,**kwargs)
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/databases/__init__.py",
line 248, in RunFromParser
model.autogenerate(options=options)
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/databases/inversekinematics.py",
line 510, in autogenerate
self.generate(iktype=iktype,freejoints=freejoints,precision=precision,forceikbuild=forceikbuild,outputlang=outputlang,ipython=ipython)
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/databases/inversekinematics.py",
line 706, in generate
chaintree =
solver.generateIkSolver(baselink=baselink,eelink=eelink,freeindices=self.freeindices,solvefn=solvefn)
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/ikfast.py",
line 1639, in generateIkSolver
chaintree = solvefn(self, LinksRaw, jointvars, isolvejointvars)
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/databases/inversekinematics.py",
line 586, in solveFullIK_6D
return self.ikfast.IKFastSolver.solveFullIK_6D(*args,**kwargs)
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/ikfast.py",
line 2162, in solveFullIK_6D
tree = self.solveFullIK_6DGeneral(T0links, T1links,
solvejointvars, endbranchtree)
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/ikfast.py",
line 2375, in solveFullIK_6DGeneral
coupledsolutions,usedvars =
solvemethod(rawpolyeqs,solvejointvars,endbranchtree=endbranchtree)
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/ikfast.py",
line 3146, in solveManochaCanny
PolyEquations, raghavansolutiontree = self.reduceBothSides(rawpolyeqs)
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/ikfast.py",
line 2816, in reduceBothSides
reducedeqs2 = _computereducedequations()
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/ikfast.py",
line 3100, in _computereducedequations
det = self.det_bareis(M[:,:-1], *detvars)
File "/usr/lib/python2.7/dist-packages/openravepy/_openravepy_0_8/ikfast.py",
line 6015, in det_bareis
D,r = div(Poly(D,*vars),M[k-1, k-1])
File "/usr/lib/python2.7/dist-packages/sympy/polys/polytools.py",
line 98, in __new__
return cls._from_expr(rep, opt)
File "/usr/lib/python2.7/dist-packages/sympy/polys/polytools.py",
line 209, in _from_expr
return cls._from_dict(rep, opt)
File "/usr/lib/python2.7/dist-packages/sympy/polys/polytools.py",
line 151, in _from_dict
domain, rep = construct_domain(rep, opt=opt)
File "/usr/lib/python2.7/dist-packages/sympy/polys/constructor.py",
line 217, in construct_domain
result = _construct_composite(coeffs, opt)
File "/usr/lib/python2.7/dist-packages/sympy/polys/constructor.py",
line 109, in _construct_composite
polys, gens = parallel_dict_from_basic(numers + denoms) # XXX: sorting
File "/usr/lib/python2.7/dist-packages/sympy/polys/polyutils.py",
line 260, in parallel_dict_from_expr
reps, opt = _parallel_dict_from_expr(exprs, build_options(args))
File "/usr/lib/python2.7/dist-packages/sympy/polys/polyutils.py",
line 266, in _parallel_dict_from_expr
exprs = [ expr.expand() for expr in exprs ]
File "/usr/lib/python2.7/dist-packages/sympy/core/expr.py", line
1884, in expand
expr = func(deep=deep, **hints)
File "/usr/lib/python2.7/dist-packages/sympy/core/add.py", line 471,
in _eval_expand_multinomial
newterm = term._eval_expand_multinomial(deep=deep, **hints)
File "/usr/lib/python2.7/dist-packages/sympy/core/mul.py", line 603,
in _eval_expand_multinomial
newterm = term._eval_expand_multinomial(deep=deep, **hints)
File "/usr/lib/python2.7/dist-packages/sympy/core/power.py", line
447, in _eval_expand_multinomial
expansion_dict = multinomial_coefficients(len(p), n)
File "/usr/lib/python2.7/dist-packages/sympy/ntheory/multinomial.py",
line 73, in multinomial_coefficients
d[tt] = cc
MemoryError
I've tried with several -iktype without success
Here I attach the dae file (around 9Mb) http://filecloud.io/2y10hp7d
Any help is welcomed.
--
Tien Thanh Nguyen
|