Reachability and Singularity
Let's look at some practical issues now and one of this is reachability. Our robot has only got finite links. So, there are a large number of possible goal locations that the robot is physically just not going to be able to reach. If the point is unreachable then, it will generally lead to some problem in our inverse kinematics solution. A numerical algorithm will fail to converge.
For an analytic approach, we may end up finding that we're computing the square root of a negative number or we may find that we're computing the inverse cos sign of a number whose magnitude is greater than 1.
Some numerical problem will crop up in our inverse kinematics. Another problem is a singularity and this has got a lot of similarities to the Gimbal lock problem that we looked at much earlier.
Here, we can see the wrist of a Prima 560 robot and we can see that in this particular configuration, the axis of the 4th joint is parallel to the axis of the 6th joint. It would be now animate this robot and look what happens when we move joint 4 of the robot.
The whole wrist assembly moves like this and now we're going to move joint 6 of the robot. We see that it causes exactly the same sort of motion of the end effector. Now, what we're going to do is to counter rotate joints 4 and joint 6 so if joint 4 is increasing, joint 6 is decreasing, net result being that the end factor does not move at all.
So, just as in Gimbal Lock case, we've lost the decree of freedom. Joint 4 and joint 6 result in exactly the same motion that the robots end effector and in robotics, we refer to this as a singularity.
What it means in practical sense is if the axis of joints 4 and joint 6 are aligned like this then it's not possible for the robot end effector to adopt some particular orientations. In order to break that alignment, to move out of singularity, it's important that the 5th joint angle theta 5 is set to some value that's not equal to 0.
For real robots there are a few extra things to think about. Is a particular point actually reachable? Our old friend, singularity or gimbal lock reappears in the wrist.
This content assumes high school level mathematics and requires an understanding of undergraduate-level mathematics; for example, linear algebra - matrices, vectors, complex numbers, vector calculus and MATLAB programming.