Download as pdf or txt
Download as pdf or txt
You are on page 1of 36

Robot, Mechanics and Control October 22nd, 2019

Lecture 6
Time and Motion

Dr. Muhammad Jawad Khan

Robotics and Intelligent Machine Engineering Department,


School of Mechanical and Manufacturing,
National University of Sciences and Technology,
Islamabad, Pakistan.
\
Robotics and Intelligent Machine Engineering, NUST 1 / 38
Time and Motion

• How pose changes over time?


• Linear and Angular velocity of rigid bodies
• Motion of a Manipulator

Robotics and Intelligent Machine Engineering, NUST 2 / 38


Basics – Linear Velocity

• Derivative of a vector

• The velocity of a position vector can be thought


of as the linear velocity of the point in space
represented by the position vector.
• It is important to indicate the frame in which the
vector is differentiated.
• Velocity vector when expressed in terms of frame
{A}
Robotics and Intelligent Machine Engineering, NUST 3 / 38
Basics – Linear Velocity
Frame wrt which
Frame wrt which
position vector is
resulting velocity
differentiated
vector is
expressed

Leading superscript can be omitted when expressed in terms of itself

we can always remove the outer, leading superscript by explicitly including the
rotation matrix that accomplishes the change in reference frame

Robotics and Intelligent Machine Engineering, NUST 4 / 38


Basics – Linear Velocity

• Generally, the velocity of the origin of a frame is


considered relative to some understood universe
reference frame.

• we use the notation to refer to the velocity of the


origin of frame {C}
• What is
velocity of the origin of frame {C} expressed in terms of frame {A}
(though differentiation was done relative to {U})

Robotics and Intelligent Machine Engineering, NUST 5 / 38


Example

Robotics and Intelligent Machine Engineering, NUST 6 / 38


Basics – Angular Velocity

• Angular velocity vector – symbol Ω


• Linear velocity describes an attribute of a point,
• Angular velocity describes an attribute of a body.
• We always attach a frame to the bodies, therefore
angular velocity describes rotational motion of a
frame

Robotics and Intelligent Machine Engineering, NUST 7 / 38


Basics – Angular Velocity

• AΩB describes the rotation of frame B relative


to frame A

• Physically, at any instant, the direction of AΩB


indicates the instantaneous axis of rotation of
{B} relative to {A}, and the magnitude of AΩB
indicates the speed of rotation.
Robotics and Intelligent Machine Engineering, NUST 8 / 38
Basics – Angular Velocity

• An angular velocity vector may be expressed in any


coordinate system, and so another leading superscript
may be added; for example, C(AΩB) is the angular
velocity of frame {B} relative to {A} expressed in
terms of frame{C}
• Simplified notation: angular velocity of frame (C)
relative to some understood reference frame, (U)

• the angular velocity of frame (C) expressed in terms


of (A) (though the angular velocity is with respect to
(U)).

Robotics and Intelligent Machine Engineering, NUST 9 / 38


Linear and Angular Velocities of Rigid Bodies

• We focus on motion of rigid body with regards to


velocity
• We therefore extend the notions of translations
and orientations described earlier to the time-
varying case
• We attach a coordinate system to any body that
we wish to describe. Then, motion of rigid bodies
can be equivalently studied as the motion of
frames relative to one another.

Robotics and Intelligent Machine Engineering, NUST 10 / 38


Linear and Angular Velocities of Rigid Bodies

• Linear Velocity
Consider a frame {B} attached to a rigid body. We wish to
describe the motion of {B} relative to frame {A}. For this
time instant assume no change in orientation of B relative to
A i.e. motion of Q is due to APBORG or BQ changing in time

Robotics and Intelligent Machine Engineering, NUST 11 / 38


Linear and Angular Velocities of Rigid Bodies

• Rotational Velocity
–let us consider two frames with coincident origins and with zero
linear relative velocity; their origins will remain coincident for all
time.
–The orientation of frame {B} with respect to frame {A} is
changing in time
–rotational velocity of {B} relative to {A} is described by a vector
called AΩB

Robotics and Intelligent Machine Engineering, NUST 12 / 38


Linear and Angular Velocities of Rigid Bodies

• Let us consider that the vector Q is constant as


viewed from frame {B}; that is
• Even though it is constant relative to {B}, it is
clear that point Q will have a velocity as seen
from {A} that is due to the rotational velocity AΩB

Robotics and Intelligent Machine Engineering, NUST 13 / 38


Linear and Angular Velocities of Rigid Bodies

• To solve for the velocity of point Q, as observed from


frame {A}, figure shows two instants of time as vector Q
rotates around AΩB
We can figure out both the direction and
the magnitude of the change in the vector
as viewed from {A}

• The differential change in AQ must be


perpendicular to both AΩB and AQ

• The magnitude of the differential change


is

• These conditions on magnitude and


direction immediately suggest the vector
cross product

Robotics and Intelligent Machine Engineering, NUST 14 / 38


Linear and Angular Velocities of Rigid Bodies

• Rotational Velocity

• In the general case, the vector Q could also be


changing with respect to frame {B}, so, adding
this component, we have

Robotics and Intelligent Machine Engineering, NUST 15 / 38


Linear and Angular Velocities of Rigid Bodies

• Linear + Rotational Velocity

the derivative of a vector in a moving frame as seen from a stationary


frame.

Robotics and Intelligent Machine Engineering, NUST 16 / 38


Linear and Angular Velocities of Rigid Bodies

• Mathematical Insight of Angular Velocity

We can derive an interesting relationship between the derivative of an orthonormal


matrix and a certain skew-symmetric matrix as follows. For any n x n orthonormal
matrix, R, we have
n x n identity
matrix
Differentiating by
product rule

Using the property

Let

Robotics and Intelligent Machine Engineering, NUST 17 / 38


Linear and Angular Velocities of Rigid Bodies

• Velocity of a point due to rotating reference frame


Consider a fixed vector BP unchanging with respect to frame (B). Its description in
another frame {A} is given as

or

Substituting for BP

the skew-symmetric matrix we have introduced is called


the angular-velocity matrix
Robotics and Intelligent Machine Engineering, NUST 18 / 38
Linear and Angular Velocities of Rigid Bodies

• Skew-Symmetric Matrices and Vector Cross-Product


If we assign the elements in a skew-symmetric matrix S
as

and define the 3 x 1 column vector

Angular Velocity
Vector

then it is easily verified that

where P is any vector, and x is the vector cross-product


Hence

Robotics and Intelligent Machine Engineering, NUST 19 / 38


Matrix Exponential

where θ is the rotation angle, and the notation [·]×: R-> R2×2 indicates a mapping
from
a scalar to a skew-symmetric matrix.
In 2 dimensions the skew-symmetric matrix
is

Robotics and Intelligent Machine Engineering, NUST 20 / 38


Matrix Exponential

Consider a pure rotation of 0.3 radians expressed as a rotation


matrix

We can compute the logarithm of this matrix using the MATLAB built in function logm

Note that the result is a simple matrix with two


elements having a magnitude of 0.3, which
intriguingly is the original rotation angle
The inverse of a logarithm is exponentiation and using the built in MATLAB matrix
exponential function expm
We can conclude that rotation matrix is
simply the exponential of skew symmetric
matrix. Hence we can represent the rotation
matrix by a single parameter θ

Robotics and Intelligent Machine Engineering, NUST 21 / 38


Understanding the Exponential Mapping

• Consider a point P, defined by a coordinate vector p, being


rotated with an angular velocity ω which is a vector whose
direction defines the axis of rotation and whose magnitude ||ω||
specifies the rate of rotation about the axis which we assume
passes through the origin. We wish to rotate the point by an
angle θ about this axis and the velocity of the point is known
from mechanics to be

replace the cross product with a skew-symmetric matrix giving a matrix-vector


product

First order ODE solution


Robotics and Intelligent Machine Engineering, NUST 22 / 38
Understanding the Exponential Mapping

First order ODE solution

If ||ω|| = 1 then after t seconds the vector will have rotated by t radians. We
require
a rotation by θ so we can set t = θ to give

vector p(0) being rotated to p(θ ). A matrix that rotates a vector is a rotation
matrix, and this implies that our matrix exponential is a rotation matrix

Robotics and Intelligent Machine Engineering, NUST 23 / 38


Understanding the Exponential Mapping

• General case of rotation + translation

rearranging into matrix form

introducing homogeneous coordinates

where Σ is a 4 × 4 augmented skew-symmetric matrix. Again, by analogy with the


scalar case we can write the solution as

Robotics and Intelligent Machine Engineering, NUST 24 / 38


Motion of the Links of the Robot

• link frame {0} is our reference frame


• Vi is the linear velocity and ωi is the angular
velocity of frame {i}
• At any instant, each link of a robot in motion
has some linear and angular velocity

Robotics and Intelligent Machine Engineering, NUST 25 / 38


Velocity Propagation from Link to Link

• We now consider the problem of calculating


the linear and angular velocities of the links of
a robot.

Robotics and Intelligent Machine Engineering, NUST 26 / 38


Velocity Propagation from Link to Link

• A manipulator is a chain of bodies, each one capable of


motion relative to its neighbors.
• The velocity of link i + 1 will be that of link i, plus
whatever new velocity components were added by
joint i + 1
Rotational velocities can be added
when both ω vectors are written with
respect to the same frame. Therefore,
the angular velocity of link i + 1 is the
same as that of link i plus a new
component caused by rotational
velocity at joint i + 1

Robotics and Intelligent Machine Engineering, NUST 27 / 38


Velocity Propagation from Link to Link

• Remember that linear velocity is associated


with a point, but angular velocity is associated
with a body. Hence, the term "velocity of a
link" here means the linear velocity of the
origin of the link frame and the rotational
velocity of the link

Robotics and Intelligent Machine Engineering, NUST 28 / 38


Velocity Propagation from Link to Link

By premultiplying both sides by i+1Ri, we can find the description of the


angular velocity of link i + 1 with respect to frame {i + 1}

Important Result 1

The linear velocity of the origin of frame {i + 1} is the


same as that of the origin of frame {i} plus a new
component caused by rotational velocity of link i.

By premultiplying both sides by i+1Ri

Important Result 2
Robotics and Intelligent Machine Engineering, NUST 29 / 38
Velocity Propagation from Link to Link

Results for Revolute Joints

Results for Prismatic


Joints

• Applying these equations


successively from link to link, we
can compute NωN and NvN the
rotational and linear velocities of
the last link
• If the velocities are desired in
terms of the base coordinate
system, they can be rotated into
base coordinates by
multiplication with 0RN

Robotics and Intelligent Machine Engineering, NUST 30 / 38


Example

• A two-link manipulator with rotational joints is shown.


Calculate the velocity of the tip of the arm as a function
of joint rates. Give the answer in two forms—in terms
of frame {3} and also in terms of frame {O}

Robotics and Intelligent Machine Engineering, NUST 31 / 38


Example

Robotics and Intelligent Machine Engineering, NUST 32 / 38


Example

Robotics and Intelligent Machine Engineering, NUST 33 / 38


Example

Robotics and Intelligent Machine Engineering, NUST 34 / 38


Example

Robotics and Intelligent Machine Engineering, NUST 35 / 38


Example

Robotics and Intelligent Machine Engineering, NUST 36 / 38

You might also like