L6 - Differential Motion and Jacobians 1 v 1

download L6 - Differential Motion and Jacobians 1 v 1

of 65

Transcript of L6 - Differential Motion and Jacobians 1 v 1

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    1/65

    Differential Motion and the Robot

    Jacobian

    U

    niversitiKualaLumpurMalaysiaFranceInstitute

    Originally prepared by: Prof Engr Dr Ishkandar Baharin

    Head of Campus & Dean

    UniKL MFI

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    2/65

    Lets develop the differential Operator-bringing calculus to Robots

    The Differential Operator is a way to

    account for Tiny Motions (!T) It can be used to study movement of the

    End Frame over a short time intervals (!t) It is a way to track and explain motion for

    different points of viewU

    niversitiKualaLumpurMalaysiaFranceInstitute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    3/65

    Considering motion:

    We can define a

    General Rotation of avector K:

    By a general matrixdefined as:

    x

    y

    z

    K i

    K K j

    K k

    =

    ( , ) ( , ) ( , ) x y z Rot X Rot Y Rot Z

    U

    niversitiKualaLumpurMalaysiaFranceInstitute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    4/65

    These Rotation are given as:

    But lets remember for our purposes that

    this angle is very small (a tiny rotation) in

    radians

    If the angle is small we can have use some

    simplifications:

    1 0 0 0

    0 ( ) ( ) 0( , )

    0 ( ) ( ) 0

    0 0 0 1

    x x

    x

    x x

    Cos Sin Rot X

    Sin Cos

    =

    Cos small 1 Sin small smallUniversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    5/65

    Substituting the Small angle

    Approximation:

    1 0 0 0

    0 1 0( , )

    0 1 0

    0 0 0 1

    x

    x

    x

    Rot X

    1 0 00 1 0 0

    ( , )0 1 0

    0 0 0 1

    y

    y

    y

    Rot Y

    1 0 01 0 0

    ( , )0 0 1 0

    0 0 0 1

    z

    z

    z Rot Z

    Similarly for Y and Z:

    U

    niversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    6/65

    Simplifying the Rotation Matrices(form their product):

    1 0

    1 0.

    1 0

    0 0 0 1

    z y

    z x

    y x

    Gen Rot

    Note here: we have neglected higher order products of the

    terms!

    ClassExercise !!!

    General Small Rotation of a Vector K ( , ) ( , ) ( , ) x y zR X R Y R Z

    U

    niversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    7/65

    What about Small (general)

    Translations?

    We define it as a

    matrix:

    General Tiny Motion

    is then (including both

    Rot. and Translation):

    1 0 0

    0 1 0( , , )

    0 0 1

    0 0 0 1

    dx

    dyTrans dx dy dz

    dz

    =

    1

    1_1

    0 0 0 1

    z y

    z x

    y x

    dx

    dyGen Movementdz

    U

    niversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    8/65

    So using this idea:

    Lets define a motion which is due to a robots

    joint(s) moving during a small time interval: T+!T = {Rot(K,d)*Trans(dx,dy,dz)}T

    Consider Here: T is the original end frame pose

    Substituting for the matrices:

    1

    1

    1

    0 0 0 1

    z y

    z x

    y x

    dx

    dyT T T

    dz

    +

    UniversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    9/65

    Solving for the differential motion

    (!T)

    1

    1

    1

    0 0 0 1

    z y

    z x

    y x

    dx

    dyT T T

    dz

    U

    niversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    10/65

    Factoring T (on the RHS)

    1 1 0 0 0

    1 0 1 0 0

    1 0 0 1 0

    0 0 0 1 0 0 0 1

    z y

    z x

    y x

    dx

    dyT T

    dz

    ClassExercise !!!

    U

    niversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    11/65

    Further Simplifying:

    0

    0

    0

    0 0 0 0

    z y

    z x

    y x

    dx

    dy

    T Tdz

    We will call this

    matrix the del

    operator: UniversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    12/65

    Thus, the Change in POSE (!T or dT) is:

    dT (!T) = T

    Where: = {[Trans(dx,dy,dz)*Rot(K,d)] I}

    Thus we see that this operator is analogous tothe derivative operator d( )/dx but now taken withrespect to Homogeneous Transformation

    Matrices !!!

    U

    niversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    13/65

    Lets look into an application:

    Given:

    Subject it to 2 simultaneous movements: Along X 0 (dx) by .0002 units (/unit time)

    About Z0 a Rotation of 0.001rad (/unittime)

    0

    1 0 0 3

    0 1 0 5

    0 0 1 00 0 0 1

    n

    currT

    =

    U

    niversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    14/65

    Graphically:

    Xn

    Yn

    X0

    Y0

    R

    Here:

    Rinit = (32

    + 52

    ).5

    =5.831 units

    init = Atan2(3,5) =1.0304 rad

    U

    niversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    15/65

    Where is the Frame n after one

    time step?

    Considering Position: Effect of Translation:

    X=3.0002 and Y = 5.000

    New Rf= (3.00022

    + 5.02

    ).5

    = 5.83105 unit

    Effect of Rotation fin = 1.0304 + 0.001 = 1.0314 rad

    Therefore: Xf= Cos(fin) * Rf= 2.99505 And: Yf= Sin(fin) * Rf= 5.00309

    Class

    Exercise !!!

    U

    niversitiKual

    aLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    16/65

    Where is the Frame n after one time

    step?

    Considering

    Orientation: ( )

    ( ) .9999995

    .000999998

    0 0

    Cos

    n Sin

    = =

    r

    ( )( )

    .000999998

    .9999995

    0 0

    Sin

    o Cos

    = =

    r

    0

    0

    1

    a

    =

    r

    ClassExercise !!!

    U

    niversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    17/65

    After 1 time step, Exact Poseis:

    .9999995 .000999998 0 2.99505

    .000999998 .9999995 0 5.00309

    0 0 1 0

    0 0 0 1

    newT

    =

    U

    niversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    18/65

    Lets Approximate it using this operator

    Tnew

    = Tinit

    + dT = Tinit

    + Tinit

    the 1st law of differential calculus

    Where:

    0 .001 0 .0002 1 0 0 3

    .001 0 0 0 0 1 0 5

    0 0 0 0 0 0 1 0

    0 0 0 0 0 0 0 1

    0 .001 0 .0048

    .001 0 0 .003

    0 0 0 0

    0 0 0 0

    initdT T

    = =

    =

    UniversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    19/65

    Thus, Tnew is Approximately:

    1 0 0 3 0 .001 0 .0048

    0 1 0 5 .001 0 0 .003

    0 0 1 0 0 0 0 0

    0 0 0 1 0 0 0 0

    1 .001 0 2.9952

    .001 1 0 5.003

    0 0 1 0

    0 0 0 1

    new init init

    T T T

    = + = +

    =

    U

    niversitiKualaLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    20/65

    Comparing: Exact:

    Approximate:

    .9999995 .000999998 0 2.99505

    .000999998 .9999995 0 5.00309

    0 0 1 0

    0 0 0 1

    newT

    =

    1 .001 0 2.9952

    .001 1 0 5.003

    0 0 1 00 0 0 1

    newT

    =

    Realistically these are all but equal but using the del

    approximation, but finding it was much easier!U

    niversitiKualaLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    21/65

    We can (might!) use the del approach to

    move a robot in space:

    Take a starting POSE (Torig) and

    a starting motion set (deltas inrotation and translation as

    function of unit times)

    Form operator for motion Compute dT (Torig)

    Form Tnew = Torig + dT

    Repeat as time moves forward

    over n time steps

    U

    niversitiKualaLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    22/65

    Taking Motion W.R.T. other Spaces

    (another use for this del operator idea)

    Original Model (the motion we seek is defined in an

    inertial space), i.e. w.r.t. Base Frame: dT = T (1)

    However, if the motion is taken w.r.t. another (non-

    inertia) space, i.e w.r.t. New Frame :

    dT = T T (2)

    Here T implies motion w.r.t. itself a moving frame butcould be motion w.r.t. any other non-inertia space (robot or

    camera, etc.)

    Consider as well: the pose change (motion that is

    happening) itself (dT) is independent of point of

    view so, by equating (1) and (2) we can isolate T

    T = (T)-1T

    Remember Guys !!!Rotation w.r.t. Base Frame, Pre-Multiply,Rotation w.r.t. New Frame, Post-Multiply

    U

    niversitiKualaLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    23/65

    Solving for the specific Terms inT

    Positional ChangeVector w.r.t. (any)Tspace:

    Angular effects wrtTspace:

    ( )( )

    ( )

    T

    p

    T

    p

    T

    p

    T

    T

    T

    dx d n d n

    dy d o d o

    dz d a d a

    x n

    y oz a

    = +

    = +

    = +=

    ==

    uuuuur uur r

    uuuuur uur r

    uuuuur uur r

    r

    r

    r

    d, n, o & a vectors

    are extracts from

    the T Matrix

    dp is the translationvector in is the rotationaleffects in

    U

    niversitiKualaLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    24/65

    Subbing into a del Form:

    0

    00

    0 0 0 0

    T T T

    z y

    T T T

    T z x

    T T T

    y x

    dx

    dydz

    =

    U

    niversitiKualaLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    25/65

    An Application of this issue:

    R

    WC

    PART

    Camera

    TWCR

    TCamPart

    TRpart

    If the Part is moving along a conveyor and

    we measure its motion in the Camera

    Frame (let the camera measure it at

    various times) and we would need to pick

    the part with the robot, we must track wrt

    to the robot, so we need part motion del

    in the robots space.U

    niversitiKualaLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    26/65

    This is a Motion Mapping Issue:

    Pa R WC Ca PaPa R C Pa

    Pa R WC Ca Pa

    Knowns: C = del Motion in Camera Space Robot in WC

    Camera in WC

    And of course Part in Camera (But we dont need it

    for now!)

    Note: Pa = PART

    U

    niversitiKualaLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    27/65

    Lets Isolate the Middle R WC Ca

    R C R WC Ca

    To solve forR we make progress from Rto R directly (R) and The long wayaround:

    ( ) ( ) ( ) ( ) ( )1 1

    R R Cam Cam Cam R

    WC WC WC WC T T T T

    =

    Class

    Exercise !!!

    U

    niversitiKualaLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    28/65

    Rewriting into a Standard Form:

    It can be shown for 2 Matrices (A & B):

    A-1*B = (B-1*A)-1 (1)

    Or B-1*A = (A-1*B)-1 (2)

    If, on the previous page we consider:

    TWCCam as A and TWC

    R as B,

    and define the form: (TwcCam

    )

    -1

    *TWCR

    as T Then, Using the theorem (from matrix math)

    stated as (2) above T-1 is: (TWCR)-1* TWC

    Cam

    Class

    Exercise !!!

    U

    niversitiKualaLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    29/65

    Continuing:

    Rewriting, we find that R = T-1(Cam) T

    R is now shown in the standard formfor non-inertial space motion

    the terms: d, n, o & a vectors come from our complex Tmatrix

    the d p and vectors can be extracted from the Cam These term are required to define motion in the robot space

    Of course the T is really: (TwcCam)-1*TWC

    R here!

    Its from this T product that we extract n, o, a, d vectors

    UniversitiKualaLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    30/65

    R

    is given by simplifying: 1st: (Twc

    Cam)-1*TWCR = T

    Then these Scalars:)

    ( )( )

    R

    p

    R

    p

    R

    p

    R

    R

    R

    dx d n d n

    dy d o d o

    dz d a d a

    x n

    y o

    z a

    = +

    = += +

    ==

    =

    uuuuur uur r

    uuuuur uur r

    uuuuur uur r

    r

    r

    r

    WHERE:d, n, o & a vectors areextracts from the T Matrix

    above

    dp is the translation vector

    in Cam

    is the vector of rotational

    effects inCam

    UniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    31/65

    Homework 1 !!!

    1. Draw the Motion Mapping for

    2. Derive the full equation forGripper where

    Part

    GripperT

    Gripper

    Part

    CamT

    Gripper

    WCT

    Part

    GripperT

    WC

    Camera

    0 0 1 20 1 0 2

    1 0 0 2

    0 0 0 1

    0 1 0 10

    1 0 0 10

    0 0 1 10

    0 0 0 1

    Gripper

    WC

    Camera

    WC

    T

    T

    =

    =

    UniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    32/65

    Homework 2 !!!

    1. Draw the Motion Mapping for

    2. Derive the full equation forGripper where

    Part

    RobotT

    Gripper

    Part

    Cam

    T

    Robot

    WCT

    Part

    RobotT

    WC

    Camera

    1 0 0 20 1 0 10

    0 0 1 0

    0 0 0 1

    0 1 0 10

    1 0 0 10

    0 0 1 10

    0 0 0 1

    Robot

    WC

    Camera

    WC

    T

    T

    =

    =

    UniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    33/65

    Lets Examine the Jacobian Ideas

    Fundamentally:

    1

    q

    q

    D J D

    D J D

    =

    =

    and, If it 'exists' we can define the

    Inverse Jacobian as:

    UniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    34/65

    In This Model, Ddot & Dq,dot are:

    1

    2

    3

    4

    5

    6

    ;

    ;

    Cartesian Velocity

    Joint Velocity

    x

    y

    z

    q

    x

    y

    D z

    q

    q

    qD

    q

    q

    q

    =

    =

    We state, then, that the

    Jacobian is a mappingtool that relates

    Cartesian Velocities (of

    the n frame) to the

    movement of the

    individual Robot Joints

    UniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    35/65

    Lets build one from 1st Principles

    Here is a Spherical Arm:

    X0

    Y0

    Z0

    RLets start with only

    linear motion ----

    equations are

    straight forward!

    UniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    36/65

    Writing the Position Models: Z = R*Sin()

    X = R*Cos()*Cos() Y = R*Cos()*Sin()

    ( )

    ( ) ( )

    ( ) ( )

    ( )

    ( )

    ( )

    Sindz R Sin Rdt t t

    S R RC

    CCdx R C C RC RC dt t t t

    C C R RC S RC S

    Sdy CR C S RS RC dt t t t

    C S R RS S RC C

    = +

    = +

    = + +

    =

    = + +

    = +

    UniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

    To find velocity, differentiate

    these as seen here:

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    37/65

    Writing it as a Matrix:

    0

    X RC S RC S C C

    Y RC C RS S S C

    RC SZ R

    =

    This is the Jacobian; It is built as the Matrix of

    partial joint contributions (coefficients of the

    velocity equations) to Velocity of the End FrameUniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    38/65

    Here we could develop an Inverse

    Jacobian:

    ( ) ( )

    ( )

    '2 '2

    '

    ' 2 ' 2 2

    .5' 2 2

    0y xxR R

    zx zy Ry R R R R R

    yR zx z R R R

    R x y

    =

    = +

    It was formed by taking

    the partial derivatives

    of the IKS equations

    Class

    Exercise !!!UniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    39/65

    The process we just did is limited to finding

    Linear Velocity!

    and We need both linear and angular

    velocities for full functioned robots!

    We can approach the problem by separationsas we

    did in the General case of Inverse Kinematics

    Here we separate Velocity (Linear from Rotational),not Joints (Arms from Wrists)

    Generally speaking, in the Jacobian we will obtain

    one Column for each Joint and 6 rows for a full

    velocity effect We say the Jacobian is a 6 by n (6xn) matrix

    UniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    40/65

    Separation Leads to: A Cartesian Velocity

    Term V0n

    :

    An Angular Velocity

    Term 0n:

    0

    n

    v q

    x

    y V J D

    z

    = =

    0

    x

    ny q

    z

    J D

    = =

    Each of these Jis are 3 Row by n Columned MatricesUniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    41/65

    Building the Sub-Jacobians: We follow 3 stipulations:

    Velocities can only be added if they are defined inthe same space as we know from dynamics

    Motion of the end effector (n frame) is taken w.r.t.the base space (0 frame)

    Linear Velocity effects are physically separablefrom angular velocity effects

    To address the problem we will consider

    moving a single joint at a time (using DHseparation ideas!)

    UniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    42/65

    Lets start with the Angular Velocity (!)

    Considering any joint i, its Axis of motion is: Zi-1 (Z in Frame i-1)

    The (modeling) effect of a joint is to drive the very next frame

    (frame i)

    If Joint i is revolute:

    here k(i-1) is the Zi-1 direction (by definition)

    This model is applied to each of the joints (revolute) in the

    machine (as it rotates the next frame, all subsequent fames,move similarly!)

    But if the Joint is Prismatic, it has no angular effect on its

    controlled frame and thus no rotation from it on all

    subsequent frames

    1 1 1

    i

    i i i i ik q Z q = =

    UniversitiKua

    laLumpurMa

    laysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    43/65

    Developing the (base) J

    We need to add up each of the joint effects

    Thus we need to normalize them to base space to do thesum

    DH methods allow us to do this!

    Since Zi-1 is the active direction in a Frame of the model, wereally need only to extract the 3rd column of the product of A1

    * *Ai-1 to have a definition of Zi-1 in base space. Then, thisAis products 3

    rd column is the effect of Joint i as defined inthe (common) base space (note, the qdot term is the rate ofrotation of the given joint)

    1 1 1ii i i i ik q Z q = =

    UniversitiKua

    laLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    44/65

    So the Angular Velocity then is:

    0 1

    1

    1

    0

    n

    ni i i

    i

    i

    i

    Z q

    =

    =

    =

    =

    (revolute joint)

    (prismatic joint)As stated previously, Zi-1 is the 3

    rd col. of A1*Ai-1 (rows

    1,2 & 3). And we will have a term in the sum for each joint

    Note Zi-1 for

    Jointi per DH

    algorithm!

    UniversitiKua

    laLumpurMalaysiaFrance

    Institute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    45/65

    Going Back to the Spherical Device:

    0 0 1

    0

    0 1

    0

    1 1 0

    0

    0

    0

    1

    we state:

    Therefore:

    and (always):

    n

    nq

    Z Z

    J D

    J Z Z

    Z

    = + +

    =

    =

    =

    uur uur r

    uur uur r

    uurHere, Z1 depends

    on the Frame

    Skeleton drawn!

    Notice: 3 columns since

    we have 3 joints!

    X 0

    Y 0

    Z 0

    0 1

    1

    nn

    i i i

    i

    Z q =

    =

    UniversitiKua

    laLumpurMalaysiaFranceInstitute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    46/65

    Building the Linear Jacobian

    It too will depend on the motion associatedwith Zi-1

    It too will require that we normalize each joints

    linear motion contribution to the base space We will find that revolute and prismatic joints

    will make functionally different contributions to

    the solution (as if we would think otherwise!) Prismatic joints are Easy, Revolutes are not!

    UniversitiKua

    laLumpurMalaysiaFranceInstitute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    47/65

    Building the Linear Jacobian

    0

    00

    1

    0

    n

    n n

    ni

    ii

    n

    vi i

    d

    dd qq

    dJ q

    =

    =

    =

    =

    1 to n

    is linear velocity of the end frame wrt the base

    UniversitiKua

    laLumpurMalaysiaFranceInstitute

    B ildi th Li J bi f

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    48/65

    Building the Linear Jacobian for

    Prismatic Joints

    When a prismatic jointi moves, all

    subsequent links move (linearly) at the

    same rate and in the same directionUniversitiKua

    laLumpurMalaysiaFranceInstitute

    Building the Linear Jacobian

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    49/65

    Building the Linear Jacobian

    Prismatic Joints

    Therefore, for each prismatic joint of amachine, the contribution to theJacobian (after normalizing) is:

    Zi-1 which is the 3rd

    column of the matrix givenby:A0 * * Ai-1

    This is as expected based on the modelon the previous slide (and our moveonly one and then normalize it method)

    UniversitiKua

    laLumpurMalaysiaFranceInstitute

    Building the Linear Jacobian for

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    50/65

    Building the Linear Jacobian for

    Revolute Joints

    This is a dicer problem, but then, remembering the idea of prismatic joints on angular

    velocity

    But nothat wont work here just because its arotation, and it changes orientation of the end revolute motion also does have a linearcontribution effect to the motion of the end

    This is a levering effect which moves the origin of the n-frame as we saw when discussing the del-operator on the -

    R structure. We must compute and account for this effect

    and then normalize it too.

    UniversitiKua

    laLumpurMalaysiaFranceInstitute

    Building the Linear Jacobian

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    51/65

    Building the Linear Jacobian

    Revolute Joints

    Using this model we would

    expect that a rotation i wouldlever the end by an amount that

    is equivalent (in direction) to the

    CROSS product of the driver

    vector and the connector vector

    and with a magnitude equal toJoint velocity

    UniversitiKua

    laLumpurMalaysiaFranceInstitute

    Building the Linear Jacobian

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    52/65

    Building the Linear Jacobian

    Revolute Joints

    This is thedirectional

    resultant (DR)

    vector given by:

    Zi-1 X di-1n

    [with Magnitude

    equal to joint

    speed!]

    Note the Green

    Vector is equal to

    the red DR vector!UniversitiKualaLumpurMalaysiaFranceInstitute

    Building the Linear Jacobian

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    53/65

    Building the Linear Jacobian

    Revolute Joints

    Zi-1 X di-1n is the direction of the linear motion of

    the revolute joint i on n-Frame motion It too must be normalized

    Notice: di-1n = d0

    n d0i-1 (call it eq. 3)

    This normalizes the vector di-1n to the basespace

    But the d-vectors on the r.h.s. are really origin

    position of the various frames (Framei-1 andFramen) i.e. the positions of frame Origins

    So lets rewrite equation 3 as: di-1n = On Oi-1

    UniversitiKualaLumpurMalaysiaFranceInstitute

    Building the Linear Jacobian

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    54/65

    Building the Linear Jacobian

    Revolute Joints

    The contribution to the Jv due to a revolutejoint is then:

    Zi-1 X (On Oi-1)

    Where: Zi-1 is the 3

    rd col. of the T0i-1 (A1* *Ai-1)

    Oi-1 is 4th col. of the T0

    i-1 (A1* *Ai-1)

    On is 4th col. Of T0n (the FKS!) NOTE when we pull the columns we only need the

    first 3 rows!

    UniversitiKualaLumpurMalaysiaFranceInstitute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    55/65

    Building the Linear Jacobian

    Summarizing: The Jv is a 3-row by n columned matrix

    Each column is given by joint type:

    Revolute Joint: Zi-1 X (On Oi-1)

    Prismatic Joint: Zi-1

    And notice: select Zi-1 and Oi-1 for the frame before

    the current joint column

    UniversitiKualaLumpurMalaysiaFranceInstitute

    Combining Both Halves of the

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    56/65

    Combining Both Halves of the

    Jacobian:

    For Revolute Joints:

    For Prismatic Joints:

    ( )1 1

    1

    i n iv

    i

    Z O OJJ

    JZ

    = =

    uuuuuuuuuuuuuuuuuur

    uuur uur uuur

    uuur

    1

    0

    v iJ Z

    JJ

    = =

    uuur

    r

    UniversitiKualaLumpurMalaysiaFranceInstitute

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    57/65

    What is the Form of the Jacobian?

    Robot is: (PPRRRR) a cylindrical machine

    with a spherical wrist:

    Z0 is (0,0,1)T; O0 = (0,0,0)T always, always,always!

    Zi-1s and Oi-1s are per the frame skeleton

    ( ) ( ) ( ) ( )0 1 2 6 2 3 6 3 4 6 4 5 6 5

    2 3 4 50 0

    Z Z Z O O Z O O Z O O Z O O

    J Z Z Z Z

    =

    UniversitiKualaLumpurM

    alaysiaFranceInstitute

    Lets try this on the Spherical ARM

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    58/65

    Lets try this on the Spherical ARM

    we did earlier:

    X0

    Y0

    Z0

    1

    2

    d3

    X0

    Y0

    Z0

    Z1

    X1

    Y1

    Z2

    X2

    Y2

    Zn

    Xn

    YnThe robot indicatesthis frame skeleton:

    UniversitiKualaLumpurM

    alaysiaFranceInstitute

    Lets try this on the Spherical ARM we

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    59/65

    Lets try this on the Spherical ARM we

    did earlier:

    010100d30P32n

    C2-S21090002+90R212

    S1C11090001R101

    S C S C adVarLinkFr

    LP Table:

    UniversitiKualaLumpurM

    alaysiaFranc

    eInstitute

    Lets try this on the Spherical ARM

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    60/65

    Lets try this on the Spherical ARM

    we did earlier:

    Ais:

    1

    2

    3

    3

    1 0 1 0

    1 0 1 0

    0 1 0 0

    0 0 0 1

    2 0 2 0

    2 0 2 0

    0 1 0 0

    0 0 0 1

    1 0 0 0

    0 1 0 0

    0 0 1

    0 0 0 1

    C S

    S CA

    S C

    C SA

    Ad

    =

    =

    =

    UniversitiKualaLumpurM

    alaysiaFranc

    eInstitute

    Lets try this on the Spherical ARM

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    61/65

    Lets try this on the Spherical ARM

    we did earlier: T1 = A1!

    T2 = A1 * A2

    T0n = T3 = A1*A2*A3

    1 2 1 1 2 01 2 1 1 2 0

    22 0 2 0

    0 0 0 1

    C S S C C S S C S C

    TC S

    =

    3

    3

    0

    3

    1 2 1 1 2 1 2

    1 2 1 1 2 1 23

    2 0 2 2

    0 0 0 1

    n

    C S S C C d C C

    S S C S C d S C T T

    C S d S

    = =

    UniversitiKualaLumpurM

    alaysiaFranc

    eInstitute

    Lets try this on the Spherical ARM

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    62/65

    Lets try this on the Spherical ARM

    we did earlier: THE JACOBIAN

    ) ( )0 3 0 1 3 1 2

    0 10

    Z O O Z O O Z JZ Z

    =

    r

    The Jacobian is Of This Form:

    UniversitiKualaLumpurM

    alaysiaFranc

    eInstitute

    Lets try this on the Spherical ARM

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    63/65

    y p

    we did earlier: THE JACOBIAN Here:

    ( )

    3

    0 3 0 3

    3

    3

    3

    0 1 2 0

    0 1 2 01 2 0

    1 2

    1 2

    0

    d C C

    Z O O d S C d S

    d S C

    d C C

    = =

    ( )

    3

    1 3 1 3

    3

    3

    3

    3

    1 1 2 0

    1 1 2 00 2 0

    1 2

    1 2

    2

    S d C C

    Z O O C d S C d S

    d C S

    d S S

    d C

    = =

    UniversitiKualaLumpurM

    alaysiaFranc

    eInstitute

    C P d t f t t A d B

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    64/65

    Cross Product of two vectors A and B

    2 3 3 1 1 2

    1 2 3

    2 3 3 1 1 2

    1 2 3

    1 2 3 3 2

    2 3 1 1 3 2 3 3 2 3 1 1 3 1 2 2 1

    3 1 2 2 1

    ( ) ( ) ( )

    i j ka a a a a a

    a a a i j k b b b b b b

    b b b

    c a b a b

    c a b a b a b a b i a b a b j a b a b k

    c a b a b

    = = = + +

    = = = + +

    C A B

    Ar

    Br

    Resultant Vector = nr

    or

    ar

    x

    y

    z

    vectorsCoordinate

    Frame

    A Br r

    = Cr

    i

    j

    k

    UniversitiKualaLumpurM

    alaysiaFranc

    eInstitute

    After total Simplification, THE Full

  • 8/9/2019 L6 - Differential Motion and Jacobians 1 v 1

    65/65

    p ,

    JACOBIAN is:

    3 3

    3 3

    3

    1 2 1 2 1 2

    1 2 1 2 1 2

    0 2 2

    0 1 0

    0 1 0

    1 0 0

    d S C d C S C C

    d C C d S S S C

    d C S

    J S

    C

    =

    UniversitiKualaLumpurM

    alaysiaFranc

    eInstitute