differential kinematics
play

Differential Kinematics Up to this point, we have only considered - PowerPoint PPT Presentation

Differential Kinematics Up to this point, we have only considered the relationship of the joint angles to the Cartesian location of the end effector: = f ( q ) x f ( q ) But what about the first derivative? q This


  1. Differential Kinematics Up to this point, we have only considered the relationship of the joint angles to the Cartesian location of the end effector: = f ( q ) x ∂ f ( q ) But what about the first derivative? ∂ q • This would tell us the velocity of the end effector as a function of joint angle velocities.

  2. Motivating Example Consider a one-link arm • As the arm rotates, the end effector sweeps out an arc • Let’s assume that we are only x interested in the coordinate… l q x x = l cos( q ) Forward kinematics: = − l sin( q ) dx Differential kinematics: dq δ = − δ x l sin( q ) q 1 δ = − δ q x l sin( q )

  3. Motivating Example Suppose you want to move the end Goal: move the end x effector above a specified point, effector onto this line g   x −   = g 1 q cos Answer #1:   g l   = 0 = i 0 , q arbitrary 1. Answer #2: l q x x = l cos( q ) 2. x i i g ( ) δ = α − x x x 3. g i 1 4. δ = δ q x − l sin( q ) i = + δ q q q 5. + 1 i i + + i 6. goto 2.

  4. Motivating Example l q x x g q δ q δ q x 1 d + + x joint ctlr g − l sin( q ) x q joint position l cos() sensor This controller moves the link asymptotically toward the goal position.

  5. Intro to the Jacobian + +   l cos( q ) l cos( q q ) Forward kinematics of the two-  = 1 1 2 1 2 x   link manipulator + + l sin( q ) l sin( q q )   1 1 2 1 2 l 2 q 2 y Velocity Jacobian l q 1 1 x  − − + − +   l sin( q ) l sin( q q ) l sin( q q ) d x = 1 1 2 1 2 2 1 2    + + + d q l cos( q ) l cos( q q ) l cos( q q )   1 1 2 1 2 2 1 2 ( ) = J q

  6. Intro to the Jacobian − − + − +   l sin( q ) l sin( q q ) l sin( q q ) ( ) = 1 1 2 1 2 2 1 2 J q   + + + l cos( q ) l cos( q q ) l cos( q q )   1 1 2 1 2 2 1 2 δ = δ x J q Chain rule: l 2 If the Jacobian is square q and full rank, then we 2 δ = − δ 1 q J x can invert it: y  q l q 1 1 x    δ q δ q x  joint ctlr d + + x − 1 J d   joint position x FK  q ( q ) sensor

  7. Jacobian The Jacobian relates joint velocities with end effector twist : ξ = J  q Joint angle velocities End effector twist • First derivative of joint angles: Jacobian    q 1   =  q       q   n It turns out that you can “easily” compute the Jacobian for arbitrary manipulator structures • This makes differential kinematics a much easier sub-problem than kinematics in general.

  8. What is Twist? End effector twist: Linear velocity • Twist is a concatenation of linear   v ξ = ω velocity and angular velocity:     Angular velocity • As we will show in a minute, linear and angular velocity have different units • Although we will frequently treat this quantity as a 6-vector, it is NOT one…

  9. Twist: Angular Velocity b = b a q R q a   = b b a q R q Just differentiate all elements of a the rotation matrix w.r.t. time.  T  = b b b b q R R q a a ( ) This is the matrix representation  T ω = b b b S R R of angular velocity a a ( ) q This FO differential equation = ω b  b b q S encodes how the particle rotates FYI: this expression can be solved using an exponential: ( ( ) )   2 ( ) ω b ( ) S t ( ) ( ) ( ) b ω = = + ω + + b S t b b    q t e q 0 I S t q 0 2    

  10. Twist: Angular Velocity ( ( ) )   2 ( ) ω b ( ) S t ( ) ( ) ( ) b ω = = + ω + + b S t b b    q t e q 0 I S t q 0 2     [ ] ( ) ( ) ( ) ( ) ( ( ) ) 2 = + ω θ + ω − θ b b 2 I S t sin S t 1 cos q 0

  11. Twist: Time out for skew symmetry! = − T Def’n of skew symmetry S S   0 a b   Skew symmetric matrices = − S a 0 c   always look like this   − − b c 0     − 0 x x z y   ( ) = − S x x 0 x If you interpret the skew symmetric   z x matrix like this:   − x x 0   y x ( ) = × Then this is another way of writing S x p x p the cross product:

  12. Twist: Angular Velocity ( ) ω b S Skew symmetry of : T I = b b R R a a   T T = + b b b b 0 R R R R a a a a   T T =− b b b b R R R R a a a a ( ) ( ) T ω = − ω b b S S ( ) q = ω b  b b q S = ω × b  b b You probably already know this q q formula

  13. Twist Twist concatenates linear and angular velocity: Linear velocity   v ξ = ω     Angular velocity

  14. Jacobian = v  v J q Breakdown of the Jacobian: ω = J  q ω   J v ξ =  q   J   ω ∂ ∂ x r = φθψ J v ≠ J Relation to the derivative: but ∂ ω q ∂ q That’s not an angular velocity

  15. Calculating the Jacobian eff x eff Approach: y • l Calculate the Jacobian one column at a 3 time q − eff 1 x 3 • Each column describes the motion at the end effector due to the motion of that joint  − eff 1 y only. • For each joint, i , pretend all the other joints 1 x 1 are frozen, and calculate the motion at the y end effector caused by i. q 2 l 2 0 y l 1 q 1 0 x 0 z

  16. Calculating the Jacobian: Velocity eff x th i How does the end effector translate as the eff y link moves? l i x − i 1 x 3 − i 1 q y − eff 1 x 3 l i  − eff 1 y i y 1 x 1 y − q = b b i 1 p R p 2 − − eff i 1 i 1 , eff l 2 0 y l 1 Orientation of the q Vector from reference 1 − th 0 i 1 link x frame i-1 to the end 0 effector z

  17. Calculating the Jacobian: Velocity i x − i 1 x − i 1 y • Calculate the velocity of the end effector caused by motion at the i-1 link: l i − = b b i 1 i p R p y − − eff i 1 i 1 , eff  − − = + b  b i 1 b i 1  p R p R p − − − − eff i 1 i 1 , eff i 1 i 1 , eff  T − = + b  b b b i 1 b  p R R R p p − − − − − eff i 1 i 1 i 1 i 1 , eff i 1 , eff ( ) − =  T ω b b b S R R − − i 1 i 1 i 1 ( ) = ω + b  b b b  p S p p − − − eff i 1 i 1 , eff i 1 , eff = ω × + b  b b b  p p p − − − eff i 1 i 1 , eff i 1 , i

  18. Calculating the Jacobian: Velocity i x − • i 1 The velocity of the end effector x − i 1 y caused by motion at the i-1 link: = ω × + b  b b b  l p p p i − − − eff i 1 i 1 , eff i 1 , i i y Velocity at end effector due to change in length of link i-1 Velocity at end effector due to rotation at joint i-1

  19. Calculating the Jacobian: Velocity − i 1 x − i 1 y Rotational DOF q i • Rotates about − i 1 z i x = − × b b J z p − l v i 1 i 1 , eff i ( ) i − i 1 z = × − i b b b y J z p p i z − − v i 1 eff i 1 i − i 1 z Rotation about − i 1 y Vector from i-1 to the end l i − i 1 z effector i x Prismatic DOF i y − i 1 x i • Translates along z − i 1 z = b J z − i 1 Extension/contraction along z − v i 1 i

  20. Calculating the Jacobian: Angular Velocity eff x th i How does the end effector rotate as the eff y link moves? l i x − i 1 x 3 − i 1 q y − eff 1 x 3 l i  − eff 1 y i y 1 x 1 y − q = b b i 1 i R R R R 2 − eff i 1 i eff l 2 0 y l 1 b R How does rotate as this rotates? q eff 1 0 x 0 z

  21. Calculating the Jacobian: Angular Velocity − = b b i 1 i R R R R − eff i 1 i eff   − = b b i 1 i R R R R − eff i 1 i eff ( ) ( ) − − ω = ω b b b i 1 i 1 i S R R S R R − − eff eff i 1 i 1 , i i eff ( ) ( ) − T − ω = ω b b b i 1 b b i 1 S R R S R R R − − − − eff eff i 1 i 1 , i i 1 i 1 eff ( ) ( ) − − ω = ω b b b i 1 b i 1 S R S R R R − − − eff eff i 1 i 1 , i i 1 eff ( ) ( ) ω = ω b b b b S R S R − eff eff i 1 , i eff ω = ω b b Perhaps this was kind of obvious… − eff i 1 , i Angular velocity caused by rotation of joint i-1 Angular velocity at end effector

  22. Calculating the Jacobian: Velocity − i 1 x − i 1 y Rotational DOF q i • Rotates about − i 1 z i x = b z J l ω − i 1 , i i i − i 1 z i y i z − i 1 z Rotation about − i 1 y l i − i 1 z i x Prismatic DOF • Translates along − i 1 z i y − i 1 x i = z J ω 0 i − i 1 Extension/contraction along z

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