Abstract:
A system and method for numerical control processing of an in-process part. A mathematical mapping is generated which approximates the deformation of the in-process part as measured against a nominal model. The mapping is applied to nominal NC tool paths to generate modified tool paths that travel in the distorted coordinate space of the in-process part. A result is that local features may be machined into the in-process parts in reasonable locations, and non contact measurement systems as well as surface finishing systems can travel at a more constant distance from the surface of the in-process part.

Description:
BACKGROUND OF THE INVENTION 
     This invention relates generally to numerical control (NC) processing and more particularly to developing a deformation model between an in-process part and a model of the nominal part and using the deformation model to modify nominal NC tool and inspection paths for processing the in-process part. 
     NC processing operations generally allow direct linkage of shop floor processes (e.g., forging, machining or inspecting) with a mathematically exact description of a carefully designed part also referred to as a nominal model. In these types of NC processing operations, it is not unusual for an in-process part to vary from the nominal model. This variation can result in excessive setup time or even scrap. For example, consider an NC drilling operation of a sheet metal part for a combustor with a laser tool. In this NC drilling operation, a rotary table supports the sheet metal part while the laser tool drills boring holes in the part at a specific angle. An NC program uses nominal NC tool paths designed for the nominal model to drill the boring holes in the part. A problem with this operation is that the actual in-process part varies or is deformed from the nominal model. This causes the laser tool to drill the boring holes in improper locations along the surface of the in-process part. A part that has holes drilled into improper locations along its surface will typically have to be discarded as scrap. In order to avoid this NC processing error and other similar errors, there is a need for a system and a method that can modify the nominal NC tool paths to more closely match the in-process part. 
     BRIEF SUMMARY OF THE INVENTION 
     This invention is able to modify the nominal NC tool paths to more closely match the in-process part by using shape measurements of the part to modify the NC control paths used in subsequent operations. From the shape measurements on the surface of the in-process part, a mathematical mapping is generated which approximates the deformation of the part as measured against the nominal model. The mapping is applied to the tool paths in the coordinate space of the original part in order to modify those tool paths to travel in the distorted coordinate space of the in-process part. A result of this invention is that local features may be machined into the in-process parts in reasonable locations, and non contact measurement systems as well as surface finishing systems can travel at a more constant distance from the surface of the in-process part. 
     This invention provides a system, a method and an article of manufacture for NC processing of an in-process part. In the system embodiment there is a nominal model of the in-process part. A measuring means measures a series of n points on the in-process part. A processor generates a deformation model that approximates the deformation of the measured part relative to the nominal model. The processor comprises a determining means for determining a plurality of mapping functions for mapping point locations from the nominal model to approximate measured locations of points on the in-process part. An optimizing means optimizes the plurality of mapping functions to minimize the distance between the point locations from the nominal model to the measured locations of points on the in-process part. A transforming means transforms the point locations from the nominal model to the measured locations of points on the in-process part according to the plurality of optimized mapping functions. A computerized numerical controller controls the processing of the in-process part according to the deformation model. Both the method and the article of manufacture embodiments of this invention are similar in scope to the system embodiment. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 shows a block diagram of a system for NC processing of an in-process part according to this invention; 
     FIG. 2 shows a flow chart setting forth the steps for generating a deformation model according to this invention; 
     FIG. 3 shows a schematic of point pairings generated between the surfaces of a nominal model and an in-process part according to this invention; 
     FIG. 4 shows a schematic of nominal model surface points transformed to reside on or substantially near an in-process part surface according to this invention; 
     FIG. 5 shows a flow chart setting forth the steps for modifying nominal computerized NC tool paths into deformed tool paths according to this invention; 
     FIG. 6 shows a schematic of the nominal computerized NC model tool paths being mapped to the in-process part according to this invention; 
     FIG. 7 shows a schematic of the nominal computerized NC model tool paths transformed to reside on or substantially near the surface of the in-process part according to this invention; 
     FIG. 8 shows a block diagram of an NC manufacturing process ope ating in accordance with this invention; and 
     FIG. 9 shows a schematic of a result of an NC manufacturing process that does not operate in accordance with this invention. 
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     FIG. 1 shows a block diagram of a system  10  for NC processing of an in-process part  11  according to this invention. The NC processing system  10  comprises a series of measurements  12  obtained from the in-process part  11  by a measurement system  13 . The measurements are in the x, y, z coordinate system and is referred to as the measured coordinate system. In this invention, the measurement system  13  may be a well known measurement device such as a coordinate measuring machine (CMM), an x-ray scanning machine, an optical scanning machine, or an ultrasound scanning machine, which obtains the series of measurements of the part. The NC processing system  10  also comprises a model  14  of a nominal part of how the in-process part is to look after undergoing a particular manufacturing operation. The nominal model comprises a plurality of locations in the X, Y, Z coordinate system and is referred to as the nominal model coordinate system. 
     A computer  16  receives the series of part measurements  12  and the nominal model  14  and generates a deformation model that approximates the deformation of the measured part relative to the nominal model. In this invention the computer is a general purpose computer such as a work station, a personal computer or a machine controller. The computer  16  comprises a processor and a memory including random access memory (RAM), read only memory (ROM) and/or other components. Attached to the computer  16  are a monitor  18 , a keyboard  20 , and a mouse device  22 . Those skilled in the art will recognize that the computer can operate without the use of the keyboard and the mouse. The computer  16  operates under control of an operating system stored in the memory to present data such as the series of part measurements and the nominal model to an operator on the display of the monitor  18  and to accept and process commands from the operator via the keyboard  20  and the mouse device  22 . The computer  16  generates the deformation model using one or more computer programs or applications through a graphical user interface. Set forth below is a more detailed discussion of how the computer  16  generates the deformation model. A computer-readable medium e.g., one or more removable data storage devices  24  such as a floppy disc drive or a fixed data storage device  26  such as a hard drive, a CD-ROM drive, or a tape drive tangibly embody the operating system and the computer programs implementing this invention. The computer programs are programmed in C, but other languages such as FORTRAN, C++, or JAVA may be used. 
     The NC processing system  10  also comprises a nominal of computerized NC (CNC) tool paths  28  for operating a particular tool for manufacturing the in-process part. After generating the deformation model, the computer  16  modifies the nominal CNC tool paths  28  to the measured coordinate system of the part according to the deformation model. Set forth below is a more detailed discussion of how the computer  16  modifies the nominal CNC tool paths  28 . The modification of the nominal CNC tool paths results in deformed tool paths  30 . A computer numerical controller (CNC)  32  uses the deformed tool paths  30  to process the part  11 . 
     FIG. 2 shows a flow chart setting forth the steps for generating the deformation model according to this invention. The computer obtains a series of n (x, y, z) points measured on the in-process part at  34 . Next, the computer obtains the nominal model of the part at  36 . The computer then generates a series of n pairings between the nominal model (X, Y, Z) points and the n series of measured (x, y, z) points on the part at  38 . Each of the n pairings between the nominal model and the measured series of n points substantially correspond to each other. FIG. 3 shows a schematic of point pairings generated between the surfaces of the nominal model  14  and the measurements  12  of the in-process part. The measured points (x i , y i , z i ) on the in-process part are points and vectors in the measured coordinate system, while the points (X i , Y i , Z i  ) on the nominal model are points and vectors in the nominal model coordinate system. FIG. 3 shows that the point pairings generated between the surfaces of the nominal model  14  and the measurements  12  of the in-process part are as follows:            Part                   Nominal               x   1     ,     y   1     ,     z   1           →           X   1     ,     Y   1     ,     Z   1                   x   2     ,     y   2     ,     z   2           →           X   2     ,     Y   2     ,     Z   2                   x   3     ,     y   3     ,     z   3           →           X   3     ,     Y   3     ,     Z   3               ⋮                   ⋮               x   n     ,     y   n     ,     z   n           →           X   n     ,     Y   n     ,     Z   n                                  
     Referring back to FIG. 2, after generating the series of n pairings between the nominal model points and the measured points on the in-process part, the computer determines a plurality of mapping functions for mapping point locations from the nominal model to approximate measured locations of points on the part at  40 . The plurality of mapping functions comprise a set of functions f 1 , f 2 , f 3  that map the nominal model point locations X i , Y i , Z i  to approximate the locations of the measured part points x i , y i , z i . The set of mapping functions are as follows: 
     
       
           f   1 ( X   i   , Y   i   , Z   i )− x   i   =X   ierror    
       
     
     
       
           f   2 ( X   i   , Y   i   , Z   i )− y   i   =Y   ierror   , i =1 , . . . , i, . . . n    
       
     
     
       
           f   3 ( X   i   , Y   i   , Z   i )− z   i   =Z   ierror    
       
     
     wherein X ierror , Y ierror , Z ierror  and are the differences between the nominal model point locations and the measured part locations. Those skilled in the art will recognize that other mathematical functions such as polynomial functions, trigonometric functions or logical functions can be used as the mapping functions. 
     Next, the computer  16  optimizes the mapping functions to minimize the distance between the point locations from the nominal model to the measured locations of points on the in-process part at  42 . The computer uses the following optimization function to minimize the distance between the point locations from the nominal model to the measured locations of points on the in-process part:        Minimize                     ∑     i   =   1     n          (       X   ierror   2     +     Y   ierror   2     +     Z   ierror   2       )                              
     Those skilled in the art will recognize that other mathematical functions can be used as the optimization function. For example, depending on the desired outcome, the optimization function may be:        Minimize                     ∑     i   =   1     n          (       X   ierror     +     Y   ierror     +     Z   ierror       )                              
     After optimizing the mapping functions, the computer then transforms the point locations from the nominal model to the measured locations of points on the in-process part at  44 . In particular, the optimized functions act as basis functions to transform the nominal model coordinates and vectors to reflect the deformations measured in the in-process part; the result is a set of deformed coordinates and vectors mapped to the in-process part. The transformation enables the original set of nominal model points to reside on or substantially near the actual measured points. FIG. 4 shows a schematic of nominal model surface points transformed to reside on or substantially near an in-process part surface. 
     After transforming the nominal model to the in-process part, the computer  16  modifies the CNC tool paths  28  to the measured coordinate system of the part according to the deformation model. The modification of the nominal CNC tool paths  28  results in the deformed tool paths  30  that the CNC controller  32  uses to control a particular NC manufacturing process. FIG. 5 shows a flow chart setting forth the steps for modifying the nominal CNC tool paths into the deformed tool paths according to this invention. The computer obtains the nominal CNC tool paths at  46 . The nominal CNC tool paths comprise a plurality of points and vectors in the nominal model coordinate system. FIG. 6 shows a schematic of the nominal CNC model tool paths being mapped to the in-process part. 
     Referring back to FIG. 5, after obtaining the nominal CNC tool paths, the computer then obtains the optimized mapping functions at  48 . The computer applies the optimized mapping functions to the nominal CNC tool paths at  50 . In particular, for each point and vector that comprise the nominal CNC tool paths, the mapping functions move the tool path into an appropriate orientation and position with respect to the deformed in-process part. The mapping functions move the tool path into an appropriate orientation and position with the deformed in-process part by substituting the coordinates of the original NC program into the mapping function f 1 , f 2 , f 3 . The mapping functions are then evaluated to compare an x, y, z point in proximity with the in-process part surface. After applying the optimized mapping functions to the CNC tool paths, the computer generates the deformed tool paths at  52 . FIG. 7 shows a schematic of the nominal CNC model tool paths transformed to reside on or substantially near the surface of the in-process part. The CNC controller then uses the deformed tool paths to machine thee in-process part at  54 . 
     As mentioned above, the CNC controller  32  uses the deformed tool paths to control a particular NC process. FIG. 8 shows a block diagram of an NC process operating in accordance with this invention. The type of NC process shown in FIG. 8 is an NC drilling operation of a sheet metal part  55  for a combustor with a laser tool  56 . Those skilled in the art will recognize that the operation illustrated in FIG. 8 is not intended to limit this invention. In fact, this invention can be used in a variety of NC processes such as machining, inspecting, forging, non-contact measurement systems, surface finishing systems, etc. In this NC drilling operation, a rotary table  58  supports the sheet metal part  55  while the laser tool  56  drills a pattern of boring holes  60  in the part at a specific angle. The CNC controller  32  may either rotate the table  58  and drill the boring holes  60  with the laser or move the laser about the sheet metal part  55 . 
     Without the use of this invention, the CNC controller  32  would drill the boring holes  60  in improper locations along the surface of the part  55  because it is programmed to drill the holes for a nominal shape. FIG. 9 shows a schematic of the hole location errors that would result without the use of this invention. In particular, the laser  56  would drill a hole  60  according to the nominal model  14  which would reside along the surface of the part  55  at an incorrect location. FIG. 9 illustrates the difference in the location of the hole by the “Error” notation. A part  55  that has holes  60  drilled in improper locations along its surface will typically have to be discarded as scrap. Since this invention takes into account the deformation between the nominal model and the sheet metal part, the CNC controller  32  can use the deformed tool paths  30  generated therefrom to ensure that the part has the holes drilled into reasonable locations. 
     It is therefore apparent that there has been provided in accordance with the present invention, a system and method for NC processing of an in-process part that fully satisfy the aims and advantages and objectives hereinbefore set forth. The invention has been described with reference to several embodiments, however, it will be appreciated that variations and modifications can be effected by a person of ordinary skill in the art without departing from the scope of the invention.