Showing posts with label CNC Programming. Show all posts
Showing posts with label CNC Programming. Show all posts

The ABCs of CNC programming

Often, while reviewing various woodworking and cabinetry magazines, I have noticed a lack of articles concerning CNC programming advice.

While articles are printed on the new innovations, equipment, and the current and future importance of the CNC processes, there are no articles for the programmers to guide them through the learning process. In my case, I had operated a Morbidelli U26 point-to-point machine for 2 1/2 years at Goer Manufacturing when I was promoted as a programmer for two Heian ZR442-P CNC machines, systems that I had never operated. My predecessor was promoted and busy learning his new responsibilities and had little time for training me. Naturally, you can imagine the problems I experienced and the depth of the relationship that I developed with our maintenance department.

It is with this in mind that I submit the following information. A list, if you will, of mistakes and discoveries that have broadened my experience as a CNC programmer.

'DETAIL CREEP'

Probably, the most important of my discoveries was what I call "detail creep." The use of rounded numbers without resetting X, Y and Z axes after each cycle creates "detail creep." If you use 0.688 for 11/16 inch instead of 0.6875, each cycle will pick up an extra 0.0005 inch per cycle. After 100 cycles, your dimensions are off by 0.0500 inch (nearly 1/16 inch).

I discovered this on large run processes where the setup was correct but the dimensions would begin to drift during the day. Naturally, the operator would reset the start points to accommodate what he perceived as the solution to the problem. However, once the points were changed, the detail would move past its position by exactly the amount of his change. The answer was that by restarting his process, he had reset his zero points in X, Y and Z.

We defeated this problem in two manners. First, on short runs we physically reset all axes to zero after each cycle. Second, we used a localized coordinate system (G52 for FANUC Controllers) to designate a specific start point for each component and reset that after each cycle (G52X0Y0Z0) without the machine having to physically return to its zero points for large runs. Both of these methods allow the use of rounded numbers because the margin of error is too small to be measured.

If you want to see this in action, use your absolute programming to drill a hole with a rounded number in two different locations on separate tables and watch the hole turn into an oval after several cycles. Use your calipers to monitor the width to prevent running 100 cycles.

COORDINATE SYSTEMS

With the FANUC Controllers we use, I have found that the use of localized coordinate systems has several advantages.

First, instead of the required dimension plus the stop location (stop 10 inches + dim 3.125 inches = 13.125 inches as it appears on the program), the numbers on your program are identical to those on your print (3.125 inches), which I call "nominal-to-profile."

Second, if you are in the middle of a run and need to change to a different process, the localized offset allows you to place your new setup without interfering with the current setup. When the interrupting sequence is completed, you can then return immediately to your previous setup without a re-setup.

With localized coordinate systems, you can better utilize spoil boards by consolidating setups or changing locations on the spoil boards for a new setup without changing every start point on the process.

Finally, from a training standpoint, with new operators you can treat the setup training and the editing functions separately which reduces confusion.

ONE PART AT A TIME

This one will probably drive mill foremen crazy, but if you have various components running at the same time, detail one part at a time. Before y'all hit the roof, let me explain.

You can run multi-head functions, but detail the Right Hand ends together complete before you switch over to the Left Hand ends, especially on short run processes. When you drop a drill to make shelf holes on the Right Hand end of a unit and move over to the LH end to drill, you are required to use absolute programming (from the machine's home points) or add a localized offset for each operation.

This is a complicated and confusing process. To combat this, I detail each component complete before moving to the next component. While this may slow the process down a little, it makes editing of the program easier and easier to read. It also allows the use of a single localized offset for each piece, which can be reset without the physical return to zero.

COMMENT LINES

My programs have a 32-character limit before the wrap-around feature utilizes the next line and consumes memory. I have created templates that have all repetitive information on every program to use, not only as a training aid, but to clarify areas that can be ignored during troubleshooting.

Example:

G90G00G40G49Z0M92 means Absolute Programming, Rapid Traverse, Cancel Tool Diameter Offset, Cancel Tool Height Offset, Return Z Axis to Zero, All Routers Up and Off.

This statement is very confusing to trainees, who focus on each separate statement without getting the overall picture. The way this line appears in my program is as follows: G90G00G40G49Z0M92 (CANCEL OFFSETS)

This blanket statement explains what this line actually does. The way my program templates were created, I never type this line into program because it is already in this format. The operator knows that if he has a problem with a detail, it does not come from this line.

I have identified each line as a vacuum command, safety net feature or detail command. I define safety net features as the section of the program that protects the machine from imbedded offsets that may be carried over from a prior process.

All tooling and offset information is included on each main program as comment lines for a permanent record of that information. This creates a paperless system that obviates the need for a hard copy of the program.

I found that the lack of this information from my predecessors made understanding their output difficult at best, and often it was easier to regenerate a new program if the hard copy was lost than to understand their process. The extra minute you spend now will reap major benefits later, especially if there is question about the process and you are under pressure to perform.

BULL'S EYE ALL HOLES AND CUTOUTS

Locate all holes and cut-out subroutines from an easily designated centerpoint and use the same identifying "name" for identical programs. More on this in the Standardized Format section.

STANDARDIZED FORMAT

By using the same program template format over and over and over, my operators have a feel for what is coming next in the program. The consistency of my programs eliminates the constant need for personal intervention on my part. Any program that varies from the standard format has a note that identifies it as such. The template programs are copies of successful programs that have been stripped of specific details which leaves a skeleton. When it is time for a new program, the template is called up and copied as the new program. Examples are: two tables separate (2TABSEP), one table only (1TABLE) and both tables as a single unit (BOTHTAB).

The separate operations have skeletons that only need motor identification and offset input to complete the basic framework of the process. It is, then, just a matter of loading the specific details at the operational level to complete the program. For our Heians, there are three different operations: drilling, routing and horizontal drilling. Each of these operations has its own skeleton program with required safety features and comment lines.

We also have dedicated certain subroutines with fixed program numbers, such as P037 as our leveler hole. Every time a 1-inch leveler hole is required, the same routine is used.

Another example is our dadoes. If I have a program for a 48-inch dado that is 1/4 inch deep and runs the entire length of a panel, I write the sub routing for 51 inches, which allows me to use that dado for any panel from 45 inches to 50 inches. Indexed charts are available to identify the programs that are described as E2W 1/4 50. That tells me the program runs from right (East) to left (West) and returns to the right for up to 50 inches. This fixed program process cuts down the number of programs that must be maintained and, when rushed, precludes errors.


I have saved training for last because all of the above steps are an effort to reduce operator turnover caused by frustration and bewilderment. By giving our operators the best possible chance to succeed at their jobs, they can focus on the job at hand. We have starter packages prepared for new operators to identify their informational needs. These packages were compiled by asking new operators what skills they felt they needed in order to do their jobs. The starter and operator manuals are never complete, but always in a state of genesis as new informational needs are identified.

I once took a two-day customer service seminar that focused on customer identification. I consider my operators my customers because if I do not keep them happy, my job is more difficult. Therefore, all of my activities are directed towards allowing the CNC operators the best possible opportunity to successfully complete the product process. The process must have clarity and ease of execution.

An example is that I have pulled all of my processes out to the front edge of the tables (63 inches wide by 167 inches long) to reduce back strain. When the operators do not like a certain process, I ask them how we can do it better and easier. Every suggestion is examined for its good points and bad, and frequently a compromise is reached that satisfies all parties.

Prior to my arrival in this position, the programmers did not believe that the operators were capable of learning various methods of programming. I have found exactly the opposite. With the use of localized coordinates, I utilize all four quadrants of the Cartesian Graph. I program upside down, drill through bottoms to detail tops, allow my operators to choose stop locations for the processes, and alter standardized programs that use the same program to detail similar, but different components. All of these variations help keep the operator from becoming bored, and believe me CNC operators are curious individuals.

By taking the operators on as partners, their input is of valuable assistance. Make no mistake about it, I am in charge of the process, I am the final arbiter, and I am responsible for the results, but I allow myself and my operators latitude in the decision making process.

In conclusion, these steps are procedures I wish were available when I became a CNC operator. I have tried to examine and explore some of the solutions that alleviated ongoing problems we had encountered. In the end, there is no substitute for experience and education.

Rob Kellum has operated NC and CNC machines for four years and has programmed CNC machines for two years at Goer Mfg. in Charleston, SC, a manufacturer of custom store fixtures.

http://findarticles.com/p/articles/m

Verify CNC program correctness

All CNC programs must be verified. While new programs present more challenges than proven programs, operators must be careful and alert during every step of a program's verification.

Step 1: Verify the correctness of the CNC program. This step is required for new programs or for programs that have been modified since the last time they were run (possibly because of engineering changes). It is also necessary to do this step if there is any doubt as to whether you are working with the current version of the program (after making changes at the machine the last time the job was run, perhaps the setup person forgot to save the program).

The objective of Step 1 is solely to confirm the correctness of motions commanded in the program. Other potential problems will require further verification at the machine; however, when Step 1 is successfully completed, the setup person will have confidence in the motions made by the program.

Some operators perform this step on the CNC machine during setup, which requires time. Many current model CNC machine tools have built-in toolpath displays, and as long as you verify the new program while the machine is running, you won't interfere with production. Not all CNC machines allow you to view one program's toolpath while another program is running. In this case, Step 1 will add to the setup time. If mistakes are found, the time it takes to correct them will also add to setup time.

Not all CNC machines provide toolpath display, and it is difficult to see a program's true motions by watching a CNC machine run a program. You may not be able to achieve the objective of Step 1 in this case because there might be serious mistakes to be found and corrected in Steps 2 and 3.

With the affordable off-line G-code level toolpath verification systems available, Step 1 can be performed for upcoming jobs, while the machine is running production shortly after a CNC program is created or modified. With these desktop computer-based systems, users can gain a better view of the program's movements than they could by watching the machine move.

If using an off-line system, the programmer is usually responsible for this step. They will perform this step shortly after the program is created. While most CAM systems have toolpath verification that is done as the CNC program is created, if changes are made to the G-code level program, many CAM systems cannot display the changes.

Even if changes are not made to the G-code level program, I recommend using a G-code level off-line program verification system to check the program's motions. If nothing else, this gives the programmer another way to see the motions a program is going to make before it is run on the CNC machine.

It takes a watchful eye to catch mistakes with an off-line system. Because the job is not currently on the machine, there is no real urgency, so mistakes can slip by. It might help to have someone else perform this step (another programmer or a setup person). Because the original programmer is so familiar with the job, he or she might not catch obvious mistakes. A setup person can be the best bet, since he or she will be responsible for actually running the program at the machine.

Many off-line systems don't show the location of clamps and other obstructions, so the person verifying the program must be able to visualize the placement of workholding components around the workpiece. The more problems they catch, the fewer problems there will be for the setup person to find and correct.

There may still be problems with the program's motions alter Step 1 is completed, but these problems should not be severe. Even with a toolpath display, it can be difficult to catch small motion mistakes. Some solid model-type program verification systems allow performing measurements on the virtual workpiece machined in the system; however, you must suspect that a problem exists before taking a measurement. For instance, with a mistake of less than 0.01 inch, it is likely that you may not suspect that anything is wrong.

After completing Step 1, the setup person can proceed to Step 2, which will be explained in next month's column. They must still be extremely careful, but there will be no big problems in the program's motions.

http://findarticles.com/p/articles/mi_m3101/is_12_77/ai_n13683534

USB reader inputs CNC programs from a flash drive

Most of us are familiar with USB flash memory devices (also called flash drives or data sticks) for storing documents and digital photos. They are a convenient way to move files from a laptop to a desktop PC, from a camera to a PC and so on. They can also be handy for storing and moving part programs for CNC machines on the shop floor.

[ILLUSTRATION OMITTED]

Calmotion LLC (Chatsworth, California) has developed a reader/ control unit that acts as ah interface between commercially available USB flash drives and CNC units with RS-232 serial ports that can be used for datainput. Called the USBCNC, the system allows machine tool files to be sent from the flash drive to the CNC and from the CNC memory to the flash drive. Data from the flash drive can also be "drip fed" into the CNC. "Drip feeding" lets the CNC read in each line of the part program code as needed to execute the machining operation. According to the company, DNC ("direct" or "downloading" numerical control) firmware is built into the reader/control unit so that it can be connected to almost any machine tool CNC unit.

The USB reader/control unit helps shops with CNCs that have limited i memory capacity. Proprietary memory upgrades for these CNCs may be prohibitively expensive or unavailable. The reader/control unit is an alternative. Libraries of part programs can be stored on a single flash drive (a 1 GB drive comes with the system). Likewise, the system is an alternative to either using a PC on the shop floor for DNC or stringing long cables so that the PC can be placed in a safer location.

In operation, the reader/control unit displays simple messages or a directory of files stored on the flash drive. Three buttons on the reader allow the user to scroll up and down and select items. The unit can be mounted on a machine tool CNC panel or enclosed in an aluminum housing to be used as a hand-held pendant.

A similar USB reader/control unit specifically designed for Fadal CNC units is also available. This version, the USBCNC-FAD, uses the display panel on the Fadal CNC for operation and has other features tailored for integration with this make of control.


http://findarticles.com/p/articles/mi_m3101/is_7_80/ai_n27474528

Offline CNC programming time reduced

Offline CNC programming software offers continual improvements to features and functionality designed to reduce programming time and improve autosport production efficiency.

Pathtrace will be demonstrating its EdgeCAM offline CNC programming software at the UK's Autosport Engineering show held at the NEC in January 2006 EdgeCAM is used extensively by companies supplying the motorsport industry where fast turnaround of manufactured parts is essential

EdgeCAM helps streamline the manufacturing process with continual improvements to features and functionality designed to reduce programming time and improve production efficiency.

Machine simulation With the latest release of the software EdgeCAM Simulator now offers full machine simulation.

For lathe programming fully detailed tools, turrets and other devices such as tailstocks and steadies can be displayed with full movement through the machining session, helping to avoid expensive collisions, optimise the cutting process and reduce cycle time.

All aspects of the machine tool are defined with easy-to-use graphical tools and can be configured for any machine type including mill/turn lathes and 5-axis milling machines.

Machine simulation is one of the most important preconditions for ensuring safe operations when performing 5-axis machining, helping to visualise the machine tool movement when making rotary movement.

This is of critical importance as, in many cases, a small change in tool orientation can result in a large rotary movement.

* 5-axis machining - also at the show, Pathtrace will be previewing EdgeCAM's new multi-axis machining functionality.

A comprehensive range of simultaneous 4 and 5-axis strategies meets the production machining requirements of industries such as aerospace.

5-axis strategies include swarf cutting for machining variable taper walls and sophisticated multi-surface finishing, while 4-axis simultaneous machining targets complex rotary applications such as camshafts and blades.

All new machining strategies will be available for both mill and B-axis mill/turn machine configurations and fully support solid and surface geometry.

Both new capabilities build on recent EdgeCAM releases and thus rely on proven technology.

EdgeCAM is a complete solution for milling, turning, mill/


http://www.manufacturingtalk.com/news/pat/pat224.html

CNC Machines

CNC Machines offers high precision machined components via CNC Milling Machines and turning machines known as CNC Machining Center or CNC Machines Center that can perform multiple machining operations with various type of cutting tools by utilizing the latest techniques and technology to give the extremely accurate and precise machined components.
powered by Blogger | WordPress by Newwpthemes | Converted by BloggerTheme