Lecture 5 Revised
Lecture 5 Revised
Robotics
Lecture 5
Velocities, Static Forces and
Jacobian
1
Outline
• Differentiation of a position vector
• Jacobians
• Singularities
2
Time Varying Position and Orientation
Differentiation of a Position Vector
a. Notation for the derivative of the vector (Q)
𝐶 𝐴
Ω B = Angular velocity of {B} wrt {A} expressed in {C}
4
Time Varying Position and Orientation
Linear and Rotational Velocity of Rigid Bodies
a. Linear Velocity
• Lets describe the motion of BQ wrt {A}
• Frame {B} is located relative to frame {A}, as described by 𝐴𝑃𝐵𝑂𝑅𝐺 and 𝐴
𝐵𝑅
• Assume 𝐴𝐵𝑅 is not changing wrt time.
BQ
5
Time Varying Position and Orientation
Linear and Rotational Velocity of Rigid Bodies
b. Derivation of an orthonormal matrix
• If R is a proper orthonormal matrix, or rotation matrix of order n x n
𝑅𝑅𝑇 = 𝐼𝑛 = n x n Identity matrix
Differentiate
ሶ 𝑇 + 𝑅𝑅ሶ 𝑇 = 0 (n x n matrix)
𝑅𝑅
𝑅𝑅ሶ 𝑇 + (𝑅𝑅
ሶ 𝑇 )𝑇 = 0 3 x 3 (using (AB)T=BTAT)
Therefore 𝑆 = 𝑅ሶ 𝑅−1 ՜ 𝑅ሶ = 𝑆𝑅
6
Time Varying Position and Orientation
Linear and Rotational Velocity of Rigid Bodies
c. Velocity of point due to rotating reference frame
Consider a fixed vector 𝐵𝑝 unchanging wrt fixed frame {B}. Its description in another frame {A}
is given as
𝐴𝑝 = 𝐵𝐴𝑅 𝐵𝑝
= 𝐵𝐴𝑆 𝐴𝑝
𝐴𝑝ሶ
7
Time Varying Position and Orientation
Linear and Rotational Velocity of Rigid Bodies
d. Skew symmetric matrix and vector-cross product
Elements to the skew symmetric matrix ‘S’
0 −Ω𝑧 Ω𝑦 Ω𝑥
𝑆 = Ω𝑧 0 −Ω𝑥 where 𝛀 = Ω𝑦
−Ω𝑦 Ω𝑥 0 Ω𝑧
𝑝𝑥 −Ω𝑧 𝑝𝑦 + Ω𝑦 𝑝𝑧
Lets take a vector 𝒑 = 𝑝𝑦 , then 𝑆𝒑 = Ω𝑧 𝑝𝑥 − Ω𝑥 𝑝𝑧 ,
𝑝𝑧 −Ω𝑦 𝑝𝑥 + Ω𝑥 𝑝𝑦
𝒊 𝒋 𝒌 Ω𝑦 𝑝𝑧 − Ω𝑧 𝑝𝑦
Ω × 𝒑 = Ω𝑥 Ω𝑦 Ω𝑧 = Ω𝑧 𝑝𝑥 − Ω𝑥 𝑝𝑧
𝑝𝑥 𝑝𝑦 𝑝𝑧 Ω𝑥 𝑝𝑦 − Ω𝑦 𝑝𝑥
The equations 𝐴 𝐴 𝐴
𝑃𝑉 = 𝐵𝑆 𝒑 velocity can be
written as 𝐴𝑉 = 𝐴Ω × 𝐴𝒑
𝑃 𝐵
8
Time Varying Position and Orientation
Linear and Rotational Velocity of Rigid Bodies
e. Physical insight of the angular-velocity vector
𝑅 𝑡 + ∆𝑡 can be written as 𝑅 𝑡 + ∆𝑡 = 𝑅𝐾 ∆𝜃 𝑅 𝑡
(𝑅𝐾 ∆𝜃 − 𝐼3 )
𝑅ሶ = lim 𝑅(𝑡)
∆𝑡՜0 ∆𝑡
9
Time Varying Position and Orientation
Linear and Rotational Velocity of Rigid Bodies
e. Physical insight of the angular-velocity vector
f. where 𝑐𝜃 = 𝑐𝑜𝑠𝜃 = 1
e. 𝑠𝜃 = 𝑠𝑖𝑛𝜃 = ∆𝜃
𝑣𝜃 = 1 − 𝑐𝑜𝑠𝜃 = 0
10
Time Varying Position and Orientation
Linear and Rotational Velocity of Rigid Bodies
e. Physical insight of the angular-velocity vector
Dividing by ∆𝑡 and taking limit
• The physical meaning of the angular-velocity vector Ω is that, at any instant, the change in
orientation of a rotating frame can be viewed as a rotation about some axis 𝐾.
• This instantaneous axis of rotation, taken as a unit vector and then scaled by the speed of
ሶ yields the angular-velocity vector.
rotation about that axis (𝜃),
11
Time Varying Position and Orientation
Linear and Rotational Velocity of Rigid Bodies
f. Rotational Velocity
Only Rotational Velocity ( 𝐵𝑉𝑄 = 0 if Q is viewed from {B})
• Fames with coincident origins (forever) with zero linear velocity
• The orientation of {B} is changing in time wrt {A} and denoted by 𝑨𝜴𝑩
𝑑 𝐴 𝐵
𝐴𝑄 = 𝐴 𝐵
𝐵𝑅 𝑄 Differentiate >> 𝐴
𝑄ሶ = 𝑅 𝑄
𝑑𝑡 𝐵
𝑄ሶ = Ω × 𝑄
12
Time Varying Position and Orientation
Linear and Rotational Velocity of Rigid Bodies
f. Rotational Velocity
• Simultaneous linear and rotational velocity ( 𝑩𝑽𝑸 ≠ 𝟎)
The orientation of frame {B} wrt frame {A} is changing in time and denoted by 𝐵𝐴Ω
• General Velocity
13
Jacobian
Motions of the links of a robot
a. Velocity ‘propagation’ from link to link
• At any instant, velocity of any link has some linear and angular velocity e.g. Link ‘i’
• As frame is rigidly attached to link, link velocity means the frame velocity
• Velocity of link ‘i+1’ will be that of link ‘i’, plus velocity components added by joint ‘i+1’.
• Angular velocity of link ‘i+1’ same as link ‘i’ plus rotational velocity at joint ‘i+1’
14
Jacobian
Motions of the links of a robot
a. Velocity ‘propagation’ from link to link
Equations of linear velocity of origin of the frame {i+1} is same as {i} plus rotational velocity of
link ‘i’
15
Jacobian
Motions of the links of a robot
b. If joint ‘i+1’ is prismatic then,
• Applying these equations successively from link to link, we can compute NωN and NvN the
rotational and linear velocities of the last link.
• Note that the resulting velocities are expressed in terms of frame {N}. This turns out to be
useful, as we will see later.
• If the velocities are desired in terms of the base coordinate system, they can be rotated into
base coordinates by multiplication with 𝑁0𝑅
16
Jacobian
Motions of the links of a robot
Example
17
Jacobian D-H Parameters
Link 𝜶𝒊−𝟏 𝒂𝒊−𝟏 𝒅𝒊 𝜽𝒊
1 0 0 0 𝜃1
2 0 L1 0 𝜃2
3 0 L2 0 0
18
19
Jacobian
20
Jacobian
Jacobian
It is a multidimensional form of the derivative ex. If we have six functions, each of which is a
function of six independent variables,
21
Jacobian
22
Jacobian
23
Jacobian
• In the field of robotics, we generally use Jacobians that relate joint velocities to Cartesian velocities
of the tip of the arm—for example
where ϴ is the vector of joint angles of the manipulator and 𝑣 is a vector of cartesian velocities
• For the general case of a six-jointed robot, the Jacobian is 6 × 6, ϴሶ is 6 × 1, and 0𝑣 is 6 × 1. This
6 × 1 cartesian velocity vector is the 3 × 1 linear velocity vector and the 3 × 1 rotational velocity
vector stacked together:
24
Jacobian
• In the case of a two-link arm, we can write a 2 × 2 Jacobian that relates joint rates to end-effector
velocity.
• From the result of Example 5.3, we can easily determine the Jacobian of our two-link arm. The
Jacobian written in frame {3} is
25
Jacobian
Changing Jacobian’s Frame of Reference
Given: • This clearly shows the method of
transforming Jacobian from one frame of
reference to another
As the velocity transformation can be given as:
So we can write:
26
Singularities
• As we have a linear transformation relating joint velocity to Cartesian velocity, a reasonable
question to ask is: Is this matrix invertible?
• Is the Jacobian invertible for all values of ϴ? If not, where is it not invertible?
• Such locations are called singularities of the mechanism or singularities for short.
• All manipulators have singularities at the boundary of their workspace, and most have loci of
singularities inside their workspace
27
Singularities
• Workspace-boundary singularities occur when the manipulator is fully stretched out or folded
back on itself in such a way that the end-effector is at or very near the boundary of the workspace
• Workspace-interior singularities occur away from the workspace boundary; they generally are
caused by a lining up of two or more joint axes
• When a manipulator is in a singular configuration, it has lost one or more degrees of freedom (as
viewed from Cartesian space).
• This means that there is some direction (or subspace) in Cartesian space along which it is
impossible to move the hand of the robot, no matter what joint rates are selected.
28
Singularities
Example 5.4
Where are the singularities of the simple two-link arm of Example 5.3? What is the physical
explanation of the singularities? Are they workspace-boundary singularities or workspace-interior
singularities?
Where the determinant is equal to zero, the Jacobian has lost full rank and is singular:
These singularities are workspace-boundary singularities, because they exist at the edge of
the manipulator’s workspace
29
Singularities
The danger in applying ϴሶ = 𝐽−1 (ϴ)𝑣 in a robot control system is that, at a singular point, the inverse
Jacobian blows up!
This results in joint rates approaching infinity as the singularity is approached
Example 5.5
Consider the two-link robot from Example 5.3 as it is moving its end-effector along the 𝑋 axis at 1.0
m/s, as in Fig. 5.10. Show that joint rates are reasonable when far from a singularity, but that, as a
singularity is approached at θ2 = 0, joint rates tend to infinity.
30
Singularities
We start by calculating the inverse of the Jacobian written
in {0}:
Then, using above eq for a velocity of 1 m/s in the 𝑋 direction, we can calculate joint rates as a
function of manipulator configuration:
Clearly, as the arm stretches out toward θ2 = 0, both joint rates go to infinity
31
Static Forces in Manipulators
• Typically, the robot is pushing on something in the environment with the chain’s free end (the end-
effector) or is perhaps supporting a load at the hand.
• We wish to solve for the joint torques that must be acting to keep the system in static equilibrium.
• In considering static forces in a manipulator, we first lock all the joints so that the manipulator
becomes a structure. We then consider each link in this structure and write a force-moment balance
relationship in terms of the link frames.
• We compute what static torque must be acting about the joint axis in order for the manipulator to
be in static equilibrium
• In this way, we solve for the set of joint torques needed to support a static load acting at the end-
effector
32
Static Forces in Manipulators
• The static forces and torques we are considering at the joints are those caused by a static force or
torque (or both) acting on the last link—for example, as when the manipulator has its end-effector
in contact with the environment
• We define special symbols for the force and torque exerted by a neighbor link:
fi = force exerted on link i by link i − 1,
ni = torque exerted on link i by link i − 1.
33
Static Forces in Manipulators
34
Static Forces in Manipulators
35
Static Forces in Manipulators
• What torques are needed at the joints in order to balance the reaction forces and moments acting on
the links?
• All components of the force and moment vectors are resisted by the structure of the mechanism
itself, except for the torque about the joint axis.
• Therefore, to find the joint torque required to maintain the static equilibrium, the dot product of the
joint-axis vector with the moment vector acting on the link is computed:
• In the case that joint i is prismatic, we compute the joint actuator force as
As a matter of convention, we generally define the positive direction of joint torque as the direction
which would tend to move the joint in the direction of increasing joint angle
36
Static Forces in Manipulators
EXAMPLE 5.7
The two-link manipulator of Example 5.3 is applying a force vector 3F with its end-effector.
(Consider this force to be acting at the origin of {3}.) Find the required joint torques as a function of
configuration and of the applied force. (See Fig.)
37
Static Forces in Manipulators
It is not a coincidence that this matrix is the transpose of the Jacobian that we found in (5.66) 38
Jacobian in Force Domain
We can equate the work done in Cartesian terms with the work done in joint-space terms. In the
multidimensional case, work is the dot product of a vector force or torque and a vector displacement.
Thus, by principle of virtual work, we have
Therefore
39
Cartesian Transformations of Velocities and Static Forces
z
z
40
Cartesian Transformations of Velocities and Static Forces
41