Presentation is loading. Please wait.

Presentation is loading. Please wait.

Animation CS 551 / 651 Kinematics Lecture 09 Kinematics Sarcos Humanoid.

Similar presentations


Presentation on theme: "Animation CS 551 / 651 Kinematics Lecture 09 Kinematics Sarcos Humanoid."— Presentation transcript:

1 Animation CS 551 / 651 Kinematics Lecture 09 Kinematics Sarcos Humanoid

2 Kinematics The study of object movements irrespective of their speed or style of movement

3 Degrees of Freedom (DOFs) The variables that affect an object’s orientation How many degrees of freedom when flying? The variables that affect an object’s orientation How many degrees of freedom when flying? Six x, y, and z positions roll, pitch, and yaw So the kinematics of this airplane permit movement anywhere in three dimensions

4 Degrees of Freedom How about this robot arm? Six again 2-base, 1-shoulder, 1-elbow, 2-wrist

5 The set of all possible positions (defined by kinematics) an object can attain Configuration Space

6 Work Space vs. Configuration Space Work space The space in which the object existsThe space in which the object exists DimensionalityDimensionality –R 3 for most things, R 2 for planar arms Configuration space The space that defines the possible object configurationsThe space that defines the possible object configurations Degrees of FreedomDegrees of Freedom –The number of parameters that necessary and sufficient to define position in configuration Work space The space in which the object existsThe space in which the object exists DimensionalityDimensionality –R 3 for most things, R 2 for planar arms Configuration space The space that defines the possible object configurationsThe space that defines the possible object configurations Degrees of FreedomDegrees of Freedom –The number of parameters that necessary and sufficient to define position in configuration

7 More examples A point on a plane A point in space A point moving on a line in space A point on a plane A point in space A point moving on a line in space

8 A matter of control If your animation adds energy at a particular DOF, that is a controlled DOF High DOF, no controlLow DOF, high control

9 Hierarchical Kinematic Modeling A family of parent-child spatial relationships are functionally defined Moon/Earth/Sun movementsMoon/Earth/Sun movements Articulations of a humanoidArticulations of a humanoid A family of parent-child spatial relationships are functionally defined Moon/Earth/Sun movementsMoon/Earth/Sun movements Articulations of a humanoidArticulations of a humanoid Limb connectivity is built into model (joints) and animation is easier

10 Robot Parts/Terms Links End effector Frame Revolute Joint Prismatic Joint Links End effector Frame Revolute Joint Prismatic Joint

11 More Complex Joints 3 DOF joints GimbalGimbal Spherical (doesn’t possess singularity)Spherical (doesn’t possess singularity) 2 DOF joints UniversalUniversal 3 DOF joints GimbalGimbal Spherical (doesn’t possess singularity)Spherical (doesn’t possess singularity) 2 DOF joints UniversalUniversal

12 Hierarchy Representation Model bodies (links) as nodes of a tree All body frames are local (relative to parent) Transformations affecting root affect all childrenTransformations affecting root affect all children Transformations affecting any node affect all its childrenTransformations affecting any node affect all its children Model bodies (links) as nodes of a tree All body frames are local (relative to parent) Transformations affecting root affect all childrenTransformations affecting root affect all children Transformations affecting any node affect all its childrenTransformations affecting any node affect all its children ROOT

13 Forward vs. Inverse Kinematics Forward Kinematics Compute configuration (pose) given individual DOF valuesCompute configuration (pose) given individual DOF values –Good for simulation Inverse Kinematics Compute individual DOF values that result in specified end effector positionCompute individual DOF values that result in specified end effector position –Good for control Forward Kinematics Compute configuration (pose) given individual DOF valuesCompute configuration (pose) given individual DOF values –Good for simulation Inverse Kinematics Compute individual DOF values that result in specified end effector positionCompute individual DOF values that result in specified end effector position –Good for control

14 Forward Kinematics Traverse kinematic tree and propagate transformations downward Use stackUse stack Compose parent transformation with child’sCompose parent transformation with child’s Pop stack when leaf is reachedPop stack when leaf is reached Traverse kinematic tree and propagate transformations downward Use stackUse stack Compose parent transformation with child’sCompose parent transformation with child’s Pop stack when leaf is reachedPop stack when leaf is reached

15 Denavit-Hartenberg (DH) Notation A kinematic representation (convention) inherited from robotics

16 Z-axis aligned with joint

17 X-axis aligned with outgoing limb

18 Y-axis is orthogonal

19 Joints are numbered to represent hierarchy U i-1 is parent of U i

20 Parameter a i-1 is outgoing limb length of joint U i-1

21 Joint angle,  i, is rotation of x i-1 about z i-1 relative to x i

22 Link twist,  i-1, is the rotation of i th z-axis about x i-1 -axis relative to z-axis of i-1 th frame

23 Link offset, d i-1, specifies the distance along the z i-1 -axis (rotated by  i-1 ) of the i th frame from the i-1 th x-axis to the i th x-axis

24 Inverse Kinematics (IK) Given end effector position, compute required joint angles In simple case, analytic solution exists Use trig, geometry, and algebra to solveUse trig, geometry, and algebra to solve Given end effector position, compute required joint angles In simple case, analytic solution exists Use trig, geometry, and algebra to solveUse trig, geometry, and algebra to solve

25 What is Inverse Kinematics? Forward Kinematics Base End Effector ?

26 What is Inverse Kinematics? Inverse Kinematics Base End Effector

27 What does look like? ? Base End Effector

28 Solution to Our example Number of equation : 2 Unknown variables : 3 Infinite number of solutions !

29 Redundancy  System DOF > End Effector DOF Our example System DOF = 3 End Effector DOF = 2

30 Analytic solution of 2-link inverse kinematics 22 11 a1a1 a2a2 O2O2 O1O1 O0O0 x1x1 x0x0 x2x2 y1y1 y2y2 y0y0   (x,y) 22

31 Failures of simple IK Multiple Solutions

32 Failures of simple IK Infinite solutions

33 Failures of simple IK Solutions may not exist

34 Iterative IK Solutions Frequently analytic solution is infeasible Use Jacobian Derivative of function output relative to each of its inputsDerivative of function output relative to each of its inputs If y is function of three inputs and one output Frequently analytic solution is infeasible Use Jacobian Derivative of function output relative to each of its inputsDerivative of function output relative to each of its inputs If y is function of three inputs and one output Represent Jacobian, J(X), as a 1x3 matrix of partial derivativesRepresent Jacobian, J(X), as a 1x3 matrix of partial derivatives

35 Jacobian In another situation, end effector has 6 DOFs and robotic arm has 6 DOFs f(x 1, …, x 6 ) = (x, y, z, r, p, y) Therefore J(X) = 6x6 matrix In another situation, end effector has 6 DOFs and robotic arm has 6 DOFs f(x 1, …, x 6 ) = (x, y, z, r, p, y) Therefore J(X) = 6x6 matrix

36 Jacobian Relates velocities in parameter space to velocities of outputs If we know Y current and Y desired, then we subtract to compute Y dot Invert Jacobian and solve for X dot Relates velocities in parameter space to velocities of outputs If we know Y current and Y desired, then we subtract to compute Y dot Invert Jacobian and solve for X dot

37 Turn to PDF slides Slides from O’Brien and Forsyth CS 294-3: Computer Graphics Stanford Fall 2001CS 294-3: Computer Graphics Stanford Fall 2001 Slides from O’Brien and Forsyth CS 294-3: Computer Graphics Stanford Fall 2001CS 294-3: Computer Graphics Stanford Fall 2001

38 Differential Kinematics Is J always invertible? No! Remedy : Pseudo InverseRemedy : Pseudo Inverse Is J always invertible? No! Remedy : Pseudo InverseRemedy : Pseudo Inverse

39 Null space The null space of J is the set of vectors which have no influence on the constraints The pseudoinverse provides an operator which projects any vector to the null space of J The null space of J is the set of vectors which have no influence on the constraints The pseudoinverse provides an operator which projects any vector to the null space of J

40 Utility of Null Space The null space can be used to reach secondary goals Or to find comfortable positions The null space can be used to reach secondary goals Or to find comfortable positions

41 Calculating Pseudo Inverse Singular Value Decomposition

42 Redundancy A redundant system has infinite number of solutions Human skeleton has 70 DOF Ultra-super redundantUltra-super redundant How to solve highly redundant system? A redundant system has infinite number of solutions Human skeleton has 70 DOF Ultra-super redundantUltra-super redundant How to solve highly redundant system?

43 Redundancy Is Bad Multiple choices for one goal What happens if we pick any of them?What happens if we pick any of them? Multiple choices for one goal What happens if we pick any of them?What happens if we pick any of them?

44 Redundancy Is Good We can exploit redundancy Additional objective Minimal ChangeMinimal Change Similarity to Given ExampleSimilarity to Given Example NaturalnessNaturalness We can exploit redundancy Additional objective Minimal ChangeMinimal Change Similarity to Given ExampleSimilarity to Given Example NaturalnessNaturalness

45 Naturalness Based on observation of natural human posture Neurophysiological experiments Based on observation of natural human posture Neurophysiological experiments

46 Conflict Between Goals base ee 2 ee 1

47 Conflict Between Goals base ee 2 ee 1 Goal 1

48 Conflict Between Goals base ee 2 Goal 2 ee 1

49 Conflict Between Goals base ee 2 ee 1 Goal 1 Goal 2

50 Conflict Between Goals base ee 2 ee 1 Goal 1 Goal 2


Download ppt "Animation CS 551 / 651 Kinematics Lecture 09 Kinematics Sarcos Humanoid."

Similar presentations


Ads by Google