CA1186034A - Machine process controller - Google Patents

Machine process controller

Info

Publication number
CA1186034A
CA1186034A CA000430904A CA430904A CA1186034A CA 1186034 A CA1186034 A CA 1186034A CA 000430904 A CA000430904 A CA 000430904A CA 430904 A CA430904 A CA 430904A CA 1186034 A CA1186034 A CA 1186034A
Authority
CA
Canada
Prior art keywords
feed rate
machine
value
controller
error
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
CA000430904A
Other languages
French (fr)
Inventor
Larry E. Cameron
Kenneth J. Cook
Vance E. Neff
Keith L. Rowland
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Valenite LLC
Original Assignee
Valeron Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US06/089,436 external-priority patent/US4279013A/en
Application filed by Valeron Corp filed Critical Valeron Corp
Application granted granted Critical
Publication of CA1186034A publication Critical patent/CA1186034A/en
Expired legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)

Abstract

ABSTRACT
The controller includes a power sensing device which monitors the instantaneous power drawn by the machine and compares it with a predetermined limit level of desired power consumption. A user programmable timer is manually accessible for loading a selected time delay period therein.
The controller provides an output capable of altering the machine operation when the machine power consumption has continuously exceeded the limit value for the selected time period. The controller outputs may be latched or nonlatched once an overlimit condition is detected in accordance with a user selectable programmed parameter. In an adaptive mode, the controller forces the feed rate to a programmable feed rate for a selected period of time upon initial impact be-tween the workpiece and the machine tool. The controller then maintains a normal adaptive power level in which the feed rate response may be selectively altered as a percentage of an exponential function of the difference between the actual machine power consumption and the programmable desired adaptive power level. Provision is made for automatically referencing the feed rate control signal to the voltage rating of the feed rate drive motor in the machine.

Description

6~)34 This application is a division of our Canadian patent application Serial No. 363,494 filed October 29, 1980.
This invention relates to machine controllers and, in particular, to controllers which utilize machine power consumption as a criterion for monitoring proper operation.
The need to automatically control machining opera-tions has long been apparent to the industry. The demand for intricate designs to be formed in the workpiece and human limitations, as well as the limitations of the machinery have led to the ever increasing usage of automatic machine controllers to optimize the speed of the machining operation while at the same time preventing damage to the machine com-ponents. The earliest attempts in the art were relatively simple approaches in which a certain criterion was monitored and the machine shut off when a limit for the criterion was exceeded.
However, as the years went by, the machine controllers became more and more complicated and expensive under the guise of being more sophisticated. In fact, in some of -the most recent machine controllers at least nine different machine parameters are continuously monitored by exotic sensing devices and utilized to adaptively control machine cutting operations as a complex function of all the various criteria. tSee e.g., United States Patent No. 4,031,368 to Colding et al).
In addition to the increasing complexity of the art, known machine controllers have other perplexing problems.
In general, the prior art systems immediately respond to an overlimit condition to alter the machine operation. Unfor-tunately, the overlimit conditions may not always be due to improper machine operation. This is especially true during machine start up, during diverse machining operations on ~186~)3~L

workpieces which may have non-homo~eneous structures, when the machine is being operated in an electrically ~oisy en-vironment, etc. The prior art controllers generally will automatically shut off the machine in the event of these pseudo alarm conditions. This requires the operator to check the machine for damage, readjust the workpiece loca-tion, if necessary, and then restart the machining operation.
In high volume production, this unnecessary down time becomes extremely expensive and results from the inability to discriminate between actual alarm conditions which would damage the machine and those conditions which similarly affect the monitored criteria but do not result in damage.
The servosystems of the prior art controllers are also sus-ceptible to non-stable operation. In the adaptive control mode~ the feed rate change value is generated linearly by the system and may cause such a dramatic variation in the status quo that the machine will overshoot the desired level.
Subsequently, the system will generate a change in the opposite direction to compensate for its overshot condition. ~his "ringing" can continue ad infinitum. Of course, these oscillations deleteriously affect the machining operation.
Some attempts have been made to correct this problem by damping the linear response. However, machine response will be damped by the same factor at high error levels as at the r,iore critical lower levels thereby preventing the machine operation to be quickly brought into conformity with the desired operating level when there is a large amount of error.
Moreover, none of the prior art systems possess the capability of selectively adjusting the machine response characteris-tics in order to accommodate for different user applications and ~L~L86~3~

environments.
A common problem with known controllers is that they are particularly adapted to only one type o-f machine and do not possess the flexibility necessary for use in a wide variety of different machining applications. Accord-ingly, in a large plant, the user must be trained to operate many different types of controllers. This not only is time-consuming and inefficient but often it leads to tool damage from improper operation until the operator becomes familiar with the peculiarities of the controller. Therefore, -there has been a substantial need for a universal machine controller which can be readily adapted to a wide variety of different applica-tions and preferably one which is capable of controlling several different types of machining operations simultaneously.
SU.~MA~Y OF THE INVENTION
According to a broad aspect of the invention there is provided, in an adaptive process controller for a machine having a tool for performing work on a workpiece, said controller having means for continuously monitoring a machine parameter and adjusting machine operation so that said parameter is maintained at a preselected value, wherein the improvement comprises:
comparison means for providing a signal indicative of the error difference between the actual machine parameter and the preselected machine parameter; and adjustment means for changing the machine feed rate as an exponential function of the error between the actual and preselected parameters wherein said machine is provided with stable, yet fast response.

36(~3~

According to one aspect of the preferred embodiment o~ this invention, the controller digresses from the trend of the increasing complexity of the prior art devices by utilizing a single criterion on which to base its control functions. What at first blush may seem to be an overly sim-plistic approach, actually provides surprisingly sufficient criterion for efficiently and accurately controlling machine operation.
The present invention teaches the use of sensing means for monitoring the power used by the machine as the control criterion. Limit setting means supplies a limit value Eor the controller to define an extreme level of desired power consumption for the machine. A comparator compares the outputs of the sensing means and -the limit setting means and is operative to provide an output signal if the machine power consumption has exceeded the limit value. In order to 131L~03~L

accomodate for expected, but undamaging, power fluctuations peculiax to the particular machine operation, the controller includes a programmable timer which is manually accessible by the operator ~or loading the timer with a selected time period. The machine operation is not altered un]ess the machine power consumption has continuously passed the limit value for the selected time period.
The preferred embodiment of the invention utilizes a microprocessor and associated memory to implement the con-trol functions. Pre~erably, the memory includes selectedlocations for storing different count signals which define the programmable time delay for various overlimit conditions.
One of the overlimit conditions is the generally experienced surge of power at machine start up. The surge time delay-stored in the memory serves to disable the comparator untilthe selected time period has elapsed after machine start up.
Various other programmable time delays are taught by the present invention including those which are governing when the machine power consumption has exceeded a programmable high limit or ~allen below a programmable low limit of power consumption.
In accordance with a further aspect of this in-vention, the controller includes at least one dedicated out-put line which is coupled to the machine. The output line is generally used to alter the machine operation by connecting it to a switch which will be opened or closed depending on the state of the output line. In the event of an overlimit condition, the state of the output line is switched. The user may, by appropriate program commands, cause the state of the output line to be latched at the 1~86~)3~
V~L-12~
switched state regardless of whether the machine operation again becomes within limits or, alternatively, to return back to its original state as soon as the machine again falls within the limit constraints.
This invention also teaches a unique method of adaptively controlling an automated machine to effect extra-ordinarily stable machining operations. Two different feed rates are stored in the memory for determining the relative feed rate between the workpiece and the machine tool: 1) an air cut feed rate when the machine tool is not in contact with the workpiece, and 2~ an impact feed rate when the tool initially impacts the workpiece. ~uring operation, the power consumed by the machine is continuously compared with a pre-selected limit value, preferably selected as a level just above the machine power consumption when idling. ~he machine feed rate is set at the air cut feed rate until the machine power consumption exceeds the limit value. The feed rate is then shifted to -the impact feed rate for a predetermined, user programmable, amount of time to stab~ize machine operation once the power consumption exceeds the limit value. After the predetermined time period has elapsed, the feed rate is continuously controlled to maintain a programmable adaptive power level.
Once the feed rate has initially entered the normal adaptive feed rate mode, the difference between the actual power consumed by the machine and the programmable adaptive power level is continuously monitored. The controller gen-erates a new adjusted feed rate level until the actual power consumption is substantially equivalent to the desired ~6~)3~

adaptive power level. A feed rate change value is generated by the controllex and added or subtracted to the old feed rate depending on whether the actual power consumption is below or above the desired level.
According to still another feature of this inven-tion the feed rate change value varies exponentially with the error differential between the actual machine power con-sumption and the desired adaptive power level. Since the feed rate change level is substantially greater at high error levels, the machine operation quickly responds to a large differential. On the other hand, the feed rate change level is several magnitudes smaller at lesser error levels to there-by gradually converge on the desired adaptive power level.
In such manner, system stabilization is provided by preventing oscillations common to prior art devices. Provision is made for an adjustable nonreactive window which, preferably, is a function of the adaptive power level wherein no further eed rate adjustment is made.
Still another aspect of this invention includes the provision of an operator adjustable means for adjusting the feed rate change response as a percentage thereof. There-fore, the response time in arriving at the desired adaptive power level may be increased or decreased depending upon user application.
2 5 BRIEF DESCRIPTION OF THE DRAWINGS
These and other advantages of the present inven-tion will become apparent upon reading the following speci-fication and by reference to the drawings in which:
FIGURE 1 is an elevation view showing a simpliLied representation of the machine controller of the present ~ 6(~3~ ' invention in cooperation with a machine tool;
FIGURE 2(A-B) is a block diagram showing the cir- ¦
cuit board interconnection structure of 'the preferred embodiment;
FIGURE 3 is a schematic b:Lock diagram of the micro-S computer utilized in the preferred embodiment;
FIGURE 4 (A-B) is a schematic diagram showing the feed rate drive circuitry of the present invention;
FIGURE 5 (A-D) is a diagram illustrating the functional opexation of the preferred embodiment;
FIGURE 6 (A-J) is a flow chart illustrating the sequence of software instructions for programming the micro-computer of the preferred embodiment;
FIGU~E 7 (A-C) illustrates programmable parameters which are displayed on a screen for operator selection;
FIGURE 8 is a view illustrating the bit location in two digital words representing flag~ indicating selection of particular operator selected parameters;
FIGURE 9 is a graph illustrating several feed rate response curves which may be selected by the machine opera~
tor; and FIGURE 10 is a graph of one quadrant of a feed rate response curve generated according to this invention.
DESCRIPTION OF THE PREFERRED EMBODI~ENT
_ Referring to FIGURE 1, there is shown in simplified form a machine 10 having a tool 12 ~or cutting workpiece 14.
Tool 12 is dri~en by a spindle motor 16 and the workpiece is fed into the path of tool 12 by a piston 18 at a feed rate determined by control signals driving motor 20~
It should be understood that machin~ 10 may also be capable of moving tool 12 as well, and for p~lrposes of .

11860 39~ !

this invention the term feed rate means the relative feed rate between the tool and the workpiece.
The present invention finds particular utility in conjunction with automated machinery which includes an in-ternal machine control circuitry 22 such as known numericcontrollers (NC) or computerized numeric controllers (CNC).
Control circuitry 22 senses the operational status of the machine over input lines 23 connected, for example, to limit switches 24 and generates output signals for controlling machine operation in response thereto. Of special interest is the control function applied to feed rate motor 20 which determines the feed r,ate of workpiece 14. A feed rate over-ride potentiometer 26 is generally provided to give the op-erator some manual control for adjusting the feed rate.
Typically, machine control circuitry 22 includes a binary coded decimal (BCD) output command bus 28 which is coupled to the machine components for controlling their operation.
The process controller 30 of the present invention can be utili~ed to monitor and control the operation of several different machines. However, for ease in readily appreciating the teachings of this invention, its use will be described only in connection with a single machine. Con-troller 30 is conveniently packaged in a housing 32 which includes a video screen 34, keyboard 36 and printer ', 38. A power sensor 40 monitors the instantaneous power drawn by spindle motor 16 and provides an indication of such power usage to controller 30. Power sensor 40 may be that manufactured by the assignee of the present invention under the trademark ISO-WATT which is more fully described in United 30 States Patent No. 4,096,436 to Cook et al issued on June 2OF

~:~L86(~34 1979. As will be more fully herein described, controller 30 continuously monitors the power consumption of machine 10 and provides control signals to machine control cirCuitrY
22 over output lines 42 when the actual machine power consump-S tion de~iates from an optimum level~ Controller 30 alsocommunicates directly with machine reset push buttons 44, 46, 43 over lnpu~ lines 50. Input lines 50 include a STROBE in-put for entering BCD commands into controller 30 whereas output lines 42 include an ACK output for acknowledging re-ceipt of the commands. Controller 30 interfaces directlwith the feed rate override potentiometer 26 over output 52 for controlling the feed rate in the adaptive mode.
FIGURE 2 shows the schematic layout of the circu;
portions for the controller 30, with the rectangular boxes representing individual circuit board caD~swithin housing 32.
The particular embodiment shown includes two racks within housing 32, a control rack and an I/O rack which accomodates inputs fxom two separate machines. More machines can be monitored merely by adding similar I/O racks. Briefly, the BCD commands from machine control circuitry 22 are received and temporarily stored in the buffer logic of input card 60.
The BCD commands communicate with microcomputer board 62 over bus 65, through data/control link 64 and bus 84, in cooperation with I/O and control rack interfaces 66 and 68, -espectively. The feed rate card 70, I/O card 72 (inter-facing input lines 50 as well as output lines 42) likewise communicate with microcomputer 62~ A display keyboard in-terface 74 couples display 34 and keyboard 36 to microcom-puter 62. Power sensor 40 provides informational input to microcomputer 62 by way of a signal conditioning card 80, :

8~3~

analog bus 81, and an analog to digital converter card 82 whose output is fed over bus 84 to microcomputer 62. Optional printer 38 is controlled via digital to analog circui-try on card 86. Power is provided to the indlvidual cards by way of link 88. Cards 90 and 92 provide appropriate biasing voltages to the internal electrical components of the other cards.
FIG~RE 3 shows in somewhat more detail the con-figuration oE microcomputer board 62. A microprocessor unit 10 100 communicates over address bus 102 and data/control bus 104 with a memory module 106, a programmable timer 108, a peri-pheral interface adapter (PIA) 110 and an asynchronous com-munication interface adapter (ACIA) 112. Memory module 106 preferably includes a random access (RAM) memory, an erasable programmable read only memory (EPROM), and an electrically al-terable memory (EAROM) which are individually addressed by memory address decoder 114. The functional block diagram of FIGURE 3 is representative of a conventional integrated circuit microcomputer complex. In this particular example, 20 microprocessor 100 is a Motorola MC6802 microprocessor, memory module 106 includes a 2716 EPROM, a 2114 RAM, and a 3400 EAROM, all of which are known in the art. Programn~able timer 108 is a 6840 component~ PIA 110 iS a 6820 component, and ACIA 112 is preferably a Motorola 6850 device. The ACIA
112 provides an intexface for receiving serial data from the ke~board interface 74 and presenting it over data/control bus 104 in a parallel fashion compatible with microprocessor 100. ACIA 112 likewise converts the data from microprocessor 100 into a format compatible wi-th the keyboard 36 and 30 display 34. PIA 110 generally provides a buffer in-ter-~ 6~3~ ' face for temporarily storing inputs from khe machine for subsequent transmittal to microprocessor 100 and, conversely, storing data placed therein from microprocessor ~00 for transmittal to the machine~ The program which will be later described in detail is stored in memory module 106 and is used to instruct the operation of the microprocessor 100.
The program includes certain routines which must be initiated within a given time frame. To this end, programmable timer 108 is loaded with a predetermined binary number. During operation, programmable timer 108 is decremented until it counts down to 0 from the number previously loaded into it.
When timer 108 times out it sets a flag. The program is structured to check for the status o this flag and when it is set the program performs certain designated tasks.
l'he operation of the feed rate drive control cir-cuitry 70 may be understood upon reference to FIGURE 4.
Microcomputer 62 generates a feed rate control signal as an eight bit digital word over data lines D0-D7. The content of the digital word determines the amount of voltage which is ultimately applied to the feed rate motor 20 to control the feed rate. In the embodiment shown, the feed rate over ride potentiometer 26 (FIGURE 4B) has been tapped as desig-nated by the X's to give controller 30 primary control over the feed rate. As is known in the art, feed rate override potentiometers 26 are resistive divider networks providing the operator with the ability to àdjust the feed rate manually as a percentage of full scale~ The output of pot 26 is generally coupled to the internal machine control circuitry 22 which uses the output voltage as a base for con-trolling the drive signals to motor 20. The reference ~ 12 ~

39~ ~

voltage (+VR) applied to pot 26 is generally the maximum rated voltage for the motor~ In this embodiment, the line from the maximum reference voltage +VR is cut and applied via line 120 to provide a maximum reference level for the feed rate override drive control circuitry 70. Line 122 is coupled to the other side of the pot 26 to provide a minimum reference level, which in this embodiment is ground. The maximum and minimum reference levels on line 120 and 122 are coupled to the reference inputs to voltage controlled buffers 10 124 and 126 through isolation amplifiers 128 and 130, re-spectively. Resistors R17-R20 and R25-28 serve as pull up resistors, whereas resistors R21-R24 and R29-R32 limit the current to buffers 124 and 126, respectively. The maximum and minimum reference voltages on bufferc 124 and 126 co--operate to provide a voltage window for converting the digi-tal bits of the feed rate control word to either the maximum or minimum reference voltage depending upon the states of the digits in the word. For example~ the digits having a HIGH
logic state will be converted to the maximum voltage whereas those digits at a LOW logic level will be converted to the ~
minimum reference voltage level. Voltage-controlled buffers 124 and 126 are commercially available as 4050 noni~lverting CMOS buffers. The voltage referenced digital outputs from buffers 124 and 126 are coupled to a digital to analog con-25 verter 132. D/A converter 132 converts the incoming data word to an analog voltage le~el as a function of the content thereof. If, for example, the data word was a binary 128 and the maximum reference +VR was +10 volts, the output of D/~
converter 130 would be about +5 volts. This output is coupled 30 to the wiper output of potentiometer 26 over line 134 after ~ ~86(~

VAL-12~
being buffered by isolation amplifler 136. If the wiper of potentiometer 26 is set to its full open position (maximum voltage3, the base for deriving the drive signal to feed rate motor 20 is controlled directly from controller 30. Adjust-ment of the wiper enables the operator to further adjust thefeed rate level as a percentage of the controller applied feed rate level. Hence, it can be seen that feed rate cir-cuitry 70 can be readily adapted to a variety of different motor ratings automatically without circuit modiication.
The functional diagram of FIGURE 5 will aid the reader in understanding the functional operation of the con-troller of the present invention. FIGURE 5 includes 5 func-tional columns from left to right defining~ inputs and out-puts to the controlleri I~O control functions; power limi~t comparisons; delay timers; and operator programmable data.
FIGURE 5A shows the functional operation for the machine parameter programmable data. Machine parameter data is that information which imposes overriding constraints on the machine 10. FIGUP~E 7A illustrates the readout on dis-play 34 for programming this data.
The MACHINE HI LIMIT is considered the absolutemaximum power level which should never be exceeded during normal operating condition for the machine.
The M~CHINE LO LIMIT is that minimum power level below which the machine should never fall during normal op-eration. Vnlike the MACHINE HI LIMIT, which cannot be in-hibited, the MACHINE LO LIMIT can be either enabled or in-hibited depending upon the customer's applications. Typically, the MACHINE LO LIMIT is used to indicate broken belts, drive train problems or part-not-present conditions.

6~3~
VAL~124 The machine OVER LIMIT TIME DELAY is that period of time which the customer will allow a machine fault con-dition (violating MACHINE HI or LO LIMITS~ to exist without activating a machine alarm output.
SPINDLE SURGE TIME is a programmable period when all faults are inhibited during a temporary overpower con-dition due to machine start up power surges.
During machine operation, the absolute machine power consumption is compared with the MACHINE HI LIMIT and MACHINE LO LIMIT. If the màchine power consumption violates either of these limit values, the machine OVER LIMIT TIME
DELAY timer effectively begins running and once the fault condition continues for that period of time, a MACHINE OUTPUT
(one of output lines 42) is activated. The state of the MACHINE OUTPUT line is normally closed and is opened whenever the MACHINE HI LIMIT or MACHINE LO LIMIT is exceeded for the màchine O~ER LIMIT TIME DELAY.
FIGURES 5B and 7B illustrate the programmable section limits of the preferred embodiment. Each machine has a number of programmàble sections, each with its own set of parameters. For example, machine 10 may have one section which sets the parameters for a boring operation and another section sets parameters for a milling operation. Similarly, different sections may be called up depending upon the posi-tion of the workpiece relative to the cutting tool. Forexample, as shown in FIGU~E 1, when workpiece 14 successively trips limit switches 24, a new section may be called up which would set new operating criteria for the machine. Each section is identified by a binary coded decimal number. Thus, whenever the parameters for this particular section are re-quired to be active, internal machine control 22 places an 6~34 identifying BCD number on the bus 28 which selects the desired section parameters.
LIMIT 1 is typically used as a high horsepower limit for the sectional operation.
DELAY 1 is a user programmable time delay which defines -the length of time that the LIMIT 1 parameter may be exceeded before the LIMIT 1 output is tripped.
LIMIT 2 is another available power parameter which the user may program to fit his application.
DELAY 2 functions the same as DELA~ 1 but corresponds to LIMIT 2. Both DELAY 1 and DELAY 2 are programmable in tenths of a second.
In operation, the currently active section continu-ously compares the auto zeroed power level (to be described below3 with the LIMIT 1 and LIMIT 2 values. If either of these limits are exceeded for their programmed time delay periods, their corresponding limit output will be tripped.
The state of the LIMIT 1 output (one of lines 42) is normally closed which will be opened when a fault is detected. Con-versely, the state of the LIMIT 2 output (one of lines 42)is normally open and will be closed when the fault is de-tected.
Each section may include an adaptive option for adaptively controlling machine operation. This will be described further in connection with FIGURE 5D.
FIGURES 5C and 7C illustrate programmable BCD con-trolled parameters. The BCD parameters are defined by placing a numerical code adjacent to the desired function and entering that code into the program of the internal machine control 22 as well. When -the BCD code numeral is sent over bus 28, the controller 30 carries out the functional parameter ~6(~3~

corresponding to the BCD eommand eode~ The eight bit BCD
data bus 28 is continuously monitored by controller 30 for valid program data. A valid programmed command is indica-ted by a 100 millisecond acknowledge (ACK) pulse. The BCD command codes control system operation by enabling/disabling various functions, calling up appropriate seetions, etc. In order for the correct parameters to be active during a specifie machine cycle, -the BCD command code calling up the proper sections must be sent by the machine's internal control 22 just prior to the beginning of that machining operation.
While this machining operation is active, the power limits for that section will be eontinuously monitored until a new seetion is called up by the appropriate BCD command codes from internal machine control 22.
The following is a list of BCD programmable parameters.
M~CHINE LO LIMIT ON/OFF selectively enables or disables the MACHINE LO LIMIT parameter previously diseussed, i.e. if the MAOEIINE LO LIMIT is disabled, the MACHINE OUTPUT
will remain closed regardless of whether the maehine power con-sumption has fallen below the MACHINE LO LIMIT level.
As noted above, each section of this machine has two programmable limits: LIMIT 1 and LIMIT 2 with their associated outputs. The LIMIT 1 output is normally closed wlereas the LIMIT 2 output is normally open. According to a feature of this invention, these limits may be latching or nonlatching (momentary) by the use of the correct ~CD command.
In a nonlatching mode these outputs will change state only for as long as the associated limit value is exceeded. When in a latched mode, the output is latched in its opposite state when the limit is exceeded and remains latehed until reset ~ 6(~3~ ( VAL~124 by manually activating the appropriate reset switch, by in-putting the BCD command code for reset from the machine's internal control 22, or by appropriate operator response on keyboard 36.
The TIMER command selectively enables a timer whose time period is conveniently displayed on display 34.
The COUNT command increments a displayable counter on display 34 by one which may be used as a piece counter.
~/Z (auto zero) causes controller 30 to store the absolute power at the time that the command is received and is utilized by substracting it from subsequent power xeadingsO
Section limits LIMIT 1 and LIMIT 2 and the adaptive limits to be discussed use the auto zeroed value while the machine limits (MACHINE HI LIMIT and MACHINE LO LIMIT) use the un-zeroed absolute power consumption.
The ~ESET RCD command resets any latched output, re-turns the auto zero and displayed power to the absolute power value, and transfers machine control to a null mode in which LIMIT 1 and LIMIT 2 are disabledO
The NULL cor~mand inhibits all section parameters tLIMIT 1, LIMIT 2, and àdaptive).
The AD~PTIVE BCD command enables or disables the adaptive pararneters for the active section.
FIGURE 5D and portions oE FIGURE 7B illustrate the prograr~mable parameters for the adaptive control mode. Adap-tive control provides for constant power during machining operations by monitoring the power input and controlling the machine feed rate to maintain a programmed adaptive power level.

The adaptive power level (ADPT PWR) is the desired ~ 18 -1186(~3~

power level of a machining operation that controller 30 will maintain during normal operation by adjust~ng the feed rate~
RESPONSE is the rate at which the feed rate will change in order to maintain the adaptive power level. The RESPONSE value is a percentage of a preprogrammed feed rate change function as will be later discussed more fully herein.
Values below 49% will decrease the RES`PONSE while values above 50% will increase the rate of feed rate change.
The IDLE PWR programmable parameter is generally chosen to be that level of power which is slightly above that normally dissipated by the machine when tool 12 is not in contact with workpiece 14.
AIR CUT is the feed rate governing machine operation when the lnput power level falls below the IDLE POWER level.
It is expressed as a percentage of maximum available feed rate.
IMPACT is the feed rate level which will be utilized when the input power rises above the IDLE POWER. It is expressed as a percentage of maximum available feed rate.
HOLD defines a time period for which the IMPACT
feed rate will be maintained after the IDLE POWER level is exceeded. It is programmed in tenths of a second.
The MA~IMUM and MINIMUM programmable values define the upper and lower feed rate limits while under adaptive control.
Briefly, the input power is continuously compared wi-th the -two programmed power limits: IDLE POWER and ADAPTIVE
POWER. Depending upon the comparison, the feed rate control output will be adjusted to correct the feed rate of workpiece 14 to bring it within the desired limits. Briefly, if the input power is below the IDLE POWER limi-t, the controller 30 will cause workpiece 14 to be fed at the AIR CUT

36(~3~

feed rate. Once the IDLE POWER limit has been exceeded the impact rate will be generated by controller 30 for the amount of time defined by the HOLD time period. After the HOLD time period has elapsed, the feed rate will be increased or de-creased by a change rate whose magnltude i5, in part, deter-mined by the RESPONSE level in order to bring the machine power consumption in line with the ADAPTIVE POWER level.
PROGRAM DESCRIPTION
FIGURE 6 (A-J) shows a detailed flow chart of the program for instructing the operation of controller 30. As is known in the art, program instructions are stored as software in memory module 106 preferably in EPROM portion. Micro-processor 100 sequentially addresses the instructions of the program over address bus 102 to perform the instructed op-eration and, when appropriate, provides data output signals to PIA 110 or ACIA 112. Program instructions are generally executed in a cylical fashion in which the program checks for the status of certain operational inputs and provides the necessary control outputs in response thereto.
Upon energization of controller 30 the program be-gins its cycle as represented by box 200 (FIGURE 6A). The pro-gram makes an initial check to insure that valid program data has been stored in the EAROM portion of memory module 106. The programmed parameters are initially loaded into RAM and into 2S EAROM memory portionsto save the data in the event of power so that the user need not reprogram the parameters every time con-troller 30 is shut off. If the program parameters are valid, they are loaded into RAM portion for processing during opera-tion. The programmable parameters discussed above are _ 20 -~1~36~34 loaded into memory module 106 by the program portion labeled DISPLAY shown in FIGURES 6F-6I. Keyboard 36 includes keys labeled MACH PARA, MACH BCD, and SCTN which cause screen dis-play 34 to display a visual indication of the selectable machine parameters as shown in FIGURE 7A, the BCD controlled parameters shown in FIGURE 7C, and the section parameters shownin FIGURE ~, respec~ively. The program senses the àctiva-tion of any of these keys and causes the screen to display these programmable parameters. A cursor or arrow is initial-ized to point to the first programmable limit displayed. Atthis time the operator types in the requested information~
When the ENTER key is pushed (FIGURE 6I) the data is entered into display keyboard interface card 74 and loaded into memory module 106 through ~CIA 112 of the microcomputer board 62. This process continues until all of the necessary infor-mation is programmed by the operator. Reference to the multi-plicity of programmable parameters shown in FIGURE 7 makes it apparent that the user has an extremely wide variety of pro-grammable parameters which are readily adaptable to a diverse number of machining operations. When programming the BCD
parameters the operator types in a number adjacent to the ~unction to be performed. When that number is generated by the internal machine control circuit 22 over the BCD command bus 28, controller 30 matches that number with the programmed function. For example, the arrow is pointed to LIMIT 2 in FIGURE 6C. The operator has typed in the number 15 to define the LIMIT 2 output latched condition and the number 16 for the nonlatched condition. The machine internal controller 22, which may be a known computer numerical controlled (CNC) system places the number 15 on bus 28 when the LIMIT 2 output
3~

is to be latched and the number 16 when it is not to be latched.
Turning back to FIGURE 6A, controller 30 checks the status of the BCD input bus 28 and if a new number has been placed thereon it will proceed to condition controller 30 with the program function at the appropriate time. With refer-ence to FIGUR~ 7C, assume that numbers 11, 13, 15, 17 and 21 are received over the BCD communication ~us 28. Controller 30 would match these numbers with those stored in a table in memory 106 and set flags in preselected memory locations in-dicating that such functions should be performed at the appro-priate timed sequence. FIGURE 8 schematically represents two eight bit words in memory for storing the flags. In our ex-ample, bits 0, 1, 6 and 7 of word 1 would be set and bit 2 of word 2 would be set. After the apFropriate flags have been set with each valid BCD input controller 30 generates an acknowl-edge (ACK) pulse to internal machine control circuit 22.
Controller 30 then progresses to check whether new ~achine or section parameters have been entered and if so, they are loaded into appropriate memory locations. Software counters are initialized by loading predetermined memory locations with a count number which is a function of the pro-gra~ned time delay.
The current power reading from power sensor 40 is monitored and saved for auto zeroing if requested by the appropriate BCD command.
When the absolute machine power is zero prior to start up of the machine, the surge timer is initialized to its original count~ After machine start up, the timer begins to count down and will time out after programmed SPINDLE

3~ (i SURGE TIME has elapsed. Until the SPINDLE SURGE TIMER has timed out, all power conparisons are disabled. In such manner expected surges in machine power consumption due to start up will not adversely affect controller operation which may o-therwise consider the start up power as an over limit condition.
Once the SPINDLE SURGE TIMER has timed out, con-troller 30 determines whether a machine section has been called by a BCD command. If 50, the section programmable parameters will be utilized to control portions of the opera-tion. If a section is called, the auto zeroed input power is compared with the LIMIT 1 power level. If it is over the limit the associated output switch is not immediately caused to change state but will do so only if the DELAY 1 timer has timed out. If it has not timed out ~he program progresses through its cycle and will check the condition of the DELAY
1 timer on the next cycle. For example, if DELAY 1 timer is set at 1 second~ the switch is not activated until 1 second has elapsed in which the machine power consumption has con-tinuously exceeded the LIMIT 1 level. Since this is a pro-grammable time delay, expected fluctuations in the machine operational environment will not alter the machine operation.
It should be noted that the switch may take many forms and in this example is a bistable device such as a flip flop in I/O card 72 whose output is coupled to a dedicated output line 42. The user may utilize this dedicated line for many purposes but generally it is used to control some component in the machine.
If, on the other hand, the input power is within the LIMIT 1 value, the DELAY 1 timer i5 reinitialize~ to its 6~

starting count. Thus, the timer will not be allowed to time out since it will be continuously reinitialized as long as the input power is within limits.
Assume, for example, that the switch associated with LIMIT 1 has been activated (which would open the switch since it is normally closed) due to a previous over limit condition.
It is a feature of this invention that the user can selec-tively determine whether the switch remains in that state if subsequently the machine power consumption comes back within limit. Controller 30 checks for the status of the latchedf nonlatched flag shown in FIGURE 8. Note that in this embodi-ment, the BCD commands control the status of bits 1 and 2 of word 1 in FIGURE 8, and the controller 30 via microprocessor 100 sets bits 3 and 4 depending on the current state of switches #1 and #2. If the associated switch is to be latched~
the state of the switch will not be changed. On the other hand, if it is nonlatched, the switch will return to its closed position if the power returns to within limits. This feature sives the user added flexibility. For example, if the switch associated with the LIMIT 1 output controls the feed hold to machine 10, the machine feed will automatically be reinstated as soon as the power consumption comes within limits if the switch is nonlatched. On the other hand, if the switch is latchedr feed will only be resumed upon manually pressing limit 1 reset button 46 (FIGURE 1) to restart the machining operation or other reset commands noted above. A wide variety of other useful advantages can be readily envisloned.
Controller 30 then progresses to check whether the input power is over the LIMIT 2 level. The same steps utilized in the LIMIT 1 condition are used to determine 136039~

whether the switch associated with the LIMIT 2 condition is to be activated. However, in the preferred embodiment, the LIMIT 2 switch is normally open so that an over limit condi-tion would close the switch.
Generally, the values for LIMITS 1 and 2 are chosen to define a window within which the particular machine opera-tion performed in that s~ction should be maintained~ In com-parison the MACHINE HI LIMIT is generally the maximum accept-able power consumption for the machine regardless of the type of operation it is performing.
In some operations, section parameters may not be called and thus the machine HI and LO limits provide the only power constraints. Assuming that the SPINDLE SURGE
TIMER has timed out, controller 30 determines whether the absolute power consumption is over the MAC~INE HI LIMIT. If it is and the machine OVER LIMIT TIMER has timed out, an alarm output signal is applied to the machine. This output signal generally is used to turn the machine off. Similarly, if the MACHINE LO LIMIT is enabled and the power is below this limit, the alarm signal is generated to turn the output off assuming the machine OVER LIMIT TI~R has timed out. It should be remembered that the MACHINE LO LIMIT can be disabled by an appropriate BCD command. Also, it should be understood that the output signals are not generated until the over limit conditions have been continuously exceeded for the pro-grammable OVER LIMIT TIME delay similar to the LIMIT 1 and LIMIT 2 outputs. If the above power comparisons show that the machine is operating within limits, the machine OVER LIMIT
TIME DELAY timer is reinitialized and the program enters the adaptive control mode if selected.
FIGURES 6C and 6D illustrate the flow chart of the adapti~Je control portion of the program. If the adaptive _ 25 _ 3~
VAL-]24 control has been requested by the appropriate BCD command, the controller checks the content of the impact hold timer.
If it is 0, the controller compares the input power with the IDT,~ POWER limit. When the input power is less than the IDI.E POWER limit and the impact HOLD timer is 0, controller 30 realizes that air is being cut, i.e. that the tool 12 is not contacting the workpiece 14. The AIR CUT feed rate is fetched from the memory and forced on the feed rate control line 52 to control the machine feed rate. The AIR CUT feed rate is generally a relatively high value so that the work-piece can be brought into position for machining very quickly.
The controller sets an air cut flag and the workpiece is fed `~
at the AIR CUT feed rate until the actual power consumption e~ceeds the IDLE POWER limitO This increase in power con-sumption is due to the impact of the workpiece 14 againsttool 12. Such an occurxence causes the controller to begin decrementing the impact HOLD timer. The feed rate is also changed to the generally slower IMPACT feed rate. The feed rate is maintained at the IMPACT feed rate until the HOLD
timer has timed out. The utilization of the transition im-pact feed rate for the selected time period enables the ma-chine to recover from the usually fast AIR CUT feed rate and stablize before continuing onto the normal adaptive machining operation. Since both the IMPACT feed rate and the HOLD time for which i is applied are selectively programmable, the controller can be individually adapted to the user's particu-lar application.
After the impact HOLD timer has timed out, the con-troller enters into the normal adaptive feed rate dete~nina-tion sequence in the program. This sequence is entered on 3~

a constant time base defined by the time period of pro-grammable timer 108~ In the preferred embodiment this pro-grammable time period is one tenth of a second. The program continuously compares the actual power consumed by the ma-chine with the desired ADAPTIVE POWER (ADPT PWR) which hasbeen previously programmed. The difference therebetween is referred to as positive or negative error defined by the adaptive power being greater than or less than the actual power~ respectively. Controller 30 sets an ERROR SIGN flag initially in a positive state. If the actual error is nega-tive, it is multiplied by a -1 and the ERROR SIGN flag status is reversed to show that the error is negative. Thus, re-gardless of whether the error is negative or positive the input ~o the FEED RATE CHANGE routine will be a positive number, yet the status of the ERROR SIGN flag, which will be later retrieved~ serves to save the original sign of the comparison.
At this point in the program it calls a FEED RATE
CHANGE routine which is shown in FIGURE 6E. One unique as-pect of this invention is the provision of a nonreactivewindow such as that shown in FIGURE 10 in which no feed rate change is generated if the error i5 within -the confines of this window~ In this embodiment; the maximum nonreactive window has a value of 128. However, provision is made to ad-just the nonreactive window to accomodate different user appli-cations. It is desirable to have the nonreactive window to be proportional to the selected ADAPTIVE POWER level since more noise can be expected at the higher power levels. Accordingly, the program reads the selected ADAPTIVE POWER and generates a preprogrammed percentage of that power level. The programmed ~L86~34 percentage, while not being user programmable in this embodi-ment, is readily changed by the manufacturer to accomodate the user's application. The percentage of ADAPTIVE POWER
is subtracted from the maximum number defining the nonreactive window to thereby generate a STABLIZATION FACTORo This STABLIZATION FACTOR is added to the ERROR in order to adjust the nonreactive window. Thus, the curve shown in FIGURE 10 is effectively shifted to the left depending upon the quantity of the STABLIZATION FACTOR which, in turn, is a function of the adaptive power level.
The present invention advantageously uses a non-linear exponentiaL feed rate change function to calculate the feed rate change when there is an ERROR difference be-tween the actual machine power consumption and the desired ADAPTIVE PO~ER level. In such manner, the amount of feed rate change generated is several times larger at high error levels than at lower error levels. This nonlinear characteristic is extremely effective in stablizing the ma-chine operation. The advantages of using the exponential function becomes apparent when compared with known linear or straight line functions. In FIGURE 10 the dotted line A
represents a known linear curve. It can be seen at error levels of 1,024 that the feed rate change would be approxi-mately 100. This level of change may be determined by the user to cause s~stem oscillations in his particular applica-tion. However, in order to bring the feed rate change down to a lower level, for example, to about 10, the prior art uses damping attenuation circuits which would bring the feed rate change down to the desired level as shown in curve B. However, this damping alsc affects the feed rate change ~ 28 -3~L

level at the higher error levels, thereby slowing down the system response. In comparison, the exponential feed rate change function utilized by the present invention gives the user the best of ~oth worlds wherein large feed rate changes are generated at large error levels without sacrificing the ability to generate substantially lower feed rate change levels at lower errors to prevent system oscillations and maintain stability.
Pursuant to the present invention the feed rate change is generated by controller 30 as a digital approxima-tion of an exponential function of the ERROR according to the formula-FEED RATE CHANGE = 2where N is a positive integer, The integer N defines a scaling factor and is chosen in this embodiment as 256 to aid in computerized calculation of the feed rate change level~
The curve generated by the above formula is approxi-mated by a series of-discrete feed rate change values. The series of values can be drawn as in FIGURF, 10 to represent a piecewise linear approximation. Each segment (FEED RATE
SEGMENT VALUE) of the linear approximation has an initial value given by the equation: -F.R,SEG,VAL, = 2 (INT (ERRoR/N))An interpolative value (FEED RATE INTERPOLATIVE VALUE) within a given segment can then be determined using the following relationship:

F.R.INT.VAL.-INT (ERROR)-(INT(ERROR/N) x N) where INT represents the integer function.

The feed rate change value for a given error ls thus the sum ~L~86~3~ -VAL-12~
of the FEE~ RATE SEGMENT VALUE and the FEED RATE INTER-POLATIVE VALUE.
The program of the present invention efficiently calculates a new feed rate change level every 0.1 second as defined by the time base of programmable timer 108.
By way of a specific example and with reference to FIGURES 6E and 10, assume that the ERROR is 1500. The FEED
RATE SEGMENT VALUE is F.R.SEG.VAL = 2 (INT(ERROR/N)) = 2 ~INT(l5oo/256)) = 2 (INT 5.86) .= 2 5 = 32 Microprocessor 100 thus calculates this value according to the above equation using known techniques and stores it in memory 106 for further use. By reference to FIGURE 10 it can be seen that the value 32 represents the starting point for the segment in which the ERROR of 1500 falls.
Microprocessor 100 then determines the FEED RATE
INTERPOLATIVE VALUE within that segment using linear inter~

polation techniques according to the formula:
. (ERROR)-(INT~ERROR/N x N) F R.INTP.VAL = INT ~ (8-INT~ERROR/N~) = INT ~(1500)-(INT(1500/256) x 256 ¦ (8-INT (1500/256) ~5 ~2 = INT 1500-(INT 5.~6) x 2561 (8-INT (5.86)) J

= INT rl500 - 12~03 l 23 = INT ~220 ~ 8 J

= INT [27.5 = 27 - 30 ~

~86~3~

Hence, the initial FEED RATE CHANGE VALUE is:
F.R.CH,VAL = F,R.SEG.VAL + F.R.INTP.VAL.
= 32 ~ 27 =59 The special case of the ERROR being less than N is provided by -the decision block in FIGURE 6E which branches the program to set the FEED RATE SEGMENT ~ALUE to 0 instead of the expected value of 1. The interpolation to generate the FEED
RATE INTERPOLATIVE VALUE is simplified in this case to the integer function of the ERROR divided by 27.
The curve shown in FIGURE 10 shows the entire spectrum of feed rate change levels calculated by the program of the present invention. Alternatively, memory module 106 could contain a table of all of the feed rate changes in which the error would address the memory and fetch out its corresponding feed rate change. However, this would require a substantial amount of memory, in this example being 2,048 x 8 bit locations.

According to still another feature of this invention, the initial feed rate change level thus calculated is user adjustable to provide various response factors. In FIGURE
9, the unadjusced or normal feed rate change response curve is shown and labeled "NORMAL". The NORMAL curve, however, can be adjusted depending upon the user application by programming in the desired response factor which is a section programmable parameter (FIGURE 7B). A 50% response factor will select the NORMAL curve shown in FIGURE 9. Response factors above 50% will increase the response ra-te along the lines of the curve labeled >50% in FIGURE 9. Conversely, response factors of less than 50% will decrease the response - 3~ -~8~(~3~ 1 V~L-124 rate along the llnes of the curve in FIGURE 9 labeled ~ 50%.
As shown in FIGURE 6E, the program fetches the selected re-- sponse factor from memory 106. If it is less than or equal to a 49% cut off level, the previously generated feed rate change level is divided by 50 minus the response factor per-centage. Conversely, if the response factor percentage is above the cut off level, the feed rate change is multiplied by the difference between the response factor percentage -less 49. The cut off level is chosen at 49 merely for con~
venience since otherwise the difference would be a zero when the 50% normal rate is selected by the operatorO
Ater the new feed rate change has been generated, the program determines the condition of the ERROR SIGN. If i~ is negative, the feed rate change is subtracted from the current feed rate.. Conversely, if the negative ERRO~ SIGN
flag has not been set, the feed rate change is added to the current feed rate. In other words, if the actual power is less than the ADAPTIVE POWER, the feed rate will be in-creased, whereas the feed rate will be decreased if the actual power is above the ADAPTIVE POWER. The new feed rate is compared against the operator's selected MAXIMUM feed rate and MINIMUM feed rate. If the new feed rate is greater than the MAXIMUM feed rate, the controller 30 sets the feed rate to the MAXIMUM feed rate. Similarly, if the new feed ~5 rate is less than the MINIMUM feed rate, the MINIMUM feed rate overrides and-is used as the new feed rate which is sent out to the machine via the feed rate override circuitry card shown in FIGURE 4.
After the limit monitoring and feed rate change functions have been performed the program progresses throuyh _ 32 -~L~86~3~

instructions such as those shown in FIGU~E 6F-6H which monitor the keyboard inputs and perform the functional blocks therein shown. Generally, these functions relate to controlling the readout on display 34.
Turn now to the timer update routine shown in FIGURE ~J. This routine checks the condition of the pro-grammable timer 108. As noted above, programmable timer 108 is set to time out every tenth of a second. If it is timed out the states of the following software timers are checked:
machine OVER LIMIT TIME DELAY timer, SPINDLE SURGE TIME timer, LIMIT 1 DELAY timer, and LIMIT 2 DELAY timer. If any of these timers have timed out, a flag corresponding to the particular timer is set. Those timers which have not timed out are decremented by one count. Thus, it can be seen that these timers are loaded with a predetermined count which is a func-tion of their programmed time and then decremented at the time period determined by programmable timer 106. However, as noted earlier in connection with FI~URES 6A and 6B, these timers are continuously reinitialized or reloaded with the original count as long as their associated limits have not been exceeded. The only method by which these timers will -time out is if their associated limits have been exceeded for their selected time periods.
If the machine console TIMER has been enabled by the appropriake BCD programmable parameter selection, it will be incremented to provide a visual indication of the run time for machine 10.
It can now be appreciated that the present invantion provides a machine controller having extremely more flexibility than those known in the art. Providing the ~ 33 :

~L86~3~

user with the opportunity to determine whether the output signals should be latched or nonlatched in response to an over limit condition enables the controller to be utilized for a wide variety of applications. The programmable time delays permit uninterrupted machine operàtion which accomo-dates for expected fluctuations in power levels and enables the user to individually define the constraints for his m~-chine that will alter the machining operation. The unique mode of adaptively controlling the machine insures system stability while at the same time permitting the user to select different, but comparatively more stabilizing, response ràtes for different applications. The feed rate override circuitry likewise is automatically adapted to different motor ratings which may be found on different machinesO In general, the controller utilizes relatively straightforward and inexpensive sensing techniques for a single machine criterion, but it optimizes the utilization of this criterion to provide a universal controller for a wide variety of ma-chine tools.
It should also be understood that the functional control aspects of this invention may be implemented by a variety of techniques. The foregoing specification has taught one skilled in the art how to use the invention by illustrating software routines which can be utilized to pro-gram a microprocessor to perform these functions. While thi~
technique is believed to be the best mode of practicing this invention at this time~ it can be performed by hardwired circuitry if desired, for example, by integrated circuit devices which contain the same basic elements which are only temporarily utilized by the microprocessor when instructed ~ 6(:~3~ 1 by the software program.
Therefore, while this invention has been described in connection with certain specific examples thereof~ no limitation is intended thereby except as defined in the appended claims.

Claims (16)

THE EMBODIMENTS OF THE INVENTION IN WHICH AN EXCLUSIVE
PROPERTY OR PRIVILEGE IS CLAIMED ARE DEFINED AS FOLLOWS:
1. In an adaptive process controller for a machine having a tool for performing work on a workpiece, said controller having means for continuously monitoring a machine parameter and adjusting machine operation so that said parameter is maintained at a preselected value, wherein the improvement comprises:
comparison means for providing a signal indicative of the error difference between the actual machine parameter and the preselected machine parameter; and adjustment means for changing the machine feed rate as an exponential function of the error between the actual and preselected parameters wherein said machine is provided with stable, yet fast response.
2. The improvement of claim 1 wherein said adjustment means further comprises:
means for providing a digital value as an output, the contents of said digital value representing a new adjusted feed rate;
a digital to analog converter for providing an analog signal proportional to said contents of the digital value; and means for coupling the output of said converter to a machine device for adjusting the actual machine feed rate.
3. The method of claim 1 wherein a feed rate change value is generated according to the formula:

FEED RATE CHANGE = 2 (ERROR) where ERROR is the difference between the actual machine parameter and the preselected value of the machine parameter.
4. The method of claim 3 wherein the feed rate change value is generated by a 2 step digital approximation which includes the summation of a feed rate segment value associated with a beginning point in a segment of values and a feed rate interpolative value derived from a linear interpolation to find a value within the segment association with the ERROR.
5. The method of claim 4 wherein said feed rate segment value is calculated according to the formula:

2 ( INT . ( ERROR/N ) ) where N is a positive whole number.
6. The method of claim 5 wherein the feed rate interpolative value is calculated according to the formula:

7. The improvement of claim 1 which further comprises:
feed rate change means for generating a feed rate change value as a function of the error;
means defining a nonreactive window for disabling said feed rate change means when the error is below a preselected value; and means for adjusting the nonreactive window to adapt the controller to different machining applications thereby insuring stability.
8. The improvement of claim 7 wherein the window is adjusted automatically by the controller as a function of the preselected value of the machine parameter.
9. The improvement of claim 1 wherein the machine parameter is the power consumption of the machine.
10. The improvement of claim 1 which further comprises:
feed rate change means for generating a feed rate change value as a function of error;
individually programmable means for selecting a response factor for affecting the controller response to the error;
logic means for adjusting the feed rate change value as a function of the response factor; and means for altering the machine feed rate according to the value of the adjusted feed rate change value.
11. The improvement of claim 10 wherein said logic means further comprises:
means for multiplying the feed rate change value with a number which is a function of the response factor when the response is desired to be increased; and means for dividing the feed rate change value with a number which is a function of the response factor when the response is desired to be decreased.
12. The improvement of claim 1 which further comprises:
means for generating a digital output signal whose contents is a function of the desired feed rate;
means for sensing the maximum and minimum operating voltage levels of the motor;
buffer means having a plurality of inputs for receiving said digital signal, and a plurality of outputs, operative to provide signals on its outputs at voltage levels which are a function of the contents of the digital signal and the operating voltage levels of the motor;

wherein the output signals from the buffer are automatically referenced to the operating voltage levels of the motor so that they may be utilized to control the motor at the desired feed rate.
13. The improvement of claim 12 wherein said sensing means are coupled to reference inputs in said buffer means to determine the output voltage levels therefor.
14. The improvement of claim 13 wherein said sensing means are tapped on either side of a feed rate override potentiometer biased at the maximum voltage rating for the motor.
15. The improvement of claim 14 which further comprises:
digital to analog converter means coupled to the outputs of the buffer means, operative to provide an analog output signal to the feed rate override potentiometer as a function of the buffer output signals.
16. The improvement of claim 15 wherein said digital signal includes a plurality of bits at a logical high or low voltage level; and wherein the buffer means assigns each bit at a logical high level to the maximum operating voltage level of the motor and each bit at a logical low level to the minimum operating voltage of the motor.
CA000430904A 1979-10-31 1983-06-21 Machine process controller Expired CA1186034A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US06/089,436 US4279013A (en) 1979-10-31 1979-10-31 Machine process controller
US89,436 1979-10-31
CA000363494A CA1154522A (en) 1979-10-31 1980-10-29 Machine process controller

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CA000363494A Division CA1154522A (en) 1979-10-31 1980-10-29 Machine process controller

Publications (1)

Publication Number Publication Date
CA1186034A true CA1186034A (en) 1985-04-23

Family

ID=25669175

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000430904A Expired CA1186034A (en) 1979-10-31 1983-06-21 Machine process controller

Country Status (1)

Country Link
CA (1) CA1186034A (en)

Similar Documents

Publication Publication Date Title
CA1154522A (en) Machine process controller
CA1218883A (en) Adaptive control for machine tools
EP0417312B1 (en) Feedforward control unit for servomotor
US4078195A (en) Adaptive control system for numerically controlled machine tools
EP0048261A1 (en) Microcomputer controlled power tool
US4296364A (en) Tool compensation system
KR940011352B1 (en) Numerically controlled machine tool
EP0207172B1 (en) Drive control system for servo motors
CN104731017A (en) Numerical controller for smoothing tool path in operation based on table format data
US4330832A (en) Cutter feed rate control system
CA1186034A (en) Machine process controller
EP1826644A2 (en) Numerical controller
EP0141860A1 (en) Position-controlling apparatus
US3626262A (en) No-load torque compensation system and the application thereof in adaptive control
JPS59106890A (en) Controller for controlling rotating speed completely automated for sewing machine and automatic sewing machine
JPH07129211A (en) Automatic correction system for varying load
CN2313237Y (en) Economic control device of numerical-control machine tool
GB1217961A (en) Automatic numeric machine tool control systems
KR100270217B1 (en) Main axes contro method by load power sensor
JPH0711985A (en) Auto idle time varying device for construction machine
US4569013A (en) Spindle speed control method and apparatus
KR940002205B1 (en) Servo control apparatus by spindle load
CA1162238A (en) Power factor monitoring and control system
WO2024116296A1 (en) Control device for controlling cooling device
CN2153177Y (en) Microcomputer control speed regulator for tea making machine

Legal Events

Date Code Title Description
MKEX Expiry