FIELD OF THE INVENTION- The invention relates to manufacturing technology, in particular to programming and numerical control of machining centers for milling, drilling and similar operations.[0001] 
- The conventional control units for the CNC (Computer Numerical Control) machining tools, especially the control units for machining centers intended for milling, drilling and similar operations, typically contain a microcomputer, consisting of a decoder, a position memory, a function memory, an interpolation program, and a functions program. The NC program is fed to the computer either through a punched tape reading device or in a DNC (Direct Numerical Control) mode through an interface. A manual input is also foreseen, but it is limited to smaller corrections of the NC control program or to individual changes of technological parameters. The NC functions program comprising the technological data is sent to the NC machine through an adaptable interface. The NC positions program is send through a comparison unit and an amplifier unit to a step motor of the NC machine. Either the support for the part or the cutting tools of the machine can be moved following the geometric data. A position meter perceives every movement and sends a regulated position value to a position-measuring module, which forwards the data to comparison unit, where the difference between the actual and the desired position is calculated. The geometric data is obtained from the NC control program for the part and is processed in the position loop.[0002] 
- A new NC control program must be supplied to the CNC control system for each part, as the control system does not remember the operations already performed and can not automatically change the program parameters, with the exception of some technological parameters, for example the cutting conditions, corrections of tool length, offset of reference or zero points.[0003] 
- The use of modern CAD/CAM systems does not solve this problem. These systems just enable that a new NC control program is performed faster and more reliably. Some systems allow saving of certain processing strategies, nevertheless, the intervention of skilled NC programmer is still necessary. The programs made in this way cannot be used directly for the CNC control of the machine tool; they must be adapted in a post-processing phase. The task of this phase is to modify a generally valid file of the tool path (CLDATA) for each machine tool, i.e. for each CNC control. Every NC control program and every change must go through such post-processing phase.[0004] 
- The technical problems indicated above can be solved by an NC control system with learning ability and the ability of automatic intelligent generation of NC control programs which follow the computer read engineering drawings and/or 3D CAD models of the parts to be processed.[0005] 
- In the patent DE4O1 1591 (JP19890098177) an NC control unit with integrated learning function is described. The NC control unit makes a teaching NC control program that is compared with the inserted NC control program to make the resulting NC control program. The actual NC control program can be changed or supplemented by the machine operator who chooses the “teaching” way of operation and then supplements the NC control program. The solution requires the intervention of a skilled operator or a programmer.[0006] 
- The patent application US2001/0000805 A1 describes a device for generating a tool path on NC machines and the pertinent NC control system. First, the device identifies the geometric feature characteristics of a CAD model, and then it chooses the most suitable tool path amongst the stored processing procedures (machining cycles, sub-programs). Only the machining procedures, which have been defined as typical processing procedures for particular sub-programs, are available for selection.[0007] 
- The patent U.S. Pat. No. 6,022,132 describes a method and a device for programming the CNC machine tools on the basis of a probe built-in into the main spindle of the machine tool. The probe is moved manually following the required profile (tool path). After receiving the data the computer generates an automatic NC control program, which gives the commands for the movement to the CNC control system. This method does not include any elements of artificial intelligence.[0008] 
- The patent US63 14412B1 describes an evolutional control of a driving machine in a vehicle with respect to chosen coefficients. A scheme of the control unit is constructed on the evolution principles. The system is adapted for building-in into a vehicle.[0009] 
- The patent EP0726509A1 describes an interactive programming system for CNC machine tools. It allows the operator to choose interactively between different control programs and procedures, which are then automatically composed into an NC control program. The solution requires the intervention of an operator or a programmer.[0010] 
- The patent JP2001034155 describes a learning method and a device made for this purpose. A special man-machine interface is built-in into the control unit of the machine to enable a conversation with the user and the learning process.[0011] 
- The patent JP 11242510 describes a device and a method for generating the NC control programs. A special device saves the data about the part, pertinent coordinates, junction's characteristics and the time necessary for assembling the individual electronic components. The solution enables a reduction of time needed for preparing the NC control programs and a reduction of mistakes arising at preparing the programs.[0012] 
- In all the solutions presented above manual intervention of a skilled operator or a programmer is necessary for preparing the NC control program for CNC machine tools. The systems cannot create the NC control programs for the parts, which are not saved in the database, and cannot choose and use the machining strategies automatically.[0013] 
DETAILED DESCRIPTION OF THE INVENTION- The object of the invention is to provide an improved programming and numerical control for machining centers intended for milling, drilling and similar operations which has the learning ability and the ability of automatic intelligent generation of NC control programs. The said object of the invention is achieved by means of a neural network (NN), which learns to generate NC control programs through a teaching module. Consequently, the NC control programs can be generated automatically without any intervention of the operator, merely on the basis of the 2D, 2,5D or 3D computer models of the parts to be processed.[0014] 
- The objects, advantages and features of the invention will be presented in detail by means of drawings in the following figures:[0015] 
- FIG. 1—shows a block diagram of a CNC unit with learning ability for machining centers according to present invention,[0016] 
- FIG. 2—shows a schematic layout of a neural network device, FIG. 3—shows a flow chart of learning and generating the neural network, FIG. 4—shows a schematic layout of the neural network.[0017] 
- The learning process and the automatic intelligent generation of the[0018]NC control programs28 take place in a neural network (NN), built-in in aspecial NN device7, which receives the learning instructions from the NNteaching module4. The NNteaching module4 is not a constituent part of theCNC unit1 and works independently. Upon completion of learning process theNN device7 can generate automatically, merely on the basis of theCAD part model5, coming from conventional CAD/CAM system29, and without any intervention by the operator, various newNC control programs28 for different parts, which have not been in the machining process before. 
- The[0019]NC control programs28 are fed from theNN device7 to a modifiedmicrocomputer2, which includesinternal interface9 for transmission ofNC control programs28 to aposition memory11 and to afunction memory12. To thefunction memory12, themanual commands6 from themanual input module8 can be fed as well, to wit through thedecoding module10. Thecommands6 are mostly of technological nature, i.e. feed rate, revolution speed, switch on/off of cooling liquid etc. 
- The teaching data for the[0020]NN device7 come from aspecial teaching module4, which is not a constituent part of theCNC control unit1. The task of theteaching module4 is to teach the neural network in theNN device7 the principles and the technology of NC programming for all the machining operations on CNC machining centers, above all for milling, drilling and similar operations. 
- In general, different neural network systems and different software products, also software developed for commercial purposes, can be applied. However, if special criteria have to be considered and met in machining processes, e.g. costs, time, quality of cutting, tool life, high speed cutting etc., the neural networks developed especially for specific purposes should be used.[0021] 
- The schematic diagram of the[0022]NN device7 according to the invention is shown in FIG. 3. The NNdevice7 consists of amodule25 designed to recognize geometric and technological features fromCAD part model5 and to generate the features basedCAD part model26. TheCAD part model26 is fed to theNN milling module27, which has before that, namely in the learning phase, been instructed by the NNteaching module4 to generate the specificNC control program28 for specific machining operation, e.g. for milling or drilling or similar operation. 
- In the learning phase, the[0023]N7N device7 is connected to theteaching module4 designed for instructing the neural network (NN). Theteaching module4 takes the data from conventional, commercially available CAD/CAM system for programming the NC/CNC machine tools. By means of a conventional CAD/CAM system29, theteaching NC programs36 are prepared for different parts, defined inengineering drawings module35, and are sent to theteaching module4. In thedecision module38, subsequent to thetesting module37, the decision is taken on the success of teaching. In case that the decision is NO, thepath39 is active and the repetition of the teaching process takes place. If on the other hand theNN device7 has learned enough, thepath40 is active and the generated neural network is sent to theNN device7. 
- The functioning principle of the[0024]NN device7 is shown on FIG. 4. The neural network built-in in theNN device7 consists of three layers: theinput layer43, the hiddenlayer44 and theoutput layer45. On theinput layer43, the X-Y-Z sets42 of coordinate points appear, representing the coordinate point values obtained from the modifiedCAD model26 for individual machining operations types41. The coordinate point values are determined according to special procedure. Through the intermediate hiddenlayer44 the input coordinates are transposed intooutput layer45 in a form of a set of coordinate points X1, Y1,Z146, representing the position values of the tool path for individual machining operations. 
- By means of the neural network the following machining operations can be carried out: face milling (rough), contour milling (rough), final milling after the contour and in Z-plain, final contour 3D milling, contour final milling, milling on Z-plain, final contour milling on equidistant, milling of pockets, normal drilling, deep drilling, centering, reaming and threading.[0025] 
- The[0026]CNC control unit1 according to the invention can function in either of the following two modes: 
- 1. Programming mode, i.e. the mode of intelligent and completely automated processing of a CAD part model into a specific NC control program.[0027] 
- 2. Learning mode, in which a learned NC programming system based on the principle of a neural network is entered through the[0028]teaching module4 into theNN device7. 
- The principle of generation of the NC control program is shown in FIG. 4. In the programming mode, the[0029]CNC control unit1 gets the data package of theCAD part model5 from the conventional, commercially available CAD/CAM system29 intended for programming the CNC machines. The model is then transmitted to theNN device7, which identifies and classifies the individual geometric andtechnological features25 of the CAD part model. Based on these characteristic features a newCAD part model26 is built, which is transmitted to theN7N milling module27, where on the basis of learned intelligent procedures the most suitable machining operations and cutting parameters (cutting speed, feed-rate and the depth of cutting) with respect to chosen conditions (machining time, surface quality, machining costs) are defined. 
- The output of the[0030]NN milling module27 is theNC control program28 for the processed part, which includes the geometric data about the mode of cutting tool path (linear G01 or circular G02/G03 interpolation), the coordinates of the cutting tool path (e.g. milling cutter), the technological data (revolution speed, feed-rate, depth of cutting) and auxiliary data (coordinates of reference, zero and starting points, direction of rotation of the main spindle M02/M03, change of cutting tools M06, etc.). 
- The data is then transmitted to[0031]internal interface9, which splits the data in the NC control program into tool path data (coordinates of movement in axis X, Y, Z and/or rotation A, B, C around coordinate axis X, Y, Z) saved inposition memory11 and into functions data (M, S, T) saved infunction memory12. 
- The NC functions[0032]program14, which contains the technological data, is transmitted throughadaptable interface18 to theNC machine3. The NC position program is then sent through thecomparison unit15 and theamplifier unit17 to thestep motors19 of theNC machine3. Either the machine tool slide32 or the cutting tools31 can be moved in accordance withgeometric data24. Theposition meter20 perceives the movement and sends aregulated value22 into the position-measuringmodule16, which transmits the data tocomparison unit15, where the difference between the actual and the programmed position is calculated. 
- The geometric data are obtained from the[0033]NC control program28 for each part and are treated in theposition regulation circle23. 
- In the learning mode, the learned NC programming system based on the principle of a neural network is fed to the[0034]NN device7 through theteaching module4, which conducts the teaching of theNN device7. The functioning of the NN module is schematically shown in FIG. 3. 
- The origin for the teaching process is the engineering drawing[0035]35 of a prismatic part, suitable for processing on machining centers, designed for milling, drilling and similar operations. First, theteaching NC program36 is generated by the conventional CAD/CAM system29 and sent to theNN teaching module4. Then, testing37 of the obtained NC program is performed. In thedecision module38, the decision is brought on whether the NC control program is suitable and whether the neural network in theNN teaching module4 has learned enough. In the beginning the statement NO39 is valid and the teaching process is repeated using the engineering drawing35 of another part. In such a way the series of teaching cycles is performed until thetesting37 shows, that the decisional condition in theIF module38 is fulfilled, i.e. that thestate40 is accomplished. Here, the teaching process of the NN module ends and the learned neural network is transmitted into theNN device7. 
- The[0036]CNC control unit1 can learn how to generate the NC control programs for the following machining procedures: 
- 2.1—milling[0037] 
- 2.1.1—face milling (rough)[0038] 
- 2.1.2—contour milling (rough)[0039] 
- 2.1.3—final milling following the contour in Z-plane[0040] 
- 2.1.4—final contour 3D milling[0041] 
- 2.1.5—contour final milling[0042] 
- 2.1.6—milling on Z-plane[0043] 
- 2.1.7—final contour milling on equidistant[0044] 
- 2.1.8—milling of pockets[0045] 
- 2.2—drilling[0046] 
- 2.2.1—normal drilling[0047] 
- 2.2.2—deep drilling[0048] 
- 2.2.3—centering[0049] 
- 2.3—reaming,[0050] 
- 2.3—sinking[0051] 
- 2.4—threading[0052] 
- The[0053]NN device7 can be built-in into any CNC control unit for milling machines as shown in FIG. 1. The standard parallel data transmission is used. In case that it is not possible to reprogram theinternal interface9, the NN device must be connected to existing DNC interface, which is a constituent part of every CNC control. TheNN teaching module4 is connected to theNN device7 by means of a standard serial interface. TheCAD part model6 is sent to theNN device7 through a standard communication interface. 
- For teaching of the[0054]NN device7 through theteaching module4, different commercially available CAD/CAM programming systems29 can be used, for example Unigraphics Solution, I-Deas, Catia, HyperMill etc.