Showing posts with label CNC G-Code. Show all posts
Showing posts with label CNC G-Code. Show all posts

[CNC Tips] Tips for CNC Users

CNC Tips

CNC Concepts, Inc. accepts no responsibility for the use or misuse of techniques shown in these web pages. We simply publish information we feel will be of interest to CNC users. In all cases, the reader is totally responsible for considering the implications, good and bad, of implementing one or more of the techniques we show.

* Best ebooks for CNC programming: 
CNC Programming Basics 
G-Code and M-Code 
CNC programming 
G-Code Reference 
CNC Machine Tutorial 
Tips for CNC Users
Tips for CNC Users

Tips for CNC Users:

A date engraving custom macro
 to engrave the current day in a workpiece!
Programming a horizontal machining center from a central origin
 If you have a horizontal machining center , this is a "must read"!
Two great articles on machine utilization and costing
 by Roger Kern
A serial number engraving custom macro
Submitted by Steve Woods
How to program a bar puller
Here's how you can program the bar puller from The Duhnam Tool Company
How the heck does G28 work?
We attempt to explain one of Fanuc's most confusing commands.
How can you tell if you're control has Custom Macro B?
Good question!
DNC software that tracks cycle time and time that each tool is cutting
by Dan Fritz of Suburban Machinery
A pallet check for Mori Seike horizontals
by Brian Cox of Ellison Machinery
Simplifying the task of jaw placement on three-jaw chucks
Minimize the time it takes to mount jaws on three-jaw chucks!
A bolt hole machining parametric program in three different versions (Fanuc's custom macro B, Okuma's user task 2, and Fadal's macro)
Everyone's been asking for this one. It makes an excellent example of what can be done with parametric programming. And you can compare different versions of parametric programming!
When is a five axis machining center required?
Here's a quick rundown on the two types of five axis machining and the two types of five axis machines
A letter engraving custom macro
A quick and easy way to engrave letters!
A custom macro for taper thread milling
This macro makes it possible to mill taper threads!

* Ebooks
[CNC Tips] Tips for CNC Users

CNC G-Code Tutorials | G-Code Reference

CNC G-Code programming tutorial
G-Code reference

* Best ebooks for CNC programming:

+ CNC Programming Basics
+ G-Code and M-Code
+ CNC programming
+ G-Code Reference
+ CNC Machine Tutorial
+ CNC M-Code Tutoria

Table Of Contents:
  1. G-code Table
  2. G00 - Rapid Linear Motion
  3. G01 - Linear Motion at Feed Rate
  4. G02 and G03 - Arc at Feed Rate
  5. G04 - Dwell
  6. G10 - Coordinate System Data Tool and Work Offset Tables
  7. G17, G18 and G19 - Plane Selection
  8. G20 and G21 - Length Units
  9. G28 and G30 - Return to Home
  10. G28.1 - Reference Axes
  11. G40, G41 and G42 - Cutter Radius Compensation
  12. G43, G44 and G49 - Tool Length Offsets
  13. G47 - Engrave Sequential Serial Number
  14. G53 - Move in Absolute Coordinates
  15. G54 to G59 and G59 P~ - Select Work Offset Coordinate System
  16. G61 and G64 - Set Path Control Mode
  17. G73 - Canned Cycle - High Speed Peck Drill
  18. G80 - Cancel Modal Motion
  19. G81 to G89 - Canned Cycles
  20. G90 and G91 - Distance Mode
  21. G92, G92.1, G92.2 and G92.3 - G92 Offsets
  22. G93, G94 and G95 - Set Path Control Mode
  23. G98 and G99 - Canned Cycle Return Level 

Drill Peck Canned Cycles: G81, G73, G83 code

G81, G73, G83: Drill Peck Canned Cycles

What are Canned Cycles?

Until this point, all our motion has been done with G00/G01 for lines and G02/03 for arcs. In this chapter, we introduce the notion of “Canned Cycles”, which allow more complex types of motion aimed at simplifying the programming of certain common operations such as drilling holes.
Canned cycles are often modal just like the other motions. For example, once we select the high speed peck drilling cycle with G73, subsequent coordinates on later lines specify new hole locations where more peck drilling will be done.

What is a “Peck Drilling Cycle”?

A term you’ll hear a lot is “peck drilling”. This is the practice of drilling a little ways (the peck distance), back off some distance, and then going back down to the bottom to take another peck. Think of the motion as being not unlike a woodpecker. The reason it’s done is to evacuate the chips from the bore.
Recutting chips is always a bad thing for tool life. The other purpose of peck drilling is improved chip evacuation.  There’s only enough room down in the bore for the chips that fit in the flutes of the twist drill, and the deeper the hole, the harder it is to evacuate those chips out of the hole. Peck drilling also helps with chip evacuation in two ways.
First, even a very short peck where the retraction is minimal helps to break off the chip resulting in shorter chips. Shorter chips are much easier to evacuate.
Second, if the twist drill retracts a substantial distance, this helps reduce the distance the helix of the twist drill has to carry chips.
One thing it that is important to avoid when peck drilling is letting the coolant or air/mist blast wash chips back down the hole. For that reason, the best peck drill cycles will not pull the twist drill completely clear of the hole.
Another thing to keep in mind is most manufacturers do not recommend peck drilling for carbide drills.  It increases the tendency of chipping the brittle carbide.
There are some rules of thumb about when you need to start using a Peck Drilling Cycle as opposed to just plunging straight down. Most tooling manufacturers will suggest you start when the hole is 4 diameters deep. G-Wizard Calculator will remind you if you forget.

Different Types of Canned Drilling Cycles and Their Uses

Since there are quite a few different types of canned drilling cycles, it’s easiest to classify them in tabular form:
G Code Purpose Peck Retract Bottom of Hole
High-speed Peck Drilling for Shallow Holes
Left-hand Tapping Cycle
Dwell -> Spindle CW
Fine Boring Cycle
Oriented Stop
Drilling Cycle without Peck,
Hole Depths <= 3 Diameters
Spot Drilling Cycle
Peck Drilling for Deeper Holes
Tapping Cycle
Dwell -> Spindle CCW
Boring Cycle
Boring Cycle
Spindle Stop
Back Boring Cycle
Spindle CW
Boring Cycle
Dwell -> Spindle Stop
Boring Cycle
As you can see, the cycles may be divided based on their purpose–drilling, boring, or tapping, whether they are peck cycles, how they retract, and anything special that happens at the bottom of the hole. For example, dwelling helps ensure a smooth bottom of hole finish and evacuates any chips from the bottom of the hole. Getting chips between the drill point and the hole bottom as the bit descends for another peck greatly increases tool wear, especially with work hardening materials like stainless steel.

Anatomy of a Basic Cycle: G81

There are a lot of parameters and options associated with the drilling cycles, so let’s start with a relatively simple one: G81. G81 does no pecking and has no special operation at the bottom of the hole. It just goes down at the feedrate, and then retracts.
Let’s use this example G81 block:
     Z1.0 (Initial Z)
     X10Y12 (XY for first hole)
     G99 G81 R0.2 Z-0.7
     X10Y14 (XY for second hole)
     X10Y16 (XY for third hole)
     G80 (Cancel canned cycle)
Here is a schematic of how it works:

Following along with the schematic:
– First, the machine rapids to the X and Y coordinates of the hole, or the corresponding pair of coordinates if a plane other than G17 is selected. For our example, those coordinates are X10Y12.
– Second, the tool rapids straight down to the R position, established by the “R” word of the cycle. We came in at a Z of 1.0″. R is 0.2″, so we rapid from 1.0″ down to 0.2″.
– Next we feed down an amount equal to Z. In other words, Z specifies the depth, not a particular coordinate. That depth is measured from R. So, with an R of 0.2″, and a depth (Z) of 0.7″, we are going down to Z = -0.5″. Remember to do that math carefully, as R will always be a little above material top and you have to add it to the actual hole depth to get your Z.
– Lastly, we retract at rapids speed. Now retract can work in one of two ways, and is modified using G98 and G99.

Modifying Retract With G98 and G99 G-Codes

G98 and G99 g-codes are used to modify the retraction behavior of canned drilling cycles. If G98 is in effect (specified before the cycle such as the G99 shown above), retraction is back to the initial Z height. If G99 is in effect, retraction is to the R height. The option to retract to the original Z height using G98 is provided in case there are obstacles between the holes such as clamps or other features of the part.

Multiple Holes Until G80 Cancels the Cycle

As mentioned, these drilling cycles are modal. That means you can just real off a bunch of XY coordinates once the cycle is initiated, and the machine will happily execute the cycle at each location. To cancel the cycle, use G80. After executing the G80, the machine returns to G00 mode.
In the example above, we get 3 holes before the G80 cancels the canned cycle.

Simulating to Simplify, Understand, and Verify

By now, you’re probably thinking the water is deep, it’s cold, and it’s moving pretty fast–canned cycles are complex!
It’ll seem like it until you get used to them. The complexity is there to give you all the options you need to hand a myriad of situations. There is good news though, whether you’re just trying to learn, or whether you’re actively developing and testing canned cycles in your g-code. You can use a g-code simulator to help make them easier to understand and work with. If you haven’t already, pop over to our G-Wizard G-Code Editor/Simulator and sign up. That will put a first class g-code simulator in your hands which will make understanding and working with canned cycles a whole lot easier.
Here is a shot of the portion of the GWE screen that shows a backplot of what the machine is doing as well as what we call a “hint” that explains the canned cycle in plain English:

Red lines are rapids and green lines are at feed speed…
The backplot clearly shows the three holes being drilled. The hint (the area in blue at the bottom) tells us the original line of code as well as 4 different hints:
– It reminds us that the G99 means to return to the initial R plane after each hole.
– It tells us G81 is a simple drilling cycle.
– We know retraction will be to Z = 0.2″
– Lastly, we know the bottom of the hole is at Z = -0.5″, exactly where we wanted it.
It’s really helpful to have these kinds of tools at hand when you’re trying to work with canned cycles.

Relative vs Absolute and Repeats

In the G81 example above we saw how the canned cycle is modal, so we can just keep giving XY values and drill a buch of holes. There is another approach that can be used for multiple holes assuming they have regular spacing, and that’s to use relative coordinates and repeats.

G82 – Drilling Cycle

G82 is a drilling cycle that doesn’t peck, but instead dwells at the bottom of the hole. This increases the accuracy of the hole depth.
A typical G82 looks like this:
XY: Coordinates of the hole
Z: Hole bottom
R: Retract position in Z. Motions from initial Z to R are performed at rapids speeds. From R to hole bottom is done at feed speed.
P: Dwell time at bottom of hole.
F: Cutting feedrate
L: Number of repeats
Once the drill reaches the bottom of hole and has finished dwelling, retraction is at rapids speeds.

G83 G-Code – Deep Hole Peck Cycle

G83 g-code is a drilling cycle that retracts all the way out of the hole with each peck. As such, it is well-suited to deeper holes than the G73 cycle can handle. G83 also allows for dwells at the bottom of the hole. This increases the accuracy of the hole depth.
A typical G83 looks like this:
XY: Coordinates of the hole
Z: Hole bottom
R: Retract position in Z. Motions from initial Z to R are performed at rapids speeds. From R to hole bottom is done at feed speed.
P: Dwell time at bottom of hole.
Q: Depth to increase on each peck.
F: Cutting feedrate
L: Number of repeats
Once the drill reaches the bottom of hole and has finished dwelling, retraction is at rapids speeds.

G73 G-Code – High Speed Peck Drilling of Shallow Holes

G84 G-Code – Tapping Cycle

G74 G-Code – Reverse (Left-hand) Tapping Cycle

G85 G-Code – Boring Cycle

G86 G-Code – Boring Cycle

G87 G-Code – Back Boring Cycle

G88 G-Code – Boring Cycle

G89 G-Code – Boring Cycle

G76 G-Code – Precision Boring Cycle

What About Even Deeper Holes?

A deep hole is any hole more than 5 diameters deep.  The deeper you go, the harder it gets.  A variety of techniques are needed, and peck drillings cycles are just one. Here’s a handy chart to help you keep up with the various techniques:


[ Video ] CNC Programming, G-Code Tutorials

CNC Programming | G-Code

* Best ebooks for CNC programming: 
CNC Programming Basics 
G-Code and M-Code 
CNC programming 
G-Code Reference 
CNC Machine Tutorial 

1. CNC PROGRAMMING G-Code basics


[CNC Programming Examples] CNC Arc Programming Exercise

CNC Arc Programming Exercise

CNC arc programming exercise, shows how to cnc program an arc with I and K. CNC G-code G03 is used to program this arc.

CNC Arc Programming Exercise
N10 GOO X0 Z0
N20 G01 X12 F0.3
N30 G01 X40 Z-25
N40 G03 X70 Z-75 I-3.335 K-29.25
N50 G01 Z-95
N60 G00 X200 Z200