Patent Publication Number: US-4547847-A

Title: Adaptive control for machine tools

Description:
RELATED APPLICATIONS 
     This application is a continuation-in-part of application Ser. No. 386,481 filed June 9, 1982, now U.S. Pat. No. 4,509,126. 
    
    
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     This invention relates to adaptive control in which the response of a feedback control automatically adjusts to gain variations in the controlled system. More particularly, the invention pertains to turning machine tools such as horizontal and vertical lathes. Specifically, the invention relates to machine tools with an adaptive control, in which machining parameters such as workpiece surface velocity at the cutting edge of the tool and tool feed velocity are continuously adjusted during machining in response to measured machining parameters during the machining operation. 
     2. Description of the Prior Art (Prior Art Statement Under Rule 97) 
     It is well known in the art that machining time may be decreased by controlling machine tool drive and feed inputs to maintain certain machining parameters at maximal limits. One such limit is the workpiece surface velocity at the cutting edge of the cutter tool, measured in surface feet per minute and thus known in the art as SFM. Excessive SFM may burn the tool, and thus tool makers specify a maximum SFM for a given tool. Mack, U.S. Pat. No. 3,840,791 issued Oct. 8, 1974, for example, describes a system in a turning machine for accelerating a rotating workpiece as the cutter at first approaches the workpiece in order to obtain a maximal SFM at the beginning as well as throughout the machining operation. Another such limit is the power to the machine drive, measured in horsepower and known as HP. It is known that the maintenance of a maximal HP is desirable to minimize machining time, absent other limiting factors. 
     It is also known that there are certain ranges of machining parameters that constrain the selection of maximal SFM or HP. One such parameter is the tool feed velocity into the workpiece, measured in inches per revolution for turning machines and thus known as IPR. IPR is a measure of the depth of penetration of the tool into the workpiece and thus the width of the shavings or &#34;chip thickness&#34; of material cut from the workpiece. The maximum permissible force on the tool tip sets the maximum IPR, and exceeding this maximum might cause chatter, or tool breakage. On the other hand, if the IPR is below a certain minimum, depending on the tool geometry (especially its &#34;chip breaker&#34;) and workpiece material, a large mass of thin, curled strips will be produced at the cutter and may clog the machine. Normally, the turning machine is operated at or above this minimum IPR so that the cutter breaks the shavings into small chips that fall away clearly and are easily removed from the machine. 
     There are many well known mathematical techniques, such as linear programming, for optimizing a function of several parameters, functionally related in a known way, within given constraint boundaries. For machining parameters, however, it is known that many of the functional relations between controllable and measured parameters change throughout the machining operation due to dulling of the cutter edge and changing geometry and surface condition of the workpiece. Thus, it is known in the prior art that the optimization procedure should adapt to the changing conditions of the machining parameters and the functional relations between them. 
     The prior art methods of adaptive control, such as that disclosed by B. Beadle et al. in U.S. Pat. No. 3,784,798, issued Jan. 8, 1974, assumes that the functional relations between measured parameters, controllable parameters, and the parameters sought to be optimized maintain certain general characteristics despite the fact that the functional relationships change. In particular, an increase in a measured parameter results from either an increase or decrease of controllable parameters, and an increase in the parameter to be optimized results from either an increase or decrease of the controllable parameters. Thus, optimization may proceed in a stepwise fashion of incrementally changing controllable parameters most likely to increase the parameter to be optimized, but changing controllable parameters in a different fashion most likely to avoid a constraint in measured parameters when a constraint boundry is passed. This method homes in on and iteratively checks for a desired operating point and may oscillate back and forth across constraint boundaries. 
     Grinding machines have been provided with controllable feeds activated in response to changes in current, power, or speed of the motor providing the transverse cutting velocity. W. Muller, Great Britain Patent No. 782,432 issued Sept. 4, 1957 discloses an automatic grinding machine having a feed that is turned on and off in response to whether the grinding motor current or speed is less or greater, respectively, than a preset current or speed threshold. Muller also employs a rapid idle traverse to initially advance the grinding disc up to the workpiece, with contact detected by the resultant increase in motor current or drop in motor speed. R. Lenning, U.S. Pat. No. 3,589,007 issued June 29, 1971, discloses a grinding wheel with its feedrate controlled in response to the force exerted on the grinding wheel when it is in cutting engagement with the workpiece. The force is proportional to the power supplied to the grinding motor, and the difference between the measured force and a preselected reference force is used to energize the feed. When the workpiece is reduced to a predetermined size, the reference force is changed. It should be noted that none of these systems responsive to feed motor power determine the actual power delivered to the cutting interface, for example, by correcting for acceleration. Thus the response of these control systems must be limited to insure stability. 
     Cutting efficiency of rotary saws for slicing semi-conductor wafers has been monitored to measure the condition of the edge of the saw. R. Demers, et al., U.S. Pat. No. 4,228,782 issued Oct. 31, 1980, discloses a system for controlling the blade-to-boule feedrate of a wafer cutting saw so that the blade-to-boule force, measured by a mechanical force transducer, is maintained generally constant. The measured blade-to-boule force is compared to a reference force and the error is applied to a feedrate control. During the cutting of the initial and final edges of the wafer the force selection is overridden by a maximum rate-of-feed limitation which is intended to prevent excessive shock and too rapid penetration during initial contact, which could otherwise damage the saw or chip the boule surface due to excessive pressure. The cutting efficiency of the saw is measured by the rate of feed, and the time required to cut a wafer is used as a criterion for determining when the saw blade needs to be dressed or replaced. 
     The measurement of the electrical power consumed by the drive motor of a turning machine has been used to sense tool breakage and to regulate tool feedrates. Commercial systems are available, for example, that decrease the feedrate if the drive motor power is above a preset maximum threshold, and increase the feedrate if the drive motor power is below a preset minimum threshold. The maximum threshold is set above the minimum threshold, defining a window over which the gain of the feedback control loop is set to zero in order to insure stability. The rate at which the feedrate changes, or response factor, is a predetermined constant, preferably set to the largest possible value which will allow stable operation of the machine. In such machines provisions are made for the user to select a number of high or low measured power limits and associated limit delays in order to control user defined machine functions enabled if the high or low limit is reached continuously for a time period longer than the associated limit delay. A low limit, for example, could be used to detect tool breakage. Moreover, a predetermined machine high power limit is usually provided as a protection feature to shut off the machine if the machine high power limit is exceeded for a time greater than a predetermined machine limit time delay. A somewhat shorter predetermined spindle surge time may be specified to disable the user selected limits when the machine high limit is exceeded, since temporary power surges are randomly encountered during normal machining and thus should be discounted when drive power is monitored to control user functions. An idle power predetermined maximum limit is typically provided along with a predetermined initial &#34;air cut&#34; feedrate and a preset transitional &#34;impact&#34; feedrate so that the tool is first brought into contact with the workpiece at a rapid &#34;air cut&#34; feedrate, and contact is detected by the increase in measured drive power above the idle power limit, whereupon the feedrate is switched to the impact feedrate and held for a predetermined impact hold time before the feedrate control loop is established. Moreover, a predetermined minimum feed limit is typically provided in terms of a percentage of a predetermined initial feedrate to set a floor below which the feedrate will not fall during normal operation of the machine. The combination of a high minimum feed limit and a low machine high power limit possibly could shut off the machine if a tool becomes dull, but at the expense of limiting the permitted operating ranges of workpiece and tool parameters. The use of a low machine high power limit, for example, is particularly ineffective in detecting tool dulling if feedback control reduces the machining rate to maintain a generally constant power in response to tool dulling. 
     SUMMARY OF THE INVENTION 
     An important aim of the invention is to maintain the machining power of a machine tool at a desired power level using a feedback control loop having a time-variant response factor that is adaptively adjusted to a maximal allowable value in response to changing machining parameters as the machining process progresses. 
     Another general aim of the invention is to continuously regulate machining power levels by varying a plurality of machine control inputs, and apportion the control input signals in a time-variant and optimal fashion in response to changing machining parameters as the machining process progresses. A related general aim is to provide an adaptive control compatible with user-adjustable override controls for adjusting the desired machining power by independently scaling individual machine control input signals, despite the general tendency of an adaptive control to compensate for gain variations in the response of the machine to individual control signals. 
     A specific objective of the present invention is to automatically adjust tool drive velocity and tool feed velocity to maintain a desired cutting horsepower level, regardless of changing depth and workpiece material properties, thereby allowing the programmer to use less conservative machining parameters. 
     Another object of the invention is to decrease machining time, since a constant maximal horsepower may be maintained and less conservative limits for machining parameters may be selected to maximize machining speed. 
     Yet another object is to provide a means of adaptively controlling a machine tool based on the horsepower actually consumed at the tool-workpiece interface, regardless of acceleration of the rotating workpiece or rotating cutting tool and power losses in the drive for rotating the workpiece or cutting tool. A related object is to provide an automatic means for calculating the system inertia, and other system losses, thereby making it possible to compensate for the drive losses and the acceleration of rotating workpieces or cutting tools of various sizes and shapes. 
     Still another object of the invention is to increase tool life by keeping machining parameters within feedrate constraints known to reduce wear and prevent tool breakage. 
     And yet another object is to provide a means for determining when a tool is becoming dull or breakage is imminent while simultaneously maintaining cutting power at a desired constant level. A specific object is to provide a means for detecting tool dulling to a predetermined or unacceptable degree, or imminent breakage by calculating and monitoring the relative or actual cutting efficiency of a tool in terms of power required for removal of a unit volume of workpiece material, substantially independent of cutting depth, cutting surface velocity, and feedrate. 
     Still another object is to provide a means for initiating contact of the tool with the workpiece and engaging an adaptive machining power control system and conversely disengaging the adaptive control system and completing the machining process in a controlled manner while minimizing stress overloads on the tool. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1A, labeled prior art, is a perspective view of a generalized cutting tool engaged with a workpiece. 
     FIG. 1B, labeled prior art, is a perspective view of a schematic representation of a vertical turret lathe shown to illustrate the relation between the cutting tool and the workpiece. 
     FIG. 1C, labeled prior art, shows the displacement vectors and feed velocity vectors representing the relative motion of the cutting tool being fed into the workpiece. 
     FIG. 1D, labeled prior art, is a top view of the vertical turret lathe schematic of FIG. 1B drawn to illustrate a facing operation. 
     FIG. 1E is a side view of the vertical turret lathe schematic of FIG. 1B drawn to show a turning operation. 
     FIG. 2 is a graph of the time variation of the angular velocity of the workpiece, the measured power consumed by the drive, the electrical power consumed by the electrical resistance in an electrical motor drive, the power lost due to a mechanical friction, and the net power transferred to the inertial mass of the drive and workpiece in a turning machine. 
     FIG. 3A is a graph of the time-varying angular velocity in a turning machine being stepwise accelerated and continuously decelerated for the calculation of constants of friction and moment of inertia, respectively. 
     FIG. 3B is a graph of the horsepower due to acceleration, and the rotational velocity for a stepwise change in commanded drive velocity to a DC drive motor during the preferred procedure of accelerating the drive at a constant rate to determine the moment of inertia. 
     FIG. 4 is a graph of the response of the cutting power in a machine tool to the &#34;relative machining rate&#34; at which the machine tool is driven. 
     FIG. 5A is a simplified flow diagram of the control procedure for an iterative ratio control directly responsive to the previously calculated commanded machining rate. 
     FIG. 5B is a simplified flow diagram of the control procedure for an iterative ratio control directly responsive to the current measured value of the commanded machining rate. 
     FIG. 5C is a simplified block diagram, conforming substantially to the FIG. 5B flow diagram for the preferred ratio control for machine tools. 
     FIG. 6 is a graph of drive velocity in surface feet per minute versus feed velocity in inches per revolution showing the regions of permissible operation, the preferred operating points within the region of permissible operation, and the relative machining rate associated with the critical points of the region of preferred operation. 
     FIG. 7 is a pictorial and schematic diagram of an exemplary embodiment of the invention controlling a vertical turret lathe. 
     FIG. 8 is a schematic diagram of the hardware of the numerical control unit used in the exemplary embodiment of FIG. 7. 
     FIG. 9 illustrates the addition of override controls for scaling the feedrate and drive velocity command signals in the exemplary embodiment of FIG. 7. 
     FIG. 10A, labeled prior art, is a block diagram of the conventional prior art control loop. 
     FIG. 10B is a generalized block diagram of one embodiment of the present invention as illustrated in broad functional terms. 
     FIG. 10C is a flowchart of the numerical procedure for implementing the block diagram of FIG. 10B in a numerical control unit. 
     FIG. 10D is a block diagram corresponding to FIG. 10B with the addition of an override control for scaling the control signal in the control loop. 
     FIG. 10E is a block diagram illustrating a system corresponding to the block diagram of FIG. 10D but with the addition of a plurality of override controls. 
     FIG. 11 is a pictorial diagram of an operator interface for use with the exemplary embodiment shown in FIG. 7. 
     FIG. 12 is a timing diagram of the basic signals in the exemplary embodiment of the invention. 
     FIG. 13A through FIG. 13H comprise a flowchart of a numerical procedure for execution in the numerical control unit of FIGS. 8 and 9 to adaptively control the vertical turret lathe shown in FIG. 7 as shown in the timing diagram of FIG. 12. Specifically, FIG. 13A is a flowchart of the executive program executing the adaptive control procedure outlined in FIG. 5A. FIG. 13A&#39; shows the modification of the executive program in FIG. 13A required for executing the adaptive control procedure outlined in FIG. 5B. FIG. 13B is a flowchart of the subroutine TEST used by the executive program of FIG. 13A to determine the next commanded values of SEM and IPR based on a comparison of the estimated desired machining rate to threshold levels. FIG. 13C shows the subroutine PCD for determining the program constants of friction Ms and B, and the moment of inertia J. FIG. 13D shows the first part of the 32 mS interrupt procedure which performs the feedhold and initializing velocity control sequences. FIG. 13E shows the second part of the 32 mS interrupt procedure including the reading of the part program memory, calculation of path vectors, and the soft engagement and disengagement functions. FIG. 13F is a flowchart of the axis subroutine which generates the feed and drive control signals. FIG. 13G is a flowchart of the 64 mS interrupt which periodically calculates the actual cutting power at the cutter edge. 
     FIG. 13H is a flowchart of the tool monitor subroutine TLMNTR which calculates the relative cutting efficiency factor for detecting broken tools, tool wear, and tool protection conditions, and executing a feed hold when these improper conditions occur during machining. 
    
    
     A glossary of selected terms has been appended before the claims for the convenience of the reader. 
     While the invention is susceptible to various modifications and alternative forms, a number of specific embodiments thereof have been shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that they are not intended to limit the invention to the particular forms disclosed, but, on the contrary, the intention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the appended claims. 
     BEST MODE FOR CARRYING OUT THE INVENTION 
     I. Introduction to Machining Parameters 
     The exemplary embodiments of the invention herein described in detail generally concern the environment of a machine tool. In its most general form, as depicted in FIG. 1A, a machine tool employs a cutter tool 10&#39; driven into a workpiece 12&#39; so that chips of workpiece material 16&#39; are cut from the workpiece by an edge 18&#39; that cuts away workpiece material 20&#39;. This is the basic mode of operation regardless of whether the machine tool is a lathe, a mill, a grinding machine, a drill, or the like. 
     Several parameters are illustrated in FIG. 1A that describe the machining process. One of the most important is the relative transverse velocity of the cutting tool edge 18&#39; with respect to the workpiece 12&#39; surface, which is conventionally measured in surface feet per minute and thus denoted as SFM. Another important machining parameter is the distance of the cutter edge below the surface of the workpiece in a direction normal to the workpiece surface and thus also normal to the direction of the velocity SFM. This distance is denoted IPR (also known in the art as &#34;chip thickness&#34;) which has a special meaning for turning machines, as will be described below. A third important machining parameter is the depth of cut D in a direction parallel to the workpiece surface but normal to velocity SFM. Inspection of FIG. 1A reveals that the cross-sectional area A of the workpiece shaving 20&#39; is the product of the distance IPR and the depth D. Since SFM is the velocity at which the shaving 20&#39; appears to be emitted from the edge 18&#39; of the cutter 10&#39;, the machining rate dC/dt, defined as the rate at which workpiece material is removed, is the product of SFM, IPR, and D. (In all equations, except otherwise noted, a rationalized system of units is assumed; for example, the factor of 12 to convert inches to feet as commonly used in industry is implicitly assumed.) 
     The exemplary embodiments of the present invention will be described specifically with respect to a turning machine such as a vertical turret lathe and the like as shown schematically in FIG. 1B. The cutter 10 engages a workpiece 12 which is mounted on a table 14 that is rotated by a drive 17. The cutter 10, for example a ceramic or tungsten carbide insert, is held in a tool holder 19 which is moved in a radial and an axial direction by a tool feed 20. The axial direction is conventionally denoted as the Z direction and the radial direction is conventionally denoted as the X direction so that the tool feed velocity may be resolved into components F x  and F z . 
     The relation between the tool feed velocity vectors and the displacement vectors of the cutting tool 10 are shown in detail in FIG. 1C. The resultant tool feed velocity is denoted as F c . The feed velocity vectors F x  and F z  geometrically similar to the displacement vectors Ip and Jp conventionally designating the X displacement component and the Z displacement component respectively. The resultant displacement vector is denoted as PATH which is a vector from an initial point (X in , Z in ) to a terminal point (XCEP, ZCEP). 
     The vertical turret lathe of FIG. 1B may be operated in one of two modes or a combination thereof. In a facing mode, the tool feed is advanced radially inward along the X axis into the workpiece, as shown in FIG. 1D, so that the velocity SFM is equal to the angular velocity w of the workpiece multiplied by the changing radius R of the cutter edge 18 from the central axis from the workpiece. Since the locus of the cutter edge with respect to the workpiece 12 traces out a spiral, the distance of the cutter edge into the surface of the workpiece is equal to the inward radial feed F x  of the cutting tool into the workpiece divided by the rotational velocity RPM=w/2π. Conventionally the feedrate of the cutting tool is measured in inches per minute and the rotational velocity is measured in revolutions per minute so that the parameter IPR has dimensions inches per revolution, thus explaining the meaning of the mnemonic IPR. The distance IPR in FIG. 1D is in the x direction and thus in FIG. 1D IPR is given the subscript x. The depth of cut D is in the Z direction. 
     The other mode of operating a verical turret lathe is shown in FIG. 1E. For a turning cut, the cutter is fed in the Z direction into the workpiece so that the locus of the cutter edge with respect to the workpiece is a helix. Thus the distance IPR is in the Z direction and the depth of cut D is in the X direction. It should be noted, however, that a rigorous definition of the velocity SFM is not readily apparent since SFM is not constant along the lower edge of the cutter 10 in contact with the workpiece in FIG. 1E. If the parameter D is defined as the width of the shaving or chip 16, then D is equal to the outer radius R o  minus the inner radius R. Then it is possible to defined an effective or average SFM so that the machining rate dC/dt is still equal to the product of D, SFM, and IPR. Noting that since the amount of material removed in one revolution is equal to (IPR) (π) (R o   2  -R 2 ), the effective SFM may be derived as: 
     
         dC/dt=(SFM.sub.eff)(IPR)(D)=(RPM)(IPR)(π)(R.sub.o.sup.2 -R.sup.2) (1-1) 
    
     But since 
     
         (R.sub.o.sup.2 -R.sup.2)=(R.sub.o +R)(R.sub.o -R)=(R.sub.o +R)(D) ##EQU1## Thus the effective SFM may be defined in terms of an average radius: 
    
     
         R.sub.av =R.sub.o +R/2 
    
     In general, the tool feed 20 will move the cutter 10 in a programmed path in both the X and Z directions, and the workpiece 12 will be cut by the rounded corner, or tip, at the edge 18 of the cutter 10 engaging the workpiece 12. In such a case the distance IPR may be defined as the magnitude of the resultant path velocity F c  divided by the rotational velocity RPM of the workpiece. Also, without loss of generality, the velocity SFM may be defined as a product of the angular velocity w and the average radius R av  being approximately the radial distance from the axis of the workpiece to the center of the area of contact of the workpiece with the cutter 10. The depth of cut D may be defined generally as the effective width of the shaving or chip 16 cut from the workpiece. &#34;Chip thickness&#34; remains in all cases essentially equal to IPR. 
     II. Cutter Tip Horsepower 
     The actual machining process occurs at the cutter tip 18 and the conditions at the cutter tip have a major effect on the machining process and the quality of the resultant machined article. Aside from the controllable parameters IPR, SFM, and D, uncontrollable parameters such as the hardness and density of the workpiece material and the sharpness, temperature, and physical integrity of the cutter 10 may have primary influence on the quality of the machined article. The applicants have discovered that the actual horsepower expended at the cutter tip is a useful guide to these uncontrolled and uncontrollable parameters of the workpiece and cutter and that the actual horsepower at the cutter tip may be determined and used to regulate the machining process to improve the quality of the machined article without increasing machining time or shortening tool life. In accordance with an important aspect of the present invention, the applicants have discovered a method of determining the actual cutter tip horsepower from the horsepower consumed by the drive 17 by applying a number of corrections based on pre-determined constants which may be determined before the machining process or during an initial start-up procedure. In accordance with an exemplary embodiment, the drive 17 is an electric motor and the horsepower consumed by the drive is conveniently measured by a watt meter. Then the true power expended at the cutter tip HP cut  is derived from the measured electrical power HP m  by subtraction of the estimated (i.e., measured with precision or with some approximation) electrical resistive loss HP e , mechanical friction loss HP v , and the net power transferred to the inertial mass of the drive means and the rotating parts of the machine tool during net acceleration HPa according to: 
     
         HP.sub.cut =HP.sub.m -HP.sub.e -HP.sub.v -HP.sub.a         (2-1) 
    
     This equation is illustrated in FIG. 2, which shows that the various corrections HP e , HP v  and HP a  add up to the measured power HP m  when the cutting tool is disengaged so that HP cut  is zero. 
     The electrical resistive loss or power consumed and dissipated as heat in the motor winding circuit of the drive motor, is proportional to the characteristic resistance R e  of the motor windings and the square of the current I flowing through the drive motor: 
     
         HP.sub.e =(I.sup.2)(R.sub.e)/(746)                         (2-2) 
    
     where HP e  is in units of horsepower, I is in units of amperes, and R e  is in units of ohms. The units conversion factor of 746 is shown since it is universally recognized in the art. Although the resistance R e  is somewhat dependent on temperature, satisfactory results are obtained by assuming that the resistance of the motor is constant. The resistance R e  may be measured with an ohmmeter or may be supplied by the motor manufacturer. The drive motor current I may be continuously measured with an ammeter but for a DC drive motor satisfactory results may be obtained by measuring I indirectly from HP m  and RPM. 
     If the voltage V across the motor windings is known, then the current I is related to measured horsepower HP m  expressed in watts W m  as: 
     
         W.sub.m =(746)(HP.sub.m)                                   (2-3) 
    
     according to: 
     
         I=W.sub.m /V                                               (2-4) 
    
     By using this expression for the current, then the I 2  R loss of power, as heat, in the resistance of the motor circuit becomes: ##EQU2## 
     But the voltage V need not be measured directly since for a DC motor V is approximately a linear function of RPM up to a known base speed BS at which V assumes a constant rated voltage Vop so that: ##EQU3## The base speed BS and rated voltage Vop are constants characteristic of a given type of motor and are usually stamped on the motor nameplate by the motor manufacturer. 
     Mechanical friction loss HP v  is essentially proportional to the rotational velocity RPM of the drive 17. The friction loss predominates at a constant RPM. Satisfactory results are obtained by assuming that the total friction loss HP v  is a linear function of a pre-determined coefficient of friction Ms and intercept constant B according to: 
     
         HP.sub.v =(Ms)(RPM)+B                                      (2-7) 
    
     Ms and B are preferably determined for each workpiece by initially cycling the machine with the cutting tool disengaged up to several different constant RPMs. Then the frictional loss HP v  at each constant RPM is determined by subtracting the electrical loss HP e  from the measured horsepower HP m . A standard least squares statistical procedure computes the constants Ms and B from the various data points of RPM and associated HP v . A more precise estimate for the frictional loss HP v  could be obtained by fitting the measured frictional loss HP v  as a function of RPM to a quadratic or higher order polynomial or function of RPM. The linear function in Equation (2-7) is itself a two-term polynomial. 
     Variations in the measured power HP m  due to acceleration are very significant and since they are not solely proportional to RPM, it is very important to correct for the power devoted to acceleration HP a  whenever a feedback type control mechanism controls the machine tool in response to the measured power HP m . Otherwise the feedback control loop may become unstable since the uncompensated HP m  will contain a large differential component responsive to transients. The net power required for acceleration is proportional to the torque T and the rotational velocity RPM, but the torque T is itself proportional to a constant moment of inertia J and the time rate of change of the rotational velocity dRPM/dt according to the equations: ##EQU4## The units conversion factor of 63,000 is shown since it is well known in the art. For turning machines, the moment of inertia J is preferably determined for each workpiece since the moment of inertia in practice includes the inertial mass of the drive motor, the workpiece, and any other rotating components of the machine tool. Then the moment of inertia is determined, for example, by an initial procedure wherein the machine tool is accelerated and decelerated with the cutting tool disengaged. The net power HP a  due to acceleration is calculated from the measured drive power HP m  when RPM is changing: 
     
         HP.sub.a =HP.sub.m -HP.sub.e -HP.sub.v                     (2-11) 
    
     Thus J is computed as: ##EQU5## 
     As shown in FIG. 3A, during an initial procedure the constants Ms and B estimating the frictional loss are determined during an initial stepwise acceleration of the drive and then the moment of inertia J is calculated during a continuous deceleration of the drive. Alternatively, for a DC drive motor, the moment of inertia J is quickly calculated during a subsequent acceleration by driving the DC motor with a large stepwise change in commanded drive velocity RPM c , as shown in FIG. 3B. The DC drive motor responds automatically by continuously accelerating at a constant rate, at least so long as the rotational velocity RPM is less than the DC drive motor&#39;s base speed BS. This technique exploits the fact that a DC drive motor, as typically used in machine tools, has a constant maximum torque when operating below base speed BS. 
     Note that when the angular acceleration is constant, the time rate of change in the rotational velocity dRPM/dt is merely the time differential (RPM i  -RPM i-1 )/(t i  -t i-1 ). Thus, the moment of inertia J corresponding to the data in FIG. 3B is: ##EQU6## For the calculation and subsequent use of the moment of inertia J, the units conversion factor of 63,000 may be omitted if the factor is likewise omitted from the calculation of HP a  according to equation (2-10). An exemplary numerical procedure for precisely carrying out these calculations and corrections to measured horsepower using a numerical control unit is discussed infra under subheading V, &#34;Exemplary Embodiment of Adaptive Control Method for Controlling Cutter Tip Horsepower in a Turning Machine.&#34; 
     III. Adaptive Control of Machining Power 
     According to an important aspect of the present invention, an iterative adaptive control procedure is used to automatically control a relative machining rate control input Q in order to bring the machining power HP into conformance with a desired set point HP d . In terms of the basic controllable machining parameters SFM and IPR, the relative machining rate Q is the product of SFM and IPR. As shown in FIG. 4, the functional relation between the independent variable Q and the dependent variable HP is both non-linear and time variant. The functional relations T1 and T2, for example, are measured at respective time intervals that are themselves widely spaced in time compared to the duration of the time intervals. Thus it is impossible to know in advance what value of commanded relative machining rate Q is needed to achieve a desired set point HP d , due to the fact that there are other variables such as workpiece and cutter conditions that have a variable influence on the machining power HP. 
     As described in detail below, a machining parameter called the relative cutting efficiency CEFR as well as the relative machining rate Q are defined independently of the depth of cut D. The relative cutting efficiency CEFR is directly proportional to the actual cutting efficiency factor CEF if the depth of cut D is assumed to be constant. Similarly, the relative machining rate Q is directly proportional to the actual machining rate dC/dt if the depth of cut D is assumed to be constant. Consequently, the terms &#34;relative cutting efficiency&#34; and &#34;relative machining rate&#34; encompass the respective terms &#34;actual cutting efficiency&#34; and &#34;actual machining rate&#34;. Any machining operation, for example, that is responsive to the actual cutting efficiency factor CEF necessarily is responsive to the relative cutting efficiency factor CEFR since the former is even more rigorous than the latter. 
     The applicants have discovered that the commanded relative machining rate Q required for a desired set point machining power HP d  may be rapidly determined by an iterative procedure wherein the next value of commanded relative machining rate Q i  is determined from the present value of relative machining rate Q i-1  and the current measured value of machining power HP according to the iterative equation: 
     
         Q.sub.i =(Q.sub.i-1)(HPd)/(HP.sub.i-1)                     (3-1) 
    
     FIG. 4 illustrates graphically the solution to the iterative equation. Starting from a present value of relative machining rate Q 0 , the present value of the machining power HP 0  is determined from the curve at T1 on the operating point OP 0 . The iterative formula is equivalent to a linear extrapolation from the operating point OP 0  along a line L 0  through the origin to the horizontal set point line L d . The intersection of line L 0  and L d  has an abscissa that is the next value of relative machining rate Q 1 . Repeating this graphical procedure, one finds that the next value of machining power is HP 1  and that at the end of the second iteration, a value of relative machining rate Q 2  is attained that is almost exactly the relative machining rate required for the set point HP d . It should be noted, however, that even if the set point HP d  is not changed, at some other time the functional relation T2 between the independent variable Q and the dependent variable HP may change from T1 to T2 (e.g., if the workpiece material becomes less hard) but the iterative procedure will automatically readjust the relative machining rate Q to achieve the set point HP d . 
     In terms of a procedure in a numerical control unit, the simplified flowchart for the method is shown in FIG. 5A. The control loop consists of two main steps, a calculation step 30 which adjusts the value of the commanded relative machining rate Q by the ratio of the value of the set point HP d  to the value of the machining power HP, and a time delay 31. The time delay is required in order to insure stability. The delay time must be longer than the time delay during which it is certain that the machine tool will respond to the commanded relative machining rate. Otherwise, there will be overshoot and oscillation in the step response of the system. 
     For a vertical turret lathe such as is shown in FIG. 1B, the response time of the spindle drive 17 is about 0.1 second and the response time of the tool feed 20 is approximately 0.01-0.02 second. So that the machine tool will properly respond to a change in commanded machining rate, the time delay 31 must be set to at least approximately four times the response time of the tool feed 20 or the spindle drive 17, depending on whether the tool feed or the spindle drive is adjusted to change the machining rate. But then the time delay 31 is substantial compared to the response of the overall adaptive control. If, for example, the machining parameters of the workpiece at the cutting interface change just after a new machining rate Q is calculated, the adaptive control could not possibly respond until after the time delay 31 and the next value of the machining rate is calculated. The time delay 31 is inherent, and cannot be compensated for by increasing the gain of the loop. Furthermore, the gain of the adaptive controller varies inversely proportional to changes in the time delay 31, as is shown in section IV below. 
     For machine tools it is possible to distinguish between the commanded value of machining rate Q c  and the actual or measured value of machining rate Q m  so that the gain of the adaptive control system can be made independent of the time delay 31. As shown in the preferred procedure of FIG. 5B, the time delay 31 may be eliminated by calculating the commanded machining rate Q c  as the product of the actual or measured machining rate Q m  and the ratio of the desired horsepower HP d  to the actual or measured horsepower HP. Elimination of the time delay gives significantly improved results since substantial changes in machining parameters of the workpiece at the cutter interface may, in some situations, occur within intervals of time shorter than the response time of the tool feed and spindle drive. 
     A block diagram of the preferred machine tool control system using the method of FIG. 5B is shown in FIG. 5C. The components are identified in terms of a generalized system comprised of an adaptive controller using a ratio calculator 33a to control a machine tool comprising the tool feed and drive 33b, an adjustment sensor 33c, the machining process 33d, and the power measurer such as a wattmeter 33e. In general terms, the machine tool is the controlled physical system or &#34;plant,&#34; and the tool feed and drive 33b is an &#34;adjustment device&#34; regulating the &#34;process&#34; 33d. The wattmeter 33e is a &#34;process sensor&#34; measuring the response of the process 33d to the adjustment device 33b. Note that in the machine tool field alterative process sensors could measure the force, temperature or vibration of the cutting tool in response to machine tool adjustments. In other words, for machine tools the process sensors preferably indicate various machining difficulties which increase with increased commanded machining rate. For mills or grinding machines, for example, the lateral force on the mill or the normal force on the grinding wheel, while not strictly proportional to the drive horsepower, may be a better indication of machining difficulty than the spindle or drive horsepower used in rotating the mill or grinding wheel against the workpiece. 
     The method of FIG. 5B is preferable to the method of FIG. 5A whenever the response time or time constant τ a  of the adjustment device 33b is substantial in comparison to the response times τ m  and τ ms  of the process 33d and the process sensor 33e. The input Q c  produces the physical variables (e.g. RPM, and feed F) which are outputted by device 33b to form, in effect, the input to the process 33d; and in many cases such physical variables are easily measured by an adjustment sensor 33c having a negligible or a relatively short time constant τ as . The method of FIG. 5B would find useful application, for example, in controlling a nuclear reactor, wherein the adjustment device 33b positions a control rod, the process is a fission reaction, the commanded value Q c  is a control rod position, and the process sensor 33e measures neutron flux which is the plant parameter to be controlled. The method of FIG. 5B may also be advantageously utilized in the control of machine tools, and especially turning machines, as described in greater detail below. 
     Generally speaking, the control procedure and system of FIGS. 5B and 5C is the preferred form of the invention for controlling turning machine tools. The preferred form illustrated by FIGS. 5B and 5C (also FIG. 13A&#39;, later described) acts with immunity from influence caused by the dynamic response time τ a  of the adjustment device 33b. That is, the dynamic response time τ a  has no effect on total open loop gain, and in consequence the sample time Δt of a computer-implemented iterating system may be chosen without regard to such sampling time per se adversely influencing total system stability. Moreover, by choosing short sample times, a given plant (e.g., a given machine tool) may be adaptively controlled as to a given parameter (e.g., horsepower) with total loop lags or delays which are less with the FIG. 5B method than with the FIG. 5A method. 
     The common thread and generic advantage in the method embodiments illustrated by both FIG. 5A, on the one hand, and FIGS. 5B, C on the other hand, is that the ratio of set point value to the actual value of the controlled parameter results in a controller having what is, in effect, a variable gain that changes automatically to compensate for the time-variant and unforseeable changes in the transfer function of the controlled plant. While variable gains have been used in prior art systems for application to an error quantity created by subtracting an actual parameter value from a desired set point value, such subtractive error systems involve more complicated apparatus and manipulative steps. Using either a previously established commanded value or an adjustment sensor (33c) to estimate the value of the controlling physical variable, the ratio technique here described avoids the need for any modeling and provides a control system which responds rapidly to changes in plant characteristics. 
     In the controlling of machine tools such as the vertical lathe illustrated in FIG. 1B, the iterative method illustrated in FIG. 4, FIG. 5A and FIG. 5B has a theoretical basis in terms of a machining parameter known as the &#34;cutting efficiency factor&#34; CEF. Despite variations in feed velocity F c  and rotational drive velocity RPM, the amount of energy required to remove a unit volume of material (here denoted CEF v ), is fairly constant for a given cutting tool with a given degree of sharpness acting on a given workpiece material. Mathematically: ##EQU7## 
     Note that no system of units is specified in Equation (3-2). Thus for CEF v  to be expressed in terms of absolute units such as kilowatt-hours per cubic inch, the units of HP, SFM, IPR and D must be specified to determine a corresponding units conversion factor K f . For CEF v  in kilowatt-hours per cubic inch, HP in horsepower, SFM in feet per minute, and IPR and D in inches, the conversion factor is: ##EQU8## 
     It is reasonable to assume that the depth of cut D is generally constant and the units conversion factor is ignored so that a &#34;relative&#34; cutting efficiency factor CEFR may be defined as: ##EQU9## Note that when efficiency or sharpness of a cutter decreases, CEFR increases, and thus CEFR is a numerical measure of the cutting inefficiency. The same effect occurs as the workpiece material become harder in the sense of machinability. 
     The problem of adaptive control of a turning machine involves the determination of control signals to adjust controllable machining parameters such as feed velocity F c  and drive velocity RPM so as to obtain a desired machining power HP d , despite changing machining parameters that cause the actual machining power HP to deviate from the set point machining power HP d , and while keeping machining parameters such as IPR and SFM within specified limits or constraints. According to an important feature of the present invention, the required new values for the controllable machining parameters are calculated with the assumption that the parameter CEFR, at the time the machining parameters are measured, will be the same in value when the system reaches the desired operation at the power setpoint HP d . In fact, there may be some variation at the cutter interface and in CEFR. The assumption results, however, in rapid convergence of the measured machining power HP into agreement with the desired machining power HP d  since the effective variation in CEFR is only a fraction of the variation in the machining power HP due to speed and feed changes. 
     For the turning machine here treated as a specific example, the parameter CEFR is calculated from sampled values IPR m  and SFM m  : 
     
         IPR.sub.m =F.sub.c /RPM.sub.m                              (3-6) 
    
     
         SFM.sub.m =2π(R.sub.m)(RPM.sub.m)                       (3-7) ##EQU10## Then a relative machining rate may be calculated that will achieve a desired power HP.sub.d if CEFR does not actually change: ##EQU11## This Equation (3-9) gives a unique value for the relative machining rate Q.sub.c so that the product of IPR.sub.c and SFM.sub.c is defined. By picking a value for one of the latter commanded variables, the other may then be computed, and both applied as inputs to the control system. In some cases, constraints may be imposed to determine the specific values of IPR.sub.c and SFM.sub.c. Some constraints are dictated by the machining process itself because of the workpiece material, the cutting tool composition and the cutting tool geometry. For the turning lathe here treated as a specific example, a maximum limit, IPR.sub.max, for a given depth of cut D specifies a maximum cross-sectional area A of the workpiece material shavings 20 and thus the maximum force on the cutter tip 18. Exceeding IPR.sub.max may cause excessive chatter of the tool 10, preventing precise machining, and causing excessive tool wear or breakage. A minimum IPR, here called IPR.sub.min, should always be maintained so that the shavings 20 break into chips 16 rather than long strips, thus preventing a large mass of shavings from accumulating and clogging the machine tool. A maximum SFM, here called SFM.sub.max should not be exceeded since the friction at the cutter tip 18 results in a heating effect proportional to SFM, and excessive heating may burn the cutter tip and quickly dull the edge of the cutter. Thus cutter manufactures usually specify an SFM.sub.max for cutters of various compositions. A minimum SFM, SFM.sub.min, may also be specified. If operation of the turning machine below some minimum point (IPR.sub.min, SFM.sub.min) is required so as not to exceed HP.sub.d, then the cutter 10 is probably dull and should be replaced. These four constants for the maximum and minimum values are selectable by a skilled machine operator or programmer; and for any given cutter and workpiece material they are manually keyed, or read with part program data, into the memory of a numerical control system. 
    
     As shown in FIG. 6, the area bounded by the critical points (IPR min , SFM min ) (IPR max , SFM min ) (IPR max , SFM max ), (IPR min , SFM max ) represents a rectangle 34 of permissible operation. Curves Q 1 , Q 2 , Q 3  illustrate a family of curves, each of which defines the locus of constant horsepower as the product Q=IPR·SFM remains constant when IPR and SFM take on different values, providing that workpiece-cutter interface conditions, and thus CEFR, remain constant. If CEFR decreases or increases, any given one of the Q curve family then represents constant horsepower of a lower or higher magnitude. 
     In accordance with the present invention, if the existing actual values IPR m  and SFM m  (and thus Q m ) produce an actual horsepower HP which differs from the set point HP d , then a new Q c  is determined from Equation (3-9), a value of IPR c  (or SFM c ) is picked, and the other commanded value SFM c  (or IPR c ) is computed. For the exemplary constraint rectangle 34 of FIG. 6, both such commanded values are limited to reside in or on the rectangle as successively new commanded values direct the system to operate on different ones of the family of Q curves, it being assumed that CEFR remains constant. If conditions change at the workpiece-cutter interface (e.g., the tool becomes duller), and a horsepower error arises, the corrective action of Equation (3-9) readjusts IPR c  and/or SFM c  to a point on the applicable Q curve which results in elimination of the error. 
     The inventors have discovered that it is desirable, in actual practice, to operate the machine tool with the lowest IPR consistent with the objective of making actual horsepower equal to the set point HP d . This reduces the forces on, and alleviates vibration at, the cutter tip for any given operating value of horsepower. Thus, once a new commanded value Q c  is determined from Equation (3-9), a value of SFM is picked to equal the maximum value SFM max  represented by the line 38 in FIG. 6, and a corresponding value of IPR c , as required to produce Q c  in the machine, is determined from Equation (3-9). If this procedure results in a computed IPR c  which is less than IPR min , the operating point is restricted to lie on the minimum constraint line 39. If the minimum product point 36 (here, Q 1  =IPR min  ·SFM min ) is reached, corrective action is taken such as a &#34;feed hold&#34; which terminates machining or reversing the direction of the tool feed velocity F c  so that the cutter tool 10 is disengaged from the workpiece 12 and may be replaced with a sharp tool. Alternative corrective action could comprise only stopping the feed or drive, or merely displaying a suitable message to the operator. A &#34;feed hold&#34; could also be executed only upon the minimum product point being reached a preselected number of times within a preselected time period. 
     In the preferred embodiment, the selection of one commanded value and the computation of the other commanded value (namely, the values of IPR c  and SFM c ) is carried out according to the range in which the computed value of Q c , from Equation (3-9), falls: ##EQU12## 
     The machine controllable parameters then are determined from IPR c  and SFM c  : 
     
         RPM.sub.c =SFM.sub.c /2πR.sub.m                         (3-14) 
    
     
         F.sub.c =(IPR.sub.c)(RPM.sub.m)                            (3-15) 
    
     It should be noted that in (3-10) a message &#34;HP UNDER UTILIZED&#34; is displayed to the operator to indicate that the machining process is limited by IPR and SFM constraints rather than the desirability of operating at the operator-selected or part-program selected set point horsepower HP d . No corrective action need be taken, but the operator could consider increasing the IPR max  and SFM max  constraints via manual override controls, described further below. The operator could also consider whether the actual or programmed depth of cut is too small. 
     In Equation (3-11) it should be noted that for operation on the constant SFM segment 38 of FIG. 6, SFM m  will equal SFM max  so that: ##EQU13## In other words, the commanded value of the feed rate is obtained by multiplying the measured value of the feed rate by the ratio of the desired horsepower to the measured horsepower. Similarly, in Equation (3-12) for operation on the constant IPR segment 39, IPR m  will equal IPR max  so that: ##EQU14## 
     A schematic of an exemplary control system according to the control method of the present invention is shown in FIG. 7 driving a conventional vertical turret lathe generally designated 40. Operation of the lathe is performed by three motors; a drive motor M d , an X direction tool feed motor M x  and a Z direction tool feed motor M z . These motors are driven by control signals RPMVC, VMX, and VMZ respectively. The feed motors, M x , M z  are driven directly by servo drive amplifiers 41 and 42 respectively. The drive motor M d  is controlled by a separate analog feedback loop which receives a drive tachometer signal RPM m  for comparison to the control signal RPMVC using a differential drive amplifier 43 so that the drive control signal RPMVC commands a particular RPM value. As in conventional turret lathes, resolvers, Inductosyn devices, or pulse generators working into counters generate position indicating signals XAP, ZAP representing the actual position of the cutter tool, so that the velocity and position of the tool feed can be determined and precisely controlled. 
     The components of the vertical turret lathe generally designated 40 described above are well known in the art. In accordance with an important aspect of the present invention, an electronic wattmeter generally designated 44 senses the electrical power consumed by the drive motor M d  and generates a power sensing signal W m  which indicates measured drive power. A suitable electronic wattmeter is the OSIDC Watt Transducer model PC8-4-04 manufactured and sold by Ohio Semitronics, 1205 Chesapeake Avenue, Columbus, Ohio 43212. Other components of the system in FIG. 7 have the same physical appearance and construction as components well known in the art, such as an operator station terminal 45 having a keyboard 91 and cathode ray tube display 92, a part program tape drive 46, and a numerical control unit 47 having an input analog to digital (A/D) converter 48 and an output digital to analog (D/A) converter 49. The numerical control unit 47, however, is configured in a novel fashion by stored programming in a form schematically represented by the functional components generally designated 50. These functional components comprise a part program 51, an axis control unit 52, and an adaptive control unit 53. 
     In accordance with an important aspect of the present invention, the adaptive control unit 53 receives a set point signal HP dp , and several control values IPR cp , SFM cp  comprising the maximum and minimum limits for IPR and SFM, and compares these programmed values to the actual cutter tip horsepower calculated from the watt meter signal W m , the cutter position signals XAP and ZAP and the drive tachometer signal RPM m , to generate command signals IPR c  and SFM c  in order to adaptively control the vertical turret lathe 40 so that the actual cutter tip power is maintained as closely as possible to the set point HP dp . The axis control 52 receives the command signals IPR c  and SFM c  and also the position signals ZAP, XAP and generates machine control signals ZVC, XVC and RPM c  that adjust the motor drive signals VMX, VMZ and RPMVC, so that the machine tool contours the workpiece according to a contour programmed in the part program memory 51 as X and Z coordinates XCEP, ZCEP. The axis control 52, however, also receives some miscellaneous MISC commands from the part program 51 in order to perform interpolation and some control functions peculiar to the adaptive control method of the present invention. 
     It should be noted that although the functions generally designated in the block 50 are schematically shown, the hardware for performing these functions has the general appearance of a numerical control unit generally designated 50&#39; in FIG. 8. The numerical control unit has, for example, input registers 55, output registers 56, a central processing unit 57 which performs logical and algebraic functions, and a memory generally designated 58 for storing constants, variables, machine instructions and other data at predetermined addresses. In accordance with an exemplary embodiment of the present invention, the memory 58 is subdivided into three main parts; the part program memory 51, a working memory of constants and variables 59, and an adaptive control procedure memory 60 containing a sequence of instructions for execution by the central processing unit 57 in order to configure the numerical control unit 50&#39; in the functional form generally designated 50. 
     The part program 51 is organized into a sequence of blocks, with each block being associated with the movement of the cutting tool between two pairs of X, Z coordinates. In each block a pair of target coordinates (XCEP, ZCEP) is stored. Also each block contains block constants describing how the numerical control unit 47 will function during the time that the cutter is moving to the target coordinates of a particular block from the last set of target coordinates. It should be noted that each time a new pair of target coordinates is read from the part program 51, the block constants, such as IPR min , IPR max , SFM min , SFM max  and the set point HP dp  are also read and transferred with the target coordinates to the constant and variable storage 59. Although these block constants may change between blocks in the part program memory 51, they are essentially constant as far as the adaptive control procedure is concerned. 
     The general configuration of the adaptive control procedure follows the conventional configuration of an executive program, numerous subroutines called by the executive program, and a few interrupt routines which are automatically executed at periodic rates. The precise set and sequence of instructions in the adaptive control procedure, however, is highly detailed, the details being a matter of the programmer&#39;s choice. An exemplary embodiment of the instruction sequence is discussed infra in sub-heading V, &#34;Exemplary Embodiment of Adaptive Control Method for Controlling Cutter Tip Horsepower in a Turning Machine.&#34; 
     The functions generally designated 50 in FIG. 7 may be expanded to include more detail and additional features as shown in FIG. 9. The AXIS control 52, in particular, has a functional block 61 for generating the rotational velocity control signal RPM c  from an SFM control signal SFM o  by essentially dividing the value of SFM o  by the radius R m  measured in terms of the actual X coordinate position XAP. The AXIS control 52 also has an interpolator 62 which generates the cutter feed control signals XVC and ZVC so that the desired cutter coordinates XAP, ZAP track the programmed cutter coordinates XCEP, ZCEP in a desired fashion and so that the cutter tool is driven at a resultant feed velocity F c  set by the control signal IPR o . 
     FIG. 9 also includes an override function 63 which receives a scale factor KI o  from an &#34;AXIS&#34; control 64 and a scale factor KS o  from a &#34;SPEED&#34; control 65 and scales the command signals IPR c  and SFM c  from the adaptive control unit 53&#39; to generate the control inputs IPR o , SFM o  to the axis control 52 according to: 
     
         IPR.sub.o =(IPR.sub.c)(KI.sub.o)                           (3-16) 
    
     
         SFM.sub.o =(SFM.sub.c)(KS.sub.o)                           (3-17) 
    
     The AXIS control 64 and SPEED control 65 may be potentiometers, digital controls or thumbwheel switches for directly entering the values KI o , and KS o  or numeric values for KI o , KS o  may be keyed in from the operator station 45. In either case, the AXIS 64 and SPEED 65 controls correspond to override controls conventionally used to allow the machine operator to introduce &#34;override&#34; adjustments on the &#34;SPEED&#34; or SFM or the &#34;AXIS&#34; or IPR parameters to vary the machining rate Q. The controls 64 and 65 are typically calibrated in terms of a percentage factor to be applied to the programmed IPR and SFM. 
     In accordance with an important feature of the present invention, the adaptive control unit 53&#39; receives the scale factors KI o  and KS o  as inputs so as to be compatible with user adjustable override controls 64, 65 for adjustment of the desired machining power by independently scaling the individual machine control input signals IPR o , SFM o , despite the general tendency of the simplified adaptive control unit 53 of FIG. 7 to compensate for gain variations in the response of the machine to the individual control signals IPR o , SFM o . By way of example, if the adaptive control unit 53 of FIG. 7 is used in place of the adaptive control unit 53&#39; of FIG. 9, then if the operator reduces IPR o  and SFM o  by setting, for example, the AXIS and SPEED controls to 50% corresponding to a value of one-half for KI o  and KS o  then the AXIS control would initially reduce the feed velocity signals XVC, ZVC and RPM c  by 50%, but the resulting reduction in machining power sensed from the corresponding reduction in the measured cutter tip horsepower would cause the adaptive control unit 53 to increase the control outputs IPR c , SFM c  until the AXIS control inputs IPR o , SFM o  were increased to their initial values before the AXIS 64 and SPEED 65 adjustors were turned down. 
     Applicants have discovered that this undesirable tendency of the adaptive control unit to cancel any operator&#39;s override adjustment may be eliminated by also feeding the scale factor signals KI o  and KS o  to the adaptive control unit 53&#39; and using these scaling factors to adjust the comparison of the machining horsepower to the programmed or primary set point HP dp . The adaptive control unit 53&#39; functions, in effect, to scale and hold the programmed set point HP dp  by the same scaling factors to arrive at the corrected and actual horsepower set point HP d . The preferred method of interfacing the conventional AXIS 64 and SPEED 65 adjustors to the adaptive control unit 53&#39;, so that the latter does not restore IPR o  and SFM o  to values originally existing before any change in the scale factors KI o  and KS o , is to create the horsepower set point signal HP d  by multiplying the &#34;programmed set point&#34; HP dp  by the factor (KI o )(KS o ) according to the relation: 
     
         HP.sub.d =(KI.sub.o)(KS.sub.o)(HP.sub.dp)                  (3-17) 
    
     If the AXIS factor KI o  is reduced from 100% to 90%, for example, when the adaptive control is operating on the constant SFM max  line 38 in FIG. 6, then IPR o  is reduced 10% by the change in KI o  and causes the actual feed velocity F c  to be reduced by 10%; the measured cutter tip power HP m  will drop by about 10% due to this reduction in feed rate, but the set point horsepower signal HP d  as formed according to Equation (3-17) also drops by 10%. Since the constant SFM control Equation (3-11) sets IPR c  proportional to HP d  /HP m , IPR c  will not significantly change. This leaves the adjustor 64 effective to produce IPR o  reduced by 10% from its original value and the system operates with its horsepower set point HP d  automatically reduced by 10% from its original value. In general, the compensation according to Equation (3-17) causes the commanded values IPR c  and SFM c  to remain essentially unchanged so that the values of IPR o  and SFM o  are scaled by manipulation of the adjustors 64 and 65--and this is accompanied by scaling the programmed horsepower primary set point signal HP dp  by the same factors to arrive at the final and effective horsepower set point HP d . 
     IV. Generalized Adaptive Control Methods 
     In light of the foregoing, it may be now understood that the invention is more broadly characterized than the exemplary embodiment of a control system for a machine tool. As shown in FIG. 10A, the conventional feedback control for a physical system 70, termed the &#34;plant&#34; in control theory, having a transfer function G P (s) arithmetically compares the system output M to a set point value m using a comparator 71 to arrive at a difference signal (m-M) which is processed by a control function G C (s) in a &#34;controller&#34; 72 to generate an input signal I p . The system output M may be solved for in terms of the set point m according to: 
     
         G.sub.p(s) =M.sub.(s) /I.sub.p(s)                          (4-1) 
    
     
         I.sub.p(s) =G.sub.C(s) (m.sub.(s) -M.sub.(s))              (4-2) 
    
     
         M.sub.(s) =G.sub.C(s) G.sub.P(s) (m.sub.(s) -M.sub.(s))    (4-3) ##EQU15## 
    
     The subscript (s) denotes that all of the variables are frequency-dependent and may be analyzed in the Laplace domain. Thus Equation (4-4) shows that for the output M to track or follow the set point m, it is desirable for the magnitude of the control function G C (s) to be as large as possible so that the open loop gain, defined as G C (s) G P (s) is large. But the magnitude of the control function cannot be made arbitrarily large because in practice there is a frequency-dependent phase shift in the plant transfer function G P (s) so that at some frequency, the open loop gain is -1 and the denominator in Equation (4-4) goes to zero, thereby signalling instability. In practice, the control function G C (s) may be made frequency dependent so as to counteract or compensate the phase shift in the plant transfer function G P (s). One typical method of selecting the control gain G C (s) to compensate an arbitrary plant transfer function is to use an integrator having a frequency dependency according to: 
     
         G.sub.C(s) =k/s                                            (4-5) 
    
     Then the performance of the feedback control system may be simply but conveniently characterized by k, termed the &#34;response factor,&#34; since k describes how fast the input I p  responds to the error (m-M) according to: 
     
         dI.sub.p /dt=k(m-M); sI.sub.p(s) =k(m.sub.(s) -M.sub.(s))  (4-6) 
    
     In practice, it is desirable to set the response factor k to as large a value as possible while simultaneously achieving stability. 
     A specific problem recognized by the applicants in the field of machine control is that if the machine tool is represented by a plant transfer function G P (s), the transfer function is time variant and in particular its magnitude even at very low frequencies is highly variable so that the optimum value for k in Equation (4-5) is also time variant. The applicants recognized that although this is true for machine tools, as exemplary embodiments of a control system particularly adapted to machine tools have been described supra, there are other time variant systems in which the control system according to the present invention is useful. 
     As shown in FIG. 10B, the applicant&#39;s invention corresponding to the method of FIG. 5A may be adapted to the arbitrary system or plant 70 by the use of a calculator 73 which performs a ratio type rather than a difference or error comparison. In other words, the applicants have discovered that an error signal may be conveniently generated by dividing the target value m by the output M rather than just by subtracting the output M from the target value m. In FIG. 10B, the calculator 73 is interfaced to the plant 70 and set-point or target m by samplers S1, S2, S3 and S4. The samplers provide a delay function so that the output I p  &#39; of the calculator is never fed back directly to the input I po . Preferably the input samplers S1, S2, and S3 are periodically switched in opposite phase to the output sampler S4, the sampling period being denoted Δt. The combination of the calculator 73 and the samplers S1-S4 may be embodied in an iterating, computer-implemented numerical control unit with executive programming (to be described), the numerical control unit having input and output A/D and D/A converters such as shown at 48 and 49 in FIG. 7. 
     To perform the calculator 73 functions indicated in FIG. 10B, the procedure shown in FIG. 10C is executed by the numerical control unit. The first step P1 is for the numerical control unit to assume and send in an initial value for the input I p  &#39;. After waiting a delay time for the output M of the system 70 to respond to the input I p  &#39; as shown in step P2, the numerical control unit in step P3 samples the set point m and the system output M. In step P4, the numerical control unit adjusts its value of I p  &#39; by the ratio of the sampled, actual value of the set point m o  divided by the sampled value of the system output parameter M o . In step P5, this adjusted value is outputted to the system. The iterative loop is completed by returning to step P2 to wait for the system output M to respond to the new input I p  &#39; before continuing. 
     To compare the iterative control system and procedure of FIGS. 10B and 10C with the prior art system of FIG. 10A, the algebraic comparison of the calculator equation of the numerical control unit equation in step P4 may be mathematically converted to differential form to arrive at a subtractive expression for error: ##EQU16## Thus, the embodiment of the invention shown in FIG. 10B is somewhat analogous, in result but not in method or apparatus, to a subtractive error, integrator type controller; but in startling contrast to such an integrator type controller, the present invention results in a response factor k a  being automatically set inversely proportional to the plant gain G p  ≈G p (s) at s=0, i.e., for the low frequency range of the plant transfer function. Somewhat surprisingly, the response factor k a  for the apparatus of FIG. 10B is also inversely proportional to the sampling period Δt. This may be undesirable in some cases because one may wish to make Δt as small as possible in order to have the value of the input I p  to the plant change nearly continuously. On the other hand, the FIG. 10B embodiment in theory removes any error in a single iteration (unlike the integrator of FIG. 10A), and should result in full convergence of the control parameter actual values to the set point after only a few iterations. 
     To secure the advantages of the present invention while at the same time permitting a short sampling interval Δt, the procedure of FIG. 5B and the apparatus embodiment of FIG. 5C may be used. By that procedure, the effect of the sampling period Δt on the gain or response factor k a  is eliminated. Thus, Equation (4-12) with the term Δt removed becomes applicable. The response factor k a , in effect, becomes automatically inversely proportional to the process transfer function where Q m  is treated as the process input and Q c  is the input command to the adjustment device 33b. Since the iteration periods can now be quite short, the apparatus of FIG. 5C applied to the control of a given process can be made to operate with the aggregate of lags or delays around the closed loop smaller than such aggregate in the apparatus arrangement of FIG. 10B. 
     As another alternative to secure an effective response factor inversely proportional to plant gain, but permitting short sampling periods Δt, the calculator 73 in FIG. 10B may be modified also to perform an interpolation or digital filtering function, for example, according to: ##EQU17## or equivalently: ##EQU18## where N is a user-selected number of sampling periods required to effectively determine the operating point for the plant. Equations (4-13) and (4-14) can be converted to differential form to show that the response factor for interpolation or filtering is reduced inversely proportional to the product of Δt and N according to: ##EQU19## Thus it can be seen that the response factor k an  can be made arbitrarily small by making N arbitrarily large. In practice, other known methods of interpolation and digital filtering may be used, as is illustrated and described below in conjunction with the subroutine FILTER of FIG. 13F, generally designated 210. 
     It should be noted that the numerical control step P4 of FIG. 10C may be put into differential form, thereby making the arithmetic comparison explicit according to: ##EQU20## For interpolation, the step P4 in the numerical procedure is: ##EQU21## or equivalently in terms of a single step according to: ##EQU22## 
     Summarizing Equations (4-1) to (4-21), it has been shown that the ratio control method of the present invention provides a controller response factor which changes automatically so as to be inversely proportional to the transfer function of the controlled plant--at least for zero or the lower ranges of frequencies encountered. When the plant gain and transfer function are, as here, unforeseeably time variant, such inverse change of the controller response keeps the system parameter in agreement with the set point. In terms of understanding this advantageous operation, it may be seen that the method and apparatus of the present invention produces the same sort of performance results as a subtractive error system (FIG. 10A) with a controller 72 having an integrator that somehow automatically time varies its integration factor k a  such as to keep the latter always inversely proportional to the plant transfer function. 
     The override feature of FIG. 9 may, of course, be incorporated into any embodiment of the present invention. This has been illustrated by the generalized showing in FIG. 10D wherein the calculator 73&#39; responds also to the human operator-adjusted value of the scale factor k s  by taking the ratio of I po  and I pco  and scaling the primary set point m o  to arrive at the effective set point m&#39;. To generalize the use of the override feature for any kind of calculator control function f n , FIG. 10E mathematically asserts that the set point argument of the control function f n  is scaled by the product ##EQU23## of all of the scale factors. This is a sufficient condition to insure that a change of scale factor ks n  will scale the system output M by the same scale factor ks n  since in the linear case the output M is initially scaled by the factor ks n  and a linear change in the argument M o  of the calculator function f n  will be balanced by the linear change in the m o  argument of the function so that the control values I&#39; pn  will not change. A noteable feature of the system of FIG. 10E is that even if the iteration time Δt is very long, the system output M responds immediately to adjustments of the override controls ks, and the calculator 73&#34; responds to any change in gain of the system 70&#39; and apportionment of the control signals I p1  . . . I pN  selected by the ratios of the respective scale factors ks 1  . . . ks N . 
     V. Exemplary Embodiment of Adaptive Control Method For Controlling Cutter Tip Horse Power in the Turning Machine 
     Now that the invention has been described functionally and in its broadest aspects, it should be apparent that it may be implemented in a variety of specific embodiments. To illustrate how a specific embodiment is reduced from a general functional description, a preferred exemplary embodiment for adaptive control of the actual cutter tip horsepower in a turning machine will be described in detail. In other words, the functional descriptions illustrated in FIG. 2 to FIG. 9 will be precisely defined by describing a particular adaptive control procedure for the instruction memory 60 which may be executed in the numerical control unit 50&#39; of FIG. 8. Also, the miscellaneous signals MISC shown in FIG. 9 will be described in detail further including soft engagement, disengagement, and tool monitoring functions such as tool breakage detection, tool wear, and tool protection. 
     The interface between the user and the exemplary embodiment is the operator station 45 in FIG. 7 which has a keyboard 91, a cathode ray tube display 92 and an override control panel 93 as shown in FIG. 11. The operator is informed of whether the adaptive control is off or on and is given the numerical values of the machining power in terms of HP m , HP v , HP a , HP e , and HP cut  averages corresponding to the columns MTR, VEL, ACC, IIR, and CUT in FIG. 11. Associated with SFM are the variables SFM min , SFM o , SFM max , HP dp  and HP d  corresponding to the column entries MIN, ACT, MAX, PROG HP and DES HP in FIG. 11. Associated with IPR, the parameters IPR min , IPR o , IPR max , and RPM are the column entries MIN, ACT, MAX and RPM in FIG. 11. 
     Also of relevance to the design of the exemplary embodiment for the control procedure is the actual timing involved in sampling the system inputs and outputs and set points. As shown in FIG. 12, the control inputs IPR c  and SFM c  are updated every two seconds. After a time delay of one second for the turning machine to respond to the change in inputs, the measured horsepower HP m  is sampled at 16 points spaced 64 milliseconds apart to form an average suitable for use in the adapative control calculations. After the measured horsepower HP m  is obtained, the set point HP d  is compared to the actual cutter tip horsepower HP cut  derived by correcting the measured horsepower HP m  and then the control inputs IPR c  and SFM c  are adjusted in an amount that is estimated to bring the machining power HP cut  into agreement with the desired set point HP d . 
     In its broadest aspects, the adaptive control procedure is defined by an executive main program that contains the iterative adaptive control loop as shown in FIG. 13A. The executive program is started when the turning machine is turned on or when a reset switch is activated. The first step 100 is for the numerical control unit to display a system ready message on the cathode ray tube of the operator station terminal. Then in step 101, the numerical control unit continuously scans the cycle start switch that is conventionally used on machine tools. When the numerical control unit determines that the cycle start switch is depressed in step 102, it knows that the machine operator has inserted a workpiece in the turning machine and has correctly inserted and adjusted a cutter in the tool holder. Then in step 103, the numerical control unit initially sets a number of software switches (i.e., flags) and accumulators to initial values and enables the interrupts which perform the background functions that are continuously and repetitively performed at 64 millisecond and 32 millisecond intervals. These switches and accumulators specifically are the adaptive control mode switch AC which provides a method of terminating the adaptive control loop upon an improper tool condition, the feed hold switch FH which tells the interrupt routines to execute a feed hole, a program constants determination switch for velocity PCDV which tells the interrupt routines to determine the velocity constants Ms and B, the program constant determination acceleration switch PCDA which tells the interrupt routines to calculate the moment of inertia J, the counter NC used to determine if there is a sufficient number of initial cut horsepower samples to use as a threshold for tool monitoring, an index PPROG to a current block in the part program memory, a switch NEWB used to determine whether a new block should be read from the part program memory, and the initial values SFM c  and IPR c  of SFM And IPR respectively. All of these switches and accumulators are turned off or set to zero, except for the AC switch which is turned on with SFM c  set to zero and IPR c  set to zero for the initial program constants determination, and the new block switch NEWB and new tool switch NEWT which are turned on so that the first part program block will be read and so that the cutting efficiency factor for the new tool will be measured. 
     After the interrupts are enabled, the subroutine PCD is called in step 104 to determine the moment of inertia J, friction slope constant Ms and friction intercept constant B. Once these initial constants are determined, the adaptive control calculations are performed in step 105 by inputting the current values of the rotational velocity RPM m , the actual position coordinates of the cutter tip XAP, ZAP, and the user-adjusted override factors KI o  and KS o . The desired horsepower setpoint HP d  is calculated as a product of a programmed horsepower HP dp  and the user adjusted factors KI o  and KS o . Then the relative machining rate Q (forming an updated commanded value called Q c  in Equation (3-9)) is calculated as the product of IPR c  and SFM c  adjusted by the ratio of HP d  to AVHP cut  (the latter representing determined actual cutter tip horsepower). Since IPR c  and SFM c  are used to calculate Q at step 105 in FIG. 13A, the method of FIG. 5A is being used rather than that of FIGS. 5B and 5C. The examplary embodiment of FIGS. 13A and 13F includes the digital filtering and an added two-second waiting delay, as mentioned with respect to FIGS. 5A and 10B. 
     As shown at 105 (FIG. 13A), the subroutine TEST (FIG. 13B) is called to use the newly calculated value of relative machining rate Q in order to determine new values of IPR c  and SFM c . The adaptive control function 105 is then terminated by a two-second delay before the loop is closed by a test of the AC switch in step 106. Normally successive passes through steps 105 and 106 will continue during machining of a part. But if the AC switch is turned off, which may result from operator intervention or automatic stoppage due to tool breakage, etc., a &#34;system ready&#34; prompt is displayed in step 107. The cycle start switch is scanned in step 108 and its closure (by the human operator) is detected in step 109 to restart the AC control loop at the entry point 110 whereupon the AC switch is turned on in step 111 and the adaptive control calculations are repeated in step 105. 
     As indicated above with reference to FIGS. 5B and 5C, it is advantageous and preferable to calculate Q from actual values of IPR m  and SFM m . The latter two physical variables are, of course, easily calculated from transducer signals reflecting sensed values of the actual feed rate F m , the actual rotational speed RPM m  and the actual radius position of the cutter tip location (here the X axis position XAP) measured relative to the workpiece rotational axis. The preferred embodiment is conveniently implemented by replacing the step 105 (FIG. 13A) procedures with those shown at step 105&#39; in FIG. 13A&#39;. 
     The actual feed velocity may be sensed, for example, by a tachometer driven from the feeding lead screw, or preferably from sampling the actual position sensing device to obtain F m  as a change in position over a known sampling interval. In some cases, the previously commanded feed velocity F c  is a fair estimate of actual feed velocity as was assumed in Equation (3-6). A tachometer or an RPM digitizer is suitable as a source of the measured signals RPM m . The measured value IPR m  is calculated simply as F m  /RPM m . The measured value SFM m  is calculated as 2π·XAP·RPM m , where XAP is the radial displacement R of the cutter tip from the workpiece axis. The new relative machining rate Q is then formed as shown in step 105&#39; by using the measured values IPR m  and SFM m  which together form the existing or measured rate called Q m  in FIG. 5C. The new commanded machining rate Q is arrived at simply by multiplying the measured value Q m  by the ratio of horsepower set point to measured cutter tip horsepower. 
     The two-second interval measured off in step 105 (FIG. 13A) is not necessary and is advantageously omitted in step 105&#39; of FIG. 13A&#39;. It will be recalled that in the method of FIG. 5A, a time delay is used to assure stability, but at the expense of slowing down the response of the adaptive control to changes in the workpiece or cutter properties at the cutter interface (e.g., unforseeable changes in CEFR). But in the method of FIGS. 5B and 13A&#39;, the gain and stability of the adaptive control is independent of any time delay, and hence the affirmative creation of a time delay (as in FIG. 5B) can be omitted and sampling times shortened so that the response of the adaptive control to changes at the cutter interface is accomplished without extreme or intolerable lags. 
     The subroutine TEST is shown in FIG. 13B. First in step 119, the switches AC and G ac  must both be on for new values of SFM c  and IPR c  to be calculated; otherwise, execution of the subroutine is immediately terminated. To determine the new values of SFM c  and IPR c , the critical points or thresholds Q 1 , Q 2 , Q 3  for the relative machining rate are calculated in step 120 from the IPR and SFM min and max values. Recall that these values are obtained from the part program memory as will be further described below in conjunction with the description of FIG. 13E. If the new value of relative machining rate Q is greater than the highest threshold Q 3  as determined in step 121, then in step 122 the commanded value SFM c  is set to the maximum value of SFM and the commanded value IPR c  is set to the maximum value of IPR. A message could also be displayed in step 122 indicating that the desired cutting horsepower is not fully utilized. If the relative machining rate Q is not greater than the highest threshold Q 3 , then it is compared with the second threshold Q 2  in step 123 to determine if it is between the second and third thresholds Q 2  and Q 3  respectively. If it is between these two thresholds, then in step 124 the commanded value SFM c  is set to SFM max  and the commanded value IPR c  is set to the commanded value Q divided by SFM max . If the value of Q is not greater than the second threshold Q 2 , then in step 125 the value of Q is compared to the lowest threshold Q 1  and if it is greater than the lowest threshold Q 1  or thus between the lowest threshold Q 1  and the second threshold Q 2  , then in step 126 the commanded value of SFM c  is set to the value of Q divided by IPR min  and the commanded value IPR c  is set to IPR min . But if the value of Q is not greater than the lowest threshold Q 1 , then the value of Q cannot be obtained by any permissible combination of the commanded values SFM c  and IPR c  in which case the machining process must be terminated. Thus in step 127, a &#34;feed hold&#34; is requested together with action which causes withdrawal of the tool and stopping of the drive. For this purpose, the feed hold timer FTIME is set to zero and the feed hold switch FH is turned on, and the AC switch is turned off. The feed hold switch FH passes a feed hold request to the 32 mS interrupt where it is serviced as shown in FIG. 13D as described below. When it is serviced as detected by step 128, execution returns to the adaptive control step 105 in FIG. 13A and since the adaptive control switch AC was turned off, the adaptive control loop will be terminated by step 106 until the cycle start switch is reset by the operator and detected by the numerical control unit in step 109 of FIG. 13A. 
     The determination of the program constants is performed by the subroutine PCD shown in FIG. 13C. First the 32 mS interrupt described below in FIG. 13D is requested to stepwise accelerate the drive to a plurality of angular velocities corresponding to the acceleration shown in FIG. 3 by setting the program constant timers PCTIME and PCSEC to zero and setting the velocity program constant switch PCDV on. The subroutine PCD then waits for the request to be serviced by sensing in step 131 whether the switch PCDV is off. When PCDV is off, the interrupt routine in FIG. 13D has measured the frictional horsepower HP vm  at a number of different values of RPM which are stored in a vector v. Then the friction constants Ms and B are determined from these data points by the standard statistical technique of least squares according to the equations summarized in step 132. After the friction slope Ms and intercept B are determined, the horsepower due to acceleration is calculated as requested by step 133 by setting the program constant timers PCTIME and PCSET to zero and turning on the acceleration switch PCDA. This request is processed by the interrupt in FIG. 13D which continuously accelerates the drive as shown in FIG. 3B and described below, and when the subroutine PCD senses that the servicing is complete by testing the switch PCDA in step 134, the moment of inertia J is calculated in step 135 in accordance with equation (2-12). 
     A 32 millisecond interrupt (FIG. 13D) is used to service the feed hold, program constants determination, soft engagement, and soft disengagement functions and to read the part program memory, calculate the path vectors and provide the axis control of the cutter feed and machine tool drive. The feed hold function is performed if the feed hold switch FH is on as detected in step 140 whereupon the feed hold timer FTIME is incremented in step 141. The feed hold timer is in effect a program step counter for executing a feed hold sequence. Thus the end of the feed hold sequence is determined by comparing the feed hold timer FTIME to an end time FEND in step 142 and if the end time is reached, the feed hold switch is set off in step 143 to complete the interrupt procedure, thus passing the feed hold switch FH back to step 128 in FIG. 13B indicating that the feed hold sequence is completed. But if the feed hold timer FTIME is less than the end time FEND, the cutter is backed out of the workpiece as a function of the feed hold timer FTIME to terminate the machining process. The simplest method of backing the cutter out of the workpiece is to reverse the direction of the cutter feed by reversing the path vectors Ip and Jp as shown in step 144. Also the commanded rate of the feed IPR c  is set to IPR min  so that the rate of retraction is a constant value. When the feed hold timer FTIME reaches a stop time FSTOP, the feed and drive are stopped by setting IPR c  to zero and SFM c  to zero so that the cutter is retracted from the workpiece by a generally constant distance. The actual retraction of the cutter is for convenience performed by the AXIS subroutine in step 145. 
     The 32 millisecond interrupt of FIG. 13D also initially cycles the machine tool with the cutter disengaged according to the angular velocity profile of FIGS. 3A and 3B for program constant determination. If the interrupt detects that either the acceleration switch PCDA or the velocity switch PCDV is on, in step 150, the program constant timers PCTIME and PCSEC are serviced so that the timer PCSEC indicates the number of seconds into either the stepwise acceleration sequence of FIG. 3A or the continuous acceleration sequence of FIG. 3B by performing the incrementing and comparisons of steps 151, 152, 153, 154, and 155. From these steps, it is seen that the timer PCTIME counts out 32 interrupt intervals each time the second counter PCSEC, is incremented. 
     The velocity switch PCDV is tested in step 156, and if it is on the velocity stepwise acceleration sequence is initiated. The second counter PCSEC is compared to an end time PVEND at step 158 to determine if the velocity sequence is finished and if so, the program constant determination switches PCDA and PCDV are turned off in step 157. But if the second counter PSEC is less than the end time PVEND, then the velocity switch PCDV is tested to determine whether the stepwise acceleration is required for velocity constants determinations as shown in step 158. If the velocity switch PCDV is on, then the drive velocity is increased in steps at ten second intervals according to step 159. The ten second intervals are conveniently tested by determining whether the second counter PSEC is divisible by 10 and if so, the current rotational velocity is measured and put into a velocity array v using the ten second counter IPSEC as an index and the horsepower due to friction coincident with the velocity is calculated and put into an array HP vm  also using the ten second counter IPSEC as an index. It should be noted that this horsepower due to frictional velocity is just the average measured horsepower AVHP m  minus the average horsepower lost in the electrical drive motor due to the effective resistance of the motor windings AVHP e . These averages are calculated in the 64 millisecond interrupt routine of FIG. 13G, further described below. After the velocity array v and horsepower due to velocity array HP vm  are updated, the commanded velocity RPM c  is stepped to the next level as programmed in a pre-determined constant array PVRPM also using the second timer IPSEC as an index. Then the commanded value RPM c  is outputted in step 160 to accelerate the drive. 
     While the determination of the friction constants Ms and B requires a stepwise change in the rotational velocity, the determination of the moment of inertia J requires a continuous net acceleration, which of course may be either positive or negative. For this purpose, the acceleration switch PCDA is tested during each of the 32 millisecond interrupt times at step 170. Then the second timer PSEC is compared in step 171 to an end time PAEND to determine if the acceleration sequence is completed. If it is not completed, then according to the preferred acceleration sequence of FIG. 3B for a DC drive motor, the drive is stopped and, in latter passes through step 172 of the 32 millisecond interrupt, the DC drive motor is stepwise commanded to a maximum RPM, RPMH, that is greater than the motor&#39;s base speed BS. The measured values HP am , RPM am , and ACC am  are also determined so long as the rotational velocity RPM m  is less than base speed BS. The net horsepower transferred to the inertial mass of the machine tool drive HP am  is calculated by subtracting the horsepower loss due to the electrical resistance in the drive motor winding HP e  and the horsepower loss due to the mechanical friction in the machine tool drive HP v  from the horsepower HP m  consumed by the drive motor. Note that when the acceleration sequence is completed, the measured values HP am , RPM am  and ACC am  will be those values measured just before RPM exceeds the base speed BS. This completes the control of the machine tool drive for calculation of the program constants in the 32 millisecond interrupt. 
     Turning now to FIG. 13E, which is actually a continuation of the 32-millisecond interrupt as indicated by the off-page connector E which is common to FIG. 13D and FIG. 13E, it is seen that the new block switch NEWB is tested in step 180. If the switch is on, the part program memory considered as an array labelled PPMEM is read in step 181 at all memory locations representing the next block. The offset index of the part program memory PPMEM array, the block offset BLKOFST, is calculated as the product of a block number PPROG and the number NBLK of part program memory locations per block. The value of the part program memory at the block offset BLKOFST is the first block constant in the block which is the Z coordinate ZCEP of the desired ending position. When ZCEP is read, it is also desirable to store an initial Z coordinate which could in fact be the old Z coordinate ZCEP but as shown it is probably more desirable to store the actual position ZAP as the initial coordinate Z in . Similarly, the next target X coordinate XCEP is read at location BLKOFST +1 and similarly the other block constants generally represented as an array G are read at increasing part program memory PPMEM locations. These other constants include, for example, the maximum IPR operating level IPR max , the minimum IPR operating level IPR min , the maximum SFM operating level SFM max , the minimum SFM operating level SFM min , the target horsepower HP dp , the incremental beginning distance Ap, the incremental ending distance Bp, the AC flag G ac , the soft engagement flag G soft , the tool monitor flag G tm , the tool breakage flag G tb  and minimum CEFR factor C min , the tool protect flag G tp  and maximum CEFR factor C max , and the tool wear flag G tw  and AVCFR factor C tw . Alternatively, these flags and constants may be handled in the known model fashion; i.e., only changes in the logic states of the flags or changed values of the block constants are programmed in the part program memory. 
     In step 182, the path vectors Ip and Jp and the resultant path length PATH are calculated from the differences between the initial and target coordinates. To complete these steps of reading and processing the current block of the part program memory, the new block switch NEWB is switched off in step 183 so that the next block will be read only when requested by the AXIS subroutine in FIG. 13F as described below. 
     A. Soft Engagement Function 
     The 32 millisecond interrupt also performs a soft engagement function. One of the miscellaneous constants stored in the part program memory is a soft switch G soft  which signals that the current path vector is either into workpiece surface if the AC flag G ac  is also off, or is a path that will break out of the workpiece if the flag G ac  is also on. 
     If the cutting tool is not engaged with the workpiece, then the adaptive control should be off since then the cutting power is not responsive to either IPR or SFM. Thus, there must be some method for initially contacting the cutter with the workpiece and turning the adaptive control on. The applicants have discovered that the preferable method of initially contacting the workpiece with the cutter and turning the adaptive control on is to command the SFM at the maximum value SFM max  and the IPR at the minimum value IPR min  and to drive the cutter a sufficient depth into the workpiece for the measured horsepower values to stabilize. The point of initial contact may be determined either by knowing beforehand the workpiece profile or by actually measuring the increase in cut horsepower HP cut  when the cutter contacts the workpiece. In the exemplary embodiment, both methods will be described. The adaptive control is turned on when the cutter position (XAP, ZAP) is a pre-determined distance Ap from the initial position (X in , Z in ) which is presumed to have been programmed by the prior block target coordinates (XCEP, ZCEP) to be the feed position of the workpiece surface. But in the exemplary embodiment, the increase in cutting horsepower HP cut  above a threshold level HP air  set to be greater than the air or noise value of cutter horsepower HP cut  when the cutter is disengaged, is used to insure that measurements of the cutter horsepower HP cut  are considered only when the cutter is engaged with the workpiece. The initial measurements of HP cut  are used to calculate an initial horsepower HP incut  which is itself used to calculate an initial relative cutting efficiency CEFR in . This initial relative cutting efficiency is used for detecting tool breakage, tool wear, and to protect the tool from excessive transient forces as further described below in conjunction with the tool monitor function. 
     Turning again to FIG. 13E, if the adaptive control flag G ac  is off as detected in step 184 and the soft engagement flag G soft  is on as detected in step 185, the soft engagement function has been selected. The distance gone from the initial coordinates (X in , Z in ) is calculated in step 186. In step 187, the distance gone DGONE is compared to a pre-programmed initial cut distance Ap, which is one of the miscellaneous constants G(i) read from the part program memory blocks, to determine whether initial cutting is taking place. In step 188, which is also an alternate method of determining when the initial cutting has started, the cut horsepower HP cut  is compared to an air cut threshold value HP air  and if the cutting horsepower HP cut  is less than this initial air cut value, a sample counter NC is set to zero in step 189 since the measured cutting horsepower HP cut  is probably indicative of cutting air rather than machining the workpiece. Otherwise, the counter NC is incremented as shown in step 190. In either event, during the initial cut into the workpiece, the commanded SFM c  is set to its maximum value SFM max  and the commanded IPR c  is set to its minimum value IPR min  as shown in step 191. When step 187 signals that the distance gone DGONE is greater than the pre-determined initial cut distance Ap, the adaptive control is turned on by setting the switch G ac  on and the soft engagement is turned off by setting the switch G soft  off in step 192. 
     An initial relative cutting efficiency is determined in the steps generally designated 193 by first calculating an initial cut horsepower HP incut  and then calculating the initial relative cutting efficiency CEFR in  as the initial cutting horsepower HP incut  divided by the product of the control values SFM o  and IPR o . The control values SFM o , IPR o  are used instead of the commanded values SFM c  and IPR c  since for constant SFM c  and IPR c , a change in the override controls changes the cut horsepower HP cut , but does not change the ratio of the cut horsepower HP incut  divided by the control values SFM o  and IPR o . For cutting efficiency calculations, it is assumed that the control values SFM o  and IPR o  do not instantaneously change and thus represent the actual values of SFM and IPR, which can be assured by a suitable method of inputting the scale factors KI o  and KS o  into the numerical control unit. If these user adjusted scale factors are obtained by reading potentiometers with an analog to digital converter, for example, the fact that the operator cannot instantaneously change the positions of the potentiometer controls guarantee that the scale factors cannot instantaneously change. Otherwise digital low-pass filtering can be added to insure that the filtered values SFM o  &#39; and IPR o  &#39; do not rapidly change, and this is the preferred method. The AXIS subroutine, shown in FIG. 13F, includes such digital filtering. The precise steps generally designated 193 are further described below in conjunction with the tool monitor subroutine TLMNTR of FIG. 13H. 
     B. Soft Disengagement 
     Since the adaptive control cannot function properly when the cutter is cutting air, there must be some means to turn it off if the cutter is about to cut through the workpiece. The applicants have discovered that the best method of disengaging the cutter from the workpiece and terminating the adaptive control, which would otherwise accelerate to attempt to maintain constant machining power, is to sense when the cutting tool is within a pre-set distance Bp of breaking out of the workpiece, and thereupon to decrease the feed velocity of the cutter to the minimum feed velocity IPR min  while maintaining SFM generally at the then-current value until the cutter breaks out of the workpiece. 
     Shown in FIG. 13E, the soft disengagement function is performed when the adaptive control flag G ac  is on as detected in step 184 and when the soft engagement switch G soft  is on as detected in step 195. The target coordinates (XCEP, ZCEP) are pre-programmed in the part program for the block with the AC flag set on and the soft engagement switch G soft  set on to signal that the cutter is expected to break out of the surface of the workpiece. Then the distance to go before breaking out DTG is calculated in step 196 as the distance between the actual cutter position (XAP, ZAP) and the target coordinates (XCEP, ZCEP). To determine whether it is time to turn off the adaptive control and to reduce the IPR to IPR min , the distance to go DTG is compared with an incremental ending distance Bp in step 197 and if the distance to go DTG is less than the incremental ending distance Bp, the commanded IPR c  is set to the minimum value IPR min , the adaptive control is inhibited by setting the flag G ac  off, and the soft engagement feature is terminated by setting the switch G soft  off as shown in step 198. 
     The 32 millisecond interrupt of FIGS. 13D and 13E is completed in step 199 by calling the AXIS subroutine of FIG. 13F which generates the actual machine control signals RPM c , XVC and ZVC from the commanded values SFM c  and IPR c . 
     The AXIS subroutine first inputs the user adjusted scale factors KS o  and KI o  from the override controls in step 200. Then the control values SFM o  and IPR o  are computed by scaling the commanded values SFM c  and IPR c  by the scale factors KS o  and KI o , respectively in step 201. These control values are then filtered by calling the subroutine FILTER to generate filtered control values SFM o  &#39; and IPR o  &#39; in step 202. Then the commanded value of rotational velocity RPM c  is calculated in step 203 as SFM o  &#39; divided by the product 2π times the actual position coordinate XAP which is in effect the radius R av  from the axis of the workpiece to the cutter edge. In step 204, the magnitude of the resultant cutter feed velocity F c  is calculated as the product of the control value IPR o  &#39; and the measured value RPM m  and the X and Z displacement components F x  and F z  may be calculated by scaling the magnitude of the resultant F c  by the factors Ip divided by PATH and Jp divided by PATH respectively. 
     In step 205, the components of the cutter feed velocity are passed to an interpolation function which converts them to the actual feed motor control signals XVC and ZVC. The simplest interpolation function merely sets the value of the motor control signals proportional to the feed velocity components F x , F z . Thus the cutter feed for a simple linear intrepolation moves the cutter tool from the initial coordinates (X in , Z in ) to the final coordinates (XCEP, ZCEP) in a straight line. But it is sometimes desirable to move the cutter tool along a nonlinear path such as an arc of a given radius. The radius, for example, is one of the miscellaneous block constants G(i) stored in the part program memory. In such a case, the feed motor control signals XVC and ZVC are a function of the actual position coordinates (XAP, ZAP) in relation to the initial coordinates (X in , Z in ) and the final coordinates (XCEP, ZCEP). Further details of a preferred interpolation function are provided in U.S. Pat. No. 3,656,124 issued Apr. 11, 1972 to John K. McGee, which is herein incorporated by reference. After each interpolation update at a 32 mS rate, the machine control signals RPM c , XVC and ZVC are outputted in step 206 to effect a change in the machining process. 
     The AXIS subroutine also determines whether it is time to read a new block of constants from the part program memory. The distance to go DTG to the final coordinates (XCEP, ZCEP) is calculated in step 207 and compared to a minimum value D min  in step 208. If the distance to go DTG is less than the minimum value, then the new block switch NEWB is turned on and the block pointer PPROG is incremented. This completes the AXIS subroutine. 
     Also shown in FIG. 13F is the subroutine FILTER generally designated 210 which limits the time rate of change of the filter output variables SFM o  &#39; and IPR o  &#39; to slew rate limits SSLR and ISLR respectively representing the permissible change in the output values per 32 millisecond interrupt interval. Some kind of digital filtering is preferable so that the control values SFM o  &#39; and IPR o  &#39; do not instantaneously change which could falsely trigger the tool function subroutine TLMNTR of FIG. 13H or which might possibly overdrive the feed and drive motors. It should also be noted that the subroutine FILTER has the effect of spreading out or softening the changes commanded by the adaptive control loop of FIG. 13A as actually executed in the subroutine calls to the TEST subroutine of FIG. 13B at steps 122, 124 and 126. The specific details of such digital filtering are not critical to the practice of the present invention, and will not be further described. An alternate approach for smoothing out large step changes in velocity, whether created by the part program or by the adaptive action here described, is disclosed in Kolell U.S. Pat. No. 4,041,287 to which the reader may refer. 
     The actual horsepower expended at the cutter tip HP cut  is calculated and averaged at 64 millisecond intervals in an interrupt routine shown in FIG. 13G. The interrupt also performs a tool monitoring function since preferably the detection of a broken tool or excessive loads on a tool occurs quickly to reduce the damage done to the tool or workpiece. The 64 millisecond interrupt reads the electrical power consumed by the drive motor in watts W m , the actual rotational velocity of the drive RPM m , and the actual cutter tip position coordinates XAP, ZAP in step 220. Then in step 221, the rotational acceleration ACC is calculated as the change in rotational velocity over the 64 millisecond interrupt interval. The corrections to the measured power W m  to obtain an actual cutting power HP cut  are performed in step 222. The net horsepower transferred to the inertial mass of the rotating parts of the machine tool HP a  is calculated as a product of the pre-determined moment of inertia J (previously stored in step 135 in FIG. 13C), the rotational acceleration ACC, and the rotational velocity RPM m . The power taken up by the mechanical friction in the machine tool drive HP v  is calculated as the sum of the intercept constant B and the product of the slope constant Ms (such constants being previously stored at step 132 in FIG. 13C) and the rotational velocity RPM m . The voltage V across the drive motor terminals is calculated as the maximum drive voltage to the motor in volts, times the rotational velocity RPM m  divided by the predetermined base speed constant BS. (It should be noted that some motor drives have adjustment controls for setting the base speed BS and maximum drive voltage to values different from the maximum rated voltage and rated base speed of the motor. These motor drives, for example, regulate the motor&#39;s field excitation to alter the electrical characteristics of the motor. In accordance with FIG. 13G, step 222, a 240 volt DC motor was adjusted for a maximum drive voltage of 225 volts.) Then the current I through the motor windings is computed by dividing the power in watts to the drive motor W m  by the voltage V. The electrical power consumed by the resistance in the motor windings W e  in watts is computed as the product of the square of the current I and the pre-determined constant of resistance R e  of the motor windings in ohms. Then the measured horsepower HP m  and the electrical horsepower HP e  dissipated in the motor windings are obtained from the corresponding values in watts W m  and W e  respectively by dividing the wattage values by the units conversion factor 746 watts per horsepower. Finally, the cut horsepower HP cut  is obtained by adjusting the measured horsepower HP m  by subtracting the mechanical friction loss HP v , the horsepower due to acceleration HP a  and the net horsepower due to electrical loss in the motor windings HP e . 
     In step 223, the various horsepowers HP m , HP d , HP a , HP e , and HP cut  are added to running average tables and averages are computed for updating the display and for obtaining the average cut horsepower AVHP cut  for adaptive control. These averages are obtained by pushing the horsepower values into a first-in-first-out (FIFO) stack, for example 16 values deep. Then the running averages are formed by incrementing the average by the horsepower pushed into the stack and subtracting from the average the horsepower pushed out of the stack. 
     To complete the 64 millisecond interrupt routine, the tool monitoring subroutine TLMNTR is called in step 224. 
     C. Tool Monitoring Functions 
     The subroutine TLMNTR in FIG. 13H calculates a relative cutting efficiency factor CEFR and detects improper tool conditions including a broken tool, an excessive tool load and a worn tool by comparing the relative cutting efficiency factor to an initial relative cutting efficiency factor. Recall that as defined in Equation (3-5) CEFR measures the inefficiency or dullness of a cutter. Equivalently, the reciprocal of CEFR measures the efficiency or sharpness of the cutter, and alternatively this reciprocal value could be compared to an initial reciprocal value. Of course, such an alternative is mathematically equivalent since merely the direction of an inequality is reversed when reciprocals of the terms are taken. 
     The tool monitoring may be disabled by a switch G tm  obtained from and associated with each block in the part program memory. When the part program is made, program blocks representing paths initially into or out of a workpiece are programmed with this switch G tm  off so that cutting air or initial contact with the workpiece will not be interpreted as a broken tool or an excessive tool load. The tool monitor switch G tm  is tested in step 230 and if it is off the tool monitor subroutine is done. Otherwise in step 231 the counter NC is compared with the pre-determined number NS to determine whether an initial relative cutting efficiency factor CEFR in  was determined in FIG. 13E. If not, then there is probably an error in programming of the tool monitoring switch G tm  in the part program so that the error condition is displayed to the machine operator in step 232. Otherwise the relative cutting efficiency factor is calculated in step 233 as HP cut  divided by the product of SFM o  &#39; and IPR o  &#39;. It should be noted that performing comparisons of relative cutting efficiency factors to monitor tool conditions requires that the depth of cut D is generally constant, since it is the actual cutting efficiency factor CEF v  defined as the horsepower required to remove a unit volume of material, that is relatively constant and CEF v  equals CEFR/D. Of course, if the depth of cut D is not constant but is known, the actual cutting efficiency factor may be calculated or equivalently the relative cutting efficiency factor CEFR may be adjusted by the ratio of the depths for the initial cutting efficiency factor versus the current cutting efficiency factor according to the equation: 
     
         CEFR&#39;=(CEFR)(D.sub.in)/(D.sub.a)                           (5-1) 
    
     where D in  is the initial depth and D a  is the current depth. Then the adjusted cutting efficiency factor CEFR&#39; may be compared to the initial cutting efficiency factor CEFR in . The depth of cut D may be a miscellaneous parameter G(i) stored in each block of the part program memory. 
     Once the relative cutting efficiency factor CEFR is determined, it is compared to maximum and minimum limit values to determine if an improper tool condition exists. The maximum limit value must be larger than the initial relative cutting efficiency factor CEFR in  and preferably the maximum and minimum limits are determined by multiplying the initial cutting efficiency factor CEFR in  by constants slightly greater or slightly less than 1, respectively. For example, if the broken tool switch G tb  is on, as detected in step 235, then the relative cutting efficiency factor CEFR is compared to the product of the initial cutting efficiency CEFR in  and a minimum factor C min  as shown in step 236, with C min  chosen to be slightly less than 1, for example 0.85. If the relative cutting efficiency factor CEFR exceeds this minimum limit then a &#34;feed hold&#34; is requested in step 237 by clearing the feed hold timer FTIME, setting the feed hold switch FH on and turning the adaptive control switch AC off. Then the broken tool condition is displayed to the operator in step 238 which completes the execution of the subroutine TLMNTR. 
     Another tool monitoring function that may be performed is the detection of excessive transient loads on the cutting tool. To protect the tool from these transient loads, the cutting efficiency factor is monitored and compared to a maximum limit since a transient load is characterized by a sharp increase in the cut horsepower HP cut  while the relative machining rate (SFM o  &#39;) (IPR o  &#39;) remains relatively constant so that the relative cutting efficiency factor CEFR rises nearly instantaneously coincident with the transient increase in cut horsepower HP cut . The applicants have discovered that to catch these transients, the cutting efficiency factor is preferably repetively calculated at a fast rate, for example every 64 milliseconds which is the rate of the interrupt calling the subroutine TLMNTR. 
     As shown in FIG. 13H, the tool protect switch G tp  from the current block of the part program memory is tested in step 240 and if it is on then the relative cutting efficiency factor CEFR is compared to a high threshold determined by the product of a maximum factor C max  pre-set substantially greater than 1, for example, 1.2, and the initial cutting efficiency factor CEFR in , as shown in step 241. If the relative cutting efficiency factor CEFR is greater than the high threshold, then an excessive transient load on the tool is detected and a &#34;feed hold&#34; is executed in step 242. The &#34;tool protect&#34; condition is displayed to the machine operator in step 243. 
     A third tool monitor function is the detection of a worn tool. By comparing the cutting efficiency factor of the tool to the initial cutting efficiency factor measured when the tool was sharp and first placed in the turning machine, an unduly worn tool may be detected. As a tool becomes dull, the cutting efficiency factor will increase even if there are programmed or adaptively created changes in SFM or IPR. In contrast to the detection of excessive transient loads on the tool, the detection of a worn tool should not be responsive to fast fluctuations in the cutting efficiency since a tool which is becoming duller should have a slowly rising cutting efficiency factor. Thus while the tool protect function preferably is repetitively performed at a high rate, the detection of tool wear may be performed at a rather slow rate or preferably is performed at a rather high rate using smoothed or average values which are not responsive to fast, transient changes in the cutting efficiency factor. 
     As shown in FIG. 13H, the relative cutting efficiency factor CEFR is monitored at the high rate of the 64 millisecond interrupt but comparisons are performed using average values. First, the tool wear switch G tw  is sensed in step 250 and if it is on, then the initial relative cutting efficiency sample counter NC is compared to a pre-determined minimum number of samples NS to arrive at a difference representing the number of initial cutting efficiency factor samples that are averaged, and if this difference is greater than or equal to 16, an arbitrary number of samples thought necessary for a suitable average, then a suitable initial relative cutting efficiency factor for a sharp tool CEFR shp  is available from the steps generally designated 193 in FIG. 13E. 
     Returning for a moment to FIG. 13E, the calculation of an initial relative cutting efficiency factor for a sharp tool CEFR shp  is there illustrated. After an initial relative cutting efficiency factor is calculated in step 226, the new tool switch NEWT is tested in step 227 to see if it is on. The new tool switch is one of the switches initially set on in step 103 (FIG. 13A) when the machine is started and it is assumed that the machine is first started with a sharp tool. Since the tool wear function preferably senses an average value, the number of initial horsepower samples NC-NS is computed and compared to 16 in step 228. Note that NS represents the number of initial horsepower samples just after contact of the cutter with the workpiece, as detected in step 188, that must be taken before the machining process has sufficiently stabilize for a computed initial cutting efficiency factor to be meaningful and representative of continuous machining. Thus if there are more than 16 samples, the cutting efficiency factor for a sharp tool CEFR shp  is set at step 229 to the initial cutting efficiency factor CEFR in  which was computed in step 226 from the samples HP cut (i). Also in step 229, the new tool switch NEWT is set off so that subsequent calculations of CEFR in  occurring coincident with subsequent soft engagements of the tool do not affect the value of CEFR shp , since CEFR shp  will be set only once during the initial soft engagement when the new tool switch NEWT is on in step 227. 
     Returning to FIG. 13H, the tool monitoring subroutine TLMNTR determines if the relative cutting efficiency CEFR shp  has been calculated for a sharp tool by comparing the number of samples NC-NS to 16 in step 251. If CEFR shp  is not available, the operator is told of this fact in step 252. Otherwise the current average relative cutting efficiency factor AVCFR is calculated by dividing the average cut horsepower AVHP cut  by the product of SFM o  &#39; and IPR o  &#39; in step 253. Then the current average relative cutting efficiency factor AVCFR is compared to a high threshold limit somewhat above the initial cutting efficiency CEFR shp . Preferably this is done by multiplying the cutting efficiency for a sharp tool CEFR shp  by a pre-determined constant C tw  with C tw  pre-set to a value substantially greater than 1, for example, 1.1. Note that C tw  is preferably set less than C max , since the average value of CEFR is less than the maximum of the transient values of CEFR. The comparison is performed in step 254 and if the average cutting efficiency factor AVCFR is less than the threshold, the operator is instructed in step 256 that a tool wear feed hold has occurred. This completes the description of the tool monitoring function performed by the subroutine TLMNTR. 
     GLOSSARY OF SELECTED SYMBOLS 
     A: Cross-sectional area of cut=(IPR) (D). 
     A p  : Incremental beginning distance of cutter tip into the workpiece surface during soft engagement before adaptive control is turned on. 
     B: Friction intercept constant for estimating friction of the drive as a linear function of drive velocity. 
     BS: Base speed constant of a DC electric motor. 
     Bp: Incremental ending distance of cutter tip from point where adaptive control is turned off and soft disengagement begins to point where cutter tip breaks out of the workpiece. 
     C: Volume of workpiece material removed by machining. 
     CEF v  : Cutting efficiency factor, defined in terms of machining power required for removal of unit volume of workpiece material. 
     CEFR: Relative cutting efficiency factor defined as the ratio of machining power HP to relative machining rate Q=(IPR) (SFM). 
     D: Depth of cut, defined as the dimension of the cut normal to IPR and SFM. 
     d: Differential operator. 
     F c  : Net feed velocity of the cutter tip. 
     F x  : Feed velocity component in the X direction. 
     F z  : Feed velocity component in the Z direction. 
     HP: Machining power, in general, without limitation as to method of measurement or correction for losses. 
     HP a  : Net machining power loss (+ or -) transferred to the inertial mass of the moving parts of the machine tool assembly and thus associated with net acceleration (+ or -). 
     HP e  : Machining power loss consumed and dissipated as heat in the motor winding circuit of an electrical drive motor. 
     HP v  : Machining power loss due to mechanical friction in the machine tool drive, and excluding friction at the cutter tip. 
     HP cut  : Actual machining power dissipated at the cutter tip. 
     I: Electrical drive motor current. 
     Ip: X component of cutter tip displacement vector between successive reads of successive blocks of the part program memory. 
     I p  : Control input to a physical system. 
     IPR: (Inches Per Revolution) dimension of the cut in the direction of the cutting tool feed velocity, for a turning machine, proportional to the feed velocity F c  divided by the rotational drive velocity RPM. 
     IPR c  : IPR commanded by the adaptive control unit. 
     IPR max , IPR min  IPR min  : Upper and lower limits on IPR for desired machine tool operation, respectively. 
     IPR o  : control input value to the machine tool, that will tend to result in an equal actual IPR. 
     J: Moment of inertia sensed by the drive. 
     Jp: Z component of cutter tip displacement vector between successive reads of successive blocks of the part program memory. 
     k: Response factor of a feedback control loop. 
     Ms: Friction slope constant for estimating friction of the drive as a linear function of drive velocity. 
     PATH: Distance or magnitude of the resultant cutter tip displacement vector between successive reads of successive blocks of the part program memory. 
     Q: Relative machining rate defined as the product of SFM and IPR. 
     Q c  : Commanded value of relative machining rate, defined as the product of SFM c  and IPR c . 
     Q m  : Measured value estimating the actual machining rate, defined as the product of SFM m  and IPR m . 
     R: Inner machined radius of the workpiece in a turning machine. 
     R o  : Outer machined radius of the workpiece in a turning machine. 
     R av  : Average or effective machined radius of the workpiece in a turning machine. 
     R e  : Electrical resistance of the drive motor windings. 
     RPM: (Revolutions Per Minute) Rotational velocity of the drive in a turning machine. 
     RPM c  : Commanded value of RPM. 
     RPM m  : Measured value estimating the actual RPM of the drive. 
     SFM: (Surface Feet Per Minute) Relative transverse velocity of the workpiece surface at and with respect to the cutter edge. 
     SFM c  : SFM commanded by the adaptive control unit. 
     SFM m  : Measured value estimating the actual SFM of the machine tool. 
     SFM max , SFM min  : Upper and lower limits on SFM for desired machine tool operation, respectively. 
     SFM o  : SFM control input value to the machine tool, that will tend to result in an equal actual SFM. 
     s: Complex frequency parameter denoting frequency domain of the Laplace transform. 
     T: Torque exerted by the drive. 
     t: Time. 
     V: Voltage applied to the drive motor. 
     Vop: Rated voltage of the drive motor. 
     W m  : Measured drive power expressed in watts. 
     w: Angular velocity of the drive.