Repetitive Part Cutting: Improve Productivity by Learning Path Error

Significant improvements in speed and accuracy are now possible by using a CNC system that can learn and correct for its path error. Expanding the functions of learning control past specialized machines into general machining is the next step in the evolution. Now learning functions can be applied to free profile machining, drilling and tapping. The benefits of applying learning control come from its ability to correct for path and synchronous error seen in repetitive cycles. Once learning is complete reduced cycle times and increased accuracy result.

Related Suppliers

Learning Control Programming the correct path does not mean the machine will follow it. High speed and high precision are often contrary terms. By increasing speed precision is reduced but in order to improve productivity speed must be increased. There is always error in the system, the CNC interpolation time, servo system delay and disturbances due to the cutting process, these errors reduce the ability to increase speed and still produce an acceptable part. The common solution to these problems is to program conservatively by slowing down the feeds or by adding an adaptive control system. The CNC and most adaptive control systems interact by feedrate control. This point in the system updates far to slowly to properly control error and can only react after an error is detected – it is too late and too slow to be completely effective. A high gain servo system is much faster but very similar to the CNC – while it reacts quickly to disturbances there must always be an error for a correction. If the CNC system could predict what the error was going to be it could proactively correct for the path error. Reduced path error allows for faster cycle times and higher productivity.

Predicting the tool path can be accomplished with learning control. By running several parts while in a learning mode the CNC generates compensation values based on the previous learning cycle to reduce servo follow-up delay and feed unevenness due to cutting load variations. At the end of the learning cycle the learning controller is switched to a production mode. The improved accuracy gained by learning control can be traded for higher speeds. In order to accomplish this the learning control must react extremely quickly and store large amounts of data. The compensation data is stored in the CNC DRAM for rapid access and in order to react quickly the learning controller applies the compensation to the velocity command, inside the position loop of the servo system.

The learning control function has been available for some time. The original version of learning control required the same command to be repeated as a unique action. The programming was also unique in that it required users to create their own distribution data instead of standard G-code programming. This process works well in specialized applications such as cam grinding or lead cutting but did not have the flexibility required for general high production machining. Recently learning control has been adapted to take advantage of standard G-code programming and those benefits make it possible to apply this feature to standard machines.

Repetitive Learning Function This function allows the user to replace a conventional cam machine with a CNC machine for use as a piston lathe, automotive cam grinding or lead cutting. Learning function takes advantage of the fact that the same profile is repeated at a set period and each command is repeated as a unique action. The repeated cycle can be analyzed in a learning mode and corrections for servo error and cutting disturbances created. The stored cutting data can then be called as the program executes. Conventional learning Function enables high precision machining by sending the program command and stored correction data through the digital servo software.

The learning process is performed during a set command period, normally one rotation of the spindle or C-axis. Each profile will go through several learning sequences, normally between 5 and 10 times. During the learning sequence the learning controller will make corrections to the motion to minimize position error due to servo lag, disturbances and synchronization errors. Once the profile has been learned the compensation data is stored for use during production mode. Each profile and compensation data is commanded in the program. This learning of error allows for high-speed production without loss of accuracy and also allows for the use of a standard CNC machine instead of a specialized mechanical cam machine.

Learning Control for Parts Cutting Repetitive learning is very powerful and allows a CNC machine to achieve very low path error and high productivity. But, the applications are limited due to the requirement for a learning period based on the main spindle rotation and the use of non-standard NC statements. In order to apply the principles of learning to the greater majority of production CNC machines the profile must now be addressed as a period from cutting start to end, instead of using the rotation of the spindle as the learning cycle. Typical machining centers and lathes do not repeat the same profile per rotation of the spindle. A large number of facets typically make up the profile. Learning control for parts cutting addresses the profile as the machining time within the part program defined by G-code commands. The part program can be made up of multiple profiles defined by the tooling and operations required. During the learning process the machine tool needs to perform several learning operations where the part program is run. The learning mode can be air cutting for light finish processes where cutting load will not affect learning or cutting actual parts in the case of heavy machining where data for the cutting load variations is desired. The learning controller will automatically generate compensation values for servo error, mechanical variation and cutting load. The learning compensation values are adjusted after each subsequent learning cycle. After several cycles are completed and the error has been limited so that high accuracy is achieved at high speeds the machine can be switched to production mode. At that time parts will be rapidly mass-produced. In order for Learning control to be effective for general purpose machining it must offer flexibility and significant memory capability to allow for the part cycle time.


Parts learning control must first be easy to setup and program. Parts learning can be called by inserting the G-code commands into the part program during the sequences where the benefits of learning control are desirable. Since learning control can be added to any number of sequences within the part program, it can be applied wherever high precision is needed. M-Codes may also be defined to switch between learning and production modes. During learning the controller will create the compensation data, once learning is complete the command for production mode can be set, in many cases these M-code commands can be define with macro variables for complete automation of the process. Additional processes can be stored offline on a PC then called back to the CNC as the part type changes. Presently learning control can support 24 profiles and over 4 minutes of learning data. This might not sound like a lot of time but many high production processes use cycle times much less than 4 minutes and learning control only needs to be used during the actual cutting portion. PC based storage can be used when multiple parts are desirable and for longer cycles. Parts learning control function can be used for the critical cutting cycles where precision and/or speed are especially beneficial.

Cutting Applications Learning control for parts cutting can be applied to any free profile milling or turning. The learning cycle will reduce path error so that the machine can follow the free profile more closely. The protrusions caused by the transition between straight cutting and circular arc, the servo error during circular cutting and deviation caused by cutting loads will all be corrected and controlled during the multiple learning cycles. Another valid application is for deep hole drilling with a peck cycle. Deep holes cannot be drilled in one operation. Multiple strokes must be used to gradually make the hole deeper. Each stroke involves a quick rapid move to the bottom, but typically the clearance plane must be set so that overshoot will not occur. If there is an overshoot the drill could break. Learning control will learn the cycle, increase the precision and eliminate the overshoot. Without the risk of overshoot the clearance can be eliminated and cycle time reduced. By using learning control for parts cutting over 50% reduction in cycle time has been seen.

Rigid Tapping A recent advancement in the field of parts learning control is for use with rigid tapping. Learning control for rigid tapping is used to eliminate the synchronous error between the spindle motor and the tapping axis. By eliminating the synchronous error rigid tapping can be performed much faster without lowering the thread class or breaking the tap. This capability is a subset of parts learning control. The programming and functionality is very similar but applies to the process of rigid tapping and is only possible with high-speed communication between the servo system and CNC control. Rigid tapping cycle times can be reduced by over 50% and when tapping a large number of holes such as an automotive engine block or head the significance of that reduction becomes apparent.

The capabilities of learning control have expanded well past the original use. Parts learning control now covers drilling, rigid tapping and free profile machining. These abilities make it possible to apply learning control to almost any CNC production process and get the benefits of reduced cycle times and higher precision without special machines or programming techniques we have with repetitive learning control.

Servo Tuning Utilizing Learning Features Up to this point learning control has been applied to a specific machining processes. Learning control has recently been applied to servo tuning. Backlash and friction play a part in all operations. The effects of lost motion can produce a delay during reversal of the motor. This delay results in quadrant protrusion during circular cutting. By using the learning controller to learn circular error inherent to the mechanical system the CNC can correct for quadrant protrusions. The backlash acceleration function can be tuned using learning control to eliminate the effects of lost motion during circular interpolation. During several circular learning cycles the learning controller will make additive corrections to the backlash acceleration function to automatically tune for quadrant protrusions. This correction then becomes active for all CNC motion and is not specific to a particular part program.

Benefits Demands for increased productivity out of machine tools will drive the improvements of CNC control systems. Traditional solutions have limits due to the static nature of their implementation. Significant improvements in speed and accuracy are now possible by using a CNC system that can learn and correct for its path error. Expanding the functions of learning control past specialized machines into general machining is the next step in the evolution. Now learning functions can be applied to free profile machining, drilling and tapping. The benefits of applying learning control come from its ability to correct for path and synchronous error seen in repetitive cycles. Once learning is complete reduced cycle times and increased accuracy result. Ideal high production CNC applications that can take advantage of these features are: Drill and tapping of automotive engine components, high volume component milling, cam grinding, lead cutting, piston lathes and many other general machining applications.