Patent GB-1471541-A (GB)
Title: Generation of two-and three-dimensional spacial forms
IPC: G06F17/17
Filed: 1974-05-01
Abstract: 1471541 Interpolation ALLEN-BRADLEY CO 1 May 1974 [4 May 1973] 19101/74 Heading G4A In an interpolation system for machine tools, input data defining the co-ordinates of spaced points on the required curve or surface are used to calculate an initial state vector and a steering vector which is iteratively applied to the initial state vector to generate output data representing an interpolation between the points which follows a minimum energy trajectory i.e. a curve or surface analogous to that taken up by a piece of spring steel constrained to pass through the specified points. In a first embodiment a pre-processor, which may be a programmed general purpose digital computer or a hard-wired computer, calculates the initial state vector from the co-ordinates of the specified points J on the required surface, and the resulting vector elements are supplied, either directly or after storage on magnetic tape, to interpolators controlling the utilization device. The following description is restricted to a single co-ordinate axis it being assumed that identical hardware or the same programme routines are used for each axis. The pre-processor has locations in memory allocated to granularity numbers N J  and co-ordinate values and the other parameters #, # and # which are the elements of the initial state vector. The granularity numbers N J  are calculated as 1/R times the straight line distance between two adjacent points J and J+1, R being an input interpolation constant and N J  representing the number of interpolation iterations to be performed between points J, J+1. Given the slopes # 1 X 0  and # 1 X N  at the specified end points of a trajectory J as input data, the parameters #X 0 , #X 0  for the initial point can be calculated as a function of the granularity number N<SP>J</SP>, X 0 , X N , # 1 X 0  and # 1 X N  and the state vectors for succeeding points on the trajectory can be calculated from In general however, the initial and final slopes are not known and a "forward sweep" process is used to derive an optimum value for one of the unknown initial state vector parameters from which the remaining unknowns may be found. This process involves assigning trial values to one parameter such as # 1 X 0  or #X 0  for the initial state vector and calculating the value of #X 0  so that the trajectory passes through the next specified point in the required number of iterations N<SP>J</SP>. Successive transformations may be performed to derive the state vector for the end point of the trajectory or a single transformation may be applied (equation 13, not shown). Repetition of the process for a succession of trajectories so as to derive state vectors defining a three dimensional surface is described in some detail. In a second embodiment state vectors are defined by the co-ordinates and parameters # 1 , # 2 , and # 3 , representing first, second and third time derivatives of the co-ordinates. A surface patch is generated by forming a series of trajectories each derived from a state vector which is iteratively altered by interpolation between state vectors in both the trajectory and crosssection direction in a mapping interpolator which performs the function  A hardware interpolator arrangement suitable for the first embodiment is shown in Fig. 8, and comprises a digital differential analyser for each element of the state vector with appropriate interconnections to perform the iteration given above, the number of iterations being controlled by a counter (not shown) which is counted down from the value N<SP>J</SP>. Positioning commands produced at each iteration are supplied to a servo system and the iteration rate and rate of cut are determined by a feed rate computer and pulse generator into which the feed rate number is supplied from the console and a feedback pulse train derived from the servo system. Software for implementing the second embodiment is described in detail.