# Any alternative to finding singularity of Puma 560 than differentiating the Jacobian and putting the Det=0?

Any alternative to finding singularity of Puma 560 than putting the Jacob Det=0? Also when it says the axes intersect, which axes do they mean? The z?

• There are some good videos demonstrating robot arm singularities such as this youtube.com/watch?v=lD2HQcxeNoA that should greatly help in understanding what they are and why. – Ben Oct 14 '19 at 15:51

The determinant of the Jacobian will be zero at singularity. The $$j^{th}$$ column of the Jacobian (a 6-vector) is the end-effector Cartesian velocity due to unit-velocity motion of the $$j^{th}$$ joint. At singularity these column vectors are not independent, if the $$k^{th}$$ column is some constant multiple of the $$j^{th}$$ column then this means that the axes of joints $$k$$ and $$j$$ are aligned, that is motion of either joint will cause the same end-effector Cartesian motion.

We can illustrate this using the Robotics Toolbox for MATLAB

>> mdl_puma560   % create a model of a Puma560 robot
>> J = p560.jacob0([0 0 0 0 0 0])  % compute the Jacobian for world coordinate frame

J =

0.1500   -0.4318   -0.4318         0         0         0
0.4521    0.0000    0.0000         0         0         0
0    0.4521    0.0203         0         0         0
0         0         0         0         0         0
0   -1.0000   -1.0000         0   -1.0000         0
1.0000    0.0000    0.0000    1.0000    0.0000    1.0000

>> det(J)

ans =

0


which we see is singular

>> jsingu(J)
1 linearly dependent joints:
q6 depends on: q4


tells us that joints 4 and 6 are aligned, and we can easily see that columns 4 and 6 of the Jacobian are linearly related, in fact they are identical.

Since two joints control the same Cartesian DoF, and we have 6 joints, then only 5 Cartesian DoF can be controlled independently – the definition of a singularity.

-- Peter Corke, developer of the Robotics Toolbox for MATLAB

• Peter, how do you describe the singularity which occurs when the wrist center is located in the plane defined by the first two axes (the over-the-shoulder singularity)? Is that an alignment of q2 and q3, or is q1 also involved in the “alignment”? – SteveO Oct 12 '19 at 21:43
• @SteveO not sure what you mean by "describe", they are all singularities and the kinematic structure might allow alignment between wrist and base axes, but often robots have physical offsets to prevent that. The only 2 types of singularity I know of are axis alignment, as described, and maximum reach where a DoF is lost because the arm can stretch no further. – Peter Corke Oct 12 '19 at 21:47
• I have struggled to describe this other singularity. It is easier to show the wrist singularity because of the actual physical alignment of the axes of q4 and q6. But when the arm is elbow-down, with the wrist center in the plane of q1 and q2 (it would be on the q1 axes except for the elbow offset), then q1 only rotates the wrist center in place - there is no axis to cause motion horizontally in this configuration. You described the wrist singularity so well I was hoping you had magic words to describe that arm singularity also! – SteveO Oct 12 '19 at 21:52
• No magic, sorry! It's just instanteous alignment of axes X and Y, they don't have to both be from the wrist. – Peter Corke Oct 12 '19 at 22:01
• BTW the singularity is strictly an arm singularity. The wrist joints are not involved. I mention wrist center only because that enables partitioning the inverse kinematics. – SteveO Oct 13 '19 at 19:24

Mathematically you need to set det(J) = 0. However, you can also visualize “singular planes” of a manipulator. Check out papers by Stanisic. Here is one.