kinematics solving sequences
play

Kinematics: Solving Sequences Manipulators & DH parameters P P - PowerPoint PPT Presentation

Kinematics: Solving Sequences Manipulators & DH parameters P P y 1 y 1 x 1 x 1 Many slides, graphics, and ideas adapted (with thanks!) from: Siegwart, Nourbakhsh and Scaramuzza, Autonomous Mobile Robots Renata Melamud, An


  1. Kinematics: Solving Sequences Manipulators & DH parameters P P θ θ y 1 y 1 x 1 x 1 Many slides, graphics, and ideas adapted (with thanks!) from: Siegwart, Nourbakhsh and Scaramuzza, Autonomous Mobile Robots Renata Melamud, An Introduction to Robot Kinematics, CMU Rick Parent, Computer Animation, Ohio State Steve Rotenberg, Computer Animation, UCSD Angela Sodemann, www.youtube.com/watch?v=lVjFhNv2N8o, ASU : www.cs.cmu.edu/~16311/ppp/Kinematics_final.pdf

  2. Review: Kinematics 2 Goal: Figure out where robot or § Go P P end effector is in the global θ θ (world) frame of reference y 1 y 1 x 1 x 1 hod: Treat robot and world as § Met Metho having different frames of reference that we convert between § Use matrices that represent complete information about world and robot Where it is (location of the origin) § Which way axes are pointed (orientation) § Why: so we can put the robot where we want it § Why 2

  3. Review: Manip. Kinematics 3 Goal: Figure out where end effector is § Go hod: Treat each joint as having its § Met Metho own independent frame that moves with respect to the previous one § Joint 1 moves wrt. the world § Joint 2 moves wrt. joint 1, etc. § Then, each transform from joint i to joint i+1 is a single rotation or translation § Each joint has one degree of freedom § Multi-axis joints are treated as 2+ joints connected by zero-length links 3

  4. Review: Rotation 4 § Any frame of reference can be represented by: § 3 numbers for planar movement: ( x , y , θ ) § 6 numbers for 3D: ( x , y , z , φ , θ , ψ ) (roll/pitch/yaw) § Any rotation can be broken down into single rotations around one axis each § We transform rotations between frames by multiplying by a rotation matrix § Derived trigonometrically 4

  5. Review: Translation 5 § Any frame of reference can be represented by: § 3 numbers for planar movement: ( x , y , θ ) § 6 numbers for 3D: ( x , y , z , φ , θ , ψ ) § Any translation (movement) can be broken down into single moves in one axis each § We transform translations by adding location information to the matrices, as follows (we’ll do rotation 1 0 0 x 1 0 x and translation 0 1 0 y 0 1 y 0 0 1 z exercises in class, 0 0 1 0 0 0 1 as well as DH) 5

  6. Review: Describing A Manipulator 7 § Arm made up of links in a chain § Joints each have <x,y,z> and roll/pitch/yaw § So, each joint has a coordinate system § We label links, joints, and angles joint i+1 joint i-1 joint i 7

  7. Review: Kinematics 8 § You’ll sometimes see vector Φ to represent the array of M joint values: [ ] = f f f Φ ... 1 2 M § We sometimes use vector e to represent array of N values describing end effector § Position/orientation ⎡ ⎤ e = e 1 e 2 ... e N § E.g., configuration ⎣ ⎦ § Example: § For end effector position and orientation, e would contain 6 DOFs: 3 translations and 3 rotations § If we only need position, e would contain 3 translations 8

  8. Review: Forward & Inverse 9 Joint space (robot Cartesian space (global space – previously R ) space – previously I ) θ 1 , θ 2 , …, θ n (x,y,z), r/p/y This is what we can This is where things in the directly control robot’s environment are 9

  9. Forward: i à i-1 10 § We are we looking for transformation matrix (or transform) T that converts between frame i and frame i-1: i-1 i-1 i-1 T i (or T ) T i (or ) i § Determine position and orientation of end- effector as function of displacements in joints 10

  10. Forward Kinematics and IK 11 § Joint angles ⇆ end effector configuration in I § Can string together rotations with multiplication § So, can get end effector rotation by ? § Finding rotation from [joint i-1 to i ] ✕ [joint i to i+1 ] ✕ … joint i+1 § Rot Rotation on of of end ector frame , ef effec relative to ba base joint i-1 fra frame joint i www.youtube.com/watch?v=lVjFhNv2N8o 11

  11. Describing A Manipulator 14 § But where do these frames come from? § An arm is made up of links in a chain § How How to o describe each link? § Many choices exist § DH parameters widely used joint i+1 Also: quaternions, Euler angles, … § § Denavit-Hartenberg parameters § DH parameters let you describe each t-i T i with only 4 values § a i-1 , α i-1 , d i , θ 2 joint i joint i-1 14

  12. Denavit-Hartenberg Method 15 § Ef Efficient wa way of of findi ding g transfor ormation on matrices Set frames for all joints Set 1. 1. § This is actually the tricky part Calculate all DH parameters from frames Ca 2. 2. 4 DH parameters (not 6!) define position/orientation* § ulate DH parameter table Po Popula * How is this possible? 3. 3. We already have some constraints on joints – ulate joint-to-joint DH transformation matrices Po Popula 4. 4. i.e., that they’re connected by a rigid link that Matrix for 0- 1 , matrix for 1 -2, etc. § can rotate or displace (but not both) Multiply all matrices together, in order Mul 5. 5. 0- 1 × 1 -2 × 2-3 × … § 15

  13. Defining Frames for Joints 16 § What’s the frame of reference for a joint? § Actually, completely flexible § We usually choose: P § 1 axis through the center of rotation/direction of displacement § 2 more perpendicular to that Which can be any orientation! § § We can move the origin § P is no longer <0, 0, 0> § To use DH method, choose frames carefully 16

  14. 1. Choose Frames for DH 17 § z axis must be axis of motion +x § Rotation around z for revolute § Translation along z for prismatic +z +y § x i axis orthogonal to z i an and z i-1 § There’s always a line that satisfies this § y axis must follow the 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 17

  15. 2. Find DH Parameters Given frames (from 1): a i-1 : link length – distance Z i-1 ⇆ Z i along X i α i-1 : link twist – angle Z i-1 ⇆ Z i around X i d i : link offset – distance X i-1 to X i along Z i θ i : joint angle – angle X i-1 and X i around Z i

  16. 3. DH Parameter Table 19 Given parameters: Create a parameter table § § # of rows = (# of frames) – 1 § Columns = 4 (always) ß DH parameters θ , α , a, d θ α a d frame 0-1 θ 0-1 α 0-1 a 0-1 d 0-1 frame 1-2 θ 1-2 α 1-2 a 1-2 d 1-2 frame 2-3 … … … … 19

  17. 4. Make Transform Matrix 20 Given parameter table: § Fill DH transformation matrix* for each transition: ⎡ ⎤ 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 ⎣ ⎦ 0 = R § And multiply (e.g., ) 0 R 2 1 R 2 1 is the same matrix as would be found by 0 R 2 § other methods. DH is fast and efficient. * Conceptual derivation is at the end 20

  18. Transformation i to i-1 22 a i-1 : di distance ce Z i-1 an and Z i al along X i together: screw α i-1 : an angle Z i-1 an and Z i ar around X i displacement 𝑌 # = Trans * + 𝑏 #,#./ Rot * + 𝑏 #,#./ d i : di distance ce X i-1 to to X i al along Z i together: screw θ 2 : an angle X i-1 an and X i ar around Z i displacement 𝑎 # = Trans 4 + 𝑏 #,#./ Rot 4 + 𝑏 #,#./ § Coordinate transformation: #5/ 𝑈 = 𝑎 # 𝑌 # = Trans 4 + 𝑒 # Rot 4 + 𝜄 # Trans * + 𝑏 #,#./ Rot * + 𝑏 #,#./ # 22

  19. Transformation i to i-1 23 1 0 0 0 0 1 0 0 1 0 0 0 Trans 4 + 𝑒 # = 0 0 1 𝑒 # 0 cos𝛽 #,#./ −sin𝛽 #,#./ 0 Rot * + 𝛽 #,#./ = 0 0 0 1 0 sin𝛽 #,#./ cos𝛽 #,#./ 0 0 0 0 1 1 0 0 𝑏 #,#./ cos 𝜄 # −sin 𝜄 # 0 0 0 1 0 0 sin 𝜄 # cos 𝜄 # 0 0 Trans * + 𝑏 #,#./ = Rot 4 + 𝜄 # = 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 Transformation in DH: ⎡ ⎤ 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 ⎣ ⎦ 23

  20. Exercises

  21. Exercise 1 26 Hom Homog ogeneou ous § tra transfo formati tions translate and rotate simultaneously. Y world 1. Rotates 90˚ 2. Moves forward 5 3. Rotates -90 4. Moves forward 5 5. Rotates -90 6. Moves forward 3 Y R X R X world 26

  22. Exercise 1 27 ? 𝑈 = / Y world 1. Rotates 90˚ 2. Moves forward 5 3. Rotates -90 4. Moves forward 5 5. Rotates -90 6. Moves forward 3 Y R X R X world 27

  23. Exercise 1 28 ? 𝑈 = / Y world 1. Rotates 90˚ 2. Moves forward 5 3. Rotates -90 4. Moves forward 5 5. Rotates -90 X R 6. Moves forward 3 Y R X world 28

  24. Exercise 1 29 ? 𝑈 = / Y world X R 1. Rotates 90˚ Y R 2. Moves forward 5 3. Rotates -90 4. Moves forward 5 5. Rotates -90 6. Moves forward 3 X world 29

  25. Exercise 1 30 cos 𝜄 −sin 𝜄 𝑦 ? 𝑈 = sin 𝜄 cos 𝜄 𝑧 / 0 0 1 X R 1. Rotates 90˚ Y world Y R 2. Moves forward 5 3. Rotates -90 4. Moves forward 5 5. Rotates -90 6. Moves forward 3 X world 30

  26. Exercise 1 31 𝜌 2 𝜌 2 cos B −sin B 0 𝜌 2 𝜌 2 ? 𝑈 = sin B cos B 5 / 0 0 1 X R 1. Rotates 90˚ Y world Y R 2. Moves forward 5 3. Rotates -90 4. Moves forward 5 5. Rotates -90 6. Moves forward 3 X world 31

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend