Instantaneous kinematics FAQ
From WikIRI
(Back to the course home page)
The contents of this module corresponds to Chapter 3 of Duffy's book.
Errata
Please add any error you may find in the book to this page.
Frequently-asked questions
Feel free to contribute to the following list of questions and their answers.
Why do we speak of instantaneous kinematics?
The term "instantaneous" might be misinterpreted: why worrying at all about anything that happens only during an instant of time? The point is that we are caring about something that happens at an instant of time: instantaneous velocity means just this, the velocity of a point, a rigid body, a mechanism, etc. at a given, precise instant of time. If this velocity happens to be the same as at the following instants of time, we have constant velocity, both in module and in direction. Constant velocity becomes quickly boring, what is far more interesting to analyze is when change happens. Think for example about a robotic arc welding or painting application of an industrial workpiece: the trajectory of the end effector has to follow a non-trivial path, its velocity has to change from one instant to the next to adjust to the shape of the piece and the required welding or painting timings. To achieve a determined velocity at the end effector, the corresponding joint (and actuator) velocities have to be computed. Both types of velocity are related through a purely geometric function, a matrix that depends only on the configuration of the robotic mechanism. Furthermore, there are specific configurations -called singularities- where only a subset of velocities of the end-effector is achievable by finite velocities at the joints, and thus should be avoided. These are the kind of relationships studied in this module.
What velocities does a rotor encode?
Think of a lamina moving on a plane and draw the velocity vector of all of its points. We obtain a picture of the velocity field of the lamina at a given instant of time:
An important idea implicit throughout the chapter is that such vector field can always be seen as induced by the rotation of the lamina about a given point Q, called the instant center, at some angular velocity
. This is the instantaneous version of Chasles's theorem.
Now, the notion of rotor allows encoding such vector field in a compact way, using two quantities only: the angular velocity
, and the velocity
of just a single point O of the lamina. By convention O is chosen as the point of the lamina that coincides with the origin of the reference frame in which the velocity is measured. The rotor is written:
These two quantities are certainly sufficient to compute the velocity of any other point P on the lamina because
where
and
are the vectors OP and OQ, respectively (as seen in the next figure)
and operating the previous formula we get
which is equivalent to
-
.
-
Alternative interpretation of a rotor
The previous equation shows that the velocity field created by the instantaneous rotation about the axis through Q is equivalent to the velocity field created by an instantaneous rotation about a parallel axis through the origin O, plus a constant field of velocity
.
Does a rotor provide the coordinates of the instant center?
Yes. The components of a rotor can alternatively be interpreted as providing the angular velocity plus the coordinates of the instant center. This is explained in Section 3.3. Certainly, note that
, and thus, after factoring out ω, the last two coordinates provide the instant center coordinates.
Are rotors relative to a given frame of reference?
Yes. This is another important point. Since the motion of a rigid body depends on the frame of reference in which it is measured, the quantities
and
forming a rotor are to be thought of as relative to some given frame always. In the following figure, for example, if link 2 is rotating about link 1 with angular velocity
,
then the rotor of link 2 relative to an oberver on link 1 is
, where O is the reference point where all rotors are given,
whereas the rotor of link 1 relative to an observer on link 2 is
.
An instant center of a lamina, accordingly, is to be thought of relative to a reference frame too. For example, in the following 4R mechanism, the instant center of bar 3 relative to bar 1 (the ground) is the point T (can you tell why?), but the instant centers of such bar relative to bars 2 and 4 are Q and R, respectively.
How do we see plane and orthogonal lines as special cases of spatial lines?
Two kinds of lines have been introduced so far. Lines in the plane, represented by the triple {L,M;R} and lines orthogonal to the plane, represented by the triple {N;P,Q}. Both kinds of lines are special cases of general lines in 3-space, represented by the sextuple {L,M,N;P,Q,R}, where the vector
follows the direction of the line, and
is
, i.e., the moment of
with respect to the origin. As shown here, a sextuple of this kind determines a unique line in 3-space, and hence the six numbers {L,M,N;P,Q,R} can really be taken as valid coordinates for the line.
How do I visualize a translation as a special case of a rotation?
Just as couples are special cases of forces, instantaneous translations can also be seen as special cases of instantaneous rotations. Certainly, as explained in Section 3.5, page 88, if all points of a lamina move with the same velocity
, then its rotor can be seen as a line orthogonal to the plane, through a point at infinity, with a null angular velocity.
We can visualize the phenomenon as follows. Consider a rigid lamina, instantaneously rotating about Q with angular velocity ω, and select two points on a line through Q, say O and P. For convenience we choose the X axis along such line, with origin at O:
Let vo and v be the Y components of the velocities of O and P, respectively. Also let p and q be the X coordinates of P and Q, respectively. It is easy to see that the three quantities vo, v, and p, completely determine the angular velocity ω, and the position q of the instant center, using:
- vo = − ωq
- v = − ω(q − p)
For example, dividing the first equation by the second we easily get q as a function of v
and substituting this expression for q into ω = − vo / q we get:
The distance r = q − p in terms of v is:
Now observe that for
we have
so the instant center really tends to the point at infinity in the direction orthogonal to
, and the angular velocity tends to zero, but the product − r(v)ω(v), which is the velocity of P, tends to the finite value vo:
Why is the end-effector rotor equal to the sum of relative rotors?
Equation (3.39) in page 95 deserves additional explanation since it may not be evident, at a first glance, that the rotor of the end effector is the sum of relative rotors of the intermediate links.
On the one hand note that if (using the notation in Fig. 3.11) we let γ = θ1 + θ2 + θ3, we have
, and since
and
, we easily have ω = ω1 + ω2 + ω3, which proves the angular velocity part of (3.39).
In order to prove that
we must apply the law of composition of velocities. Let us recall this law:
- Let O be a point of a rigid body and suppose that, in addition to the absolute frame, we have another frame, that we call "relative", in which we can measure velocities. Then the absolute velocity of O is the sum of its relative velocity, plus the absolute velocity that O would have if it was a fixed point of the relative frame.
For simplicity, let us apply this law to the following serial 2R manipulator:
Here link 1 is rotating about P at ω1 with respect to the ground, and link 2 is rotating about Q at ω2 with respect to link 1. Place the absolute frame on the ground, and the relative frame on link 1. The two frames are labeled "ABS" and "1", respectively. Then, the absolute velocity of any point O on link 2 is the sum of its relative velocity plus the velocity that O would have if it was rigidly embedded in frame "1". That is,
-
.
-
Letting
, we have
, and hence the previous formula can be written as
-
,
-
which proves that the linear velocity part of (3.39) is true for a two-link manipulator. The extension to a three link manipulator only requires applying the law of composition of velocities twice.
Note that this explanation is valid for any point O on link 2. In particular it is valid for the point O of link 2 that instantaneously coincides with the origin of the absolute frame O = (0,0), which is, by convention, the point used when representing link velocities with rotors.
We note that the point O is not indicated in Fig. 3.11 of Duffy's book. Such point is usually chosen on the joint axis of the first link.
How do we see that at singularities the mobility of the end effector gets really reduced?
This question was posed by Itziar in class (course 2008-2009). Consider the 3R arm in the singular configuration depicted below (this is a slight modification of Fig. 3.14 in the book). Note that by adjusting the angular velocities ω1,ω2,ω3, around joints 1, 2, and 3, we can make any point Q on the end-effector move under any velocity vector in the plane. So although we are in a singularity, point Q can move in an arbitrary direction. Isn't this inconsistent with the fact that at singularities the instantaneous mobility of the end effector gets reduced?
The answer is no. It is true that we can choose whatever velocity for Q. But such selection then completely determines the angular velocity ω of the end effector. This is easily seen by noting
- That in the figure above the instant center of the end effector must be at some point on the X axis, because the velocity of point 3 is vertical.
- That once you fix a velocity
for Q, then the instant center of the end effector must be on a line through Q, orthogonal to
.
So choosing
is equivalent to choosing the location of the instant center, and to fixing ω therefore.
In a non-singular configuration, in contrast, it will always be possible to move the end effector with arbitrary velocities
and ω.
How is the twist equation of a closed-loop 4R mechanism derived?
Duffy starts Section 3.14 by writing the rotor equation
where
,
,
, and
represent, respectively, the relative motions of link a12 relative to the frame a41, a23 relative to the frame a12, a34 relative to the frame a23, and a41 relative to the frame a34.
How is this equation deduced?
Note that the previous sum of rotors must indeed hold, because we can see the closed-loop 4R mechanism as a 4R serial robot where the end effector is fixed relative to link 41:
As done in page 95 for 3R robots, the rotor sum
provides the motion of the end effector relative to the ground, which is here fixed on link a41. But
must be zero because the end effector is not moving.
What are the forward and reverse kinematic problems?
For a given robot mechanism, with actuators and an end-effector, there are two problems that need to be solved:
- The forward kinematic problem: given the speeds of the actuators, compute the corresponding rotors for all links of the manipulator.
- The reverse kinematic problem: given the rotor for the end effector, compute the speeds of all joints of the mechanism, including the actuated joints, and the passive joints.
As an example, consider the serial 3R manipulator. As shown in Sections 3.10 and 3.11, the relationship between the joint speeds and the end effector rotor is given by
so that the forward kinematics problem amounts co computing
whereas the inverse kinematic problems entails solving for \gamma in th eprevious equation:
Note here that the forward kinematics problem can always be solved in a one-to-one fashion (each γ yields one and only one
. The inverse kinematic problem, however, can only be solved in a one-to-one fashion if
(i.e., when the joints define a triangle of non-null area).
What are, in general, the main singularity types ocurring in a mechanism?
From a kinematic perspective there are two types of singular configurations, called actuator and end-effector singularities.
- Actuator singularities are configurations where it is not possible to solve the forward kinematic problem in a one-to-one fashion (one input determines one, and only one, velocity state for the mechanism).
- End-effector singularities are configurations where it is not possible to solve the inverse kinematic problem in a one-to-one fashion (one output determines one, and only one, velocity state for the mechanism).
As an example, consider the serial 3R manipulator. Its forward kinematic problem can always be solved in a one-to-one fashion, and hence it has no actuator singularities. (See the previous FAQ question.) Its inverse kinematic problem, on the contrary, can only be solved in a one-to-one way whenever
. Thus, when det(J) = 0 the manipulator is in an end-effector singularity.
Actuator and end-effector singularities are also called parallel and serial singularities, respectively.
A detailed classification of singularities on general mechanisms can be found in this Ph.D. thesis:
- D. Zlatanov. "Generalized singularity analysis of mechanisms". Ph.D. Thesis. University of Toronto. 1998.
Can a mechanism have both actuator and end-effector singularities?
Yes. A simple mechanism where both singularities occur is the following closed-loop 4R mechanism presented in Section 3.14.
This mechanism has mobility one, so that the motions of the mechanism can be controlled by actuating just one of its joints. Suppose that we actuate joint 4, so that ω4 is the input velocity. Also, let link a12 act as the "end-effector" of the mechanism.
Following the notation introduced in Section 3.14 of Duffy's book, the rotors of all links must satisfy the equation
or, equivalently:
which can be rewritten as:
Thus, the forward kinematic problem amounts to solving for [ω1,ω2,ω3]T in the previous system. Clearly, actuator singularities arise when
As shown in page 108, this occurs whenever links a23 and a12 get aligned:
It is left as an exercise to the reader to find under what conditions an end-effector singularity occurs.

















