Fanuc 18i Daewoo Puma with live spindle and subspindle g-code proof read.

As a tool breaker, setup/programming CNC lathes is but a distant memory from college before my apprenticeship. I have been charged with
programming a Daewoo Puma 200 with C-axis, live tool and 2nd spindle (instead of a tailstock).
Just hoping someone with Fanuc 18i experience could take a *brief* gander at this program and point out any glaring errors which will prevent the program from executing. I'm fairly confident of the geometry, I'm just wary of the program erroring out, baffling me and my boss.
If I'm ever within arm's reach of a Fanuc control manual author.. Well, anyway, the manual is of little help for those who actually need to extract info from it.
N010    O0001    Program 0001 N020    G0 G54 G20 G90    Safety Block N030    G50 S2500    Max spindle rpm N040    T0101    Tool change to 01 (bar puller) N050    G96 S500    Consistant surface speed N060    G0 Z-0.45    Approach bar puller to allow setup N070    G0 X2.5    Rapid approach N080    M01    Optional stop for initial setup N090    G1 X-0.75 F20 G98    Feed in IPM as spindle is not turning N100    M69    Unclamp chuck N110    G1 Z-1.15 F20 G98    Pull bar N120    M68    Clamp chuck N130    G1 x2.5 F20 G98    Feed retract bar puller N140    T0000    Remove tool offsets N150    G0 X20 Z9    Move to tool change position N160    T0202    Change tool (trapazoidal turn/face holder) N170    M2 M8 S500 G96    Spindle on, coolant on N180    G0 X1.55 Z1.025    Approach end of stock to face N190    G1 X-0.02 F0.01 G99    Rough face at 0.01"/rev N200    G0 X1.55    Retract for finish face N210    G0 Z1.015    Move to finish facing location N220    G1 X-0.02 F0.005    Finish face at 0.005"/rev N230    G0 X1    Move to rough turning diameter N240    G1 Z0.31 F0.01    Rough turn .25" per side, 0.01"/rev N250    G0 Z1.015    Retract N260    G0 X.55    Move to rough turning diameter N270    G1 Z0.31 F0.01    Rough turn ~.25" per side, 0.01"/rev N280    G1 X 1.55 F0.01    Rough face at 0.01"/ref N290    G0 Z1.015 N300    G0 X0.43    Move to beginning of chamfer N310    G1 X0.51 Z0.975 F0.005    Cut chamfer at .005"/rev N320    G1 Z0.305    Turn 0.51 dia N330    G1 X1.48    Finish face at 0.005"/ref N340    G1 X1.49 Z.295    Cut chamfer at .005"/rev N350    G1 Z.2    Finish OD N360    T0000    Remove tool offsets N370    G0 X20 Z9    Move to tool change position N380    T0101    Change tool (bar puller) N390    M2 M8 S200 G96    Spindle on, coolant on N400    G0 X0.52 Z0.835    Approach for bumper groove N410    G1 X0.39 F0.005    Cut groove N420    G0 X0.51    Retract N430    G0 Z0.825    Move to beginning of 1st rad N440    G2 X.49 Z.835 R.01    Cut first bumper goove rad N450    G2 X.51 Z.845 R.01    Cut second bumper groove rad N460    G0 X1.505 Z.055    Move to start of facing cycle for thread THIS ASSUMES THE TOOL IS 0.15" WIDE!!!! N470    G72 U0.15 R.05 F.01    Facing cycle as plunge cycle for parting tool. 0.27"DOC, .05" X clearnace, .01"/rev N480    G72 P450 Q450 X.005 W0    Facing cycle as plunge cycle for parting tool. Geometry starts line 450, ends line 450, leave .005" on X, 0" on Z N490    X1.235 Z-0.545    Last point in facing cycle N500    T0000    Remove tool offsets N510    G0 X20 Z9    Move to tool change position N520    T0303    Change tool (Nikcole gooving tool) N530    M2 M8 S500 G96    Spindle on, coolant on N540    G0 X1.51 Z0.182    Approach first shoulder THIS ASSUMES TOOL IS . 043" WIDE!!! N550    G1 X1.3 F.005    Cut first shoulder N560    G0 X1.51    Retract N570    G0 Z0.162    Approach o-ring groove THIS ASSUMES TOOL IS .043" WIDE!!! N580    G1 X1.165    Cut o-ring groove N590    G0 X1.250    Retract N600    G0 Z.141 N610    G1 X1.235    Move to OD of thread chamfer N620    G1 X1.165 Z0.162    Cut 1st thread chamfer N630    G0 X1.250    Retract N640    G0 Z-.043    Move such as to cut a groove at the end of the part N650    G1 X1.165    Cut groove - groove tool does not have side clearance to this is req'd N660    G0 X1.250    Retract N670    G0 Z-0.023    Z to start of chamfer N680    G1 X1.235    X to start of chamfer N690    G1 X1.165 Z-.043    Cut chamfer N700    G0 X1.55    Retract N710    T0000    Remove tool offsets N720    G0 X20 Z9    Move to tool change position N730    T0404    Change tool (threading tool) N740    M2 M8 S200 G97    Spindle on, coolant on, 200 RPM N750    G0 Z-.1 X1.55    Approach bar N760    G0 X1.235    Approach thread major dia N770    G76 P010060 Q0010 R.005    Thread cycle line 1 N780    G76 X1.1807 Z0.162 P.02715 Q0020 F.0394    Thread cycle line 2 N790    G0 X1.55    Retract N800    T0000    Remove tool offsets N810    G0 X20 Z9    Tool change position N820    T0505    Tool change (carbide form drill for center) N830    M2 M8 S2500 G97     Spindle on, coolant on, 2500 RPM (RPM mode) N840    G0 X0 Z1.025    Approach bar - center of stock N850    G74 X0 Z-.05 K0.1 F.005    Drilling cycle RESET Z TO CORRECT DEPTH!!! 0.005"/rev 0.1" peck N860    G0 Z1.025     Retract - probably no necessary, but good to start with N870    T0000    Remove tool offsets N880    G0 X20 Z9    Retract tool change pos N890    T0606    Change tools (0.094" drills for cross drilling) N900    M35    Turn on live tooling mode N910    M90    Unclamp C-axis N920    G50 C0    Bring C to reference point, bring C-axis to zero degrees N930    M33 S3000    Live tool spindle forward, assumes 3000 RPM capability N940    G0 X1.55 Z0.662    Approach bar N950    G0 X0.52    Approach 0.51 dia N960    G1 X.25 G98 F12.0    Feed X in at 12IPM assuming 3000rpm N970    G0 X.55    Retract N980    C180    Rotate C 180 to drill opp of hole N990    G1 X.25 G98 F12.0    Feed X in at 12IPM assuming 3000rpm N1000    G0 X.55    Retract N1010    C25 Z.577    Rotate C 25deg abs for lower cross drill N1020    G1 X.25 G98 F12.0    Feed X in at 12IPM assuming 3000rpm N1030    G0 X.55    Retract N1040    C205    Index to 180deg away from previous hole N1050    G1 X.25 G98 F12.0    Feed X in at 12IPM assuming 3000rpm N1060    G0 X.55    retract N1070    M35 M9    Stop live spindle, coolant off N1080    T0000    Remove tool offsets N1090    G0 X20 Z9    Retract tool change pos N1100    T0707    Change tools (0.173" endmill/drill) N1110    C-45    Rotate C -45deg N1120    M33 S3000    Live tool spindle forward, assumes 3000 RPM capability N1130    G0 X0.9 Z0.315    Approach face N1140    G1 Z-.05 F12.0    Drill .05 past face (insert polar interpolation as next line) N1150    G0 Z0.315    Retract N1160    M35 M9    Stop live spindle, coolant off N1170    T0000    Remove tool offsets N1180    G0 X20 Z9    Tool change position N1190    T0808    Change tool (.060" carbide form drill) N1200    C-225    Index to 180deg away from previous hole N1210    M33 S3000    Live tool spindle forward, assumes 3000 RPM capability N1220    G0 X0.9 Z0.315    Approach face N1230    G1 Z-.05 F12.0    Drill .05 past face N1240    M35 M9    Stop live spindle, coolant off N1250    G0 Z0.315    retract N1260    T0000    Remove tool offsets N1270    G0 X20 Z9    Tool change position N1280    T0909    Change tool (boring tool) N1290    M2 M8 S500 G96    Spindle on, coolant on, 500fpm N1300    G0 X0.378 Z1.025    Approach face N1310    G1 Z1.015 F.002     Feed in to chamfer N1320    G1 X.29 Z0.971    Cut chamfer N1330    G1 Z0.45    Cut larger bore dia N1340    G3 X0.26 Z.426 R.024    Cut first radius N1350    G1 Z0    Cut smaller bore dia N1360    G0 X.25    Retract X N1370    G0 Z 1.025    Retract Z N1380    T0000    Remove tool offsets N1390    G0 X20 Z9    Tool change position N1400    T0101    Tool change (cutoff bar puller) N1410    M2 M8 S200 G96    Spindle on, coolant on, 200fpm N1420    G0 X1.55 Z-0.15    Approach bar N1430    G1 X-0.1    Feed in partial cutoff N1440    G0 X1.5    Retract X N1450    T0000    Remove tool offsets N1460    G0 X20 Z9    Tool change position N1470    M5 M9    Turn off spindle, off coolant N1480    M30    Return to start of program
Thanks for any and all thoughts, suggestions, error-proofing, etc. Not my specialty, but certainly my responsibility.
Regards,
Robin
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
What type of bar puller are you using?
I have never used a bar puller with spindle on. To feed bar puller use Inch Per Min. rather than Feed Per Rev.
Normally when I use a bar puller it is the last tool not the first. For the first part I use a scale or stop to set the bar for the first part.
----------------
Z- is normally toward the spindle Z+ is toward tail stock. Your program has it reversed, is that how you want it?
---------------
Can you post a print or sketch?
Also post list tools (setup sheet) it will help as well. For instance T0303 Rougher CNMG-432, T0404 Spot drill 90 deg., T0606 Groove tool .125w .005 corner raid....etc.
---------------
Since you are just starting out, for safety reasons it may be best to stay with G28 or G30 for tool change position till you get a little more familiar with the machine and programming.
--------------
Are you using a CAM program or writing all by hand?
----------------
Does your machine have G41/42 (?option?), do you want to use it?
----------------
Is your email address in the header any good, there is a lot of stuff to go over may be easier via email.
------------------
Every machine and MTB is a little bit different even with the same controller, since I don't know your exact machine I would start with something generic like this.
Beginning of program for first tool.
G00 G20 G40 G54 G80 G97 G99 G28 U0.0 W0.0 T0000 G50 S1500 (whatever S max value safe to use) G97 S???? M3 T0100 (start Spindle CW Call up tool no offset) G00 X?.?? Z?.?? T0101 /M08 (rapid to part with tool offset) ....... (G96 here if you are going to use it) ....... ......General machine movements.... ...... After you are finished with tool at safe clear M5 G28 U.0 W.0 T0000 /M9 M01
Next tool
G28 U.0 W.0 T0000 G97 S???? M03 T0200 G00 X?.?? Z?.?? T0202 /M08 .....General machine moves......
(END OF TOOL) M5 G28 U.0 W.0 T0000 /M09 M01 (end of last tool replace M01 with M30.
-- Tom http://tinyurl.com/5okkgz
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

I don't know a whole lot about Doosan's but here goes..

You'll want an M05 here in case the operator doesn't turn on the op stop switch.

In "inch mode, you need a decimal point on your feed rate. Otherwise it will likely feed at 0.20 IPM.

I'm assuming M69 is correct. Normal convention is M10/M11 for clamp/unclamp

Caution on the T0000, on a Fanuc you can set parameters so that it will cause the axis to move or not. I couldn't tell you how Doosan Daewoo sets them from the factory.

Mind the decimal points on axis moves too. Machine is likely set up for leading zero suppression, so it will read X20 as X0.0020. Ditto with "Z" moves.

M02 is program stop. M03 is normal convention for spindle on CW direction. Also you may or may not be able to use two M-codes on a line, again depending on parameter settings and the machine tool builder.
It's also a good idea to clamp the spindle rpm after every G96 M03 S command, in case the operator hits "reset" and then re-runs a tool.

I would feed the tool off of the work in the X axis to a clearance point above the bar diameter here.

Use decimal points with C-axis positions.

You could probably use a rough turning cycle and a drilling cycle for the cross drilling but that's just personal preference.
Also I don't know where home is in the X-axis or where the safe index point is in X and Z so the turret and tooling is clear, so I'm assuming you are OK, but be cautious. Obviously with no drawing of the work, I can't verify the geometry. You shpould consider adding tool nose radius comp (G41/G42) to the turning and boring tools.
Live tool rotation directions can vary depending on the gearing in a given live head. So M33 might be CW for one head and CCW for another. Be sure to verify before sending the live tool into the part.
Otherwise looks like a solid effort and a nce job given that you don't do this every day.
Good luck
--

Dan

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Wed, 08 Jul 2009 19:08:05 -0400, Steve Walker

Not true for all situations, machines &/or controllers, depends on the MTB more than anything else. Unfortunately there are few hard and fast rules that fit all cases, the only real standard is that there always seem to be exceptions.
Some machines when G97 S???? is commanded turret can still move while spindle is accelerating up to programmed speed other machines turret will not move till programmed speed is reached. Same with M5 some machines will not move till spindle is stopped others can move while spindle decelerating to a stop.
Some machine makes, models and configurations for safety purposes you want to square off rapid moves such as Z rapid towards part on one block and X rapid the next and vise versa at end of tool. It is a method to safely clear obstacles and possible interferences with other turrets, sub-spindles etc. Other style machines you can safely rapid in and out with both X and Z values in one block to cut down on rapids (shortest distance between two points is a straight line).
-- Tom http://tinyurl.com/5okkgz
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Wed, 08 Jul 2009 19:08:05 -0400, Steve Walker

I use it as well, after each tool M01 then add another line with just an ; (EOB). Makes it easier to see beginning and end of each tool when viewing program.

And at end of tool X clear first then Z.

In my experience there is usually a pause between coolant on and when it gets up to pressure, some machines take longer than others. Rather than having a G04 dwell after M08 I like to turn coolant on early and use block skip (/M08). That way on setups I can see the approach.
At setup I turn block skip on, single block, watch the tool approach the part, turn coolant on, etc. Then for production just turn block skip off and coolant comes on earlier and is up to pressure by the time tool reaches part.
I also use block skip with coolant off (/M09), some machines if you program M09 and coolant is already off it will alarm out.

Can't stress this enough. Lessons usually learned and finally drilled in the hard way.

Can't stress this one enough, don't need trailing zero or zeros but always use decimal points.
-- Tom http://tinyurl.com/5okkgz
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

I NEVER use G50--its simply not needed and hasnt been for nearly 35 years...and to me this says that somewhere along the way someone ( possibly the MTB even ) either hasn't bothered to properly setup machine origins else the parameters are corrupt and /or the programmer has fallen into an old lazy habit.
And before anyone gets a hard on about the above I guess I need to quantify my experience here entirely surrounds the fanuc 3tA, with dual turrets where most of the fanuc as well as the citizen programming examples use G50 quite copiously shifting the coordinate system willy nilly till the program becomes almost impossible to follow.
Hard for me to believe that anyone having the more modern controllers would still feel the need...unless happens the book says...
--






Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Wed, 8 Jul 2009 23:30:55 -0700, "Brother Lightfoot"

G50 has two uses, we are not using it for programming zero, in our examples it's maximum spindle speed setting. What do you use to program maximum spindle speed while using G96 surface speed mode.
Example:
G50 S2500 G96 S650 M03
Example of not using G50 to clamp maximum spindle speed;

http://www.youtube.com/watch?v=nzb-i7-fuq8

-- Tom http://tinyurl.com/5okkgz
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

These lathes do not have css, in fact they do not even accept direct coded rpm rather there is only available four speeds <being S1, S2, S3, and S4> these being selectable via program input which pulls down one of four relays routing analog S through one of the four respective panel mounted potentiomenters the speed being preset by the operator.

Good to see you still have a sense of humor and some undertsanding of how cnc codes as well as hardware have changed over the past several decades which is a topic that's probably good to bring up occasionally imo.
--



Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Thu, 9 Jul 2009 10:40:04 -0700, "Uhh Clem"

Well that's a new one for me......Do you have some documentation I can read to learn more?
As I posted in my original response to OP I don't have MTB's manual so I gave generic Fanuc 18i code.
From Fanuc 18i manual;
[ When constant surface speed control is applied, a spindle speed higher than the value specified in G50S_; (maximum spindle speed) is clamped at the maximum spindle speed.
When the power is turned on, the maximum spindle speed is not yet set and the speed is not clamped. S (surface speed) commands in the G96 mode are assumed as S = 0 (the surface speed is 0) until M03 (rotating the spindle in the positive direction) or M04 (rotating the spindle in the negative direction) appears in the program. ]

Copied from Fanuc 18i manual;
[ N8 G00 X1000.0 Z1400.0 ; N9 T33; N11 X400.0 Z1050.0; N12 G50 S3000; (Designation of max. spindle speed) N13 G96 S200; (Surface speed 200 m/min) N14 G01 Z700.0 F1000; N15 X600.0 Z400.0; N16 Z ; ]
Which is in line with what I posted. Surprising though Fanuc example no spindle direction given in N13 block, IMO it's a good practice to always place spindle direction in blocks with G96 G97. I don't like feeds without decimal points either, can be done without, I just don't like it as a general practice.
-- Tom http://tinyurl.com/5okkgz
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Thu, 9 Jul 2009 14:01:47 -0700, "Uhh Clem"

OK, train came off the tracks somewhere when I wasn't looking. OP is Fanuc 18i, Daewoo Puma. Sorry for the confusion, I will have to go back and read your posts more thoroughly to see what I missed.
Tom
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
wrote:

No prob and admittidly my initial post indeed was sort of a prank...but it does demonstrate how the code g50 can have different meanings depending on what /how old the controller is and so when someone stresses the importance of always using G50 it probably would be good idea for them to also identify the code function as being "rpm high limit" clamp even when discussion is specific to a particular machine controller--thus avoiding possible confusion where someone might mistakenly assume that a function of a particular code is standard across all or most of industry
--



Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
snipped-for-privacy@aol.com wrote in

The early 3T and 6T controls also didn't have CRT's
I worked on the same nodel machine he's got when it was brand new. Lotsa water over the dam since then though.
--

Dan

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
snipped-for-privacy@aol.com wrote in

Akshooly it has three. Your example above for one. Two is for setting the coordinate system using absolute values .
Example:
G50 X-.12 Z-.005
The third is to shift the coordinate system using incremental values.
Example:
G50 U-1.0 W-.787
The advantage of doing this on a two turret machine that doesn't have geometry offsets is that you can shift the coordiante system from any position and you don't need to know exactly where you are. When you use G50 with absolute values the machine needs to be where you tell it it is or you crash.
Using it with incremental values works exactly like geometry offsets which the old dog doesn't have. To cancel you merely program the opposite value.
Example:
G50 U1.0 W.787
Simple. Sort of... Works best with a tool presetter.
--

Dan

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Wednesday, July 8, 2009 7:35:03 AM UTC+4:30, Robin S. wrote: > As a tool breaker, setup/programming CNC lathes is but a distant memory from college before my apprenticeship. I have been charged with programming a Daewoo Pu ma 200 with C-axis, live tool and 2nd spindle (instead of a tailstock).Just hoping someone with Fanuc 18i experience could take a *brief* gander at th is program and point out any glaring errors which will prevent the program from executing. I'm fairly confident of the geometry, I'm just wary of the program erroring out, baffling me and my boss.If I'm ever within arm's reac h of a Fanuc control manual author.. Well, anyway, the manual is of little help for those who actually need to extract info from it.N010 O0001 Program 0001 N020 G0 G54 G20 G90 Safety BlockN030 G50 S2500 Max spindle rpm N040 T 0101 Tool change to 01 (bar puller) N050 G96 S500 Consistant surface speed N060 G0 Z-0.45 Approach bar puller to allow setup N070 G0 X2.5 Rapid approa chN080 M01 Optional stop for initial setup N090 G1 X-0.75 F20 G98 Feed in I PM as spindle is not turning N100 M69 Unclamp chuckN110 G1 Z-1.15 F20 G98 P ull bar N120 M68 Clamp chuckN130 G1 x2.5 F20 G98 Feed retract bar puller N1 40 T0000 Remove tool offsets N150 G0 X20 Z9 Move to tool change position N1 60 T0202 Change tool (trapazoidal turn/face holder) N170 M2 M8 S500 G96 Spi ndle on, coolant on N180 G0 X1.55 Z1.025 Approach end of stock to face N190 G1 X-0.02 F0.01 G99 Rough face at 0.01"/rev N200 G0 X1.55 Retract for fini sh face N210 G0 Z1.015 Move to finish facing location N220 G1 X-0.02 F0.005 Finish face at 0.005"/rev N230 G0 X1 Move to rough turning diameter N240 G 1 Z0.31 F0.01 Rough turn .25" per side, 0.01"/rev N250 G0 Z1.015 RetractN26 0 G0 X.55 Move to rough turning diameter N270 G1 Z0.31 F0.01 Rough turn ~.2 5" per side, 0.01"/rev N280 G1 X 1.55 F0.01 Rough face at 0.01"/refN290 G0 Z1.015 N300 G0 X0.43 Move to beginning of chamfer N310 G1 X0.51 Z0.975 F0.0 05 Cut chamfer at .005"/rev N320 G1 Z0.305 Turn 0.51 diaN330 G1 X1.48 Finis h face at 0.005"/ref N340 G1 X1.49 Z.295 Cut chamfer at .005"/revN350 G1 Z. 2 Finish OD N360 T0000 Remove tool offsets N370 G0 X20 Z9 Move to tool chan ge position N380 T0101 Change tool (bar puller) N390 M2 M8 S200 G96 Spindle on, coolant on N400 G0 X0.52 Z0.835 Approach for bumper groove N410 G1 X0. 39 F0.005 Cut grooveN420 G0 X0.51 Retract N430 G0 Z0.825 Move to beginning of 1st rad N440 G2 X.49 Z.835 R.01 Cut first bumper goove rad N450 G2 X.51 Z.845 R.01 Cut second bumper groove rad N460 G0 X1.505 Z.055 Move to start of facing cycle for thread THIS ASSUMES THE TOOL IS 0.15" WIDE!!!! N470 G72 U0.15 R.05 F.01 Facing cycle as plunge cycle for parting tool. 0.27"DOC, . 05" X clearnace, .01"/rev N480 G72 P450 Q450 X.005 W0 Facing cycle as plung e cycle for parting tool. Geometry starts line 450, ends line 450, leave .0 05" on X, 0" onZ N490 X1.235 Z-0.545 Last point in facing cycle N500 T0000 Remove tool offsets N510 G0 X20 Z9 Move to tool change position N520 T0303 Change tool (Nikcole gooving tool) N530 M2 M8 S500 G96 Spindle on, coolant on N540 G0 X1.51 Z0.182 Approach first shoulder THIS ASSUMES TOOL IS . 043" WIDE!!!N550 G1 X1.3 F.005 Cut first shoulder N560 G0 X1.51 Retract N570 G0 Z0.162 Approach o-ring groove THIS ASSUMES TOOL IS .043"WIDE!!! N580 G1 X1 .165 Cut o-ring grooveN590 G0 X1.250 RetractN600 G0 Z.141 N610 G1 X1.235 Mo ve to OD of thread chamfer N620 G1 X1.165 Z0.162 Cut 1st thread chamferN630 G0 X1.250 Retract N640 G0 Z-.043 Move such as to cut a groove at the end o f the part N650 G1 X1.165 Cut groove - groove tool does not have side clear ance to this is req'dN660 G0 X1.250 Retract N670 G0 Z-0.023 Z to start of c hamfer N680 G1 X1.235 X to start of chamferN690 G1 X1.165 Z-.043 Cut chamfe r N700 G0 X1.55 RetractN710 T0000 Remove tool offsets N720 G0 X20 Z9 Move t o tool change position N730 T0404 Change tool (threading tool) N740 M2 M8 S 200 G97 Spindle on, coolant on, 200 RPM N750 G0 Z-.1 X1.55 Approach barN760 G0 X1.235 Approach thread major dia N770 G76 P010060 Q0010 R.005 Thread cy cle line 1 N780 G76 X1.1807 Z0.162 P.02715 Q0020 F.0394 Thread cycle line 2 N790 G0 X1.55 RetractN800 T0000 Remove tool offsets N810 G0 X20 Z9 Tool ch ange position N820 T0505 Tool change (carbide form drill for center) N830 M 2 M8 S2500 G97 Spindle on, coolant on, 2500 RPM (RPM mode) N840 G0 X0 Z1.02 5 Approach bar - center of stock N850 G74 X0 Z-.05 K0.1 F.005 Drilling cycl e RESET Z TO CORRECT DEPTH!!! 0.005"/rev 0.1" peck N860 G0 Z1.025 Retract - probably no necessary, but good to startwith N870 T0000 Remove tool offset sN880 G0 X20 Z9 Retract tool change pos N890 T0606 Change tools (0.094" dri lls for cross drilling) N900 M35 Turn on live tooling modeN910 M90 Unclamp C-axis N920 G50 C0 Bring C to reference point, bring C-axis to zero degrees N930 M33 S3000 Live tool spindle forward, assumes 3000 RPM capability N940 G0 X1.55 Z0.662 Approach barN950 G0 X0.52 Approach 0.51 dia N960 G1 X.25 G 98 F12.0 Feed X in at 12IPM assuming 3000rpm N970 G0 X.55 RetractN980 C180 Rotate C 180 to drill opp of hole N990 G1 X.25 G98 F12.0 Feed X in at 12IPM assuming 3000rpm N1000 G0 X.55 Retract N1010 C25 Z.577 Rotate C 25deg abs for lower cross drill N1020 G1 X.25 G98 F12.0 Feed X in at 12IPM assuming 3 000rpm N1030 G0 X.55 RetractN1040 C205 Index to 180deg away from previous h ole N1050 G1 X.25 G98 F12.0 Feed X in at 12IPM assuming 3000rpm N1060 G0 X. 55 retractN1070 M35 M9 Stop live spindle, coolant off N1080 T0000 Remove to ol offsetsN1090 G0 X20 Z9 Retract tool change pos N1100 T0707 Change tools (0.173" endmill/drill) N1110 C-45 Rotate C -45deg N1120 M33 S3000 Live tool spindle forward, assumes 3000 RPM capability N1130 G0 X0.9 Z0.315 Approach face N1140 G1 Z-.05 F12.0 Drill .05 past face (insert polar interpolation as next line)N1150 G0 Z0.315 Retract N1160 M35 M9 Stop live spindle, coolan t off N1170 T0000 Remove tool offsetsN1180 G0 X20 Z9 Tool change position N 1190 T0808 Change tool (.060" carbide form drill) N1200 C-225 Index to 180d eg away from previous hole N1210 M33 S3000 Live tool spindle forward, assum es 3000 RPM capability N1220 G0 X0.9 Z0.315 Approach face N1230 G1 Z-.05 F1 2.0 Drill .05 past face N1240 M35 M9 Stop live spindle, coolant offN1250 G0 Z0.315 retract N1260 T0000 Remove tool offsetsN1270 G0 X20 Z9 Tool change position N1280 T0909 Change tool (boring tool) N1290 M2 M8 S500 G96 Spindle on, coolant on, 500fpm N1300 G0 X0.378 Z1.025 Approach face N1310 G1 Z1.01 5 F.002 Feed in to chamferN1320 G1 X.29 Z0.971 Cut chamfer N1330 G1 Z0.45 C ut larger bore dia N1340 G3 X0.26 Z.426 R.024 Cut first radius N1350 G1 Z0 Cut smaller bore diaN1360 G0 X.25 Retract X N1370 G0 Z 1.025 Retract ZN1380 T0000 Remove tool offsets N1390 G0 X20 Z9 Tool change position N1400 T0101 Tool change (cutoff bar puller) N1410 M2 M8 S200 G96 Spindle on, coolant o n, 200fpm N1420 G0 X1.55 Z-0.15 Approach barN1430 G1 X-0.1 Feed in partial cutoff N1440 G0 X1.5 Retract XN1450 T0000 Remove tool offsets N1460 G0 X20 Z9 Tool change position N1470 M5 M9 Turn off spindle, off coolant N1480 M30 Return to start of programThanks for any and all thoughts, suggestions, er ror-proofing, etc. Not my specialty, but certainly my responsibility.Regard s,Robin
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Site Timeline

  • - the site's newest thread. Posted in

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.