Title: Kinematics Primer
1Kinematics (???) Primer
2Contents
- General Properties of Transform
- 2D and 3D Rigid Body Transforms
- DOF (degree of freedom)
- Representation
- Computation
- Conversion
-
- Transforms for Hierarchical Objects
3Kinematic Modeling
- Two interpretations of transform
- Global
- An operator that displaces a point (or set of
points) to desired location - Local
- specify where objects are placed in WCS by moving
the local frame
- Explain these concepts via 2D translation
- Verify that the same holds for rotation, 3D,
4Ex 2D translation (move point)
The transform, as an operator, takes p to p,
thus changing the coordinate of p
Tr(t) p p
p
Tr(t)
5Ex 2D translation (move frame)
The transform moves the xy-frame to xy-frame
and the point is placed with the same local
coordinate. To determine the corresponding
position of p in xy-frame
Tr(t)
6Properties of Transform
- Transforms are usually not commutable
- TaTb p ? TbTa p (in general)
- Rigid body transform
- the ones preserving the shape
- Two types
- rotation rot(n,q)
- translation tr(t)
Rotation axis n passes thru origin
7Rigid Body Transform
- transforming a point/object
- rot(n,q) p tr(t) p
- not commutable
- rot(n,q) tr(t) p ? tr(t) rot(n,q) p
- two interpretations (local vs. global axes, see
next pages)
8Hierarchical Objects
- For modeling articulated objects
- Robots, mechanism,
- Goals
- Draw it
- Given the configuration, able to compute the
(global) coordinate of every point on body
9Ex Two-Link Arm (2D)
- Configuration
- Link 1 Box (6,1) bend 45 deg
- Link 2 Box (8,1) bend 30 deg
- Goals
- Draw it
- find tip position
10Ex Two-Link Arm
Tip Position
T for link1 Rot(z,45) Tr(0,6) Rot(z,30) T
for link2 Rot(z,45)
11Ex Two-Link Arm
Thus, two views are equivalent The latter might
be easier to visualize.
122D Kinematics
- Rigid body transform only consists of
- Tr(x,y)
- Rot(z,q)
- Computation
- 3x3 matrix is sufficient to realize Tr and Rot
133D Kinematics
- Consists of two parts
- 3D rotation
- 3D translation
- The same as 2D
- 3D rotation is more complicated than 2D rotation
(restricted to z-axis) - Next, we will discuss the treatment for spatial
(3D) rotation
14DOF (degree of freedom)
- of a system of moving bodies is the number of
independent variables required to specify the
configuration - is closely related to kinematic representation
- ( of independent variables) ( of total
variables) ? ( of equality constraints)
15DOF of
3
2
6
3
2
- a line in R2
- a line in R3
- a plane in R3
4 (Plucker coordinates)
3
163D Rotation Representations
- Euler angles
- Axis-angle
- 3X3 rotation matrix
- Unit quaternion
- Learning Objectives
- Representation (uniqueness)
- Perform rotation
- Composition
- Interpolation
- Conversion among representations
17Euler Angles
- Gimbal lock reduced DOF due to overlapping axes
Ref http//www.fho-emden.de/hoffmann/gimbal09082
002.pdf
18Axis-Angle Representation
- Rot(n,q)
- n rotation axis (global)
- q rotation angle (rad. or deg.)
- follow right-handed rule
- Rot(n,q)Rot (-n,-q)
- Problem with null rotation rot(n,0), any n
- Perform rotation
- Rodrigues formula (next page)
- Interpolation/Composition poor
- Rot(n2,q2)Rot(n1,q1) ? Rot(n3,q3)
19Rodrigues Formula
r unit vector (axis)
r
This is the cross-product matrix rL v r ? v
v
v
vR v
References http//mesh.caltech.edu/ee148/notes/ro
tations.pdf http//www.cs.berkeley.edu/ug/slide/p
ipeline/assignments/as5/rotation.html
20Rotation Matrix (xy plane)
21Rotation Matrix
- Rodrigues formula
- About any axis
22Rotation Matrix
- Three columns of R the transformed bases
- Perform rotation
- x Rx
23Rotation Matrix (example)
z
x
z
y
x
y
24Rotation Matrix (cont)
- Composition trivial
- orthogonalization might be required due to FP
errors - Interpolation ?
25Gram-Schmidt Orthogonalization
- If 3x3 rotation matrix no longer orthonormal,
metric properties might change!
Verify!
26Transformation Matrices
v Hu
Rotation (about principal axes)
Translation
Scaling
27Translation (math)
28Frame
Object coordinates
Recall how we did the spotlight beam!
29Quaternion
- A mathematical entity invented by Hamilton
- Definition
30Quaternion (cont)
- Operators
- Addition
- Multiplication
- Conjugate
- Length
31Unit Quaternion
- Define unit quaternion as follows to represent
rotation - Example
- Rot(z,90)?
- q and q represent the same rotation
Why unit? DOF point of view!
32Example
x
y
z
Rot (90, 0,0,1) OR Rot (-90,0,0,-1)
33Unit Quaternion (cont)
- Perform Rotation
- Composition
- Interpolation
- Linear
- Spherical linear (slerp, more later)
34Example
p(2,1,1)
Rot(z,90)
35Example (cont)
36Example
y
x,x
z,y
z
37Matrix Conversion
38Matrix Conversion (cont)
Find largest qi2 solve the rest
39Spherical Linear Interpolation
unit sphere in R4
The computed rotation quaternion rotates about a
fixed axis at constant speed
References http//www.gamedev.net/reference/artic
les/article1095.asp http//www.diku.dk/research-gr
oups/image/teaching/Studentprojects/Quaternion/ ht
tp//www.sjbrown.co.uk/quaternions.html http//www
.theory.org/software/qfa/writeup/node12.html
40Spatial Displacement
- Any displacement can be decomposed into a
rotation followed by a translation - Matrix
- Quaternion