1.45k likes | 1.99k Views
Direct & Inverse Kinematics. Algorithmic Robotics and Motion Planning (0368.4010.01) Instructor: Prof. Dan Halperin. Overview. Kinematics Introduction to Protein Structure A kinematic View of Loop Closure. Overview.
E N D
Direct & Inverse Kinematics Algorithmic Robotics and Motion Planning (0368.4010.01) Instructor: Prof. Dan Halperin Direct & Inverse Kinematics
Overview • Kinematics • Introduction to Protein Structure • A kinematic View of Loop Closure Direct & Inverse Kinematics
Overview • Kinematicsthe science of motion that treats the subject without regard to the forces that cause it • Introduction to Protein Structure • A kinematic View of Loop Closure Direct & Inverse Kinematics
Direct & inverse kinematics of manipulators • What are we trying to do ? (direct) ??? Go right !!! Direct & Inverse Kinematics
Direct & inverse kinematics of manipulators • What are we trying to do ? (inverse) ??? Take the ball !!! Direct & Inverse Kinematics
Direct & Inverse Kinematics • Spatial description and transformation • Direct kinematics • Inverse kinematics Direct & Inverse Kinematics
Spatial description and transformation • We need to be able to describe the position and the orientation of the robot’s parts • Suppose there’s a universe coordinate system to which everything can be referenced. Direct & Inverse Kinematics
What’s its position (“reference point”) ? What’s its orientation ? Spatial description and transformation • We need to be able to describe the position and the orientation of the robot’s parts (relative to U) Direct & Inverse Kinematics
Direct & Inverse Kinematics • Spatial description and transformation • Spatial description • Transformations • Presentation of orientation • Direct kinematics • Inverse kinematics Direct & Inverse Kinematics
Positions, orientations and frames • The position of a point p relative to a coordinate system A (Ap): Direct & Inverse Kinematics
Positions, orientations and frames • The orientation of a body is described by a coordinate system B attached to the body, relative to A (a known coordinate system). Direct & Inverse Kinematics
cosinus of the angle Positions, orientations and frames • The orientation of a body is described by a coordinate system B attached to the body, relative to A (a known coordinate system). Direct & Inverse Kinematics
Positions, orientations and frames • A frame is a set of 4 vectors giving the position and orientation. • Example: frame B Direct & Inverse Kinematics
orientation position Positions, orientations and frames • Remember the robot’s part: Direct & Inverse Kinematics
Direct & Inverse Kinematics • Spatial description and transformation • Spatial description • Transformations • Presentation of orientation • Direct kinematics • Inverse kinematics Direct & Inverse Kinematics
Mapping • Until now, we say how to describe positions, orientations and frames. • We need to be able to change descriptions from one frame to another: mapping. • Mappings: • translated frames • rotated frames • general frames Direct & Inverse Kinematics
Mappings involving translated frames • Expressing a point Bp in terms of frame {A}, when {A} has the same orientation as {B}: Direct & Inverse Kinematics
Mappings involving rotated frames • Expressing a vector Bp in terms of frame {A}, when the origins of frames {A} and {B} are coincident: Direct & Inverse Kinematics
Mappings involving rotated frames • Ap‘s components are Bp’s projections onto the unit directions of {A}. • Remember the rotation matrix :it’s columns are the unit vectors of {B} expressed in {A}. • Thus: Direct & Inverse Kinematics
Mappings involving rotated frames: example • Given:frame {B} is rotated relative to frame {A} about Z by 30 degrees, and BP.Calc: AP Direct & Inverse Kinematics
exact computation !? Mappings involving rotated frames: example • Sol: Direct & Inverse Kinematics
Mappings involving general frames • {A} and {B} has different origins and orientations. • Vector offset between origins: ApBorg • {B} is rotated in respect to {A}: Direct & Inverse Kinematics
Mappings involving general frames • First, describe Bp relative to a frame that has the same orientation of {A}, but whose origin coincides with the origin of {B} • Then add ApBorg for the translation • Thus: Direct & Inverse Kinematics
Mappings involving general frames • “Homogeneous transform”: • A “transform” specifies a frame. Direct & Inverse Kinematics
Multiplication of transforms • Given Cp. We want to find Ap. Direct & Inverse Kinematics
Compound transforms • Given Cp. We want to find Ap. • Frame {C} is known relative to frame {B}, and frame {B} is known relative to frame {A}. Direct & Inverse Kinematics
Inverting a transform • Frame {B} is known relative to frame {A} • We want the description “frame {A} relative to frame {B}” • Straightforward way: compute the inverse matrix (of a 4x4 matrix) Direct & Inverse Kinematics
Inverting a transform • Frame {B} is known relative to frame {A} • We want the description “frame {A} relative to frame {B}” • Better way: • Compute • Compute APBorg: Direct & Inverse Kinematics
Inverting a transform • Frame {B} is known relative to frame {A} • We want the description “frame {A} relative to frame {B}” • Better way: Direct & Inverse Kinematics
Transformations: example Direct & Inverse Kinematics
Direct & Inverse Kinematics • Spatial description and transformation • Spatial description • Transformations • Presentation of orientation • Direct kinematics • Inverse kinematics Direct & Inverse Kinematics
Presentation of Orientation • Rotation matrices are useful as operator. • Still, it’s “unnatural” to have to give elements of a matrix with orthonormal columns as input. • There are several presentations which make that input process easier: • Fixed angles • Euler angles • Euler parameters • Quaternions Direct & Inverse Kinematics
Fixed angles • X-Y-Z fixed angles • Start with 2 frames: a fixed reference frame {A} and a coinciding frame {B} • First rotate {B} by γ about XA, then by β about YAand finally by α about ZA. • The equivalent rotation matrix is: Direct & Inverse Kinematics
The final result is the same as X-Y-Z fixed angles!!! Euler angles • Z-Y-X Euler angles • Start with 2 frames: a moving reference(Euler angles) frame {B} and a coinciding fixed frame {A} • First rotate {B} by α about ZB, then by β about YBand finally by γ about XB. • The equivalent rotation matrix is: Direct & Inverse Kinematics
Fixed & Euler angles • In general:3 rotations taken about fixed axes (fixed angles) yield the same final orientation as the same 3 rotations taken in opposite order about the axes of the moving frame (Euler angles). • There are other angle-set conventions: Z-Y-Z, etc. (both for fixed and moving reference frames). Direct & Inverse Kinematics
Euler parameters • Given an equivalent axis K=[KX KY KZ]T (a unit vector we want to rotate about) and an angle θ, the Euler parameters are defined as: • The rotation matrix Rεis: Direct & Inverse Kinematics
Quaternions • Definition: a generalization of complex numbers, obtained by adding the elements i, j, and k to the real numbers, where i, j, and k satisfy: i2=j2=k2=ijk=-1. • a+bi+cj+dk, with a,b,c and d real numbers • Quaternion’s conjugate: a-bi-cj-dk • Quaternions are associative, distributive and not commutative. • Another representation: a+vector(b,c,d) Direct & Inverse Kinematics
Quaternions • A rotation about the unit vector K=[KX KY KZ]T by an angle θ, can be computed using the quaternion: • p’, the rotation of point p(0,pX,pY,pZ), is given by: • Rotations may be contatenated: • q’s elements are the same as the Euler parameters! Direct & Inverse Kinematics
Direct & Inverse Kinematics • Spatial description and transformation • Direct kinematics • Link description • Link-connection description • Affixing frames to links • Manipulator kinematics • Example • Inverse kinematics Direct & Inverse Kinematics
Link Description • Think of the manipulator as a chain of bodies (links) connected by joints. • We will consider manipulators constructed with joints of 1 degree of freedom (DOF): revolute and prismatic joints. • The links are numbered from 0 (immobile base) to n (free end of the arm). Direct & Inverse Kinematics
Link Description Direct & Inverse Kinematics
Link Description Direct & Inverse Kinematics
Link Description • Joint axis i: the line about which link i rotates relative to link i-1 • link i-1 can be specified by 2 numbers: link length ai-1 and link twist αi-1 • Link length and twist are sufficient to define the relation between any 2 axes in space Direct & Inverse Kinematics
Direct & Inverse Kinematics • Spatial description and transformation • Direct kinematics • Link description • Link-connection description • Affixing frames to links • Manipulator kinematics • Example • Inverse kinematics Direct & Inverse Kinematics
Link-connection description • Neighboring links have a common axis • 2 parameters define the link-connection: • Link offset di: the distance along the common axis from one link to the next • Joint angle θi: amount of rotation about the common axis • The link offset di is variable if joint i is prismatic • The joint angle θi is variable if the joint is revolute Direct & Inverse Kinematics
Link-connection description Direct & Inverse Kinematics
Link-connection description variable offset di variable angle θi Direct & Inverse Kinematics
First and last link in the chain • The link length ai, and the link twist αi depend on the joint axis i and i+1. • Convention:a0=an=0 and α0=αn=0 • Similar for the link offset di and the joint angle θi :if joint 1 is revolute, then d1=0. if joint 1 is prismatic, then θ1=0. Direct & Inverse Kinematics
Denavit-Hartenberg notation • Any robot can be described kinematically by 4 quantities for each link: • 2 for the link • 2 to describe the link’s connection • For revolute joints, θi is called the joint variable (the other 3 quantities are fixed). • For prismatic joints, di is the joint variable (the other 3 quantities are fixed). Direct & Inverse Kinematics
Denavit-Hartenberg notation • The definition of mechanics by means of these quantities is called the Denavit-Hartenberg notation. Direct & Inverse Kinematics