What's new
What's new

Haas Lathe - Understanding VPS

rwskinner

Aluminum
Joined
Sep 22, 2015
Location
Somewhere in Texas
I don't use VPS often however when I do I run into an issue where it always wants to cut air at least 1 pass before it cuts where I told it to start.
For example: OD Turning. Starting Diameter 4.00" Ending Diameter: 3.900" DOC: 0.050"

It moves X to something like 4.020 then does a G71 and cuts air for 1 pass, then finally to 3.900.
If I manually edit the first X move to 4.00 then it takes 1 pass like it should at the desired doc of 0.050"

Anyone know the logic behind this and how to stop it from always cutting air for a pass or two?
I believe it's the X rapid approach but it won't allow 0.0

Below is the code it creates:
%
O00111
(OD TURN CYCLE)
(SAFETY LINE BELOW)
G00 G54 G18 G40 G80 G97 G99
(TOOL = 11 / OFFSET = 11)
(WORK OFFSET = 54)
(MAXIMUM SPINDLE RPM = 1800)
(CONSTANT SURFACE SPEED = 500)
(OUTSIDE DIAMETER: 4.)
(FINISH DIAMETER: 3.9)
(FILLET RADIUS = 0.)
(DEPTH PER PASS = 0.05)
T1111
G54
G50 S1800
G97 S720 M03 (M03 FOR CLOCKWISE M04 FOR COUNTER-CLOCKWISE)
G00 Y0.
G00 Z0.01
G00 X4.02 <-----------------------------------?????
M08
G96 S500
G71 P429 Q430 D0.05 U0. W0. F0.01
N429 G00 X3.9
G01 Z-1.
N430 X4.02
G00 Z0.01
G97 S720
M09
G00 G53 X0.
G00 G53 Z0.
G00 Y0.
M05
(END OD TURN CYCLE)
M01


snapshot5.png
 
Last edited:
Shouldn't G71 drop to N429 and make the first pass at X3.9 ?
N429 G00 X3.9

If so, why is it doing the first pass at X4.020 then doing the second pass at X3.9?
 
I'm sure the programmer who designed those templates added the extra as a safety move. They're probably assuming if the user can't read enough G-code to program a turning cycle, an extra pass or two is probably safest.

I've seen this too but, never really thought about it. I believe even if you have a max step of 0.050 and only need to take off 0.020" it will add something to that and 'cut air' for at least one pass. The template saved me far more time than hand writing the code would have.
 
G71 is a roughing cycle.
The 4.02 is seen as stock diameter in your code.
Since you only have a D.05, it needs more than one pass.
The D.05 is radial, so it will take up to .1 off of the diameter. 4.02 - 3.9 = .120 diameter.
As far as the VPS, you have entered the 3.9 finish, stock 4.0, and X clearance of .01. This X clearance must also me a radial value to be outputting a 4.02.
You could consider increasing your depth of cut to be .06 or greater.
 
Last edited:
Yes, but I thought the first move would rapid from 4.020 to X3.90 since the first line of code on the G71 is N429?
Do I misunderstand G71?

G00 X4.02 <-----------------------------------?????
M08
G96 S500
G71 P429 Q430 D0.05 U0. W0. F0.01
N429 G00 X3.9
 
G71 is a roughing cycle that looks at your start X position as the stock diameter.
The 4.02 is seen as stock diameter in your code.
Since you only have a D.05, it needs more than one pass.
The D.05 is radial, so it will take up to .1 off of the diameter. 4.02 - 3.9 = .120 diameter.
As far as the VPS, you have entered the 3.9 finish, stock 4.0, and X clearance of .01. This X clearance must also me a radial value to be outputting a 4.02.
You could consider increasing your depth of cut to be .06 or greater.
Can't increase depth of cut. It limits you based on Min max diameters. See the picture of Max DOC.
I guess hand edits are the only way.

1718063877263.png
 
N429 to N430 is describing the finished profile.
Your start X and start Z positions describe a boundary that the machine sees as stock.
The G71 line describes depth of cuts and stock to leave after the cycle is done.

I missed the limitation in depth of cut. Is that a next gen control thing? Is that based on the insert description?
 
Thanks. I figured that it had to be something like that. I always read G71 the Pxxx told it the first line to execute and Qxxx was the last line.
Yes, NGC control. The rapid approach for x and z are default and have a wide range from 0.010 to 5".

With that said, then they should allow the DOC to be ((MaxOD - MinOD)/2)+Xclearance. That provides safety clearance, and the proper DOC for a single pass. That would be more logical than to always cut air!
 
This is what Haas shows. It show the P word is the first line of code for the roughing cycle.

G71 O.D./I.D. Stock Removal Cycle (Group 00)​

* D - Depth of cut for each pass of stock removal, positive radius (Only use when using one block G71 notation)
* F - Feedrate in inches (mm) per minute ( G98) or per revolution ( G99) to use throughout G71 PQ block
* I - X-axis size and direction of G71 rough pass allowance, radius
* K - Z-axis size and direction of G71 rough pass allowance
P - Starting Block number of path to rough
Q - Ending Block number of path to rough
* S - Spindle speed to use throughout G71 PQ block
* T - Tool and offset to use throughout G71 PQ block
* U - X-axis size and direction of G71 finish allowance, diameter
* W - Z-axis size and direction of G71 finish allowance
 
Thanks. I figured that it had to be something like that. I always read G71 the Pxxx told it the first line to execute and Qxxx was the last line.
Yes, NGC control. The rapid approach for x and z are default and have a wide range from 0.010 to 5".

With that said, then they should allow the DOC to be ((MaxOD - MinOD)/2)+Xclearance. That provides safety clearance, and the proper DOC for a single pass. That would be more logical than to always cut air!
It's for some of the reasons you have mentioned why I do not use the VPS system. I write all mine and never use G70 finish cycle. The VPS is nice for learning, but as you learn you will find your own style that works for you.
 








 
Back
Top