# Singular configurations of a 7-dof robotic arm

I want to check for singular configurations of a 7-dof robotic arm (RRRRRRR). I have found the geometric Jacobian and it is a 6x7 matrix. If my theoretical background is solid when the Jacobian loses a rank (in this case <6) the robot is at a singularity.

So one should check when the determinant of the Jacobian equals zero.In this case since it is not a square matrix i multiplied the Jacobian by its transpose and calculated that determinant in matlab.

My problem is that the elements of the matrix,well those that are not equal to zero or 1, are terrible to look at.I mean, you can see a lot of cosine and sine terms which make the computation really complicated.

Is there a way to make things easier?

I appreciate all the help, Victor

• I'm afraid that generally there is nothing that you can do much apart from some tedious algebraic manipulation to reduce the expression you have. But do you really need expressions of all singular configurations analytically? – Petch Puttichai Feb 18 '18 at 12:50
• Hello and thank you very much for taking the time to answer. Well my professor asked me to check for singularities for this robot so i guessed he wanted a specific set of values after using algebra.But now that even Matlab cant provide me a solution for det=0 i guess i cannot provide a mathematically supported answer. The reason i asked is because i hoped someone would suggest a different approach (perhaps something like breaking down the 6x6 [transpose(J)*J] matrix to four 3x3 matrices if it's possible). – user3032539 Feb 18 '18 at 22:06
• In that case, you may want to have a look at how to find the determinant of a matrix using cofactor expansion if you haven't already. It helps reduce the det of the original matrix into a linear combination of dets of smaller matrices. – Petch Puttichai Feb 19 '18 at 1:17

If the last three (or four) joints of your manipulator have axes which intersect at a point, then you can simplify the equations quite a bit. If this is the case, your manipulator has a spherical wrist geometry. Robot manipulators with this feature can be analyzed in a partitioned fashion. You can define the task as two related subtasks - position the center of the wrist at a certain point in space, and rotate the end effector to achieve the desired Euler angles for that pose. The singularities of positioning the center of the wrist will be independent of the wrist joint angles, and can be found by a 3x3 $JJ^J$ instead of the 6x6 you are dealing with now. The singularities of the end effector rotation might have terms that include all of the joint angles, but will still be calculable with a 3x3 matrix instead of a 6x6.