• Could some one help me in connecting dots?

    Singularity - :|

    1. Absence of required DOF

    2. Presence of unwanted DOFs

    3. Structural constraints of Robot

    4. Jacobian matrix loosing a dimension. (Singular matrix for inversion - Path planning)

    All these four are different or inter connected? If connected how they are connected?

    Is there any case where robot can reach a position during position control but cannot reach during velocity control?

  • AD
  • Hi,

    it took me a long time to figure out on how to answer all your questions

    With DOF you probably mean Degree Of Freedom

    Answer question 1 and 2: you just choosed the wrong type of robot

    Standard robots have a DOF of 6 (which is actually the number of axes)

    With these types of robot one Frame in space will have x, y, z, rot_x, rot_y and rot_z (DOF = 6)

    But actually you do not tell us whether you are talking about robots or cnc machines

    So please do not ask in general and try to be more specific



  • Hi,

    Typical example of singularity is when J4, J5 and J6 axis are inline.

    It mean that frames at these axes are aligned with each other. To escape this position best solution is to move J5 axis from 0 deg.

    It can easily be understood by dh parameter.

  • Technically, a singularity is the real-world equivalent of a "divide by zero" error. But in real-world use, singularity issues usually appear first in terms of over-speed errors.

    Basically, in real-world robots, as a set of axes approach singularity, they generally begin needing to rotate faster and faster [1], until eventually the physical limits of the axes are reached, usually well before the "divide by zero" error would become an issue. This in fact is the main limiting factor for real-world robots -- paths that only come "close" to singularity, but are perfectly mathematically valid otherwise, either force the robot to slow down substantially, or create an over-speed condition that the controller cannot slow down enough to overcome.

    [1] The easiest example is a typical "inline wrist", with Axis 5 between A4 and A6, and A4&A6 being co-linear when A5 is at 0. For any linear motion that forces A5 to pass close to 0, one side effect is that A4 and A6 are forced to counter-rotate to keep the TCP on a linear path. As A5 gets closer to 0, A4 and A6 must increase their speed exponentially. Eventually, A4 or A6 will hit their maximum speed, or exceed their physical rotation limits.

  • For 6-axes robots as explained above there is also an A1 singularity.

    In this case the wrist center point (this is the point where A4, A5 and A6 intersect) would be something like x = 0.0, y = 0.0, z = 1250.0

    Normally you would use the x- and y- values of this point to calculate the rotation angle of A1 (using atan).

    If x and and y are 0.0 then atan(0.0/0.0) is not defined and you could rotate A1 whereever you want getting the same position (e.g. 0.0, 0.0, 1250)


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account
Sign up for a new account in our community. It's easy!
Register a new account
Sign in
Already have an account? Sign in here.
Sign in Now