Presentation is loading. Please wait.

Presentation is loading. Please wait.

3D Kinematics Consists of two parts

Similar presentations


Presentation on theme: "3D Kinematics Consists of two parts"— Presentation transcript:

1 3D Kinematics Consists of two parts
2D (rigid body) kinematics C.M. translation and rotation 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) Spring 2016

2 Homogeneous Coordinates (齊次座標)
Translate, rotate with matrices Homogeneous Coordinates (齊次座標) Fall 2016

3 Homogeneous Coordinate
Point in 3D: Translate(a,b,c) with homo. coord.: Fall 2016

4 Rotate a Point about Origin
Rotate (z, q) r z Polar Coordinate: P (x, y) = (r cosf, r sinf) Fall 2016

5 Rotation Matrices v = Hu Fall 2016

6 Order Matters?! Translate(t1) Translate (t2) = Translate (t2) Translate (t1) Translate(t) Rotate(R) ≠ Rotate (R) Translate (t) Rotate (R1) Rotate (R2) ≠ Rotate (R2) Rotate (R1) Fall 2016

7 Order Matters! V V Rotate (0,0,1, 30); Translate (10, 0, 0);
drawPlant( ); Translate (10, 0, 0); Rotate (0,0,1, 30); drawPlant( ); Fall 2016

8 兩種詮釋法 Translate (10,5) Rotate (z, 30) draw [transform點座標] V
Fall 2016 Also give ways to compute the world pos, given local coord

9 Case 1: Translate (10, 0, 0); Translate (10, 0, 0);
Rotate (0,0,1, 30); drawPlant( ); Translate (10, 0, 0); Rotate (0,0,1, 30); drawPlant( ); y x z Fall 2016

10 Case 2: Rotate (0,0,1, 30); Rotate (0,0,1, 30); Translate (10, 0, 0);
drawPlant( ); Rotate (0,0,1, 30); Translate (10, 0, 0); drawPlant( ); y x z Fall 2016

11 3D Rotation Representations
Euler angles Axis-angle 3X3 rotation matrix Unit quaternion Learning Objectives Representation (uniqueness) Perform rotation Composition Interpolation Conversion among representations Spring 2016

12 Euler Angles Specify orientation in rotation angles along three axes
Usually, refer to local axes Common used: RPY (roll, pitch, yaw) ZYZ (next page) Fall 2014

13 Euler Angles (ZYZ) a b g Fall 2014

14 [Euler Angles (ZYZ)] a=0 y’ z’’’ b=90 z’’’ z’’ g=90 y’’ Fall 2014 y’’’

15 [Performing Rotation with (a, b, g) ]
Rot(z”,g) Rot(y’,b) Rot(z,a) = Rot(z,a) Rot(y,b) Rot(z,g) A three-page CAD article (1995) by Lee and Koh talked about this Fall 2014

16 Euler Angles Roll, pitch, yaw
Why gimbal lock a problem? Roll, pitch, yaw Gimbal lock: reduced DOF due to overlapping axes 在目前這個configuration,飛機無法yaw Spring 2016

17 Loss of DOF in gimbal lock (url)
Rotation (a, b, g, ‘XYZ’) When Rotation (0.4, 1.57, 0, ‘XYZ’) = Rotation (0, 1.57, 0.4, ‘XYZ’) Spring 2016

18 Axis-Angle Representation
Rot(r,a) r: rotation axis (unit vector) a: rotation angle (rad. or deg.) follow right-handed rule DOF? 3 Rot(r,a)=Rot (-r,-a) Problem with null rotation: rot(r, 0), any r (many-to-one mapping) 單位向量:長度為1之向量 a r v’ v Fall 2014

19 Axis Angle (cont) Perform rotation
Rodrigues rotation formula (next pages) Fall 2014

20 Rodrigues Rotation Formula
Compute the transformed point v’, after the axis-angle rotation, Rot(r, a) r: rotation axis, unit vector 𝑣 ′ =𝑣 cos 𝛼+ 𝑟×𝑣 sin 𝛼+𝑟 𝑟∙𝑣 1− cos 𝛼 a r v’ v Alternative formula v’=R v

21 Example (Rodrigues Formula)
𝑣 ′ =𝑣 cos 𝛼+ 𝑟×𝑣 sin 𝛼+𝑟 𝑟∙𝑣 1− cos 𝛼 r v’ v y 𝑅𝑜𝑡 1,0,0 , 𝜋 = cos 𝜋 × sin 𝜋 ∙ − cos 𝜋 2 x =0+ 𝑖 𝑗 𝑘 = = z Fall 2014

22 Axis-Angle Interpolation: poor Composition: poor
Rot(n1,q1) & Rot(n2,q2)  Rot(n1.5, q1.5) = ? Composition: poor Rot(n2,q2) Rot(n1,q1) =?= Rot(n3,q3) Fall 2014

23 [Euler’s Rotation Theorem]
in three-dimensional space, any displacement of a rigid body such that a point on the rigid body remains fixed, is equivalent to a single rotation about some axis that runs through the fixed point. Spring 2016

24 2D Rotation orthogonal basis (after rotation) 𝑥=𝑟 cos ∅ 𝑦=𝑟 sin ∅ q f
p 𝑥=𝑟 cos ∅ 𝑦=𝑟 sin ∅ r p’ q p f orthogonal basis (after rotation) Fall 2014

25 Extend to 3D Rotation Matrices
y z x y z x y z 𝑅𝑜𝑡 𝑥,𝜃 = cos 𝜃 − sin 𝜃 0 sin 𝜃 cos 𝜃 𝑅𝑜𝑡 𝑦,𝜃 = cos 𝜃 0 sin 𝜃 − sin 𝜃 0 cos 𝜃 𝑅𝑜𝑡 𝑧,𝜃 = cos 𝜃 −sin 𝜃 0 sin 𝜃 cos 𝜃 orthogonal basis Fall 2014

26 Rotation Matrix Three columns represent the basis
Perform rotation: linear algebra Composition: trivial orthogonalization might be required due to FP errors Fall 2014

27 Example x y,x’ z,z’ y’ p(2,1,1) Rot(z,90°) Fall 2014

28 Rotation Matrix DOF? Interpolation:
9 numbers, but with these constraints, leaves 3 Interpolation: R1 & R2  R1.5 = ? Fall 2014

29 Gram-Schmidt Orthogonalization
Given three independent vectors: u1, u2, u3 If 3x3 rotation matrix is no longer orthonormal, metric properties(volume, length, angle) might change! Fall 2014

30 [Proof (matrix version)]
Rotation matrix is an orthogonal matrix [Proof (matrix version)] 1 is an eigenvalue of R x is the corresponding eigenvector (the rotation axis) Spring 2016

31 Quaternion A mathematical entity invented by Hamilton Definition i k j
Fall 2014

32 Quaternion (cont) Operators Addition Multiplication Conjugate Length
Fall 2014

33 Unit Quaternion as Rotation
Define unit quaternion as follows to represent rotation Example Rot(z,90°) q and –q represent the same rotation DOF? 3 Fall 2014

34 In-class examples Rot(z,90°) Rot(z,-90°) Rot(x,180°) Rot(-z,-90°)
Same as rot(z,90) Spring 2016

35 Important values & equalities
Sin(q) Cos(q) 1 p/6 1/2 Sqrt(3)/2 p/4 Sqrt(2)/2 p/3 p/2 Spring 2016

36 Unit Quaternion: rotating
Fall 2014

37 Unit Quaternion: composition
Fall 2014

38 Slerp (Spherical Linear Interpolation)
q r unit sphere in R4 The computed rotation quaternion rotates about a fixed axis at constant speed Fall 2014

39 Unit Quaternion: slerp
Fall 2014

40 Null Rotation (q = 0) Fall 2014

41 Ex: q and –q are the same! Fall 2014

42 q & -q in slerp May want to consider
slerp (t, -q, r) instead of slerp (t, q, r), for smoother interpolation Fall 2014

43 Unit Quaternion Conversion
Axis-angle 3x3 matrix Fall 2014

44 Unit Quaternion & Axis-Angle
Axis-angle  quaternion: Quaternion axis-angle First, find axis (unit vector) Then, use both values of sine and cosine to find angle Example Fall 2014

45 Unit Quaternion3x3 Matrix
Example Fall 2014

46 3x3 MatrixUnit Quaternion
Find largest qi2; solve the rest Fall 2014

47 Exercise x y z Fall 2014

48 In-class Exercise y x z As we have shown,
This corresponds to rot(z,90) (take the positive one) Spring 2016

49 quaternion→axis-angle
Use both values of sine and cosine to determine the angle!! Spring 2016

50 Example x y z x y z Rot (90, 0,0,1) OR Rot (-90,0,0,-1) Spring 2016

51 Example x y,x’ z,z’ y’ p(2,1,1) Rot(z,90°) Spring 2016

52 Example x y,x’ z,z’ y’ y x,x’ z,y’ z’ Spring 2016

53 Matrix Conversion Spring 2016

54 Spatial Displacement Any displacement can be decomposed into a rotation followed by a translation Matrix Quaternion Spring 2016

55 Extra’s Spring 2016

56 From Mason’s book a g b Write a program … Spring 2016

57 y z x a x’’’ y’’’ z’’’ g b Spring 2016

58 Spring 2016

59 From previous page Spring 2016

60 From Lee and Koh (1995) Euler angles in ASF In v’=Mv convention
Spring 2016


Download ppt "3D Kinematics Consists of two parts"

Similar presentations


Ads by Google