SlideShare a Scribd company logo
1 of 40
Download to read offline
SBE 403 B: Bioelectronic Systems (Biomedical Robotics)
Lecture 04
Time and Motion
Muhammad Rushdi
mrushdi@eng1.cu.edu.eg
Main Problems in Robotics
• What are the basic issues to be resolved and what must we
learn in order to be able to program a robot to perform its
tasks?
• Problem 1: Forward Kinematics
• Problem 2: Inverse Kinematics
• Problem 3: Velocity Kinematics Represent time-varying• Problem 3: Velocity Kinematics
• Problem 4: Path Planning
• Problem 5: Vision
• Problem 6: Dynamics
• Problem 7: Position Control
• Problem 8: Force Control
2
position and orientation of
objects in an environment.
Textbook
• Ch. 3 Time and
Motion
Peter Corke:
Robotics, Vision and
Peter Corke:
Robotics, Vision and
Control - Fundamental
Algorithms in MATLAB®.
http://www.petercorke.com/R
VC/
3
Two Problems of Time-Varying Pose
• How to generate a temporal sequence of poses,
a trajectory, that smoothly changes from an initial
pose to a final pose.
• The concept of rate of change of pose, its
temporal derivative, and how that relates to
concepts from mechanics such as velocity and
angular velocity. This allows us to solve the inverse
problem – given measurements from velocity and
angular velocity sensors how do we update the
estimate of pose for a moving object. This is the
principle underlying inertial navigation.
4
Trajectories
• A path is a spatial construct – a locus in
space that leads from an initial pose to a final
pose.
• A trajectory is a path with specified timing.• A trajectory is a path with specified timing.
• Example: There is a path from A to B, but
there is a trajectory from A to B in 10 s or at
2 ms–1.
• An important characteristic of a trajectory is
that is smooth – position and orientation
vary smoothly with time. 5
Smooth One-Dimensional Trajectories
• A trajectory is given by a scalar function of time f(t)
• Important characteristics of this function are:
its initial and final value are specified and that
it is smooth (First few temporal derivatives are
continuous:
∈ C1),
∈ C
continuous:
- Velocity (1st derivative continuous: f ∈ C1),
- Acceleration (2nd derivative continuous: f ∈ C2),
- Jerk (3rd derivative continuous: f ∈ C3)).
6
Smooth One-Dimensional Trajectories
• Examples for such a function? A polynomial
function of time:
simple to compute
can easily provide the required smoothness and
boundary conditionsboundary conditions
• Example 1: A quintic (5th order) polynomial
7The first- and second-derivatives are also
smooth polynomials.
A smooth polynomial, t ∈[0,T]
Smooth One-Dimensional Trajectories
• Example 1: A quintic (5th order) polynomial
• The trajectory has defined boundary conditions for
position, velocity and acceleration:
8
Smooth One-Dimensional Trajectories
• Example 1: A quintic (5th order) polynomial
• Writing Eq. 3.1 to Eq. 3.3 for the boundary• Writing Eq. 3.1 to Eq. 3.3 for the boundary
conditions t = 0 and t = T gives six equations:
9
This is the reason for choice
of quintic polynomial. It has
six coefficients that enable it
to meet the six boundary
conditions on initial and final
position, velocity and
acceleration.
Smooth One-Dimensional Trajectories
• Example 1: A quintic (5th order) polynomial
• In MATLAB:
[s,sd,sdd] = tpoly(0, 1, 50, 0.5, 0);
Position values range
from 0 to 1
Initial and final
velocities
[s,sd,sdd] = tpoly(0, 1, 50, 0.5, 0);
10
Position, velocity, and
acceleration
50 time steps
Smooth One-Dimensional Trajectories
• Example 1: A quintic (5th order) polynomial
The non-zero
initial velocity
causes
the polynomial
to overshoot the
terminal value –
it peaks at 5 on
a trajectory from
11
a trajectory from
0 to 1.
Smooth One-Dimensional Trajectories
• Example 1: A quintic (5th order) polynomial
The velocity peaks
at t =25 which
means that for most
of the time
the velocity is far
12
the velocity is far
less than the
maximum. The
mean velocity is
only 52% of the
peak.
Smooth One-Dimensional Trajectories
• Example 1: A quintic (5th order) polynomial
A real robot joint has a
well defined maximum
velocity and for
minimum-time motion
and we want to be
operating at that
maximum for as much
13
maximum for as much
of the time as
possible. We would
like the velocity curve
to be flatter on top.
Smooth One-Dimensional Trajectories
• Example 2: Linear-segment (constant-velocity) with
parabolic-blend (LSPB) polynomial
A hybrid trajectory which has
a constant velocity segment
with polynomial segments
for acceleration and
deceleration.
14
deceleration.
Smooth One-Dimensional Trajectories
• Example 2: Linear-segment (constant-velocity) with
parabolic-blend (LSPB) polynomial
The trajectory is called
trapezoidal due to the shape
of the velocity curve versus
time.
15
The trapezoidal trajectory is
smooth in
velocity, but not in
acceleration.
Smooth One-Dimensional Trajectories
• Example 2: Linear-segment (constant-velocity) with
parabolic-blend (LSPB) polynomial
The velocity cannot be
chosen arbitrarily, too high or
too low a value for the
maximum velocity will result
in an infeasible trajectory
16
in an infeasible trajectory
and the function returns an
error. The system is over-
constrained, having five
constraints (total time, initial
and final position and
velocity) but six degrees of
freedom (blend time, three
parabolic coefficients and
two linear coefficients).
Smooth One-Dimensional Trajectories
• Example 2: Linear-segment (constant-velocity) with
parabolic-blend (LSPB) polynomial
Blend times
17
Complete LSPB trajectory
(Spong et al., pp. 186-189)
Multi-Dimensional Trajectories
• Most useful robots have more than one axis of
motion or degree of freedom. We represent this in
vector form as x ∈ RM where M is the number of
degrees of freedom.
• Example 1: A wheeled mobile robot is
∈
• Example 1: A wheeled mobile robot is
characterized by its position (x, y) or pose (x, y, θ).
• Example 2: The tool of an arm robot has position
(x, y, z), orientation (θr, θp, θy) or pose (x, y, z, θr,
θp, θy).
• We therefore require smooth multi-dimensional
motion from an initial vector to a final vector.
18
Multi-Dimensional Trajectories
19
Multi-Segment Trajectories
• In robotics applications there is often a need to
move smoothly along a path through one or more
intermediate (via, knot, or interpolation) points
without stopping.
• This might be to avoid obstacles in the workplace,• This might be to avoid obstacles in the workplace,
or to perform a task that involves following a
piecewise continuous trajectory such as applying a
bead of sealant in a manufacturing application.
20
Multi-Segment Trajectories
• The trajectory is defined by N points xk, k ∈ [1, N] and there are N−1
motion segments, xk∈ RM is a vector representation of pose.
• The robot starts from x1 at rest and finishes at xN at rest, but moves
through (or close to) the intermediate points without stopping.
• The problem is over-constrained and in order to attain continuous
velocity we surrender the ability to reach each intermediate point.
21
Multi-Segment Trajectories
No acceleration time.
22
Acceleration time of 1 s. The trajectory
becomes more rounded as the polynomial
blending functions do their work, and the
trajectory takes more time to complete.
Interpolation of Orientation in 3D
• In robotics we often need to interpolate orientation,
for example, we require the end-effector of a robot
to smoothly change from orientation ξ0 to ξ1.
• Using the notation from Chap. 2, we require some
function ξ(s) = σ(ξ , ξ , s) where s ∈ [0, 1] whichfunction ξ(s) = σ(ξ0, ξ1, s) where s ∈ [0, 1] which
has the boundary conditions σ(ξ0, ξ1, 0) =ξ0 and
σ(ξ0, ξ1, 1) =ξ1 and where σ(ξ0, ξ1, s) varies
smoothly for intermediate values of s.
• How we implement this depends very much on our
concrete representation of ξ.
23
Interpolation of Orientation in 3D
• Using orthonormal rotation matrix, ξ ∼R ∈∈∈∈ SO(3):
This is not, in general, a valid orthonormal matrix
which has strict column norm and inter-column
orthogonality constraints. Not Suitable!orthogonality constraints. Not Suitable!
24
Interpolation of Orientation in 3D
• Using a 3-angle representation (e.g. Euler or roll-
pitch-yaw angles), ξ∼Γ∈S3 :
• For large orientation changes we see that the axis• For large orientation changes we see that the axis
around which the coordinate frame rotates changes
along the trajectory. The motion, while smooth,
sometimes looks uncoordinated.
• There will also be problems if either ξ0 or ξ1 is close
to a singularity in the particular 3-angle system
being used. 25
Interpolation of Orientation in 3D
• Using unit quaternions:
• Interpolation of unit-quaternions is only a little more
complex than for 3-angle vectors and produces a
change in orientation that is a rotation around a
fixed axis in space.fixed axis in space.
• Quaternion interpolation is achieved using
spherical linear interpolation (slerp) in which the
unit quaternions follow a great circle path on a 4-
dimensional hypersphere. The result in 3-
dimensions is rotation about a fixed axis in space.
26
Interpolation of Orientation in 3D
• Using unit quaternions: http://slideplayer.com/slide/8504527/ >
27
Interpolation of Pose in 3D
• Interpolation of pose (Cartesian motion)
requires a smooth path between two poses
in SE(3) which involves change in position as
well as in orientation:
1. Represent the initial and final poses as
homogeneous transformations.
2. Interpolate the translational component
linearly and the rotation spherically using the
quaternion interpolation.
28
Interpolation of Pose in 3D
The position coordinates vary
smoothly and linearly with time.
29
The roll-pitch-yaw angles vary smoothly but not linearly
with time because they represent a non-linear
transformation of the linearly varying quaternion.
Discontinuities are due to angle wrapping and
singularity of the RPY representation.
Interpolation of Pose in 3D
The translational motion has a velocity and acceleration discontinuity at the first and
last points. The problem is that while the trajectory is smooth in space the distance
s along the trajectory is not smooth in time. Speed along the path jumps from zero
to some finite value and then drops to zero at the end – there is no initial acceleration
or final deceleration.
30
Interpolation of Pose in 3D
The polynomial and LSPB scalar functions can be used to generate the path s so
that motion along the path is smooth. The trajectory is unchanged but the
coordinate frame now accelerates to a constant speed along the path and then
decelerates and this is reflected in smoother curves for the translational
components of the trajectory.
31
Time Varying Coordinate Frames
• So far, we discussed the generation of
coordinate frame motion which has a
translational and rotational velocity
component.
• The translational velocity is the rate of
change of the position of the origin of the
coordinate frame.
• Rotational velocity is a little more complex.
32
Rotating Coordinate Frame
• A body rotating in 3-dimensional space has an
angular velocity which is a vector quantity ω =(ωx,
ωy, ωz).
• The direction of this vector defines the
instantaneous axis of rotation, that is, the axisinstantaneous axis of rotation, that is, the axis
about which the coordinate frame is rotating at a
particular instant of time. In general this axis
changes with time.
• The magnitude of the vector is the rate of rotation
about the axis – in this respect it is similar to the
angle-axis representation for rotation.
33
Rotating Coordinate Frame
• The derivative of a time-varying rotation matrix:
where R∈∈∈∈ SO(2) or SO(3) and S(·) is a skew-
symmetric matrix that, for the 3-dimensional case,
How the rotation matrix changes as
the body rotates about ω
∈∈∈∈
symmetric matrix that, for the 3-dimensional case,
has the form
34
Rotating Coordinate Frame
• What does the derivative of R mean?
• Consider the approximation to the derivative
which we rearrange as
and substituting Eq. 3.4 we obtain
35
How the
orthnormal rotation
matrix changes as
a function of
angular velocity
Incremental Motion
• Consider a coordinate frame that undergoes
a small rotation from R0 to R1. We can write
Eq. 3.7 as
and rearrange it as
and then apply the vex operator, the inverse
of S(·), to both sides
36
A 3-vector with units of angle that represents an infinitesimal rotation about
the world x-, y- and z-axes. While rotation composition is non-commutative
in general, it’s commutative for infinitesimal angular changes.
Incremental Motion from Pose
• Given two poses ξ0 and ξ1 that differ infinitesimally
we can represent the difference between them as a
6-vector
comprising the incremental displacement and the
incremental rotation. If the poses are represented in
homogeneous transformation form
37
Pose from Incremental Motion
• The inverse operation is
and for homogenous transformation representation
isis
38
Inertial Navigation Systems
• An inertial navigation system is a “black box” that
estimates its velocity, orientation and position with
respect to the inertial reference frame (the
universe).
• Importantly, it has no external inputs such as radio• Importantly, it has no external inputs such as radio
signals from satellites and this makes it well suited
to applications such as submarine, spacecraft and
missile guidance.
• An inertial navigation system works by measuring
accelerations and angular velocities and integrating
them over time.
39
Inertial Navigation Systems
• http://www.globalspec.com/learnmore/sensors_transducers_detectors/tilt_sensing/inertial_gyros
40

More Related Content

What's hot

Jacobian inverse manipulator
Jacobian inverse manipulatorJacobian inverse manipulator
Jacobian inverse manipulatorHitesh Mohapatra
 
Z transform
Z transformZ transform
Z transformnirav34
 
Z transforms and their applications
Z transforms and their applicationsZ transforms and their applications
Z transforms and their applicationsRam Kumar K R
 
Laplace transforms
Laplace transforms Laplace transforms
Laplace transforms yash patel
 
Laplace transform and its application
Laplace transform and its applicationLaplace transform and its application
Laplace transform and its applicationmayur1347
 
Z Transform And Inverse Z Transform - Signal And Systems
Z Transform And Inverse Z Transform - Signal And SystemsZ Transform And Inverse Z Transform - Signal And Systems
Z Transform And Inverse Z Transform - Signal And SystemsMr. RahüL YøGi
 
digital control Chapter 2 slide
digital control Chapter 2 slidedigital control Chapter 2 slide
digital control Chapter 2 slideasyrafjpk
 
Applications Of Laplace Transforms
Applications Of Laplace TransformsApplications Of Laplace Transforms
Applications Of Laplace TransformsKetaki_Pattani
 
Application of Convolution Theorem
Application of Convolution TheoremApplication of Convolution Theorem
Application of Convolution Theoremijtsrd
 
Laplace transforms
Laplace transformsLaplace transforms
Laplace transformsKarnav Rana
 
Kinematic Model of Anthropomorphic Robotics Finger Mechanisms
Kinematic Model of Anthropomorphic Robotics Finger MechanismsKinematic Model of Anthropomorphic Robotics Finger Mechanisms
Kinematic Model of Anthropomorphic Robotics Finger MechanismsIOSR Journals
 
Lecture10 Signal and Systems
Lecture10 Signal and SystemsLecture10 Signal and Systems
Lecture10 Signal and Systemsbabak danyal
 
Robotics: Forward and Inverse Kinematics
Robotics: Forward and Inverse KinematicsRobotics: Forward and Inverse Kinematics
Robotics: Forward and Inverse KinematicsDamian T. Gordon
 

What's hot (20)

Analog properties and Z-transform
Analog properties and Z-transformAnalog properties and Z-transform
Analog properties and Z-transform
 
Jacobian inverse manipulator
Jacobian inverse manipulatorJacobian inverse manipulator
Jacobian inverse manipulator
 
Z transform ROC eng.Math
Z transform ROC eng.MathZ transform ROC eng.Math
Z transform ROC eng.Math
 
Z Transform
Z TransformZ Transform
Z Transform
 
Fir 04 kinem
Fir 04 kinemFir 04 kinem
Fir 04 kinem
 
Z transform
Z transformZ transform
Z transform
 
Z transforms and their applications
Z transforms and their applicationsZ transforms and their applications
Z transforms and their applications
 
Z transform
Z transformZ transform
Z transform
 
Unit 7 & 8 z-transform
Unit 7 & 8  z-transformUnit 7 & 8  z-transform
Unit 7 & 8 z-transform
 
Laplace transforms
Laplace transforms Laplace transforms
Laplace transforms
 
Laplace transform and its application
Laplace transform and its applicationLaplace transform and its application
Laplace transform and its application
 
Z Transform And Inverse Z Transform - Signal And Systems
Z Transform And Inverse Z Transform - Signal And SystemsZ Transform And Inverse Z Transform - Signal And Systems
Z Transform And Inverse Z Transform - Signal And Systems
 
digital control Chapter 2 slide
digital control Chapter 2 slidedigital control Chapter 2 slide
digital control Chapter 2 slide
 
Applications Of Laplace Transforms
Applications Of Laplace TransformsApplications Of Laplace Transforms
Applications Of Laplace Transforms
 
Application of Convolution Theorem
Application of Convolution TheoremApplication of Convolution Theorem
Application of Convolution Theorem
 
Laplace transforms
Laplace transformsLaplace transforms
Laplace transforms
 
Kinematic Model of Anthropomorphic Robotics Finger Mechanisms
Kinematic Model of Anthropomorphic Robotics Finger MechanismsKinematic Model of Anthropomorphic Robotics Finger Mechanisms
Kinematic Model of Anthropomorphic Robotics Finger Mechanisms
 
Lecture10 Signal and Systems
Lecture10 Signal and SystemsLecture10 Signal and Systems
Lecture10 Signal and Systems
 
Robotics: Forward and Inverse Kinematics
Robotics: Forward and Inverse KinematicsRobotics: Forward and Inverse Kinematics
Robotics: Forward and Inverse Kinematics
 
Z transform
 Z transform Z transform
Z transform
 

Similar to SBE 403 B Lecture 04: Time and Motion

Research on The Control of Joint Robot Trajectory
Research on The Control of Joint Robot TrajectoryResearch on The Control of Joint Robot Trajectory
Research on The Control of Joint Robot TrajectoryIJRESJOURNAL
 
090RobotTrajectoryGenerationEn.pdf
090RobotTrajectoryGenerationEn.pdf090RobotTrajectoryGenerationEn.pdf
090RobotTrajectoryGenerationEn.pdfsivapathuri
 
2A_ROBOT KINEMATICS.pptx
2A_ROBOT KINEMATICS.pptx2A_ROBOT KINEMATICS.pptx
2A_ROBOT KINEMATICS.pptxTanujBanerji1
 
Robotics: Introduction to Kinematics
Robotics: Introduction to KinematicsRobotics: Introduction to Kinematics
Robotics: Introduction to KinematicsDamian T. Gordon
 
robotics presentation (2).ppt is good for the student life and easy to gain t...
robotics presentation (2).ppt is good for the student life and easy to gain t...robotics presentation (2).ppt is good for the student life and easy to gain t...
robotics presentation (2).ppt is good for the student life and easy to gain t...poojaranga2911
 
Kinematic models and constraints.ppt
Kinematic models and constraints.pptKinematic models and constraints.ppt
Kinematic models and constraints.pptssuser8698eb
 
Industrial Robots
Industrial RobotsIndustrial Robots
Industrial RobotsNafis Ahmad
 
Trajectory Transformer.pptx
Trajectory Transformer.pptxTrajectory Transformer.pptx
Trajectory Transformer.pptxSeungeon Baek
 
Lecture 1 trajectory generation
Lecture 1 trajectory generation Lecture 1 trajectory generation
Lecture 1 trajectory generation cairo university
 
Business Proposal Presentation in Purple Monochrome Corporate Style.pptx
Business Proposal Presentation in Purple Monochrome Corporate Style.pptxBusiness Proposal Presentation in Purple Monochrome Corporate Style.pptx
Business Proposal Presentation in Purple Monochrome Corporate Style.pptxJOHN35307
 
Introduction to Real Time Rendering
Introduction to Real Time RenderingIntroduction to Real Time Rendering
Introduction to Real Time RenderingKoray Hagen
 
Mesh Shape Editing
Mesh Shape EditingMesh Shape Editing
Mesh Shape Editingssuser24ddad
 
Kinematics of Machines
Kinematics of MachinesKinematics of Machines
Kinematics of Machinesravikumarmrk
 
Robotics Representing Position & Orientation 1
Robotics Representing Position & Orientation 1Robotics Representing Position & Orientation 1
Robotics Representing Position & Orientation 1cairo university
 
Troubleshooting and Enhancement of Inverted Pendulum System Controlled by DSP...
Troubleshooting and Enhancement of Inverted Pendulum System Controlled by DSP...Troubleshooting and Enhancement of Inverted Pendulum System Controlled by DSP...
Troubleshooting and Enhancement of Inverted Pendulum System Controlled by DSP...Thomas Templin
 

Similar to SBE 403 B Lecture 04: Time and Motion (20)

Research on The Control of Joint Robot Trajectory
Research on The Control of Joint Robot TrajectoryResearch on The Control of Joint Robot Trajectory
Research on The Control of Joint Robot Trajectory
 
090RobotTrajectoryGenerationEn.pdf
090RobotTrajectoryGenerationEn.pdf090RobotTrajectoryGenerationEn.pdf
090RobotTrajectoryGenerationEn.pdf
 
2A_ROBOT KINEMATICS.pptx
2A_ROBOT KINEMATICS.pptx2A_ROBOT KINEMATICS.pptx
2A_ROBOT KINEMATICS.pptx
 
Robotics: Introduction to Kinematics
Robotics: Introduction to KinematicsRobotics: Introduction to Kinematics
Robotics: Introduction to Kinematics
 
robotics presentation (2).ppt is good for the student life and easy to gain t...
robotics presentation (2).ppt is good for the student life and easy to gain t...robotics presentation (2).ppt is good for the student life and easy to gain t...
robotics presentation (2).ppt is good for the student life and easy to gain t...
 
4267
42674267
4267
 
4267
42674267
4267
 
Robotics lec 6
Robotics lec 6Robotics lec 6
Robotics lec 6
 
Kinematic models and constraints.ppt
Kinematic models and constraints.pptKinematic models and constraints.ppt
Kinematic models and constraints.ppt
 
Industrial Robots
Industrial RobotsIndustrial Robots
Industrial Robots
 
Lecture2
Lecture2Lecture2
Lecture2
 
Robotics - introduction to Robotics
Robotics -  introduction to Robotics  Robotics -  introduction to Robotics
Robotics - introduction to Robotics
 
Trajectory Transformer.pptx
Trajectory Transformer.pptxTrajectory Transformer.pptx
Trajectory Transformer.pptx
 
Lecture 1 trajectory generation
Lecture 1 trajectory generation Lecture 1 trajectory generation
Lecture 1 trajectory generation
 
Business Proposal Presentation in Purple Monochrome Corporate Style.pptx
Business Proposal Presentation in Purple Monochrome Corporate Style.pptxBusiness Proposal Presentation in Purple Monochrome Corporate Style.pptx
Business Proposal Presentation in Purple Monochrome Corporate Style.pptx
 
Introduction to Real Time Rendering
Introduction to Real Time RenderingIntroduction to Real Time Rendering
Introduction to Real Time Rendering
 
Mesh Shape Editing
Mesh Shape EditingMesh Shape Editing
Mesh Shape Editing
 
Kinematics of Machines
Kinematics of MachinesKinematics of Machines
Kinematics of Machines
 
Robotics Representing Position & Orientation 1
Robotics Representing Position & Orientation 1Robotics Representing Position & Orientation 1
Robotics Representing Position & Orientation 1
 
Troubleshooting and Enhancement of Inverted Pendulum System Controlled by DSP...
Troubleshooting and Enhancement of Inverted Pendulum System Controlled by DSP...Troubleshooting and Enhancement of Inverted Pendulum System Controlled by DSP...
Troubleshooting and Enhancement of Inverted Pendulum System Controlled by DSP...
 

More from cairo university

Tocci chapter 13 applications of programmable logic devices extended
Tocci chapter 13 applications of programmable logic devices extendedTocci chapter 13 applications of programmable logic devices extended
Tocci chapter 13 applications of programmable logic devices extendedcairo university
 
Tocci chapter 12 memory devices
Tocci chapter 12 memory devicesTocci chapter 12 memory devices
Tocci chapter 12 memory devicescairo university
 
Tocci ch 9 msi logic circuits
Tocci ch 9 msi logic circuitsTocci ch 9 msi logic circuits
Tocci ch 9 msi logic circuitscairo university
 
Tocci ch 7 counters and registers modified x
Tocci ch 7 counters and registers modified xTocci ch 7 counters and registers modified x
Tocci ch 7 counters and registers modified xcairo university
 
Tocci ch 6 digital arithmetic operations and circuits
Tocci ch 6 digital arithmetic operations and circuitsTocci ch 6 digital arithmetic operations and circuits
Tocci ch 6 digital arithmetic operations and circuitscairo university
 
Tocci ch 3 5 boolean algebra, logic gates, combinational circuits, f fs, - re...
Tocci ch 3 5 boolean algebra, logic gates, combinational circuits, f fs, - re...Tocci ch 3 5 boolean algebra, logic gates, combinational circuits, f fs, - re...
Tocci ch 3 5 boolean algebra, logic gates, combinational circuits, f fs, - re...cairo university
 
A15 sedra ch 15 memory circuits
A15  sedra ch 15 memory circuitsA15  sedra ch 15 memory circuits
A15 sedra ch 15 memory circuitscairo university
 
A14 sedra ch 14 advanced mos and bipolar logic circuits
A14  sedra ch 14 advanced mos and bipolar logic circuitsA14  sedra ch 14 advanced mos and bipolar logic circuits
A14 sedra ch 14 advanced mos and bipolar logic circuitscairo university
 
A13 sedra ch 13 cmos digital logic circuits
A13  sedra ch 13 cmos digital logic circuitsA13  sedra ch 13 cmos digital logic circuits
A13 sedra ch 13 cmos digital logic circuitscairo university
 
A09 sedra ch 9 frequency response
A09  sedra ch 9 frequency responseA09  sedra ch 9 frequency response
A09 sedra ch 9 frequency responsecairo university
 
5 sedra ch 05 mosfet revision
5  sedra ch 05  mosfet revision5  sedra ch 05  mosfet revision
5 sedra ch 05 mosfet revisioncairo university
 
Lecture 2 (system overview of c8051 f020) rv01
Lecture 2 (system overview of c8051 f020) rv01Lecture 2 (system overview of c8051 f020) rv01
Lecture 2 (system overview of c8051 f020) rv01cairo university
 
Lecture 1 (course overview and 8051 architecture) rv01
Lecture 1 (course overview and 8051 architecture) rv01Lecture 1 (course overview and 8051 architecture) rv01
Lecture 1 (course overview and 8051 architecture) rv01cairo university
 

More from cairo university (20)

Tocci chapter 13 applications of programmable logic devices extended
Tocci chapter 13 applications of programmable logic devices extendedTocci chapter 13 applications of programmable logic devices extended
Tocci chapter 13 applications of programmable logic devices extended
 
Tocci chapter 12 memory devices
Tocci chapter 12 memory devicesTocci chapter 12 memory devices
Tocci chapter 12 memory devices
 
Tocci ch 9 msi logic circuits
Tocci ch 9 msi logic circuitsTocci ch 9 msi logic circuits
Tocci ch 9 msi logic circuits
 
Tocci ch 7 counters and registers modified x
Tocci ch 7 counters and registers modified xTocci ch 7 counters and registers modified x
Tocci ch 7 counters and registers modified x
 
Tocci ch 6 digital arithmetic operations and circuits
Tocci ch 6 digital arithmetic operations and circuitsTocci ch 6 digital arithmetic operations and circuits
Tocci ch 6 digital arithmetic operations and circuits
 
Tocci ch 3 5 boolean algebra, logic gates, combinational circuits, f fs, - re...
Tocci ch 3 5 boolean algebra, logic gates, combinational circuits, f fs, - re...Tocci ch 3 5 boolean algebra, logic gates, combinational circuits, f fs, - re...
Tocci ch 3 5 boolean algebra, logic gates, combinational circuits, f fs, - re...
 
A15 sedra ch 15 memory circuits
A15  sedra ch 15 memory circuitsA15  sedra ch 15 memory circuits
A15 sedra ch 15 memory circuits
 
A14 sedra ch 14 advanced mos and bipolar logic circuits
A14  sedra ch 14 advanced mos and bipolar logic circuitsA14  sedra ch 14 advanced mos and bipolar logic circuits
A14 sedra ch 14 advanced mos and bipolar logic circuits
 
A13 sedra ch 13 cmos digital logic circuits
A13  sedra ch 13 cmos digital logic circuitsA13  sedra ch 13 cmos digital logic circuits
A13 sedra ch 13 cmos digital logic circuits
 
A09 sedra ch 9 frequency response
A09  sedra ch 9 frequency responseA09  sedra ch 9 frequency response
A09 sedra ch 9 frequency response
 
5 sedra ch 05 mosfet.ppsx
5  sedra ch 05  mosfet.ppsx5  sedra ch 05  mosfet.ppsx
5 sedra ch 05 mosfet.ppsx
 
5 sedra ch 05 mosfet
5  sedra ch 05  mosfet5  sedra ch 05  mosfet
5 sedra ch 05 mosfet
 
5 sedra ch 05 mosfet revision
5  sedra ch 05  mosfet revision5  sedra ch 05  mosfet revision
5 sedra ch 05 mosfet revision
 
Fields Lec 2
Fields Lec 2Fields Lec 2
Fields Lec 2
 
Fields Lec 1
Fields Lec 1Fields Lec 1
Fields Lec 1
 
Fields Lec 5&6
Fields Lec 5&6Fields Lec 5&6
Fields Lec 5&6
 
Fields Lec 4
Fields Lec 4Fields Lec 4
Fields Lec 4
 
Fields Lec 3
Fields Lec 3Fields Lec 3
Fields Lec 3
 
Lecture 2 (system overview of c8051 f020) rv01
Lecture 2 (system overview of c8051 f020) rv01Lecture 2 (system overview of c8051 f020) rv01
Lecture 2 (system overview of c8051 f020) rv01
 
Lecture 1 (course overview and 8051 architecture) rv01
Lecture 1 (course overview and 8051 architecture) rv01Lecture 1 (course overview and 8051 architecture) rv01
Lecture 1 (course overview and 8051 architecture) rv01
 

Recently uploaded

Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionDr.Costas Sachpazis
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2RajaP95
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLDeelipZope
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZTE
 

Recently uploaded (20)

Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCL
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
 

SBE 403 B Lecture 04: Time and Motion

  • 1. SBE 403 B: Bioelectronic Systems (Biomedical Robotics) Lecture 04 Time and Motion Muhammad Rushdi mrushdi@eng1.cu.edu.eg
  • 2. Main Problems in Robotics • What are the basic issues to be resolved and what must we learn in order to be able to program a robot to perform its tasks? • Problem 1: Forward Kinematics • Problem 2: Inverse Kinematics • Problem 3: Velocity Kinematics Represent time-varying• Problem 3: Velocity Kinematics • Problem 4: Path Planning • Problem 5: Vision • Problem 6: Dynamics • Problem 7: Position Control • Problem 8: Force Control 2 position and orientation of objects in an environment.
  • 3. Textbook • Ch. 3 Time and Motion Peter Corke: Robotics, Vision and Peter Corke: Robotics, Vision and Control - Fundamental Algorithms in MATLAB®. http://www.petercorke.com/R VC/ 3
  • 4. Two Problems of Time-Varying Pose • How to generate a temporal sequence of poses, a trajectory, that smoothly changes from an initial pose to a final pose. • The concept of rate of change of pose, its temporal derivative, and how that relates to concepts from mechanics such as velocity and angular velocity. This allows us to solve the inverse problem – given measurements from velocity and angular velocity sensors how do we update the estimate of pose for a moving object. This is the principle underlying inertial navigation. 4
  • 5. Trajectories • A path is a spatial construct – a locus in space that leads from an initial pose to a final pose. • A trajectory is a path with specified timing.• A trajectory is a path with specified timing. • Example: There is a path from A to B, but there is a trajectory from A to B in 10 s or at 2 ms–1. • An important characteristic of a trajectory is that is smooth – position and orientation vary smoothly with time. 5
  • 6. Smooth One-Dimensional Trajectories • A trajectory is given by a scalar function of time f(t) • Important characteristics of this function are: its initial and final value are specified and that it is smooth (First few temporal derivatives are continuous: ∈ C1), ∈ C continuous: - Velocity (1st derivative continuous: f ∈ C1), - Acceleration (2nd derivative continuous: f ∈ C2), - Jerk (3rd derivative continuous: f ∈ C3)). 6
  • 7. Smooth One-Dimensional Trajectories • Examples for such a function? A polynomial function of time: simple to compute can easily provide the required smoothness and boundary conditionsboundary conditions • Example 1: A quintic (5th order) polynomial 7The first- and second-derivatives are also smooth polynomials. A smooth polynomial, t ∈[0,T]
  • 8. Smooth One-Dimensional Trajectories • Example 1: A quintic (5th order) polynomial • The trajectory has defined boundary conditions for position, velocity and acceleration: 8
  • 9. Smooth One-Dimensional Trajectories • Example 1: A quintic (5th order) polynomial • Writing Eq. 3.1 to Eq. 3.3 for the boundary• Writing Eq. 3.1 to Eq. 3.3 for the boundary conditions t = 0 and t = T gives six equations: 9 This is the reason for choice of quintic polynomial. It has six coefficients that enable it to meet the six boundary conditions on initial and final position, velocity and acceleration.
  • 10. Smooth One-Dimensional Trajectories • Example 1: A quintic (5th order) polynomial • In MATLAB: [s,sd,sdd] = tpoly(0, 1, 50, 0.5, 0); Position values range from 0 to 1 Initial and final velocities [s,sd,sdd] = tpoly(0, 1, 50, 0.5, 0); 10 Position, velocity, and acceleration 50 time steps
  • 11. Smooth One-Dimensional Trajectories • Example 1: A quintic (5th order) polynomial The non-zero initial velocity causes the polynomial to overshoot the terminal value – it peaks at 5 on a trajectory from 11 a trajectory from 0 to 1.
  • 12. Smooth One-Dimensional Trajectories • Example 1: A quintic (5th order) polynomial The velocity peaks at t =25 which means that for most of the time the velocity is far 12 the velocity is far less than the maximum. The mean velocity is only 52% of the peak.
  • 13. Smooth One-Dimensional Trajectories • Example 1: A quintic (5th order) polynomial A real robot joint has a well defined maximum velocity and for minimum-time motion and we want to be operating at that maximum for as much 13 maximum for as much of the time as possible. We would like the velocity curve to be flatter on top.
  • 14. Smooth One-Dimensional Trajectories • Example 2: Linear-segment (constant-velocity) with parabolic-blend (LSPB) polynomial A hybrid trajectory which has a constant velocity segment with polynomial segments for acceleration and deceleration. 14 deceleration.
  • 15. Smooth One-Dimensional Trajectories • Example 2: Linear-segment (constant-velocity) with parabolic-blend (LSPB) polynomial The trajectory is called trapezoidal due to the shape of the velocity curve versus time. 15 The trapezoidal trajectory is smooth in velocity, but not in acceleration.
  • 16. Smooth One-Dimensional Trajectories • Example 2: Linear-segment (constant-velocity) with parabolic-blend (LSPB) polynomial The velocity cannot be chosen arbitrarily, too high or too low a value for the maximum velocity will result in an infeasible trajectory 16 in an infeasible trajectory and the function returns an error. The system is over- constrained, having five constraints (total time, initial and final position and velocity) but six degrees of freedom (blend time, three parabolic coefficients and two linear coefficients).
  • 17. Smooth One-Dimensional Trajectories • Example 2: Linear-segment (constant-velocity) with parabolic-blend (LSPB) polynomial Blend times 17 Complete LSPB trajectory (Spong et al., pp. 186-189)
  • 18. Multi-Dimensional Trajectories • Most useful robots have more than one axis of motion or degree of freedom. We represent this in vector form as x ∈ RM where M is the number of degrees of freedom. • Example 1: A wheeled mobile robot is ∈ • Example 1: A wheeled mobile robot is characterized by its position (x, y) or pose (x, y, θ). • Example 2: The tool of an arm robot has position (x, y, z), orientation (θr, θp, θy) or pose (x, y, z, θr, θp, θy). • We therefore require smooth multi-dimensional motion from an initial vector to a final vector. 18
  • 20. Multi-Segment Trajectories • In robotics applications there is often a need to move smoothly along a path through one or more intermediate (via, knot, or interpolation) points without stopping. • This might be to avoid obstacles in the workplace,• This might be to avoid obstacles in the workplace, or to perform a task that involves following a piecewise continuous trajectory such as applying a bead of sealant in a manufacturing application. 20
  • 21. Multi-Segment Trajectories • The trajectory is defined by N points xk, k ∈ [1, N] and there are N−1 motion segments, xk∈ RM is a vector representation of pose. • The robot starts from x1 at rest and finishes at xN at rest, but moves through (or close to) the intermediate points without stopping. • The problem is over-constrained and in order to attain continuous velocity we surrender the ability to reach each intermediate point. 21
  • 22. Multi-Segment Trajectories No acceleration time. 22 Acceleration time of 1 s. The trajectory becomes more rounded as the polynomial blending functions do their work, and the trajectory takes more time to complete.
  • 23. Interpolation of Orientation in 3D • In robotics we often need to interpolate orientation, for example, we require the end-effector of a robot to smoothly change from orientation ξ0 to ξ1. • Using the notation from Chap. 2, we require some function ξ(s) = σ(ξ , ξ , s) where s ∈ [0, 1] whichfunction ξ(s) = σ(ξ0, ξ1, s) where s ∈ [0, 1] which has the boundary conditions σ(ξ0, ξ1, 0) =ξ0 and σ(ξ0, ξ1, 1) =ξ1 and where σ(ξ0, ξ1, s) varies smoothly for intermediate values of s. • How we implement this depends very much on our concrete representation of ξ. 23
  • 24. Interpolation of Orientation in 3D • Using orthonormal rotation matrix, ξ ∼R ∈∈∈∈ SO(3): This is not, in general, a valid orthonormal matrix which has strict column norm and inter-column orthogonality constraints. Not Suitable!orthogonality constraints. Not Suitable! 24
  • 25. Interpolation of Orientation in 3D • Using a 3-angle representation (e.g. Euler or roll- pitch-yaw angles), ξ∼Γ∈S3 : • For large orientation changes we see that the axis• For large orientation changes we see that the axis around which the coordinate frame rotates changes along the trajectory. The motion, while smooth, sometimes looks uncoordinated. • There will also be problems if either ξ0 or ξ1 is close to a singularity in the particular 3-angle system being used. 25
  • 26. Interpolation of Orientation in 3D • Using unit quaternions: • Interpolation of unit-quaternions is only a little more complex than for 3-angle vectors and produces a change in orientation that is a rotation around a fixed axis in space.fixed axis in space. • Quaternion interpolation is achieved using spherical linear interpolation (slerp) in which the unit quaternions follow a great circle path on a 4- dimensional hypersphere. The result in 3- dimensions is rotation about a fixed axis in space. 26
  • 27. Interpolation of Orientation in 3D • Using unit quaternions: http://slideplayer.com/slide/8504527/ > 27
  • 28. Interpolation of Pose in 3D • Interpolation of pose (Cartesian motion) requires a smooth path between two poses in SE(3) which involves change in position as well as in orientation: 1. Represent the initial and final poses as homogeneous transformations. 2. Interpolate the translational component linearly and the rotation spherically using the quaternion interpolation. 28
  • 29. Interpolation of Pose in 3D The position coordinates vary smoothly and linearly with time. 29 The roll-pitch-yaw angles vary smoothly but not linearly with time because they represent a non-linear transformation of the linearly varying quaternion. Discontinuities are due to angle wrapping and singularity of the RPY representation.
  • 30. Interpolation of Pose in 3D The translational motion has a velocity and acceleration discontinuity at the first and last points. The problem is that while the trajectory is smooth in space the distance s along the trajectory is not smooth in time. Speed along the path jumps from zero to some finite value and then drops to zero at the end – there is no initial acceleration or final deceleration. 30
  • 31. Interpolation of Pose in 3D The polynomial and LSPB scalar functions can be used to generate the path s so that motion along the path is smooth. The trajectory is unchanged but the coordinate frame now accelerates to a constant speed along the path and then decelerates and this is reflected in smoother curves for the translational components of the trajectory. 31
  • 32. Time Varying Coordinate Frames • So far, we discussed the generation of coordinate frame motion which has a translational and rotational velocity component. • The translational velocity is the rate of change of the position of the origin of the coordinate frame. • Rotational velocity is a little more complex. 32
  • 33. Rotating Coordinate Frame • A body rotating in 3-dimensional space has an angular velocity which is a vector quantity ω =(ωx, ωy, ωz). • The direction of this vector defines the instantaneous axis of rotation, that is, the axisinstantaneous axis of rotation, that is, the axis about which the coordinate frame is rotating at a particular instant of time. In general this axis changes with time. • The magnitude of the vector is the rate of rotation about the axis – in this respect it is similar to the angle-axis representation for rotation. 33
  • 34. Rotating Coordinate Frame • The derivative of a time-varying rotation matrix: where R∈∈∈∈ SO(2) or SO(3) and S(·) is a skew- symmetric matrix that, for the 3-dimensional case, How the rotation matrix changes as the body rotates about ω ∈∈∈∈ symmetric matrix that, for the 3-dimensional case, has the form 34
  • 35. Rotating Coordinate Frame • What does the derivative of R mean? • Consider the approximation to the derivative which we rearrange as and substituting Eq. 3.4 we obtain 35 How the orthnormal rotation matrix changes as a function of angular velocity
  • 36. Incremental Motion • Consider a coordinate frame that undergoes a small rotation from R0 to R1. We can write Eq. 3.7 as and rearrange it as and then apply the vex operator, the inverse of S(·), to both sides 36 A 3-vector with units of angle that represents an infinitesimal rotation about the world x-, y- and z-axes. While rotation composition is non-commutative in general, it’s commutative for infinitesimal angular changes.
  • 37. Incremental Motion from Pose • Given two poses ξ0 and ξ1 that differ infinitesimally we can represent the difference between them as a 6-vector comprising the incremental displacement and the incremental rotation. If the poses are represented in homogeneous transformation form 37
  • 38. Pose from Incremental Motion • The inverse operation is and for homogenous transformation representation isis 38
  • 39. Inertial Navigation Systems • An inertial navigation system is a “black box” that estimates its velocity, orientation and position with respect to the inertial reference frame (the universe). • Importantly, it has no external inputs such as radio• Importantly, it has no external inputs such as radio signals from satellites and this makes it well suited to applications such as submarine, spacecraft and missile guidance. • An inertial navigation system works by measuring accelerations and angular velocities and integrating them over time. 39
  • 40. Inertial Navigation Systems • http://www.globalspec.com/learnmore/sensors_transducers_detectors/tilt_sensing/inertial_gyros 40