Transformation Exercises: Denavit- Hartenberg Method Some images and exercises from: Introduction to Autonomous Mobile Robots, Siegwart, Nourbakhsh, 2011 Robot Dynamics and Control Second Edition, Spong, Hutchinson, Vidyasagar, 2004 Spacecraft Robot Kinematics Using Dual Quaternions, Valverde, Alfredo & Tsiotras, Panagiotis, 2018
Review 2 § Given two frames of reference, tra transfo sformati tions convert configurations (position + orientation) from one to the other. § A robot sees a thing. Where is the thing in the world? § There’s a thing in the world. Where is it wrt. the robot? § A robot moves around. Where is it in the world? § We can do this with translation/rotation matrices, multiplied by configuration. " 𝑈 × 𝜊 $ § 𝜊 " = $ § Or, faster with the Denavit-Hartenberg method. 2 https://matrix.reshish.com/multiplication.php is nice for running matrix multiplications
DH review: frames +x +z 3 § z axis is axis of motion +y § Rotation around z for revolute § Translation along z for prismatic § x i axis orthogonal to z i an and z i-1 § y axis: right-hand rule § Fingers point + x § Thumb points + z § Palm faces + y § x i axis must intersect z i-1 axis § Which may mean translating origin 3
DH review: parameters 4 § a i-1 : lin link le length distance Z i-1 ⇆ Z i along X i § α i-1 : lin link twis ist angle between Z i-1 ⇆ Z i around X i § d i : lin link offset distance X i-1 to X i along Z i § θ i : jo join int angle le angle between X i-1 and X i around Z i Valverde, Alfredo & Tsiotras, Panagiotis. (2018). Spacecraft Robot Kinematics Using Dual Quaternions. 4 https://www.mdpi.com/2218-6581/7/4/64/htm
Review: Transformation matrices 5 x x y y T x T y z z x y T z z ⎡ ⎤ cos θ i − sin θ i cos α i , i + 1 sin θ i sin α i , i + 1 a i , i + 1 cos θ i ⎢ ⎥ ⎢ sin θ i cos θ i cos α i , i + 1 − cos θ i sin α i , i + 1 a i , i + 1 sin θ i ⎥ i − 1 = R i ⎢ ⎥ 0 sin α i , i + 1 cos α i , i + 1 d i ⎢ ⎥ ⎢ ⎥ 0 0 0 1 ⎣ ⎦ 5
Ex.1: Planar elbow manipulator 6 § Define the axes according to the DH rules. How many frames of reference do you need? One per joint, so 2. § Then, draw lines and arcs for a and θ . § Why not α and d ? 6
Exercise 1 7 Z axes point out towards us 7
Exercise 1 8 First, what’s the table? § Give the DH parameters. What are the values? nar arm makes Pla Plana params simpler, so… Z axes point out towards us 8
Exercise 1 9 § Give the final transformation matrix. ⎡ ⎤ cos θ i − sin θ i cos α i , i + 1 sin θ i sin α i , i + 1 a i , i + 1 cos θ i ⎢ ⎥ ⎢ sin θ i cos θ i cos α i , i + 1 − cos θ i sin α i , i + 1 a i , i + 1 sin θ i ⎥ i − 1 = R i ⎢ ⎥ 0 sin α i , i + 1 cos α i , i + 1 d i ⎢ ⎥ ⎢ ⎥ 0 0 0 1 ⎣ ⎦ 9
Exercise 1 10 § Give the final transformation matrix. ⎡ ⎤ cos θ i − sin θ i cos α i , i + 1 sin θ i sin α i , i + 1 a i , i + 1 cos θ i ⎢ ⎥ ⎢ sin θ i cos θ i cos α i , i + 1 − cos θ i sin α i , i + 1 a i , i + 1 sin θ i ⎥ i − 1 = R i ⎢ ⎥ 0 sin α i , i + 1 cos α i , i + 1 d i ⎢ ⎥ ⎢ ⎥ 0 0 0 1 ⎣ ⎦ § Plugging in… cos 𝜄 ( −sin 𝜄 ( 0 𝑏 ),( cos 𝜄 ( sin 𝜄 ( cos 𝜄 ( 0 𝑏 ),( sin 𝜄 ( ) = 𝑈 ( 0 0 1 0 0 0 0 1 cos 𝜄 5 −sin 𝜄 5 0 𝑏 (,5 cos 𝜄 5 sin 𝜄 5 cos 𝜄 5 0 𝑏 (,5 sin 𝜄 5 ( = 𝑈 5 0 0 1 0 0 0 0 1 10
Exercise 1 11 § Give the final transformation matrix. ⎡ ⎤ cos θ i − sin θ i cos α i , i + 1 sin θ i sin α i , i + 1 a i , i + 1 cos θ i ⎢ ⎥ ⎢ sin θ i cos θ i cos α i , i + 1 − cos θ i sin α i , i + 1 a i , i + 1 sin θ i ⎥ i − 1 = R i ⎢ ⎥ 0 sin α i , i + 1 cos α i , i + 1 d i ⎢ ⎥ ⎢ ⎥ 0 0 0 1 ⎣ ⎦ § Plugging in… cos(𝜄 ( + 𝜄 5 ) −sin(𝜄 ( + 𝜄 5 ) 0 𝑏 ),( cos 𝜄 ( +𝑏 (,5 cos(𝜄 ( + 𝜄 5 ) sin(𝜄 ( + 𝜄 5 ) cos(𝜄 ( + 𝜄 5 ) 0 𝑏 ),( sin 𝜄 ( +𝑏 (,5 sin(𝜄 ( + 𝜄 5 ) ) = 𝑈 ) ×𝑈 5 ( = 𝑈 5 ( 0 0 1 0 0 0 0 1 11
Exercise 1 12 § This is al ays the parameters and transform for a alway planar elbow manipulator. cos(𝜄 ( + 𝜄 5 ) −sin(𝜄 ( + 𝜄 5 ) 0 𝑏 ),( cos 𝜄 ( +𝑏 (,5 cos(𝜄 ( + 𝜄 5 ) sin(𝜄 ( + 𝜄 5 ) cos(𝜄 ( + 𝜄 5 ) 0 𝑏 ),( sin 𝜄 ( +𝑏 (,5 sin(𝜄 ( + 𝜄 5 ) 0 0 1 0 0 0 0 1 § Similar derivations can be done for cylindrical arms, spherical arms, etc. § This is why we name configurations. § If you know these, you can subdivide an arm. 12
Discussion 13 § Could you do the same thing using a sequence of x/y/z rotations and translations? § How many steps would it take? § Could you do the same thing given a word problem about an arm in the world? § Given numbers? § As a derivation? § How many joints would you max out at? § Directly? § Using DH parameters? 13
Exercise 2: 14 What is the complete, derived transformation 1. matrix for a spherical wrist? What are the frames? a. What are the b. DH parameters? What are the c. individual transformation matrices? What’s the final transformation matrix? d. What is the final transformation matrix 2. for this wrist, wi out using the DH withou method? (It’s the same) § This is just a sequence of rotations – see Spong. 14
Exercise 3: 15 § What is the complete, derived transformation matrix for a 3-link cylindrical robot? What are the frames? a. What are the DH parameters? b. What are the individual c. transformation matrices? What’s the final transformation d. matrix? What is the final transformation e. matrix for this wrist, derived wi withou out using the DH method? See Spong. § 15
Exercise 3: 16 a. What are the frames? 16
Exercise 3: 17 a. What are the frames? Joint 0: § z 0 is along axis of motion § Origin 0 ( O 0 ) is arbitrary, § but makes sense x 0 is normal to the page. § 17
Exercise 3: 18 a. What are the frames? Joint 1: § z 1 is along axis of motion § Origin 0 ( O 1 ) is easy, § because z 0 and z 1 are the same (no origin movement necessary) x 1 Is normal to the page § currently (but not when joint 0 moves!) 18
Exercise 3: 19 a. What are the frames? Joint 2: § z 2 is along axis of motion § x 2 is chosen parallel to x 1 § so that θ 2 is zero. Joint 3: § Chosen as shown. § 19
Exercise 3: 20 What are the DH b. parameters? 20
Exercise 3: 21 What are the c. individual transformation matrices? § c = cosine, s = sin 0 T 1 = 1 T 2 = 2 T 3 = 21
Exercise 3: 22 What’s the final d. transformation matrix? 0 T 3 = 22
Exercise 4: 23 § What is the complete, derived transformation matrix for this arm? (any approach) § This is exercise 3 and exercise 2 stuck together, so you can just multiply your transforms for those! 23
Recommend
More recommend