880 likes | 1.06k Views
Introduction to Robotics Lecture II. Alfred Bruckstein Yaniv Altshuler. Denavit-Hartenberg. Specialized description of articulated figures Each joint has only one degree of freedom rotate around its z-axis translate along its z-axis. Denavit-Hartenberg.
E N D
Introduction to RoboticsLecture II Alfred Bruckstein Yaniv Altshuler
Denavit-Hartenberg • Specialized description of articulated figures • Each joint has only one degree of freedom • rotate around its z-axis • translate along its z-axis
Denavit-Hartenberg • One degree of freedom : very compact notation • Only fourparameters to describe a relation between two links : • link length • link twist • link offset • link rotation
Denavit-Hartenberg • Link length ai • The perpendicular distance between the axes of jointi and jointi+1
Denavit-Hartenberg • Link twist αi • The angle between the axes of jointi and jointi+1 • Angle around xi-axis
Denavit-Hartenberg • Link offset di • The distance between the origins of the coordinate frames attached to jointi and jointi+1 • Measured along the axis of jointi
Denavit-Hartenberg • Link rotation (joint angle) φi • The angle between the link lenghts αi-1 and αi • Angle around zi-axis
Denavit-Hartenberg • How to compute the parameters to describe an articulated figure : • Compute the link vector ai and the link length • Attach coordinate frames to the joint axes • Compute the link twist αi
Denavit-Hartenberg • Compute the link offset di • Compute the joint angle φi • Compute the transformation (i-1)Ti which transforms entities from linki to linki-1
Denavit-Hartenberg • Let’s do it step by step • Compute the link vector ai and the link length • Attach coordinate frames to the joint axes • Compute the link twist αi • Compute the link offset di • Compute the joint angle φi • Compute the transformation (i-1)Ti which transforms entities from linki to linki-1
Denavit-Hartenberg The link length ai is the shortest distance between the joint axes jointi and jointi+1. Let the joint axes be given by the expression : Where pi is a point on axis of jointi and ui is one of its direction vectors (analogous for jointi+1).
Denavit-Hartenberg • There are three methods to compute the link vector ai and the link length
Denavit-Hartenberg • Method 1 : The Pseudo-naive approach The shortest distance aiis the length of the vector connecting the two axes, and perpendicular to both of them. Which can be expressed :
Denavit-Hartenberg Let’s find the points oi and oai where this distance exists.
We can go some distance s from pi along axisi, and then the distance ai along the unit vector and finally some distance t along axisi+1 to arrive at point pi+1. Denavit-Hartenberg
Denavit-Hartenberg Multiplying respectively by ui and ui+1, we obtain the two following equations:
Denavit-Hartenberg Solution :
Denavit-Hartenberg Finally, using and we obtain :
Denavit-Hartenberg • Method 2 : The Geometric approach The vector ui x ui+1 gives the perpendicular vector to both axes. Let’s find out where it is located on the joint axes. We can go some distance s from point pi along the axisi, and then go some distance k along ui x ui+1. Finally go some distance t along the axisi+1 to arrive at point pi+1.
Denavit-Hartenberg We obtain the equation : There are three unknowns.
Denavit-Hartenberg Let’s first eliminate the unknown k from the equation : by multiplying by ui:
Denavit-Hartenberg Let’s first eliminate the unknown k from the equation : by multiplying by ui+1:
Denavit-Hartenberg Now we shall eliminate the s and t from the equation : by multiplying by ui x ui+1:
Denavit-Hartenberg We have obtained a system of three equations in the unknowns s, t, k :
Denavit-Hartenberg From , it can be seen that the shortest distance between jointi and jointi+1 is given by the vector : Where
Denavit-Hartenberg From and , we can compute s and t :
Denavit-Hartenberg Finally, using and we obtain :
Denavit-Hartenberg • Method 3 : The Analytic approach The distance between two arbitrary points located on the joint axes jointi and jointi+1 is :
Denavit-Hartenberg The link length of linki, ai, is the minimum distance between the joint axes :
Denavit-Hartenberg A necessary condition is :
Denavit-Hartenberg Which is equivalent to their numerators being equal to 0 :
Denavit-Hartenberg Rewriting this system yields :
Denavit-Hartenberg Whose solution are :
Denavit-Hartenberg Finally, using and we obtain :
Denavit-Hartenberg oi and oaiare the closest points on the axes of jointi and jointi+1. We deduce that the link vector aiand the link length ai :
Denavit-Hartenberg The link vector ai:
Denavit-Hartenberg Calculating the scalar products and, both equal to 0, proves that the vector ai is perpendicular to both axes of jointi and jointi+1
Denavit-Hartenberg • Three methods • How do we actually compute ai and ||ai||2 ?
Denavit-Hartenberg The link vector ai is perpendicular to both of the axes of jointi and jointi+1. The unit vector : is parallel to the link vector ai.
Denavit-Hartenberg Given two points pi and pi+1on the axes of jointi and jointi+1, the link length can be computed as : And the link vector :
Denavit-Hartenberg • Special cases : • The joint axes intersect • The shortest distance ai is equal to zero • The link vector is the null vector
Denavit-Hartenberg • The joint axes are parallel • There is no unique shortest distance oi can be chosen arbitrarily, so we should chose values that offset the most of Denavit-Hartenberg parameters
Denavit-Hartenberg • The first joint • There is no link preceding it • We use a base link : link0 • Its link frame should coincide with the link frame of link1 • Most of the Denavit-Hartenberg parameters will be equal to zero
Denavit-Hartenberg • The last joint • There is no link succeding it • We use arbitrary values so that most of Denavit-Hartenberg parameters are equal to zero
Denavit-Hartenberg • Compute the link vector ai and the link lenght • Attach coordinate frames to the joint axes • Compute the link twist αi • Compute the link offset di • Compute the joint angle φi • Compute the transformation (i-1)Ti which transforms entities from linki to linki-1
Denavit-Hartenberg • Identify the joint axes • Identify the common perpendiculars of successive joint axes • Attach coordinate frames to each joint axes
Denavit-Hartenberg Identifying the joint axes
Remember, is the point where the shortest distance to jointi+1 exists Denavit-Hartenberg Identifying the common perpendiculars
the origin Denavit-Hartenberg Attaching the frames