I'm trying to practice inverse kinematics and I'm having a really tough time understanding how you can indicate if multiple solutions exist just using a matrix. I also don't know how I would indicate singular conditions and conditions where no solution is possible, can anyone help?

I don't understand without the help of an example so for the provided matrix can anyone help me understand how I can indicate if multiple solutions exist and any singular conditions?

What I understand about this is that using the matrix I could isolate s1,c1,s2,c2 and use atan2 to find the angles but after that I'm lost.

enter image description here

Also I know the matrix is from T03 but would there be a theta 3?

Any help is much appreciated.

  • $\begingroup$ why are you commenting on your own question? ... this site is not a chat forum $\endgroup$
    – jsotola
    Feb 19 at 5:34

1 Answer 1


From your particular matrix here (2-dof turret-like robot), the cos and sin of both the angles are given explicitly. As a consequence, there is only one solution (if you know the cos and sin of an angle, then you know this angle).

There might be no solution if the matrix is inconsistent, that is if the rotation part is actually not a rotation matrix, or if the translation part is not consistent with q1 and q2 that you got from the rotation.

Multiple solutions may exist if you only take a sub-part of the pose. For example assume you only control (x,y) of the end-effector: x = r.c1.c2 y = r.s1.c2

You can get one solution with q1 = atan2(y,x) and q2 = acos(x/(r.c1)). But then (q1+pi, -q2) is also a solution.

If x=y=0, atan2(y,x) is not defined but then q2 = pi/2 + k.pi (e.g. c2=0), and q1 can be any angle you want.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.