Kinematics primer
This presentation is the property of its rightful owner.
Sponsored Links
1 / 42

Kinematics ( 運動學) Primer PowerPoint PPT Presentation


  • 43 Views
  • Uploaded on
  • Presentation posted in: General

Kinematics ( 運動學) Primer. Jyun-Ming Chen Fall 2009. Contents. General Properties of Transform 2D and 3D Rigid Body Transforms DOF (degree of freedom) Representation Computation Conversion … Transforms for Hierarchical Objects. Explain these concepts via 2D translation

Download Presentation

Kinematics ( 運動學) Primer

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Kinematics primer

Kinematics (運動學) Primer

Jyun-Ming Chen

Fall 2009


Contents

Contents

  • General Properties of Transform

  • 2D and 3D Rigid Body Transforms

    • DOF (degree of freedom)

    • Representation

    • Computation

    • Conversion

  • Transforms for Hierarchical Objects


Kinematic modeling

Explain these concepts via 2D translation

Verify that the same holds for rotation, 3D, …

Kinematic 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


Ex 2d translation move point

y

p

x

Ex: 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)


Ex 2d translation move frame

y’

y

p’

p

x’

x

Ex: 2D translation (move frame)

The transform moves the xy-frame to

x’y’-frame and the point is placed

with the same local coordinate.

To determine the corresponding position of p’ in xy-frame:

Tr(t)


Properties 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)

Properties of Transform

Rotation axis n passes thru origin


Rigid body transform

Rigid 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)


Hierarchical objects

Hierarchical Objects

  • For modeling articulated objects

    • Robots, mechanism, …

  • Goals:

    • Draw it

    • Given the configuration, able to compute the (global) coordinate of every point on body


Ex 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

y

x

y

x

Ex: Two-Link Arm (2D)


Ex two link arm

Tip pos:(0,8)

Rot(z,45)

Tr(0,6)

Rot(z,30)

Ex: Two-Link Arm

Tip Position:

T for link1:

Rot(z,45) Tr(0,6) Rot(z,30)

T for link2:

Rot(z,45)


Ex two link arm1

y”

y’”

y’

x”

x”’

x’

Rot(z”,30)

Tip pos:(0’”,8’”)

Tr(0,6’)

Rot(z,45)

Ex: Two-Link Arm

Thus, two views are equivalent

The latter might be easier to

visualize.


2 d kinematics

Rigid body transform only consists of

Tr(x,y)

Rot(z,q)

Computation:

3x3 matrix is sufficient to realize Tr and Rot

2D Kinematics


3d 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

3D Kinematics


Dof degree of freedom

DOF (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)


Dof of

A particle in

R2

R3

A rigid body in

R2

R3

DOF of …

3

2

6

3

a line in R2

a line in R3

a plane in R3

2

4 (Plucker coordinates)

3


3d rotation representations

Euler angles

Axis-angle

3X3 rotation matrix

Unit quaternion

Learning Objectives

Representation (uniqueness)

Perform rotation

Composition

Interpolation

Conversion among representations

3D Rotation Representations


Euler angles

Roll, pitch, yaw

Gimbal lock: reduced DOF due to overlapping axes

Euler Angles

Ref: http://www.fho-emden.de/~hoffmann/gimbal09082002.pdf


Weird interpolation

Weird Interpolation …

Previous

[-26, -90, 127]

Next

[71, 68, -105]


Axis angle representation

Axis-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)


Rodrigues formula

a

Rodrigues Formula

r : unit vector (axis)

r

This is the “cross-product matrix”

rL v = r  v

v

v’

v’=R v

References:

http://mesh.caltech.edu/ee148/notes/rotations.pdf

http://www.cs.berkeley.edu/~ug/slide/pipeline/assignments/as5/rotation.html


Rotation matrix xy plane

z

Rotation Matrix (xy plane)


Rotation matrix

About y axis

Rodrigues formula

About any axis

y,y’

x’

x

z

z’

Rotation Matrix


Supplemental rotation matrix axis angle

Supplemental (rotation matrix & axis-angle)

Rot (a, q)  Q

Q  Rot (a, q)

Ref: url (local)


Rotation matrix1

Three columns of R: the transformed bases

Perform rotation:

x’ = Rx

y,y’

x’

x

z

z’

Rotation Matrix


Rotation matrix example

y

y

x

x

z

z

Rotation Matrix (example)

z’

x’

z’

y’

x’

y’


Rotation matrix cont

Composition: trivial

orthogonalization might be required due to FP errors

Interpolation: ?

Rotation Matrix (cont)


Gram schmidt orthogonalization

Gram-Schmidt Orthogonalization

  • If 3x3 rotation matrix no longer orthonormal, metric properties might change!

Verify!


Transformation matrices

Transformation Matrices

v = Hu

Rotation (about principal axes)

Translation

Scaling


Translation math

Translation (math)


Frame

y

y

x

z

t

x

R

z

Frame

Object coordinates

Recall how we did the spotlight beam!


Quaternion

i

k

j

Quaternion

  • A mathematical entity invented by Hamilton

  • Definition


Quaternion cont

Operators

Addition

Multiplication

Conjugate

Length

Quaternion (cont)


Unit quaternion

Unit Quaternion

  • Define unit quaternion as follows to represent rotation

  • Example

    • Rot(z,90°)

  • q and –q represent the same rotation

  • Null rotation: q = [1,0,0,0]

Why “unit”?

DOF point of view!


Example

y

x

z

Example

x

y

z

Rot (90, 0,0,1) OR Rot (-90,0,0,-1)


Unit quaternion cont

Unit Quaternion (cont)

  • Perform Rotation

  • Composition

  • Interpolation

    • Linear

    • Spherical linear (slerp, more later)


Example1

y,x’

x

y’

z,z’

Example

p(2,1,1)

Rot(z,90°)


Example cont

Example (cont)


Example2

y,x’

x

y’

z,z’

Example

y

x,x’

z,y’

z’


Matrix conversion

Matrix Conversion


Matrix conversion cont

Matrix Conversion (cont)

Find largest qi2; solve the rest


Spherical linear interpolation

q

r

Spherical Linear Interpolation

unit sphere in R4

The computed rotation quaternion rotates about a fixed axis at constant speed

References:

http://www.gamedev.net/reference/articles/article1095.asp

http://www.diku.dk/research-groups/image/teaching/Studentprojects/Quaternion/

http://www.sjbrown.co.uk/quaternions.html

http://www.theory.org/software/qfa/writeup/node12.html


Spatial displacement

Spatial Displacement

  • Any displacement can be decomposed into a rotation followed by a translation

  • Matrix

  • Quaternion


  • Login