en:software:mdurosettacncsoftware:tool_change

11. Tool Change

A Tool Change procedure will be started every time that the M06 command is found and executed by CNC Board.
The Tool Change procedure will execute the external macro ( <machine>\macros\tool_change.ngc ) to do all required actions.
After the Control Software installation, a default tool_change.ngc macro is already available to supports most commons scenarios.
Is however possible to use a Text editor, or the Board Settings… → Tool Change → Macro editor, to modify the tool_change.ngc macro, and fit it to any CNC particular needs.

The activity carried out by the CNC Board when executing a M06 command depends on the settings in the Setup → Board Settings… → Tool Change panel:

In the panel there are 4 fields:

Tool Change Type
Defines the way in which the CNC Board manages the M06 command between:
  • None
When a M06 command is found by the CNC Board none tool change procedure will be executed and the command will be ignored.
The loaded tool info will be set to T0, the tool geometry and graphic toolpath color will use the default values.
In this case the H corrector (G43/G43.1/G43.2/G43.4/G43.7) is correctly managed but requires H<tool_number> argument to work, otherwise for default will be H0.
  • Macro
When a M06 command is found by the CNC board the tool_change.ngc macro will be executed.
All actions to get the desired tool change procedure should be placed in that macro.
The loaded tool info, the tool geometry, and the graphic toolpath color will be set to the tool specified with the T<tool_number> command.
In this case the H corrector (G43/G43.1/G43.2/G43.4/G43.7) is correctly managed and H<tool_number> argument is optional.
  • PLC
It is reserved for custom versions of the CNC Board in which the Tool Change management is carried out directly in the CNC instead of the external macro tool_change.ngc.
Do not use without agreement and support from the CNC Board Support Team.
Enable Slot ID
This field is enabled only when the Tool Change Type set to Macro/PLC.
The Slot ID feature must be used ONLY if the CNC has an ATC (Automatic Tool Change) System.
When the field is active it enables the possibility to define the Slot ID in the Tools Library.
There are two IDs for each tool: Tool ID and Slot ID.
The Tool ID corresponds to the tool number, therefore Tool ID 1 = T1, Tool ID 99 = T99.
The Slot ID instead identifies the position of the tool in the tool magazine.
Tool ID 5 with Slot ID 8 means that tool 5 is in position 8 of the tool magazine, for example, a rack.
It will then be the task of the macro, suitably written for your machine configuration, to manage the unloading of the tool in use and the withdrawal of the new one from the slot specified during the macro call.
Macro
The Macro sheet contains the code of the tool change macro.
The G-Code editor integrated into the panel allows you to examine and edit the macro contents.
However, it is possible to examine and modify this macro also through a normal ASCII Text Editor such as NotePad++ by directly accessing the file in the folder:
%APPDATA%\RosettaCNC-1\machines\<your_machine_name>\macros\tool_change.ngc.
To fastly get into the macros folder you can also use the menu File → Open Macros Folder.
Enable Random Tool Changer
The option is currently disabled but foreseen in the CNC Board to manage the case of tool changes where the Slot ID is random and corresponds to the first free and available one.

Per poter usare un utensile nel programma questo deve essere presente nella libreria utensili:

Tramite la libreria utensili è possibile assegnare le caratteristiche ad ogni utensile come: Tipo di utensile, diametro, lunghezza, offsets, etc. Ogni tipo di utensile ha impostazioni specifiche. Il parametro lunghezza, oltre che per la mera rappresentazione grafica, è indispensabile in caso di compensazione altezza utensile con le istruzioni:

  • G43 Enable Tool Length Compensation
  • G43.1 Enable Dynamic Tool Length Compensation
  • G43.2 Apply additional Tool Length Offset
  • G43.4 Enable RTCP Feature
  • G43.7 Enable RTCP Feature and override tool offsets using user defined arguments

Nella libreria possono essere messi tutti gli utensili a disposizione mentre i campi Tool ID (ID utensile) e Slot ID possono essere variati a piacere per rappresentare la configurazione della lavorazione e quindi assegnare l'ID utensile usato nel programma a un utensile nella libreria. Con il tasto destro del mouse compare un menu che permette di disabilitare tutti i Tool ID o Slot ID in un colpo solo e facilitare l'operazione della riassegnazione degli ID.
La libreria utensili permette operazioni di Importazione / Esportazione per facilitare il salvataggio e recupero di una configurazione legata ad una lavorazione che potrebbe essere rieseguita molte volte nel tempo.

Al momento dell'installazione, nella cartella macros della macchina di default RosettaCNC
%HOMEPATH%/Documents/RosettaCNC-1/machine/RosettaCNC/macros/
è già presente il file tool_change.ngc con un esempio di macro per il cambio utensile di tipo manuale.

Questa macro è stata creata per supportare l'utente della CNC nelle configurazioni di cambio utensile manuale più comuni ma può essere modificata ed ampliata dall'utente stesso per meglio adattarsi alle proprie esigenze.

Inoltre per aumentare la flessibilità la macro può essere configurata nel comportamento tramite l'utilizzo dei parametri “Protected Variables” presenti nella “Libreria parametri” pannello “Protected”:

Il parametro 6000 definisce il comportamento del cambio utensile. Al momento è definito solo il comportamento per il valore zero. Nel capitolo successivo è illustrata questa implementazione.

Con questo tipo di cambio utensile si ottiene la misurazione automatica della lunghezza utensile in uso.
Esso si applica sia nel caso di mandrini porta utensili a pinza fissa che con mandrini con cono in qui non si voglia gestire la fase di PRE-SETTINGS.
Dato che, durante la procedura di cambio, la “Lunghezza” utensile viene automaticamente misurata il relativo campo nella tabella utensili ha solo funzione grafica.

Un esempio di mandrino a pinza fissa è illustrato nella seguente figura:

Per la misurazione della lunghezza utensile è necessario avere un sensore di acquisizione (TOOL LENGTH PROBE) a posizione meccanica nota.
Un esempio di sensore è illustrato nella seguente figura:

Il compilatore del codice G richiede che in libreria utensili vi siano tutti gli utensili usati da un programma.
L'uso di questa macro, in ogni caso, permette di poter trascurare il campo Lunghezza in quanto tale valore verrà calcolato in automatico dalla macro stessa.

Vediamo in dettaglio la sequenza di utilizzo di questo cambio utensile.
Si suppone per semplicità che il G-Code da eseguire sia generato con zero sulla sommità pezzo.

  1. Si predispone sul mandrino il primo utensile usato dalla lavorazione.
  2. Si esegue lo zero pezzo sul materiale.
  3. Viene avviata la lavorazione.
  4. Appena la CNC incontrata l'istruzione Tn M6 la macro va a misurare la lunghezza dell'utensile corrente.
  5. Fatta la misurazione la CNC si porta nella posizione di cambio utensile e attende che venga effettuato il cambio dall'operatore.
    A questo punto comparirà il seguente pannello con la descrizione dell'utensile da caricare:

    Nel caso in cui l'utensile caricato sia già quello richiesto è sufficiente confermare l'operazione con Ripresa.
  6. Viene quindi effettuata una nuova misurazione della lunghezza dell'utensile appena caricato.
  7. Viene calcolato un valore di differenza e messo in esecuzione come G43.1 “Enable Dynamic Tool Length Compensation”.
    Tale valore sarà visibile nel campo informazioni utensile in uso della Status Bar:

  8. L'esecuzione prosegue con la lavorazione per l'utensile attivo.
  9. Appena viene incontrata un'altra istruzione Tn M6 la procedura va a rimisurare la lunghezza dell'utensile corrente e ripete le operazioni del punto 5 fino a fine programma.

Alcune note importanti:

  1. Per un corretto funzionamento l'impostazione “G43 persistente” deve essere disattiva.
  2. Questa procedura utilizza la lunghezza utensili per rappresentare una differenza tra l'utensile scaricato e quello caricato durante la procedura di cambio utensile.
    Tale valore viene messo in esecuzione come valore immediato “G43.1 Zn” e non viene salvato nella libreria utensili.
  3. Il part program NON deve contenere istruzioni di compensazione lunghezza utensile ”G43/G43.1/G43.2/G45/G47“ o di annullamento della stessa ”G49“.
  4. La misurazione avviene sempre con due tocchi. Il secondo è effettuato ad una velocità ridotta per aumentare la precisione e ripetibilità.

Vediamo in dettaglio i parametri da impostare per caratterizzare il funzionamento:

Parameter Name Description
#6000 TOOL_CHANGE : Tool change type: Impostare a zero.
#6001 TOOL_CHANGE : Tool change features: 0 = non ritorna al punto XY iniziale. 1 = ritorna al punto XY iniziale
#6002 TOOL_CHANGE : Tool change position X (MCS) posizione X macchina dove l'operatore effettua il cambio utensile
#6003 TOOL_CHANGE : Tool change position Y (MCS) posizione Y macchina dove l'operatore effettua il cambio utensile
#6004 TOOL_CHANGE : Tool change position Z (MCS) posizione Z macchina dove l'operatore effettua il cambio utensile
#6005 TOOL_CHANGE : Sensor safe position Z (MCS) posizione di sicurezza Z usate per attraversare il piano di lavoro e raggiungere le coordinate sensore o cambio utensile
#6006 TOOL_CHANGE : Sensor top/center position X (MCS) posizione X macchina dove si trova il sensore di misura
#6007 TOOL_CHANGE : Sensor top/center position Y (MCS) posizione Y macchina dove si trova il sensore di misura
#6008 TOOL_CHANGE : Sensor top/center position Z (MCS) posizione Z alla quale il mandrino toccherebbe il sensore se fosse privo di utensile
#6009 TOOL_CHANGE : Feed during tool change procedure feed durante i movimenti di attraversamento
#6010 TOOL_CHANGE : Z approaching sensor position (MCS, reached with FAST feed #6011) posizione Z alla quale il mandrino scende ad una velocità elevata. Questa quota va impostata in modo che anche con l'utensile più lungo utilizzabile non venga mai premuto il sensore.
#6011 TOOL_CHANGE : Z feed to sensor approaching (FAST) feed durante la discesa rapida verso il sensore
#6012 TOOL_CHANGE : Z feed to 1st probe input capture (SLOW) feed durante la prima discesa. Impostare una velocità bassa.
#6013 TOOL_CHANGE : Z feed to 2nd probe input capture (VERY SLOW) feed durante la seconda discesa. Impostare una velocità molto bassa per aumentare la precisione.
#6014 TOOL_CHANGE : Z up movement after 1st touch capture (REL) spazio eseguito dall'asse Z per disimpegnare il sensore e prepararsi al secondo tocco. Inserire un valore piccolo, per esempio 3.0 mm
#6015 TOOL_CHANGE : Minimum tool lenght accepted corrisponde alla lunghezza dell'utensile più corto che si vuole usare. E' un valore utilizzato durante il movimento per il secondo tocco, l'asse Z scende fino ad un valore indicato dal parametro 6008 maggiorato del presente parametro.
  • Last modified: 2023/03/22 09:07
  • by 127.0.0.1