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:

FINISHING CIRCLE MILL, SEMI-FINISH, FINISH not updating


Recommended Posts

Hello everyone,
  I have been participial success to output the CIRCLE diameter value in CIRCLE MILL.  On the other hand, I the FINISHING page does not out put as I expected to be.  Would you guys help me out?  See codes below.

 

ps: some how the FINISHING IO parameters don't get update right, see images.  

 

Thanks.

 

1.png.7f3044622f87f627b2a34433e0362e12.png

 

2.png.c1d79adecd7a70b579bc67993c8cf2b2.png

========================

N1(ROUGH OUT 1.000 C'BORE, CUT#1)
G0 G17 G40 G49 G80 G90(01M 8.S)
G91 G28 Z0 M19(1.DIA. ,.0187ROUGH STPOVR)
G28 Y0.(XY= .01, Z STK= .015)
T1 M6(.3750, 3/8 EM, CBD,)
G90 G54 X.0891 Y.0964 S7500 M3
G43 H1 Z3.(DOC= Z-.485)
/G4 P2.5 M8
Z.125
G1 Z.0313 F25.
G3 X-.0891 Y-.0964 Z.0096 I-.0891 J-.0964
(CUTTING...)
G1 X0. Y.1512
Y0.
G0 Z.125
Z3.
(*)
(PROGRAM JUMPS HERE)
(*)
N102(FINISH 1.000 C'BORE, CUT#2)
(.3750, 3/8 EM, CBD,)
G0 G90 G54 X0. Y0. S7500 M3
(1.DIA.)
(3X SEMI-FINISHES, .005 EACH)      ===========> SHOULD SHOW LIKE THIS
(2X FINISHES, .0025 EACH)              ===========> SHOULD SHOW LIKE THIS
(1X SPRING PASS)                             ===========> SHOULD SHOW LIKE THIS

G43(D1)H1 Z3.(DOC= Z-.5)
/G4 P2.5 (39.52S)
Z.125
G1 Z-.5 F25.
Y.1487
G41 D1 X.1052 Y.2539
G3 X0. Y.2975 R.1487
(CUTTING...)
G1 G40 X0. Y.1563
Y0.
G0 Z.125
Z3.
M9
G91 G28 Z0.
G28 Y0. M5
G0 G90 G54 X0.
M30(CHARACTERS COUNT = 3,153 - 3.08KB)
%

 

====================== I DEFINED AS =================

CircleMillStartAtCenterCircleFeature: 0
CircleMillIOFinishPasses: 0

CircleMillRoughIO: 0
CircleMillRoughIO_flg: 0

CircleMillSemiFinishIO: 0
CircleMillSemiFinishIO_flg: 0

CircleMillFinishIO: 0
CircleMillFinishIO_flg: 0

CircleMillFinishingIO: 0
CircleMillFinishingIO_flg: 0

CircleMillHelicalEntryIO: 0
CircleMillHelicalEntryIO_flg: 0

CircleMillOverrideGeometryDiameterIO: 0
CircleMillOverrideGeometryDiameterIO_flg: 0

CircleMillMaximumRadius: 0
CircleMillMinimumRadius: 0
CircleMillPlungeAngle: 0
CircleMillXYClearance: 0
CircleMillSTOVR: 0
CircleMillSTOVRPercent: 0
CircleDiameter: 0
CircleMillNumberOfSpringPasses: 0
CircleMillNumberSemiFinish: 0
fmt    2 CircleMillSTOVR
fmt    16 CircleMillSTOVRPercent
fmt    2 CircleDiameter
fmt    2 CircleMillPlungeAngle
fmt    2 CircleMillMaximumRadius
fmt    2 CircleMillMinimumRadius
fmt    2 CircleMillXYClearance
fmt    4 CircleMillIOFinishPasses

fmt    4 CircleMillSemiFinishIO
fmt    4 CircleMillFinishingIO
fmt    4 CircleMillFinishIO
fmt    4 CircleMillRoughIO
fmt    4 CircleMillHelicalEntryIO
fmt    4 CircleMillOverrideGeometryDiameterIO



 
pparameter$ # Run parameter table
           if prmcode$ = 12207, CircleDiameter = rpar(sparameter$, 1) #get circle mill diameter
           if prmcode$ = 41837, CircleMillOverrideGeometryDiameterIO = rpar(sparameter$, 1) #get circle mill diameter
           if prmcode$ = 40365, CircleMillNumberSemiFinish = rpar(sparameter$, 1) #get circle mill diameter

           if prmcode$ = 12054, CircleMillSTOVR = rpar(sparameter$, 1) #get circle mill diameter
           if prmcode$ = 12055, CircleMillSTOVRPercent = rpar(sparameter$, 1) #get circle mill % diameter
           if prmcode$ = 12208, CircleMillStartAtCenterCircleFeature = rpar(sparameter$, 1) #Circle Mill Start At Center Circle Feature
           if prmcode$ = 12210, CircleMillRoughIO = rpar(sparameter$, 1)
           if prmcode$ = 12210, CircleMillIOFinishPasses = rpar(sparameter$, 1) #Circle Mill Roughing
           if prmcode$ = 40282, CircleMillSemiFinishIO = rpar(sparameter$, 1) #Circle Mill Roughing
           if prmcode$ = 40283, CircleMillFinishIO = rpar(sparameter$, 1) #Circle Mill Roughing
           if prmcode$ = 15214, CircleMillFinishingIO = rpar(sparameter$, 1) #Circle Mill Roughing

           if prmcode$ = 15089, CircleMillHelicalEntryIO = rpar(sparameter$, 1) #Circle Mill Enable Helical Entry
           if prmcode$ = 10381, CircleMillMaximumRadius = rpar(sparameter$, 1) #Circle Mill MaximumRadius
           if prmcode$ = 10389, CircleMillMinimumRadius = rpar(sparameter$, 1) #Circle Mill MinimumRadius
           if prmcode$ = 10382, CircleMillPlungeAngle = rpar(sparameter$, 1) #Circle Mill Plunge Angle
           if prmcode$ = 10385, CircleMillXYClearance = rpar(sparameter$, 1) #Circle Mill XY Clearance
           if prmcode$ = 40396, CircleMillNumberOfSpringPasses = rpar(sparameter$, 1) #Circle Mill XY Clearance

 

#Region pCircleMill
pCircleMill
   if (tool_op$ = 18) & not(opcode$ = 3),
    [
     [
      !MultiPassesIO
	  no_spc$, "(", *CircleDiameter, no_spc$, "DIA.", [ if CircleMillRoughIO = 1, ",", *CircleMillSTOVR, no_spc$, "ROUGH STPOVR"], no_spc$, ")", e$
      MultiPassesIO = 0
	 ]

      [
      if CircleMillFinishingIO = 1 & CircleMillSemiFinishIO = 1 & NumberOfRoughSTOVR > 1, pbld, no_spc$, no_spc$, "(", *NumberOfRoughSTOVR, no_spc$, "X", "SEMI-FINISHES, ", *MultiPassesRoughSpacingSTOVRValue, "EACH)", e$
      if CircleMillFinishingIO = 1 & CircleMillSemiFinishIO = 1 & NumberOfRoughSTOVR = 1 & MultiPassesRoughSpacingSTOVRValue > 0, pbld, no_spc$, no_spc$, "(", *NumberOfRoughSTOVR, no_spc$, "X", "SEMI-FINISH, ", *MultiPassesRoughSpacingSTOVRValue, no_spc$, ")", e$
     ]

     [
      if CircleMillFinishingIO = 1 & CircleMillFinishIO = 1 & NumberOfMultiPassesFinish = 1, pbld, no_spc$, no_spc$, "(", *NumberOfMultiPassesFinish, no_spc$, "X", "FINISH, ", *MultiPassesFinishSpacingSTOVRValue, no_spc$, ")", e$
      if CircleMillFinishingIO = 1 & CircleMillFinishIO = 1 & NumberOfMultiPassesFinish > 1, pbld, no_spc$, no_spc$, "(", *NumberOfMultiPassesFinish, no_spc$, "X", "FINISHES, ", *MultiPassesFinishSpacingSTOVRValue, no_spc$, " EACH)", e$
     ]
	 
     [
      if CircleMillFinishingIO = 1 & (CircleMillSemiFinishIO = 1 | CircleMillFinishIO = 1) & NumberOfMultiPassesFinish > 0 & NumberOfSpringCuts = 1, pbld, no_spc$, no_spc$, "(", *NumberOfSpringCuts, no_spc$, "X", "SPRING PASS)", e$
      if CircleMillFinishingIO = 1 & (CircleMillSemiFinishIO = 1 | CircleMillFinishIO = 1) & NumberOfMultiPassesFinish > 0 & NumberOfSpringCuts > 1, pbld, no_spc$, no_spc$, "(", *NumberOfSpringCuts, no_spc$, "X", "SPRING PASSES)", e$
     ]
    ]
#EndRegion pCircleMill

 

 

ptlchg_com      #Tool change common blocks
    pbld, *sgabsinc, sg28, "Z0", sm19, pCircleMill

 

ptlchg0_1         #Call from NCI null tool change (tool number repeats)
   pCircleMill

 

Link to comment
Share on other sites
  • 2 weeks later...
On 12/25/2020 at 4:40 AM, RouZen said:

😮 its meaningless i think  lol

You are probably have a good memory of remembering all kind of sizes hole.  We often have a program of which 7 - 8 kind of holes of which differences between .015 - .035 in the same part. 

 

This is how we have to cross check between the programmer and setup men.  if programmer makes mistake the setup men will catch them, that is a bonus to prevent making bad parts.  See below..

 

=====================

%
O5828(AMAT-0041-95828 REV05 - OP30.NC)
(*)
(TOTAL TOOLS FOR OP70 - RTP = 2 TOOLS)
(T23= .5, 1/2 EM, RG, CBD * Z-1.5)
(T130= .25, 1/4 Keyseater, CBD * Z-.6128)
(*)
(WORK OFFSET LIST)
(G54 B0.)
(XY0 = CENTER)
(Z0 = TOP, Z-.015)
(*)
(CYCLE TIME = 04M 5.08S)
(*)
(*)
N23(ROUGH OUT 1X 1.125 +/-.0005 C'BORE, CUT#96)
G0 G17 G40 G49 G80 G90(30.94S)
G91 G28 Z0 M19(1.125DIA. ,.0125ROUGH STPOVR) ==============> 1.125DIA.
G28 Y0.(XYZ STK= .015)
G28 X0.(FINISHED CIRCLE)
G0 G90 B0.
M8
T23(.5000, 1/2 EM, RG, CBD,)
M6
G90 G54 X.8715 Y-1.9097 S7000 M3
Z3. T130 (DOC= Z-.485)
/G4 P2.5
Z.0625
G1 Z.0313 F50.
G3 X1.3215 Y-1.9118 Z-.0058 I.225 J-.0011
X.8715 Y-1.9097 Z-.0428 I-.225 J.0011
(CUTTING...)
X1.0336 Y-1.6272 R.1487
G1 X1.0965 Y-1.9107
G0 Z.125
Z3.
M9
G91 G28 Z0.
G28 Y0. M5
G28 X0.
M1
(*)
N130(ROUGH OUT .665 +/-.003 MID KEY, CUT#97)
G0 G17 G40 G49 G80 G90(01M 14.36S)
G91 G28 Z0 M19
G28 Y0.(XY= .005, Z STK= .0097)
(3X, RMULTI-PASSES, .005 EACH)
G28 X0.
G0 G90 B0.
T130(.2500, 1/4 KeyseaterCBD,)
M6
G90 G54 X1.0965 Y-1.9107 S4500 M3
Z3. M8 T23 (DOC= Z-.6128)
/G4 P2.5(ADOC =.0318DP)
Z.0625
G1 Z-.6128 F5.
(CUTTING...)
X1.0965 Y-1.9107
G0 Z3.
M9
G91 G28 Z0.
G28 Y0. M5
G28 X0.
M1
(*)
N2302(FINISH 1X 1.125 +/-.0005 C'BORE, CUT#105)
G0 G17 G40 G49 G80 G90(01M 24.58S)
G91 G28 Z0 M19(1.125DIA==============> 1.125DIA
(1X SEMI-FINISH, .005)
(1X FINISH, .0025)
(1X SPRING PASS)
G28 Y0.
G28 X0.(FINISHED CIRCLE)
G0 G90 B0.
M8
T23(.5000, 1/2 EM, RG, CBD,)
M6
G90 G54 X1.0965 Y-1.9107 S7000 M3
Z3.(DOC= Z-.5)
/G4 P2.5
Z.0625
G1 Z-.5 F10.
G41 X1.2676 Y-1.3887
G3 X1.0965 Y-1.3507 R.405
(CUTTING...)
Y-1.3482 R.5625
X.9248 Y-1.3863 R.4063
G1 G40 X1.0965 Y-1.9107
G0 Z.125
Z3.
(*)
(PROGRAM JUMPS HERE)
(*)
N2303(FINISH 1X .625 +/-.0005 C'BORE, CUT#106)

(.625 DIA.)   ==============> .625 DIA.
T23(.5000, 1/2 EM, RG, CBD,)
M6
G0 G90 G54 X1.0965 Y-1.9107 S7000 M3
Z3.(DOC= Z-1.5)
Z.0625
G1 Z-1.5 F10.
G41 X1.2148 Y-1.627
G3 X1.0965 Y-1.6007 R.28
Y-2.2207 R.31
(CUTTING...)
G1 G40 X1.0965 Y-1.9107
G0 Z.125
Z3.
M9
G91 G28 Z0.
G28 Y0. M5
G28 X0.
M30(CHARACTERS COUNT = 4,122 - 4.03KB)
%

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