logo puntotec nero

Funzioni ad alto livello per Fagor 8065

Funzioni ad alto livello Fagor 8065

Con l’avvento del nuovo controllo in casa Fagor si sono ampliate enormemente le potenzialità e gli strumenti per gli amanti della programmazione ad alto livello. Quando parlo di programmazione di alto livello intendo le funzioni messe a disposizione del programmatore per parametrizzare, automatizzare o semplicemente interagire con il controllo in modo evoluto rispetto alla normale programmazione di cicli conversazionali.

Normalmente l’utilizzatore dei controlli Fagor ha un’estrazione in ambiente conversazionale molto radicata, per il semplice fatto che non ha mai avuto esigenze non soddisfatte dai cicli conversazionali che lo portassero a ricercare funzioni ISO o parametriche. Non bisogna dimenticare però che i controlli Fagor, sia nella versione 8055 che nella versione 8065, oltre ad avere una rapidità d’uso legata ai cicli “autoapprendimento” offre tutto l’ambiente ISO  con numerose funzionalità che altri controlli tipicamente conosciuti come ISO non hanno. Tra le funzioni ISO esistono tutte le funzioni ad alto livello che si possono tra l’altro integrare anche ai programmi conversazionali.

Vediamo alcune funzioni ad alto livello che credo possano servire per perfezionare i vostri programmi conversazionali o ISO.

Per prima cosa vanno differenziate le funzioni definite come Sentenze dalle funzioni di Controllo flusso. Mentre le seconde servono, come dice la parola, stessa per la gestione del flusso del programma e quindi per eseguire salti condizionali o ripetizioni, le sentenze servono per creare interazioni con il controllo numerico.

In questo articolo mi concentrerò sulle sentenze più comuni che potrebbero servirvi nei vostri programmi ISO o conversazionali.

#DGWZ

Iniziamo con un’istruzione che effettivamente andrebbe messa come prima cosa nel programma, e riguarda la generazione della forma grafica. Ho notato infatti che pochi utilizzatori del controllo 8065 sanno che è possibile generare da programma la forma grafica. Se non utilizzassi questa funzione all’apertura della simulazione grafica dovrei impostare nuove dimensioni del grezzo ogni volta che ho dimensioni differenti. Con l’uso della funzione #DGWZ posso definire le dimensioni del grezzo mediante programma.

Nel caso del tornio, potendo caricare forme grafiche unicamente cilindriche, l’istruzione sarà molto semplice:

#DGWZ[Zmin, Zmax, Xmin, Xmax]

Esempio:

Esempio disegno #DGWZ

#DGWZ [-120,0,40,100]

 

Nel caso in cui volessi prevedere del sovrametallo in Z per l’intestatura, il punto massimo in Z sarà pari al sovrametallo:

#DGWZ [-120,5,40,100]

 

Nel caso della fresatura la differenza è sostanzialmente nel fatto che è possibile scegliere tra due forme grafiche: un cilindro ed un parallelepipedo.

Quindi la funzione diventerà:

#DGWZ CYL per cilindri

#DGWZ RECT per parallelepipedi

 

Nel caso del cilindro i parametri sono i seguenti:

#DGWZ CYL (asse cilindro) [Asse long. Min, Asse long.Max, D. interno, D esterno]

Quindi se il cilindro è orientato con l’asse lungo Z ad esempio, si imposterà DGWZ CYL Z […]; se è impostato con l’asse lungo X diventerà DGWZ CYL Z […]

Esempio:

Esempio 2 disegno #DGWZ

DGWZ CYL Z [-80,0,0,100]

Infine per il parallelepipedo avremo anche qui la scelta della direzione di orientamento e la definizione del parallelepipedo mediante i punti minimi e massimi dei tre assi.

Esempio:

Esempio 3 disegno #DGWZ RECT

#DGWZ RECT Z [-70,70,-50,50,-40,0]

#MSG

La funzione #MSG permette di mostrare a video un messaggio per l’operatore, in modo tale che durante l’esecuzione il programma può trasmettere informazioni attraverso la barra dei messaggi.

 L’utilizzo dei messaggi può essere molto comodo in vari casi, ad esempio se ho impostato una funzione di stop programma posso generare un messaggio prima dello stop di modo tale che l’operatore sa il motivo della sosta ed esegue un’eventuale azione.

La scrittura dei messaggi è molto semplice: si scrive la funzione #MSG seguita dal testo del messaggio all’interno delle parentesi quadre e delle virgolette.
 
Esempio:
 
#MSG [“PULIRE FORO PRIMA DI MASCHIARE”]
Esempio di messaggio per l'operatore #MSG

#RPT

Infine l’ultima funzione è forse la più utile per chi lavora in fresatura: è la funzione per eseguire ripetizioni di blocchi. Questa funzione permette di ripetere dei blocchi di programma tra due numeri di blocco o tra due etichette. Quest’ultima opzione è molto utile se non si vuole essere legati al numero di blocco che potrebbe cambiare in caso di rinumerazione. In ogni caso se si volessero utilizzare i numeri di blocco occorre ricordarsi che i numeri di blocco che saranno la destinazione di salto, devono avere i due punti finale.
 
La funzione ha la seguente sintassi:
 
#RPT [primo blocco, ultimo blocco, numero di ripetizioni]
Esempio con etichette:
 
T7D1
G94G97S500         
G0X50Z1
G0C0
#FACE [X,C]
[INIZIO]
G90 X0 C-90
G0Z-1I
G01 G42 C-40 F600
G37 I10
X37.5
G36 I10
C0
G36 I15
X12.56 C38.2
G03 X-12.58 C38.2 R15
G01 X-37.5 C0
G36 I15
C-40
G36 I10
X0
G38 I10
G40 C-90
[FINE]
#RPT[[INIZIO],[FINE],3]
 
#FACE OFF
G0Z50
M30
Esempio con numeri di blocco:
 
G17
T4M6
F1111S2222M3
G0Z100
X300Y0
Z2
G1Z0
N1:
G91
G1Z-2
G90
G841X300Y0K1
G801Y0
G801Y150
G821I15
G801X-300
G821
G801Y-150
G821
G801X300
G821
G801Y0
G840
N2:
#RPT[N1,N2,4]

Vi ho riportato le funzioni di uso più comune e credo che siano comprensibili le enormi possibilità che Fagor 8065 ci offre. Come tutte le cose occorre conoscerle e valutarne l’utilizzo in base alle situazioni. Con la speranza di alimentare la vostra curiosità, rinnovo il mio invito a continuare a studiare e a sperimentare.