robotic path control techniques

Upload: arihant-talesra

Post on 05-Apr-2018

233 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/31/2019 Robotic Path Control Techniques

    1/52

    Path Control in Robotics

    ME 4135

    Lecture series 8

    Richard R. Lindeke, Ph. D.

  • 7/31/2019 Robotic Path Control Techniques

    2/52

  • 7/31/2019 Robotic Path Control Techniques

    3/52

    Path Control and Motion

    Types: We will explore the following types of Motion:

    Lead Through Path Creation

    (Cubic) Polynomial Paths w/ Via Points Minimum Time Trajectory w/ controlled Acceleration

    Lower order Path-Poly Control

    LSPB Paths

    Craigs Method for acceleration smoothing Strict Velocity Control

    Joint Interpolated Control

    Full Cartesian Control

  • 7/31/2019 Robotic Path Control Techniques

    4/52

    Basically this was a technique whereby a skilled operator took arobot arm (for welding or painting) and used it like his/her weldtool or paint sprayer and performed the required process atreasonable speed

    The robot is equipped with a position recording device andmemorizes a large number of points during the teaching session

    These learned points then would be played back to replicatethe skilled operators motions

    Lead Through Path Creation

  • 7/31/2019 Robotic Path Control Techniques

    5/52

    Lead Through Path CreationAdvantages:

    Simple way to create complex paths

    All points are sure to be physically attainable Playback speed can be controlled by an

    external device

    Disadvantages: Precision placements are required (program

    must be replayed at exactly the initialplacement)

    Major concern with operator safety: robot ispowered and operator is physically touching it(OSHA rules it unsafe practice!)

  • 7/31/2019 Robotic Path Control Techniques

    6/52

    Modern Path Control:

    (Lets look at a simple example)

    Dr. Ds new Self-powered Automated CoffeeDrinker Robot

    It is a simple cantilevered Cartesian deviceequipped with a spherical wrist that responds toeye movement and thoughts to help theoverworked design engineer get coffee while

    designing and drafting & typing of Reports It follows a straight line path from the cups

    point on a table to the workers mouth in second

  • 7/31/2019 Robotic Path Control Techniques

    7/52

    Lets look at a simple example:

  • 7/31/2019 Robotic Path Control Techniques

    8/52

    Lets look at a simple example: We see that the Bot must travel a space path

    of 16.45 which can be decomposed into amovement of 9.5 along each of the prismatic

    joints

    For accuracy lets divide each of the these

    joint paths into 100 segments

    From Physics: Vjointd/ t =(9.5/100)/(.5/100) = 19in/second (a

    reasonable speed!)

  • 7/31/2019 Robotic Path Control Techniques

    9/52

    Lets look at a simple example: During the 1st Step then:

    Joint 1 starts at 0 and moves to 0.095

    Moves there in 0.005 seconds How will it do it?

    Of course by Accelerating from a stop to 19 in/sec in0.005 seconds

    Compute AccreqrV/t Darn this says thatthe acceleration is3800in/sec2 this is 10G!!!!!

  • 7/31/2019 Robotic Path Control Techniques

    10/52

    Lets look at a simple example: So this will certainly be difficult to accomplish!

    (more likely it will not work)

    OSHA would be just as upset as when we had theworker holding on to the powered robot whatshould we do?

    I think our approach is too nave!

    If we examine the Pos vs. Time, Vel Vs. Time andAcc vs. Time plots we may see why:

  • 7/31/2019 Robotic Path Control Techniques

    11/52

    Look at a simple examples

    Trajectory Curves:

    0.005

    Time

    POS

    Vel

    Acc

    0.495 0.5

    19in/sec

    9.5"

    -10 g

    10 g

  • 7/31/2019 Robotic Path Control Techniques

    12/52

    This is Physically Impossible (or

    rather very energy intensive) Can we build a reasonable solution that

    keeps the acceleration to an achievable

    level? What this would mean is we wouldntinstantly in one time step go from

    stopped to full speed This can be achieved with a time

    polynomial model of motion

  • 7/31/2019 Robotic Path Control Techniques

    13/52

    Building a Path Polynomial

    Motion Set

    2 3

    0 1 2 3

    21 2 3

    2

    2 32

    2 3

    2 6

    q t a a t a t a t

    dqq t a a t a t dt

    d q

    q t a a t dt

    These are the trajectory

    equations for a joint (Position,

    Velocity and Acceleration)

  • 7/31/2019 Robotic Path Control Techniques

    14/52

    Solving the Path Polynomial is a matter of

    finding ais for SPECIFIC PATHS

    We would have boundary conditionsfor position and velocity at both ends of

    the path We would have the desired total time of

    travel

    Using these conditions we can solve fora0, a1, a2 and a3 to build a 3

    rd order pathpolynomial for the required motion

  • 7/31/2019 Robotic Path Control Techniques

    15/52

    Solving the Path Polynomial is a

    matter of finding ais for specific paths2 3

    0 0 1 0 2 0 3 0

    20 1 2 0 3 0

    2 3

    0 1 2 3

    2

    1 2 3

    2 3

    2 3

    f f f f

    f f f

    q a a t a t a t

    q a a t a t

    q a a t a t a t

    q a a t a t

    Polys holding at

    starting time and

    position

    Polys holding at

    ending time andposition

  • 7/31/2019 Robotic Path Control Techniques

    16/52

    Solving the Path Polynomial is amatter of finding a

    is for specific paths

    Writing these as Matrix Forms:

    2 3

    000 0 0

    2010 0

    2 3

    2

    2

    3

    10 1 2 3

    10 1 2 3

    ff f f

    ff f

    qat t tqat t

    qat t tqat t

  • 7/31/2019 Robotic Path Control Techniques

    17/52

    Solving the Path Polynomial is amatter of finding a

    is for specific paths

    If we set t0 = 0 (starting time is when westart counting motion!) then:

    00

    01

    2 3

    2

    2

    3

    1 0 0 0

    0 1 0 0

    10 1 2 3

    f f f f

    f f f

    qa

    qa

    t t t qat t qa

    By examination, a0 = q0 & a1 = q0(dot)

  • 7/31/2019 Robotic Path Control Techniques

    18/52

    Solving the Path Polynomial is a

    matter of finding ais for specific paths

    Completing the solution consists of forming

    relationships for: a2 & a3 Done by substitutinga0 &a1 values and solving the

    last two equation simultaneously:

    0 022

    0 0

    33

    3 2

    2

    f f f

    f

    f f f

    f

    q q t q qa

    t

    q q t q qa

    t

    Be Careful andnote the order ofthe positions andvelocities!

  • 7/31/2019 Robotic Path Control Techniques

    19/52

    Applying it to the Coffee Bot

    Start: X = 0; v = 0 @ time = 0

    End: X = 9.5; v = 0 @ time = .5 sec a0 = 0 ; a1 = 0

    a2 = (3 * 9.5)/(0.52) = 114

    a3 = (2 *(- 9.5))/(0.53) = -152

  • 7/31/2019 Robotic Path Control Techniques

    20/52

    Applying it to the Coffee Bot

    Here (specifically):

    2 3

    2

    0 0 114 ( 152)

    0 2(114) 3( 152)

    2(114) 6( 152)

    i i i i

    i i i

    i i

    q t t t

    q t t

    q t

  • 7/31/2019 Robotic Path Control Techniques

    21/52

    Applying it to the Coffee Bot

    Simplifying:

    2 3

    2

    114 152

    228 456228 912

    i i i

    i i i

    i i

    q t t

    q t tq t

  • 7/31/2019 Robotic Path Control Techniques

    22/52

    Applying it to the Coffee Bot:Position

    0

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5

    time (sec)

    Pos

    ofJoint(in)

    Position vs. Time

  • 7/31/2019 Robotic Path Control Techniques

    23/52

    Applying it to the Coffee Bot:Velocity

    0

    5

    10

    15

    20

    25

    30

    0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5

    Time (sec)

    Velocity(in/sec)

    Joint Velocity Vs. Time

  • 7/31/2019 Robotic Path Control Techniques

    24/52

    Applying it to the Coffee Bot:Acceleration

    -300

    -200

    -100

    0

    100

    200

    300

    0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5

    time (sec)

    Acceleration

    (in/sec^2)

    Acceleration Vs. Time

  • 7/31/2019 Robotic Path Control Techniques

    25/52

    Applying it to the Coffee Bot

    Using the Path Polynomial Approach:

    Max Velocity is: 28.5 in/sec (compares to 19 in/sec)

    Max Acceleration is: 228 in/sec2 (.6 g) compared to 10 g

    But, in this method, I require a 100% duty cyclemotor since throughout the entire path, the motor

    is accelerating (either with positive or negativeorientation)

    Can we make a path solution where we acceleratefor only part of the path? Turns out we can and

    we will call it LSPB!

  • 7/31/2019 Robotic Path Control Techniques

    26/52

    Studying the LSPB model

    In this model, we will carry forward with aparabolic model

    In this model, we will determine a time where wewill blend from startup until we reach a constantvelocity (and its greater than 1/100 of the totaltime!)

    Here we will see an acceleration followed by aperiod of coasting and then deceleration (oftencalled a trapezoidal velocity model)

  • 7/31/2019 Robotic Path Control Techniques

    27/52

    Model Building:

    We must define an acceleration constraint (minimum value)such that the acceleration guaranteed to be completedwithin half of the allocated time period of the travel:

    min 2 2

    2

    4

    2

    12

    ( )2

    2

    B A B A

    B A

    q q q qq

    tt

    Pos qt

    tt half time

    q qPos

    based on solving:

    at:

    we want: =

    This assures

    that there isno overlap forthe BLEND

    Regions

  • 7/31/2019 Robotic Path Control Techniques

    28/52

    Looking at the motion over thevarious regions:

    During Region 1 (while the joint is Accelerating)(time interval 0 to tblend [tb]) the Joint moves:

    q = (V/2)*tb tb is the acceleration time

    During the region of Constant Velocity the Jointmoves: q = V*(t 2tb)

    During Region 3 -- while the joint is deceleratingthe joint moves: q = (V/2)*tb

    Total travel distance is qB - qA

  • 7/31/2019 Robotic Path Control Techniques

    29/52

    Writing a motion equation:

    0

    22 2

    2

    :

    b b b bB A t t t t t t t

    B A b b b

    B A b b b

    b

    q q q q q

    V Vq q t V t t t

    q q Vt Vt Vt Vt Vt

    BUT

    V qt

  • 7/31/2019 Robotic Path Control Techniques

    30/52

    Substituting and Isolating theUnknown (blend time):

    2

    20

    B A b b

    b b B A

    q q qt t qt

    qt qt t q q

    reforming:

    This is a quadratic equation in tb

  • 7/31/2019 Robotic Path Control Techniques

    31/52

    Solving for tb:

    2

    2

    4

    2

    42 2

    A B

    b

    B A

    b

    qt qt q q qt

    q

    qt q q qttq

    Note:Acceleration issubject to aboveconstraint

  • 7/31/2019 Robotic Path Control Techniques

    32/52

    Applying it to the Coffee Bot

    Acceleration constraint:

    Blend time:

    2

    2

    2

    2

    4 9.5 0152 / sec 0.4

    .5

    ' ' 175 / sec

    .25 175 4 175 9.5.25

    2 175

    1006.25.25 .25 0.091

    350

    .25 0.091 .159sec

    b

    b

    q in g

    lets pick q in

    t

    t

  • 7/31/2019 Robotic Path Control Techniques

    33/52

    Applying it to the Coffee Bot

    tlinear=.5 2*0.159 = 0.181 s

    Linear Velocity:

    Positions: By tb, Joint moves: (27.89/2)*.159 = 2.222 in During linear velocity joint moves: 0.181*27.89 =

    5.055 in (thus the pos = 7.277)

    During deceleration joint travels 2.222 inAdding them gives full travel distance: 2.222 +

    5.055 + 2.222 in 9.5in

    175 .159 27.89lin bV q t in/sec

  • 7/31/2019 Robotic Path Control Techniques

    34/52

    Plotting the Path trajectory:

    Notice: theaccelerator isoff during the

    linear travel

    segment

    .159

    Time

    POS

    Vel

    27.89

    in/sec

    175

    in/s^2

    Acc

    .361 0.5

    9.5"

    -175

    in/s^2

    0 in/s^2

  • 7/31/2019 Robotic Path Control Techniques

    35/52

    The 2 Previous Path Control Methodsfocused on Start/Stopping Approaches

    What can we do if we desire to travel by G12 methods continuing along a path w/o stopping?

    Here we will focus on a method called dog-trackingafter the lead and follow techniques employed in dogracing

    Essentially we would have a situation where the path islaid out (as a series of Via Points) and the jointssmoothly maneuver through and between them

  • 7/31/2019 Robotic Path Control Techniques

    36/52

    Craigs Dog Tracking Method

  • 7/31/2019 Robotic Path Control Techniques

    37/52

    Craigs Dog Tracking Method

    Upon Examination of the motion, we find thatthere are three regimes in the motion

    These are: Start up regime Intermediate regimes Stopping regime

    Starting and Stopping are similar to LSPB inthe way they compute blend time andacceleration

    During an Intermediate regime we computeacceleration by comparing incoming andoutgoing velocities about each point

  • 7/31/2019 Robotic Path Control Techniques

    38/52

    Craigs Dog Tracking Method

    Starting regime Equations:

    1 2 1

    2 2 11 12 12

    1

    2 112

    12 1

    12 12 1 2

    2

    .5

    .5

    global

    d d

    d

    l d

    SGN

    t t t

    t t

    t t t t

    Start Acceleration

    Start BlendTime

    Linear Velocity 12

    Time @ linear Velocity

  • 7/31/2019 Robotic Path Control Techniques

    39/52

    Craigs Dog Tracking Method

    Stopping Equation:

    1

    2 1

    1 1

    1

    1

    1

    11 1

    2

    .5

    .5

    n n n global

    n n

    n d n n d n n

    n

    n nn n

    nd n n

    n nl n n d n n

    SGN

    t t t

    t t

    t t t t

    Stop acceleration

    Stop BlendTime

    L. Velocity to stop

    Time @ L. Velocity

  • 7/31/2019 Robotic Path Control Techniques

    40/52

    Craigs Dog Tracking Method

    Intermediate Equations:

    .5 .5

    k j

    jk

    djk

    k kl jk global

    kl jk

    k

    k

    ljk djk j k

    t

    SGN

    t

    t t t t

    Linear Velocity

    Acceleration

    Blend time

    Time @ L. Velocity

  • 7/31/2019 Robotic Path Control Techniques

    41/52

    Upon examination of the set of equation onthe previous 3 slides several point should be

    noted: Start and Stop are essentially the same but very

    important differencesmust be noted

    One cant complete any of the regimes without

    looking ahead actually looking ahead to the 2ndpoint beyond to see if a joint is stopping or continuing

    Start/Stop require position/time relationships

    Intermediate regimes require velocity/time

    relationships

    Craigs Dog Tracking Method

  • 7/31/2019 Robotic Path Control Techniques

    42/52

    Craigs Dog Tracking Method

    Step 1: Calculate Global usableacceleration (magnitude) constraintbased on LSPB model applied

    Pairwise (12; 23; etc)

    Step 2: Focus on Start and StopSegments

    Step 3: Complete the table ofaccelerations, blend times, linearvelocity and time at linear velocity

    2

    4i j

    dij

    qq

    t

  • 7/31/2019 Robotic Path Control Techniques

    43/52

    Lets Expand on Dr. Ds Coffee

    Drinker Bot:PointName

    Position(inch)

    DeltaPosition

    (inch)

    ArrivalTime

    (sec)

    DeltaTime

    (sec)A 0 0 --- ----

    B 9.5 9.5 0.5 .5

    C 11 1.5 3.5 3

    D 9.5 -1.5 6.5 3

    E 0 -9.5 7.5 1

  • 7/31/2019 Robotic Path Control Techniques

    44/52

    Lets Expand on Dr. Ds CoffeeDrinker Bot:

    Step 1: Global Acc. Constraint

    2

    2

    2

    2

    2

    2

    2

    2

    4 9.5152 / s

    .5

    4 1.50.67 /

    3

    4 1.5.67 / 3

    4 9.538 /

    1

    AB

    BC

    CD

    DE

    q in

    q in s

    q in s

    q in s

    This is largestshould work globally but lets make sureit doesnt miss so

    choose 200ips2

    cause its easier to

    calculate and is onlyabout .6g

  • 7/31/2019 Robotic Path Control Techniques

    45/52

    Lets Expand on Dr. Ds CoffeeDrinker Bot:

    Next we focus on the start & stop equations:

    Starting

    Stopping

    2

    2

    (9.5 0) 200 200

    2 9.5.5 .5 0.106200

    9.5 21.3.5 .5 .106

    A

    A

    AB

    q SGN ips

    t s

    q ips

    2

    2

    9.5 0 200 200

    2 0 9.51 1 0.049

    200

    0 9.59.74

    1 .5 0.049

    E

    E

    DE

    q SGN ips

    t s

    q ips

    NOTE:cant

    compute tlijyet we

    lack thedata!

  • 7/31/2019 Robotic Path Control Techniques

    46/52

    Lets Expand on Dr. Ds CoffeeDrinker Bot:

    Considering Intermediate BC:

    2

    1.50.5

    3

    200 200

    .5 21.25.103

    200

    .5 .5 .106 .5 .103 .342

    C B

    BC dBC

    B BC AB

    BC AB

    BB

    lAB dAB A B

    q qq ips

    t

    q SGN q q ips

    q qt s

    q

    t t t t s

    Now to finish the 1st segment:

  • 7/31/2019 Robotic Path Control Techniques

    47/52

    Lets Expand on Dr. Ds CoffeeDrinker Bot:

    On to CD Segment

    2

    0.5

    200 200

    1 .005200

    .5 .5 3 .5(.103) .5(.005) 2.946

    D C

    CD dCD

    C CD BC

    CD BC

    C C

    lBC dBC B C

    q qq ips

    t

    q SGN q q ips

    q qt s

    q

    t t t t s

    back to finish B--C Segment

  • 7/31/2019 Robotic Path Control Techniques

    48/52

    Lets Expand on Dr. Ds CoffeeDrinker Bot:

    Now for Segment DE:

    !

    2

    9.74

    200 9.74 ( .5) 200 200

    0.049

    3 .5 .5 2.974

    1 .5 0.928

    earlier

    DE

    D DE CD

    DE CDD

    D

    lCD C D

    lDE D E

    ipsq E

    q SGN q q SGN ips

    q qt s

    q

    t t t s

    t t t s

    Completing Seg. C--D

    Seg D--E

    (is stop point!)

  • 7/31/2019 Robotic Path Control Techniques

    49/52

    Summarizing

    Pt POST.Time POS time

    Ti(blend) Acc L. Vel

    [email protected]

    A 0 0 ----- ---- .106 +20021.3 .342

    B 9.5 .5 9.5 .5 .103 -200.5 2.946

    C 11 3.5 1.5 3 .005 -200-.5 2.974

    D 9.5 6.5 -1.5 3 .046 -200-9.74 .928

    E 0 7.5 -9.5 1 .049 +200

  • 7/31/2019 Robotic Path Control Techniques

    50/52

    A Final Thought on Dog-Tracking:

    But if we must travel

    over a certain point,we can definePseudo-Via pointsthat flank the desiredtarget and force thearm to pass thepseudos and drive

    right over the originaldesired target point

  • 7/31/2019 Robotic Path Control Techniques

    51/52

    Looking at Velocity Control

    AchievablePath

    DesiredPath

  • 7/31/2019 Robotic Path Control Techniques

    52/52

    With this Velocity Control

    The acceleration is set and the new velocity for anupcoming segment is inserted at the appropriatetime (place)

    Over the segment, the arm (joints) lags the desiredpath

    We extend the next path velocity curve to intersectthe actual achievable path (to a point that is earlier

    in time than when we would have expected tochange) this will mean that the joint can catch upto the desired plan for the travel as it blends to thenew velocity