G94 Facing Example (Sample Program)

G94 Facing Example (Sample Program)

G94 Facing Example

G94 Facing Program Example

G94 Facing Example

:Blank Size: 65mm Diameter 85mm Long

:Final Size: 65mm Diameter 82mm Long

This program will rapid to X66. Z3. it will then machine the face down to Z0 in three cuts. The first G94 line tells it to face past centreline to X-1.6 at a feed-rate of F.2 The Z axis moves to Z2.

1: Z2.
2: Z1.
3: Z0

The cycle stays in the control until cancelled by a G0 rapid command.

So it remembers exactly what you told it, a bit like my wife, she keeps reminding me of the time I got so hammered I pissed in her wardrobe (some of the shoes still smell to this day).

The G0 G28 U0 W0 will move the turret back to machine reference point.

The G0 will cancel the G94 Facing cycle.

G94 Facing Example Is It Any Good?

Well personally I think it is.

Now I’ll tell you why. You could say it’s really easy to write the program to face a part.

G0 X50. Z0
G1 X-1.6 F.2
G0 X50. Z2.

So that’s easy to do but….

Some one wrote a comment on one of my posts the other day and he started it by saying “back in the real world”.

Can’t lie and say it didn’t piss me off but being the mature well balanced man that I am I ignored it.

Now my inner nasty, immature, unbalanced me said “look mate I was in the real world when you were still shitting yellow”. Obviously I didn’t post it and if your reading this now thinking it’s you, well it isn’t.

Anyway as to the G94 Facing Example

In the “real world” you get to the end of the batch of parts and find that one of them is way too long and you need to face a shit load off the front.

Now had you used the cycle as below and got into the habit of always using it.

G0 X50. Z3.
G94 X-1.6 Z0 F.2
G0 G28 U0 W0

The alteration would be really easy.

G0 X50. Z12. (Imagine You Have An Extra 12mm On the Face)
G94 X-1.6 Z10.5 F.2
G0 G28 U0 W0

Rapid Move Cancels G94

Note don’t forget you must have the G0 rapid move at the end to cancel the G94.

(Just like G0 cancels a canned cycle in milling)

Don’t be tempted to put G0 in the moves as the control will just wiz around in Z and sit there laughing at you.

G0 X50. Z12. (This is what not to do)
G94 X-1.6 F.2
G0 Z10.5 (NO NO NO NO NO NO)
G0 G28 U0 W0

See full explanation

Using G94 on a Haas Lathe


If you have been affected by any of the issues in this post or need CNC Counselling then contact me.

If you want to learn to program CNC Milling Machines

Look no further Contact CNC Training Centre


Larry Kenny

November 13, 2020 at 1:12 am

Whats G50 S5000 ? On my machine G50 is used to set an X or Z position ( like G92 on my mill ) and what is S5000 Clamp speed for ?

Log out of this account

Leave a Reply

CNC Training Centre
WP to LinkedIn Auto Publish Powered By : XYZScripts.com