Creating a ikfast solution for schunk lwa4p

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

Creating a ikfast solution for schunk lwa4p

(second attempt with a more reasonable Mail size)
Dear OpenRAVE users,
I am currently trying to get ikfast to create a closed-form solution for an lwa4p manipulator to create a solver for MoveIt. I successfully managed to create the solution using this tutorial with Ubuntu 12.04 and ROS Hydro, but we have since migrated to Ubuntu 14.04 and ROS Indigo (partly because of better hardware driver support OS-wise, partly because the arm driver seems to be more sophisticated in Indigo).
After succesfully installing OpenRAVE on Ubuntu 14.04 I tried using the same steps, but I'm not able to generate a solution in ikfast. The output it generates before getting stuck (using about 430MB of RAM and a full core) is attached. I did let it run for extended periods of time (a couple of times between 30 and 60 minutes, and once overnight), but since the robot is quite simple (6 axes with a spherical wrist) and the RAM usage doesn't change after reaching this point, I don't think more time would help. Especially considering the solution was generated in less than 15 minutes in Hydro.
What I tried so far:
Changing Sympy version: I read somewhere (I think even on this mailing list) that ikfast is picky about sympy so I removed the standard version (0.7.4) and installed 0.7.1 from source (sympy.__version__ in python confirms that the installed version is 0.7.1)
Rounding: The Hydro Solution was generated using an unrounded .dae file, because of the longer runtime I tried using the truncated .dae generated by the script mentioned in the tutorial, but to no avail.
Diagnostics: Since the urdf for the robot changed quite a bit between Hydro and Indigo, I tested generating a solution using the old URDF (from Hydro), but apparently it get's stuck the same way. Then I used another system with OpenRAVE, which was used to generate a solution for another robot (thinking my system might not be correctly set up). But this also generates the same output. I have attached the URDF for reference.
Dirty Workarounds: Being kind of desperate, I tried generating the MoveIt plugin using the old solution. I wasn't expecting it to work (and it didn't), but I wasn't sure because the robot mechanism is basically the same.
So my questions are:
1. Is there a discernible reason the ikfast solver is not able to generate a solution for the mechanism?
2. Should it (in theory) be possible to generate a MoveIt IK solver package using the old solution (and I simply screwed up doing so)?
Thanks in advance,
PS: I'm a mechanical engineer (well almost), so my grasp on certain subjects might be limited. Please be gentle =)

Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
Openrave-users mailing list
[hidden email]

ikfast_output (13K) Download Attachment
lwa4p.urdf (13K) Download Attachment