[FeatureCam] problema post Fanuc 0iTC

Sezione dedicata al Cad/Cam.
Subforum:
Artcam
Rispondi
Phantom100cc
Newbie
Newbie
Messaggi: 2
Iscritto il: mercoledì 3 febbraio 2021, 0:08

[FeatureCam] problema post Fanuc 0iTC

Messaggio da Phantom100cc » mercoledì 3 febbraio 2021, 15:07

Buongiorno,
ho un problema con un post processor per Fanuc 0iTC su FeatureCam 2012

Premessa, su un PC abbiamo installato FeatureCam 2018 e il post funziona correttamene. Per problemi tecnici legati alle licenze scolastiche che utilizziamo nella scuola dove insegno, FeatureCam 2018 non è momentaneamente disponibili.

Su un PC portatile abbiamo ancora FeatureCam 2012 perfettamente funzionante. PC utilizzato direttamente in officina con gli studenti per le esercitazioni CAM a bordo macchina.

Il post processor in questione è stato acquistato nel 2018 insieme alle licenze per il FeatureCam 2018 per poterlo far girare su FeatureCam 2012 ho dovuto aprire nell'XBuild il post, esportare il file CNC, aprire un nuovo file XBuild e importare il post per poi salvarlo e ottenere un corretto funzionamento con il FeatureCam 2012. IL POST FUNZIONA, anche la lavorazione con l'asse C, ma ho le quote in X radiali e non diametrali, son 3 giorni che ci sbattiamo la testa ma non ne veniamo a capo.

allego foto del problema riscontrato e del perchè ho dovuto rifare il file .cnc con xbuild

Con quale parametro, o con quale comando in edit posso passare da quote in X radiali a diametrali.

PS

Se uso un post di tornitura già presente nella libreria di un altro CN (esempio fagor o siemens) le quote sono diametrali.

Vi ringrazio.

Allego il FILE .TXT dell'esportazione del post in questione

' Welcome to the text version of the post!
' You have just exported the post formats to a text file, where you can edit them.
' You can get these formats back into a post file by running XBUILD and then choosing File >> Import Formats.
' Doing so will overwrite all of the formats of the currently open post, replacing them with these formats.
' Note: If you remove any of the formats from this text file, then the format will be cleared when reimported into XBUILD.
' For details, consult XBUILD help.




##### BEGIN PROGRAM START FORMAT #####

[:NewX=0]
[:NewC=0]
[:OldX=0]
[:OldC=0]
[:RoughStart=1]
% <13><10>
:<PROG-NAME>(<FM-NAME>)<13><10>
[# declare variables ]
[:n_num=1][# used to increment seq num at tool changes]
[:polar_interp=0][# used to determine if polar interp is active]
[:prev_oper_type=" "][# used to determine spindle and c axis behavior at toolchange and end of program]
[:curr_oper_type=" "]
[:debug=0][# used to show/unshow debugging information]
[# ]
<IF><MILLING><THEN>[# Output if a milling operation ]
<ENDIF>
M5<EOB>
T<TOOL><TOOL><EOB>
<IF><CSS-ON><THEN>
{G92 S<SP-MAX>}<EOB>
<ENDIF>
<F-UNITS><EOB>
<IF><TURNING><THEN>[# Output if a turning operation ]
[:prev_oper_type="TURN"][# main spindle engaged ]
<IF><CSS-ON><THEN>[# Output if constant surface speed is on ]
G96 S<CSS-SPEED><SPINDLE><EOB>
<ENDIF>
<IFNOT><CSS-ON><THEN>[# Output if constant surface speed is off ]
G97 S<SPEED> <SPINDLE><EOB>
<ENDIF>
<MOTION> Z<Z-COORD> <EOB>
X<X-COORD><COOLANT><EOB>
<ENDIF>
<IF><MILLING><THEN>[# Output if a milling operation ]
[:prev_oper_type="MILL/DRILL"][# rotary tool is engaged ]
M35<EOB>
G28H0<EOB>
<F-UNITS><EOB>
<IF>[eq(<SPINDLE>,"M3")]<THEN>
G97 S<SPEED> M34<EOB>
<ENDIF>
<IF>[eq(<SPINDLE>,"M4")]<THEN>
G97 S<SPEED> M33<EOB>
<ENDIF>
<IF><ROTARY-OD><THEN>
<MOTION> Z<Z-COORD> <EOB>
X<X-COORD> <COOLANT><EOB>
C<ROT1-WIND><EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
<IF><DRILLING><THEN>
[:NewX=(radiusxy(<X-COORD>, <Y-COORD>)*2)]
[:NewC=(anglexy(<X-COORD>, <Y-COORD>))]
<MOTION>Z<Z-COORD> <EOB>
X[NewX] <COOLANT><EOB>
C[NewC]<EOB>
[:OldX=NewX]
[:OldC=NewC]
<ENDIF>
<IFNOT><DRILLING><THEN>
G112<EOB>
[:<MOTION>="G1"]
[:<FEED>=3000.0]
<MOTION> Z<Z-COORD> F<FEED><EOB>
X<X-COORD> <COOLANT><EOB>
C<Y-COORD><EOB>
[:polar_interp=1]<EOB>
<ENDIF>
<ENDIF>
<ENDIF>

##### END PROGRAM START FORMAT #####


##### BEGIN TOOL CHANGE FORMAT #####

<IF>[eq(polar_interp,1)]<THEN>
G113<EOB>
<ENDIF>
[:polar_interp=0]
<IF><TURNING><THEN>
[:curr_oper_type="TURN"]<EOB>
<ENDIF>
<IF><MILLING><THEN>
[:curr_oper_type="MILL/DRILL"]<EOB>
<ENDIF>
<IF>[eq(prev_oper_type,"MILL/DRILL")]<THEN>
<IFNOT>[eq(curr_oper_type,"MILL/DRILL")]<THEN>
G28 H0<EOB>
M5<EOB>
<ENDIF>
<ENDIF>
M9<EOB>
<IF><TURNING><THEN>
<MOTION>X<X-CHANGE><EOB>
Z<Z-CHANGE><EOB>
<ENDIF>
<IF><MILLING><THEN>
<IF><DRILLING><THEN>
<MOTION>X<X-CHANGE><EOB>
Z<Z-CHANGE><EOB>
<ENDIF>
<IFNOT><DRILLING><THEN>
<MOTION>X<X-CHANGE><EOB>
Z<Z-CHANGE><EOB>
<ENDIF>
<ENDIF>
<IF><MILLING><THEN>[# Output if a milling operation ]
<ENDIF>
T<TOOL><TOOL><EOB>
<IF><CSS-ON><THEN>
G92 S<SP-MAX><EOB>
<ENDIF>
<F-UNITS><EOB>
<IF><TURNING><THEN>[# Output if a turning operation ]
[:prev_oper_type="TURN"][# main spindle engaged ]
<IF><CSS-ON><THEN>[# Output if constant surface speed is on ]
G96 S<CSS-SPEED><SPINDLE><EOB>
<ENDIF>
<IFNOT><CSS-ON><THEN>[# Output if constant surface speed is off ]
G97 S<SPEED> <SPINDLE><EOB>
<ENDIF>
<MOTION> Z<Z-COORD><EOB>
X<X-COORD> <COOLANT><EOB>
<ENDIF>
<IF><MILLING><THEN>[# Output if a milling operation ]
[:prev_oper_type="MILL/DRILL"][# rotary tool is engaged ]
M35<EOB>
G28H0<EOB>
<F-UNITS><EOB>
<IF>[eq(<SPINDLE>,"M3")]<THEN>
G97 S<SPEED> M33<EOB>
<ENDIF>
<IF>[eq(<SPINDLE>,"M4")]<THEN>
G97 S<SPEED> M34<EOB>
<ENDIF>
<IF><ROTARY-OD><THEN>
<MOTION> Z<Z-COORD><EOB>
X<X-COORD> <COOLANT><EOB>
C<ROT1-WIND><EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
<IF><DRILLING><THEN>
[:NewX=(radiusxy(<X-COORD>, <Y-COORD>)*2)]
[:NewC=(anglexy(<X-COORD>, <Y-COORD>))]
<MOTION>Z<Z-COORD> <EOB>
X[NewX] <COOLANT><EOB>
C[NewC]<EOB>
[:OldX=NewX]
[:OldC=NewC]
<ENDIF>
<IFNOT><DRILLING><THEN>
G112<EOB>
[:<MOTION>="G1"]
[:<FEED>=3000.0]
<MOTION> Z<Z-COORD> F<FEED><EOB>
X<X-COORD> <COOLANT><EOB>
C<Y-COORD><EOB>
[:polar_interp=1]<EOB>
<ENDIF>
<ENDIF>
<ENDIF>

##### END TOOL CHANGE FORMAT #####


##### BEGIN SEGMENT START FORMAT #####

<IF>[eq(polar_interp,1)]<THEN>
<IF><DRILLING><THEN>
G113<EOB>
[:polar_interp=0]<EOB>
<ENDIF>
<ENDIF>
<IF>[eq(prev_oper_type,"MILL/DRILL")]<THEN>
<IFNOT>[eq(curr_oper_type,"MILL/DRILL")]<THEN>
M5<EOB>
<ENDIF>
<ENDIF>
<IF><TURNING><THEN>[# Output if a turning operation ]
[:prev_oper_type="TURN"][# main spindle engaged ]
<IF><CSS-ON><THEN>[# Output if constant surface speed is on ]
{G92 S<SP-MAX>}<EOB>
{<F-UNITS>}<EOB>
{G96 S<CSS-SPEED>}{<SPINDLE>}<EOB>
<ENDIF>
<IFNOT><CSS-ON><THEN>[# Output if constant surface speed is off ]
{<F-UNITS>}<EOB>
{G97 S<SPEED>} {<SPINDLE>}<EOB>
<ENDIF>
<MOTION> X<X-COORD> Z<Z-COORD>{<COOLANT>}<EOB>
<ENDIF>
<IF><MILLING><THEN>[# Output if a milling operation ]
[:prev_oper_type="MILL/DRILL"][# rotary tool is engaged ]
M35<EOB>
G28H0<EOB>
<F-UNITS><EOB>
<IF>[eq(<SPINDLE>,"M3")]<THEN>
G97 S<SPEED> M33<EOB>
<ENDIF>
<IF>[eq(<SPINDLE>,"M4")]<THEN>
G97 S<SPEED> M34<EOB>
<ENDIF>
<IF><ROTARY-OD><THEN>
<MOTION> X<X-COORD><EOB>
Z<Z-COORD> <COOLANT><EOB>
{C<ROT1-WIND>}<EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
<IF><DRILLING><THEN>
[:NewX=(radiusxy(<X-COORD>, <Y-COORD>)*2)]
[:NewC=(anglexy(<X-COORD>, <Y-COORD>))]
<MOTION>Z<Z-COORD> <EOB>
X[NewX] <COOLANT><EOB>
C[NewC]<EOB>
[:OldX=NewX]
[:OldC=NewC]
<ENDIF>
<IFNOT><DRILLING><THEN>
<IFNOT>[eq(polar_interp,1)]<THEN>
{<F-UNITS>}<EOB>
G112<EOB>
[:polar_interp=1]<EOB>
<ENDIF>
[:<MOTION>="G1"]
[:<FEED>=3000.0]
<MOTION> Z<Z-COORD> F<FEED><EOB>
X<X-COORD> <COOLANT><EOB>
{C<Y-COORD>}<EOB>
<ENDIF>
<ENDIF>
<ENDIF>

##### END SEGMENT START FORMAT #####


##### BEGIN PROGRAM END FORMAT #####

[# ]
<IF>[eq(polar_interp,1)]<THEN>
G113<EOB>
[:polar_interp=0]
<ENDIF>
<IF>[eq(prev_oper_type,"MILL/DRILL")]<THEN>
G28 H0<EOB>
M5<EOB>
M90<EOB>
<ENDIF>
M9<EOB>
<IF>[eq(prev_oper_type,"MILL/DRILL")]<THEN>
<IF><DRILLING><THEN>
<MOTION>X<X-CHANGE><EOB>
Z<Z-CHANGE><EOB>
<ENDIF>
<IFNOT><DRILLING><THEN>
<MOTION>X<X-CHANGE><EOB>
Z<Z-CHANGE><EOB>
<ENDIF>
<ENDIF>
<IFNOT>[eq(prev_oper_type,"MILL/DRILL")]<THEN>
<MOTION> X<X-CHANGE><EOB>
<BOL> Z<Z-CHANGE> M5<EOB>
<ENDIF>
M30<EOB>
%<EOB>

##### END PROGRAM END FORMAT #####


##### BEGIN RAPID MOVE FORMAT #####

<IF><TURNING><THEN>
{<MOTION> }{X<X-COORD> }{Z<Z-COORD>}<EOB>
<ENDIF>
<IF><MILLING><THEN>
<IF><ROTARY-OD><THEN>
{<MOTION> }{X<X-COORD> }{C<ROT1-ANSI> }{Z<Z-COORD> }<EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
<IF>[eq(polar_interp,0)]<THEN>
[:NewX=(radiusxy(<X-COORD>, <Y-COORD>)*2)]
[:NewC=(anglexy(<X-COORD>, <Y-COORD>))]
<IFNOT>[apxeq(NewX, OldX, 1e-3)]<THEN>
{<MOTION> }X[NewX]
<IFNOT>[apxeq(NewC, OldC, 1e-3)]<THEN>
C[NewC]
<ENDIF>
<EOB>
<ENDIF>
<IF>[apxeq(NewX, OldX, 1e-3)]<THEN>
<IFNOT>[apxeq(NewC, OldC, 1e-3)]<THEN>
{<MOTION> }C[NewC]<EOB>
<ENDIF>
<ENDIF>
[:OldX=NewX]
[:OldC=NewC]
<ENDIF>
<IF>[eq(polar_interp,1)]<THEN>
[:<MOTION>="G1"]
[:<FEED>=3000.0]
{<MOTION> }{X<X-COORD> }{C<Y-COORD> }{Z<Z-COORD> }{F<FEED>}<EOB>
<ENDIF>
<ENDIF>
<ENDIF>

##### END RAPID MOVE FORMAT #####


##### BEGIN LINEAR MOVE FORMAT #####

<IF>[eq(RoughStart,1)]<THEN>
<IF><TCAN-START><THEN>
{N<SEQ>}
<ENDIF>
<IF><TCAN-END><THEN>
{N<SEQ>}
<ENDIF>
<ENDIF>
<IF><TURNING><THEN>
{<MOTION> }
<IF><TCAN-START><THEN>
<PRO-COMP><32>
<ENDIF>
<IF><TCAN-END><THEN>
<PRO-COMP><32>
<ENDIF>
<IFNOT><TCAN-CYCLE><THEN>
{<COMP-STAT> }
<ENDIF>
{X<X-COORD> }{Z<Z-COORD> }
<IF><TCAN-START><THEN>
F<PRO-FEED>
<ENDIF>
<IFNOT><TCAN-CYCLE><THEN>
{F<FEED>}
<ENDIF>
<EOB>
<ENDIF>
[# ]
<IF><MILLING><THEN>
<IF>[eq(polar_interp,1)]<THEN>
{<MOTION> }
<IF><TCAN-START><THEN>
<PRO-COMP><32>
<ENDIF>
<IF><TCAN-END><THEN>
<PRO-COMP><32>
<ENDIF>
<IFNOT><TCAN-CYCLE><THEN>
{G1 <COMP-STAT> }
<ENDIF>
{X<X-COORD> }{C<Y-COORD> }{Z<Z-COORD> }{F<FEED>}<EOB>
<ENDIF>
<IF>[eq(polar_interp,0)]<THEN>
{<MOTION> }
<IF><TCAN-START><THEN>
<PRO-COMP><32>
<ENDIF>
<IF><TCAN-END><THEN>
<PRO-COMP><32>
<ENDIF>
<IFNOT><TCAN-CYCLE><THEN>
{G1 <COMP-STAT> }
<ENDIF>
{X<X-COORD> }{C<ROT1-WIND> }{Z<Z-COORD> }{F<ANG-CFEED>} <EOB>
<ENDIF>
<ENDIF>

##### END LINEAR MOVE FORMAT #####


##### BEGIN CIRCULAR MOVE FORMAT #####

<IF>[eq(polar_interp,1)]<THEN>
{<MOTION> }{X<X-COORD> }{C<Y-COORD> }R<S-RAD> {F<FEED>}<EOB>
<ENDIF>
<IF>[eq(polar_interp,0)]<THEN>
{<MOTION> }{X<X-COORD> }{Z<Z-COORD> }R<S-RAD> {F<FEED>}<EOB>
<ENDIF>

##### END CIRCULAR MOVE FORMAT #####


##### BEGIN OPEN MACRO FORMAT #####


##### END OPEN MACRO FORMAT #####


##### BEGIN CLOSE MACRO FORMAT #####


##### END CLOSE MACRO FORMAT #####


##### BEGIN MACRO CALL FORMAT #####


##### END MACRO CALL FORMAT #####


##### BEGIN IN_MACRO LINEAR MOVE FORMAT #####


##### END IN_MACRO LINEAR MOVE FORMAT #####


##### BEGIN IN_MACRO CIRCULAR MOVE FORMAT #####


##### END IN_MACRO CIRCULAR MOVE FORMAT #####


##### BEGIN DRILL CYCLE FORMAT #####

{C<ROT1-ANSI>}<EOB>
<IF><TURNING><THEN>
G81 {<CYCLE-RTRCT> }X0 Z-<DEPTH> F<FEED><EOB>
<ENDIF>
<IF><MILLING><THEN>
<IFNOT><ROTARY-OD><THEN>
Z<ABS-ZCLEAR><EOB>
G83 {<CYCLE-RTRCT> }Z<ABS-DEPTH> R<ZCLEAR> F<FEED><EOB>
<ENDIF>
<IF><ROTARY-OD><THEN>
G0 X[<ABS-ZCLEAR>*2]<EOB>
G87 {<CYCLE-RTRCT> }X[<ABS-DEPTH>*2] R<ZCLEAR> F<FEED><EOB>
<ENDIF>
<ENDIF>

##### END DRILL CYCLE FORMAT #####


##### BEGIN SPOT FACE CYCLE FORMAT #####

{C<ROT1-ANSI>}<EOB>
<IF><TURNING><THEN>
G81 {<CYCLE-RTRCT> }X0 Z-<DEPTH> F<FEED><EOB>
<ENDIF>
<IF><MILLING><THEN>
<IF><ROTARY-OD><THEN>
G0 X[<ABS-ZCLEAR>*2]<EOB>
G87 {<CYCLE-RTRCT> }X[<ABS-DEPTH>*2] R<ZCLEAR> P<DWELL> F<FEED><EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
Z<ABS-ZCLEAR><EOB>
G83 {<CYCLE-RTRCT> }Z<ABS-DEPTH> R<ZCLEAR> P<DWELL> F<FEED><EOB>
<ENDIF>
<ENDIF>

##### END SPOT FACE CYCLE FORMAT #####


##### BEGIN DEEP HOLE CYCLE FORMAT #####

{C<ROT1-ANSI>}<EOB>
<IF><TURNING><THEN>
G83 {<CYCLE-RTRCT> }X0 Z-<DEPTH> Q<STEP1> F<FEED><EOB>
<ENDIF>
<IF><MILLING><THEN>
<IF><ROTARY-OD><THEN>
G0 X[<ABS-ZCLEAR>*2]<EOB>
G87 {<CYCLE-RTRCT> }X[<ABS-DEPTH>*2] R<ZCLEAR> Q<STEP1> F<FEED><EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
Z<ABS-ZCLEAR><EOB>
G83 {<CYCLE-RTRCT> }Z<ABS-DEPTH> R<ZCLEAR> Q<STEP1> F<FEED><EOB>
<ENDIF>
<ENDIF>

##### END DEEP HOLE CYCLE FORMAT #####


##### BEGIN TAP CYCLE FORMAT #####

[:NewFeed=<PITCH>*<SPEED>]
<IF><TURNING><THEN>
G84 {<CYCLE-RTRCT> }X0.0 Z-<DEPTH> R<CLEARANCE> P<DWELL> F<FEED> <EOB>
<ENDIF>
<IF><MILLING><THEN>
<IF><ROTARY-OD><THEN>
G0 X[<ABS-ZCLEAR>*2]<EOB>
G88 {<CYCLE-RTRCT> }X[<ABS-DEPTH>*2] R<ZCLEAR> K1 F[NewFeed]<EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
Z<ABS-ZCLEAR><EOB>
G84 {<CYCLE-RTRCT> }Z<ABS-DEPTH> R<ZCLEAR> P<P1> K1 F[NewFeed]<EOB>
<ENDIF>
<ENDIF>

##### END TAP CYCLE FORMAT #####


##### BEGIN BORE (F-F) CYCLE FORMAT #####

{C<ROT1-ANSI>}<EOB>
<IF><MILLING><THEN>
<IF><ROTARY-OD><THEN>
G0 X[<ABS-ZCLEAR>*2]<EOB>
G89 {<CYCLE-RTRCT> }X<ABS-DEPTH> R<ZCLEAR> P<DWELL> K1 F<FEED><EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
Z<ABS-ZCLEAR><EOB>
G85 {<CYCLE-RTRCT> }Z<ABS-DEPTH> R<ZCLEAR> P<DWELL> K1 F<FEED><EOB>
<ENDIF>
<ENDIF>

##### END BORE (F-F) CYCLE FORMAT #####


##### BEGIN CHIP BREAK CYCLE FORMAT #####

{C<ROT1-ANSI>}<EOB>
<IF><TURNING><THEN>
G83 {<CYCLE-RTRCT> }X0 Z-<DEPTH> Q<STEP1> F<FEED><EOB>
<ENDIF>
<IF><MILLING><THEN>
<IF><ROTARY-OD><THEN>
G0 X[<ABS-ZCLEAR>*2]<EOB>
G87 {<CYCLE-RTRCT> }X[<ABS-DEPTH>*2] R<ZCLEAR> Q<STEP1> F<FEED><EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
Z<ABS-ZCLEAR><EOB>
G83 {<CYCLE-RTRCT> }Z<ABS-DEPTH> R<ZCLEAR> Q<STEP1> F<FEED><EOB>
<ENDIF>
<ENDIF>

##### END CHIP BREAK CYCLE FORMAT #####


##### BEGIN BORE (F-D-F) CYCLE FORMAT #####

{C<ROT1-ANSI>}<EOB>
<IF><MILLING><THEN>
<IF><ROTARY-OD><THEN>
G0 X[<ABS-ZCLEAR>*2]<EOB>
G89 {<CYCLE-RTRCT> }X<ABS-DEPTH> R<ZCLEAR> P<DWELL> K1 F<FEED><EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
Z<ABS-ZCLEAR><EOB>
G85 {<CYCLE-RTRCT> }Z<ABS-DEPTH> R<ZCLEAR> P<DWELL> K1 F<FEED><EOB>
<ENDIF>
<ENDIF>

##### END BORE (F-D-F) CYCLE FORMAT #####


##### BEGIN CANNED MOVE FORMAT #####

<IF><MILLING><THEN>
<IF><ROTARY-OD><THEN>
{<CYCLE-RTRCT> }{Z<Z-COORD> }{C<ROT1-ANSI> }<EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
[:NewX=(radiusxy(<X-COORD>, <Y-COORD>)*2)]
[:NewC=(anglexy(<X-COORD>, <Y-COORD>))]
{<CYCLE-RTRCT> }X[NewX] C[NewC]<EOB>
[:OldX=NewX]
[:OldC=NewC]
<ENDIF>
<ENDIF>

##### END CANNED MOVE FORMAT #####


##### BEGIN CYCLE CANCEL FORMAT #####

<IF><TURNING><THEN>
G80<EOB>
<ENDIF>
<IF><MILLING><THEN>
G80 <EOB>
<ENDIF>

##### END CYCLE CANCEL FORMAT #####


##### BEGIN THREAD CYCLE FORMAT #####

G76P<NUM-SPRING><RTR-ANGLE90><TIP-ANGLE>Q<STEP1>R<MIN-INFEED><EOB>
<MOTION>{X<X-COORD>}{Z<Z-COORD>}P<THRD-DEPTH>Q<STEP2>F<LEADZ><EOB>

##### END THREAD CYCLE FORMAT #####


##### BEGIN Z RAPID MOVE FORMAT #####

<IF><TURNING><THEN>
{<MOTION> }{X<X-COORD> }{Z<Z-COORD>}<EOB>
<ENDIF>
<IF><MILLING><THEN>
<IF><ROTARY-OD><THEN>
{<MOTION> }{X<X-COORD> }{C<ROT1-ANSI> }{Z<Z-COORD> }<EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
<IF>[eq(polar_interp,0)]<THEN>
[:NewX=(radiusxy(<X-COORD>, <Y-COORD>)*2)]
[:NewC=(anglexy(<X-COORD>, <Y-COORD>))]
<IFNOT>[apxeq(NewX, OldX, 1e-3)]<THEN>
{<MOTION> }X[NewX]
<IFNOT>[apxeq(NewC, OldC, 1e-3)]<THEN>
C[NewC]
<ENDIF>
<EOB>
<ENDIF>
<IF>[apxeq(NewX, OldX, 1e-3)]<THEN>
<IFNOT>[apxeq(NewC, OldC, 1e-3)]<THEN>
{<MOTION> }C[NewC]<EOB>
<ENDIF>
<ENDIF>
[:OldX=NewX]
[:OldC=NewC]
<ENDIF>
<IF>[eq(polar_interp,1)]<THEN>
[:<MOTION>="G1"]
[:<FEED>=3000.0]
{<MOTION> }{X<X-COORD> }{C<Y-COORD> }{Z<Z-COORD> }{F<FEED>}<EOB>
<ENDIF>
<ENDIF>
<ENDIF>

##### END Z RAPID MOVE FORMAT #####


##### BEGIN FILE END FORMAT #####


##### END FILE END FORMAT #####


##### BEGIN GROOVE SIMPLE/COMPUTED FORMAT #####

{<MOTION>}{X<X-COORD>}{Z<Z-COORD>}{F<FEED>}<EOB>

##### END GROOVE SIMPLE/COMPUTED FORMAT #####


##### BEGIN CATCHER IN FORMAT #####


##### END CATCHER IN FORMAT #####


##### BEGIN CATCHER OUT FORMAT #####


##### END CATCHER OUT FORMAT #####


##### BEGIN ROUGH CYCLE START FORMAT #####

<IF><FACE-BFACE><THEN>
G72 W<DEPTH> R<RTR-LENGTH><EOB>
G72 P<SEQ-START> Q<SEQ-END> U<X-ALLOW> W<Z-ALLOW> {F<FEED>}<EOB>
<ENDIF>
<IFNOT><FACE-BFACE><THEN>
G71 U<DEPTH> R<RTR-LENGTH><EOB>
G71 P<SEQ-START> Q<SEQ-END> U<X-ALLOW> W<Z-ALLOW> {F<FEED>}<EOB>
<ENDIF>
[:RoughStart=1]

##### END ROUGH CYCLE START FORMAT #####


##### BEGIN ROUGH CYCLE END FORMAT #####


##### END ROUGH CYCLE END FORMAT #####


##### BEGIN FINISH CYCLE START FORMAT #####

G70 P<SEQ-START> Q<SEQ-END><EOB>

##### END FINISH CYCLE START FORMAT #####


##### BEGIN FINISH CYCLE END FORMAT #####


##### END FINISH CYCLE END FORMAT #####


##### BEGIN GROOVE PATH START FORMAT #####


##### END GROOVE PATH START FORMAT #####


##### BEGIN GROOVE PATH END FORMAT #####


##### END GROOVE PATH END FORMAT #####


##### BEGIN BORE (F-S-R) CYCLE FORMAT #####

{C<ROT1-ANSI>}<EOB>
<IF><MILLING><THEN>
<IF><ROTARY-OD><THEN>
G0 X[<ABS-ZCLEAR>*2]<EOB>
G89 {<CYCLE-RTRCT> }X<ABS-DEPTH> R<ZCLEAR> P<DWELL> K1 F<FEED><EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
Z<ABS-ZCLEAR><EOB>
G85 {<CYCLE-RTRCT> }Z<ABS-DEPTH> R<ZCLEAR> P<DWELL> K1 F<FEED><EOB>
<ENDIF>
<ENDIF>

##### END BORE (F-S-R) CYCLE FORMAT #####


##### BEGIN BORE (No Drag) CYCLE FORMAT #####

{C<ROT1-ANSI>}<EOB>
<IF><MILLING><THEN>
<IF><ROTARY-OD><THEN>
G0 X[<ABS-ZCLEAR>*2]<EOB>
G89 {<CYCLE-RTRCT> }X<ABS-DEPTH> R<ZCLEAR> P<DWELL> K1 F<FEED><EOB>
<ENDIF>
<IFNOT><ROTARY-OD><THEN>
Z<ABS-ZCLEAR><EOB>
G85 {<CYCLE-RTRCT> }Z<ABS-DEPTH> R<ZCLEAR> P<DWELL> K1 F<FEED><EOB>
<ENDIF>
<ENDIF>

##### END BORE (No Drag) CYCLE FORMAT #####


##### BEGIN BAR FEED FORMAT #####


##### END BAR FEED FORMAT #####


##### BEGIN SPINDLE FORMAT #####


##### END SPINDLE FORMAT #####


##### BEGIN DWELL FORMAT #####


##### END DWELL FORMAT #####


##### BEGIN SPINDLE CHANGE FORMAT #####


##### END SPINDLE CHANGE FORMAT #####


##### BEGIN JAWS OPEN FORMAT #####


##### END JAWS OPEN FORMAT #####


##### BEGIN JAWS CLOSE FORMAT #####


##### END JAWS CLOSE FORMAT #####


##### BEGIN SUB-SPINDLE POS FORMAT #####


##### END SUB-SPINDLE POS FORMAT #####


##### BEGIN SUB-SPINDLE FEED POS FORMAT #####


##### END SUB-SPINDLE FEED POS FORMAT #####


##### BEGIN SUB-SPINDLE ANGLE FORMAT #####


##### END SUB-SPINDLE ANGLE FORMAT #####


##### BEGIN SUB-SPINDLE SPIN FORMAT #####


##### END SUB-SPINDLE SPIN FORMAT #####


##### BEGIN UDF_TEXT FORMAT #####


##### END UDF_TEXT FORMAT #####


##### BEGIN PROGRAM STOP FORMAT #####


##### END PROGRAM STOP FORMAT #####


##### BEGIN TURRET HOME FORMAT #####


##### END TURRET HOME FORMAT #####


##### BEGIN SUB-SPINDLE SYNCHRONIZE FORMAT #####


##### END SUB-SPINDLE SYNCHRONIZE FORMAT #####


##### BEGIN TURRET INDEX FORMAT #####


##### END TURRET INDEX FORMAT #####


##### BEGIN AIR BLAST FORMAT #####


##### END AIR BLAST FORMAT #####


##### BEGIN EMPTY FORMAT FORMAT #####


##### END EMPTY FORMAT FORMAT #####


##### BEGIN HOLE MILLING CYCLE FORMAT #####


##### END HOLE MILLING CYCLE FORMAT #####


##### BEGIN BACK BORE CYCLE FORMAT #####


##### END BACK BORE CYCLE FORMAT #####


##### BEGIN REVERSE TAP CYCLE FORMAT #####


##### END REVERSE TAP CYCLE FORMAT #####


##### BEGIN BORE (F-D-S-J) CYCLE FORMAT #####


##### END BORE (F-D-S-J) CYCLE FORMAT #####


##### BEGIN SLUG TRANSFER FORMAT #####


##### END SLUG TRANSFER FORMAT #####


##### BEGIN REVERSE SLUG TRANSFER FORMAT #####


##### END REVERSE SLUG TRANSFER FORMAT #####


##### BEGIN PRE CUTOFF FORMAT #####


##### END PRE CUTOFF FORMAT #####


##### BEGIN POST CUTOFF FORMAT #####


##### END POST CUTOFF FORMAT #####


##### BEGIN BAR PULL FORMAT #####


##### END BAR PULL FORMAT #####


##### BEGIN SUPPORT ON FORMAT #####


##### END SUPPORT ON FORMAT #####


##### BEGIN SUPPORT OFF FORMAT #####


##### END SUPPORT OFF FORMAT #####


##### BEGIN CONTROL GROUP START FORMAT #####


##### END CONTROL GROUP START FORMAT #####


##### BEGIN FILE START FORMAT #####


##### END FILE START FORMAT #####


##### BEGIN SEGMENT END FORMAT #####


##### END SEGMENT END FORMAT #####
Non hai i permessi necessari per visualizzare i file e le foto allegati in questo messaggio. Per visualizzare tali file devi registrarti ed effettuare il Login

Rispondi

Torna a “Cad/Cam”