Quantcast

cannot calculate kinematicreachability for our 8DOF manipulator

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

cannot calculate kinematicreachability for our 8DOF manipulator

eisoku9618
This post was updated on .
Hi, everybody,

We have a humanoid robot which has a 8DOF manipulator, and would like to calculate kinematicreachability like the following links.
http://openrave.org/docs/latest_stable/openravepy/databases.kinematicreachability/

I think I need to add the --freejoint option for 8DOF manipulator when we generate ikfast codes, but I get an error message "error: no such option: --freejoint" when we run the following programs.



$ rosrun openrave openrave.py --database kinematicreachability --robot=models/our-robot_openrave.xml --manipname=larm --freejoint=l_arm_joint0 --freejoint=l_arm_joint1 --xyzdelta=0.1 --quatdelta=0.8

or

$ rosrun parallel_util workmanagerlauncher.py --module=kinematicreachability_ros --launchservice='60*localhost' --args="--robot=models/our-robot_openrave.xml --manipname=larm --freejoint=l_arm_joint0 --freejoint=l_arm_joint1 --xyzdelta=0.1 --quatdelta=0.8"

$ cat models/our-robot_openrave.xml
<robot file="our-robot.dae">
  <manipulator name="larm" >
    <base>torso_link2</base>
    <effector>l_arm_link7</effector>
    <Translation>0 0 0</Translation>
    <rotationaxis>0 0 0 0</rotationaxis>
  </manipulator>
</robot>

In order not to get the error message, I tried adding "ogroup.add_option('--freejoint', ..." to "def addOptions" in openrave/lib/python2.7/site-packages/openravepy/_openravepy_/misc.py.

class OpenRAVEGlobalArguments:
    """manages a global set of command-line options applicable to all openrave environments"""
    @staticmethod
    def addOptions(parser,testmode=True):
        from optparse import OptionGroup
        ogroup = OptionGroup(parser,"OpenRAVE Environment Options")
        ogroup.add_option('--loadplugin', action="append",type='string',dest='_loadplugins',default=[],
                          help='List all plugins and the interfaces they provide.')
        ogroup.add_option('--collision', action="store",type='string',dest='_collision',default=None,
                          help='Default collision checker to use')
        ogroup.add_option('--physics', action="store",type='string',dest='_physics',default=None,
                          help='physics engine to use (default=%default)')
        ogroup.add_option('--viewer', action="store",type='string',dest='_viewer',default=None,
                          help='viewer to use (default=qtcoin)' )
        ogroup.add_option('--server', action="store",type='string',dest='_server',default=None,
                          help='server to use (default=None).')
        ogroup.add_option('--serverport', action="store",type='int',dest='_serverport',default=4765,
                          help='port to load server on (default=%default).')
        ogroup.add_option('--module', action="append",type='string',dest='_modules',default=[],nargs=2,
                          help='module to load, can specify multiple modules. Two arguments are required: "name" "args".')
        ogroup.add_option('--level','-l','--log_level', action="store",type='string',dest='_level',default=None,
                          help='Debug level, one of (%s)'%(','.join(str(debugname).lower() for debuglevel,debugname in openravepy_int.DebugLevel.values.iteritems())))
        ogroup.add_option('--freejoint', action='append', type='string', dest='freejoints',default=None,
                          help='Optional joint name specifying a free parameter of the manipulator. The value of a free joint is known at runtime, but not known at IK generation time. If nothing specified, assumes all joints not solving for are free parameters. Can be specified multiple times for multiple free parameters.')


Then I can avoid the error, but the programs (openrave.py and workmanagerlauncher.py) won't proceed as follows.


[plugindatabase.h:577] Failed to create name ode, interface collisionchecker
[openravepy_robot.cpp:793] SetActiveManipulator(int) is deprecated
openravepy.databases.inversekinematics: GetDefaultIndices, found 3-intersection centered on index 19
openravepy.databases.inversekinematics: GetDefaultIndices, found 3-intersection centered on index 21
openravepy.databases.inversekinematics: GetDefaultIndices, found 3-intersection centered on index 19
openravepy.databases.inversekinematics: GetDefaultIndices, found 3-intersection centered on index 21
openravepy.databases.inversekinematics: generate, Generating inverse kinematics for manip larm: Transform6D [17, 18, 19, 20, 21, 22] (this might take up to 10 min)
openravepy.databases.inversekinematics: generate, creating ik file /home/lkuroiwa/openrave_test/staro2/kinematics.395d1c3f4070d88780757119b356f4bd/ikfast62.Transform6D.17_18_19_20_21_22_f23_24.cpp
/home/lkuroiwa/ros/groovy/jsk-ros-pkg/openrave_planning/openrave/lib/python2.7/site-packages/openravepy/_openravepy_0_9/ikfast.py:1123: RuntimeWarning: invalid value encountered in divide
  axisangle /= angle
openravepy.ikfast: forwardKinematicsChain, moved translation [0, 0, 0] to right end
openravepy.ikfast: forwardKinematicsChain, moved translation [0, 0, 0] to left end
openravepy.ikfast: forwardKinematicsChain, moved translation on intersecting axis [0, 0, -71/500] to left
openravepy.ikfast: generateIkSolver, [[1, 0, 0, 0],[0, 1, 0, 23/200],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[cos(j17), -sin(j17), 0, 0],[sin(j17), cos(j17), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[1, 0, 0, 0],[0, 0, 1, 191/4000],[0, -1, 0, 0]]
openravepy.ikfast: generateIkSolver, [[cos(j18), -sin(j18), 0, 0],[sin(j18), cos(j18), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[0, 0, 1, 0],[1, 0, 0, 0],[0, 1, 0, 3/40]]
openravepy.ikfast: generateIkSolver, [[cos(j19), -sin(j19), 0, 0],[sin(j19), cos(j19), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[0, 0, -1, 339/2000],[0, 1, 0, 0],[1, 0, 0, 0]]
openravepy.ikfast: generateIkSolver, [[cos(j20), -sin(j20), 0, 0],[sin(j20), cos(j20), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[0, 0, 1, 0],[0, 1, 0, 0],[-1, 0, 0, -71/500]]
openravepy.ikfast: generateIkSolver, [[cos(j21), -sin(j21), 0, 0],[sin(j21), cos(j21), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[0, 0, -1, 489/2000],[0, 1, 0, 0],[1, 0, 0, 0]]
openravepy.ikfast: generateIkSolver, [[cos(j22), -sin(j22), 0, 0],[sin(j22), cos(j22), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[0, 0, 1, 0],[0, 1, 0, 0],[-1, 0, 0, 0]]
openravepy.ikfast: generateIkSolver, [[cos(j23), -sin(j23), 0, 0],[sin(j23), cos(j23), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[0, 1, 0, 3/100],[0, 0, 1, 0],[1, 0, 0, 0]]
openravepy.ikfast: generateIkSolver, [[cos(j24), -sin(j24), 0, 0],[sin(j24), cos(j24), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[1, 0, 0, 0],[0, 0, -1, 0],[0, 1, 0, 0]]
openravepy.ikfast: solveFullIK_6D, ikfast 6d: [j17, j18, j19, j20, j21, j22]
openravepy.ikfast: iterateThreeNonIntersectingAxes, found 3 consecutive non-intersecting axes links[0:5], vars=[j17, j18, j19]


Is the modification in openrave/lib/python2.7/site-packages/openravepy/_openravepy_/misc.py right?
How can we calculate the kinematicreachability for our 8DOF manipulator?


Finally, please let me add more information.

Referring to http://moveit.ros.org/wiki/Kinematics/IKFast , I check the links in our-robot.dae.


$ rosrun openrave openrave-robot.py models/our-robot.dae --info links

name        index parents    
-----------------------------
base_link   0                
l_leg_link0 1     base_link  
l_leg_link1 2     l_leg_link0
l_leg_link2 3     l_leg_link1
l_leg_link3 4     l_leg_link2
l_leg_link4 5     l_leg_link3
l_leg_link5 6     l_leg_link4
r_leg_link0 7     base_link  
r_leg_link1 8     r_leg_link0
r_leg_link2 9     r_leg_link1
r_leg_link3 10    r_leg_link2
r_leg_link4 11    r_leg_link3
r_leg_link5 12    r_leg_link4
torso_link0 13    base_link  
torso_link1 14    torso_link0
torso_link2 15    torso_link1
head_link0  16    torso_link2
head_link1  17    head_link0
l_arm_link0 18    torso_link2
l_arm_link1 19    l_arm_link0
l_arm_link2 20    l_arm_link1
l_arm_link3 21    l_arm_link2
l_arm_link4 22    l_arm_link3
l_arm_link5 23    l_arm_link4
l_arm_link6 24    l_arm_link5
l_arm_link7 25    l_arm_link6
r_arm_link0 26    torso_link2
r_arm_link1 27    r_arm_link0
r_arm_link2 28    r_arm_link1
r_arm_link3 29    r_arm_link2
r_arm_link4 30    r_arm_link3
r_arm_link5 31    r_arm_link4
r_arm_link6 32    r_arm_link5
r_arm_link7 33    r_arm_link6
-----------------------------
name        index parents



And then, I try running ikfast.py, which is during the calculation.
Up to now, the output is as below.


$ python `openrave-config --python-dir`/openravepy/_openravepy_/ikfast.py --robot=models/our-robot.dae --iktype=transform6d --baselink=15 --eelink=25 --freeindex=18 --freeindex=19 --savefile=/tmp/hoge.cpp

...
...(many equations)...
...
INFO: found non-singular AU matrix
INFO: special structure in equations detected, try to solve through elimination
INFO: [j18, j19] [j23]
INFO: 'solveAllEquations failed to find a variable to solve'
INFO: [j18, j19] [j24]
INFO: 'solveAllEquations failed to find a variable to solve'
INFO: try to solve first two variables pairwise
INFO: found 2 repeating roots in solveDialytically matrix: [array(3.472173553532782e-13), array(0.0014004416210134988), array(-1.1312472230773813), array(-1.1312472230773774), array(1.1312472230773836), array(1.131247223077378)]
INFO: found 2 repeating roots in solveDialytically matrix: [array(0.7257025628615693), array(1.0000000000000002), array(-1.1312472230773771), array(-1.131247223077378), array(1.1312472230773827), array(1.131247223077378)]
INFO: found 2 repeating roots in solveDialytically matrix: [array(0.33333333333333415), array(0.5376664520286452), array(-1.1312472230773782), array(-1.1312472230773785), array(1.1312472230773782), array(1.1312472230773774)]
INFO: found 3 repeating roots in solveDialytically matrix: [array(0.0), array(-1.1312472230773782), array(1.1312472230773785), array(4.091666666666666), array(-1.1312472230773785), array(1.1312472230773778), array(4.091666666666668)]
INFO: multiplying all determinant coefficients for solving htj24
INFO: [j18, j19, j24] [j23]
INFO: j23 solution: equations used for atan2: [623*cj18*cj19/2000 - 489*cj24*r21*cos(j23)/2000 - 3*cj24*r21/100 + pz - 489*r20*sj24*cos(j23)/2000 - 3*r20*sj24/100 + 489*r22*sin(j23)/2000, -489*cj24*npy*cos(j23)/1000 - 3*cj24*npy/50 - 489*npx*sj24*cos(j23)/1000 - 3*npx*sj24/50 + 489*npz*sin(j23)/1000 + pp - 305893*sj19/4000000 + 1467*cos(j23)/100000 - 822713/16000000]
INFO: [j18, j19, j23, j24] [j17]


Thanks,

Eisoku
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: cannot calculate kinematicreachability for our 8DOF manipulator

Rosen Diankov
Administrator
dear eisoku,

i suggest you generate the IK first with your specific freejoint using

rosrun openrave openrave.py --database inversekinematics --robot=models/our-robot_openrave.xml --manipname=larm --freejoint=l_arm_joint0 --freejoint=l_arm_joint1

once generated, you can run the kinematicreachability without specifying freejoint, it should now use your generated ik.

let me know if you have problems,
best,




2014-06-12 23:32 GMT+09:00 eisoku9618 <[hidden email]>:
*Hi, everybody,

We have a humanoid robot which has a 8DOF manipulator, and would like to
calculate kinematicreachability like the following links.
http://openrave.org/docs/latest_stable/openravepy/databases.kinematicreachability/

I think I need to add the --freejoint option for 8DOF manipulator when we
generate ikfast codes, but I get an error message "error: no such option:
--freejoint" when we run the following programs.*


$ rosrun openrave openrave.py --database kinematicreachability
--robot=models/our-robot_openrave.xml --manipname=larm
--freejoint=l_arm_joint0 --freejoint=l_arm_joint1 --xyzdelta=0.1
--quatdelta=0.8

or

$ rosrun parallel_util workmanagerlauncher.py
--module=kinematicreachability_ros --launchservice='60*localhost'
--args="--robot=models/our-robot_openrave.xml --manipname=larm
--freejoint=l_arm_joint0 --freejoint=l_arm_joint1 --xyzdelta=0.1
--quatdelta=0.8"

$ cat models/our-robot_openrave.xml
<robot file="our-robot.dae">
  <manipulator name="larm" >
    <base>torso_link2</base>
    <effector>l_arm_link7</effector>
    <Translation>0 0 0</Translation>
    <rotationaxis>0 0 0 0</rotationaxis>
  </manipulator>
</robot>

*In order not to get the error message, I try adding
"ogroup.add_option('--freejoint', ..." to "def addOptions" in
openrave/lib/python2.7/site-packages/openravepy/_openravepy_/misc.py.*

class OpenRAVEGlobalArguments:
    """manages a global set of command-line options applicable to all
openrave environments"""
    @staticmethod
    def addOptions(parser,testmode=True):
        from optparse import OptionGroup
        ogroup = OptionGroup(parser,"OpenRAVE Environment Options")
        ogroup.add_option('--loadplugin',
action="append",type='string',dest='_loadplugins',default=[],
                          help='List all plugins and the interfaces they
provide.')
        ogroup.add_option('--collision',
action="store",type='string',dest='_collision',default=None,
                          help='Default collision checker to use')
        ogroup.add_option('--physics',
action="store",type='string',dest='_physics',default=None,
                          help='physics engine to use (default=%default)')
        ogroup.add_option('--viewer',
action="store",type='string',dest='_viewer',default=None,
                          help='viewer to use (default=qtcoin)' )
        ogroup.add_option('--server',
action="store",type='string',dest='_server',default=None,
                          help='server to use (default=None).')
        ogroup.add_option('--serverport',
action="store",type='int',dest='_serverport',default=4765,
                          help='port to load server on (default=%default).')
        ogroup.add_option('--module',
action="append",type='string',dest='_modules',default=[],nargs=2,
                          help='module to load, can specify multiple
modules. Two arguments are required: "name" "args".')
        ogroup.add_option('--level','-l','--log_level',
action="store",type='string',dest='_level',default=None,
                          help='Debug level, one of
(%s)'%(','.join(str(debugname).lower() for debuglevel,debugname in
openravepy_int.DebugLevel.values.iteritems())))
        ogroup.add_option('--freejoint', action='append', type='string',
dest='freejoints',default=None,
                          help='Optional joint name specifying a free
parameter of the manipulator. The value of a free joint is known at runtime,
but not known at IK generation time. If nothing specified, assumes all
joints not solving for are free parameters. Can be specified multiple times
for multiple free parameters.')


*Then I avoid the error, but the programs (openrave.py and
workmanagerlauncher.py) stop as follows.*


[plugindatabase.h:577] Failed to create name ode, interface collisionchecker
[openravepy_robot.cpp:793] SetActiveManipulator(int) is deprecated
openravepy.databases.inversekinematics: GetDefaultIndices, found
3-intersection centered on index 19
openravepy.databases.inversekinematics: GetDefaultIndices, found
3-intersection centered on index 21
openravepy.databases.inversekinematics: GetDefaultIndices, found
3-intersection centered on index 19
openravepy.databases.inversekinematics: GetDefaultIndices, found
3-intersection centered on index 21
openravepy.databases.inversekinematics: generate, Generating inverse
kinematics for manip larm: Transform6D [17, 18, 19, 20, 21, 22] (this might
take up to 10 min)
openravepy.databases.inversekinematics: generate, creating ik file
/home/lkuroiwa/openrave_test/staro2/kinematics.395d1c3f4070d88780757119b356f4bd/ikfast62.Transform6D.17_18_19_20_21_22_f23_24.cpp
/home/lkuroiwa/ros/groovy/jsk-ros-pkg/openrave_planning/openrave/lib/python2.7/site-packages/openravepy/_openravepy_0_9/ikfast.py:1123:
RuntimeWarning: invalid value encountered in divide
  axisangle /= angle
openravepy.ikfast: forwardKinematicsChain, moved translation [0, 0, 0] to
right end
openravepy.ikfast: forwardKinematicsChain, moved translation [0, 0, 0] to
left end
openravepy.ikfast: forwardKinematicsChain, moved translation on intersecting
axis [0, 0, -71/500] to left
openravepy.ikfast: generateIkSolver, [[1, 0, 0, 0],[0, 1, 0, 23/200],[0, 0,
1, 0]]
openravepy.ikfast: generateIkSolver, [[cos(j17), -sin(j17), 0, 0],[sin(j17),
cos(j17), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[1, 0, 0, 0],[0, 0, 1, 191/4000],[0,
-1, 0, 0]]
openravepy.ikfast: generateIkSolver, [[cos(j18), -sin(j18), 0, 0],[sin(j18),
cos(j18), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[0, 0, 1, 0],[1, 0, 0, 0],[0, 1, 0,
3/40]]
openravepy.ikfast: generateIkSolver, [[cos(j19), -sin(j19), 0, 0],[sin(j19),
cos(j19), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[0, 0, -1, 339/2000],[0, 1, 0, 0],[1,
0, 0, 0]]
openravepy.ikfast: generateIkSolver, [[cos(j20), -sin(j20), 0, 0],[sin(j20),
cos(j20), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[0, 0, 1, 0],[0, 1, 0, 0],[-1, 0, 0,
-71/500]]
openravepy.ikfast: generateIkSolver, [[cos(j21), -sin(j21), 0, 0],[sin(j21),
cos(j21), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[0, 0, -1, 489/2000],[0, 1, 0, 0],[1,
0, 0, 0]]
openravepy.ikfast: generateIkSolver, [[cos(j22), -sin(j22), 0, 0],[sin(j22),
cos(j22), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[0, 0, 1, 0],[0, 1, 0, 0],[-1, 0, 0,
0]]
openravepy.ikfast: generateIkSolver, [[cos(j23), -sin(j23), 0, 0],[sin(j23),
cos(j23), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[0, 1, 0, 3/100],[0, 0, 1, 0],[1, 0,
0, 0]]
openravepy.ikfast: generateIkSolver, [[cos(j24), -sin(j24), 0, 0],[sin(j24),
cos(j24), 0, 0],[0, 0, 1, 0]]
openravepy.ikfast: generateIkSolver, [[1, 0, 0, 0],[0, 0, -1, 0],[0, 1, 0,
0]]
openravepy.ikfast: solveFullIK_6D, ikfast 6d: [j17, j18, j19, j20, j21, j22]
openravepy.ikfast: iterateThreeNonIntersectingAxes, found 3 consecutive
non-intersecting axes links[0:5], vars=[j17, j18, j19]


*Is the modification in
openrave/lib/python2.7/site-packages/openravepy/_openravepy_/misc.py right?*



*Finally, please let me add more information.

Referring to http://moveit.ros.org/wiki/Kinematics/IKFast , I check the
links in our-robot.dae.*

$ rosrun openrave openrave-robot.py models/our-robot.dae --info links

name        index parents
-----------------------------
base_link   0
l_leg_link0 1     base_link
l_leg_link1 2     l_leg_link0
l_leg_link2 3     l_leg_link1
l_leg_link3 4     l_leg_link2
l_leg_link4 5     l_leg_link3
l_leg_link5 6     l_leg_link4
r_leg_link0 7     base_link
r_leg_link1 8     r_leg_link0
r_leg_link2 9     r_leg_link1
r_leg_link3 10    r_leg_link2
r_leg_link4 11    r_leg_link3
r_leg_link5 12    r_leg_link4
torso_link0 13    base_link
torso_link1 14    torso_link0
torso_link2 15    torso_link1
head_link0  16    torso_link2
head_link1  17    head_link0
l_arm_link0 18    torso_link2
l_arm_link1 19    l_arm_link0
l_arm_link2 20    l_arm_link1
l_arm_link3 21    l_arm_link2
l_arm_link4 22    l_arm_link3
l_arm_link5 23    l_arm_link4
l_arm_link6 24    l_arm_link5
l_arm_link7 25    l_arm_link6
r_arm_link0 26    torso_link2
r_arm_link1 27    r_arm_link0
r_arm_link2 28    r_arm_link1
r_arm_link3 29    r_arm_link2
r_arm_link4 30    r_arm_link3
r_arm_link5 31    r_arm_link4
r_arm_link6 32    r_arm_link5
r_arm_link7 33    r_arm_link6
-----------------------------
name        index parents



*And then, I try running ikfast.py, which is during the calculation.
Up to now, the output is as below.*

$ python `openrave-config --python-dir`/openravepy/_openravepy_/ikfast.py
--robot=models/our-robot.dae --iktype=transform6d --baselink=15 --eelink=25
--freeindex=18 --freeindex=19 --savefile=/tmp/hoge.cpp

...
...(many equations)...
...
INFO: found non-singular AU matrix
INFO: special structure in equations detected, try to solve through
elimination
INFO: [j18, j19] [j23]
INFO: 'solveAllEquations failed to find a variable to solve'
INFO: [j18, j19] [j24]
INFO: 'solveAllEquations failed to find a variable to solve'
INFO: try to solve first two variables pairwise
INFO: found 2 repeating roots in solveDialytically matrix:
[array(3.472173553532782e-13), array(0.0014004416210134988),
array(-1.1312472230773813), array(-1.1312472230773774),
array(1.1312472230773836), array(1.131247223077378)]
INFO: found 2 repeating roots in solveDialytically matrix:
[array(0.7257025628615693), array(1.0000000000000002),
array(-1.1312472230773771), array(-1.131247223077378),
array(1.1312472230773827), array(1.131247223077378)]
INFO: found 2 repeating roots in solveDialytically matrix:
[array(0.33333333333333415), array(0.5376664520286452),
array(-1.1312472230773782), array(-1.1312472230773785),
array(1.1312472230773782), array(1.1312472230773774)]
INFO: found 3 repeating roots in solveDialytically matrix: [array(0.0),
array(-1.1312472230773782), array(1.1312472230773785),
array(4.091666666666666), array(-1.1312472230773785),
array(1.1312472230773778), array(4.091666666666668)]
INFO: multiplying all determinant coefficients for solving htj24
INFO: [j18, j19, j24] [j23]
INFO: j23 solution: equations used for atan2: [623*cj18*cj19/2000 -
489*cj24*r21*cos(j23)/2000 - 3*cj24*r21/100 + pz -
489*r20*sj24*cos(j23)/2000 - 3*r20*sj24/100 + 489*r22*sin(j23)/2000,
-489*cj24*npy*cos(j23)/1000 - 3*cj24*npy/50 - 489*npx*sj24*cos(j23)/1000 -
3*npx*sj24/50 + 489*npz*sin(j23)/1000 + pp - 305893*sj19/4000000 +
1467*cos(j23)/100000 - 822713/16000000]
INFO: [j18, j19, j23, j24] [j17]


*Thanks,

Eisoku*



--
View this message in context: http://openrave-users-list.185357.n3.nabble.com/cannot-calculate-kinematicreachability-for-our-8DOF-manipulator-tp4027024.html
Sent from the OpenRAVE Users List mailing list archive at Nabble.com.

------------------------------------------------------------------------------
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing & Easy Data Exploration
http://p.sf.net/sfu/hpccsystems
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users


------------------------------------------------------------------------------
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing & Easy Data Exploration
http://p.sf.net/sfu/hpccsystems
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: cannot calculate kinematicreachability for our 8DOF manipulator

eisoku9618
Hi Rosen,

That works. Thank you very much.
Loading...