0% found this document useful (0 votes)
6 views8 pages

Differential Motion

Chapter 5 of 'Introduction to Robotics' focuses on differential motion in robotic systems, emphasizing the need to coordinate joint movements to achieve desired end-effector velocities. It introduces the Jacobian matrix, which describes the relationship between joint displacements and end-effector motion, and discusses its properties and significance in robotic control. The chapter also covers the inverse kinematics problem, providing methods to determine joint velocities for specified end-effector movements, particularly in the context of singular configurations.

Uploaded by

Malik
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)
6 views8 pages

Differential Motion

Chapter 5 of 'Introduction to Robotics' focuses on differential motion in robotic systems, emphasizing the need to coordinate joint movements to achieve desired end-effector velocities. It introduces the Jacobian matrix, which describes the relationship between joint displacements and end-effector motion, and discusses its properties and significance in robotic control. The chapter also covers the inverse kinematics problem, providing methods to determine joint velocities for specified end-effector movements, particularly in the context of singular configurations.

Uploaded by

Malik
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/ 8

Introduction to Robotics, H.

Harry Asada 1

Chapter 5
Differential Motion

In the previous chapter, the position and orientation of the manipulator end-effecter were evaluated in
relation to joint displacements. The joint displacements corresponding to a given end-effecter location
were obtained by solving the kinematic equation for the manipulator. This preliminary analysis
permitted the robotic system to place the end-effecter at a specified location in space. In this chapter,
we are concerned not only with the final location of the end-effecter, but also with the velocity at
which the end-effecter moves. In order to move the end-effecter in a specified direction at a specified
speed, it is necessary to coordinate the motion of the individual joints. The focus of this chapter is the
development of fundamental methods for achieving such coordinated motion in multiple-joint robotic
systems. As discussed in the previous chapter, the end-effecter position and orientation are directly
related to the joint displacements. Hence, in order to coordinate joint motions, we derive the
differential relationship between the joint displacements and the end-effecter location, and then solve
for the individual joint motions.

5.1 Differential Relationship


We begin by considering a two degree-of-freedom planar robot arm, as shown in Figure 5.1.1.
The kinematic equations relating the end-effecter coordinates xe and ye to the joint displacements
θ1 and θ 2 are given by

xe (θ1 , θ 2 ) = 1 cos θ1 + 2 cos(θ1 + θ 2 ) (5.1.1)


ye (θ1 , θ 2 ) = 1 sin θ1 + 2 sin(θ1 + θ 2 ) (5.1.2)

2 End Effecter
⎛ xe ⎞
Link 2 ⎜⎜ ⎟⎟
1 ⎝ ye ⎠
θ2
Link 1 Joint 2

θ1
Joint 1 x
O
Link 0
Figure 5.1.1 Two dof planar robot with two revolute joints

Department of Mechanical Engineering Massachusetts Institute of Technology


Introduction to Robotics, H. Harry Asada 2

We are concerned with “small movements” of the individual joints at the current position,
and we want to know the resultant motion of the end-effecter. This can be obtained by the total
derivatives of the above kinematic equations:

∂ x e (θ 1 , θ 2 ) ∂ x (θ , θ )
dx e = dθ1 + e 1 2 dθ 2 (5.1.3)
∂θ1 ∂θ 2
∂y (θ ,θ ) ∂y (θ ,θ )
dye = e 1 2 dθ1 + e 1 2 dθ 2 (5.1.4)
∂θ1 ∂θ 2

where xe , ye are variables of both θ1 and θ 2 , hence two partial derivatives are involved in the
total derivatives. In vector form the above equations reduce to

dx = J ⋅ dq (5.1.5)
where
⎛ dx ⎞ ⎛ dθ ⎞
dx = ⎜⎜ e ⎟⎟, dq = ⎜⎜ 1 ⎟⎟ (5.1.6)
⎝ dye ⎠ ⎝ dθ 2 ⎠
and J is a 2 by 2 matrix given by

⎛ ∂xe (θ1 ,θ 2 ) ∂xe (θ1 ,θ 2 ) ⎞


⎜ ⎟
∂θ1 ∂θ 2
J =⎜ ⎟ (5.1.7)
⎜ e θ1 ,θ 2 )
∂y ( ∂ye (θ1 ,θ 2 ) ⎟
⎜ ∂θ1 ∂θ 2 ⎟
⎝ ⎠

The matrix J comprises the partial derivatives of the functions xe (θ1 ,θ 2 ) and ye (θ1 ,θ 2 ) with
respect to joint displacements θ1 andθ 2 . The matrix J, called the Jacobian Matrix, represents the
differential relationship between the joint displacements and the resulting end-effecter motion.
Note that most robot mechanisms have a multitude of active joints, hence a matrix is needed for
describing the mapping of the vectorial joint motion to the vectorial end-effecter motion.
For the two-dof robot arm of Figure 5.1.1, the components of the Jacobian matrix are
computed as

⎛ − sin θ1 − 2 sin(θ1 + θ 2 ) − 2 sin(θ1 + θ 2 ) ⎞


J = ⎜⎜ 1 ⎟⎟ (5.1.8)
⎝ 1 cosθ1 + 2 cos(θ1 + θ 2 ) 2 cos(θ1 + θ 2 ) ⎠

By definition, the Jacobian collectively represents the sensitivities of individual end-effecter


coordinates to individual joint displacements. This sensitivity information is needed in order to
coordinate the multi dof joint displacements for generating a desired motion at the end-effecter.
Consider the instant when the two joints of the robot arm are moving at joint velocities
q = (θ1 , θ 2 )T , and let v e = ( xe , ye )T be the resultant end-effecter velocity vector. The Jacobian
provides the relationship between the joint velocities and the resultant end-effecter velocity.
Indeed, dividing eq.(5) by the infinitesimal time increment dt yields

dx e dq
=J , or v e = J ⋅ q (5.1.9)
dt dt

Thus the Jacobian determines the velocity relationship between the joints and the end-effecter.

Department of Mechanical Engineering Massachusetts Institute of Technology


Introduction to Robotics, H. Harry Asada 3

5.2 Properties of the Jacobian

The Jacobian plays an important role in the analysis, design, and control of robotic
systems. It will be used repeatedly in the following chapters. It is worth examining basic
properties of the Jacobian, which will be used throughout this book.
We begin by dividing the 2-by-2 Jacobian of eq.(5.1.8) into two column vectors:

J = (J1 , J 2 ), J1 , J 2 ∈ ℜ 2×1 (5.2.1)

Then eq.(5.1.9) can be written as

v e = J1 ⋅ θ1 + J 2 ⋅ θ 2 (5.2.2)

The first term on the right-hand side accounts for the end-effecter velocity induced by the first
joint only, while the second term represents the velocity resulting from the second joint motion
only. The resultant end-effecter velocity is given by the vectorial sum of the two. Each column
vector of the Jacobian matrix represents the end-effecter velocity generated by the corresponding
joint moving at a unit velocity when all other joints are immobilized.
Figure 5.2.1 illustrates the column vectors J1 , J 2 of the 2 dof robot arm in the two-
dimensional space. Vector J 2 , given by the second column of eq.(5.1. 8), points in the direction
perpendicular to link 2. Note, however, that vector J1 is not perpendicular to link 1 but is
perpendicular to line OE, the line from joint 1 to the endpoint E. This is because J1 represents the
endpoint velocity induced by joint 1 when joint 2 is immobilized. In other words, links 1 and 2
are rigidly connected, becoming a single rigid body of link length OE, and J1 is the tip velocity
of the link OE.

y
J1

J2 E

Link 2

θ2

Joint 2
θ1 Link 1
Joint 1 x
O

Figure 5.2.1 Geometric interpretation of the column vectors of the Jacobian

In general, each column vector of the Jacobian represents the end-effecter velocity and
angular velocity generated by the individual joint velocity while all other joints are immobilized.
Let p be the end-effecter velocity and angular velocity, or the end-effecter velocity for short, and

Department of Mechanical Engineering Massachusetts Institute of Technology


Introduction to Robotics, H. Harry Asada 4

J i be the i-th column of the Jacobian. The end-effecter velocity is given by a linear combination
of the Jacobian column vectors weighted by the individual joint velocities.

p = J1 ⋅ q1 + + J n ⋅ qn (5.2.3)

where n is the number of active joints. The geometric interpretation of the column vectors is that
J i is the end-effecter velocity and angular velocity when all the joints other than joint i are
immobilized and only the i-th joint is moving at a unit velocity.

Exercise Consider the two-dof articulated robot shown in Figure 5.2.1 again. This time we
use “absolute” joint angles measured from the positive x-axis, as shown in Figure 5.2.2. Note that
angle θ 2 is measured from the fixed frame, i.e. the x-axis, rather than a relative frame, e.g. link
1. Obtain the 2-by-2 Jacobian and illustrate the two column vectors on the xy plane. Discuss the
result in comparison with the previous case shown in Figure 5.2.1.

Link 2

θ2
Joint 2
θ1 Link 1
Joint 1 x
O

Figure 5.2.2 Absolute joint angles measured from the x-axis.

Note that the elements of the Jacobian are functions of joint displacements, and thereby
vary with the arm configuration. As expressed in eq.(5.1.8), the partial derivatives,
∂xe / ∂θ i , ∂ye / ∂θi , are functions of θ1 andθ 2 . Therefore, the column vectors J1 , J 2 vary
depending on the arm posture. Remember that the end-effecter velocity is given by the linear
combination of the Jacobian column vectors J1 , J 2 . Therefore, the resultant end-effecter velocity
varies depending on the direction and magnitude of the Jacobian column vectors J1 , J 2 spanning
the two dimensional space. If the two vectors point in different directions, the whole two-
dimensional space is covered with the linear combination of the two vectors. That is, the end-
effecter can be moved in an arbitrary direction with an arbitrary velocity. If, on the other hand,
the two Jacobian column vectors are aligned, the end-effecter cannot be moved in an arbitrary
direction. As shown in Figure 5.2.3, this may happen for particular arm postures where the two
links are fully contracted or extended. These arm configurations are referred to as singular
configurations. Accordingly, the Jacobian matrix becomes singular at these positions. Using the
determinant of a matrix, this condition is expressed as

det J = 0 (5.2.4)

Department of Mechanical Engineering Massachusetts Institute of Technology


Introduction to Robotics, H. Harry Asada 5

In fact, the Jacobian degenerates at the singular configurations, where joint 2 is 0 or 180
degrees. Substituting θ 2 = 0, π into eq.(5.1.8) yields

⎛ − ( 1 ± 2 ) sin θ1 ∓ sin θ1 ⎞
det J = ⎜⎜ 2
⎟⎟ = 0 (5.2.5)
⎝ ( 1 ± 2 ) cosθ1 ± 2 cosθ1 ⎠

Note that both column vectors point in the same direction and thereby the determinant becomes
zero.

Non-singular
J1 J1
J2
J2
J2
Singular
Singular
Configuration B
Configuration A
J1
x

Figure 5.2.3 Singular configurations of the two-dof articulated robot

5.3 Inverse Kinematics of Differential Motion

Now that we know the basic properties of the Jacobian, we are ready to formulate the
inverse kinematics problem for obtaining the joint velocities that allow the end-effecter to move
at a given desired velocity. For the two dof articulated robot, the problem is to find the joint
velocities q = (θ1 , θ 2 )T , for the given end-effecter velocity v e = (vx , v y ) . If the arm
T

configuration is not singular, this can be obtained by taking the inverse of the Jacobian matrix in
eq.(5.1.9),

q = J −1 ⋅ v e (5.3.1)

Note that the solution is unique. Unlike the inverse kinematics problem discussed in the previous
chapter, the differential kinematics problem has a unique solution as long as the Jacobian is non-
singular.
The above solution determines how the end-effecter velocity ve must be decomposed, or
resolved, to individual joint velocities. If the controls of the individual joints regulate the joint
velocities so that they can track the resolved joint velocities q , the resultant end-effecter velocity
will be the desired ve. This control scheme is called Resolved Motion Rate Control, attributed to
Daniel Whitney (1969). Since the elements of the Jacobian matrix are functions of joint
displacements, the inverse Jacobian varies depending on the arm configuration. This means that
although the desired end-effecter velocity is constant, the joint velocities are not. Coordination is

Department of Mechanical Engineering Massachusetts Institute of Technology


Introduction to Robotics, H. Harry Asada 6

thus needed among the joint velocity control systems in order to generate a desired motion at the
end-effecter.

Example Consider the two dof articulated robot arm again. We want to move the endpoint
of the robot at a constant speed along a path staring at point A on the x-axis, (+2, 0), go around
the origin through points B (+ε, 0) and C (0, +ε), and reach the final point D (0, +2) on the y-axis.
See Figure 5.3.1. For simplicity, each arm link is of unit length. Obtain the profiles of the
individual joint velocities as the end-effecter tracks the path at the constant speed.

Substituting v e = (vx , v y ) into eq.(1) yields


T

vx cos(θ1 + θ 2 ) + v y sin(θ1 + θ 2 )
θ1 = (5.3.2)
sin θ 2
vx [cosθ1 + cos(θ1 + θ 2 )] + v y [sin θ1 + sin(θ1 + θ 2 )]
θ2 = (5.3.3)
sin θ 2
y

B
2

Singular
Configuration

C θ2
θ1 A
0 B 2 x
Singular
Configuration

Figure 5.3.1 trajectory tracking near the singular points

Figure 5.3.2 shows the resolved joint velocities θ1 , θ 2 computed along the specified
trajectory. Note that the joint velocities are extremely large near the initial and final points, and
are unbounded at points A and D. These are at the arm’s singular configurations, θ 2 = 0 . As the
end-effecter gets close to the origin, the velocity of the first joint becomes very large in order to
quickly turn the arm around from point B to C. At these configurations, the second joint is almost
–180 degrees, meaning that the arm is near a singularity. This result agrees with the singularity
condition using the determinant of the Jacobian:

det J = sin θ 2 = 0, ∴θ 2 = kπ , k = 0, ± 1, ± 2, (5.3.4)

Department of Mechanical Engineering Massachusetts Institute of Technology


Introduction to Robotics, H. Harry Asada 7

In eqs.(2) and (3) above, the numerators are divided by sin θ 2 , the determinant of the Jacobian.
Therefore, the joint velocities θ1 , θ 2 blow up as the arm configuration gets close to the singular
configuration.

Joint
Velocities

θi θ1

θ2

A B C D
t (time)

Figure 5.3.2 Joint velocity profiles for tracking the trajectory in Figure 5.3.1

Furthermore, the arm’s behavior near the singular points can be analyzed by substituting
θ 2 = 0, π into the Jacobian, as obtained in eq.(5.2.5). For
1 = 2 = 1 and θ 2 = 0 , the Jacobian
column vectors reduce to the ones in the same direction:

⎛ − 2 sin θ1 ⎞ ⎛ − sin θ1 ⎞
J1 = ⎜⎜ ⎟⎟, J 2 = ⎜⎜ ⎟⎟, for θ 2 = 0 (5.3.5)
⎝ 2 cosθ1 ⎠ ⎝ cosθ1 ⎠

As illustrated in Figure 5.2.3 (singular configuration A), both joints θ1 , θ 2 generate the endpoint
velocity along the same direction. Note that no endpoint velocity can be generated in the direction
perpendicular to the aligned arm links. For θ 2 = π ,

⎛ 0⎞ ⎛ sin θ1 ⎞
J1 = ⎜⎜ ⎟⎟, J 2 = ⎜⎜ ⎟⎟, for θ 2 = π (5.3.6)
⎝ 0⎠ ⎝ − cosθ1 ⎠

The first joint cannot generate any endpoint velocity, since the arm is fully contracted. See
singular configuration B in Figure 5.2.3.

Department of Mechanical Engineering Massachusetts Institute of Technology


Introduction to Robotics, H. Harry Asada 8

At a singular configuration, there is at least one direction in which the robot cannot
generate a non-zero velocity at the end-effecter. This agrees with the previous discussion; the
Jacobian is degenerate at a singular configuration, and the linear combination of the Jacobian
column vectors cannot span the whole space.

Exercise 5.2
A three-dof spatial robot arm is shown in the figure below. The robot has three revolute
joints that allow the endpoint to move in the three dimensional space. However, this robot
mechanism has singular points inside the workspace. Analyze the singularity, following the
procedure below.

Step 1 Obtain each column vector of the Jacobian matrix by considering the endpoint velocity
created by each of the joints while immobilizing the other joints.
Step 2 Construct the Jacobian by concatenating the column vectors, and set the determinant of
the Jacobian to zero for singularity: det J = 0 .
Step 3 Find the joint angles that make det J = 0 .
Step 4 Show the arm posture that is singular. Show where in the workspace it becomes singular.
For each singular configuration, also show in which direction the endpoint cannot have a non-
zero velocity.

z Endpoint
⎛ xe ⎞
⎜ ⎟
2 ⎜ ye ⎟
⎜z ⎟
Link 3 ⎝ e⎠
θ3

Link 2 Joint 3
Joint 2 θ2
y
θ1
Link 1
x
Joint 1

Figure 5.3.3 Schematic of a three dof articulated robot

5.4 Singularity and Redundancy

Department of Mechanical Engineering Massachusetts Institute of Technology

You might also like