Documento in fase di revisione!


RosettaCNC Software - Il software di controllo

I diritti d'autore di questo manuale sono riservati. Nessuna parte di questo documento, può essere copiata o riprodotta in qualsiasi forma senza la preventiva autorizzazione scritta. RosettaCNC Motion® non presenta assicurazioni o garanzie sui contenuti e specificatamente declina ogni responsabilità inerente alle garanzie di idoneità per qualsiasi scopo particolare. Le informazioni in questo documento sono soggette a modifica senza preavviso. RosettaCNC Motion® non si assume alcuna responsabilità per qualsiasi errore che può apparire in questo documento. RosettaCNC Motion® è un marchio registrato.

Informazioni

Documento: MDUROSETTACNCSOFTWARE
Descrizione: Il software di controllo
Link: http://wiki.rosettacnc.com/doku.php/hardware:rosettacncboard:mdurosettacncsoftware
Release documento Descrizione Note Data
1.0 Prima release documento / 30/05/2017
1.1 Seconda release documento / 27/04/2018

1. Introduction

This document illustrate the functionality of the RosettaCNC control software.

Warn that the document is under construction, some parts are incomplete or missing.

The document refers to the RosettaCNC Software version 1.7.1.

2. Cambio utensili

In RosettaCNC il cambio utensile viene eseguito quando nel codice G viene incontrato il comando M6 ed è vincolato dalle “Impostazioni scheda RosettaCNC” pannello “Cambio utensile”:

Nel pannello ci sono 4 campi:

  1. Tipo cambio utensile
    Definisce la modalità con cui la CNC gestisce il comando M6:
    1] Nessuno: Indica che il comando M6 non effettuerà alcuna operazione nella CNC e verrà praticamente ignorato. Anche la parte grafica non utilizzerà l'informazione colore dell'utensile eventualmente richiesto per la colorazione del percorso che sarà sempre quella dell'utensile T0.
    2] Macro: Indica che il comando M6 eseguirà la macro di cambio utensile presente nel campo Macro.
    3] PLC: E' una modalità riservata a versioni custom di RosettaCNC in cui la gestione cambio utensile viene realizzata direttamente in CNC.

  2. Enable Slot ID
    Abilita la possibilità di definire lo Slot ID nella libreria utensili. Per ogni utensile ci sono due ID: Tool ID (ID utensile) e Slot ID. Tool ID corrisponde al numero utensile, quindi Tool ID 1 = T1, Tool ID 99 = T99. Lo Slot ID invece identifica la posizione dell'utensile nel caricatore utensili. Tool ID 5 con Slot ID 8 significa che l'utensile 5 è nella posizione 8 del caricatore utensili, per esempio una rastrelliera. Sarà poi compito della macro cambio utensile, opportunamente scritta per la propria configurazione di macchina, gestire lo scarico dell'utensile in uso e il prelievo di quello nuovo dallo slot specificato durante la chiamata della macro.

  3. Macro
    Contiene il codice della macro di cambio utensile. L'editor integrato nel pannello permette di esaminare e modificare la macro. E' comunque possibile esaminare e modificare tale macro anche tramite un normalissimo editor di testo come NotePad++ accedendo in modo diretto al file presente nella cartella:
    %HOMEPATH%/Documents/RosettaCNC-1/machine/RosettaCNC/macros/tool_change.ngc

  4. Abilita il cambio utensile casuale
    Opzione attualmente disabilitata ma prevista affinché la CNC gestisca il caso di cambi utensili ove lo Slot ID è casuale e corrisponda al primo libero e disponibile.

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.

2.4.1 Note

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

2.4.2 Parametri

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.

3. Plasma Torch

Starting from version 1.7 a function has been added to control the height of the plasma torch. The automation is based on an external THC (Torch Height Control) device such as the THC 150 model from Proma Elektronika company.


This device provides three digital information to the CN:

  1. The torch must be raised
  2. The torch must be lowered
  3. The arc under the torch is active

All these digital signals are connected to the RosettaCNC user inputs. The number of the input to be used is not restricted, in the RosettaCNC settings it will be necessary to set the number of the user input chosen for each signal.

The configuration for torch height control is defined in the “Plasma Torch” panel in the RosettaCNC tab settings.


Let's see in detail the meaning of each parameter:

  1. Enable plasma torch : used to enable THC control. If the control is disabled and an instruction M17 or M18 is present in the gcode, the alarm would appear:
  2. Torch speed : indicates the Z axis speed when it is controlled by the THC. It is a percentage value of Z axis maximum speed.
  3. Torch Disable Velocity : indicates a percentage of the feed set which the THC control is automatically disabled. Setting zero to disable the function. For more details see the dedicated chapter.
  4. Torch acceleration override : indicates the acceleration of the Z axis during the THC check. 100% means as axis setting, 50% means half acceleration.
  5. Torch input high : it is the number of the user input and the type of logic dedicated to this function.
  6. Low torch input : it is the number of the user input and the type of logic dedicated to this function.
  7. Torch arc input OK : it is the number of the user input and the type of logic dedicated to this function. Its programming is optional. For more details see the dedicated chapter.
  8. Torch Anti-Collision Input : is the number of the user input and the type of logic dedicated to this function. Its programming is optional. If the THC control is active (M17) RosettaCNC continuously monitors the signal and if it indicates a collision, the machining is immediately stopped with an alarm nr 52 “Torch collision”.
  9. Torch control ON : It is also possible to configure a digital output that is activated when the Z axis is controlled by the THC device.

The M17 instruction activates the Z axis control by THC. When this instruction is encountered, RosettaCNC saves the current Z axis position, then disconnects the axis from the interpolation and commands it via the Up torch and Down torch inputs. When the instruction M18 is met RosettaCNC maintains the current position up to a new command Z instruction inside the Gcode. During the THC check, a digital output, if configured, is activated to manage any external electromechanical logic.

Instruction M17 can generate an Alarm nr 67 “THC command not possible” in the following cases:

  • The Z axis is not enabled in the settings.
  • The “Enable plasma Torch” parameter is not active.
  • Up Torch or Down Torch inputs have not been configured.

3.1.1 "Torch Arch Ok" Input

The THC “Torch Arch Ok” signal can be connected to a generic User input and NOT configured in the “Plasma torch” panel. In this case it is possible to wait and verify that the arc is activated by, for example, instruction M66 P1 L1 after power on the torch with M3. However, if you wish also that RosettaCNC continuously verifies the presence of the “Torch Arc Ok” signal when the THC is active, then it must be configured. In this way you can continue to use the check with instruction M66 P1 L1 and if the arc became not active, a alarm 51 “Arc OK input not active during thc enable” is generated
.
In other words, while the THC is active, if the “Torch Arch Ok” signal becomes or is already active, it can no longer be deactivated until the THC is disabled.

3.1.2 Z position after M18

When the THC is active, the Z position assumes a value different from that expressed by the gcode. The M18 command (that deactivates the THC) must also return the Z position to the value expressed by the Gcode. This movement takes place in the following way: at the first movement instruction following the code M18 (even if it does not explicitly include the letter Z) the CN performs a check if an upward movement is necessary to reach the target position. In the negative case (negative movement need) an alarm nr 88 is generated. Otherwise the new movement includes a movement of Z from the current position to the new target position expressed in the gcode.
So in general it is necessary to verify in the post processor that the first move instruction after M18 includes a climb movement Z to a safety altitude.

3.1.3 Torch Disable Velocity

If the “Torch Disable Velocity” parameter is set, the CN, when the THC is active, continuously monitors the interpolation feed speed and, if it decreases by a percentage respect to the set value, suspends the THC control. This is useful if the feed speed is decreased by the interpolator to respect the axis accelerations. Let's take an example:

  • Set for example “Torch Disable Velocity” = 80%
  • The plasma cutting to be performed has been described with a gcode with F1000.
  • Suppose we work with Override 100%
  • If the feed speed decreases below 800mm/min (for example close to a vertex) the THC is disabled and returns automatically active as soon as the speed becomes higher than 800mm/min.

Another example:

  • Set for example “Torch Disable Velocity” = 80%
  • The plasma cutting to be performed has been described with a gcode with F3000.
  • During the cut the operator sees that the best result is obtained with a 70% Override (therefore 2100mm/min)
  • If the feed speed decreases below 1680mm/min (80% of 2100) the THC is disabled.

3.1.4 Runtime THC disable

It is possible to disable THC with a toolbar button. This is possible both before the execution of a gcode and during the execution of a gcode. If the THC is disable Z axis keep the position.

To enable this toolbar button, open “Toolbar View” in Program settings panel:


Set the circled fields according to the image.

In this way the toolbar appairs as follow:

The arrow indicates the new icon.

The disable set value is not preserved after a CN power-off.

  • If the M18 instruction is not executed in the Gcode the THC control is automatically deactivated at the end of the gcode execution.
  • If, during the THC check, Z movements are commanded, these are ignored.
  • If the “Torch Up Input” and “Torch Down Input” are active simultaneously (abnormal condition) no movement is performed and no alarm is generated.
  • During the THC control the Z movements can extend between the minimum machine position and the maximum machine position value.

It is possible to set in the tool library that a certain tool is of the “Plasma” type.


Set tool change type to “Macro” so CN can manage active tool information.

Now set Tool in spindle the number that you set as plasma type.


Preview looks like this:


The plasma is activated with the M3 instruction to start spindle rotation. It is possible to change the icon dedicated to this function as follows: Open “Toolbar View” in Program settings panel:


Set the circled fields according to the image.

In this way the toolbar appairs as follow:


The arrow indicates the new icon.

4. Acknowledgement

All those who want to contribute to the improvement of this documentation are in advance thanks to the reporting inaccuracies or incorrect content. Write to the address: support@rosettacnc.com

  • /kunden/homepages/31/d621984495/htdocs/rosetta_wiki/data/pages/software/mdurosettacncsoftware.txt
  • Ultima modifica: 2019/12/06 08:32
  • da cnc205