Content area
In typical computer numerical control (CNC) machining processes, a CNC program specifies machining parameters and geometrical data. Part programmers usually write CNC programs based on their experience and perception. Because humans may not be able to sense physical quantities with high accuracy, modern CNC machines are equipped with a variety of sensors to indicate machining conditions. However, modern sensing systems and human expertise are separated in most existing systems. Run-time information does not contribute to CNC program quality. An attempt is made to illustrate the structure for coordinating sensing data and expert knowledge to tune the CNC program. The tuning process is done through both knowledge reasoning and mathematical processing. Simulation demonstrates convergent results of tuned feed rate under the tool deflection constraint.
In some manufacturing processes, numerical processing power of computers has been used to automate operations. This has generally resulted in more accurate process control and improved production output. Typical examples of technology developed from this include, but are not limited to, numerical and computer numerical control (NC/ CNC), computer-aided engineering (CAE), computer-aided manufacturing (CAM), and so on. While these developments have greatly enhanced production rates by reducing planning and processing times, they do not contribute significantly to the efficiency of the manufacturing process itself. A common approach to manufacturing is to start by gathering information on the geometry, material, and quality specifications required by the design process and to terminate in a set of instructions for the process controller. This set of instructions (also called the part program) directly controls the process selected for part production.
The symbolic processing power of computers has been developed to the extent that they can now be used to represent knowledge, reasoning, and logic. This introduces the possibility of capturing expertise in a computer program and using it to make informed decisions on process control in real time. Automatic generation or alteration of an instruction set requires both manufacturing experience and in-depth machining knowledge. Hence, techniques of artificial intelligence (AI), using the symbolic processing power of the computer, may be used to capture expert process planning knowledge. This knowledge may then be used to generate the required instruction sets for each process controller. Such a methodology does not address industry's need to automatically evaluate the quality of existing instruction sets and systematically improve and customize them for the particular process and machine tool being used to produce the part. Because such a sequence of instructions was originally, and many still are, stored on punched or magnetic tapes, the process of optimizing cutting by modifying the part program will be referred to as "tape tuning."
Intelligent supervisory control (ISC) of machining is an approach being investigated for tape tuning. In this paper, following a brief outline of the functioning of an ISC system, the tenets of knowledge-based technology applied to tape tuning will be presented. The tape tuning system developed as part of this research will be introduced next. Finally, a sample tape tuning sequence will be presented and discussed.
INTELLIGENT SUPERVISION
In the control of conventional metalcutting operations, a machine operator monitors the production process and adjusts machining parameters to optimize production. The concept of an intelligent supervisory control is to construct a knowledge-based system that duplicates the functions of a machine operator. This is achieved by using a sensing subsystem, process models, and a knowledge processing technique for decision making. The sensing subsystem provides the necessary input information, the process model gives the mathematical basis for decision making, and the knowledge-based system (KBS) replicates the operators' thought process. While the first two elements are fairly clear, the last--knowledge processing--merits further discussion.
Knowledge-based technology is a discipline within the field of applied AI wherein human expertise in a specialized domain is coded and implemented on a computer. This coded expertise may then be coupled with other processes, such as an inference engine, a user interface, and a report generator, to build an integrated application program that uses the recorded knowledge. High levels of performance are thus achievable in a fraction of the time that would be required for human experts to accomplish the same task. A knowledge-based system may be defined as follows:
A knowledge-based system is "... a computer program typically:
a. Designed for solving complex problems ordinarily requiring human intelligence.
b. Embodying both expert knowledge and expert inferencing, which means that the former would be stored explicitly in a symbolic declarative language and the latter would consist of AI heuristic search and reasoning procedures that use stored information.
c. Possessing the capability of achieving high performance in narrowly specified domains, of incremental development, of dealing with incomplete or uncertain data, of handling unforeseen situations, and of justifying its results."(1)
The domain of expertise of a KBS is narrowly defined, and it can claim "expert" status only within that domain. The output of the system is some form of advice or design arrived at after a process of deductive reasoning. This process of reasoning uses facts, heuristics, rules, and induced knowledge to form a conclusion. KBSs are heuristic by nature, using "rule of thumb" to search for the good solution in a space of solutions in which there is not necessarily a single "right solution." They are ideally suited for solving problems in which the domain cannot be well defined analytically, or if the number of alternate solutions are large, as in the case of combinatorially explosive problems. For this reason, KBSs tend to address problems that do not have conventional algorithmic solutions. A typical problem that may be addressed is tape tuning, as will be discussed in the next section.
TAPE TUNING
Tape tuning is a typical problem that may be addressed using knowledge-based technology. The approach to tape tuning involves altering cutting speeds and feed rates for a process, normally based on considerable operator experience. To tune a part program automatically, this expert knowledge is needed and may be encapsulated as a set of facts, deterministic and heuristic rules, and control operations in a knowledge-based program. The task of tape tuning is carried out as follows:
a. The instruction set (G code part program) used by a CNC controller is parsed and processed by feature abstraction and engagement extraction modules using an object-oriented programming environment.
b. A run-time list consisting of a sequential set of features with associated engagements plus other machining parameters is created for the real-time monitoring and control environment.
c. The run-time list is used by the intelligent sensing system to obtain data for use in a postprocessing module that prepares a local database for the part that was machined using the original instruction set.
d. A process model for each of the features of the part is made available to the postprocessing module .
e. A knowledge-based system is used to tune the tape. The system is based on a comparative study of the data generated while cutting each feature, the process model for that feature, and the programmed machining parameters that appeared in the original instruction set.
f. The new part program is used on the next part, and the tape tuning process is repeated. A continuous, incremental improvement in the part machining process is thus achieved. Each tape tuning cycle provides more data about the process, and this improves the local database used by the knowledge system for continuous process improvement.
Figure 1 is an information flow diagram that shows the prototype tape tuning system used for this research. In the next few sections, each element of the system as developed in the current research will be briefly discussed to highlight its functionality.
Feature Abstraction
Each block of the instruction set is redefined as a feature class using an object class structure. Object-oriented programming facilitates a hierarchical structure so that child classes can inherit methods (that is, executable procedures) and instance variable values from parents. The feature abstraction module interacts with the engagement extraction module by sending and receiving messages. Such messages are similar to subroutine calls in languages like FORTRAN. Packets of information sent and received by these objects will vary depending on which class an object instance is being created for. The message received from the engagement extraction module contains the axial and radial engagement of the cutters and the coordinates of the positions where the cutter starts and ends the cut. After parsing and creating object instances, the feature abstraction module generates a run-time list. This list contains the information needed for intelligent process monitoring, process control, and tape tuning. The feature abstraction system is written in Common LISP with object-oriented extensions.(2)
Engagement Extraction
Engagements are extracted by creating a geometric model of the part and the volume swept by the tool as it moves through its programmed trajectory. The intersection of this swept volume and the current volume of the part is used to compute the engagements. The engagement extraction process for a cut starts with receipt of a trajectory message from the feature abstraction module. Based on the programmed starting and ending coordinates of the tool, a swept volume is defined in terms of radial, d sub r , and axial, d sub a , engagements of the tool. This information is returned to the feature extraction module.(3)
Run-Time List
The run-time list is the input to a microcomputer-based data acquisition and control system. This system runs in parallel with the controller-based part program, and block count data coming from the controller trigger execution of a data collection procedure for feature-based representations of each part program block. These data collection procedures collect cutting force data, spindle speed, and current tool position. The microcomputer data acquisition program merges the run-time list with the data collected and sends a file to the tape tuning module .
Sensing System
The system consists of digital/analog (D/A) and analog/digital (A/D) converter cards connected to a PC/AT system bus, spindle rpm transducer, three-component force transducer, tool position encoder, CNC program block sequence number encoder, and a circuit for computer control of the feed rate. The tape tuning prototype does not now use the automatic feed rate control feature because the tape tuning module determines new feed rates, and the value is edited into a new version of the part program to be used on the next part.
The A/D conversion starts from the initialization of the control register on the A/D converter board. Corresponding channels are then selected successively. Each channel conversion is triggered by sending a control word to the corresponding register. By reading the data registers on the A/D converter, digitized data is stored in the main memory. Because the 12-bit digitalized data is stored in high and low-byte data registers, a format conversion is performed to convert them into a single integer for later use. A block diagram of the A/D conversion strategy is shown in Figure 2.
Process Models
The process module contains appropriate models for the set of cutting processes used by the machine tool. The prototype system uses models that link together cutting forces, tool engagements, feed rates, and cutting speeds. The prototype system was developed using the end milling process and a mechanistic end mill cutter model that was developed in a companion research program. The model contains two important parameters, the pressure parameter, K sub n , and the chip flow friction parameter, K sub c . These are data-dependent parameters; however, current research is being conducted to define these parameters in terms of more basic concepts related to material properties, tool geometry, and tool type. This machining model will be used as part of the reasoning process for optimization of material removal rate in the tape tuning module. This model will be discussed later in this paper.
Tape Tuning
This module is for translation of tape tuning information into instruction sets. A data package that is rich in information about the machining of each feature is available from other modules and is used to rewrite the CNC program. The fundamental tenet behind this approach is that the run-time data for each feature contains information that represents the current machining environment. On the other hand, machining parameters used in the original instruction set were selected based on the part programmer's target machine tool and tooling when the program was first prepared. Because the programmer did not have precise knowledge about the current machine tool and tooling, suboptimal performance might result from using the old part program. Thus, the tuning process can more precisely specify values that can maximize production, minimize cost, or achieve some other operational goal for the feature being machined using the current machine tool and tooling.
The tape tuning goal for this prototype system is to achieve the highest possible material removal rate under a set of constraints. The extracted feature information and run-time data is used to initialize the fact space that defines the current understanding of the machining situation. An appropriate knowledge representation scheme is used to symbolize these facts in the internal computer data structure. Once a suitable internal representation has been established, it is possible to implement a rule-based system that performs tape tuning. Major tasks in the design of the tape tuning module are the construction of a descriptive representation structure and the design of a knowledge-based system to conduct both qualitative and quantitative analysis of the cutting configuration. Some of this knowledge may be acquired during the run time of the system.
CNC Machine Tool
The CNC machine tool, its controller, and the part program make up the machining system that is monitored and controlled by the intelligent supervisory controller. In this instance, the tape tuning process is the portion of this ISC that is being reported. As now implemented, the system shown in Figure I is used to collect data on the performance of the machining system by using a higher level feature-based description of the operations programmed in the part program. The data gathered is processed to tune the tape.
KNOWLEDGE-BASED SYSTEM FOR TAPE TUNING
Because the process of tape tuning a part program is similar to that of writing an initial part program, functions of a KBS for tape tuning would involve writing word-addressed G code and selecting machining parameters. Writing the G code involves specifying the tool trajectory to generate a specific surface. Selecting the machining parameters entails decisions about making efficient use of the machine and assuring quality of the machined surface. Factors considered when tuning a part program include:
a. Specifications of part to be machined. These are recorded in part drawings or as internal computer representations from the CAD system and include dimensions, tolerances, and surface finish requirements.
b. Workpiece material properties and machinability. These parameters mainly effect the power consumed during the cutting operation and the quality of the machined surface.
c. Machine capabilities. These include maximum power, maximum speed, minimum feed rate, and so on. Machine capability provides knowledge on the operating ranges and limitations of the operations.
d. Tool information. Information on tool geometry, tool material, and tool wear rate is necessary for generating an accurate part program.
e. Machining features such as slot cut and hole cut.
f. Real-time process performance data such as cutting forces, vibration signals, acoustic emission signals, and so on.
Two sections of the knowledge base used in tape tuning are the cutting environment representation scheme and the rule base and knowledge processing modules .
Representation of Cutting Environment
In a tape tuning system, the entire cutting environment may be described in terms of both real and conceptual entities. For instance, cutting tools, instruction sets, workpieces, and so on, are entities that can be defined as objects. These objects are represented most effectively using object-oriented programming. This is a modular, hierarchial data structure that automatically provides the ability for objects to inherit values or procedures from different levels. For example, the prototype uses a milling process conducted on a milling machine. It is a member of the machine shop floor. In a hierarchical structure, it will fill a slot in the larger machine shop structure that is a part of the entire manufacturing system. This representation must be designed carefully so that systems at different levels can eventually share data.
Representation of diverse kinds of knowledge in a unified, consistent, and efficient manner has been a major thrust of AI research.(5) Representation used in the prototype was based on the following criteria:
a. Representation should be expandable or machining environments other than end milling.
b. Representation to be developed must also take into consideration interfaces with other sensor-based information systems and performance criteria procedures.
c. Representation should be developed so that intelligent tape tuning can be used to build local databases and intelligent development of improved process models for continuous improvement of part production.
When considered as a discrete system, end milling entities can be classified into facilities, processes, and products. Facilities entities are composed of the end milling machine, CNC instruction set, cutting tools, and so on. Process entities are operation features(6) such as slot cut, side cut, and edge cut that have associated instance variables such as feed rate, spindle speed, and engagement. Product entity is defined by the progressive use of process entities to create final part geometry. The intelligent system can process information about these to achieve some operational goal for the system .
With object-oriented programming techniques, a conceptual object world may be established within which functional relationships of cutting operations are understood and described. The prototype uses 13 classes for this object world. They are:
1. block (A block of information from the CNC program)
2. edge_cut (Particulars of the cut)
3. side_cut (Particulars of the cut)
4. slot_cut (Particulars of the cut)
5. endmilling_cutter (Details of the cutter)
6. force(Measured forces)
7. machine_capacity (Information on the machine tool)
8. operation (Mode of operation)
9. post_parameter (Postprocessor input)
10. givenlist(Run-time list)
11. topo_info(Tool topological information)
12. pre_block (CNC code prior to tuning)
13. workpiece_material (Material properties)
As an illustration of the inheritance properties of this representation scheme, it is pointed out that 'edge_cut,' 'side_cut,' and 'slot_cut' are specific milling operations. They are, therefore, defined as child classes of 'operation' and have similar properties. More of these object class definitions are presented next. While not comprehensive, they highlight the diversity of information and the standardization of the representation scheme.
A sequence of blocks of G code makes up the part program and determines the operations performed on the workpiece. Each block is an instance of the class 'pre-block.' The tape tuning process will alter property values for each instance and then use the final values to write the new part program. Tool topological information (see Figure 3) is found in the 'topo_info' class and will share property values with other classes during tape tuning. Figure 4 is an illustration of a machine-related class. Geometric information on the cutter is found in the 'end_milling_cutter' class and is shared with process model analysis procedures.
Monitored data may also be represented in terms of objects. Cutting force (see Figure 5), obtained during run time, provides force data for machining of each feature. This information will be used to compute optimal parameters such as feed rate and speed using the end mill process model.
The end milling environment representation described in this paper is fairly exhaustive; however, to permit incorporation of additional milling features, an open-ended design structure has been adopted. Robustness of this conceptual model is being verified, and parallel development is being undertaken in enhancing the overall structure of the system.
Rule Base and Knowledge Processing
This prototype system uses NEXPERT OBJECT, an expert system development tool from Neuron Data. This is a rule-based object-oriented environment, integrating its own database within the development software package.
A data file used for classification of objects is provided by a preprocessor and uses as its input the feature-based run-time list plus data collected during part processing. All output from this preprocessor is stored in the NEXPERT database (NXPDB) format so it can be called directly by NEXPERT OBJECT. A set of rules in NEXPERT OBJECT takes the data from the database and dynamically creates objects and uses run-time data to provide values for object properties. After this process has been completed, several new data files are created. These data files are directly related to corresponding object definitions and are also in NXPDB format. These data files and this initial object representation are accessible to the tape tuning system.
Tape Tuning Using the Knowledge Base
The knowledge base has two purposes. The first is to use the initial object representation and a tape tuning criteria to establish new process parameter values. To do this, appropriate models for each operation need to be available in the knowledge base. Selection of the appropriate model and gathering of the necessary data are knowledge-based functions; however, external routines to do pure mathematical computation are generally needed to obtain values for evaluation using the tape tuning criteria. The knowledge base is also used to implement and control the tuning decision process. The second is to create the sequence of G code blocks for the new part program. Figure 6 illustrates one of the rules in the knowledge base. This rule tests whether all parameters in the current block have been assigned a value. If conditions are satisfied, it proceeds to inference the next block.
Dynamic creation of initial objects is done using the rule shown in Figure 7. This rule states that if the block number counter is within its limit or greater than 0 and less than maximum, then a dynamic object is to be created. The created object is an instance of the class called 'block,' and the object has the name of the concatenate of 'block' and the block number. As each object is created, properties are assigned values or are left 'UNKNOWN,' as the case may be. 'NOTKNOWN' can also be an assigned value and means that the property has been explored but no value has been found for it. Once a property is assigned 'NOTKNOWN,' the property will be disabled and not considered during further investigation. The inference process to create an object and assign values in the correct order is controlled by assigning an inference priority to each of the same group rules so that they are fired in a desired sequence. The inference process of each block proceeds in this set order and ends when all properties have been assigned values, after which the block number will be increased by 1 and all rules will be reset for use in the next block.
The tuning criteria used in this prototype was the maximum force associated with a critical tool deflection value. The program was tuned by changing the feed rate to maintain the force value within this limit. Other parameters such as coordinates for tool movement and spindle speed maintain their values, but the system is expandable to include changes in these values. Also, other tuning criteria such as maximum material removal rate, tool life, surface finish constraints, and so on, could be used as alternate criteria or together as multiple criteria.
The feed rate value is investigated in two ways. A meta slot in the class definition of block is used to define an "order of source" for this feed rate information. The first source is an end milling model, and the second is simply the feed rate currently being used. During the inference process, if a corrected feed rate is not obtained from the first source, the inference mechanism will revert to the second source.
Accurate knowledge of tool deflection is acquired from knowledge of cutting forces, geometry of the end mill, and extended length of the mill from the spindle. An end mill cutting process model was used to relate cutting forces to feed rates, cutting speeds, and tool engagements. This model defines the Cartesian cutting force components in terms of these variables, geometry of the cutting tool, and two data-dependent parameters, K sub n and K sub c K sub n is the normal pressure coefficient, and K sub c is the rake surface friction coefficient. They are uniquely defined by the normal force and friction force on the rake surface of each cutting edge of the end mill. The model uses these two forces to obtain F sub x and F sub y in the Cartesian system of coordinates. The model is in closed form, and an accurate and fast algorithm has been developed for using real-time process force data to compute K sub n and K sub c These parameters depend on chip thickness as well; however, the algorithm used to implement the model does provide a relationship that can be used to determine these parameter values for a different set of engagements and feed rates. This makes it possible to take run-time data from an initial run of a part, parameterize the model with this information, and then use the model to tune the tape, thereby generating a better part program.
For a particular combination of cutter and material of workpiece, pressure and friction coefficients are functions of chip thickness and are generally expressed as a power law:
(equation omitted)
where the coefficients C sub 1 , C sub 2 C sub 3 and C sub 4 are approximated as constants for a fixed combination of cutter and workpiece and t sub c is chip thickness. Because chip thickness is not uniform for a milling cut, average chip thickness is used. Average chip thickness is a function of feed rate (f), spindle speed (s), number of teeth (N sub t ), and radial engagement angle (alpha sub en) :
(equation omitted)
For a given cutting configuration, bending force on the cutter is a function of K sub n , K sub crit , axial engagement (alpha sub ra ), and radial engagement:(8)
(equation omitted)
Critical bending force, F sub crit , is compared to the bending force obtained using Cartesian forces F sub x and F sub y . This comparison process is used to find a new feed rate. The criterion:
F sub bend <= F sub crit
is used for tape tuning. The search process proceeds as follows:
a. Compute bending force with the feed rate of the untuned part program.
b. If bending force exceeds critical force, then 9O% of the value of the initial feed rate is used to compute a new bending force.
c. If bending force still exceeds critical force, a further reduction of 1O% is made on the corrected feed. This trial-and-error approach is used as a simple way to verify the prototype. A more sophisticated parameter-establishing process would be necessary when multiple criteria and cutting speed are used for tape tuning.
Generating Standard Part Program Output
Most processing for tape tuning is done in the object environment. After all inference processes have been completed, the tuned part program is stored in the object structure. This is not the final part program for real-world application. To obtain the standard part program, an external routine was written in C language. This routine is called by a rule at the end of the inference process. It transforms the object-oriented part program into the standard format. The final generated part program is stored in a file.
Example of Tape Tuning
Tape tuning experiments have been conducted to verify the functionality of this prototype. These experiments were performed using off-line data of a milling operation stored in a set of data files. Original part programs were stored in a file called "partcode."(9) This file was used in companion research projects and for feature extraction. Information from this file necessary for tape tuning was obtained using the preprocessor described earlier. The run-time list generator also used it as input. An example of the contents of "partcode" is shown in Figure 8. Because this tape tuning system has not been implemented with predefined functions, only rapid traverse and linear interpolation have been included in this experiment.
"Runlist" is a lengthy data file generated by the preprocessor as a result of its interaction with incoming data. This file is in the NXPDB format defined in NEXPERT. It contains cutting environment information needed by the tape tuning system. This file consists of a sequence of records that have a number of fields. Some significant fields are machining process related parameters such as chip flow angle, friction coefficient, and normal pressure coefficient. Those parameters are identified with a milling model. The "runlist" also has information on cutter data, coordinates, engagements, and so on. In short, the "runlist" has all the information required to conduct tape tuning operations.
Simulation starts from the object classification that uses the "runlist" file. Object classification concludes with a set of data files corresponding to the class definitions described earlier. Data files are classified so that their formats conform to the data structure defined in the tape tuning system. The next step is to execute the tape tuning program. The system initialized the data structure and retrieved the data files first. Then it started its inference process. The inference performed in this system is mainly on the part program structure and one of the controllable parameters, namely feed rate. The outcome of the inference process, which is the tuned part program, is sent through a postprocessor, converted into G code, and recorded in the file "code" (see Figure 9). It may be observed that the part program in "code" has almost the same data as the one in "partcode" (see Figure 8) except for feed rate. Feed rate change reflects the effect of tuning the part program. Feed rate in the part program "partcode" was specified as 2.0 ipm (51 mm/min) for all cuts; however, in the tuned part program, feed rate has different values for different cuts. These values of feed rate are inferred based on run-time data corresponding to machine performance of each cut. The tuning process cooperates with a optimization process against tool deflection. A deflection of not more than 0.01" (0.025 mm) was specified in the simulation.
Evaluation of Results and Inferences
A total of 35 runs was undertaken with different materials (steel and aluminum) and initial process parameters. Because success of the tape tuning process was subjective and relied on factors such as stability, surface finish, improved tolerance, and so on, a primary consideration was to ensure convergence to a single feed rate for a given set of process parameters. To evaluate tuning performance, therefore, a re-tuning process is conducted by forcing the tuned CNC program to be tuned again. The re-tuned feed rate was found to differ from the original tuned feed rate by not more than 3% in all cases. This difference is attributed to noise in the system and inaccuracies in measurement. The cuts themselves were devoid of any chatter marks and, because tool deflection was used as the constraint, tolerance was maintained in all cases.
Use of a hybrid model (heuristic and mathematical) lends itself to a more accurate decision-making process, especially because the objective is to assist the operator or to automate the process of operator fine-tuning of feed rate.
It can be concluded that the tuning system, which consists of knowledge reasoning and a mathematical process, is capable of providing on-line fine-tuning for a CNC program. The program is optimized for a given cutting configuration. Further, this method may be adopted either in an advisory capacity for the operator or to automatically tune the tape.
System Architecture
The system has been designed with a core knowledge base and with the mathematical models serving as satellite programs. This method capitalizes on the concept of dynamic data exchange (DDE) and dynamic linked libraries (DLL) to obtain pseudo-parallel processing. In so doing, system speed is substantially improved and real-time processing and control is possible. Open system architecture provides for addition of new modules when required. This is particularly important when different constraints become critical to the process. For example, if tool deflection is not as important as minimizing tool wear, it will not be difficult to add a module for that constraint and to optimize feed rate accordingly. Rules in the knowledge base would direct linking of different libraries that would contain relevant models. As mentioned, in its present configuration, two models have been included.
CONCLUSION
In this study, an intelligent system for tuning a tape for a CNC milling machine has been developed. It provides the manufacturing engineer with an on-site monitoring and updating system to optimize the cutting process. The system uses a hybrid model consisting of both mathematical and heuristic components to optimize one of the controllable parameters during cutting, namely feed rate. Experimentation on the system using data obtained from actual cutting operations has been carried out successfully. The tape tuning system will be integrated into a larger system for intelligent supervisory control.
REFERENCES
1. D.T. Pham and P.D.T. Pham, "Expert Systems: A Review," Expert Systems in Engineering (London: IFS/Springer-Verlag, 1988), pp3-18.
2. P.G. Bawden, "Developing an Adaptive Controller for Endmilling Using Feature Based Abstraction of a Part Program and Cutting Parameters Derived from a Mechanistic Model," MS Thesis (Pullman, WA: Washington State University, 1989).
3. S.N. Melkote, "Extraction of Dimensional Parameters for Specified CNC End Mill Tool Trajectories from a Boundary Representative of the Workpiece," MS Thesis (Pullman, WA: Washington State University, 1989).
4. "LabPac Software Support Package" (Scientific Solution, Inc., 1987).
5. W.A. Woods, "Important Issues in Knowledge Representation." IEEE Proceedings (v74, n10, Oct. 1986).
6. L.A. Kendall, S. Arora. and G. Cross, "Intelligent Supervisor Control Prototype for Machining Systems," Transactions of the North American Manufacturing Research Institution of SME (vXVI, 1988), pp309-315.
7. G. Yucesan, A.E. Bayoumi, and L.A. Kendall, "An Analytic Cutting Force Model for Milling," Transactions of the North American Manufacturing Research Institution of SME (vXVIII, 1990). pp137-145.
8. G. Yucesan, "Modelling of Cutting Forces for Milling Operations," PhD Dissertation (Pullman, WA: Washington State University, 1992).
9. J. Zhang, "A Prototype Tape Tuning System Using knowledge-based Techniques," MS Thesis (Pullman, WA: Washington State University, 1990).
ACKNOWLEDGMENT
The authors thank Boeing Commercial Airplane Co. for financing this research.
AUTHOR'S BIOGRAPHIES
Anthony de Sam Lazaro retired from the Indian Navy in 1984 after 21 years of service and subsequently graduated in systems engineering from the University of Wales, Cardiff, UK, in 1989. The Intelligent Systems and Robotics Laboratory (ISRL) at Washington state University, which he founded in 1990, has designed several systems for automated design and manufacturing processes. Dr. de Sam Lazaro is also the CEO of Advanced Engineering Systems Inc., Olympia, WA.
Jie Zhan hols master's degrees in electrical and mechanical engineering and in computer science. He is completing his doctorate in Systems and Robotics Laboratory since 1990 and has several publications to his credit.
L. Alden Kendall is chairman of the industrial engineering program at the University of Minnesota-Duluth. Dr. Kendall initiated this research while he was associated with Washington State University and has subsequently served as an advisor throughout the project.
Copyright Society of Manufacturing Engineers 1994
