Sunteți pe pagina 1din 12

Computers in Industry 18 (1992) 41-52

Elsevier

41

Applications

Circular interpolators for numerical cont.rol.


A comparison of the modified DDA
techniques and an LSI interpolator
F.S. Lim, Y.S. W o n g a n d M. R a h m a n
Department of Mechanical and Production Engineering, National Uaiversity of Singapore, 10 Kent Ridge Crescent, Singapore 051l

Received May 17, 1991


Accepted July 22, 1991
In numerical control of machine tools, the control of the tool
path to follow a specific curve is accomplished by interpolation. A well-known interpolation technique is based on the
functional operation of the digital differential analyzer(DDA)
integrator. This method of NC path control can be implemented on-line using digital hardware or software.This paper
discusses modificationsof the DDA interpolation technique
for improved accuracy and computation speed, whilst retaining the suitabilityof the technique for integer computation or
implementation using digital hardware. Results obtained from
the best modified DDA technique are compared with those
obtained from a widely-reportedLSI hardware interpolator.
Keywords: Computer numerical control, Circular interpola-

tors, Softwarealgorithms, Digital diffelential analyser method.

1. Introduction
In numerical control (NC) of machine tools,
the desired relative motions between the tool and
the workpiece are produced by interpolations.
Given the feed rates, types of contours and coordinates between end points, the interpolator
computes required machine-axis motions and
generates the commands to the respective machine-axis controllers such that the resultant tool
paths relative to the workpiece follow closely the
specified contours at the required feed rates.
As most tool paths consists of linear and circular segments, a contouring NC controller must be

capable of linear and circular interpolations. Several interpolation techniques have been developed [1-3] to approximate these two commonly
used and essential types of interpolations. The
most notable ones are based on the digital differential analyzer (DDA) integration approach. Besides its suitability for integer computation and
ease of implementation using digital hardware
[2], the advantage of this technique is the uniformity of the feed rate along the circular path as
compared to the other methods [4,5]. However as
most published results [1,5,6] have shown, the
interpolated path computed using the DDA
method tends to spiral out of the desired circular
path. Such increasing deviation from the intended path is not encountered in the case of the
D D A linear interpolation [5]. In this paper, modifications of the conventional D D A technique for
circular interpolations to improve accuracy and
computation speed are described. Results obtained from the best technique are compared
with an LSI interpolator which is reported in
several publications [7-9].

2. Numerical control and interpolators


The basic requirements of an interpolator are
[1]:
(a) The approximate tool path generated by the

0166-3615/92/$05.00 1992 - Elsevier Science Publishers B.V. All rights reserved

42

Applications

interpolator should follow the specified contour within an acceptable tolerance.


(b) There should not be any accumulation of
errors between end points.
(c) The tool speed should not depend on the
contour, and should maintain the commanded feed rate within limits.
(d) The interpolator must be capable of linear
and circular interpolations.
The commands from the interpolator may bc
transmitted to the control loop of each machine
axis as a sequence of reference pulses (Reference
Pulse System) or as a reference binary word
(Sampled-Data System) [2]. In the reference pulse
system, each reference pulse causes one basic
length unit (BLU) of motion, which is the smallF.S. Lim obtained his MEng from the
National University of Singapore in
1991 for the design and development
of a microcomputer-controlled multiaxis NC system. He w~ a control
engineer with the Mir,stry of Defence prior to his MEng programme.
His design experience includes automation systems, robotic cells and
motion control systems. He is currently a lecturer in Mechatronics at
Temasek Polytechnic. His research
interests are control of mecbatronics
systems, intelligent automation systems, robotics, vision systems and FMS.
Y.S. Wong received his BEng (Hens.)
from the National University of Singapore (NUS), whereafter he joined
the Singapore Institute of Standards
and Industrial Research (SISIR) as a
Mecl'.anical Design and Development
(MDD) Engineer. Subsequently, he
joined NUS and worked on an MEng
programme involving the development of a robot.operated manufacturing cell. He then went to the University of Manchester Institute of Science and Technology (UMIST) to
pursue a PhD research on the EDM process using microcomputer-based instrumentation and control systems. Upon completion of his PhD programme, he returned to continue his
career in NUS. His research interests are CNC design, special
applications of CNC systems and programming, industrial
automation using PLCs, modular pneumatic and hydraulic
control systems, EDM monitoring, control and process characteristics, CAD/CAM, FMS and AI developments and applications.
M. Rahman obtained his DrEng degree from Tokyo Institute of Technology in 1979 in the area of machine
tools after which he joined Makino
Milling Machine Co. in Japan where
he worked for about four years. He
joined the National Universityof Singapore in 1982 and is currently a Senior Lecturer in the Department of
Mechanical and Production Engineering. His current research interests include metal cutting, machire tools and
computer-aided manufacturing.

Computers in Industry
est axial motion that an NC machine tool is
capable of attaining, The incremental axial motion is determined by the total number of reference pulses delivered. The axial velocity is proportional to the reference pulse frequency. In the
sampled-data system, the contour is approximated by a series of linear segments. For each
segment, the interpolator computes a reference
word proportional to the local axial velocity to be
generated. The ratio of the reference words of
two orthogonal axes represent the inclination of
the linear segment in the plane of the two axes.
Reference pulse interpolators are simpler to
implement and may be used directly to drive
open-loop systems [3]. However, the reference
pulse interpolator has a maximum attainable feed
rate which is dependent on the iteration rate of
the interpolation algorithm. The accuracy of the
contour generated by a reference pulse interpolator is independent of the feed rate. In the case of
the sampled-data system, the maximum feed rate
is limited by the sampling rate and the accuracy
of the contour to be produced. In general, the
feed rates and contour accuracy produced by
reference pulse interpolators are adequate for
most machining operations [4]. The D D A interpolator is basically a reference pulse interpolator.
Interpolators may be implemented as software
interpolators in microprocessors or hardware interpolators using programmable digital devices
[1]. Software interpolators are implemented
wholly in software on a dedicated microprocessor
so as to attain high interpolation rates. Hardware
interpolators are built from special-purpose programmable large-scale-integration (LSI) or verylarge-scale-integration (VLSI) devices. The dedicated microprocessor or programmable LSI with
the interpolation capability is typically interfaced
to the main processor of the C N C system in a
master-slave configuration. In the following, results obtained from the circular interpolation
function of an LSI interpolator are also presented and compared with those obtained using
software interpolators based on modifications of
the D D A technique.

3. Software interpolator for circular interpolation

The main reference pulse software techniques


for circular interpolation are the Search Step

Computers in Industry

F.S. Lim et al. / Orcular interpolators

method [5] (or Stairs Approximation method [4]),


DDA method [1,4,5], and Direct Search method
[4] (or non-parametric method [10]). It has been
shown that the appropriate reference pulse interpolation technique for C N C systems is the DDA
method [5]. Besides its suitability for integer computation and ease of implementation using digital
hardware, the advantage of this technique is the
uniformity of feed rate along the circular path as
compared with the other methods [4,5]. Uniformity of feed rate along the contour path is important in numerical control machining. For example, variations in the feed rate affect the surface
finish in milled and turned parts, and the contour
accuracy of laser-machined parts [2].
However, results published in the literature
[1,5,6] have shown that the DDA method for
circular interpolation causes a spiraling outwards
of the circle with an error greater than _+1 BLU.
No problems were encountered for linear interpolation. A description of the linear approach
may be found in [1,2,5].
This paper presents the conventional DDA
method and introduces alternative DDA methods
with higher accuracy and interpolation rates. The
DDA methods to be described are:
(a) first-order simultaneous DDA method or
conventional DDA method;
(b) second-order simultaneous DDA method;
(c) first-order sequential DDA method;
(d) second-order sequential DDA method.
The algorithms presented may be implemented as
software interpolators or hardware interpolators
using hardware digital components.

43

"'Xi,,~Xi+l,Vi+l I
Yi I

/'

};;

I
R

Fig. 1. Clockwise interpolation path.

Taking Taylor's approximation of eqns. (2a) and


(2b) up to the first-order term,
Xi+ 1 = R sin A + (R cos A) AA

= X, + Y/AA,

(3a)

Y/+ i = R cos A - R(sin A) AA


= E - X , AA.

(3b)

Most interpolation algorithms are implemented using integer arithmetics to reduce computation time. Furthermore, for NC machines,
the output (Xi+ 1, Yi+ i) at each iteration step can
only take discrete values which are multiples of
the resolution step of the NC machine. Hence,
the equations used for the circular interpolation
are

x,+,--,V, +

AA,

Y~=I = Y/-Xi A A ,

(4a)

Ob)

and the output to each axis is,


3.1. Simultaneous DDA methods

Xo,i+ I =

Consider the clockwise circular interpolation


of a quadrant (Fig. 1). Let ( X i, Y~) be the coordinates of a point on the circle of radius R at the
ith step. Then
X i = R sin A,

(la)

Y/= R cos A.

(lb)

For small values of AA,

the next point

(Xi+l, Y/+l) is given by


Xi +l = R sin(A + AA),

(2a)

Yi+l = R cos(A + A A ) .

(2b)

Xj+l,

Yo.i+l = Y//+I,

(4c)
(4d)

where ,~i is the integer smaller or equal to X i,


and ~ is the integer greater or equal to Y/ (for
this case).
The DDA method simulates the numerical
integration process by using two pairs of integer
registers; one pair computes eqn. (4a) and the
other, eqn. (4b). For eqn. (4a), one register stores
the current value of ,~i and the other stores the
value EY/AA. Since EY/AA is a multiple of
AA, the integration may be scaled such that
successive integer values of ~ are added. For
example if AA = 1/10, then the E ~ AA register

44

Applications

Computers in Industry

will add integer values of ~ until the value is


greater or equal to 10. The register storing Xi is
incremented whenever the value in the register
EY/AA is greater or equal to I/_AA. Each time
this happens, the remainder (EY/AA-1/AA) is
stored in the register and the addition process is
repeated. Based on this method of integer computation, simple arithmetic operations and hence,
basic microprocessors may be used to implement
the interpolator.
The algorithm represented by eqns. (4) will be
referred to as the first-order simultaneous DDA
algorithm. This algorithm is used in most DDA
circular interpolation methods [1,2,5,11,12]. The
interpolation of the arc stops once Y/reaches the
end point of the arc.
A closely related algorithm, described herein
as the second-order simultaneous DDA algorithm, may be derived from the Taylor approximation of eqn. (2) up to the second-order term:

Xi+ l = R sin A + R cos A AA


-0.5R
=x,

0.SX,(AA)

(Sa)

- 0 . 5 R cos A (AA) 2
-

0.5 (AA) 2,

(7a)

Xo,i+ I--~Xi+ I,

(Tb)

Y/+, = Y / - 2 i + l AA,

(7c)

Yoa+, = Y/+,-

(7d)

Hence,

2.

(7e)

Second-order sequential DDA method;

Xi+l=Xi + Yi A A - O . 5 X i ( A A ) 2,

(8a)

Xo,i+ 1 = Xi+ 1,

(8b)

Y/+I=Y/-Xi+I AA- 0.5~(AA) 2,

(8c)

Yo,i+, =- ~'+,.

(8d)

v,-x,

Y,'+I = R cos A - R sin A AA

= r', - X , a a

Xi+l = Xi + ~ A A

Hence,

sin A ( A A ) 2
A -

modified, whereby Xi+ 1 and Y/+I are computed


"sequentially" as in:
First-order sequential DDA method;

(5b)

AA-

1.SP,(AA) 2.

(8e)

Sizer [6] has shown that the sequential DDA


methods give higher accuracy for sine and cosine
functions than the simultaneous DDA methods,
but has not demonstrated their use in circular
interpolations.

and is implemented using the following computation,

3.3. Comparison of DDA methods

X,+, -- 2, + Y,,' AA -O.52i( AA) 2,

(6a)

3.3.1. Behavior of maximum radial error with re.


spect to AA

Y/+,= ~ - X i AA - 0.5~(AA) 2.

(6b)

The output to each axis is,

Xo,i+, =X,+l,

(6c)

Yo,, +, = ~ +,,

(6d)

where X i is the integer smaller or equal to X i,


and Y~ is the integer greater or equal to Y~. This
algorithm is similar to the one proposed by
Bergren [13].

3.2. Sequential DDA method


In the simultaneous DDA method, Xi+ 1 and
Y~, z are computed "simultaneously" from X i and
Y~, the preceding X- and Y-values. This may be

The maximum and minimum radial errors for


the circular interpolation of a quadrant of radius
20 BLUs are shown in Table 1. Sample interpolated paths for each of the four methods are
shown in Fig. 2. The results show that:
(a) Generally, the maximum absolute error
decreases with decrease in AA for the first-order
simultaneous DDA method. However, with a
smaller AA, the algorithm has to be iterated at a
higher frequency to attain the same feed rate of
the tool (tool speed). The requirement for a higher
computation frequency reduces the maximum
achievable feed rate for the interpolator.
(b) For all the methods except the first-order
simultaneous DDA method, there is no advantage in using very small A A as the maximum
absolute error can increase with decrease in AA.

Computers in Industry

25

F.S. Lira et aL / Circular interpolators

25

2O

2O

15

15

lO

"

0
0

o;

10

15

2O

25

I0

25

20

15

15

10

10

10

15

20

II

25

(b)

20

O~

5,

(o)
25

10

45

15

20

25

10

(c)

15

20

25

[d}
251

2o[
15

10
\

5
O~

\
5

I0

15

20

25

(e)
Fig. 2. Clockwise interpolation path for: (a) first-order sequential DDA method; (b) second-order sequential DDA method; (c)
second-order simultaneous DDA method; (d, e) first-order simultaneous DDA method. For (a)-{d) &,4 = 1/20, for (e) AA =
1/1000.

46

Computers in Industry

Applications

Table 1
Maximum and minimum radial errors for the circular interpolation of a quadrant of radius 20 resolution steps
AA

D D A method
Firstorder
sequential

Secondorder
sequential

Firstorder
simuitaneous

Secondorder
simultaneous

1/20

0.6155
- 0.3023

0.6155
- 0.895

0.8806
0

1.4009
0

1/30

0.8806
- 0.201

0.6155
- 0.3531

1.0956
- 0.075

1.3776
0

1/40

0.8806
- 0.2769

0.8806
- 0.3531

0.8806
- 0.1506

1.2132
0

1/50

1.0238
-0.1506

0.8806
-0.3531

1.095
-0.1506

1.2603
0

1/100

1.0238
-0.201

1.0238
-0.201

1.0956
-0.1506

1.095
-0

1/ 1000

1.095
-0.201

1.095
-0.201

1.095
-0.1506

1.095
-0.1506

Hence, a value of AA = 1/R should give acceptable accuracy (i.e. + 1 BLU), where R is the
radius of the circle in BLUs and the algorithm is
iterated at a frequency equal to the desired tool
speed in BLUs per second.
(c) The end point of interpolation is reached
by all the methods except for the first-order simultaneous DDA method. The end point of interpolation is not reached for values of AA from
1/20 to 1/1000 for the first-order simultaneous
DDA method. Hence, the first-order simultaneous DDA method causes a spiraling outwards of
the circle and this effect has already been reported [1,5,6].
(d) The maximum and minimum radial error
of the interpolation is within + 1 BLU for all the
methods except for the first-order simultaneous
DDA method.
In view of the high radial errors produced by
circular interpolations based on the first-order
simultaneous DDA algorithm, this method will
not be further considered in the following comparisons.

3.3.2. Maximum and minimum radial errors for


circles of large radius
The maximum and minimum radial errors for
the circular interpolations of radii 2 7, 2 t5 and 2 23

BLUs in one quadrant, for the different methods


are shown in Table 2. The radial error is defined
as:

e i = R - ( X ~ + Yi2) '/2,
where R is the nominal radius. The value of A A
used for each case is AA = 1/R, where R is the
radius of the circle.
The results show that:
(a) The end point of the interpolation was
reached by all the methods.
(b) The second-order sequential DDA method
gives a quadrant of accuracy within + 1 BLU for
the three radii of circle, as compared to + 1.008
BLU given by the first-order sequential DDA
method. The second-order simultaneous DDA
method gives an accuracy within + 1.21 BLU.
Hence, the first-order and second-order sequential DDA methods are suitable software circular interpolators for producing tool-paths up to
a radius of 223 BLUs with an accuracy of + 1
BLU. The algorithm should be itef'ated at the
feed-rate frequency in BLU/s with AA set equal
to 1/R.

3.3.3. Causes of radial error


The radial error for all the DDA methods is
caused by the following:
(a) truncation errors due to finite step size of
A A in the numerical integration;
(b) round-off errors due to the finite step size in
the digital representation of the variables
and Y.
An analysis of the causes of the radial error is
done by S i ~ r [6]. However, the analysis cannot
be used to predict the radial error at any integration step due to the random nature of the roundTable 2
Maximum and minimum radial errors for the interpolation of
a quadrant of a circle of radii R
R

DDA method
First-order
sequential

Second-order
sequential

Second-order
simultaneous

27

0.8914
- 0.3873

0.8759
- 0.9055

1.0736
- 0.0937

2t5

1.0081
- 0.4407

0.9921
- 0.8942

1.209
- 0.1921

223

1.0024
- 0.4533

0.9995
- 0.9209

1.2087
- 0.2039

Computers in Industry

F.S. Lira et aL / Circular interpolators

off effect. The round-off effect causes the radial


error to increase and decrease non-linearly
throughout the interpolation as shown in Fig.
2(e).
According to eqns. 7(e) and 8(e), the sequer:tial D D A methods reduce the Y variable at a
higher rate than the conventional DDA method.
The smaller Y variable subsequently retards the

~-

47

growth of the X variable, with the overall effect


of preventing the interpolation path from spiraling out from the nominal circle. A similar effect
is observed (at a slower rate of change) in the
second-order simultaneous DDA method. The
effect is more significant with the second-order
D D A method, with some indication of over-correction, as can be seen in Fig. 2(b).

1.3
1.2
1.1

m
i ( ~ , x , ' , , X ~ X , ~ . X ~ X , , , _ X . . . . X ~ X ~ X....,X,...X..,. X.m X ~ . X ~ X . , , . X , . , . X
m

"G
"

0.9
0.0
0

2i

s'o 6i

e'o

100

angle

(a)
"=1

El

1.t,

1.3
0m

Z8

1.2
1.1

0
u

"G
,.==

1:

o.9!
0.8 0

8~

90

100

angle

(b]
Fig. 3. Tool-speed accuracy for interpolation of a circle of radius 1000 BLUs: (a) second-order sequential DDA method; (b)
first-order sequential DDA method.

48

Applications

Computersin Industry

3.3.4. Tool-speed constancy

The circular interpolation of a quadrant of a


circle of radius 1000 resolution steps was simulated using the first-order and second-order sequential DDA methods. The value of A A used
was 1/1000. The number of iterations (At) of the
algorithm to advance the circular interpolation by
5 of arc, and the changes in ,~ (A.~) and
(AY) were noted during the simulation. The average tool speed for each 5 segment of the
interpolated arc was computed using these values: The tool speed accuracy for both methods
was found to be within +_5% of the desired tool
speed (Fig. 3). Average tool speed for each segment is computed using [(A.~) 2 + (Ay)E]I/E/At.

3.4. Full-circular interpolator


Thus far, the circular interpolation of one
quadrant of a circle has been described. This
section describes the implementation of a full-circular interpolator using the DDA method.
There are eight possible arcs which can start at
a point as shown in Fig. 4. The one which has
been discussed is arc h, but arcs f, g, and e may
also be interpolated. For example, if the direction
of X is reversed, arc g is generated rather than h.
The other set of arcs (a, b, e, d) are interpolated by similar algorithms. The arc interpolated
by the following algorithms is arc b. For this case,
.~j is the integer greater or equal to X i, and Y,, is
the integer smaller or equal to Yv The interpola-

----

_t7 '
Fig. 4. Eight possiblecircular interpolationarcs.
tion of the arc stops once X~ reaches the end
point.
First-order simultaneous DDA method:

Y,'+l = Yi + Xi AA,

(9a)

Xi+ I = X i - ~ AA

(9b)

Yo.,+i = ~ +,,

(9e)

Xo,i+ l =Xi+ 1.

(9d)

Second-order simultaneous DDA method:

Yi+,=Yi+2i A A - O . 5 ~ ( A A )

2,

(lOa)

Xi+I=X~ - ~. AA-O.5~;~(AA) 2,

(lOb)

Yo,i+, = ~ + , ,

(10C)

Xo,,+ I = X#+|.

(10d)

First-order sequential DDA method

(Zla)

E, = Y, + x, a A ,
20

~-

15
10

10

-5

-5

-10

-10

-15

-15

-2

-20

-10

0
(a)

10

20

"2~20

-10

10

20

(b)

Fig. 5. Clockwisecircular interpolation:(a) second-ordersequentialDDA method;(b) first-ordersequentialDDA method.

Computers in Industry
Xi+l=Xi-

F.S. Lira et al. / Circular interpolators

(llb)

Yii+t A A ,

Yo,, + , = Yii + t ,

(11c)

Xo,i+ l = X i + I.

(lld)

49

of the interpolation, an interrupt is generated by


the interpolator chip.
4.1. Interpolator characteristics

Second=order sequential DDA method:


Y.+)=Yi+XiAA-O.SYi(AA)

a,

Yo,i+t = ~ + t ,
Xi+l=Xi

- Yi+l AA - 0.5"~i(AA) 2,

Xo,i+ l = Xi + I.

(12a)
(12b)
(12c)
(12d)

Typically, the commands Xo,i+1 and Yo, i+ l are


released from the interpolator each time it receives a pulse from an external constant-frequency
interrupt clock. The frequency of the interrupt
clock is set at the interpolation frequency of the
DDA method used (see Section 3.3.1). Examples
of the full-circle interpolation in the clockwise
direction using the first- and second-order sequential DDA methods are shown in Fig. 5. The
results show that the sequential DDA methods
are equally effective for full-circle interpolation.

4. LSI hardware interp,Jlator


The Toko KM3701 [14] is a programmable LSI
(large-scale integrated) interpolator chip which
generates interpolation pulses for two axes to
produce linear, circular, parabolic, logarithmic
and exponential interpolations. A few reported
CNC systems are based on the chip [7-9]. The
contour accuracy is within + 1 BLU for linear,
circular and logarithmic interpolations. The error
is greater for parabolic and exponential interpolations. The interpolator can interpolate circles
up to 223 BLUs radius, at a maximum feed rate
of 73200 BLU/s for a computation clock frequency of 1.5 MHz. For a machine resolution
step of 1 I~m, the largest circle is 8.3 m radius
and maximum feed rate is 4.3 m/min.
The LSI CMOS interpolator chip is designed
for 8-bit data-bus microcomputer systems. Programming the chip for circular interpolation is
done by providing the coordinates of the end
points and their relative distances from the center of the circle. The chip produces a stream of X
and Y pulses of the interpolated path. At the end

The KM3701 interpolator is a reference pulse


interpolator. The chip executes one cycle of its
interpolation algorithm whenever a pulse from an
external constant-frequency clock is received. For
every pulse received from the external clock
(feed-rate clock), the chip produces one interpolation pulse for the long axis of the contour. The
interpolation pulses for the short axis are produced intermittently depending on the inclination. The feed-rate clock is set equal to the desired feedrate in BLU/s. Such an arrangement
produces non-uniform but higher tool speeds for
circular interpolation at a given clock rate.
The chip reduces the effect of the non-uniform
tool speed by providing a "root-two" (~-) compensation. The V~ compensation works by ignoring the next pulse from the feed-rate clock, immediately after two interpolation pulses are produced by the short axis, that is, no interpolation
pulses are produced for both axes for this pulse.
By using this method, the instantaneous tool
speed for circular interpolation varies from 1 to
0.894 times the feed-rate clock (see Section 4.3).
In the case of circular interpolation, the long
axis is changed whenever the interpolation path
crosses the principal 45 lines of the plane. For
example, as shown in Fig. 6, assuming that the
center is on the X-axis ( R , 0), for angle A less
than 45 , the long axis is the Y-axis and for A
greater than 45 , the long axis is the X-axis.

-AXIS
i

Fig. 6. Longaxisof the clockwisecircularinterpolationpath.

50

Applications

Computers in Industry

4.2. Contour accuracy

A CNC system based on the KM3701 interpolator chip has been developed for an IBM ATcompatible microcomputer [9,15]. Using this system, the contour accuracy and feed-rate constancy of the chip have been verified. The interpolation pulses from the chip were captured on a
storage oscilloscope with the microcomputer and
KM3701 running at 8 MHz and 1 MHz respectively. The pulse rate from the feed-rate clock
was 1 kHz. The effect of the v~- compensation is
shown in Figs. 7 and 8. For circular interpolation
using V~ compensation it was found that the next
feedpulse after the first interpolation pulse of the
short axis was ignored (Fig. 8b). The subsequent
interpolation pulses follow the ~ compensation
rule. The interpolation path of a full circle is
shown in Fig. 9. The interpolated paths show
that:

Y-AXIS

CHI: 05.0V >: 5ms

I ]]11111 ]11 IIII fllll


K-AXIS

llllll
IIlll IIl llllll
CLOCK
lllfllllllilllllillllllllllllillllllllllllllllllll

25

10

15

20

CH2:05.0Y : 5ms
CH3:05.0V : 5 ms

20

15
10
5
0

Y-AXIS

CHI: 05.0V > :Sins

I] II II]ll'lllllll]ll/
K-AXIS

CH2:05,0V : 5ms

EIIlllllll[lll
fl Ill
:LOCK

lilllllllilllilll"[lil[lllillllllllllllllllllllliill

25

25

Fig. 8. Time sequence of interpolation pulses for clockwise


circular interpolation of a quadrant of a circle of radius 20
BLUs,with V~- compensation.

CH3~05,0V: 5 ms

20
15

(a) The maximum radial deviation of the path is


within 1 BLU.
(b) The desired end point of the path w a s
reached.
(c) The same algorithm was used for all the
quadrants of the circle.
It was not possible to verify the contour accuracy
of the chip due to the limited memory of the
microcomputer. The interpolation algorithm used
by the chip was not revealed by the manufacturer.
4.3. Feed-rate constancy

10
5
0

The equations describing the instantaneous


speed of the interpolation with and without
~ compensation have been derived [15]. These
have been compared with experimental data provided by the manufacturer (Fig. 10). The results
show that the tool speed varies with angle A. The
tool-speed variation is symmetrical about A =
45 o, since the long axis changes after 45 of arc.
tool

, ,

5
10
15
20
25
Fig. 7. Time sequence of interpolation pulses for clockwise
circular interpolation of a quadrant of a circle of radius 20
BLUs, without y~" compensation.

Computers in Industry

:~o/

F.S. Lira et al. / Circular interpolators

20 , ~ - 15
10
5

NC code

GO2XI,
O YOI20
GO2X%OVOI-20
~

NCcode
GO3X-40VOI-20
GO3X40VOI20

-5

-10
-15
-20

, ~

51

-5
-10 ~
-15
10

20

30

20

I,O

10

(a]

'

20

30

40

(b)

Fig. 9. (a) Clockwiseand (b) counterclockwiseinterpolationfor Toko KM3701.

The tool speed obtained with the x/2 compensation varies from 1 to 0.894 times the desired tool
speed. That obtained without the V~ compensation varies from 1 to 1.41 times the desired tool
speed. Hence, with the v~ compensation, the
interpolator gives a reasonably accurate tool
speed for circular interpolation.

5. Conclusions

The performance of four reference pulse software circular interpolators and a hardware interpolator for numerical control manufacturing systems has been presented in this study which leads
to the following conclusions:

Circular Interpolation
1.5
1.4

---Theoretical

o,x Experimental
f

without compensation f,""


~' 1.2

S~04,PS'~J
4" ~ ' 0 ' 1 ' 0 ' ~ 0

with compensation
I<_,.=,...X~ X ~ x ' ' ' '

0.9
0.8

S"

4,,,,'

"~ 1.1
'-"-=

,I

lh

1[

io

3h

45

Fig. 10. Variationof toolspeedwithanglefor circularinterpolationof Toko KM370chip,withand withoutv~ compensation.

52

Applications

(1) The widely used conventional D D A


method has been shown to be inadequate for
circular interpolation. A better software interpolation approach is to use the first-order or second-order sequential D D A method. Such an interpolator gives a contour accuracy of + 1 BLU
up to a radius of 2 23 BLUs, and a tool-speed
error of less than 5%. A higher interpolation rate
is also possible, as the algorithm is iterated at the
tool-speed frequency in BLU/s. The first-order
sequential D D A method is simpler to implement
than the second-order sequential DDA method,
although the former gives a slightly larger radial
error.
(2) The Toko KM3701 is a compact dedicated
hardware interpolator which can be easily implemented on 8-bit data-bus microcomputer systems.
It gives an accuracy of + 1 BLU for circular
interpolation and a maximum tool speed of 10%
(with V~ compensation). The maximum radius of
circle for the interpolator is 223 BLUs.
(3) The software sequential DDA circular interpolator and the Toko KM3701 give comparable performance for contour and tool speed accuracy, with the software interpolators giving smaller
tool-speed variation.
(4) The software interpolators may be implemented on a dedicated microprocessor or microcontroller. Software development is required to
implement the software interpolators, while n~ne
is required for the Toko I,2"3701 interpolator. ~
(5) Both interpolators may be implemented
together with a master microprocessor in master/ slave configurations to form CNC systems.

References
[1] W. Simon, "Computer in machine-tool control systems",
in: The Numerical Control of Machine Tools, Translated
Edition, Edward Arnold, 1973, chap. 8.

Computers in Industry
[2] Y. Koren, "Interpolators for manufacturing systems", in:
Computer Control of Manufacturing Systems, McGrawHill, New York, 1983, chap. 5.
[3] A. Poo and J.G. Bollinger, "Digital-analog servo system
design for CNC", Proc. 9th Ann. Meet. IEEE Ind. Appl.
Soc., October 1977, pp. 621-629.
[4] Y. Koren and O. Masory, "Reference-pulse circular interpolators for CNC systems", Trans. ASME, J. Eng. Ind.,
Vol. 103, No. 1, 1981, pp. 131-136.
[5] M. Week, "Geometry processing", in: Handbook of Machine Tools, Vol. 3, Wiley, New York, 1984, chap. 8.
[6] T.R. Sizer, The Digital Differential Analyzer, Chapman &
Hall, London, 1968.
[7] G.M.A. Ajit and C.S. Sridhar, "Advanced CNC system
using multibus compatible hardware and portable software", Proc. 23rd Int. Machine Tool Design and Research
Conf., 14-15 September 1982, Manchester, pp. 85-92.
[8l W.C. Choong, A microprocessor controller for numerically controlled machine tools, M.Sc Dissertation, The
Victoria University of Manchester, 1981.
[9] F.S. Lira, Y.S. Wong and M. Rahman, "Design and
development of a PC-based CNC system v~ing LSI chips",
J. Inst. Eng., (Singapore), Vol. 30, No. 1, 1990, pp. 63-69.
[10] B.W. Jordan, W.J. Lenon and B.D. Holm, "An improved
algorithm for generation of nonparametric curves", IEEE
Trans. on Comput., Vol. C-22, No. 12, 1973, pp. 10521060.
[11] T. Pfeofer and T. Derenbach, "Report on a special CNC
system", Proc. 14th Int. Machine Tool Design and Research Conf., 12-14 September 1973, Manchester, pp.
367-372.
[12] R. Hariharan, K.S. Rao and J.N. Bhattacharjee, "Design
of a microprocessor.based NC system", IEEE ~rans. Ind.
Electron. Control lnstrum., Vol. IECI-25, No. 4, 1978, pp.
355-362.
[13] C. Bergren, "A simple algorithm for circular interpolations", Control Eng., Vol. 18, No. 9, 1971, pp. 57-59.
[14] Toko Electronick GmbH, Operation Manual CMOS LSI
KM3701, 1981.
[15] F.S. Lim, Development of a microcomputer controlled
multi-axis NC system, MEng Dissertation, National University of Singapore, 1991.

S-ar putea să vă placă și