servo drive systems_chapter 4_part1

Upload: to-ba-tho

Post on 19-Feb-2018

231 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    1/20

    Trajectory Control

    Chapter 4

    @VLC-20151

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    2/20

    4.1 Point-to-Point Control

    2

    Point to point motion is applied for some kinds of robots suchas: point welding, packaging, In this type of motion, we

    only take into account the position of the beginning, ending

    points and time of motion.

    Problem:

    @VLC-2015

    0

    We have to determine the rule of

    change of the angular q between

    the initial position

    and the

    finally position in the timeinterval 0, .Assuming that: inertial moment of motor

    : torque of motor

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    3/20

    4.1 Point-to-Point Control

    3

    Note that the problem has plenty of solutions. Therefore, weinclude an optimal criterion: the least consuming energy

    Mathematic description:

    @VLC-2015

    =

    where = subjec to: 2MT

    The general solution has the following form:

    = Then the motion trajectory will be the third order form:

    =

    (4.1)

    (4.2)

    (4.3)

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    4/20

    4.1 Point-to-Point Control

    4 @VLC-2015

    We need to determine 4 coefficients: , , , . We havethe following equations:

    The velocity will follow the second order form:

    = 3 2 And the acceleration changes w.r.t. the first order rule

    = 6 2

    =

    = = 3 2 =

    (4.4)

    (4.5)

    (4.6)

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    5/20

    4.1 Point-to-Point Control

    5 @VLC-2015

    The velocity gets the its maximum value:

    For example: = 0 , = , = 1 ; the initial and finalvelocity= = 0From the above equations, we find the solutions:

    = = 0

    =3/2, when

    = 1 / 2

    = 3 , =2

    And the acceleration gets its the maximum value:

    = 6, when = 0 = 1The disadvantage of this rule is the maximum accelerations at

    the initial and final point.

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    6/20

    4.1 Point-to-Point Control

    6 @VLC-2015

    0

    3

    0 1

    1

    3/2/

    6

    6

    /

    0

    3/2

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    7/20

    4.1 Point-to-Point Control

    7 @VLC-2015

    The famous trajectory that is usually used in most industrial

    controllers is Blended Polynomial with the trapezoidal

    velocity.

    Assuming that

    = = 0, the time of acceleration and

    deceleration is equal. We have:

    = ()/2, at = /2In order to guarantee the trajectory is continuous, the velocities

    at the transition points have to be smooth. That means:

    = where, is the position at the time when the motoraccelerates at

    (/

    )

    (4.7)

    (4.8)

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    8/20

    4.1 Point-to-Point Control

    8 @VLC-2015

    We have:

    = From Eq. (4.8) & (4.9), we got:

    = 2 12

    4( )

    where,

    (4.9)

    = 0 (4.10)Given , , , , finding /2, we have:

    (4.11)

    (4.12)

    It is obvious that if

    =

    ,

    = =

    (4.13)

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    9/20

    4.1 Point-to-Point Control

    9 @VLC-2015

    Therefore, given , and , from Eq. (4.12) we calculateand choose , then calculate from Eq. (4.11). Finally, thetrajectory is determined by a piecewise function

    =

    12 0 2

    12 (4.14)

    Example: Determine the Blended Polynomial trajectory in

    order to control the position of the motor in 20 rounds within

    2s. The rated speed is 2000 (RPM).

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    10/20

    4.2 Application for Step and DC motors

    10 @VLC-2015

    The motor step angle: ; position: ; and speed are given by Step motor

    To rotate a stepper motor at a constant speed, pulses must be

    generated at a steady rate

    = 2

    ()

    = () = ()

    where

    is the number of pulses

    is the delay time

    (4.15)

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    11/20

    4.2 Application for Step and DC motors

    11 @VLC-2015

    To start and stop the stepper motor in a smooth way, control of

    the acceleration and deceleration is needed. Figure in previous

    section shows the relation between acceleration, speed and

    position.

    Linear speed ramp

    The time delay between the stepper motor pulses controlsthe speed. These time delays must be calculated in order to

    make the speed of the stepper motor follow the speed rampas

    closely as possible.

    Discrete steps control the stepper motor motion, and the

    resolution of the time delay between these steps is given by

    the frequency of the timer.

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    12/20

    4.2 Application for Step and DC motors

    12 @VLC-2015

    Assuming that the time

    delay is generated by a

    timer with a frequency

    (Hz), = (s)

    0 t t t t t

    We have: = =

    =

    (4.16)

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    13/20

    4.2 Application for Step and DC motors

    13 @VLC-2015

    The position at the time is given by equation:

    (4.17)

    =

    = 12

    Assuming that is corresponding to the nthpulse, then = 12 =

    = 2 And the time delay between two steps is:

    = + =2 ( 1 )

    (4.18)

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    14/20

    4.2 Application for Step and DC motors

    14 @VLC-2015

    Finally the expression for the counter delay is found:

    (4.19)

    When = 0 :

    = 12 ( 1 )

    (4.20) =1

    2

    = ( 1 )In order to reduce the burden of calculations, we use the Taylor

    series approximation

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    15/20

    4.2 Application for Step and DC motors

    15 @VLC-2015

    (4.21)Finally,

    =

    ( 1 )( 1)

    4 14 1

    = 24 1

    This calculation is much faster than the double square root, but

    introduces an error at n =1. A way to compensate for this erroris by multiplying with 0,676.

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    16/20

    4.2 Application for Step and DC motors

    16 @VLC-2015

    DC servo motorA trajectory generation algorithm is essential for optimum

    motion control. A linear piecewise velocity trajectory is

    implemented in this application.

    For a position move, the velocity is incremented by aconstant acceleration value until a specified maximum

    velocity is reached.

    The maximum velocity is maintained for a required amount

    of time and then decremented by the same acceleration(deceleration) value until zero velocity is attained.

    The velocity trajectory is therefore trapezoidal for a long

    move and triangular for a short move where maximum

    velocity was not reached.

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    17/20

    4.2 Application for Step and DC motors

    17 @VLC-2015

    The SetMovesubroutine is invoked once at the beginning of

    a move to calculate the trajectory limits.

    velocity

    limit

    shortmove

    long

    moveSlope =

    Accel.

    limit

    velocity

    time

    The DoMoveroutine is then invoked at every sample time

    to calculate new desiredvelocity and position values as

    follows (from Eq. (4.14))

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    18/20

    4.2 Application for Step and DC motors

    18 @VLC-2015

    = . = 12 .

    In position mode, the actual shape of the velocity profile

    depends on the values of velocity, acceleration, and the size of

    the movement.

    The block diagram of position controller

    Kp PI DC 1TrajectoryGenerator

    Position feedback

    Velocity feedback

    (4.22)

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    19/20

    4.3 Continuous Path Motion

    19 @VLC-2015

    In many applications, the servo systems (Robots, CNC) have

    to be controlled in a predefined continuous path.

    =

    =

    = 0 =

    The problem is to determine the trajectory that goes through N

    path points with the constraint conditions. There are three

    cases that usually use in trajectory generator:

  • 7/23/2019 Servo Drive Systems_Chapter 4_part1

    20/20

    4.3 Continuous Path Motion

    20 @VLC-2015

    The velocities, , at the path points are predetermined The velocities, , at the path points are calculated by a

    specific criterion.

    Guarantee the continuity of acceleration, , at the pathpoints.

    For example, in the case of the velocities are predetermined

    Assuming that the trajectory has N path points, then the third

    order polynomialis adopted to interpolate two adjacent points

    (, +) . Each polynomial has to satisfy the followingconditions: = + = + = + = +

    (4.23)