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:

MAZAK E420H Integrex


mayday
 Share

Recommended Posts

Do you have the process you have figured out in code? What we did was figure out what worked and then put that into the Post. I would use a Marco Variable in the post that was used from the machine. then in the machine I would put the W axis value for Pick off in that Feild. Then when ever the pick off cycle was called it would just do all the clamping syncing and other things like it would for every other part then using the Macro Value from the control Rapid up to a distance +.5 from the #101 Value then feed at 20 ipm to +.1 of the #101 value then feed at 2 ipm for the last distance. Then the whole unclampping of the main spindle and then sending of the W axis back to home would do its things and then went from there. See if this helps:

 

# --------------------------------------------------------------------------
#Postblock Section -comments only!   #don't make call to pbottom or ptop here to increment the buffers (misc ops don't count)
# --------------------------------------------------------------------------
pstck_trans$ 	#NCI code = 900 available variables:

           	if toolchng <> two, ptoolend$
           	toolend_flg = zero  #Do not execute ptoolend again after xfer
           	[

               	*e$
               	*e$
               	*n$,"(CHUCK TRANSFER UNIT)", e$
               	pbld, n$, "M307", e$
               	pbld, n$, "M202M302G10.9X1", e$
               	pbld, n$, "G20 G80 G40 G17 G90 G94 G98", e$
               	pbld, n$, "G91 G53 G0 X0.", e$
               	pbld, n$, "G91 G28 X0.", e$
               	pbld, n$, "G91 G53 G0 X0.", e$
               	pbld, n$, "G91 G28 X0.", e$
               	pbld, n$, "G91 G28 Y0.", e$
               	pbld, n$, "G91 G28 Z0.", e$
               	pbld, n$, "G91 G28 W0.", e$
               	pbld, n$, "M108", e$
               	pbld, n$, "G0B0", e$
               	pbld, n$, "M107", e$
               	pbld, n$, "M0(BLOW OUT JAWS/PART)", e$
               	spaces$ = zero
               	pbld, n$, snumber100, sequal, stck_chuk_end_dz$, e$
               	spaces$ = one
               	pbld, n$, "G17 G40 G80 G90 G94 G98", e$
               	pbld, n$, "G94 M540 M306", e$           	#(M540 TRANSFER MODE ON)
               	pbld, n$, "M200 M300", e$
               	pbld, n$, "G0 C0. U0.", e$
               	pbld, n$, "M210 M310", e$
               	pbld, n$, "M508", e$
               	pbld, n$, "G90", e$               	#(TRANSFER PUSH)
               	spaces$ = zero
               	pbld, n$, "G0W[",snumber100,"+.5]", e$
               	pbld, n$, "G1W", snumber100,"F10.", e$
               	spaces$ = one
               	pbld, n$, "G55", e$
               	pbld, n$, "G4 X2.", e$
               	pbld, n$, "M307", e$
               	pbld, n$, "G4X5.", e$
               	pbld, n$, "M206", e$
               	pbld, n$, "G4X5.", e$
               	pbld, n$, "G91 G30 W0", e$
               	pbld, n$, "M541", e$              	#(M541 TRANSFER MODE OFF)
               	pbld, n$, "M212 M312", e$
               	pbld, n$, "M01", e$
               	spaces$ = one
               	spaces$ = prv_spaces$
           	]

 

Here is the definition for the variable:

 

#Macro Variables as I need them
snumber100   : "#100"  	# Macro Varaible 100

 

and then some others:

# ---------------------------------------------------------------------
# Macro Variables as I need them
# ---------------------------------------------------------------------
sequal	: "="  	#Equal Sign
spound	: "#"  	#Pound Sign
sminus	: "-"  	#Minus Sign
sadd  	: "+"  	#Addition Sign
sdivide   : "/"  	#Division Sign
smultiply : "*"  	#Multiply Sign
seq   	: "EQ"    	#Equal Call
sne   	: "NE"    	#Not Equal To Call
sgt   	: "GT"    	#Greater Than to Call
slt   	: "LT"    	#Less Than Call
sge   	: "GE"    	#Is Great than or Equal to Call
sle   	: "LE"    	#Is Less than or Equal to Call 
sin   	: "SIN"   	#Sine Math
scos  	: "COS"   	#Cosine Math
stan  	: "TAN"   	#Tangent Math
satan 	: "ATAN"  	#ArcTangent Math
sacos 	: "ACOS"  	#ArcCosine Math
sqrt  	: "SQRT"  	#Sqaure Root Math
sabs  	: "ABS"   	#Absoulte Value
sbin  	: "BIN"   	#Bin
sbcd  	: "BCD"   	#Bcd
sround	: "ROUND" 	#Round to the Nearest Whole Number
sfix  	: "FIX"   	#Use for Cutting away any Decimal Numbers
sfup  	: "FUP"   	#Counting Decimal Digits as one's
sln   	: "LN"    	#Natural Logarithm
sexp  	: "EXP"   	#Exponent  
sbracketopen  : "["  #Open Bracket
sbracketclose : "]"  #Close Bracket
sif   	: "IF"    	#If Call
sgoto 	: "GOTO"  	#Goto Call
swhile	: "WHILE" 	#While Call
sdo   	: "DO"    	#Do Call
sor   	: "OR"    	#Or Call
sand  	: "AND"   	#And Call
smod  	: "MOD"   	#Surplus Math
sdprint   : "DPRNT" 	#Data Output in from Probing Cycles
sm100 	: "100"   	#Macro Varaible 100 for Spindle Tranfer Operation
sm150 	: "150"   	#Macro Variable 150 for Math Functions in C Axis Aling Macro
sm151 	: "151"   	#Macro Variable 151 for Math Functions in C Axis Aling Macro
sm152 	: "152"   	#Macro Variable 152 Math Functions in C Axis Aling Macro
sm5021	: "5021"  	#Machine Postion X Axis Variable
sm5022	: "5022"  	#Machine Postion Y Axis Variable 
sm5023	: "5023"  	#Machine Postion Z Axis Variable
sm5024	: "5024"  	#Machine Postion B Axis Variable
sm5025	: "5025"  	#Machine Postion C Axis Varaible for Main Spindle
sm5026	: "5026"  	#Machine Postion W Axis Varaible for Sub Spindle
sm5027	: "5027"  	#Machine Postion U Axis Varaible for Sub Spindle
sm5221	: "5221"  	#Workoffset Machine Postion X Axis Variable
sm5222	: "5222"  	#Workoffset Machine Postion Y Axis Variable 
sm5223	: "5223"  	#Workoffset Machine Postion Z Axis Variable
sm5224	: "5224"  	#Workoffset Machine Postion B Axis Variable
sm5225	: "5225"  	#Workoffset Machine Postion C Axis Varaible for Main Spindle
sm5226	: "5226"  	#Workoffset Machine Postion W Axis Varaible for Sub Spindle
sm5227	: "5227"  	#Workoffset Machine Postion U Axis Varaible for Sub Spindle

 

HTH

Link to comment
Share on other sites

Why I am at it. I would recommend you use the Mazatrol for tools and let the post put them into the posted code. Some of this is In-House and some of this is things I developed:

# --------------------------------------------------------------------------
# Tool Comment / Manual Entry Section
# --------------------------------------------------------------------------
ptoolcomment	#Comment for tool
 	tnote = t$
 	toffnote = tloffno$
 	tlngnote = tlngno$
 	#tldianote = tldia$
 	strtool$ = ucase(strtool$)
 	stoper = ucase(stoper)
 	stinsert2 = ucase(stinsert2)
 	stholder2 = ucase(stholder2)
 	#popnote = ucase(popnote)
 	spaces$ = 0
 	result = newfs(22, tnote1)
 	#"(", *tnote1, *toffnote1, ")", e$
 	#if posttype$ = two,
 	#  "(", *stoper, " ", *strtool$, " ", *stinsert, *stinsert2, ")", e$
 	#else,
 	#  "(", *stoper, " ", *strtool$, ")", e$


      	if posttype$ = 2,
        	[
        	"(", *tnote, " | ", plistcomm,  "| EIA SUFFIX - ", prdbsuffix," | ","MAZATROL SUFFIX - ", prdbsuffix_abc, ")", e$
        	"(", *stholder, *stholder2, "|", *stinsert, *stinsert2, " | CORNER RADIUS - ", *tradius, ")", e$
        	]
      	else,
        	[
        	if mill5$ = 1, 
            	[
            	"(", *tnote, " | ", plistcomm, " | EIA SUFFIX - ", prdbsuffix, " | ","MAZATROL SUFFIX - ", prdbsuffix_abc, ")", e$
            	#"(", *popnote, " | ", *toffnote, " | ", *tlngnote, [if not(drillcyc$), " | ", *tldianote], ")", e$
            	scomm_str, "TOOL DIAMETER PROGRAMMED - ", *tdia, punit, " | TOOL RADIUS PROGRAMMED - ", *tradius, punit, scomm_end, e$             	
            	]
        	else, 
            	[
            	"(", *tnote, " | ", plistcomm, " | EIA SUFFIX - ", prdbsuffix," | ","MAZATROL SUFFIX - ", prdbsuffix_abc, ")", e$
            	#"(", *popnote, " | ",  *toffnote, " | ", *tlngnote, [if not(drillcyc$), " | ", *tldianote], ")", e$
            	scomm_str, "TOOL DIAMETER PROGRAMMED - ", *tdia, punit, " | TOOL RADIUS PROGRAMMED - ", *tradius, punit, scomm_end, e$             	
            	]
        	]

 	spaces$ = sav_spc

ptooltable # Write tool table, scans entire file, null tools are negative
	if lturret$ = 0 & lwr_turret,
  	[
  	extprg$ = 1
  	subout$ = 3
  	]
	else,
  	[
  	subprg$ = 2
  	subout$ = 0
  	]
  	tnote = abs(t$)
  	toffnote = tloffno$
  	tlngnote = tlngno$
  	!spaces$
  	spaces$=0

 	#next_tool$ = int(next_tool$/100)
 	#tnote = int(t$/100)
 	#suffixnote = (t$/100) - tnote
 	tnote = t$
 	suffixnote = mr2$
 	if t$ >= zero, tcnt = tcnt + one


 	if t$ >= 0,
   	[
      	#"(TOOL LIST)", e$
      	#"(--------------------------------------------------------------------------)", e$
      	if posttype$ = 2,
        	[
        	"(", *tnote, ptspace, " | ", plistcomm, " | ", *suffixnote, " | ", "MAZATROL SUFFIX - ", prdbsuffix_abc, ")", e$
        	"(", *stholder, *stholder2, "|", *stinsert, *stinsert2, " | CORNER RADIUS - ", *tradius, ")", e$
        	"(--------------------------------------------------------------------------)", e$
        	]
      	else,
        	if mill5$ = 1, 
            	[
            	"(", *tnote, " | ", plistcomm, " | EIA SUFFIX - ", prdbsuffix, " | ","MAZATROL SUFFIX - ", prdbsuffix_abc, ")", e$
            	#"(", *popnote, "| ", *toffnote, " | ", *tlngnote, [if not(drillcyc$), " | ", *tldianote], ")", e$
            	#"(", *stholder, *stholder2, "|", *stinsert, *stinsert2, ")", e$
            	scomm_str, "TOOL DIAMETER PROGRAMMED - ", *tdia, punit, " | TOOL RADIUS PROGRAMMED - ", *tradius, punit, scomm_end, e$
            	"(--------------------------------------------------------------------------)", e$
            	]
        	else, 
            	[
            	"(", *tnote, " | ", plistcomm, " | EIA SUFFIX - ", prdbsuffix," | ","MAZATROL SUFFIX - ", prdbsuffix_abc, ")", e$
            	#"(", *popnote, "| ", *toffnote, " | ", *tlngnote, [if not(drillcyc$), " | ", *tldianote], ")", e$
            	#"(", *stholder, *stholder2, "|", *stinsert, *stinsert2, ")", e$
            	scomm_str, "TOOL DIAMETER PROGRAMMED - ", *tdia, punit,  " | TOOL RADIUS PROGRAMMED - ", *tradius, punit, scomm_end, e$
            	"(--------------------------------------------------------------------------)", e$
            	]
   	]
      	spaces$=prv_spaces$
      	!t$

pcomment$    	#Comment from manual entry (must call pcomment2 if booleans)
 	pcomment2

pcomment2   	#Comment from manual entry
 	#1005 - As Comment
 	#1006 - As Code
 	#1007 - As Comment with output line, change at point
 	#1026 - As Code with output line, change at point
 	#1008 - Operation comment

 	#1051 - Machine Name
 	#1052 - Group Comment
 	#1053 - Group Name 
 	#1054 - File Descriptor

 	scomm$ = ucase(scomm$)
 	!spaces$
 	spaces$ = zero
 	#if sof & gcode$ >= 1051, scomm_str, scomm$, scomm_end, e$
 	if gcode$ = 1005, n$, pspc, scomm_str, scomm$, scomm_end, e$
 	if gcode$ = 1006, pbld, n$, scomm$, e$
 	if gcode$ = 1007, scomm_str, scomm$, scomm_end
 	if gcode$ = 1026, scomm$
 	#if gcode$ = 1008 & header = zero, n$, pspc, scomm_str, scomm$, scomm_end, e$
 	#if gcode$ = 1008, scomm_sav = ucase(scomm$)
 	else, "(", scomm$, ")", e$
 	spaces$ = prv_spaces$

pcomment3  	#Comment from manual entry
 	if toolchng,
   	[
   	spaces$=0
   	if swcsplname <> snull, pbld, n$, pspc, scomm_str, "WCS NAME - ", swcsplname, scomm_end, e$
   	if swcsplcomm <> snull, pbld, n$, pspc, scomm_str, "WCS COMMENT - ", swcsplcomm, scomm_end, e$
   	#if stoolplname <> snull, pbld, n$, pspc, scomm_str, "TOOLPLANE NAME - ", stoolplname, scomm_end, e$
   	#if stoolplcomm <> snull, pbld, n$, pspc, scomm_str, "TOOLPLANE COMMENT - ", stoolplcomm, scomm_end, e$
   	if sconstplname <> snull, pbld, n$, pspc, scomm_str, "CPLANE NAME - ", sconstplname, scomm_end, e$
   	if sconstplcomm <> snull, pbld, n$, pspc, scomm_str, "CPLANE COMMENT - ", sconstplcomm, scomm_end, e$
   	if stpgrpname <> snull, pbld, n$, pspc, scomm_str, "TOOLPATH GROUP - ", stpgrpname, scomm_end, e$
   	if opcode$ <> 3 & opcode$ <> 16, pbld, n$, pspc, scomm_str, "COMPENSATION TYPE - ", *scomp_type, [if comp_type < 4, " | COMP SIDE - ", *scomp_dir], scomm_end, e$
   	if posttype$ = 2, pbld, n$, pspc, scomm_str, "LATHE DIRECTION CUT - ", *slathdir, scomm_end, e$
   	spaces$=sav_spc
   	]
 	if toolchng0 & op_id$ <> last_op_id,
   	[
   	spaces$=0
   	if swcsplname <> snull, pbld, n$, pspc, scomm_str, "WCS NAME - ", swcsplname, scomm_end, e$
   	if swcsplcomm <> snull, pbld, n$, pspc, scomm_str, "WCS COMMENT - ", swcsplcomm, scomm_end, e$
   	#if stoolplname <> snull, pbld, n$, pspc, scomm_str, "TOOLPLANE NAME - ", stoolplname, scomm_end, e$
   	#if stoolplcomm <> snull, pbld, n$, pspc, scomm_str, "TOOLPLANE COMMENT - ", stoolplcomm, scomm_end, e$
   	if sconstplname <> snull, pbld, n$, pspc, scomm_str, "CPLANE NAME - ", sconstplname, scomm_end, e$
   	if sconstplcomm <> snull, pbld, n$, pspc, scomm_str, "CPLANE COMMENT - ", sconstplcomm, scomm_end, e$
   	#if stpgrpname <> snull, pbld, n$, pspc, scomm_str, "TOOLPATH GROUP - ", stpgrpname, scomm_end, e$
   	if comp_type <> prv_comp_type & opcode$ <> 3 & opcode$ <> 16, pbld, n$, pspc, scomm_str, "COMPENSATION TYPE - ", *scomp_type, [if comp_type < 4, " | COMP SIDE - ", *scomp_dir], scomm_end, e$    	
   	spaces$ = sav_spc
   	]  	


popnote	# Operation note for tool table
      	if opcode$ = 3 | opcode$ = 16, *sdrnote
      	else,
        	[
        	if opcode$ = 13 & hst_flg, *sopnotehst
        	else, *sopnote
        	hst_flg = 0
        	]

pstock 	# Comment amount of stock to leave (Mill)
      	spaces$=0
      	if (opcode$=13 | opcode$=14),
        	[
        	if opcode$ = 13 & hst_flg, n$, pspc, scomm_str, "TOOLPATH - ", *sopnotehst, scomm_end, e$
        	else, n$, pspc, scomm_str, "TOOLPATH - ", *stoper, scomm_end, e$
        	if tool_op$ = 132,
          	[
          	n$, pspc, scomm_str, "STOCK LEFT ON WALLS = ", *stock_walls, scomm_end, e$
          	n$, pspc, scomm_str, "STOCK LEFT ON FLOORS = ", *stock_floors, scomm_end, e$
          	]
        	else,
          	[
          	n$, pspc, scomm_str, "STOCK LEFT ON DRIVE SURFS = ", *stock, scomm_end, e$
          	if check<>0, n$, pspc, scomm_str, "STOCK LEFT ON CHECK SURFS = ", *check, scomm_end, e$
          	]
        	hst_flg = 0
        	]
      	if stockleft,
        	[
        	if opcode$ = 1 | opcode$ = 2,
          	[
          	pbld, n$, scomm_str, "Z STOCK TO LEAVE  = ", *stock1, scomm_end, e$
          	pbld, n$, scomm_str, "XY STOCK TO LEAVE = ", *stock, scomm_end, e$
          	]
        	if opcode$ = 19, pbld, n$, scomm_str, "Z STOCK TO LEAVE  = ", *stock2, scomm_end, e$
        	if opcode$ = 4, pbld, n$, scomm_str, "STOCK LEFT ON DRIVE SURFS = ", *stock, scomm_end, e$
        	]
      	spaces$=sav_spc

plstock  # Comment amount of stock to leave (Lathe)
    	spaces$ = 0
    	stoper = ucase(stoper)
    	if posttype$ = 2,
      	[
        	if tool_op$ = 60,
        	[
        	n$, pspc, scomm_str, "TOOLPATH - ", *stoper, scomm_end, e$
        	n$, pspc, scomm_str, "DEPTH OF CUT = ", *lrdepth, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER = ", *lrstockx, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON FACES = ", *lrstockz, scomm_end, e$
        	]
        	if tool_op$ = 61,
        	[
        	n$, pspc, scomm_str, "TOOLPATH - ", *stoper, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER = ", *lfstockx, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON FACES = ", *lfstockz, scomm_end, e$
        	]
        	if tool_op$ = 62,
        	[
        	n$, pspc, scomm_str, "TOOLPATH - ", *stoper, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER ROUGH = ", *lgrstockx, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON FACES ROUGH = ", *lgrstockz, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER FINISH = ", *lgfstockx, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON FACES FINISH = ", *lgfstockz, scomm_end, e$
        	n$, pspc, scomm_str, "WIDTH OF GROOVE = ", *lgwidth, scomm_end, e$
        	]
        	if tool_op$ = 63,
        	[
        	n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER = ", *lfstockz, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON FACES = ", *lfstockz, scomm_end, e$
        	] 
        	if tool_op$ = 66,
        	[
        	n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER = ", *lfstockz, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON FACES = ", *lfstockz, scomm_end, e$
        	]
        	if tool_op$ = 68,
        	[
        	n$, pspc, scomm_str, "TOOLPATH - ", *stoper, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER ROUGH = ", *lgrstockx, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON FACES ROUGH = ", *lgrstockz, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER FINISH = ", *lgfstockx, scomm_end, e$
        	n$, pspc, scomm_str, "STOCK LEFT ON FACES FINISH = ", *lgfstockz, scomm_end, e$
        	n$, pspc, scomm_str, "WIDTH OF GROOVE = ", *lgwidth, scomm_end, e$
        	]         	
        	if tool_op$ = 201,
        	[
        	#n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER = ", *lfstockz, scomm_end, e$
        	#n$, pspc, scomm_str, "STOCK LEFT ON FACES = ", *lfstockz, scomm_end, e$
        	]
        	if tool_op$ = 202,
        	[
        	#n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER = ", *lfstockz, scomm_end, e$
        	#n$, pspc, scomm_str, "STOCK LEFT ON FACES = ", *lfstockz, scomm_end, e$
        	]
        	if tool_op$ = 203,
        	[
        	#n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER = ", *lstockz, scomm_end, e$
        	#n$, pspc, scomm_str, "STOCK LEFT ON FACES = ", *lstockz, scomm_end, e$
        	]
        	if tool_op$ = 204,
        	[
        	#n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER = ", *lstockz, scomm_end, e$
        	#n$, pspc, scomm_str, "STOCK LEFT ON FACES = ", *lstockz, scomm_end, e$
        	] 
        	if tool_op$ = 205,
        	[
        	#n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER = ", *lstockz, scomm_end, e$
        	#n$, pspc, scomm_str, "STOCK LEFT ON FACES = ", *lstockz, scomm_end, e$
        	]
        	if tool_op$ = 208,
        	[
        	#n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER = ", *lstockz, scomm_end, e$
        	#n$, pspc, scomm_str, "STOCK LEFT ON FACES = ", *lstockz, scomm_end, e$
        	] 
        	if tool_op$ = 209,
        	[
        	#n$, pspc, scomm_str, "STOCK LEFT ON DIAMETER = ", *lstockz, scomm_end, e$
        	#n$, pspc, scomm_str, "STOCK LEFT ON FACES = ", *lstockz, scomm_end, e$
        	]
     	]     	

prdbcustp
	*scust

psrev
	*srev

prdbsuffix
 	rdbsuffix = mr2$
 	*rdbsuffix

prdbsuffix_abc
 	if mr2$ = 0, ".00"
 	if mr2$ = 0.01,*stra
 	if mr2$ = 0.02,*strb
 	if mr2$ = 0.03,*strc
 	if mr2$ = 0.04,*strd
 	if mr2$ = 0.05,*stre
 	if mr2$ = 0.06,*strf
 	if mr2$ = 0.07,*strg
 	if mr2$ = 0.08,*strh
 	if mr2$ = 0.09,*strj
 	if mr2$ = 0.11,*strk
 	if mr2$ = 0.12,*strl
 	if mr2$ = 0.13,*strm
 	if mr2$ = 0.14,*strn
 	if mr2$ = 0.15,*strp
 	if mr2$ = 0.16,*strq
 	if mr2$ = 0.17,*strr
 	if mr2$ = 0.18,*strs
 	if mr2$ = 0.19,*strt
 	if mr2$ = 0.21,*stru
 	if mr2$ = 0.22,*strv
 	if mr2$ = 0.23,*strw
 	if mr2$ = 0.24,*strx
 	if mr2$ = 0.25,*stry
 	if mr2$ = 0.26,*strz
 	if mr2$ = 0.61,*sheavy, *stra
 	if mr2$ = 0.62,*sheavy, *strb
 	if mr2$ = 0.63,*sheavy, *strc
 	if mr2$ = 0.64,*sheavy, *strd
 	if mr2$ = 0.65,*sheavy, *stre
 	if mr2$ = 0.66,*sheavy, *strf
 	if mr2$ = 0.67,*sheavy, *strg
 	if mr2$ = 0.68,*sheavy, *strh
 	if mr2$ = 0.69,*sheavy, *strj
 	if mr2$ = 0.71,*sheavy, *strk
 	if mr2$ = 0.72,*sheavy, *strl
 	if mr2$ = 0.73,*sheavy, *strm
 	if mr2$ = 0.74,*sheavy, *strn
 	if mr2$ = 0.75,*sheavy, *strp
 	if mr2$ = 0.76,*sheavy, *strq
 	if mr2$ = 0.77,*sheavy, *strr
 	if mr2$ = 0.78,*sheavy, *strs
 	if mr2$ = 0.79,*sheavy, *strt
 	if mr2$ = 0.81,*sheavy, *stru
 	if mr2$ = 0.82,*sheavy, *strv
 	if mr2$ = 0.83,*sheavy, *strw
 	if mr2$ = 0.84,*sheavy, *strx
 	if mr2$ = 0.85,*sheavy, *stry
 	if mr2$ = 0.86,*sheavy, *strz

p_caxis_align_macro #Macro Variables and Statement for C Axis Aling Probing Cycle
 	spaces$ = 0
 	ngoto, e$
 	spound,sm150,sequal,spound, p_caxis_macro, e$
 	spound,sm151,sequal,spound,[if spindle_no$ = 0, sm5025],[if spindle_no$ = 1, sm5027], e$
 	spound,sm152,sequal,sbracketopen,spound,sm150,sminus,spound,sm151,sbracketclose, e$
 	spaces$ = 1

p_caxis_macro #Macro Calls for Different Workoffsets for C Axis Aling Probing Cycle  <This is line 2310 
 	if workofs$ = 54 & spindle_no$ = 0, sm5225
 	if workofs$ = 54 & spindle_no$ = 1, sm5227
 	if workofs$ > 54 & spindle_no$ = 0,     	
    	[
    	m5225 = m5225 + (20*(workofs$-54))
    	m5225  
    	]
 	if workofs$ > 54 & spindle_no$ = 1, 
    	[
    	m5227 = m5227 + (20*(workofs$-54))
    	m5227 
    	]  
 	if workofs$ < 49 & spindle_no$ = 0, 
    	[
    	m5225 = m5225 + (1760+(20*workofs$)) 
    	m5225  
    	]
 	if workofs$ < 49 & spindle_no$ = 1, 
    	[
    	m5227 = m5227 + (1760+(20*workofs$))
    	m5227 
    	] 

 

some of it is Tool and operation stuff I put into the post for the operator and some of it is to put the EIA suffix into the header and into the tool when called so you are using the Mazatrol for tool control and not the T030303 method.

Link to comment
Share on other sites

Thanks Ron, wev'e had these machines for about 3 yrs now and mostly do syncro 5 axis machining. Now i have to take a part from our mark 4 intgrex with matrix and convert it over to the E tower because of time

I noticed in the sample code from mazak they use the G31 skip function also. ???

Link to comment
Share on other sites

When I seen it get to where I thought it had load that was the number I would use for the value. G31 allows for float and the hard number method always yielded predictable results.

 

 

^^^ +10000000

 

I just saved off my transfer and use a manual entry. Prolly not the best way but she works.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PEACE :D

Link to comment
Share on other sites

Thanks a bunch guys, a few minor adjustments and it ran

 

 

(SUB TO MAIN TRANSFER)

M307( HD2 CLAMP)

M202M302G10.9X1

G20 G80 G40 G17 G90 G94 G98

G91 G28 X0.

G91 G28 Y0.

G91 G28 Z0.

G91 G28 W0.

M108

G0B0

M107

M00(BLOW OUT JAWS/PART)

 

G94 M540 M206 ( HD1 UNCLAMP M540 TRANSFER MODE ON)

M200 M300

G54

M212 M312

G0 G90 C0. U0.

M210 M310

M508

G90(TRANSFER PUSH)

G0W1.0(RAPID POINT)

G1W.10(FEED POINT)F10.

G1W0(FEED POINT)F1.

G4 X2.

M207(HD1 CLAMP)

G4X5.

M306(HD2 UNCLAMP)

G4X5.

G91 G28 W0

M541(M541 TRANSFER MODE OFF)

M212 M312

M01

M99

%

Link to comment
Share on other sites

We have had nothing but problems with the post transfer. Here is a program I cut and paste in and make minor ajustmensts. This is from a program we run every month. Hope this helps.

 

"Nothing but problems with the post transfer". By that, do you mean the posted code from a Misc Ops part transfer?

 

We have an Okuma Multus B400W (has a sub spindle), and the part transfer works flawlessly. It is all in the stock transfer setup in the post.

Link to comment
Share on other sites

"Nothing but problems with the post transfer". By that, do you mean the posted code from a Misc Ops part transfer?

 

We have an Okuma Multus B400W (has a sub spindle), and the part transfer works flawlessly. It is all in the stock transfer setup in the post.

 

Yes I mean the code. If I got with in-house solutions I'm sure they would fix it, however everything is so hot. You know how it is.

Link to comment
Share on other sites

Yes I mean the code. If I got with in-house solutions I'm sure they would fix it, however everything is so hot. You know how it is.

 

Nope, I don't know how it is :)

 

As for configuring Stock transfer between spindles, your dealer should be able to do it. It is just some mods to the Stock Transfer postblocks.

Link to comment
Share on other sites

Nope, I don't know how it is :)

 

As for configuring Stock transfer between spindles, your dealer should be able to do it. It is just some mods to the Stock Transfer postblocks.

 

I know it's an easy fix, however this is a production shop and the boss just wants the machine running. If I get some down time I will get this resolved. It's not my shop so I have no say.

Link to comment
Share on other sites

Yeah the old penny wise $100 dumb mentality.

 

DTM good luck, but if you want it right and are not taking the time to make it right then it is not fair to slam In-House if the boss is not giving you the time to get it fixed right. We ran a lot of programs through our machine using transfer with little problems.

 

I didn't realize I was slamming anyone.

Link to comment
Share on other sites

Our programs are long, so we sub program every tool and run out of direct mode. So keeping a sub of a part transfer is logical in my case. Less time in the Cam fussing with somtheing all ready done. I have operators that know what there doing so I leave the machine values up to them. Plus they like to moves jobs from one machine to the other and they are different models. so all transfer programs are unique, I just have to edit toolchange data and some tool tip comp codes for 5 axis stuff

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...