Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Jack H.Integration and automation of manufacturing systems.2001.pdf
Скачиваний:
86
Добавлен:
23.08.2013
Размер:
3.84 Mб
Скачать

page 395

θ ,ω α,

CG, M, J

• If multiple joints move at the same time, the model becomes non-linear, in this case there are two approaches taken,

1.Develop a full non-linear controller (can be very complicated).

2.Develop linear approximations of the model/control system in the middle of the normal workspace.

13.2 PATH PLANNING

• Basic - “While moving the robot arm from point A to B, or along a continuous path, the

choices are infinite, with significant differences between methods used.”

13.2.1 Slew Motion

The simplest form of motion. As the robot moves from point A to point B, each axis of the manipulator travels as quickly as possible from its initial position to its final position. All axis begin moving at the same time, but each axis ends it motion in a length of time that is proportional to the product of its distance moved and its top speed (allowing for acceleration and deceleration)

Note: slew motion usually results in unnecessary wear on the joints and often leads to unan-

page 396

ticipated results in the path taken by the manipulator.

• Example - A three axis manipulator with revolute joints starts with joint angles (40, 80, - 40)degrees, and must move to (120, 0, 0)degrees. Assume that the joints have maximum absolute accelerations/decelerations of (50, 100, 150) degrees/sec/sec, and the maximum velocities of (20, 40, 50) degrees/sec. Using slew motion, what is the travel time for each joint?

Joint angle (degrees)

 

 

 

 

 

180

 

 

 

 

 

90

 

 

 

 

 

 

 

 

 

 

time(sec)

θ

3

θ

2

 

 

-90

 

θ

1

 

 

 

Joint velocity (degrees/sec)

ω

max

 

α

max

 

tacc

tmax

tdec

 

page 397

The area under the velocity curve is the distance (angle in this case) travelled. First we can determine the distance covered during acceleration, and deceleration and the time during acceleration, and deceleration.

tacc =

tdec =

ω

max

=

20

40

 

50

( 0.4, 0.4, 0.333) sec.

 

-----------

-----, --------,

-------- =

 

 

 

α

max

 

50 100

 

150

 

 

 

 

θ acc.

= θ dec.

=

tacc

ω

max.vel.

=

 

0.4( 20)

0.4( 40)

0.333( 50)

( 4, 8, 8.33) deg.

---------------------------

 

------------------2

, ------------------,

------------------------ =

 

 

 

 

 

2

 

2

2

 

 

The next step is to examine the moves specified,

 

 

 

θ move

= θ end θ start

= ( 120 – 40, 0 – 80, 0 – ( –40) ) = ( 80, –80, 40) deg.

Remove the angles covered during accel./deccel., and find the travel time at maximum velocity.

 

 

 

θ move

– 2θ acc

 

80 – 2( 4)

80 – 2( 8)

40 – 2( 8.333)

 

 

 

tmax

=

 

---------------------------------- =

 

----------------------

, ----------------------, ---------------------------------

 

 

 

ω max

20

40

50

 

tmax

=

( 3.6, 1.6, 0.46668) sec.

 

Note: below zero the speeds will

 

never reach maximum velocity

 

 

 

 

 

 

 

 

ttotal

=

tacc + tmax + tdec

=

( 4.4, 2.4, 1.13) s

before starting to decelerate.

13.2.1.1 - Joint Interpolated Motion

Similar to slew motion, except all joints start, and stop at the same time. In the last example for slew motion, all of the joints would have moved until all stopping simultaneously at 4.4 seconds.

This method only demands needed speeds to accomplish movements in least times.

13.2.1.2 - Straight-line motion

page 398

In this method the tool of the robot travels in a straight line between the start and stop points. This can be difficult, and lead to rather erratic motions when the boundaries of the workspace are approached.

NOTE: straight-line paths are the only paths that will try to move the tool straight through space, all others will move the tool in a curved path.

The basic method is,

1.Develop a set of points from the start and stop points that minimize acceleration.

2.Do the inverse kinematics to find the joint angles of the robot at the specified points.

Consider the example below,

page 399

Given,

 

 

 

 

 

 

P0

 

= ( 5, 5, 5) in.

P1 = ( –5, –5, 5)

 

d

 

 

d

 

t0 = 0

t1 = 2

 

= ( 0, 0, 0)

 

= ( 0, 0, 0)

 

----P

0

----P

1

 

dt

 

dt

 

 

Model the path with a function that allows acceleration/deceleration, in this case

a third order polynomial will be used. The equation will be parameterized for simplicity (i.e., s = [0,1], where s=0 is the path start, and s=1 is the path end).

P( t) = P0 + ( P1 P0) s( t)

 

 

 

 

 

s( t0) = 0

 

s( t1) = 1

d

 

d

 

 

----s( t0) = 0

----s( t1) = 0

 

 

 

 

 

dt

 

dt

 

s( t) = At

3

+ Bt

2

+ Ct + D

 

d

 

2

+ 2Bt + C

 

 

 

----s( t) = 3At

 

dt

Next, numerical values will be entered to find equation values

s( 0)

= A( 0) 3 + B( 0) 2 + C( 0) + D = 0

s( 2)

= A( 2) 3 + B( 2) 2 + C( 2) + D = 1

d

 

 

 

 

 

 

----s( 0) = 3A( 0) + 2B( 0) + C = 0

 

dt

 

 

 

 

 

 

d

 

=

3A( 2) + 2B( 2) + C =

0

 

----s( 2)

 

 

dt

 

 

 

 

 

 

 

 

 

 

 

 

 

8A + 4

3

 

A =

1

-- A = 1

--

 

 

 

2

 

 

2

This can now be put in the final form,

P( t) = P

 

+ ( P

 

 

t3

3

2

 

 

P ) ---

– --t

 

 

0

 

1

0

2

4

 

 

 

D = 0

 

 

 

 

 

 

 

 

8A + 4B = 1

 

 

 

 

 

 

 

C = 0

 

 

 

 

 

 

 

 

 

3

 

 

 

-- A = B

 

 

 

2

 

 

 

 

 

 

B =

 

3

 

 

4--