Pushbutton NC Programming

With numerical control (NC), shops learned how to automate the machining process. Now, with today's CAM software, they are learning how to automate the NC programming process.

For the majority of NC users, NC is about productivity and flexibility—making a lot of parts, and many different parts, on one machine tool. This was true even before computer numerical control (CNC) superseded an earlier generation of machine tools that did not have the benefit of microprocessor-based control technology. Today's CNC machines are flexible, productive and capable.

What makes CNC so flexible and productive is the ability to run different workpiece programs. With the right program, machining is a pushbutton affair. Provided that the proper cutting tools and setup fixtures are available, all a CNC machine needs to begin automatically machining a new and different workpiece is a new and different program.

How to create those new and different programs has taken various approaches. Many CNC machines can be programmed on the shop floor, with the operator entering data at the control panel. This method has been very popular, especially for simpler workpieces. Programs can also be prepared "off-line," away from the machine tool, using computer-aided manufacturing (CAM) software. This method is most often used for more complex workpieces. However, the latest CAM software for the PC (personal computer) provides many automated features that make NC programming largely a push-button affair, regardless of how simple or complex the workpiece might be.

Hess Engineering, Inc., a medium-sized shop in Niles, Michigan (just across the state line from South Bend, Indiana), is a good example of how CAM software is adding a new level of automation to NC programming.

Programming Was A Bottleneck

Hess Engineering was founded in 1976 as a builder of specialized wheel and rim manufacturing equipment, but soon branched out through growth and acquisition to serve a variety of industrial customers. Today, Hess Engineering is part of a group of companies, known as Hess Industries, Inc., all involved in providing metal processing, manufacturing and integrated automation solutions to the global marketplace. Hess Engineering, though, is still dedicated primarily to wheel manufacturing systems and to the Hess-Sundwig line of cold rolling mills and related equipment for steel producers.

The equipment Hess Engineering builds is highly engineered and customized for each application. Most components and fabrications are manufactured in-house, which means a wide variety of parts in a wide range of sizes must be machined, usually to close tolerances. And like every company that is a major player in the world marketplace, meeting delivery dates on time is imperative.

Numerically controlled machines have been a prime manufacturing resource for Hess Engineering from the start. The shop has mills, lathes and wire EDMs, a total of 13 NC machines, most of which are now CNC. One estimate pegs the number of NC programs that the shop generates per year at 1,000 to 1500. Granted, many of the parts that these programs are used to machine are basically two- or three-axis jobs on mills and two-axis jobs on lathes, but many others involve very complex geometry.

When the shop upgraded its NC programming capability by moving to a new CAM system last year, it was looking for ways to ease, if not eliminate, this NC programming bottleneck.

Today, typical turnaround time for new NC programs is measured in minutes. Even for simple parts, off-line programming is so expeditious that it is quickly replacing manual data input (MDI) on the shop floor. At Hess Engineering, push-button NC programming has helped the shop produce more parts with fewer delays on the same number of machines.

A New CAM System

The software Hess Engineering is now using is EdgeCAM from Pathtrace Systems, Inc. (Ontario, California). EdgeCAM is a modular suite of CAM software based on Windows 95 and Windows NT. Hess Engineering had been using Pathtrace's earlier product, PAMMS, so moving up to the Windows-based software was a natural transition.

Several things about the EdgeCAM system promote pushbutton NC programming at Hess Engineering. One of these is clearly the Windows environment, which addresses the software's ease of use. In terms of system functionality, the software has tools to streamline and automate the three major tasks of NC programming: capturing part geometry, implementing a machining strategy, and processing tool path data for shopfloor execution.

EdgeCAM exploits the standard Windows features such as title bar, menu bar for pull-down menus, tool bars for accessing commonly used commands, each with an easily recognized icon, and so on. On-line help screens explain procedures or provide guidelines to assist the user in making informed decisions about choices or options. Multitasking capability allows several applications to be open at one time, so switching back and forth is instant.

To the two chief NC programmers at Hess Engineering, Jim Mackiewicz and Jeff Wagner, the Windows interface is a much appreciated feature. Both of these programmers have extensive experience as machinists on the shop floor. Mr. Mackiewicz ran various milling machines at Hess over the years, and Mr. Wagner was a lathe operator. An easy-to-use interface allows them to concentrate on how to machine workpieces efficiently, not on how to manipulate the CAM software.

"Systems like EdgeCAM make it very easy for us to tailor and customize the software so that it reflects exactly how our shop approaches machining," Mr. Mackiewicz says. "It lets us automate the way we want to automate. It captures our ways of doing things. But you have to know what those ways are to begin with—that's where shopfloor experience is essential."

Capturing knowledge is important because it enhances the proficiency of experienced programmers and allows less experienced programmers to be more effective when additional programming capacity is needed. Details about each machine, operation, or type of material can be recalled readily, leading to more consistent procedures and more predictable results on the shop floor.

To Mr. Mackiewicz, the value of capturing knowledge and customizing a system can be seen most clearly by looking at EdgeCAM's approach to postprocessing, the conversion of tool path data into a program usable at a specified machine tool.

Custom Posts Fast

Code Wizard is the name of EdgeCAM's postprocessor generator. Clicking a button launches this feature by calling up a list of standard control "templates" such as Fadal, Haas, Fanuc, Heidenhain and so on. Each control template is preloaded with defaults to minimize configuration time but these can be reviewed and reset to match specific control features, techniques and shop practices. Each template leads to more templates to fully customize the postprocessor.

For example, the user is prompted by a series of questions such as those covering units of measure (English or metric), initial plane, rapid traverse rates and radius compensation factors. Another series of questions covers tool changes, feed rates and average tool-change time (so cycle time can be calculated automatically). Questions are answered with one or two mouse clicks or several keystrokes. Working through the series of questions takes as little as 5 to 10 minutes or as much time as the programmer wants to spend re-ordering code to suit the shop's exact needs.

Mr. Mackiewicz feels that it was well worth his time to take full advantage of this opportunity to customize each postprocessor to the fullest extent possible. The result, he says, is a postprocessor that yields an NC program needing virtually no hand editing. This is possible because templates can take the programmer to a very deep level of detail.

The G-code template, for example, allows specific codes to be set to a desired number, such as defining metric measurements as G71 or G21 depending on the control. The M-coded template enables subroutine call and subroutine end. Program defaults such as flood coolant on or off and spindle direction can be set.

This system generates a full variance trace so that the postprocessor can be debugged and fully documented. It displays a line that tells where the source of a G-code is. Opening the Code Constructor template allows content and order of a line of code to be defined. When the contents of a drill cycle code line are displayed, for example, it shows the retract code, X move, Y move, Z depth, re-plane, tool length offset, coolant and speed. The order can be rearranged or split into two lines of code to suit the needs of the shop. Hard codes and comments can also be added, which will always appear.

Because the system is a Windows application, Code Wizard can be running in one window while the program editor is running in another window. The NC programmer can view code changes as the postprocessor is modified. "It's a very powerful tool for getting the exact code output," according Mr. Mackiewicz.

"Having to do little or no routine hand-editing of post processed files really streamlines the NC programming process," Mr. Mackiewicz adds, "but good postprocessors really pay off when workloads force us to shift work from one machine to another." Because Hess Engineering machines such a wide variety of workpiece sizes, it has machining centers in several sizes and larger boring mills in several configurations. No two machines are exactly alike, so effective post processing is essential to scheduling flexibility and responsiveness.

Back To Step One

Of course, post processing is the last step to getting an NC program ready for the shop floor. The first step is starting with good geometry. EdgeCAM has a variety of features that streamline or automate this step, such as design tools for creating geometry from scratch and direct translators for importing it from other CAD systems. There is even a facility for importing dimensions from a spreadsheet program, such as Excel, which automatically creates geometry for part families.

The company has a top-notch engineering department, but in the past, the drawings it passed on to manufacturing were not always rendered to the completeness or correctness required for NC programming. NC programmers were routinely responsible for entering geometry from prints. This task was not only time-consuming but also prone to error, so carefully verifying data added to programming time. When EdgeCAM was introduced, the engineering department also made a move up at the same time, to AutoCAD Release 13, for design and drafting.

With Engineering moving away from prints on new parts, programmers no longer have to do as much geometry creation. This frees them to take on more routine programming and relieve machine operators of shopfloor programming with MDI. The goal is to move to 100-percent off-line programming of CNC machine tools. On the shop floor, MDI has generally been a source of machine idle time. The machining cycle time for many parts was so short that it was taking longer to enter the data than to run the part. Minimizing shopfloor programming represents a substantial opportunity to increase machining output without adding any new machines.

There is also more time in the programming department to concentrate on workpieces with complex geometry that must be machined, and these are not uncommon. One useful shortcut in this regard is being able to isolate the geometry needed for NC programming—the contour representing a turned profile in the drawing of a forming tool, for example. See Figure 3. "We just drag a frame over the geometry we need and delete the unwanted portion of the drawing," Mr. Mackiewicz reports.

Tool Paths Automatically

Once geometry has been captured, the next step is implementing a machining strategy. Most milling and turning operations can be programmed by choosing commands from the tool bar and applying them to start and stop points on the geometry. Machining parameters are prompted by pull-down menus, so that appropriate offsets, finishing allowances, stepovers and so on are quickly entered. Tool paths are then generated automatically.

Knowledge-capture features of this CAM system play a key role in this part of NC programming—a point not lost at Hess Engineering. Programmers Mackiewicz and Wagner make extensive use of a feature in EdgeCAM called PCI, or Parametric Command Interface. This feature allows them to automate the programming of repetitive machining operations. PCIs can be created by telling the system to record a series of machining operations, then play back the sequence in any part or at any location on the same part. PCIs can have variables that make them especially handy for families of parts.

For example, the company manufactures a specialized type of roller for the steel mill industry. The rollers are built in various diameters and lengths, but all feature rows of pockets and angled holes. The depth and diameter of these pockets come in four different variations for the different size rollers, and the angled holes are all drilled to one of two depths. Thirteen tools, including drills, taps, reamers and end mills, are involved in machining these pockets.

"To create an NC program for one of these rollers," Mr. Mackiewicz explains, "we simply call up the appropriate PCI and tell it which one of the four sizes of pockets we need. Then we click on the hole locations indicated on the part geometry, and the PCI automatically creates all of the tool paths and machining commands for each pocket at each location. The angled holes are entered in the same way."

Customized Databases

Other knowledge-capture features of EdgeCAM used at Hess Engineering contribute additional time savings. For example, tool and material libraries calculate speeds and feeds and depth of cut automatically, based on the shop's experience with various combinations of cutting tools, workpiece materials and operations.

The Tool Library allows the shop to establish each tool name, associate surface footage (feed rate) with each tool, and attach wireframe graphics to the tool for tool path verification. However, building a complete tool library is an on-going process at Hess Engineering. The programmers are continually adding tools as time permits or when a new tool is added to inventory.

The Material Library is a similar database. It establishes a material type and associates speeds (rpm) with each material. Technology Tables within this library contain sample data for rough, medium and finishing cuts, including depth of cut, chip load per tooth per revolution, and suggested surface footage (speed or rpm).

"One of the best parts of the Material Library is that it lets us indicate a value that reflects the rigidity of the setup and the rigidity of the machine tool," notes Mr. Mackiewicz. "This sort of fine-tuning, which we can easily do off-line, pays off in increased tool life, part finish and other benefits." The rigidity field on the materials screen is similar to using the manual override on a CNC to compensate for material and setup rigidity. It automatically increases or decreases the depth of cut, speeds and feeds according to the rigidity factor selected.

Tool Kits is another feature that allows programmers to help streamline shopfloor operations. This feature makes it possible to assemble tool lists for kits so that operators know exactly what cutting tools are needed for a job and that all needed tools are available.

Wherever possible, Hess Engineering's shop has standardized tool pocket assignments for specific types of cutting tools in the automatic toolchangers on machining centers and tool turrets on turning centers. This practice minimizes change-over time from job to job and facilitates moving jobs from machine to machine as scheduling demands dictate.

Data from the tool and material libraries, or values entered by the programmer, are used for realistic and very accurate 3D graphical simulation of cutting processes. This tool path verification software is embedded in the EdgeCAM system.

"Verification is the best way for us to prove-out an NC program," says Mr. Mackiewicz. "It allows us to eyeball what is going to happen at the machine tool. This helps us catch mistakes and also to find opportunities to improve or optimize an operation."

Always More To Learn

Knowledge about machining and shopfloor practices can be captured and put to use to automate the NC programming process, but the knowledge keeps changing as a shop keeps changing. Companies like Hess Engineering are always moving ahead and its manufacturing capabilities have to evolve to keep up with, as well as lead, this progress.

For this reason, Jim Mackiewicz doesn't believe that NC programming will ever be entirely a pushbutton affair. "We'll always be in there tweaking processes and fine-tuning our procedures. And we've only started to use some of the automation tools our CAM software provides," he says. "It's moved us way ahead already, but most of all, it will keep us moving ahead. This is a journey that doesn't end."


  • B-Axis Turn/Mills Have Their Place

    The additional rotary milling axis on these machines allows them to complete many types of complex parts in a single setup, but these machines have gained a reputation for being difficult to program. Today’s CAM software, however, eases the programming challenge significantly.

  • Understanding NURBS Interpolation

    The right way to program curves? A solution to yesterday's problems? The truth is probably somewhere in between.

  • The Changing Face Of CNC Programming

    The Future of Machining - 2005 Efforts to create a CNC-usable product data model are inching forward, but in the meantime, advances in CAM software will make the programmer's job function super-efficient rather than superfluous.

Related Suppliers

Related Content

CAM System Helps Company Improve Programs for New Machine

A machine shop’s old CAM system held it back from efficiently using its new three-turret turning center, but upgrading its software has helped it save time and money.