0% found this document useful (0 votes)
50 views17 pages

Unit 5

Uploaded by

SK Writers
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
50 views17 pages

Unit 5

Uploaded by

SK Writers
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

Kinematic Analysis

UNIT 5 KINEMATIC ANALYSIS


Structure
5.1 Introduction
Objectives

5.2 Position Analysis


5.2.1 Forward Problem
5.2.2 Inverse Problem

5.3 Velocity Analysis


5.3.1 Link Velocities
5.3.2 Jacobian Matrix

5.4 Acceleration Analysis


5.5 Summary
5.6 Key Words
5.7 Answers to SAQs

5.1 INTRODUCTION
For a robot to perform a specific task, the location and orientation of the end-effector, i.e.
its configuration, relative to the base should be established first. This is essential for the
position problem. When the above relations associated with the position analysis are
differentiated once and twice then the problems of velocity and acceleration analyses
arise subsequently, which are required for smooth motion control of the end-effector and
the dynamic analysis of the robot. Since the configuration of the end-effector is
determined by six ‘Cartesian variables’, which are controlled by the robot’s joint
motions, it is necessary to find the relations between the two sets.

Objectives
After studying this unit, you should be able to
• understand the kinematic constraints of a robotic system,
• determine the end-effector’s configuration, and
• find the control signals for the joints.

5.2 POSITION ANALYSIS


In position analysis, a relation between the configuration of the end-effector, i.e. the
position of a point on the end-effector and its orientation, and the joint angles is found.
Here two types of problems arise, namely, ‘forward’ or ‘direct’ and ‘inverse’, as
illustrated in Figure 5.1. In forward kinematics, the joint positions are given and the
problem is to find the end-effector’s configuration. In inverse kinematics, the reverse
problem is solved, i.e. the configuration of the end-effector is given and the problem is to
find the joint angles. 31
Kinematics and Dynamics
of Robots

Figure 5.1 : Position Kinematics

5.2.1 Forward Problem


In forward kinematics problem for positions, the joint positions, i.e. the angles of
revolute joints and the displacements of prismatic joints, are prescribed. The task is to
find the position and orientation of the end-effector. This can be obtained from the
‘closure equations’, as explained in the following steps :
(a) Attach coordinate frames to each of the links of the robot with frame 1 as
the fixed frame and frame n + 1 as the one attached to the end-effector or the
nth body.
(b) Define the DH parameters.
(c) Write the homogeneous transformation matrices, T1, T2, . . . , Tn, where Ti,
for i = 1, . . . , n, represents the homogenous transformation of the ith frame
to the (i + 1)st one, i.e., [Ti ]I of Eq. (4.40b)
(d) The homogeneous transformation matrix of the end-effector frame with
respect to the 1st one, denoted as T, is now obtained by the
postmultiplication of the above individual homogeneous transformations,
i.e., Ti, for i = 1, . . . n. They are expressed as
T = T1, . . . , Tn . . . (5.1)
In the left hand side, the matrix, T, represents the end-effector configuration
expressed in the fixed frame, i.e. 1 or F. Equation (5.1) is known as the
closure equation of the robot. If the representation of the homogeneous
transformation matrix given by Eq. (4.28) is substituted into Eq. (5.1) then
two distinct relations are obtained. One in terms of the orientation of the
links and the other one is the positions of the origins of the frames attached
to the links, i.e.,
Q = Q1 Q2 . . . Qn . . . (5.2)
p = a1 + Q1 a2 + . . . + Q1 . . . Qn − 1 an . . . (5.3)
where according to the conventions Qi is the orthogonal rotation matrix
introduced in Sub-section 4.3.2, whereas vector ai represents the position of
the origin of the frame attached to link i from the origin of frame attached to
link i-1. Note here that no frame indication is done in the above equations
32
Kinematic Analysis
using [ and ]. This is done to avoid clumsiness of the expressions. Matrix Qi
and vector ai in Eqs. (5.2) and (5.3) imply [Qi]i and [ai]i, respectively.
Moreover, Q is the orientation of the end-effector with respect to the fixed
frame, i.e. (a)1, and p is the position of the origin of the end-effector frame,
i.e. frame n + 1, from the origin of the fixed frame, 1 or F, namely, (P)1.
Comparing the position kinematic representations, Eq. (5.1), and Eqs. (5.2)
and (5.3), it is noted that the former is easy to comprehend, whereas the
latter two equations are computationally efficient. Using Eq. (5.1) one has to
compute 16 parameters of the 4 × 4 matrices, whereas only 12 parameters,
nine for the 3 × 3 matrices and three for the position vectors, are calculated
using Eqs. (5.2) and (5.3).
Example 5.1
A Three-link Planar Arm
The DH parameters of the arm shown in Figure 4.15 are obtained in
Example 4.11, as shown in Table 4.1. The three homogeneous
transformation matrices, Ti, i = 1, 2, 3, are obtained from Eq. (4.40b) as
⎡ ci − si 0 ai ci ⎤
⎢s ci 0 a i s i ⎥⎥
Ti = ⎢ i
. . . (5.4a)
⎢0 0 1 0 ⎥
⎢ ⎥
⎣0 0 0 1 ⎦

where si ≡ sin θi and ci ≡ cos θi. The solution for the forward kinematic
position analysis of the manipulator is given by, T = T1 T2 T3, where T, i.e.
(T)1 represents the end-effector’s configuration with respect to the base
frame. The 4 × 4 matrix, T, is derived as

⎡ c123 − s123 0 a1 c1 + a 2 c12 + a 3 c123 ⎤


⎢ 0 a1 s1 + a 2 s12 + a 3 s123 ⎥⎥
T = ⎢ s123 c123 . . . (5.4b)
⎢ 0 0 1 0 ⎥
⎢ ⎥
⎣ 0 0 0 1 ⎦

where s12 ≡ sin θ12; c12 ≡ cos θ12, s123 ≡ sin θ123; c123 ≡ cos θ123; θ12 ≡ θ1 + θ2
and θ123 ≡ θ12 + θ3---θi , for i = 1,2,3, being the joint angle shown in
Figure 4.15.
Example 5.2
An Anthropmorphic Articulated Arm
The DH parameters of the anthropomorphic articulated arm shown in
Figure 4.17, and are obtained in SAQ 4 of Unit 4. Those are shown in
Table 4.3. It has three degree of freedom. The three homogeneous
transformation matrices are obtained as
⎡ c1 0 − s1 0⎤ ⎡ ci − si 0 a i ci ⎤
⎢ 0 0 ⎥⎥ and Ti = ⎢s 0 a i s i ⎥⎥ for i = 2, 3
T1 = ⎢ s 1 c1 ⎢ i ci . . . (5.5a)
⎢0 −1 0 0⎥ ⎢0 0 1 0 ⎥
⎢ ⎥ ⎢ ⎥
⎣0 0 0 1⎦ ⎣0 0 0 1 ⎦

Postmultiplication of the above matrices, i.e., T1 T2 T3, yields,


⎡ c1 c 23 − c1 s 23 − s1 c1 ( a 2 c 2 + a 3 c 23 ) ⎤
⎢ − s1 s 23 s1 ( a 2 c 2 + a 3 c 23 ) ⎥⎥
T = ⎢ s1 c 23 c1 . . . (5.5b)
⎢ − s 23 − s 23 0 − ( a 2 s 2 + a 3 s 23 ) ⎥
⎢ ⎥
⎣ 0 0 0 1 ⎦

where T represents the configuration of the end-effector in the fixed frame.


33
Kinematics and Dynamics Example 5.3
of Robots
A Spherical Wrist
The DH parameters of the spherical wrist are obtained in SAQ 4 of Unit 4.
The results are shown in Table 4.4. It has three degrees of freedom and the
homogeneous transformation matrices are as follows :

⎡c1 0 s1 0⎤ ⎡c 2 0 − s2 0⎤
⎢s 0 − c1 0⎥⎥ ⎢s 0 c2 0⎥⎥
T1 = ⎢ 1 ; T2 = ⎢ 2
⎢0 1 0 0⎥ ⎢0 −1 0 0⎥
⎢ ⎥ ⎢ ⎥
⎣0 0 0 1⎦ ⎣0 0 0 1⎦

⎡ c3 − s3 0 0⎤
⎢s c3 0 0 ⎥⎥
and T3 = ⎢ 3 . . . (5.6a)
⎢0 0 1 0⎥
⎢ ⎥
⎣0 0 0 1⎦

Computation of the forward kinematics position solution is then given by,


T = T1 T2 T3, whose expression is
⎡ c1 c 2 c 3 − s1 s 3 − c1 s 2 s 3 − s1 c 3 − c1 s 2 0⎤
⎢s c c + c s − s1 c 2 s 3 + c1 c 3 − s1 s 2 0 ⎥⎥
T = ⎢ 1 2 3 1 3 . . . (5.6b)
⎢ s 2 c3 − s 2 s3 c2 0⎥
⎢ ⎥
⎣ 0 0 0 1⎦

Example 5.4
An Anthropomorphic Articulated Arm with Spherical Wrist
An anthropomorphic articulated arm with spherical wrist is shown in
Figure 5.2, whose DH parameters are listed in Table 5.1. It is basically the
arm and the wrist of SAQ 4 in Unit 4 put together. It has six degrees of
freedom (DOF). The configuration of the end-effector is obtained as
T = T1 . . . T6. The final expression of the orientation matrix, Q, and the
position vector, p, i.e., the components of the 4 × 4 matrix, T, are given as

⎡ q11 q12 q13 ⎤ ⎡ p1 ⎤



Q ≡ ⎢q21 q22 q23 ⎥ and p = ⎢⎢ p2 ⎥⎥
⎥ . . . (5.7)
⎢⎣ q31 q32 q33 ⎥⎦ ⎢⎣ p3 ⎥⎦

where

q11 ≡ c1 A + s1 B; q12 ≡ c1 A'− s1 B' ; q13 ≡ −c1 A' '− s1 B' ' ;
q 21 ≡ s1 A − c1 B; q 22 ≡ s1 A'+c1 B' ; q 23 ≡ − s1 A' '+c1 B' ' ;
q31 ≡ − s 23 C − c 23 D; q 32 ≡ s 23 C '+ c 23 D' ; q 33 ≡ s 23 c4 s 5 − c 23 c5

A ≡ c 23 C − s 23 D; B ≡ s 4 c5 c6 + c4 s6 ; C ≡ c4 c5 c6 − s 4 s6 ; D ≡ s 5 c6
A' ≡ −c 23 C '+ s 23 D' ; B' ≡ s 4 c5 s6 − c4 c6 ; C ' ≡ c4 c5 s6 + s 4 c6 ; D' ≡ s 5 s6
A' ' ≡ c 23 c4 s5 + s 23 c5 ; B' ' ≡ s 4 s 5

p1 = a 2 c1c 2 − b4 c1 s 23 + b6 q13
and p 2 = a 2 s1c 2 − b4 s1 s 23 + b6 q 23
p3 = −a 2 s 2 − b4 c 23 + b6 q33
34
Kinematic Analysis

Figure 5.2 : Anthropomorphic Articulated Arm with Spherical Wrist

Table 5.1 : DH Parameters of the 6 DOF Articulated Arm


i bi θi ai αi
1 0 θ1 0 − 90o
2 0 θ2 a2 0
3 0 θ3 0 − 90o
4 b4 θ4 0 90o
5 0 θ5 0 − 90o
6 b6 θ6 0 0

5.2.2 Inverse Problem


The forward or direct position kinematic equations, either in the form of Eq. (5.1) or
Eqs. (5.2) and (5.3), establish the functional relationship between the joint variables and
the end-effector orientation and position. The inverse problem consists of the
determination of the joint variables corresponding to a given end-effector orientation and
position. The solution to this problem is of fundamental importance, as it is essential for
the control of the robot arm. As regards to the forward kinematics equation, Eq. (5.1), the
end-effector rotation matrix and position are computed in a unique manner, once the joint
variables are known. On the other hand, the inverse kinematics for position is much more
complex for the following reasons :
• The equations to solve are in general nonlinear, and thus it is not always
possible to find a closed form solution.
• Multiple or no solution may exist depending on the architecture.
One approach is to find a closed form solution by using algebra or geometry. Another
approach is to find a numerical solution by successive approximations. Although the
former approach is generally desirable for real-time control of robots, it is not always 35
Kinematics and Dynamics possible for manipulators with arbitrary architecture. The class of manipulators for which
of Robots the closed-form solutions exist is limited. However, the manipulators in industrial use
today belong to this class. The algebraic approach to the closed-form solutions is to find
the joint angles through algebraic transformation of Eqs. (5.1) to (5.3). In geometric
approach, joint angles are found using geometrical heuristics. It is sometimes advantages
to use both the approaches to solve a problem. Since it is difficult to find a general
solution of manipulator with arbitrary architecture, the inverse kinematic solutions for
positions are presented for specific robots, as explained next.
A Three-link Planar Manipulator
Consider the arm shown in Figures 4.15, whose forward position kinematics is
solved in Example 5.1. It is desired to find the joint angles θ1, θ2 and θ3
corresponding to a given end-effector position and orientation. Since, it is
convenient to specify the position and orientation in terms of a minimal number of
parameters, the two end-effector coordinates px, py, and the end-effector angle ϕ
with axes X, as shown in Figure 5.3, are specified as input for the 3-DOF planar
manipulator. Two approaches, namely, algebraic and geometric, to solve the
problem are explained.
Algebraic Solution
Algebraic solution technique is explained here. From the kinematics
analysis, as done in Example 5.1, the elements for the matrix, T, are given in
Eq. (5.4b). Now, for given ϕ, px, and py,, the following must be true :
ϕ = θ 1 + θ2 + θ 3 . . . (5.8a)
px = a1 c1 + a2 c12 + a3 c123 . . . (5.8b)
py = a1 s1 + a2 s12 + a3 s123 . . . (5.8c)
Note that the inverse kinematic problem can be simplified by dividing the
task into the positioning of the wrist, W of Figure 5.3, and orienting it.
Hence, the position relations, Eqs. (5.8b-c), are modified using Eq. (5.8a) as
wx = px − a3 cφ = a1 c1 + a2 c12 . . . (5.8d)
wy = py − a3 sφ = a1 s1 + a2 s12 . . . (5.8e)
Since ϕ is known as input, along with the values of px, and py, the values of
wx, and wy are also known. Squaring Eqs. (5.8d-e), one finds
w2x + w2y = a21 + a22 + 2 a1 a2 c2 . . . (5.9)
which yields

w x2 + w 2y − a12 − a 22
c2 = . . . (5.10)
2 a1 a 2

The existence of a solution for Eq. (5.10) imposes that − 1 ≤ c2 ≤ 1.


Otherwise the given point is outside the arms’ reachable workspace. Then,
set

s 2 = ± 1 − c 22 . . . (5.11)

where the positive and negative signs correspond to the elbow-up and
elbow-down postures. Hence, the angle, θ2, can be computed as
θ2 = a tan 2 (s2, c2) . . . (5.12)
where ‘atan2’ function, instead of ‘atan’, is used to avoid quadrant
ambiguity. For example, atan (s2/c2) and atan (-s2/-c2) will give the same
angle value, whereas atan2 (s2, c2) and atan2 (-s2, -c2) will provide with the
36 actual answers, i.e. the latter value is equal to the former value plus π.
Kinematic Analysis
Having determined θ2, the angle θ1 can be found as follows : Expanding
Eqs. (5.8d-e), yields an algebraic system of two equations in two unknowns,
s1 and c1, whose solutions are obtained by multiplying Eq. (5.8d) with a2s2
and Eq. (5.8e) with (a1 + a2c2). Subtracting the former expression from the
latter one leads to
( a1 + a 2 c 2 ) w y − a 2 s 2 w x
s1 = . . . (5.13)
Δ
( a1 + a 2 c 2 ) w x − a 2 s 2 w y
c1 = . . . (5.14)
Δ
where Δ ≡ a21 + a22 + 2 a1 a2 c2 = w2x + w2y . In analogy to Eq. (5.12), the
solution for θ1 is obtained as
θ1 = atan 2 (s1, c1) . . . (5.15)
Finally, the angle, θ3, is found from Eq. (5.8a) as
θ 3 = φ + θ1 − θ 2 . . . (5.16)
Geometric Solution
As above, note that the orientation angle is given by Eq. (5.8a), and the
coordinates of the origin of Frame 3 (Figure 5.3) are computed using
Eqs. (5.8d-e). The application of the cosine theorem to the angle formed by
the links, a1, a2, and the segment connecting the points, W and O, gives
w2x + w2y = a21 + a22 − 2 a1 a2 cos (π − θ2) . . . (5.17)
The two admissible configurations of the triangle are shown in Figure 5.3.
Observing cos (π − θ2) = − cos θ2 leads to Eq. (5.9). Now, for the existence
of the triangle, it must satisfy

w x2 + w 2y ≤ a1 + a 2 . . . (5.18)

If this condition is not satisfied the given point is outside the reachable arm
workspace. When a solution exists, it is given by
θ2 = cos−1 (c2) . . . (5.19)
It is pointed out here that the elbow-up posture is obtained for θ2 = (π, 0),
while the elbow-down posture is obtained for θ2 = (0, π). To find θ1,
consider the angles, α and β in Figure 5.3. Notice that the determination of
α depends on the sign of wx and wy. Then, it is necessary to compute α as
α = atan 2 (wy, wx) . . . (5.20)

Figure 5.3 Configurations of Three-link Manipulator

To compute β, the cosine theorem is applied again, which yields

cos β w x2 + w 2y = a1 + a 2 c 2 . . . (5.21)
37
Kinematics and Dynamics and resorting to the expression for c2 given above in Eq. (5.10) leads to
of Robots
w x2 + w 2y + a12 − a 22
β = cos − 1 . . . (5.22)
2 a1 w x2 + w 2y

with β = (0, π) so as to preserve the existence of the triangles. Then,

θ1 = α ± β . . . (5.23)

where the positive sign holds for θ2 < 0 and the negative sign for θ2 > 0.
Finally, θ3 is computed from Eq. (5.16).
An Articulated Arm
Consider the articulated arm shown in Figure 4.17. It is desired to find the joint
variables θ1, θ2, and θ3 corresponding to a given end-effector position pw. Notice
that the direct kinematics for pw, is expressed by Eq. (5.5b). From the particular
geometry it is

θ1 = a tan 2 ( p y , px ) . . . (5.24a)

where,

px ≡ a (a2 c2 + a3 c23 )

and p y ≡ s1 ( a2 c2 + a3 c23 )

Observe another admissible solution as

θ1 = π + a tan 2 ( p y , px ) . . . (5.24b)

on condition that θ2 be modified into π − θ2. Once θ2, is known, the resulting
structure is planar with regard to the variables θ2 and θ3. Hence, the previous
solution for the positioning of the wrist of a 3-link planar manipulator can be used,
which yields

θ3 = a tan 2 ( s3 , c3 ) . . . (5.25)

px2 + px2 + p z2 − a22 − a32


where, c3 ≡
2 a2 a3

and s3 ≡ ± 1 − c32 . . . (5.26)

Then θ2 = a tan 2 ( s2 , c2 ) . . . (5.27)

in which

(a 2 + a3 c3 )p z − a 2 s 3 p x + p y
2 2

s2 ≡ ;
px + p y + pz
2 2 2

(a 2 + a 3 c3 ) p x + p y + a3 s 3 p z
2 2

c2 ≡
px + py + pz
2 2 2

It can be recognized that there are four solutions exist for the articulated arm
according to the values of θ1, θ2, and θ3. Figure 5.4 depicts two of the solutions,
whereas the other two are those which are obtained by rotating the last two links
180o about Z1, followed by the rotation about Z2 so as to reach W.
38
Kinematic Analysis

Figure 5.4 : Four Configurations of an Articulated Arm


A Spherical Wrist
Consider the spherical wrist shown in Figure 4.18 whose direct kinematics was
given in Eq. (5.6b). It is desired to find the joint angles θ1, θ2 and θ3 corresponding
to a given end-effector orientation Q, namely
⎡ q11 q12 q13 ⎤

Q ≡ ⎢ q21 q22 q23 ⎥⎥
⎢⎣ q31 q32 q33 ⎥⎦

where, qij, i, j = 1, 2, 3 are the elements of the 3 × 3 block matrix of T in


Eq. (5.6b). Now, it is possible to compute the solutions for the joint angles directly
as
θ1 = a tan 2 (q23 , q13 ) . . . (5.28a)

θ2 = a tan 2 ( q13
2
+ q23
2
, q33 ) . . . (5.28b)

θ3 = a tan 2 (q32 , q31 ) . . . (5.28c)


for θ2 ∈ (0, π), and
θ1 = a tan 2 (− q23 , − q13 ) . . . (5.28d)

θ2 = a tan 2 (− q13
2
+ q23
2
, q33 ) . . . (5.28e)

θ3 = a tan 2 (− q32 , q31 ) . . . (5.28f)


for θ2 ∈ (π, 0).

5.3 VELOCITY ANALYSIS


In the previous section, forward and inverse kinematics equations establishing the
relationship between the joint angles and the end-effector position and orientation were
presented. In this section, the relationship between the joint velocities and the
corresponding end-effector linear and angular velocities is presented. This relationship is
described by introducing a matrix, termed as “Jacobian”, which depends on the
manipulator configuration. The Jacobian constitutes one of the most important tools for a
manipulator characterization. In fact, it is useful for
(a) finding the singular configurations of a robot,
(b) analyzing redundancy,
(c) determining inverse kinematics algorithms for velocity,
(d) describing the relationship between forces applied to the end-effector and
the resulting torques at the joints (statics problem), and
(e) deriving dynamics algorithms. 39
Kinematics and Dynamics Note that the position kinematics equation can be written in the form
of Robots
⎡Q p⎤
T =⎢ T ⎥
⎣0 1⎦
where the 4 × 4 matrix, T, and in turn Q and p are functions of θ ≡ [θ1, . . . , θn]T, which is
the vector of joint variables. Both the end-effector position and orientation vary as θ
varies. The goal here is to express the end-effector angular velocity ω and linear velocity,
v (≡ p&) as a function of the joint velocities θ&, namely :
ω = J r θ& . . . (5.29a)
Comme
v = J t θ& . . . (5.29b) should
be
where Jr and Jt are the 3 × n matrices relative to the contribution of the joint velocities θ& bold,
to the end-effector angular velocity ω, and linaar velocity v, respectively. Equations small v.
See
(5.29a-b) can be written is compact form as correcti
ons.
t = J θ& . . . (5.30)

where, t = [ωT vT ]T is referred to as of the end-effector “twist” which is a 6-dimensional Comme


should
vector, and J is the 6 × n Jacobain matrix, which is a function of the joint variables θ. be
bold,
In Eqs. (5.29a-b), the linear velocity is the time derivative of the end-effector position, p, small v.
i.e., v ≡ p&, whereas nothing is stated about the angular velocity, ω, and the orientation See
correcti
representation matrix Q. This is derived as follows : ons.

(a) Consider the time-varying rotation matrix, Q. Since Q is orthogonal


Q QT = 1 . . . (5.31)
where 1 is the 3 × 3 identify matrix. The differentiation of Eq. (5.31) with
respect to time yields
Q&QT + Q Q&T = O . . . (5.32)
(b) Introduce the 3 × 3 matrix Ω as
Ω = Q&QT . . . (5.33)
to rewrite Eq. (5.32) as
Ω + ΩT = 0
The above expression proves that Ω is a skew-symmetric matrix.
(c) Post-multiplying both sides of Eq. (5.33) by Q then results
Comme
Q& = Ω Q . . . (5.34) mega
will be
which allows one to express the time derivative of the rotation matrix, Q&, as bold.
See
function of Q. correcti
ons
(d) Consider now a vector p on a moving body. Representing the vector p in the
fixed frame, F, and in the moving frame, M, attached to the body with its
origin same as of F by [p]F and [p]M, respectively, one can write
[p]F = Q [p]M , where Q is the orientation representation of frame M with
respect to frame F. The time derivative of [p]F is then obtained as
[ p&] = Q&[ p] + Q [ p&]
F M M . . . (5.35a)
Since vector [p]M is the representation of vector p in the moving frame, M,
its expression in frame M does not changes as the body moves, i.e.,
Comme
[ p&]M = 0 . Hence, will be
bold.
[ p&]F = Q&[ p]M . . . (5.35b)
40
Kinematic Analysis
In view of Eq. (5.34)
[ p&]F = Ω Q [ p]M . . . (5.36)

Alternatively, if ω denotes the angular velocity of the body or the moving


frame M, then from fundamentals of mechanics following is true :
p&= ω × p
or
Comment: Omega will be within [ ]_F.
[ p&]F = ω × Q [ p]M . . . (5.37) see corrections.

where × denotes the cross-product between two vector quantities.


Comparing Eqs. (5.36) and (5.37), it is obvious that the skew-symmetric
matrix Ω describes the vector cross product between two vectors, ω and
(Q [p]M). The matrix, Ω, is then such that its symmetric elements with
respect to the zero diagonal elements represent the components of the
Comment: Right of equivalent sign
angular velocity vector, i.e. ω ≡ [ωx ω y ωz ]T , i.e. will not be bold. See corrections.

Comment: Right of equivalent sign


⎡ 0 − ωx ωy ⎤ will not be bold. See corrections.
⎢ ⎥
Ω = ⎢ ωz 0 − ωx ⎥ . . . (5.38)
⎢− ω ωx 0 ⎥⎦
⎣ y
Matrix Ω is called angular velocity matrix.
Example 5.5
Rotation Matrix and Angular Velocity
Consider the elementary rotation matrix about axis Z, as given by Eq. (4.17).
If α is a function of time, the time derivative of Q, i.e., Q& is given by
Comment: Q will be bold
⎡ − α&sin α − α&cos α 0 ⎤
Q = ⎢⎢ α&cos α − α&sin α 0 ⎥⎥
&
⎢⎣ 0 0 0 ⎥⎦

Hence, the angular velocity matrix is obtained from Eq. (5.33) as


Comment: First Q will have dot on the
⎡ 0 − α& 0 ⎤ top of it. See corrections.
Ω = Q&QT = ⎢⎢α& 0 0 ⎥⎥
⎢⎣ 0 0 0 ⎥⎦

which gives the angular velocity vector, ω, as

ω ≡ [0 0 α&]T
Comment: Done 16/2/07
that expresses the angular velocity of the frame about axis Z.
5.3.1 Link Velocities
Consider a link, i, of a manipulator. According to the Danavit-Hartemberg (DH)
convention presented in Sub-section 4.4.2, link i connects joints i and i + 1, and frame i is
attached to link i − 1 and has origin along joint axis i, while frame i + 1 has origin along
joint i + 1 axis, as shown in Figure 5.5.
Let oi and oi – 1 be the position vectors of the origins of the links i and i – 1, i.e. Oi, and
Oi – 1, respectively. Let ai – 1 denotes the position of the origin of link i with respect to the
origin of link i – 1, as indicated in Figure 5.5. According to the vector summation rules,
one can write
oi = oi −1 + ai −1 . . . (5.39a)
41
Kinematics and Dynamics
of Robots

Figure 5.5 : Two interconnected links

Differentiating the above expression, velocity of the origin of link i, namely, o&i is
obtained as
o&i = o&i −1 + a&i −1 . . . (5.39b)

Since oi and oi – 1 are the position vectors of points on links i and i − 1, respectively,
Eq. (5.39b) gives the expression of the linear velocity of link i as a function of the
velocities of link i − 1 and the angular velocity of link i – 1, ωi – 1. For the angular
velocity expression of link i, ωi, it can be obtain as
ωi = ωi −1 + ωi , i −1 . . . (5.40)

where ωi − 1 is the angular velocity of link i − 1, and ωi, i − 1 is the relative angular velocity
of link i with respect to link i − 1. Note that Eqs. (5.39a-b) attain different expressions
depending on the type of joint i, i.e. revolute or prismatic.
Revolute Joint
Since a revolute joint provides angular motion to a link with respect to its previous
one, the joint angle θi is variable. If ei denotes the unit vector parallel to the axis of
revolute joint then ωi , i −1 = θ&i ei . Hence, ωi of Eq. (5.40) can be written as

ωi = ωi −1 + θ&i ei . . . (5.41a)

The corresponding linear velocity expression, Eq. (5.39b) is re-written as


Comme
o&i = o&i −1 + ωi −1 × ai −1 . . . (5.41b) o dot
over
a_i-1
Prismatic Joint
A prismatic joint allows only relative translational motion, i.e. joint length, bi, is
variable. These is no relative angular motion between the links i − 1 and i. Hence,
ωi = ωi −1 . . . (5.42a)

and the linear velocity expression, Eq. (5.39b) is as follows :


Comme
o&i = o&i −1 + ωi −1 × ai −1 + b&
i ei . . . (5.42b) o dot
over
a_i-1
where ei is the unit vector parallel to the translational direction of link i with
respect to link i − 1, and b&
i ei is the relative linear velocity.
42
Kinematic Analysis
5.3.2 Jacobian Matrix
Here, the general expression for the Jacobian matrix, J, Eq. (5.30), is derived. Since the
end-effector is the nth body in a serial-chain, the angular velocity and velocity of the
end-effector ω and v, respectively, are obtained from the velocities of the nth link,
namely, ωn and o&n , as
Comment: No subscript for omega and
ω = ωn , and v ≡ o&n + ωn × an . . . (5.43) v. Subscript i of o-dot will be o_n-dot.
See correction.
where an is the 3-dimensional Cartesian vector of the end-effector with respect to the
origin of the nth link, On. The velocities of the links are now computed starting from the
fixed body, i.e. link 0, and following the recursive relations given in Eqs. (5.41a-b) or
(5.42a-b), depending on the type of joints used. For example, if all joints are revolute
then
ωo = 0 . . . (5.44a)

ω1 = θ&1 e1 . . . (5.44b)

ω2 = ω1 + θ&2 e2 = θ&1 e1 + θ&2 e2 . . . (5.44c)

.
.
.
Comment: No e subscript for omega.
ω = ωn = ωn −1 + θ&n en = θ&1 e1 + θ&2 e2 + . . . + θ&n en . . . (5.44d) See correction.

and 1 = o&
o& 0 =0 . . . (5.45a)

o&2 = o&
1 + ω1 × a&
1 = θ1 e1 × a12
& . . . (5.45b)

.
.
.

o&n = o&n −1 + ωn −1 × an −1 . . . (5.45c)

= θ&1 e1 × a1 n + θ&2 e2 × a2 n + . . . + θ&n −1 en −1 × an −1, n


Comment: No n subscript for v. o_n
v = on + ωn × an e = θ&1 e1 × a1e + . . . + θ&n en × an e . . . (5.45d) should be o_n-dot. See corrections.

where, ai , e = ai + . . . + an , is the vector joining the origin of link i to the origin of link,
n + 1 or the point on the end-effector, as shown in Figure 5.2 for i = 1, 2. From
Eqs. (5.44d) and (5.45d), the Jacobian matrix, J, as introduced in Eq. (5.30), is extracted
as

⎡ e1 e2 ... en ⎤
J =⎢
e1 × a2e . . . e1 × an e ⎥⎦
. . . (5.46)
⎣e1 × a1e
From Eq. (5.46), the ith column of matrix J, denoted as ji, can be written as

⎡ ei ⎤
ji = ⎢ ⎥ , if Joint i is revolute . . . (5.47a)
⎣ei × ai e ⎦
However, if the ith joint is prismatic then Eq. (5.47a) is modified as

⎡ 0 ⎤
ji = ⎢ ⎥ , if Joint i is prismatic . . . (5.47b)
⎣ei × ai e ⎦ 43
Kinematics and Dynamics Example 5.6
of Robots
Planar Two-link Arm
Since there are two revolute joints which can be used only for positioning of
the end-effector, the top block row of Eq. (5.46) corresponding to the
orientation of the end-effector is not relevant. Hence, the Jacobian for the
two link planar arm can be expressed as
J = [e1 × a1e e2 × a2 e ] . . . (5.48a)

where, e1 ≡ e2 ≡ e3 ≡ [0 0 1]T ,

and, a1e ≡ a1 + a2 ≡ [ a1 c1 + a2 c12 a1 s1 + a2 s12 0]T


Comme
a2 e ≡ a2 ≡ [ a2 c12 a2 s12 0]T ubscrip
t 13
should
in which s1 = sin θ1 ; c1 = cos θ1 ; s12 ≡ sin (θ1 + θ2 ) ; cos (θ1 + θ2 ) . be 12.
See
correcti
If the zeros are ignored in Eq. (5.48a) the Jacobian for the two-link ons.
manipulator is a 2 × 2 matrix, which is as follows :

⎡− a s − a 2 s12 − a 2 s12 ⎤
J =⎢ 1 1
a 2 c12 ⎥⎦
. . . (5.48b)
⎣ a1c1 + a 2 c12

SAQ 1
(a) Find the Jacobian for a three-link planar manipulator shown in Figure 5.3.
(b) Find the Jacobian matrix for the articulated arm shown in Figure 4.17.

5.4 ACCELERATION ANALYSIS


Comme
Typically, acceleration analysis results are required in the dynamic calculations where wo dots
inertia forces are equated with the external forces. Acceleration expressions can be on 2nd
Theta
obtained by differentiating the velocity expressions. For example, the end-effector will be
accelerations are obtained by differentiating Eq. (5.30) as one
dot.
t&= J &
θ&+ J&θ& . . . (5.49) See
correcti
ons.
where, t&≡ [ω
&T v&T ]T − ω
& and v&are the angular and linear accelerations of the
Comme
end-effector, respectively, and &θ&≡ [&
θ& &
& T & &
1, ..., θ n ] − θi being the joint acceleration for the
apital V
will be
ith joint. The ith column of J& is now given by small
and
bold.
& ⎡ e&i ⎤
j&
See
i ≡ ⎢ ⎥ . . . (5.50)
⎣e i × a&ie + e&i × a ie ⎦
correcti
ons.
Comme
in which e&i , a&i e are the time derivatives of the vectors ei and aie of Eq. (5.47), ake e
and a
44 respectively. bold.
Kinematic Analysis
5.5 SUMMARY
In this unit, position, velocity, and acceleration analyses of a serial manipulator are
carried out. Emphasis was given on forward and inverse position analysis, and the
Jacobian matrix that appear in velocity analysis. Several examples are provided for
understanding of the concepts introduced in this unit.

5.6 KEY WORDS


Forward Kinematics : Given the joint angles, rates, and accelerations find
the end-effector position, velocity and
acceleration.
Inverse Kinematics : It is the reverse of forward kinematics, i.e., given
the end-effector trajectory find the joint
trajectories.
Jacobian : It is the matrix relating the joint-rates with the
end-effector velocities.

5.7 ANSWERS TO SAQs


SAQ 1
(a) Since there are three revolute joints, Eq. (5.46) gives

⎡ e1 e2 e3 ⎤
J ≡⎢
e3 × a3 e ⎥⎦
. . . (5.51)
⎣e1 × a1e e2 × a 2 e

where, e1 ≡ e2 ≡ e3 ≡ [0 0 1]T

Moreover,

a2 e ≡ a2 + a3 ≡ [a2 c12 + a3 c123 a2 s12 + a3 s123 0]T

a3 e ≡ a3 ≡ [ a3 c123 a3 s123 0]T

in which
s23 ≡ sin (θ1 + θ2 + θ3 ); c123 ≡ cos (θ1 + θ2 + θ3 ); s12 ≡ sin (θ1 + θ 2 );

c12 ≡ cos (θ1 + θ2 ); s1 = sin θ1; and c1 = cos θ3 .

Once the elements of the vectors ei and aie, for i = 1, 2, 3, are substituted in
Eq. (5.51) there will be three non-zero rows which are relevant, namely,

⎡ 1 1 1 ⎤
J = ⎢⎢ − a1 s1 − a2 s12 − a3 s123 − a2 s12 − a3 s123 − a3 s123 ⎥⎥ . . . (5.52)
⎢⎣ − a1 c1 + a2 c12 + a3 c123 a2 c12 + a3 s123 a3 c123 ⎥⎦

The above three rows refer to the component of the angular velocity about
Z1-axis, and the two components of the linear velocity along axes X1, Y1,
respectively.
(b) Using Eq. (5.46) the Jacobian matrix for the articulated arm can be derived
where the vector elements are obtained with the help of transformation
matrices in Example 5.2, i.e.

45
Kinematics and Dynamics ⎡0⎤ ⎡ − s1 ⎤
of Robots [ e1 ]1 ≡ ⎢⎢ 0 ⎥⎥ ; [ e 2 ]1 ≡ [ e 3 ]1 ≡ ⎢⎢ c1 ⎥⎥
⎢⎣ 1 ⎥⎦ ⎢⎣ 0 ⎥⎦

⎡c1 ( a2 c2 + a3 c23 ) ⎤ ⎡ a3 c1 c23 ⎤


and [a1e ]1 ≡ [a2 e ]1 ≡ ⎢⎢ s1 (a2 c2 + a3 c23 ) ⎥⎥ ; [a3 e ]1 ≡ [a3 ]1 ≡ ⎢⎢ a3 s1 c23 ⎥⎥
⎢⎣ − ( a2 s2 + a3 s23 ) ⎥⎦ ⎢⎣ − a3 s23 ⎥⎦

where (.)1 denotes the vector ‘0’ represented in the fixed frame, 1.
The 6 × 3 Jacobian matrix is then given by
Comme
⎡ 0 − s1 − s1 ⎤ ut
⎢ 0 c1 c1 ⎥⎥
minus
⎢ sign to
⎢ 1 0 0 ⎥ a_3c_2
J =⎢ ⎥ . . . (5.53) 3 will
⎢ − s1 (a2 c2 + a3 c23 ) − c1 (a2 s2 + a3 s23 ) − a3 c1 s23 ⎥
be
(bottom
⎢ c1 ( a2 c2 + a3 c23 ) − s1 (a2 s2 + a3 s23 ) − a1 s1 s23 ⎥ right
⎢ ⎥ element
⎣⎢ 0 − (a2 c2 + a3 c23 ) a3 c23 ⎦⎥ )

46
Kinematic Analysis
FURTHER READING
Angeles, J. (2003), Fundamental of Robotic Mechanical Systems :Theory, Methods, and
Algorithms, Spring-Verlag, New York, 2nd Edition.
Tsai, L. (1999), Robot Analysis : The Mechanics of Serial and Parallel Manipulators,
John Wiley and Sons, New York.
Yoshikawa, T. (1990), Foundation of Robotics, The MIT Press, Massachusetts.

47

You might also like