Lula Kinematics Solver Doesn't Converge with Unitree H1

Hello,

I am trying to apply Lula Kinematics solver to my Unitree H1. Currently, I want the end effector of the left hand to follow the target as does Franca manipulator in the example.

I am using H1 model [h1_with_hands.usd] from Omniverse library (4.2.0). The hands have been deleted, only left_hand_link and right_hand_link left to serve as end effectors.

I also created a URDF file with USD to URDF exporter from this USD and a yaml-file according to the tutorial.

In yaml-file, only left-hand links are set as revolute, others are fixed.

The problem is, the Kinematics solver mostly doesn’t converge. When does, it is in a very limited area only at a small distance from the target. Otherwise, I see “IK did not converge to a solution. No action is being taken

Thank you

In fact, the code works. What I didn’t take into account, is that the H1 arm has only 4 DOF, which is less than Franca or other manipulators have. So, indeed the robot couldn’t take the target position as I forgot to rotate the target in addition to just moving it. It all worked with translation + rotation.

Hi @MattHawthorne ,
It seems ik solver worked for your 4DOF manipulator. Did I get it right? If so, does rmpflow work for you? I’m having a hard time performing pick and place with rmpflow and lula ik solver. The manipulaor would shrug right after starting to move towards target.

Yes, you are right. It works for me, though the space of solutions is relatively narrow - you have to guess the approximate position in which 4DOF will work. Otherwise, no problem with the algoritm. It works like a clock.

As for rmpflow, I have no clues - didn’t try it yet.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.