known as a Digital Differential Analyzer (DDA), [6]. The DDA method can be used to implement linear and circular interpolation reliably and economically.
27
State of the Art
Interpolation Algorithms for Numerical Control Spiros G. Papaioannou Assistant Professor, Department of Manufacturing Engineering, Boston University, Boston, MA, USA In numerically controlled systems (machine tools, plotters, flamecutters, etc.), interpolation is defined as the process of synthesizing a prescribed curve from a large number of small orthogonal steps. This paper investigates the evolution of interpolation algorithms from the early days of numerical control to the present. The algorithms presented are the most attractive computationally, since they rely on addition and subtraction alone for generating the next step. The DDA method, which dominated the premicroprocessor era, is still fully competitive when properly implemented on a general purpose computer. Now, however, its use is mostly confined to generating straight lines, where the degradation problem is absent. For higher degree curves, the pattern recognition approach provides superior accuracy. Keywords." Numerical Control, Interpolation, Pattern Recognition.
Editor's Comment: Computers in Industry welcomes not only state-of-the-art new developments, but concise tutorials that summarize known facts in a useful form, as well. The work covered in this paper by Professor Papaioannou was sponsored as an Educational Module by the National Science Foundation of the U.S. Government (under Grant No. HES75-20464) and has been used in a number of University-level teaching contexts in the U.S.A. Douglas T. Ross, Member, Advisory Editorial Board
© North-Holland PuNishing Company Computers in Industry 1 (1979) 27-40
1. Introduction A numerically controlled machine tool is a general purpose device in the sense that the cutting tool can be programmed to follow any desired path within the available degrees of freedom. How is this flexibility achieved? The basic idea still remains the proverbial wisdom that every journey begins with and, in fact, is composed of a number of small steps. Each step of the cutting tool is a small fraction of an inch (typically 0.0001" ~ 0.002"). Tens of thousands of such steps are, therefore, required to move the cutter appreciably. The process by which appropriate steps are selected to synthesize a prescribed movement is known as interpolation. The development of interpolation algorithms is thus an essential element for realizing the flexibility and accuracy required in today's machine shops. One difficulty still remains. An interpolation algorithm is usually designed to generate movement along a specific type of curve, for example, a straight line, a circle or a parabola. If higher degree curves are likely to occur, additional interpolation algorithms must be available. Building an interpolation unit, however, capable of performing all these algorithms is expensive. Spiros G. Papaioannou received the B.S. degree in mechanical and electrical engineering from the National Technical University, Athens, Greece in 1961, the M.S. degree in mechanical engineering from Lehigh University, Bethlehem, Pennsylvania in 1972 and the Ph.D. degree in electrical engineering also from Lehigh in 1975. His industrial experience includes four years with the Public Power Corporation of Greece and two years as a Systems Analyst with the Foxboro Company, Foxboro, Massachusetts. Since 1975, he is a professor of Manufacturing Engineering at Boston University, Boston, Massachusetts, where he is engaged in teaching and research in the areas of digital control, numerical control of machine tools, optimization theory and minicomputer and microcomputer applications.
28 State o f the Art A possible alternative is the development of general algorithms which could be applied to any curve regardless of its degree. Although such algorithms do exist, their use does not alleviate the problem, since generality goes hand in hand with complexity and hence again with cost. Clearly, however unwilling one may be to accept a loss o f accuracy, a compromise is necessary if the cost o f generating a curve is to be kept within an affordable limit. A judicious balance between cost and accuracy can be obtained by taking recourse to some mathematics. The basic idea is again not fancy. If interpolation of the original curve is too costly, then approximation of this curve by a simpler one and interpolation o f the latter may work. Weierstrass [7] has shown that every function f ( x ) which is continuous in an interval a