Jump to content

Welcome to eMastercam

Register now to participate in the forums, access the download area, buy Mastercam training materials, post processors and more. This message will be removed once you have signed in.

Use your display name or email address to sign in:

Cantext Question: Long Post Thanks for Reading


crazy^millman
 Share

Recommended Posts

Well what is weird is I was on the right path when I tired this months ago. I did not realize how close I was till I figured it out today. I will post up what I did just cleaning everything up now to make it look good.

 

Yeah James I quit caring a long time ago what people said or thought me there is only one person I need to please and he keeps me around for some reason. rolleyes.gifrolleyes.gifrolleyes.gifbiggrin.gifbiggrin.gifbiggrin.gif

Link to comment
Share on other sites

Ok so like I said I was close and Tim helped point me in the right direction.

 

First off how to handle it in the Cantext:

 

code:

 

 

#P wait code output Start at P10 Increments by 10 and is placed by default at the Home positions.

 

if cantext$ = 20,

 

[

 

pwait_10

 

]

 

Then the logic:

code:

pwait_10 # Added thanks to Tim Johnson

 

if mi10$ = 1,

 

[

 

if pwcodes = sav_pwcodes,

 

pwcodes = pwcodes + 1

 

sav_pwcodes = pwcodes

 

pbld, n$, *swcode, e$

 

]

 

else,

 

[

 

if pwcodes <> sav_pwcodes, pwcodes = sav_pwcode

 

pwcodes = pwcodes + 1

 

sav_pwcodes = pwcodes

 

pbld, n$, *swcode, e$

 

]

 

 

 

And the strings:

 

# --------------------------------------------------------------------------

 

# Select Turret Call Codes

 

sp00 P00 #Dummy Wait Code

 

sp10 P10 #P wait code

 

sp20 P20 #P wait code

 

sp30 P30 #P wait code

 

sp40 P40 #P wait code

 

sp50 P50 #P wait code

 

............... <----Removed for space

 

............... <----Removed for space

 

............... <----Removed for space

 

sp770 P770 #P wait code

 

sp780 P780 #P wait code

 

sp790 P790 #P wait code

 

sp800 P800 #P wait code

 

swcode #Target for string

 

 

 

fstrsel sp00 pwcodes swcode 41 -1

 

Then Added here:

 

code:

ltlchg$ #Toolchange, lathe

 

toolchng = one

 

gcode$ = zero

 

copy_x = vequ(x$)

 

pcc_capture #Capture LCC ends, stop output RLCC

 

c_rcc_setup$ #Save original in sav_xa and shift copy_x for LCC comp.

 

pcom_moveb #Get machine position, set inc. from c1_xh

 

c_mmlt$ #Position multi-tool sub, sets inc. current if G54...

 

prdbturret, e$

 

ptoolcomment

 

comment$

 

if home_type < two, #Toolchange G50/home/reference position

 

[

 

sav_xh = vequ(copy_x)

 

sav_absinc = absinc$

 

absinc$ = zero

 

start_xh = vequ(xh$)

 

pmap_home #Get home position, xabs

 

ps_inc_calc #Set start position, not incremental

 

#Toolchange home position

 

if home_type = one,

 

pbld, n$, *sgcode, pfxout, pfzout, pwait_10, e$ #<---- Added wait codes

 

 

 

mtlchg$ #Toolchange, mill

 

toolchng = one

 

gcode$ = zero

 

copy_x = vequ(x$)

 

pcom_moveb #Get machine position, set inc. from c1_xh

 

c_mmlt$ #Position multi-tool sub, sets inc. current if G54...

 

prdbturret, e$

 

ptoolcomment

 

comment$

 

if home_type < two, #Toolchange G50/home/reference position

 

[

 

sav_xh = vequ(copy_x)

 

sav_absinc = absinc$

 

absinc$ = zero

 

start_xh = vequ(xh$)

 

pmap_home #Get home position, xabs

 

ps_inc_calc #Set start position, not incremental

 

#Toolchange home position

 

if home_type = one,

 

pbld, n$, *sgcode, pfxout, pfzout, pwait_10, e$ # <----- Added Wait Codes

 

 

 

pl_retract #Retract tool based on next tool gcode, lathe (see ptoolend)

 

cc_pos$ = zero

 

if home_type = one,

 

[

 

xh$ = vequ(start_xh)

 

pmap_home #Get home position, xabs

 

ps_inc_calc #Set inc.

 

pbld, n$, psccomp, e$

 

#if css_actv$ & css_end_rpm & not(lathe_stop | synch_flg | n1_gcode = 1003 | n1_posttype <> posttype$ | n1_spindle_no <> spindle_no$),

 

#[

 

#pspindle

 

#prpm

 

#]

 

pcan1, pbld, n$, *sgcode, pfxout, pfzout, [if drop_offset, *toolno], pwait_10, e$ #<--- Added Wait Codes

 

if lathe_stop | synch_flg | n1_gcode = 1003 | n1_posttype <> posttype$ | n1_spindle_no <> spindle_no$,

 

[

 

pbld, n$, pnullstop, e$

 

]

 

]

 

else,

 

[

 

#Retract to reference return

 

pbld, n$, `sgcode, psccomp, e$

 

if home_type = m_one & drop_offset, pbld, n$, *toolno, e$

 

if css_actv$ & css_end_rpm & not(lathe_stop | synch_flg | n1_gcode = 1003 | n1_posttype <> posttype$ | n1_spindle_no <> spindle_no$),

 

[

 

pspindle

 

prpm

 

]

 

pcan1, pbld, n$, *sg28ref, "U0.", [if y_axis_mch, "V0."], "W0.", strcantext, e$

 

if lathe_stop | synch_flg | n1_gcode = 1003 | n1_posttype <> posttype$ | n1_spindle_no <> spindle_no$,

 

[

 

pbld, n$, pnullstop, e$

 

]

 

if home_type > m_one & drop_offset, pbld, n$, *toolno, e$

 

]

 

pnullstop, e$ #<--- Added for Sync Spindles at ends of sync turning R.D.B. 1-4-08

 

if mr5$ = 1, pwcodes = 1 #<--- Added R.D.B.

 

 

 

prpm #Output for start spindle

 

speed = speedrpm

 

if posttype$ = two, #Lathe mode spindle

 

[

 

if speed = zero,

 

pbld, n$, pfspindle_l, e$ #RPM = '0', output just an 'M05'

 

else,

 

[

 

if (opcode$ = 3 | opcode$ = 16 | opcode$ = 105) & nextdc$ = 3 & rigid_tap = 1,

 

[

 

pbld, n$, pgear, e$

 

pbld, n$, *sg97, e$

 

]

 

else, #<--- Added R.D.B.

 

[

 

if mi6$ = 0 & mi7$ = 0, #<--- Added R.D.B

 

[

 

pbld, n$, pgear, e$ #<--- Added R.D.B

 

pbld, n$, *sg97, *speed, [if toolchng, pfspindle_l], e$ #<--- Added R.D.B

 

]

 

else, #<--- Added R.D.B

 

[

 

pbld, n$, pgear, e$ #<--- Added R.D.B

 

pbld, n$, *sg97, *mr6$, [if toolchng, pfspindle_l], pwait_10, e$ #<--- Added R.D.B

 

]

 

]

 

]

 

else, #Milling mode spindle

 

[

 

#result = nwadrs(strp, speed) #Different letter than 'S' for mill spindle?

 

if (opcode$ = 3 | opcode$ = 16 | opcode$ = 105) & nextdc$ = 3 & rigid_tap = 1, pbld, n$, *sg97, e$

 

else, pbld, n$, *sg97, *speed, *spindle_m, e$

 

result = nwadrs(strs, speed) #Reset to 'S' for next single speeed output

 

]

 

!css_actv$ #Added (8/27/2002)

 

 

 

pcss #Output Constant surface speed

 

speed = g_speed

 

if mi6$ = 0 & mi7$ = 0,

 

[

 

if css_actv$, pbld, n$, *sg9697, *speed, pspindle_l, !css_actv$, *prdbccsul, e$

 

]

 

else,

 

[

 

if css_actv$, pbld, n$, *sg9697, *speed, pspindle_l, !css_actv$, *prdbccsul, pwait_10, e$

 

]

 

!speed

 

 

 

Now there are other things done for the Slave/Master call outs for Surface Speed and Few other things, and I am glad to share if anyone has questions.

Link to comment
Share on other sites

I'm glad you got it going Ron. Is it possible to go back to the v9 coolants option? I like the idea of making several coolant options, but there has to be a better way than using cantext. I wonder if it would be possible to create a 20000s parameter for the coolant. That would also give you up to 16 coolant commands instead of ten.

Link to comment
Share on other sites

Well Tim you were a big help on this. I also learned that the machine wants the PCODE in increments of 10 not 1 so that made it easier than when I 1st started down the road to figure this all out. I just think it is weird this was never a thought to do since I know of 4 different shops in the area that have dual turret machines and Mastercam.

Link to comment
Share on other sites

Ok next Release of this. I did not take into account operations before the operations that needed to be staged. The program I was testing with was a simple turn and burn prep op for heat Treat. So here is a little update and a little more information hope it help others.

 

code:

 

#Cantext activated flags

pwcodes : 0 #P wait codes Added for Okuma Lathe RDB

sav_pwcodes : 0 #Place Keeper for Wait Codes Added for Okuma Lathe

sav_pwcodes5 : 0 #Place Keeper for Wait Code Sync when using Cantext

 

 

ltlchg$ #Toolchange, lathe

toolchng = one

gcode$ = zero

copy_x = vequ(x$)

pcc_capture #Capture LCC ends, stop output RLCC

c_rcc_setup$ #Save original in sav_xa and shift copy_x for LCC comp.

pcom_moveb #Get machine position, set inc. from c1_xh

c_mmlt$ #Position multi-tool sub, sets inc. current if G54...

prdbturret, e$

ptoolcomment

comment$

if home_type < two, #Toolchange G50/home/reference position

[

sav_xh = vequ(copy_x)

sav_absinc = absinc$

absinc$ = zero

start_xh = vequ(xh$)

pmap_home #Get home position, xabs

ps_inc_calc #Set start position, not incremental

#Toolchange home position

if home_type = one,

pbld, n$, *sgcode, pfxout, pfzout, pwait_10, e$ #<---- Added wait codes

if mr5$ = 1, sav_pwcodes5 = pwcodes #<--- This line keeps the start Pcode to Sync with operation

 

pl_retract #Retract tool based on next tool gcode, lathe (see ptoolend)

cc_pos$ = zero

if home_type = one,

[

xh$ = vequ(start_xh)

pmap_home #Get home position, xabs

ps_inc_calc #Set inc.

pbld, n$, psccomp, e$

#if css_actv$ & css_end_rpm & not(lathe_stop | synch_flg | n1_gcode = 1003 | n1_posttype <> posttype$ | n1_spindle_no <> spindle_no$),

#[

#pspindle

#prpm

#]

pcan1, pbld, n$, *sgcode, pfxout, pfzout, [if drop_offset, *toolno], pwait_10, e$ #<--- Added Wait Codes

if lathe_stop | synch_flg | n1_gcode = 1003 | n1_posttype <> posttype$ | n1_spindle_no <> spindle_no$,

[

pbld, n$, pnullstop, e$

]

]

else,

[

#Retract to reference return

pbld, n$, `sgcode, psccomp, e$

if home_type = m_one & drop_offset, pbld, n$, *toolno, e$

if css_actv$ & css_end_rpm & not(lathe_stop | synch_flg | n1_gcode = 1003 | n1_posttype <> posttype$ | n1_spindle_no <> spindle_no$),

[

pspindle

prpm

]

pcan1, pbld, n$, *sg28ref, "U0.", [if y_axis_mch, "V0."], "W0.", strcantext, e$

if lathe_stop | synch_flg | n1_gcode = 1003 | n1_posttype <> posttype$ | n1_spindle_no <> spindle_no$,

[

pbld, n$, pnullstop, e$

]

if home_type > m_one & drop_offset, pbld, n$, *toolno, e$

]

pnullstop, e$ #<--- Added for Sync Spindles at ends of sync turning R.D.B. 1-4-08

if mr5$ = 1, pwcodes = sav_pwcodes5 #<--- This keep it till it is needed for the next operation that will Sync cut with the Previous

The one thing about this method is you need to do the operations you want to Sync in order so the post will read them correctly if not it will be a mess.

Link to comment
Share on other sites
  • 1 month later...

Ok guys my next installment of tweaks. I was getting my wait code one the line after the Place I wanted in I used after, and when I did it with they came out in front on the line of code which would not work. It was driving me crazy knowing the answer was easy just could not put my finger on it. I got it today. I switched to V9 coolant and that helped but caused other problems. Fixed that, but still could not get wait codes where I wanted it. I then moved the pcan1 to the place before strcantext in 3 places in the post.

 

Like so:

 

 

prapidout	 #Output to NC, linear movement - rapid
 if interp_flg & (abs(cuttype) = 4 | abs(cuttype) = 2) & cutpos2$ = 0,
 [
 if abs(cuttype) = 4, #position C then XZ for approach to interpolation on the OD
	 [
	 pbld, n$, psgplane, pexct, psgcode, pcout, pcan1, strcantext, e$
	 pbld, n$, pexct, pxout, pyout, pzout, e$
	 ]
 else,				 #position C and X then Z for approach to interpolation on the face
	 [
	 pbld, n$, psgplane, pexct, psgcode, pxout, pcout, pyout, pcan1, strcantext, e$
	 pbld, n$, pzout, e$
	 ]		
 ]
 else,
 [
 if lap_start, #Force both X & Z outputs
	 pbld, n$, psgplane, pexct, psgcode, pfxout, pyout,
	 pfzout, pcout, pcan1, strcantext, e$
 else,
	 pbld, n$, psgplane, pexct, psgcode, pxout, pyout,
	 pzout, pcout, pcan1, strcantext, e$
 lap_start = no$
 ]
plinout		 #Output to NC, linear movement - feed
 #Output the Z after XY so the tool can move to position before plunging
 #helps for toolpaths not starting near the 3o'clock position
 if interp_flg & abs(cuttype) = 2 & cutpos2$ = 0,
 [
 pbld, n$, psgplane, psgfeed, pexct, psgcode, psccomp, pxout,
	 pyout, pcout, pfr, pcan1, strcantext, e$
 pbld, n$, psgfeed, psgcode, pzout, pfr, e$
 ]
 else,
 [
 pbld, n$, psgplane, psgfeed, pexct, psgcode, psccomp, pxout,
	 pyout, pzout, pcout, pfr, pcan1, strcantext, e$	
 ]

pcirout #Output to NC, circular interpolation
 pbld, n$, psgplane, psgfeed, pexct, psgcode, psccomp, pxout,
 pyout, pzout, pcout, parc, pfr, pcan1, strcantext, e$

 

 

Now my last task with this post sync 3 operations together. I have an idea where I will use another mr to hold a value where I can then use a different cantext call to starting counting my wait code for one operation from that to sync up with my 3rd operation. If all works I will post up my results.

 

$LK97580.MIN%
G14
(LOWER TURRET)
(MACHINE	 - OKUMA LU-15)
(CUSTOMER	 - GOODRICH LANDING)
(PART #	 - 901-036-422-103 REV NC6)
(MODEL #	 - 901-036-422-103 REV NC6.MCX)
(PROGRAMMER - RON 
(PROGRAM NAME - LK97580.MIN)
(DATE - FEB. 25 2008)
(TIME - 9:31 AM)
(PROGRAM REV - N/C)
(TOOL - 1 - DDJNR-164D - DNMG-432 - OFFSET - 0 - INSERT - DNMG-432 - HOLDER - DDJNR-164D)
(TOOL - 2 - DDJNR-164D - DNMG-432 LOWER - OFFSET - 0 - INSERT - DNMG-432 - HOLDER - DDJNR-164D)
(TOOL - 6 - OD FINISH LEFT - 35 DEG. - OFFSET - 0 - INSERT - VNMG-431 - HOLDER - MVJNL-164D)
G13
(UPPER TURRET)
(TOOL - 1 OFFSET - 1)
(DDJNR-164D - DNMG-432 INSERT - DNMG-432)
G0 X20. Z20. P10
N1 T0101
G18 G95
G50 S3000
G97 S750 M03 P20
G96 S320 G110 P30
G0 X1.566 Z4.66 M8
G1 X1.466 F.014
Z4.1137
G3 X1.4494 Z4.0816 L.0663
G1 X1.318 Z3.9631
Z-.0712
X1.4594 Z-.0005 P40
G0 Z3.9569
X1.4255
G1 X1.338 Z3.9812
X1.17 Z3.8296
Z-.0712
X1.3114 Z-.0005 P50
G0 Z3.8234
X1.2775
G1 X1.19 Z3.8477
X1.022 Z3.6961
Z-.0712
X1.1634 Z-.0005 P60
G0 Z3.6899
X1.1295 P70
G1 X1.042 Z3.7142 F.005
X.874 Z3.5626
Z-.0712
X1.0154 Z-.0005 P80
G0 X1.53
M9
G0 X20. Z20. P90
M05
M01
G14
(LOWER TURRET)
(TOOL - 2 OFFSET - 2)
(DDJNR-164D - DNMG-432 LOWER INSERT - DNMG-432)
G0 X20. Z20. P10
N2 T0202
G18 G95
G50 S3000
G97 S750 M03 P20
G96 S320 G110 P30
G0 X1.7129 Z3.9327 M8
G1 X1.538 Z3.9812 F.014
X1.37 Z3.8296
Z-.0712
X1.5114 Z-.0005 P40
G0 X1.5649
Z3.7992
G1 X1.39 Z3.8477
X1.222 Z3.6961
Z-.0712
X1.3634 Z-.0005 P50
G0 X1.4169
Z3.6657
G1 X1.242 Z3.7142
X1.074 Z3.5626
Z-.0712
X1.2154 Z-.0005 P60
G0 X1.53
M9
G0 X20. Z20. P70
M05
M01
(TOOL - 6 OFFSET - 6)
(OD FINISH LEFT - 35 DEG. INSERT - VNMG-431)
G0 X20. Z20. P10
N6 T0606
G18 G95
G50 S3000
G97 S750 M03 P20
G96 S320 G111 P30
G0 X1.446 Z4.76
G1 Z4.66 F.005 P40
Z4.1294
G3 X1.4371 Z4.1109 L.0406
G1 X.854 Z3.5387
Z-.04
X.9954 Z.0307
P50
G0 X20. Z20. P60
M05
M02
%

 

Here is sample code with the above changes as posted no hand edits:

As you can see with 3 operations my codes start over and it here where I do have to edit the program, but at least they are were I can do something pretty easy with them.

 

[ 02-25-2008, 12:34 PM: Message edited by: Crazy^Millman ]

Link to comment
Share on other sites

Another step closer to my puzzle here. Added a mr4$ and if you place the number in here before the next operation you want the P codes to change it will increment it correctly if you are keeping up with your wait codes through your creation of them using the cantext method I have been using. Here is the line of code I added to end of pl_retract part of the post:

 

code:

      if mr5$ = 1 & mr4$ = 0, pwcodes = sav_pwcodes5 #<--- Added for Sync Spindles at ends of sync turning R.D.B. 1-4-08

else, pwcodes = mr4$

Again unedited code looks like so:

 

code:

$LK97580.MIN%

G14

(LOWER TURRET)

(MACHINE - OKUMA LU-15)

(CUSTOMER - GOODRICH LANDING)

(PART # - 901-036-422-103 REV NC6)

(MODEL # - 901-036-422-103 REV NC6.MCX)

(PROGRAMMER - RON
B)

(PROGRAM NAME - LK97580.MIN)

(DATE - FEB. 25 2008)

(TIME - 10:18 AM)

(PROGRAM REV - N/C)

(TOOL - 1 - DDJNR-164D - DNMG-432 - OFFSET - 0 - INSERT - DNMG-432 - HOLDER - DDJNR-164D)

(TOOL - 2 - DDJNR-164D - DNMG-432 LOWER - OFFSET - 0 - INSERT - DNMG-432 - HOLDER - DDJNR-164D)

(TOOL - 6 - OD FINISH LEFT - 35 DEG. - OFFSET - 0 - INSERT - VNMG-431 - HOLDER - MVJNL-164D)

(TOOL - 5 - DDJNL-164D - DNMG-432 - OFFSET - 0 - INSERT - DNMG-432 - HOLDER - DDJNL-164D)

(TOOL - 3 - DDJNL-164D - DNMG-432 - OFFSET - 0 - INSERT - DNMG-432 - HOLDER - DDJNL-164D)

(TOOL - 4 - OD FINISH LEFT - 35 DEG. LOWER - OFFSET - 0 - INSERT - VNMG-431 - HOLDER - MVJNR-164D)

G13

(UPPER TURRET)

(TOOL - 1 OFFSET - 1)

(DDJNR-164D - DNMG-432 INSERT - DNMG-432)

G0 X20. Z20. P10

N1 T0101

G18 G95

G50 S3000

G97 S750 M03 P20

G96 S320 G110 P30

G0 X1.566 Z4.66 M8

G1 X1.466 F.014

Z4.1137

G3 X1.4494 Z4.0816 L.0663

G1 X1.318 Z3.9631

Z-.0712

X1.4594 Z-.0005 P40

G0 Z3.9569

X1.4255

G1 X1.338 Z3.9812

X1.17 Z3.8296

Z-.0712

X1.3114 Z-.0005 P50

G0 Z3.8234

X1.2775

G1 X1.19 Z3.8477

X1.022 Z3.6961

Z-.0712

X1.1634 Z-.0005 P60

G0 Z3.6899

X1.1295 P70

G1 X1.042 Z3.7142 F.005

X.874 Z3.5626

Z-.0712

X1.0154 Z-.0005 P80

G0 X1.53

M9

G0 X20. Z20. P90

M05

M01

G14

(LOWER TURRET)

(TOOL - 2 OFFSET - 2)

(DDJNR-164D - DNMG-432 LOWER INSERT - DNMG-432)

G0 X20. Z20. P10

N2 T0202

G18 G95

G50 S3000

G97 S750 M03 P20

G96 S320 G110 P30

G0 X1.7129 Z3.9327 M8

G1 X1.538 Z3.9812 F.014

X1.37 Z3.8296

Z-.0712

X1.5114 Z-.0005 P40

G0 X1.5649

Z3.7992

G1 X1.39 Z3.8477

X1.222 Z3.6961

Z-.0712

X1.3634 Z-.0005 P50

G0 X1.4169

Z3.6657

G1 X1.242 Z3.7142

X1.074 Z3.5626

Z-.0712

X1.2154 Z-.0005 P60

G0 X1.53

M9

G0 X20. Z20. P70

M05

M01

(TOOL - 6 OFFSET - 6)

(OD FINISH LEFT - 35 DEG. INSERT - VNMG-431)

G0 X20. Z20. P80

N6 T0606

G18 G95

G50 S3000

G97 S750 M03 P90

G96 S320 G110 P100

G0 X1.446 Z4.76

G1 Z4.66 F.005 P110

Z4.1294 P120

G3 X1.4371 Z4.1109 L.0406

G1 X.854 Z3.5387

Z-.04

X.9954 Z.0307 P130

G0 X20. Z20. P140

M05

M01

G13

(UPPER TURRET)

(TOOL - 5 OFFSET - 5)

(DDJNL-164D - DNMG-432 INSERT - DNMG-432)

G0 X20. Z20. P160

N5 T0505

G18 G95

G50 S3000

G97 S750 M03 P170

G96 S320 G110 P180

G0 X1.4069 Z3.3962

G1 X1.2655 Z3.4669 F.014

Z4.085

X1.396

X1.5374 Z4.0143 P190

G0 Z3.3962

X1.2764

G1 X1.135 Z3.4669

Z4.085

X1.2855

X1.4269 Z4.0143 P200

G0 Z3.3962

X1.1459

G1 X1.0045 Z3.4669

Z4.085

X1.155

X1.2964 Z4.0143 P210

G0 Z3.3962

X1.0154 P220

G1 X.874 Z3.4669 P230

Z4.085

X1.0245

X1.1659 Z4.0143 P240

G0 X1.564

G0 X20. Z20. P250

M05

M01

G14

(LOWER TURRET)

(TOOL - 3 OFFSET - 3)

(DDJNL-164D - DNMG-432 INSERT - DNMG-432)

G0 X20. Z20. P160

N3 T0303

G18 G95

G50 S3000

G97 S750 M03 P170

G96 S320 G110 P180

G0 X1.564 Z3.3962

X1.4301

G1 X1.2887 Z3.4669 F.014

Z4.085

X1.396

X1.5374 Z4.0143 P190

G0 Z3.3962

X1.3228

G1 X1.1813 Z3.4669

Z4.085

X1.3087

X1.4501 Z4.0143 P200

G0 Z3.3962

X1.2154

G1 X1.074 Z3.4669

Z4.085

X1.2013

X1.3428 Z4.0143 P210

G0 X1.564

G0 X20. Z20. P220

M05

M01

(TOOL - 4 OFFSET - 4)

(OD FINISH LEFT - 35 DEG. LOWER INSERT - VNMG-431)

G0 X20. Z20. P230

N4 T0404

G18 G95

G50 S3000

G97 S750 M03 P240

G96 S320 G110 P250

G0 X1.564 Z3.3962

X.9954 P260

G1 X.854 Z3.4669 F.005 P270

Z4.095

X1.396

X1.5374 Z4.0243 P280

G0 X20. Z20. P290

M05

M02

%

I am really close to making this do what I seen Esprit do with their Sync codes. No simulation, but can't have it all can we.

Link to comment
Share on other sites

Same principle expect it is posted as one program and the G13 and G14 divide the programs in the machine to the upper or lower turret depending on the code used.

 

The last code posting fixed some of my problems for syncing 3 operations, but then screwed up my operation after that unless I put a number in at the mr4 places which then does work, but was working so that it took the last pcode and then keep that number and increment it from there now it reset back to zero. This is such a pain and really testing my patience today.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.

Join us!

eMastercam - your online source for all things Mastercam.

Together, we are the strongest Mastercam community on the web with over 56,000 members, and our online store offers a wide selection of training materials for all applications and skill levels.

Follow us

×
×
  • Create New...