TranslationXAxisAngle4D/TranslationYAxisAngle4D/TranslationZAxisAngle4D work but TranslationDirection5D does not for 5DOF arm

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

TranslationXAxisAngle4D/TranslationYAxisAngle4D/TranslationZAxisAngle4D work but TranslationDirection5D does not for 5DOF arm

roboSamir
I have a 5DOF arm for which I am trying to generate an IK solver using the following command:
openrave.py --database inversekinematics --robot=robot.xml --iktype=translationdirection5d --manipname=reactor --iktests=100
This command fails with 'openravepy.ikfast.CannotSolveError: CannotSolveError: raghavan roth equations too complex'. However, TranslationXAxisAngle4D/TranslationYAxisAngle4D/TranslationZAxisAngle4D iktypes are successful.
Since this is a 5DOF arm similar to youbot, I expect translationdirection5d  to be successfully generated as well.

Any suggestions on how to solve this problem ?

URDF/DAE/XML files are attached.
reactor_robot.zip
Reply | Threaded
Open this post in threaded view
|

Re: TranslationXAxisAngle4D/TranslationYAxisAngle4D/TranslationZAxisAngle4D work but TranslationDirection5D does not for 5DOF arm

kmohan
This post was updated on .
Hi @roboSamir

Let me start by saying that I am no expert in IKFast or OpenRAVE and I'm facing trouble generating IKFast for my own robot. However, I did run IKFast for your robot (with the XML file that you've attached) and it compiled successfully. Out of the 100 iterations, the algorithm reported finding no solutions for only 3 iterations - specifically iterations 29, 73 and 88. The success rate was 97%. I am not exactly sure how good this is; but it does compile successfully. I used the following command to compile.

openrave.py --database inversekinematics --robot=robot.xml --iktype=translationdirection5d --iktests=100

It is very similar to yours; I only left out the manipname attribute as that seems to be deprecated.