Il cambio utensile, che sia MTC o ATC viene fatto sempre tramite la macro "tool_change.ngc".
In questo caso si usa il linguaggio Fanuc Macro-B esteso e non Python.
Per il calcolo della lunghezza utensile la macro considera sempre il naso mandrino senza utensile
come TZP (Tool Zero Point) o punto iniziale di calcolo della lunghezza utensile:
tzp.png
Quindi la "taratura" dei parametri del cambio utensile richiede che venga catturata la posizione
MCS.X/Y/Z in cui il naso mandrino ATTIVA l'ingresso PROBE di cattura segnale del Tool-Setter.
PARAMETRI DI CONFIGURAZIONE DEL TOOL_CHANGE
set1.png
I parametri 6006..6008 servono a definire dove sta il Tool-Setter in X e Y e a quale altezza di Z deve
arrivare il naso mandrino per ATTIVARE il segnale PROBE.
La funzionalità "Abilita Slot ID" richiede che per ogni tool venga associato uno slot in cui andare a prelevarlo
e scaricarlo e ad abilitare la finestra "Gestione ATC" per una rapida gestione e visione di una rastrelliera,
nastro caricatore o giostra:
atcm.png
atcm2.png
Nel tuo caso potresti tranquillamente farne a meno ed evitare di dover assegnare uno slot per ogni utensile
della libreria. Da decidere.
Per quanto riguarda la tastatura "a volere" di lunghezza dell'utensile caricato nel mandrino,
basta da MDI chiamare:
Codice: Seleziona tutto
; measure loaded tool length
G65 P"tool_change" A#5134 B#5135 C#5134 I#5135 J3
Oppure da bottone su toolbar o da macro da ingresso digitale, chiamare la macro measure_tool_length.
Questa macro ti permette di misurare l'utensile corrente, confermandone il numero,
oppure cambiandolo ti fa caricare quello nuovo e poi lo misura.
Codice: Seleziona tutto
;
; RosettaCNC (c) 2016-2020
;
; Name : masure_tool_length.ngc
; Sub UID : 1
; Version : 1
; Description : Measure tool length macro
; Note : This macro require and use tool_change macro
; TAKE CARE : The tool_change macro MUST be set to ATC mode
;
; Conventions of input parameters
;
; Xx compulsory parameter
; [Xx] optional parameter
; (Xx|Yy|Zz)? one of compulsory paramaters
; [Xx|Yy|Zz]* zero or more optionals parameters
; [Xx|Yy|Zz]+ at least one or more optionals parameters
; M! compulsory parameter don't take care of passed value
; [M!] optional parameter don't take care of passed value
; M[1|2]? compulsory parameter with one of listed values (Eg: M1 or M2)
; [M[1|2]?] optional parameter with one of listed values (Eg: M1 or M2)
;
; G65 P"measure_tool_length"
;
O1
M109 p"Tool to Measure<br><br>Actually Loaded Tool is T#5132" Q3 D#5134
IF [#5721 NE #5132] THEN01
; unload eventually loaded tool and load required tool to measure
T#5721 M06
END01
; measure loaded tool length
G65 P"tool_change" A#5134 B#5135 C#5134 I#5135 J3
; enable loaded tool H corrector
G43 H#5721
; TODO: This macro can be called from Program/Macro/MDI so check compiler mode to use the right exit command (M99/M102/etc.)
M102
In questo caso puoi togliere l'opzione di misurare l'utensile ad ogni cambio utensile, che usavi prima,
e pre-misurare gli utensili che userai e che hai inserito nei coni uno ad uno prima di avviare una lavorazione.
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