0% found this document useful (0 votes)
25 views48 pages

9 - Parameterization

This document discusses trajectory planning for mobile and serial robots. It covers generating smooth joint trajectories over time through techniques like quintic polynomials and hybrid trajectories. It also covers parameterizing robot configurations through homogeneous transformations, screws, and dual quaternions. Dual quaternions allow representing rotations and translations together in a coordinate invariant way and respect motion sub-group constraints.

Uploaded by

andriusjaya787
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)
25 views48 pages

9 - Parameterization

This document discusses trajectory planning for mobile and serial robots. It covers generating smooth joint trajectories over time through techniques like quintic polynomials and hybrid trajectories. It also covers parameterizing robot configurations through homogeneous transformations, screws, and dual quaternions. Dual quaternions allow representing rotations and translations together in a coordinate invariant way and respect motion sub-group constraints.

Uploaded by

andriusjaya787
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/ 48

Mobile and Serial Robots

(Robots Móviles y Articulados)


Parameterization
MCTG1021

Carlos Saldarriaga, PhD


[email protected]
Trajectory Planning

• The goal of trajectory planning is to generate the


reference inputs to the motion control system which
ensures that the manipulator executes the planned
trajectories
• Given a number of parameters, we can describe a
desired trajectory
• Planning: time sequence of the values attained by an
interpolating function of the desired trajectory.
• (WS)
Trajectory Planning (cont.)

• A manipulator must be able to move from an initial


pose to a final assigned pose.
• Suitably smooth trajectories
• Definitions:
• Path: Pure geometric description of motion
𝜃 𝑠 , 𝑠 ∈ 0,1
• Trajectory: path with a specified timing law (i.e., velocities,
acc)
𝜃 𝑡 , 𝑡 ∈ 0, 𝑇
Time scaling
𝜃 𝑠 𝑡
𝑑𝜃
𝜃ሶ = 𝑠ሶ
𝑑𝑠
Joint Trajectories

• Smooth changes over time


• Function of time
• Its first few temporal derivatives need to be continuous
• Initial and final values are usually specified
• An obvious candidate is a polynomial f(t)
• A quintic (fifth-order) polynomial is often used
• 𝑆 𝑡 = 𝐴𝑡 5 + 𝐵𝑡 4 + 𝐶𝑡 3 + 𝐷𝑡 2 + 𝐸𝑡 + 𝐹
• 𝑆ሶ 𝑡 = 5𝐴𝑡 4 + 4𝐵𝑡 3 + 3𝐶𝑡 2 + 2𝐷𝑡 + 𝐸
• 𝑆ሷ 𝑡 = 20𝐴𝑡 3 + 12𝐵𝑡 2 + 6𝐶𝑡 + 2𝐷
• With 6 boundary conditions at t=0 and t=T
Quintic polynomial (time scaling)

• 6 (scalar) equations and 6 unknowns. Solvable for the coefficients


• This is the main reason for choice of 5th degree
• Velocity boundary c’s can be set to zero
Polynomials

• Velocity peak at the middle → most of the time the velocity < max
• Not using the motor as fully as we could
Hybrid trajectory

• Constant velocity segment with polynomial segments for


acceleration and deceleration

Trapezoidal
Parameterizations of RB confs SE(3)

• Orientation:
• Rotation matrix
• Axis-angle
• Euler
• RPY
• Unit quaternion
• Position: Cartesian (x, y, z)
• Rotation + Translation
• Homogeneous transformation
𝑥
• Cartesian pose
𝑦
𝑧
𝒙 = 𝑞0
𝑞1
𝑞2
• Not easily parameterized 𝑞3
𝑞02 + 𝑞12 + 𝑞22 + 𝑞32 =1
(cont.)

𝑥0
𝑥𝑓
𝑦0
𝑧0 𝑦𝑓
𝑧𝑓
𝑸𝟎
𝑸𝒇

Lynch, Park
Mobile and Serial Robots
(Robots Móviles y Articulados)
Parameterization 2
MCTG1021

Carlos Saldarriaga, PhD


[email protected]
Parameterizations of RB confs SE(3)

• Orientation:
• Rotation matrix
• Axis-angle
• Euler
• RPY
• Unit quaternion
• Position: Cartesian (x, y, z)
• Rotation + Translation
• Homogeneous transformation
𝑥
• Cartesian pose
𝑦
𝑧
𝒙 = 𝑞0
𝑞1
𝑞2
• Not easily parameterized 𝑞3
𝑞02 + 𝑞12 + 𝑞22 + 𝑞32 =1
(cont.)

𝑥0
𝑥𝑓
𝑦0
𝑧0 𝑦𝑓
𝑧𝑓
𝑸𝟎
𝑸𝒇

Lynch, Park
Screw motion
Pf The pitch of a pure screw
• Two points relates rotation about an axis
to translation along that axis.
P0

• RB motion is screw motion


• Axis is a line in space
q+λw p p’’
• Analog to axis-angle rep in R
• Chasles Theorem: Every RB
displacement can be realized
by a rotation about an axis p’
combined with a translation
along the axis
• Rotation and translation can
occur simultaneously
Linear interpolation
Power of a Unit Quaternion

Scaling the angle


We can generate any point between initial and final orientation
Spherical linear interpolation (SLERP)

Pf

P0
3R Example
Screw motion

• Pitch h=d/θ

• 𝒑′′ = 𝒒 + 𝒆𝒘𝜽 𝒑 − 𝒒 + 𝒉𝜽𝒘
• HT
ෝ p p’’
p -- g -- q + 𝑒 𝒘𝜽 𝒑 − 𝒒 + ℎ𝜃𝒘

𝒑 ෝ
𝒘𝜃 ෝ
𝒘𝜃
𝒈 = 𝑒 𝑰 − 𝑒 𝒒 + ℎ𝜃𝒘 𝒑
1 𝟎 1 1
p’
From the definition of RB transf:
ෝ ෝ
𝑒 𝒘𝜃 𝑰 − 𝒆𝒘𝜃 𝒘 × 𝒗 + 𝒘𝒘𝑻 𝒗𝜃
𝟎 1
Then,
𝒗 = −𝒘 × 𝒒 + ℎ𝒘
For a revolute joint:
ℎ = 0; 𝒗 = −𝒘 × 𝒒
Screw theory

• Axis, l (line in space)


• l = q + λw ; λ is a real parameter
• Pitch, h
• hθ ; translation along axis w
• Magnitude, M
• M = θ ; angle of rotation when translation + rotation

• Pure rotation: h=0; l – axis of rotation


• Pure translation: h ∞ ; l axis of translation

Screws are often


called dual vectors.
Obtain screw from RB transf

• From a starting RB configuration g0, to a final RB configuration gf


𝑹 𝒑
• If we are given the RB transformation g =
𝟎 1
• From g we can obtain w and v
• From R we can get the w and θ
• From R and p we can get v
ෝ −𝟏
𝒗 = 𝑰 − 𝒆𝒘𝜽 ෝ + 𝜃𝒘𝒘𝑇
𝒘 𝒑
• Screw:
• ℎ = 𝒘𝑇 𝒗 for 𝒘 ≠ 𝟎
• ℎ=∞ for 𝒘 = 𝟎
• 𝒍 = 𝒘 × 𝒗 + λ𝒘 for 𝒘 ≠ 𝟎
• 𝒍 = λ𝒗 for 𝒘 = 𝟎
• M rotation angle for 𝒘 ≠ 𝟎
• M translation amount for 𝒘 = 𝟎

g→ w, θ, v → screw(h, l, M)
Dual numbers or dual scalars

• Not a real number


• Not a complex number

• a is the real part, b the dual part


0 1
𝜖= ;
0 0
0 1 0 1 0 0
𝜖 2= =
0 0 0 0 0 0
Basic operations on Dual Numbers
Dual Vectors
Basic Operations on Dual Vectors
Dual Quaternions
Dual Quaternions
Basic Operations on Dual Quaternions
Basic Operations on Dual Quaternions (cont.)
Basic Operations on Dual Quaternions (cont.)
Unit Dual Quaternion
Function of a Dual Number
Conversion between g and UDQ
Review

• RB configuration parameterization
• Screw theory
p p’’
• Axis, pitch, magnitude
• Chasles’ Theorem
• Dual numbers
• Dual vectors p’

• Dual quaternions

• UDQ
Final Project

Robot Motion Planning for an application


Selection
• Code
• Kinematics, dynamics
• Report (clear equations, refs)
• Animation
• Video summary
• 10 min presentation. Minimum 1 min/student
Groups
Groups (cont.)
Example

• An RB is subject to a general rotation + translation. For a given


rotation angle θ=pi about Z and translation (0.3, 0, 0) obtain the
corresponding homogeneous transformation and unit dual
quaternion.
−1 0 0 0.3
0 −1 0 0
; 𝑨 = 𝑨𝑟 + 𝜖𝑨𝑑 = 0, 0, 0, 1 + 𝜖 [0, 0, −0.15, 0]
0 0 1 0
0 0 0 1

• Given the homogeneous transformation, obtain the UDQ


Example 2

• The pose of the EE of a robotic arm wrt {W} is described as:


RPY=[0, pi/8, pi/4] ; x= [0.5, 0.6, 0.4];
Obtain the UDQ
RPY → Rotation matrix; Rotation matrix + x → HT; HT → UDQ

𝑨 = 𝑨𝑟 + 𝜖𝑨𝑑
= 0.9061 − 0.0747 0.1802 0.3753
+ 𝜖 [−0.11, 0.3031, 0.1631, 0.2487]

• Given a robot configuration, obtain the HT between the world


frame and the EE, and convert it to UDQ
• You can obtain an error transformation (wrt a desired pose)
expressed in UDQ form
Alternate Dual Quaternion Rep.
𝜃 𝑑 𝜃
𝑐𝑜𝑠 − 𝜖 sin
2 2 2
𝜃ҧ 𝜃 𝑑 𝜃 𝑑 𝜃
𝑐𝑜𝑠 cos( + 𝜖 ) 𝑢1 + 𝜖𝑚1 (sin + 𝜖 𝑐𝑜𝑠 )
𝑨= 2 = 2 2 = 2 2 2
𝜃ҧ 𝜃 𝑑 𝜃 𝑑 𝜃
ഥ 𝑠𝑖𝑛
𝒖 𝒖 + 𝜖 𝒎 sin( + 𝜖 ) 𝑢2 + 𝜖𝑚2 (sin + 𝜖 𝑐𝑜𝑠 )
2 2 2 2 2 2
𝜃 𝑑 𝜃
𝑢3 + 𝜖𝑚3 (sin + 𝜖 𝑐𝑜𝑠 )
2 2 2

𝜃 𝑑 𝜃
𝑐𝑜𝑠 − 𝜖 sin
2 2 2
𝜃 𝑑 𝜃 𝜃
= 𝑢1 sin + 𝜖 𝑢1 𝑐𝑜𝑠 + sin 𝑚1 =⋯
2 2 2 2


See ScLerp handout on ‘Aula virtual’
Power of a Unit Quaternion

Scaling the angle


We can generate any point between initial and final orientation
Power of a unit dual quaternion
Linear interpolation
Spherical linear interpolation (SLERP)

Pf

P0
Screw linear interpolation (ScLERP)

Coordinate invariant 𝜃
Respects motion sub-group constraints
Advantages
Summary

• Unit dual quaternions (UDQ) provide a concise and efficient


mathematical representation for RB motions.
• Compact representation for rotation + translation
• Computationally efficient
• Closely related to screw theory
• Smooth interpolation using the property of power of quaternions
• Singularity free (unlike other methods)
• Also useful in computer graphics

You might also like