CNC e LinuxCNC e cambio utensile

Sezione dedicata a Linuxcnc
Rispondi
kylotron
Senior
Senior
Messaggi: 993
Iscritto il: mercoledì 17 ottobre 2012, 17:06
Località: Sora

CNC e LinuxCNC e cambio utensile

Messaggio da kylotron » venerdì 8 marzo 2019, 13:05

Ciao gente...
tra alti e bassi sto approntando una nuova CNC (router) con dimensioni maggiori rispetto alla mia "gialletta" :mrgreen:

Questa CNC la sto usando per fare piccoli lavori e test di impostazione e configurazione.
Quello che non riesco a fare è il cambio utensile e temo di sbagliare approccio!
20190308_123157.jpg
Come si può vedere dalla foto, la posizione dello "zero macchina" e tutto a sinistra con la Z in alto.

Tramite una piastra di rame (visibile sotto l'elettromandrino), attualmente faccio il "Touch Off" per lo "zero pezzo"... poggiando la piastra di rame sopra il pezzo da lavorare. In questo modo azzero la macchina rispetto al pezzo, ma non ho "idea" di come si possa/debba procedere per l'azzeramento dell'utensile dopo averlo cambiato.
Il sensore in blu a destra è quello (in parallelo con la piastrina di riscontro in rame) dove desidero andare a fare l'azzeramento dell'utensile. Anche qui... posso fare il Touch Off... ma poi che ci faccio con il dato ottenuto?

Ho quindi l'impressione di sbagliare procedimento.

Mi date una dritta per piacere?

Grazie
Bernardo
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
La mia piccolina....

kylotron
Senior
Senior
Messaggi: 993
Iscritto il: mercoledì 17 ottobre 2012, 17:06
Località: Sora

Re: CNC e LinuxCNC e cambio utensile

Messaggio da kylotron » venerdì 8 marzo 2019, 16:56

Mi aggiorno da solo perché, forse, ho trovato qual'era il problema.

Io ho sempre impostato l'MCS (Machine Coordinate System) sopra il pezzo... perché, fino a qualche settimana fa, non avevo modo di impostare le dimensioni del pezzo "grezzo" nei CAM che usavo per la generazione del percorso utensile.
In quel modo il CAM non aveva la più pallida idea di cosa dovesse fare la macchina, di quanto fosse grosso il pezzo ecc..
Quindi azzerando la CNC sopra il pezzo e avendo tutta la lavorazione "sotto" quella Z, tutto funzionava. Con utensile fisso e senza grossi problemi.

Dovendo fare lavorazioni complicate, ho sempre dovuto "dividere" in 2 i gcode. Uno per la sgrossatura, uno per la finitura. Riazzerando ogni volta la CNC "sopra il pezzo".

Ora, con il sensore per l'azzeramento dell'utensile, posso azzerare ogni utensile ogni qualvolta che voglio... perché l'MCS resta dov'è. Ovvero "sotto" il pezzo (che, ovviamente, ci sta poggiato sopra).

Ho avviato una prova e fatto fare l'azzeramento manuale (nel senso che ho cliccato io su un pulsante) dell'utensile che mi ha rilevato correttamente la lunghezza dello stesso azzerando la macchina al corretto Z(MCS) - Lunghezza_Utensile.
La mia piccolina....

kylotron
Senior
Senior
Messaggi: 993
Iscritto il: mercoledì 17 ottobre 2012, 17:06
Località: Sora

Re: CNC e LinuxCNC e cambio utensile

Messaggio da kylotron » venerdì 8 marzo 2019, 17:29

Ora il problema è capire come devo impostare il postprocessore di NX per il cambio utensile. Perché ad ogni cambio utensile (ad eccezione del primo utensile usato), si deve spostare in X750 Y0 per poi azzerarsi lanciando la subroutine (per ora esterna) "azzeramento_utensile".... che altro non fa che spostarsi in X670 Y460, scendere fino a toccare il sensore, si azzera, si rialza, si sposta di 2 mm in avanti (X) e ripete l'azzeramento della Z ad una velocità molto bassa. Al termine si rialza fino a G53 G0 Z0 e... ovviamente torna alle coordinate da dove era partita e riprende il lavoro!
La mia piccolina....

billielliot
Senior
Senior
Messaggi: 1747
Iscritto il: martedì 16 ottobre 2007, 23:23
Località: Trezzo sull'Adda

Re: CNC e LinuxCNC e cambio utensile

Messaggio da billielliot » venerdì 8 marzo 2019, 19:14

Ciao kylotron,

non saprei aiutarti ma seguo volentieri il tuo monologo :-)

Ciao :-)

Mauro
Amat victoria curam

kylotron
Senior
Senior
Messaggi: 993
Iscritto il: mercoledì 17 ottobre 2012, 17:06
Località: Sora

Re: CNC e LinuxCNC e cambio utensile

Messaggio da kylotron » venerdì 8 marzo 2019, 20:00

Ho trovato la soluzione.... (ancora un errore concettuale).
Domani provvedo a metterla in pratica.

LinuxCNC permette di "rimappare" alcuni comandi.
Con questa tecnica è possibile assegnare al comando GCode "T" che identifica e seleziona l'utensile da usare nella lavorazione, una chiamata ad una subroutine esterna che contiene l'intera procedura per....

....il movimento della testa fino alla posizione di cambio utensile
....l'attesa per il cambio utensile con messaggio a video
....il movimento sul probe per la determinazione dell'offset del nuovo utensile
....il rilevamento dell'offset del nuovo utensile
....il ritorno alla posizione iniziale (precedente al comando "T") per riprendere la lavorazione!

Ed il gioco è fatto (a parole) :P 8)
La mia piccolina....

gino
Senior
Senior
Messaggi: 1774
Iscritto il: domenica 11 ottobre 2009, 18:12

Re: CNC e LinuxCNC e cambio utensile

Messaggio da gino » venerdì 8 marzo 2019, 20:17

..di Linux non conosco nulla.
..pian piano stai imboccando la strada giusta..!
al PP non interessa nulla cosa ce sotto la macro M6 lui lo scrive ed e finita li.
..poi quando il codice e in macchina ..li la cosa cambia ( li deve trovare sta benedetta macro M6 ; dove, quando e come)
..li non sbaglia fa tutto quello che ci hai scritto dentro (..errato o non errato ) esegue tutto..

kylotron
Senior
Senior
Messaggi: 993
Iscritto il: mercoledì 17 ottobre 2012, 17:06
Località: Sora

Re: CNC e LinuxCNC e cambio utensile

Messaggio da kylotron » venerdì 8 marzo 2019, 21:38

Si gino.
Purtroppo vado avanti per tentativi... anche perché faccio 3-4 cose totalmente diverse l'una dall'altra... contemporaneamente. E tendo a dimenticare ciò che ho letto mesi prima. Il remapping l'avevo già trovato e in parte provato. Ma non avendo il CAM adatto non avevo capito il corretto funzionamento.

Grazie di tutto.
Vi terrò aggiornati!
La mia piccolina....

kylotron
Senior
Senior
Messaggi: 993
Iscritto il: mercoledì 17 ottobre 2012, 17:06
Località: Sora

Re: CNC e LinuxCNC e cambio utensile

Messaggio da kylotron » sabato 9 marzo 2019, 17:20

Intanto avevo scritto "T", ma in realtà devo rimappare M6.... ovvero il comando del Cambio Utensile.

Ho provveduto, non avendo il cambio utensile normale, a fare un remap molto semplice.

Dalla posizione corrente, sposto la testa nella posizione di sicurezza G53 G0 Z0 (tutto in alto).
Poi la sposto nella posizione di cambio utensile... G90 G53 G0 X750 Y0 (in questa posizione la testa si trova "fuori" dal piano e questo mi permette anche di misurare con il calibro l'utensile se necessario).
Terminata la sostituzione dell'utensile, richiamo la procedura di azzeramento dello stesso.
Al termine torno alla posizione corrente.

:mrgreen:
La mia piccolina....

kylotron
Senior
Senior
Messaggi: 993
Iscritto il: mercoledì 17 ottobre 2012, 17:06
Località: Sora

Re: CNC e LinuxCNC e cambio utensile

Messaggio da kylotron » sabato 9 marzo 2019, 18:08

Nel file INI ho aggiunto la riga:

Codice: Seleziona tutto

REMAP = M6 modalgroup=6 ngc=change_tool
Questo è il file "change_tool.ngc":

Codice: Seleziona tutto

O<change_tool> sub
(MSG, PROCEDURA CAMBIO UTENSILE)

M5

#< InitPos_X> = #<_x>
#< InitPos_Y> = #<_y>
#< InitPos_Z> = #<_Z>

;(DEBUG, #<_x> #<_y> #<_Z> #<_current_tool>)

G90 G53 G0 Z0
G90 G53 G0 X750 Y0

M6

(MSG, AZZERAMENTO UTENSILE)
O<azzeramento_utensile> call

(MSG, RITORNO ALLA POSIZIONE DI LAVORO)
G90 G0 X#< InitPos_X> Y#< InitPos_Y>
;G90 G0 Z#< InitPos_Z>

O<change_tool> endsub [1]
m2
Questo è il file (sicuramente migliorabile) dell'azzeramento utensile:

Codice: Seleziona tutto

O<azzeramento_utensile> SUB

G21
G90

; Mi sposto sul sensore
G53 G0 Z0
G53 G0 X670 Y460

G91

#< Plate_Thickness> 	= 50
#< Probe_Speed>		= 200
#< Probe_System>	= #5220
#< Probe_Retract>	= 1
#< Probe_Movement>	= 1

; Calcolo la distanza massima per il sensore
G28.1
#< Probe_Distance> = [100 - ABS[#5163]]

; Vado a trovare il sensore con una velocità alta
G38.3 Z-#< Probe_Distance> F#< Probe_Speed>

; Azzero la Z rispetto al pezzo
G10 L20 P#< Probe_System> Z#< Plate_Thickness>
G28.1
;(DEBUG, Z Workplane = #5163)

; Rialzo l'utensile
G0 Z#< Probe_Retract>

; Sposto l'utensile
G0 X#< Probe_Movement>

; Ricalcolo la distanza massima per il sensore
G28.1
#< Probe_Distance> = [100 - ABS[#5163]]

; Vado a trovare il sensore con una velocità MOLTO BASSA
G38.3 Z-#< Probe_Distance> F[#< Probe_Speed> / 20]

; Azzero Nuovamente la Z rispetto al pezzo
G10 L20 P#< Probe_System> Z#< Plate_Thickness>
G28.1

#1001 = [#< Plate_Thickness>]

G90
G53 G0 Z0

O<touch_to_z> endsub [#5070] 
M2
Infine, il video del test:
https://youtu.be/uN-Dtd3vFtM


P.S.: prima o poi devo sistemare la vite trapezia dell'asse X. A bassa velocità si sente che non gira bene :(
La mia piccolina....

Avatar utente
Fiveaxis
God
God
Messaggi: 5710
Iscritto il: sabato 15 gennaio 2011, 12:08
Località: Monza e Brianza

Re: CNC e LinuxCNC e cambio utensile

Messaggio da Fiveaxis » domenica 10 marzo 2019, 9:13

Argomento spostato in LinuxCnc
La macchina conta...ma la differenza la fa il "manico"!

kylotron
Senior
Senior
Messaggi: 993
Iscritto il: mercoledì 17 ottobre 2012, 17:06
Località: Sora

Re: CNC e LinuxCNC e cambio utensile

Messaggio da kylotron » martedì 12 marzo 2019, 14:51

Anche se l'argomento continuo a vederlo in "La mia CNC", mi preme comunicare che nello script per l'azzeramento dell'utensile c'è qualche problema che sto cercando di risolvere.
La mia piccolina....

Avatar utente
Fiveaxis
God
God
Messaggi: 5710
Iscritto il: sabato 15 gennaio 2011, 12:08
Località: Monza e Brianza

Re: CNC e LinuxCNC e cambio utensile

Messaggio da Fiveaxis » martedì 12 marzo 2019, 15:04

Ora è fatto!...Mi era rimasto il tasto del mouse inceppato. :lol: :mrgreen:
La macchina conta...ma la differenza la fa il "manico"!

kylotron
Senior
Senior
Messaggi: 993
Iscritto il: mercoledì 17 ottobre 2012, 17:06
Località: Sora

Re: CNC e LinuxCNC e cambio utensile

Messaggio da kylotron » martedì 12 marzo 2019, 21:45

Comunque... ci sono un paio di questioni che devo risolvere sulla mia configurazione... perché credo che così com'è ora, mi darà sempre problemi.

Nello specifico... devo riuscire a far capire a LinuxCNC che la Z va da 0 (in basso) a +100 (in alto) e che l'homing deve farlo in alto...
E' solo che non riesco a farglielo capire... appena fa l'homing vorrebbe andare ancora più su! :(

Poi dovrò riuscire a gestire la compensazione dell'utensile. E per questo dovrò vedermi l'esempio del manual tool change presente di default. E' solo che non ci sto capendo un cavolo :( Uffa!
La mia piccolina....

Antoniobar
Junior
Junior
Messaggi: 156
Iscritto il: giovedì 15 dicembre 2016, 23:54
Località: Vigevano

Re: CNC e LinuxCNC e cambio utensile

Messaggio da Antoniobar » mercoledì 13 marzo 2019, 11:46

ciao non so se posso esserti utile ....
io ho installato su arduino il software grbl e come pannello di conrollo sto usando universal gcode platform che se non sbaglio utilizza gli stessi comandi di linuxcnc.
ho risolto il problema del cambio utensili manuale e relativa tastatura in questo modo.
ho scritto una macro per la tastatura del primo utensile ,gestita dal pannello di controllo.
ho modificato il postprocessor ,quando fa il cambio utensili non scrive sul listato t... m6 ,che non e' un comando gcode ma e' il comando per eseguire una subroutine che deve essere presente nel controllo numerico,ma riscrive completamente la stessa macro con aggiunto il comando di pausa e start per darmi il tempo di cambiare fisicamente l'utensile.
in pratica: accendo la macchina,se il primo utensile e' quello che e' stato usato la volta precedente arduino ha gia in memoria la sua lunghezza percui non devo far niente,se e' un nuovo utensile faccio la tastatura.
lancio il file gcode la macchina fresa quello che deve fresare,quando inizia la macro il mandrino si ferma ma i motori rimangono sempre alimentati,sposta il mandrino in una posizione per me comoda per cambiare l'utensile e si mette in pausa sempre con i motori alimentati.cambio l'utensile,premo il pulsante start a bordo macchina oppure dal universal gcode e il programma continua a fresare.

se e' quello che cerchi e puoi modificare il tuo postprocessor ti do volentieri il listato della macro se invece io non ho capito una mazza fai finta di niente

ciao antonio

ross
Member
Member
Messaggi: 351
Iscritto il: mercoledì 3 agosto 2011, 23:16
Località: Macerata (MC)

Re: CNC e LinuxCNC e cambio utensile

Messaggio da ross » mercoledì 13 marzo 2019, 13:28

kylotron ha scritto:
martedì 12 marzo 2019, 21:45

Nello specifico... devo riuscire a far capire a LinuxCNC che la Z va da 0 (in basso) a +100 (in alto) e che l'homing deve farlo in alto...
E' solo che non riesco a farglielo capire... appena fa l'homing vorrebbe andare ancora più su! :(
Potresti provare a lavorare con Z negativo, da 0 a -100 per esempio. L'homing te lo farà sempre a Z0 che nel tuo caso è posto in alto, quando lavori andrai a Z negativo (scendendo).
Questo si fa tutto nella configurazione.

Ross

Rispondi

Torna a “Linuxcnc”