Vous êtes sur la page 1sur 20

Chapter 4

Trajectory Control

@VLC-2015

4.1 Point-to-Point Control


Point to point motion is applied for some kinds of robots such
as: 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:

We have to determine the rule of


change of the angular q between
the initial position and the
finally position in the time
interval 0, .

Assuming that : inertial moment of motor


2

@VLC-2015

: torque of motor

4.1 Point-to-Point Control


Note that the problem has plenty of solutions. Therefore, we
include an optimal criterion: the least consuming energy
Mathematic description:
=

where

subjec to:

TM 2
0

(4.1)

The general solution has the following form:


= 2 + +

(4.2)

Then the motion trajectory will be the third order form:


= 3 3 + 2 2 + 1 + 0
3

@VLC-2015

(4.3)

4.1 Point-to-Point Control


The velocity will follow the second order form:
= 33 2 + 22 + 1

(4.4)

And the acceleration changes w.r.t. the first order rule


= 63 + 22

(4.5)

We need to determine 4 coefficients: 0 , 1 , 2 , 3 . We have


the following equations:
0 =

1 =
3 3 + 2 2 + 1 + 0 =
33 2 + 22 + 1 =
4

@VLC-2015

(4.6)

4.1 Point-to-Point Control


For example: = 0, = , = 1 ; the initial and final
velocity = = 0
From the above equations, we find the solutions:
0 = 1 = 0
2 = 3, 3 = 2

The velocity gets the its maximum value:


= 3/2, when = 1/2

And the acceleration gets its the maximum value:


= 6, when = 0 = 1

The disadvantage of this rule is the maximum accelerations at


the initial and final point.
@VLC-2015

4.1 Point-to-Point Control

/ 0

3/2

3/2

/ 2
6

6 @VLC-2015

4.1 Point-to-Point Control


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 = /2

(4.7)

In order to guarantee the trajectory is continuous, the velocities


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

=

(4.8)

where, is the position at the time when the motor


accelerates at (/ 2 )
7 @VLC-2015

4.1 Point-to-Point Control


We have:
1
2

(4.9)

= + 2

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


(4.10)

2 + = 0

Given , , , , finding /2, we have:


1 2 4( )
=
2 2

where,

It is obvious that if =

8 @VLC-2015

(4.11)

(4.12)

2
4
2

, = =

(4.13)

4.1 Point-to-Point Control


Therefore, given , and , from Eq. (4.12) we calculate
and choose , then calculate from Eq. (4.11). Finally, the
trajectory is determined by a piecewise function
1
+ 2
2
=

1

2

(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).
9 @VLC-2015

4.2 Application for Step and DC motors


Step motor
The motor step angle: ; position: ; and speed are given by
2
=
()

= ()

=
()

where is the number of pulses

(4.15)

is the delay time


To rotate a stepper motor at a constant speed, pulses must be
generated at a steady rate
10 @VLC-2015

4.2 Application for Step and DC motors


Linear speed ramp
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.
The time delay between the stepper motor pulses controls
the speed. These time delays must be calculated in order to
make the speed of the stepper motor follow the speed ramp as
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.
11 @VLC-2015

4.2 Application for Step and DC motors

Assuming that the time


delay is generated by a
timer with a frequency
1
(Hz), = (s)

We have:

t1

t2
t3 t4
2

0 = 0
1 = 1

12 @VLC-2015

2 = 2

(4.16)

4.2 Application for Step and DC motors


The position at the time is given by equation:

1 2
= =
2
0
Assuming that is corresponding to the nth pulse, then
1 2
= =
2
=

(4.17)

And the time delay between two steps is:


13 @VLC-2015

= +1 =

2
( + 1 )

(4.18)

4.2 Application for Step and DC motors


Finally the expression for the counter delay is found:
1 2
=
( + 1 )

(4.19)

When = 0:

1 2
0 =

(4.20)

= 0 ( + 1 )
In order to reduce the burden of calculations, we use the Taylor
series approximation
14 @VLC-2015

4.2 Application for Step and DC motors

0 ( + 1 )

4 1
=

0 ( 1) 4 + 1

Finally,
21
= 1
4 + 1

(4.21)

This calculation is much faster than the double square root, but
introduces an error at n =1. A way to compensate for this error
is by multiplying 0 with 0,676.

15 @VLC-2015

4.2 Application for Step and DC motors

16

DC servo motor
A 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 a
constant 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.
@VLC-2015

4.2 Application for Step and DC motors


velocity

velocity
limit
Slope =
Accel.
limit

short
move

long
move
time

The SetMove subroutine is invoked once at the beginning of


a move to calculate the trajectory limits.

The DoMove routine is then invoked at every sample time


to calculate new desired velocity and position values as
follows (from Eq. (4.14))
17

@VLC-2015

4.2 Application for Step and DC motors


= 1 + .

(4.22)
1
= 1 + 1 + . 2
2
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


Trajectory
Generator

Kp

PI

DC
Velocity feedback

18

Position feedback
@VLC-2015

4.3 Continuous Path Motion


In many applications, the servo systems (Robots, CNC) have
to be controlled in a predefined continuous path.

2
1

3 3

1 =
1 = 0

19

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:
@VLC-2015

4.3 Continuous Path Motion


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 path
points.

For example, in the case of the velocities are predetermined


Assuming that the trajectory has N path points, then the third
order polynomial is adopted to interpolate two adjacent points
( , +1 ) . Each polynomial has to satisfy the following
conditions:
=

+1 = +1
=
20

@VLC-2015

+1 = +1

(4.23)

Vous aimerez peut-être aussi