Quantcast

Manipulation Definition Problem

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

Manipulation Definition Problem

taylor
Hi Rosen,
following your thought I have checked and located the error: I have defined the manipulator in a wrong way.

But I can not see where I have done the error.

I print out the information of two manipulators.

One called "arm" is the old robot carrying manipulator which is before my definition.

arm

<manipulator:arm, parent=my>

<manipulator:arm, parent=my>
IKsolution:
[-0.27094685  0.02695158 -0.07963808  0.         -1.51810983  2.8706458 ]

target:
[[ -2.22044605e-16  -1.00000000e+00  -2.83146381e-16   1.80000000e+00]
 [ -1.00000000e+00   3.33066907e-16  -3.08721110e-17   5.00000000e-01]
 [  3.08721110e-17   2.83146381e-16  -1.00000000e+00   1.92000000e+00]
 [  0.00000000e+00   0.00000000e+00   0.00000000e+00   1.00000000e+00]]

iksolver:
<iksolver:ikfast ikfast.9c82fc0a9449463d298b608eff476e34.Transform6D.arm >
base:
<link:L0 (0), parent=my>
Endeffector:
<link:L6 (6), parent=my>
endeffector transform:
[[ -2.22044605e-16  -1.00000000e+00  -2.83146381e-16   1.80000000e+00]
 [ -1.00000000e+00   3.33066907e-16  -3.08721110e-17   5.00000000e-01]
 [  3.08721110e-17   2.83146381e-16  -1.00000000e+00   1.92000000e+00]
 [  0.00000000e+00   0.00000000e+00   0.00000000e+00   1.00000000e+00]]
ArmIndices:
[0 1 2 3 4 5]
closingdirection:
[]

Another is called "new arm"
<manipulator:new_arm, parent=my>

ikfast ikfast.b1b7c03c4f792c511366566078841541.Transform6D.new_arm
<manipulator:new_arm, parent=my>

IKsolution:
[ 0.65931007 -1.32194771  0.17252867  2.18634352 -1.31754529  0.34048636]

target:
[[  2.22044605e-16  -1.00000000e+00   3.57973209e-16   1.80000000e+00]
 [ -1.00000000e+00  -2.22044605e-16   8.32070286e-17   5.00000000e-01]
 [ -8.32070286e-17  -3.57973209e-16  -1.00000000e+00   1.92000000e+00]
 [  0.00000000e+00   0.00000000e+00   0.00000000e+00   1.00000000e+00]]
iksolver:
<iksolver:ikfast ikfast.b1b7c03c4f792c511366566078841541.Transform6D.new_arm >
base:
<link:L0 (0), parent=my>
Endeffector:
<link:L6 (6), parent=my>
endeffector transform:
[[  2.22044605e-16  -1.00000000e+00   3.57973209e-16   1.80000000e+00]
 [ -1.00000000e+00  -2.22044605e-16   8.32070286e-17   5.00000000e-01]
 [ -8.32070286e-17  -3.57973209e-16  -1.00000000e+00   1.92000000e+00]
 [  0.00000000e+00   0.00000000e+00   0.00000000e+00   1.00000000e+00]]
ArmIndices:
[0 1 2 3 4 5]
closingdirection:
[]


I am confused why the old manipulator gives correct solution, but the newly defined not.

attach my robot xml file here:
<robot name="my">
    <robot file="/home/deathlypest/workspace/OpenRave/kuka-kr30l16_new.zae"/>

    <KinBody>
      <Body name="endeffector" type="dynamic">
        <Geom type="cylinder">
          <offsetfrom>L6</offsetfrom>
          <RotationAxis>0 0 1 -90</RotationAxis>
          <radius>0.0035</radius>
          <height>0.3</height>
          <diffusecolor>0 0 1</diffusecolor>
          <Translation>2.20 0.00 2.15</Translation>
        </Geom>
      </Body>
      <Joint name="dummy" type="hinge" enable="false">
        <body>L6</body>
        <body>endeffector</body>
        <limits>0 0</limits>
        <axis>1 0 0</axis>
      </Joint>
    </KinBody>
   
    <Manipulator name="new_arm">
  <base>L0</base>
     <effector>L6</effector>   
        </Manipulator> 
</robot>
 
secondly, why is makes no difference when I change <offsetfrom> from L6 to L2 for example. The tag <offsetfrom> seems have no influence on the robot?

thanks in advance
appreciate very much

taylor

Loading...