吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 91|回复: 1
收起左侧

[经验求助] Alphacam 2016 R1文件后处理不是特别理解 来个大佬支个招

[复制链接]
喜羊羊2242 发表于 2026-3-11 11:33
25吾爱币
在我电脑有问题 在别的电脑没问题  不知道是软件的问题 还是后处理的问题 麻烦来个大佬支个招 file:///C:/Users/Administrator/Desktop/749344d49585e35b0e6a6f83a87bf383.png
file:///C:/Users/Administrator/Desktop/%E6%98%9F%E8%BE%89%E5%8A%A0%E5%B7%A5%E4%B8%AD%E5%BF%83%E4%B8%80%E6%A5%BC.arp
$----------------------------- HEADER ---------------------------------------
Database Name: Alpha Standard 5 AX Mill or Router
Control      : OSAI
Machine      : EXCITECH
Units        : MM
Axes Used    : XYZ
Coord.System : AbsoLute
X Axis       : NormaL
Y Axis       : NormaL
Z-Axis       : NormaL
Customer     :
Contact      :
TeL          :
Fax          :
DeaLer Name  :
Post Author  :
Ver 1 Date   :
Notes        : ExampLe Post onLy, for use IN training sessions.
Edit History :

$----------------------------------------------------------------------------

Notes and remarks that are to appear IN the NC code (but NOT be sent to the machine)
shouLd be preceded by ' (a singLe apostrophe)
Notes and remarks that are LocaL to the Post for your information onLy shouLd be
preceded by ''  (TWO singLe apostrophes)

$------------------------- PROGRAM LEADING/TRAILING LINES -------------------
$5  $STORE, $RUN and $RECALL  - See manuaL Appendix A for detaiLs
$10 FiLe LEADING Lines
$LET DRILL_X = 0
$LET DRILL_Y = 0
$LET DRILL_Z = 0
$LET ADD_HOR_30 = 0
$LET ADD_HOR_32 = 0
$LET ADD_HOR_34 = 0
$LET ADD_HOR_35 = 0
$LET ADD_HOR_36 = 0
''
$LET FIRST_RAPID = 1
$LET SAW_HEIGHT = 0
''
$LET LAYER = 0
$LET PANEL_THICK = 0
''
$LET DATE = DAT           ''NOTE: In $1000, DATE is set to first 9 chars ONLY
$----------------------------------------------------------------------------
$LET PROGNUM ="?"
$LET DES_NAME = "?"
$12 Main Program LEADING Lines
$IF NEST_SPLIT_SET * NSH > 1
[NEST_BEGIN_MARK]

G90 G40
G80 G49

$----------------------------------------------------------------------------
$15 Program TRAILING Lines
M05
G90 G40
G80 G49
G53 Z0.
G53 Y2200.
M30
$IF NEST_SPLIT_SET * NSH > 1
[NEST_END_MARK]
$ENDIF
$17 FiLe TRAILING Lines




$----------------------- RAPID MOVES ----------------------------------------
$20 Rapid Move IN XY (MILL/ROUTER/FLAME/LASER) or XZ (LATHE) onLy
$IF T>20
$GOTO 99
$ENDIF
$IF T = 36
$GOTO 36
$ENDIF
''
$IF T = 66
$GOTO 66
$ENDIF
''
$IF PAT(1) > 0 GOTO 99 '' multidrilling so exit section
G0 X[GAX] Y[GAY]
$ENDIF
$GOTO 99
''
$LL 36
G0 X[GAX+ADD_HOR_36] Y[GAY]
$GOTO 99
''
$LL 66
G0 X[GAX] Y[GAY]
$GOTO 99
''
$LL 99
$----------------------------------------------------------------------------
$21 3D Rapid Move IN XYZ (MILL/ROUTER ONLY)
$IF T>20
$GOTO 99
$ENDIF
$IF T = 36
$GOTO 36
$ENDIF
''
$IF T = 66
$GOTO 66
$ENDIF
''
$IF PAT(1) > 0 GOTO 99 '' multidrilling so exit section
G0 X[GAX] Y[GAY] Z[GAZ+PANEL_THICK]
$GOTO 99
''
$LL 36
G0 X[GAX+ADD_HOR_36] Y[GAY] Z[GAZ+PANEL_THICK]
$GOTO 99
''
$LL 66
G0 X[GAX] Y[GAY] Z[GAZ+PANEL_THICK]
$GOTO 99
''
$LL99
$----------------------------------------------------------------------------
$25 Rapid Move IN Z onLy (MILL etc)
$IF T>20
$GOTO 99
$ENDIF
$IF T = 36
$GOTO 36
$ENDIF
''
$IF T = 66
$GOTO 66
$ENDIF
''
$IF PAT(1) > 0 GOTO 99 '' multidrilling so exit section
$ENDIF
''
$IF FIRST_RAPID = 1
G0 Z[GAZ+PANEL_THICK]
$LET FIRST_RAPID = 0
$ELSE
G0 Z[GAZ+PANEL_THICK]
$ENDIF
$GOTO 99
''
$LL 36
G0 Z[GAZ+PANEL_THICK]
$GOTO 99
''
$LL 66
$IF FIRST_RAPID = 1
G0 Z[GAZ+PANEL_THICK]
$LET FIRST_RAPID = 0
$ELSE
G0 Z[GAZ+PANEL_THICK]
$ENDIF
$GOTO 99
''
$LL99
$----------------------------------------------------------------------------
$30 Lines BEFORE a rapid move if Z LeveLs are not used eg Laser or Geometry
$----------------------------------------------------------------------------
$35 Lines AFTER a rapid move if Z LeveLs are not used eg Laser or Geometry
$----------------------- MACHINING FEED MOVES -------------------------------
$40  Machining FEED Lines
$IF T>20
$GOTO 99
$ENDIF
$IF T = 36
$GOTO 36
$ENDIF
''
$IF T = 66
$GOTO 99
$ENDIF
''
$IF MC + IN = 2
G1 [TC] D[T] X[GAX] Y[GAY] Z[GAZ+PANEL_THICK] F[F]
$ELSEIF MC + OUT = 2
G1 [TC] X[GAX] Y[GAY] Z[GAZ+PANEL_THICK] F[F]
$ELSE
G1 X[GAX] Y[GAY] Z[GAZ+PANEL_THICK] F[F]
$ENDIF
$GOTO 99
''
$LL36
$IF MC + IN = 2
G1 [TC] D[T] X[GAX+ADD_HOR_36] Y[GAY] Z[GAZ-SAW_HEIGHT+PANEL_THICK] F[F]
$ELSEIF MC + OUT = 2
G1 [TC] X[GAX+ADD_HOR_36] Y[GAY] Z[GAZ-SAW_HEIGHT+PANEL_THICK] F[F]
$ELSE
G1 X[GAX+ADD_HOR_36] Y[GAY] Z[GAZ-SAW_HEIGHT+PANEL_THICK] F[F]
$ENDIF
$GOTO 99
''
$LL 99
$----------------------------------------------------------------------------
$50 Feed CW arc (APS will automatically limit arcs to 180 degrees maximum)
$IF MC + IN = 2        ''M/C comp applies, and this is LEAD-IN Line
G2 [TC] X[GAX] Y[GAY] Z[AZ+PANEL_THICK] R[R] F[F]
$ELSEIF MC + OUT = 2   '' M/C comp applies, and this is LEAD-OUT Line
G2 [TC] X[GAX] Y[GAY] Z[AZ+PANEL_THICK] R[R] F[F]
$ELSE                 '' Applies to all other lines (with APS or M/C comp).
G2 X[GAX] Y[GAY] Z[AZ+PANEL_THICK] R[R] F[F]
$ENDIF
$----------------------------------------------------------------------------
$60 Feed CCW arc
$IF MC + IN = 2        ''M/C comp applies, and this is LEAD-IN Line
G3 [TC] X[GAX] Y[GAY] Z[AZ+PANEL_THICK] R[R] F[F]
$ELSEIF MC + OUT = 2   '' M/C comp applies, and this is LEAD-OUT Line
G3 [TC] X[GAX] Y[GAY] Z[AZ+PANEL_THICK] R[R] F[F]
$ELSE                 '' Applies to all other lines (with APS or M/C comp).
G3 X[GAX] Y[GAY] Z[AZ+PANEL_THICK] R[R] F[F]
$ENDIF
$------------------------ TOOL CHANGES --------------------------------------
$70 Cancel current tool.  Use [T] for current tool number if required.
$IF PAT(1) > 0
$GOTO 99 '' multidrilling so exit section
G80
M05
M06 T0
$ENDIF
$LL99
$----------------------------------------------------------------------------
$75 Code for CLOCKWISE spindle rotation - entered into variable RT
M03
$76 Code for COUNTER-CLOCKWISE spindle rotation - entered into variable RT
M04
$80----------------------------------------------------------------------------
$IF PAT(1) > 0
$GOTO 99
$ENDIF
$IF T <= 16           
$GOTO 1
$ENDIF
$IF T>=20
$GOTO 2
$ENDIF
$GOTO 99
$LL1
M05
G80
G53 Z0
T0
M06 T[T]
[RT] S[S]
G4 X3.
G43 H[OFS]
$GOTO 99
$LL2
G0
M05
G53 Z0
T0
M63 T[T]
M13 S[S]
$GOTO 99
$LL99
$----------------------------------------------------------------------------
CWP = Current Work PLane:
If CWP = 0 this means ConventionaL MiLLing (ie XY, GLOBAL coords)
If CWP = 1 it means XY, 2 = XZ, 3 = YZ, 4 = 3D and AX AY AZ are LOCAL coords
$88
$----------------------------------------------------------------------------
$89 Used when Tool and Work Plane are changed at the same time (and $582=2)
'' Change TooL and Work PLane at same time
$-------------------------- SUBROUTINES ------------------------------------
$90 CALL subroutine.  Use [SN] for subroutine number.
''M98 P[SN]                  'CALL SUB [SN]
$MSG
Alarm subroutines not configured for Biesse machine
      Contact Licom systems if required
$----------------------------------------------------------------------------
$100 BEGIN subroutine. Use [SN] for subroutine number.
'':[SN]                           'BEGIN SUB [SN]
$----------------------------------------------------------------------------
$110 END subroutine
''M99                        'END SUB [SN]
$------------------- REFERENCE ZERO or ORIGIN SHIFT -------------------------
$120 Origin shift. Use [OX] and [OY] for vaLues to shift by)
''G52 X[OX] Y[OY]            'ORIGIN SHIFT
$----------------------------------------------------------------------------
$130 CanceL Origin shift.  [OX] and [OY] are vaLues by which origin was shifted)
''G52 X0.0 Y0.0              'CANCEL ORIGIN SHIFT
$----------------------- MACHINE TOOL COMPENSATION --------------------------
$140 Code to CANCEL Machine TooL Compensation
G40
$141 Code for LEFT Machine TooL Compensation
G41
$142 Code for RIGHT Machine TooL Compensation
G42
'' Codes above wiLL be assigned to TC for each path.
$145 Percentage increase IN bLend radius for sharp internaL corners
0
$146 Adjust G41/42 code at internaL corners for tooL radius (1 = Yes 0 = No)
1
$147 Comp can be appLied ON Rapid Approach (1 = Yes  0 = No)
1
'' $147=1 is onLy a fLag to indicate that the code in $20 and $25 is correct if comp
'' is asked for on the rapid approach. It does NOT force this to happen. For
'' comp to be appLied on rapid approach, the AppLy Comp on Rapid Approach check
'' box must be set to YES for each operation. If set, MC=1 in $20 & $25 and
'' MC = 0 in $40, 50 and 60, so code for $40, 50 and 60 does not have to be changed.
'
$148 G41/42 is possibLe IN 5-axis machining aLong spLine or poLyLine (1=Yes 0=No).
0
'' Note that the Post has to have the correct code in $40. Post variabLe TCF = 1
'' if G41/42 is seLected when ALphaCAM is used, TCX, TCY, TCZ give the tooL dispLacement
'' vector. CPX, CPY, CPZ give the contact point on the poLyLine. See HeLp FiLe.
$----------------------- COOLANT OFF/MIST/FLOOD/TOOL CODES ------------------
Codes given IN $150 to $153 are assigned to CLT by APS at start of each path.
$150 Code for Coolant OFF
M09  ''Turn coolant OFF
$151 Code for MIST Coolant
''M07  ''All Heads Up
$152 Code for FLOOD Coolant
M08
$153 Code for Coolant THROUGH TOOL
M10
$------------------------ DRILLING/TAPPING CYCLES ---------------------------
[ZR] = Retract Level, the Z Level to rapid down to before feed down begins.
[ZB] = Z vaLue of the bottom of the hoLe,   [ZP] = peck DISTANCE.
[ZS] = Safe Rapid Level,   [ZM] = Material top.     ALL values are ABSOLUTE.

For LINEAR code use $210/211, $214/215 etc. For SUBROUTINES use $205/206 for
X/Y vaLues and $212/216 etc to set Z LeveLs etc before calling the subroutine.

$200 CANCEL drill/tapping cycle
' output cancel cycle if not multidrilling
$if pat(1) = 0 '' 1 = master, 2 = slave
''M09    ''Turn coolant OFF
G80
T0
$ELSEIF PAT(1) = 1
$endif
$----------------------------------------------------------------------------
$205 First HoLe IN SUBROUTINE. NOTE $205/206 apply to ALL drill/peck etc cycles
X[AX] Y[AY]
$206 Next holes IN Subroutine
X[AX] Y[AY]
$----------------------------------------------------------------------------
DRILL cycle - traverse to next hole at SAFE RAPID Level [ZS]
$210 First Hole
$IF T <= 16 GOTO 100
$ELSE
$GOTO 99
$ENDIF
$IF PAT(1) > 0 '' not a master driLL so exit section
$GOTO 1
$ELSE
$GOTO 2
$ENDIF
$GOTO 99
$LL1
$IF [PAT(4)] > 0
G80
T0
G79 Z0
G0 X[GAX+DRILL_X] Y[GAY]
M63 T[PAT(3)]/[PAT(4)]
M13 S[S]
$ELSE
G80
T0
G79 Z0
G0 X[GAX+DRILL_X] Y[GAY]
M63 T[PAT(3)]
M13 S[S]
$ENDIF
$GOTO 3
$LL2
$LL3
$IF WVF = 0
G81 Z[ZB+PANEL_THICK] R[ZS+PANEL_THICK] F[F]
X[GAX+DRILL_X] Y[GAY]
$ELSEIF WVF = 1
$GOTO 10
$ELSEIF WVF = 2
$GOTO 20
$ELSEIF WVF = 3
$GOTO 30
$ELSEIF WVF = 4
$GOTO 40
$ENDIF
$GOTO 99
''
$LL10
''//FRONT_T35
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_35] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   Y[GAY+ZS-ZR]
G1 Y[GAY+ZS-ZB] F[F]
G0 Y[GAY]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
''
$LL20
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_30] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   X[GAX-ZS+ZR+ADD_HOR_30]
G1 X[GAX-ZS+ZB+ADD_HOR_30] F[F]
G0 X[GAX+ADD_HOR_30]
  ' Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
''
$LL30
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_34] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   Y[GAY-ZS+ZR]
G1 Y[GAY-ZS+ZB] F[F]
G0 Y[GAY]
  ' Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
''
$LL40
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_32] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   X[GAX+ZS-ZR+ADD_HOR_32]
G1 X[GAX+ZS-ZB+ADD_HOR_32] F[F]
G0 X[GAX+ADD_HOR_32]
  ' Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL100
G0 X[GAX] Y[GAY]
G0 Z[AZ+PANEL_THICK]
G1 Z[ZB+PANEL_THICK] F[F]
G0 Z[ZS+PANEL_THICK]
$LL99
$----------------------------------------------------
$211 Next holes
$IF T <= 16 GOTO 100
$ELSE
$GOTO 99
$ENDIF
$IF PAT(1) > 0 '' not a master driLL so exit section
$ELSE
$GOTO 99
$ENDIF
$IF WVF = 0
X[GAX+DRILL_X] Y[GAY]
$ELSEIF WVF = 1
$GOTO 10
$ELSEIF WVF = 2
$GOTO 20
$ELSEIF WVF = 3
$GOTO 30
$ELSEIF WVF = 4
$GOTO 40
$ENDIF
$GOTO 99
''
$LL10
G0 X[GAX+ADD_HOR_35] Y[GAY]
Z[GAZ+DRILL_Z]
Y[GAY+ZS-ZR]
G1 Y[GAY+ZS-ZB] F[F]
G0 Y[GAY]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL20
G0 X[GAX+ADD_HOR_30] Y[GAY]
Z[GAZ+DRILL_Z]
X[GAX-ZS+ZR+ADD_HOR_30]
G1 X[GAX-ZS+ZB+ADD_HOR_30] F[F]
G0 X[GAX+ADD_HOR_30]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL30
G0 X[GAX+ADD_HOR_34] Y[GAY]
Z[GAZ+DRILL_Z]
Y[GAY-ZS+ZR]
G1 Y[GAY-ZS+ZB] F[F]
G0 Y[GAY]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL40
G0 X[GAX+ADD_HOR_32] Y[GAY]
Z[GAZ+DRILL_Z]
X[GAX+ZS-ZR+ADD_HOR_32]
G1 X[GAX+ZS-ZB+ADD_HOR_32] F[F]
G0 X[GAX+ADD_HOR_32]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL100
G0 X[GAX] Y[GAY]
G0 Z[AZ+PANEL_THICK]
G1 Z[ZB+PANEL_THICK] F[F]
''G0 Z[ZS+PANEL_THICK]
$LL99
$212 Set PARAMETERS before Subroutine call (APS will insert Subroutine call)
$----------------------------------------------------------------------------
DRILL cycle - traverse to next hole at RETRACT Level [ZR]
$214 First Hole
$IF T <= 16 GOTO 100
$ELSE
$GOTO 99
$ENDIF
$IF PAT(1) > 0 '' not a master driLL so exit section
$GOTO 1
$ELSE
$GOTO 2
$ENDIF
$GOTO 99
$LL1
$IF [PAT(4)]>0
G80
T0
G79 Z0
G0 X[GAX+DRILL_X] Y[GAY]
M63 T[PAT(3)]/[PAT(4)]
M13 S[S]
$ELSE
G80
T0
G79 Z0
G0 X[GAX+DRILL_X] Y[GAY]
M63 T[PAT(3)]
M13 S[S]
$ENDIF
$GOTO 3
$LL2
$LL3
$IF WVF = 0
G81 Z[ZB+PANEL_THICK] R[ZS+PANEL_THICK] F[F]
X[GAX+DRILL_X] Y[GAY]
$ELSEIF WVF = 1
$GOTO 10
$ELSEIF WVF = 2
$GOTO 20
$ELSEIF WVF = 3
$GOTO 30
$ELSEIF WVF = 4
$GOTO 40
$ENDIF
$GOTO 99
''
$LL10
''//FRONT_T35
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_35] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   Y[GAY+ZS-ZR]
G1 Y[GAY+ZS-ZB] F[F]
G0 Y[GAY]
'Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
''
$LL20
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_30] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   X[GAX-ZS+ZR+ADD_HOR_30]
G1 X[GAX-ZS+ZB+ADD_HOR_30] F[F]
G0 X[GAX+ADD_HOR_30]
  ' Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
''
$LL30
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_34] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   Y[GAY-ZS+ZR]
G1 Y[GAY-ZS+ZB] F[F]
G0 Y[GAY]
  ' Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
''
$LL40
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_32] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   X[GAX+ZS-ZR+ADD_HOR_32]
G1 X[GAX+ZS-ZB+ADD_HOR_32] F[F]
G0 X[GAX+ADD_HOR_32]
  ' Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL100
G0 X[GAX] Y[GAY]
G0 Z[AZ+PANEL_THICK]
G1 Z[ZB+PANEL_THICK] F[F]
G0 Z[ZS+PANEL_THICK]
$LL99
$----------------------------------------------------------------------------
$215 Next holes
$IF T <= 16 GOTO 100
$ELSE
$GOTO 99
$ENDIF
$IF PAT(1) > 0 '' not a master driLL so exit section
$ELSE
$GOTO 99
$ENDIF
$IF WVF = 0
X[GAX+DRILL_X] Y[GAY]
$ELSEIF WVF = 1
$GOTO 10
$ELSEIF WVF = 2
$GOTO 20
$ELSEIF WVF = 3
$GOTO 30
$ELSEIF WVF = 4
$GOTO 40
$ENDIF
$GOTO 99
''
$LL10
G0 X[GAX+ADD_HOR_35] Y[GAY]
Z[GAZ+DRILL_Z]
Y[GAY+ZS-ZR]
G1 Y[GAY+ZS-ZB] F[F]
G0 Y[GAY]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL20
G0 X[GAX+ADD_HOR_30] Y[GAY]
Z[GAZ+DRILL_Z]
X[GAX-ZS+ZR+ADD_HOR_30]
G1 X[GAX-ZS+ZB+ADD_HOR_30] F[F]
G0 X[GAX+ADD_HOR_30]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL30
G0 X[GAX+ADD_HOR_34] Y[GAY]
Z[GAZ+DRILL_Z]
Y[GAY-ZS+ZR]
G1 Y[GAY-ZS+ZB] F[F]
G0 Y[GAY]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL40
G0 X[GAX+ADD_HOR_32] Y[GAY]
Z[GAZ+DRILL_Z]
X[GAX+ZS-ZR+ADD_HOR_32]
G1 X[GAX+ZS-ZB+ADD_HOR_32] F[F]
G0 X[GAX+ADD_HOR_32]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL100
G0 X[GAX] Y[GAY]
G0 Z[AZ+PANEL_THICK]
G1 Z[ZB+PANEL_THICK] F[F]
G0 Z[ZS+PANEL_THICK]
$LL99
$216 Set PARAMETERS before Subroutine call (APS will insert Subroutine call)
$----------------------------------------------------------------------------
PECKING cycLe - traverse to next hoLe at SAFE RAPID LeveL [ZS]
$220 First hoLe
''
$221 Next hoLes
''
$222 Set PARAMETERS before Subroutine caLL (APS wiLL insert Subroutine caLL)
''
$----------------------------------------------------------------------------
PECKING cycLe - traverse to next hoLe at RETRACT LeveL [ZR]
$224 First hoLe
''
$225 Next hoLes
''
$226 Set PARAMETERS before Subroutine caLL (APS wiLL insert Subroutine caLL)
''
$----------------------------------------------------------------------------
TAPPING cycLe - traverse to next hoLe at SAFE RAPID LeveL [ZS]
$230 First hoLe
''
$231 Next hoLes
''
$232 Set PARAMETERS before Subroutine caLL (APS wiLL insert Subroutine caLL)
''
$----------------------------------------------------------------------------
TAPPING cycLe -  traverse to next hoLe at RETRACT LeveL [ZR]
$234 First hoLe
''
$235 Next hoLes
''
$236 Set PARAMETERS before Subroutine caLL (APS wiLL insert Subroutine caLL)
''
$----------------------------------------------------------------------------
BORING/REAMING/SPOT FACE etc - traverse to next hoLe at SAFE RAPID LeveL [ZS]
$240 First HoLe
$IF T <= 16 GOTO 100
$ELSE
$GOTO 99
$ENDIF

$IF PAT(1) > 0 '' not a master driLL so exit section
$GOTO 1
$ELSE
$GOTO 2
$ENDIF
$GOTO 99
$LL1
$IF [PAT(4)]>0
G80
T0
G79 Z0
G0 X[GAX+DRILL_X] Y[GAY]
M63 T[PAT(3)]/[PAT(4)]
M13 S[S]
$ELSE
G80
T0
G79 Z0
G0 X[GAX+DRILL_X] Y[GAY]
M63 T[PAT(3)]
M13 S[S]
$ENDIF
$GOTO 3
$LL2
$LL3
$IF WVF = 0
G0 X[GAX+DRILL_X] Y[GAY]
Z[ZS+PANEL_THICK]
G81 Z[ZB+PANEL_THICK] R[ZS+PANEL_THICK] F[F]
X[GAX+DRILL_X] Y[GAY]
$ELSEIF WVF = 1
$GOTO 10
$ELSEIF WVF = 2
$GOTO 20
$ELSEIF WVF = 3
$GOTO 30
$ELSEIF WVF = 4
$GOTO 40
$ENDIF
$GOTO 99
$LL10
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_35] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   Y[GAY+ZS-ZR]
G1 Y[GAY+ZS-ZB] F[F]
G0 Y[GAY]
'  Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
''
$LL20
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_30] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   X[GAX-ZS+ZR+ADD_HOR_30]
G1 X[GAX-ZS+ZB+ADD_HOR_30] F[F]
G0 X[GAX+ADD_HOR_30]
  ' Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL30
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_34] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   Y[GAY-ZS+ZR]
G1 Y[GAY-ZS+ZB] F[F]
G0 Y[GAY]
'  Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL40
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_32] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   X[GAX+ZS-ZR+ADD_HOR_32]
G1 X[GAX+ZS-ZB+ADD_HOR_32] F[F]
G0 X[GAX+ADD_HOR_32]
'Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL100
G0 X[GAX] Y[GAY]
G0 Z[AZ+PANEL_THICK]
G1 Z[ZB+PANEL_THICK] F[F]
G0 Z[ZS+PANEL_THICK]
$LL99
$----------------------------------------------------------------------------
$241 Next hoLes
$IF T <= 16 GOTO 100
$ELSE
$GOTO 99
$ENDIF
$IF PAT(1) <> 1 GOTO 99 '' not a master driLL so exit section
$IF WVF = 0
X[GAX+DRILL_X] Y[GAY]
$ELSEIF WVF = 1
$GOTO 10
$ELSEIF WVF = 2
$GOTO 20
$ELSEIF WVF = 3
$GOTO 30
$ELSEIF WVF = 4
$GOTO 40
$ENDIF
$GOTO 99
$LL10
G0 X[GAX+ADD_HOR_35] Y[GAY]
Z[GAZ+DRILL_Z]
Y[GAY+ZS-ZR]
G1 Y[GAY+ZS-ZB] F[F]
G0 Y[GAY]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL20
G0 X[GAX+ADD_HOR_30] Y[GAY]
Z[GAZ+DRILL_Z]
X[GAX-ZS+ZR+ADD_HOR_30]
G1 X[GAX-ZS+ZB+ADD_HOR_30] F[F]
G0 X[GAX+ADD_HOR_30]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL30
G0 X[GAX+ADD_HOR_34] Y[GAY]
Z[GAZ+DRILL_Z]
Y[GAY-ZS+ZR]
G1 Y[GAY-ZS+ZB] F[F]
G0 Y[GAY]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL40
G0 X[GAX+ADD_HOR_32] Y[GAY]
Z[GAZ+DRILL_Z]
X[GAX+ZS-ZR+ADD_HOR_32]
G1 X[GAX+ZS-ZB+ADD_HOR_32] F[F]
G0 X[GAX+ADD_HOR_32]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL100
G0 X[GAX] Y[GAY]
G0 Z[AZ+PANEL_THICK]
G1 Z[ZB+PANEL_THICK] F[F]
G0 Z[ZS+PANEL_THICK]
$LL99
$242 Set PARAMETERS before Subroutine caLL (APS wiLL insert Subroutine caLL)
''
$----------------------------------------------------------------------------
BORING/REAMING/SPOT FACE etc - traverse to next hoLe at RETRACT LeveL [ZR]
$244 First HoLe
$IF T <= 16 GOTO 100
$ELSE
$GOTO 99
$ENDIF
$IF PAT(1) > 0 '' not a master driLL so exit section
$GOTO 1
$ELSE
$GOTO 2
$ENDIF
$GOTO 99
$LL1
$IF [PAT(4)]>0
G80
T0
G79 Z0
G0 X[GAX+DRILL_X] Y[GAY]
M63 T[PAT(3)]/[PAT(4)]
M13 S[S]
$ELSE
G80
T0
G79 Z0
G0 X[GAX+DRILL_X] Y[GAY]
M63 T[PAT(3)]
M13 S[S]
$ENDIF
$GOTO 3
$LL2
$LL3
$IF WVF = 0
G0 X[GAX+DRILL_X] Y[GAY]
Z[ZS+PANEL_THICK]
G81 Z[ZB+PANEL_THICK] R[ZS+PANEL_THICK] F[F]
X[GAX+DRILL_X] Y[GAY]
$ELSEIF WVF = 1
$GOTO 10
$ELSEIF WVF = 2
$GOTO 20
$ELSEIF WVF = 3
$GOTO 30
$ELSEIF WVF = 4
$GOTO 40
$ENDIF
$GOTO 99
$LL10
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_35] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   Y[GAY+ZS-ZR]
G1 Y[GAY+ZS-ZB] F[F]
G0 Y[GAY]
   Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
''
$LL20
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_30] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   X[GAX-ZS+ZR+ADD_HOR_30]
G1 X[GAX-ZS+ZB+ADD_HOR_30] F[F]
G0 X[GAX+ADD_HOR_30]
   Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL30
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_34] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   Y[GAY-ZS+ZR]
G1 Y[GAY-ZS+ZB] F[F]
G0 Y[GAY]
   Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL40
G0 Z[ZS+PANEL_THICK+DRILL_Z+50]
G0 X[GAX+ADD_HOR_32] Y[GAY]
G1 Z[GAZ+DRILL_Z] F[F]
   X[GAX+ZS-ZR+ADD_HOR_32]
G1 X[GAX+ZS-ZB+ADD_HOR_32] F[F]
G0 X[GAX+ADD_HOR_32]
Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL100
G0 X[GAX] Y[GAY]
G0 Z[AZ+PANEL_THICK]
G1 Z[ZB+PANEL_THICK] F[F]
G0 Z[ZS+PANEL_THICK]
$LL99
$----------------------------------------------------------------------------
$245 Next hoLes
$IF T <= 16 GOTO 100
$ELSE
$GOTO 99
$ENDIF
$IF PAT(1) <> 1 GOTO 99 '' not a master driLL so exit section
$IF WVF = 0
X[GAX+DRILL_X] Y[GAY]
$ELSEIF WVF = 1
$GOTO 10
$ELSEIF WVF = 2
$GOTO 20
$ELSEIF WVF = 3
$GOTO 30
$ELSEIF WVF = 4
$GOTO 40
$ENDIF
$GOTO 99
$LL10
G0 X[GAX+ADD_HOR_35] Y[GAY]
Z[GAZ+DRILL_Z]
Y[GAY+ZS-ZR]
G1 Y[GAY+ZS-ZB] F[F]
G0 Y[GAY]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
''
$LL20
G0 X[GAX+ADD_HOR_30] Y[GAY]
Z[GAZ+DRILL_Z]
X[GAX-ZS+ZR+ADD_HOR_30]
G1 X[GAX-ZS+ZB+ADD_HOR_30] F[F]
G0 X[GAX+ADD_HOR_30]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
''
$LL30
G0 X[GAX+ADD_HOR_34] Y[GAY]
Z[GAZ+DRILL_Z]
Y[GAY-ZS+ZR]
G1 Y[GAY-ZS+ZB] F[F]
G0 Y[GAY]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
''
$LL40
G0 X[GAX+ADD_HOR_32] Y[GAY]
Z[GAZ+DRILL_Z]
X[GAX+ZS-ZR+ADD_HOR_32]
G1 X[GAX+ZS-ZB+ADD_HOR_32] F[F]
G0 X[GAX+ADD_HOR_32]
''Z[ZS+PANEL_THICK+DRILL_Z]
$GOTO 99
$LL100
G0 X[GAX] Y[GAY]
G0 Z[AZ+PANEL_THICK]
G1 Z[ZB+PANEL_THICK] F[F]
G0 Z[ZS+PANEL_THICK]
$LL99
$246 Set PARAMETERS before Subroutine caLL (APS wiLL insert Subroutine caLL)
''
$-------------------------- GENERAL FORMATS ---------------------------------
Separate modaL vaLues with spaces.  More than one Letter is OK eg X VX VY
$500 ModaL Text  (WiLL not be repeated IN foLLowing Lines)
$502 ModaL ABSOLUTE VaLues (WiLL not be repeated if the VALUE is the same)
X Y Z A C
$504 ModaL INCREMENTAL VaLues (WiLL not be put into NC code if VALUE is ZERO)
I J I
$510 X Y Z I J K vaLues must have + as weLL as - signs (1 = yes, 0 = no)
0
$515 Use point <.> as decimaL separator (1 = yes, 0 = use comma <,>)
1
$520 Put SUB-routines at end of main program (1 = yes, 0 = put at start)
1
$525 Quadrant Limit arcs (1 = yes, 0 = Standard APS 180 degree Limit)
1
$526 Output arcs as one move (1 = Yes, 0 = No - spLit arcs >= 180)
0
$527 Output HELICAL (XYZ) arcs as straight Line segments (1 = Yes, 0 = No)
1
'' 530 Determines which PLANAR arcs are output as straight Line segments.
$530 0=None, 1=ALL, 2=ALL Except HorizontaL (XY), 3=Except HorizontaL and VerticaL (YZ or XZ)
2
$532 If arcs are straight Line segments, give chord error (mm or inches)
.1
$540 Suppress Operations List, START and Comments IN NC code (1 = yes, 0 = No)
1
$545
1
''Set $560 - $580 aLL to 0 if machine is 3-axis.
$560 4/5 axis Programming point: (1 = pivot, 0 = tooL tip)
0
$562 4/5 axis TooL C/L offset from pivot point IN X
0
$563 4/5 axis TooL C/L offset from pivot point IN Y
0
$565 4/5 axis TooL HoLder Length
100
$570 4/5 axis MAX angLe (degrees). Set to 0 to indicate 3 - axis machine.
90
$580 Use MuLti-PLanes or MuLti-Datums (1 = Yes, 0 = No)
1
$582 MuLti-PLane or Datums: SeLect Work PLane BEFORE/AFTER TooL Change
0
''582 is for when Work PLane and TooL are changed AT SAME TIME
''    0 = SeLect TooL before Work PLane        (Use $80 then $88)
''    1 = SeLect Work PLane before TooL Change (Use $88 then $80)
''    2 = Change both at same time             (Use $89 onLy)
$584 Orientation of LocaL X or Y axis. 0=Don't care, 1=X HorizontaL, 2=Y HorizontaL
0
$-------------------------- NUMBER FORMATS ----------------------------------
$700 SUBROUTINE Number format
6
$701 Leading figures
0
$702 Figures after point
0
$705 Subroutine start number
10
$----------------------------------------------------------------------------
$710 LINE NUMBER format
6
$711 Leading figures
0
$712 Figures after point
0
$715 Line start number
10
$716 Line number increment
10
$----------------------------------------------------------------------------
$720 X Y Z vaLues format
1
$721 Leading figures
0
$722 Figures after point
3
$----------------------------------------------------------------------------
$730 ARC centre/radius format
1
$731 Leading figures
0
$732 Figures after point
2
$----------------------------------------------------------------------------
$740 SPINDLE SPEED format
1
$741 Leading figures
0
$742 Figures after point
0
$743 Maximum SpindLe Speed
24000
$744 Fixed Speeds (eg 100, 200, 1000, 2000 ...      0 = speed is variabLe)
0
$NOTE: Fixed speeds can use more than one Line. 80 chars per Line maximum
       APS wiLL seLect the nearest Lower vaLue to the caLcuLated vaLue.
       $745 beLow onLy appLies if $744 is 0 - ie variabLe speed range.
$745 Round Speed Up/Down to Nearest: (.1 or 1 or 10 ...  0 = don't round)
10
$----------------------------------------------------------------------------
$750 MACHINING FEED format
6
$751 Leading figures
0
$752 Figures after point
0
$753 Maximum Feed Rate (Use mm/MIN or IN/MIN as appropriate for this Post)
50000 mm/MIN
$755 Round Feed Up/Down to Nearest: (.1 or 1 or 10 ...  0 = don't round)
10
$----------------------------------------------------------------------------
$760 TOOL NUMBER format
6
$761 Leading figures
1
$762 Figures after point
0
$------------------------ RAPIDS and TOOL CHANGE TIMES ----------------------
Use mm/MIN or IN/MIN as appropriate for this Post.
$900 XY Rapid Speed
75000 mm/MIN
$901 Z Rapid Speed
1500 mm/MIN
$902 Time to change tooL (seconds)
10
$--------------------------- USER VARIABLES ---------------------------------
ALL user variabLes must be decLared. VariabLe names can be up to 20 chars.
Prompts can be up to 50 chars MAX and can incLude a defauLt inside < >.
Put (" ") as format for a text variabLe. Put ( ) as the format of any numeric
variabLe which is to have the same format as X Y (Z) moves. If a different
format is required, put (Format, Lead figs, TraiL figs) eg (6,0,0) = Integer.

$1000  VARIABLE  (format)  "Prompt  <default>"  '' Remark for your info.
NEST_SPLIT_SET ()
NEST_BEGIN_MARK ("") = ""    '' ">>>!#"
NEST_END_MARK ("") = ""      '' "<<<!#"
DEBUG (6,0,0) <0>
LEFT (" ")
RIGHT (" ")
SAW_D ( ) "Saw Diameter (MM) <120>"
DATE ("9")
PANEL_X (1,0,2) "Panel Size X <800>"
PANEL_Y (1,0,2) "Panel Size Y <500>"
PANEL_Z (1,0,2) "Panel Thickness <18>"
UAO ()
FIRST_RAPID ()
SAW_HEIGHT ()
PANEL_THICK ( )
HOME_NUMBER (6,0,0) <1>  ''"Home Number 1~10 <1>" ''Integer with up to 4 lead zeros
DRILL_X ()
DRILL_Y ()
DRILL_Z ()
ADD_HOR_30 ()
ADD_HOR_32 ()
ADD_HOR_34 ()
ADD_HOR_35 ()
ADD_HOR_36 ()
PANEL_THICK ()
LAYER ()
MATERIAL_NAME ("")
WIDTH("")
PANEL_X ()
PANEL_Y ()
PANEL_Z ()
SUB_SPLIT_SET ()
      SUB_BEGIN_MARK ("") = ""    '' ">>>!@"
      SUB_END_MARK ("") = ""      '' "<<<!@"
$-------------------------- USER DEFINED CODE -------------------------------
Prompts up to 50 chars MAX. Variable names up to 20 chars. Any $number IN the
range $1100 - $1119 can be used for each definition. First line after $number
appears IN the first dialog box. Lines up to first $ line appear in second
dialog box. Lines up to next $ line will be added/inserted in NC program.

$-------------------------- USER DEFINED CYCLES -------------------------------
This section applies only to GEOMETRIES (not toolpaths). Use for machine or
work specific NC code (eg canned cycles) which require geometry coordinates.
Any $number IN the range $1200 - $1249 can be used for each definition. First
line after $number appears IN the first dialog box. Next lines up to first $
are variables with prompts (which must be declared IN $1000) which are to
appear IN second dialog box. Lines up to next $ line will be added at the end
of NC program so far created.
$1200
$--------------------------- PATH ATTRIBUTES --------------------------------
Convert Attributes used in the API to PAT(). For example:
1 = LICOMUKDMB1
means PAT(1) has the value of path.Attribute("LICOMUKDMB1").

$3000
1 = LicomUKDWMultiDrillMasterSlave
2 = LicomUSMGMultiDrillUsed
3 = CVMultiDrillMasterTool                 '' Master Tool Number + CVToolNumberOffset in $9000
4 = CVMultiDrillSlaveTools                 '' Slave Tools using format specified by CVPrefixString, CVDelimitString, CVToolNumberOffset, and CVToolNumberFormat in $9000
5 = CVMultiDrillSumTools                   '' Binary sum using tool number
6 = CVMultiDrillSumIndex                   '' Binary sum using tool index
7 = LicomUKMPAMultiDrillOffsetXToolMaster  '' Master spindle X-axis offset
8 = LicomUKMPAMultiDrillOffsetYToolMaster  '' Master spindle Y-axis offset

$9000
CVHideLegacyAttrib = 0          '' If non-zero hides most of the Licom path attributes (PAT's)
CVPrefixString = ""             '' Is placed prior to each slave drill
CVDelimitString = ","           '' Is placed between each slave drill (use CRLF to place each slave drill tool on it's own line)
CVToolNumberOffset = 0          '' Increases the tool number by this amount
CVToolNumberFormat = "0"        '' Sets the format for the tool number
CVLimitGangDrillToOneAxis = 0   '' 0 (Default) - Do not limit gang drill optimization to operations with the same X or Y-axis offset, 1 - Limit gang drill optimization to operations with the same X or Y-axis offset
'' CVCommentString (below) specifies character(s) that will precede comment line(s) in NC output. NOTE: Do not enclose character(s) in quotes or place a comment on the same line as CVCommentString =
CVCommentString =;

$----------------------------- END OF POST ----------------------------------

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| 喜羊羊2242 发表于 2026-3-11 11:34
警告:有些刀具路径有G41/42补正但没有进/出刀路径NC-程式可能会错误!选取消可放弃
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - 52pojie.cn ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2026-3-17 13:40

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表