320 likes | 483 Views
Kinematics Primer. Jyun-Ming Chen. Contents. General Properties of Transform 2D and 3D Rigid Body Transforms Representation Computation Conversion … Transforms for Hierarchical Objects. Math Primer. Next, explain these concepts via 2D translation
E N D
Kinematics Primer Jyun-Ming Chen
Contents • General Properties of Transform • 2D and 3D Rigid Body Transforms • Representation • Computation • Conversion • … • Transforms for Hierarchical Objects
Next, 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
y p x Ex: 2D translation The transform, as an operator, takes p to p’, thus changing the coordinate of p: Tr(t) p = p’ p’ Tr(t)
y’ y p’ p x’ x Ex: 2D translation (cont) 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)
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 • 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)
Rigid body transform only consists of Tr(x,y) Rot(z,q) Computation: 3x3 matrix is sufficient 2D 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
Axis-angle 3X3 rotation matrix Unit quaternion Learning Objectives Representation Perform rotation Composition Interpolation Conversion among representations … 3D Rotation Representations
Axis-Angle Representation • Rot(n,q) • n: rotation axis (global) • q: rotation angle (rad. or deg.) • follow right-handed rule • Perform rotation • Rodrigues formula • Interpolation/Composition: poor • Rot(n2,q2)Rot(n1,q1) =?= Rot(n3,q3)
a Rodrigues Formula r v v’ v’=R v
Rodrigues (cont) • http://mesh.caltech.edu/ee148/notes/rotations.pdf • http://www.cs.berkeley.edu/~ug/slide/pipeline/assignments/as5/rotation.html
Meaning of three columns Perform rotation: linear algebra Composition: trivial orthogonalization might be required due to FP errors Interpolation: ? Rotation Matrix
Gram-Schmidt Orthogonalization • If 3x3 rotation matrix no longer orthonormal, metric properties might change! Verify!
i k j Quaternion • A mathematical entity invented by Hamilton • Definition
Operators Addition Multiplication Conjugate Length Quaternion (cont)
Unit Quaternion • Define unit quaternion as follows to represent rotation • Example • Rot(z,90°) Why “unit”? DOF point of view!
Unit Quaternion (cont) • Perform Rotation • Composition • Interpolation
y,x’ x y’ z,z’ Example p(2,1,1) Rot(z,90°)
y,x’ x y’ z,z’ Example y x,x’ z,y’ z’
Spatial Displacement • Any displacement can be decomposed into a rotation followed by a translation • Matrix • Quaternion
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
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)
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)
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.
Ex: Two-Link Arm (VRML syntax) Transform { rotation 0 0 1 45 children Link1 Transform { translation 0 0 6 children Transform { rotation 0 0 1 30 children Link2 } } }
Classes in Javax.vecmath • Conversion Methods:
Exercises • Study the references of Rodrigues formula • Verify equivalence of these 2 ref’s • Compute inverse Rodrigues formula