Wednesday, November 08, 2017

ikpy - Inverse Inematics, yes. Limits, no!

The Python inverse kinematics library, ikpy, works fine, and it has a cool mechanism to plot chain visualization from Python using matplotlib.pyplot.  EXCEPT ikpy seems to have no concept of collision areas or joint limits.

I found this out by putting in my Lynxmotion AL5D robot arm model as URDF, and loading into ikpy.   Works fine for a target at [17,3,3] (cm):

However if I have a target at [20,3,3], it drives the arm through the table (i.e. Z=0):

If you'd like to see the URDF and IK calculation code, it is here.

So I recommend ikpy for unconstrained 3D modeling, but lacks practicality for me!

So next step, I am going to try Caliko with its FABRIK IK solver in Java.

No comments: