Autocostruzione Fresa CNC – Parte 2

Collegamento degli inverter

Cablaggio
Non tutti i segnali dell’inverter sono necessari per la realizzazione della macchina, nel mio caso ne ho usati solo 8 sugli oltre 50 disponibili dato che non ho la necessità di comandare più inverter in cascata o di utilizzare particolari comandi aggiuntivi.

I pin utilizzati sono:
5 e 6: ingresso impulsi di comando
7 e 8: ingresso comando di direzione
11 e 28: tensioni di alimentazione per i comandi dell’inverter (pin 11: Vcc, pin 28: GND)
12: comando di abilitazione del driver
9: reset impulsi (collegato a GND)
29 e 30: extracorsa (usati come comando di emergenza in quanto tolgono alimentazione al
motore, non è consigliabile collegarli ai normali finecorsa della macchina)

Parametri software:
La scheda di controllo del motore stepper oltre alla calibrazione della corrente mediante il trimmer non richiede particolari aggiustamenti, gli inverter invece hanno molti più parametri da configurare, i fondamentali sono:
02: modalità di controllo, impostata su 0 (controllo di posizione ad impulsi)
03: guadagno del controllo di posizione, impostato su 100 (più è alto il valore e più starà fermo il motore)
06: limitazione della coppia, impostato su 50 (nella configurazione attuale non è richiesta troppa forza).
0B e 0C: rapporto di moltiplicazione degli impulsi dell’encoder rispetto alla configurazione iniziale (2500 step/rev), lasciato impostato 1:1.
20: velocità del controllo di retroazione, impostato a 100 in modo da avere il motore stabile durante i posizionamenti
25 e 26: rapporto di moltiplicazione degli impulsi di comando (utile per ridurre il numero di passi necessari per compiere una rotazione completa), impostati in modo da avere 500 step/rev
29: tipo di impulsi, impostato su 3 in modo da avere due segnali distinti di step e direzione
Può essere utile modificare la configurazione dei parametri degli inverter in base alle lavorazioni da effettuare, per materiali metallici ad esempio può essere necessario aumentare leggermente la rigidità del motore e la coppia massima disponibile.

Software di controllo

Introduzione
Terminata la realizzazione della macchina è arrivato il momento del collaudo finale, per vedere
se tutte le migliorie effettuate si siano rivelate efficaci o meno.
Il software che comanderà la macchina sarà EMC2, un applicativo su piattaforma Linux che
consente di gestire ogni genere di macchina utensile come tornio, fresa o addirittura stampanti
3D. Per semplificare il lavoro si è optato per una distro già (quasi) pronta per funzionare che
prende il nome di LinuxCNC, il sistema operativo è basato su Ubuntu, una versione di Linux
che si adatta senza problemi anche a computer datati e che consente di sfruttare al massimo
l’hardware del PC in quanto, a differenza di Windows, implementa per sua natura le RTAPI,
una serie di comandi che permettono di gestire un output senza passare per il sistema operativo,
rendendo molto brevi i tempi di lettura o scrittura dei dati da periferiche esterne.

linux-cnc

Configurazione del software
La configurazione del software di controllo richiede pochi e semplici passaggi, completamente
guidati da un programma che come un tutorial ci guida passo a passo nelle impostazioni:

InformazioneBaseMacchinaNella prima schermata vanno inseriti i parametri generali della macchina tra cui il nome, l’unità di misura e i tempi necessari al driver
affinché riceva correttamente un comando. I due parametri più influenti sul risultato finale sono l’indirizzo fisico della porta parallela
a cui è collegata la macchina e la latenza. La latenza è il tempo che intercorre tra quando viene inviato il comando e quando questo viene
effettivamente ricevuto ed eseguito, valori alti possono peggiorare le prestazioni della fresa, è bene quindi avere un PC possibilmente fisso (con computer portatili è normale avere valori molto alti) e con poche periferiche collegate.

Occorre poi configurare i pin della porta parallela su cui inviare ciascun comando, questa impostazione dipende dal tipo di
breakout board utilizzata e dal tipo di driver che comanderà i motori. Aspetto importante di questa configurazione sono iSetupPortaParallela
finecorsa, che vanno impostati nella colonna di destra, possono essere utilizzati come limite massimo/minimo per fermare la
fresa nel caso in cui vada oltre la propria corsa oppure come riferimento per calcolare il punto zero da cui eseguire le lavorazioni.
Nel caso di impostazione HOME la macchina si sposterà in una direzione fino a raggiungere il limite e da esso calcolerà la posizione centrale da cui partire per le lavorazioni.

Una volta impostata la porta su cui inviare i comandi occorre configurare i parametri dei driver che muoveranno gli assi:

ConfigAsseXConfigAsseY

Nella prima metà della pagina vanno impostati i parametri del motore, ovvero gli step per rivoluzione, l’eventuale comando in microstepping, il rapporto delle pulegge di trasmissione, il passo della barra filettata, la massima velocità ammessa per il motore e la relativa accelerazione.
Oltre ai parametri del driver va impostata la dimensione del piano di lavoro, la posizione di “zero” da cui iniziare le lavorazioni e la velocità con cui andare alla ricerca di quella posizione, in questo parametro è bene inserire un valore non troppo alto in modo da non danneggiare i finecorsa con uno spostamento troppo rapido. In questi due assi il comando microstepping è stato lasciato a 1 in quanto i motori sono dotati di encoder rotativo gestito direttamente dall’inverter e non si possono quindi verificare perdite di passi o mancati posizionamenti.ConfigAsseZ

Nel mio caso gli assi X e Y sono identici per cui anche le configurazioni sono uguali, l’unico differente è l’asse Z in cui è stato utilizzato un motore e un asse di tipo differente, in questo caso ho impostato il mezzo passo (microstepping: 2) in modo da avere spostamenti precisi e minori possibilità di errore (nel caso il driver dovesse perdere un passo l’errore nello spostamento sarebbe la metà rispetto al comando full step).
Terminate le configurazioni iniziali è sufficiente eseguire il programma EMC2 per iniziare il collaudo.
logoEMC2

EMC2 e il primo avvio
L’interfaccia utente è estremamente semplice: nella parte alta abbiamo i comandi per accendere/spegnere la macchina, il pulsante per selezionare il file contenente il codice da eseguire (che viene poi mostrato nella parte bassa della finestra) e i pulsanti di avvio/pausa/fine
lavorazione.

ScreenShootEMC2

Nella parte centrale compaiono le opzioni per il comando manuale e dei cursori con cui selezionare le velocità di lavorazione oltre all’anteprima della lavorazione con evidenziati in rosso i limiti della macchina oltre i quali non è possibile proseguire.
Una volta azzerata la macchina, selezionato il codice contenente la lavorazione (in questo caso un file di esempio contenuto nel programma) si è pronti per iniziare a fresare. Come prima lavorazione è consigliabile disegnare (legando un pennarello sull’asse Z) delle semplici forme geometriche come dei quadrati o dei cerchi in modo da verificare che la lavorazione sia della giusta dimensione, che non ci sia un asse storto o qualche impostazione errata nel software.

Il linguaggio GCODE
Il GCODE è un linguaggio universale che viene utilizzato nella maggior parte delle macchine a controllo numerico, sia che si tratti di un tornio, di una fresa o di una stampante 3D.
Questo linguaggio contiene degli specifici comandi contenenti la posizione che ogni asse deve raggiungere, la velocità a cui muoversi ed altri parametri aggiuntivi quali ad esempio l’accensione del mandrino o il controllo di eventuali fluidi per semplificare le lavorazioni.

Sintassi GCODE
Come suggerito dal nome questo codice è formato da una serie di codici preceduti dalla lettera “G”,
questi sono i codici maggiormente utilizzati:
G0: movimento a velocità massima
G1: movimento a velocità prefissata
F: scelta della velocità del movimento (ad esempio F150 per muoversi di 150mm/min)
M3: accensione del mandrino (spegnimento con M5 o M9)
M6: cambio utensile (apparirà una finestra con l’utensile da inserire nel mandrino)
M0: pausa nel programma
M2: fine del programma
Ad esempio per disegnare un quadrato con lato 50mm, centro nell’origine e profondo 5mm:
F100 imposto la velocità a 100mm/min
G1 X-25.00 Y-25.00 mi sposto a X-25.00mm e Y-25.00mm
G1 Z-5.00 abbasso la testa a Z-5.00mm
G1 X25.00 Y-25.00 disegno i lati del quadrato
G1 X25.00 Y25.00
G1 X-25.00 Y25.00
G1 X-25.00 Y-25.00
G1 Z5.00 sollevo la testa
M2 fine lavorazione

Creazione del GCODE
Affinché la macchina possa eseguire una lavorazione bisogna aver pronto il GCODE contenente
la lavorazione da effettuare, questo codice è possibile generarlo in diversi modi.

Creazione di un circuito stampato con EAGLE
Una volta eseguito lo sbroglio del circuito stampato è possibile mediante un plug-in generare in maniera del tutto automatica il GCODE necessario. Il plug-in si chiama “pcb-gcode” e permette di creare il codice pronto da inviare alla macchina con infinite possibilità di personalizzazione, è possibile ad esempio inserire la dimensione dell’utensile, lo spazio minimo di isolamento tra le piste e la velocità a cui eseguire la lavorazione. Il plug-in inoltre genera anche il file contenente il piano di foratura in modo che semplicemente sostituendo l’utensile quando richiesto la macchina possa creare il circuito pronto da montare e saldare.

L’unico aspetto negativo di questo software (in continua evoluzione) è che genera un GCODE non sempre ottimizzato e che richiede un controllo manuale nel caso si voglia eseguire la lavorazione nel minor tempo possibile riducendo i tempi morti tra una pista e l’altra.
Creazione di un oggetto a partire da un disegno 2D È possibile realizzare un oggetto solito tridimensionale partendo da un disegno 2D fatto con un qualunque software di CAD, una volta salvato il progetto in formato DXF è sufficiente aprire il programma “DXF2GCODE” il quale lo convertirà automaticamente in file GCODE pronto da inviare alla macchina, è possibile inoltre selezionare l’ordine in cui eseguire ogni singola porzione della lavorazione in modo da ottimizzare i tempi di realizzazione riducendo lo spazio da percorrere tra una sezione e l’altra del disegno.

Creazione di un oggetto partendo da un immagine
Il software EMC2 supporta per sua impostazione nativa la possibilità di importare un immagine in scala di grigi che verrà poi automaticamente convertita in un modello 3D pronto da lavorare, è sufficiente aprire il programma e selezionare l’immagine per avviare automaticamente un wizard che ci guiderà nelle impostazioni necessarie alla lavorazione.
Questa tecnica è molto utile ad esempio nel caso in cui si voglia realizzare una versione tridimensionale di una fotografia.

Creazione di un oggetto partendo da un modello 3D
Per realizzare un oggetto partendo da un modello 3D è necessario una tipologia di software che prende il nome di “CAM”, tuttavia questi software sono molto complessi e costosi, essendo prevalentemente pensati per utenze professionali e non hobbistiche.

Autore: Luca Bennati
Info sull’autore: Ho iniziato fin da piccolo a smontare qualunque apparecchio che avesse almeno un filo e che mi capitasse tra le mani ispirato da mio padre, che per passione costruiva ed aggiustava dispositivi elettrici di ogni forma e dimensione, dalle tv alle radio.
Ho frequentato l’ITI E. FERMI di Mantova, presso il quale ho conseguito il titolo di Tecnico in Elettronica con il punteggio di 92/100esimi anche grazie al progetto che ho portato all esame: una fresa CNC costruita interamente in casa con l’aiuto di mio padre ed un amico artigiano.

Ti è piaciuto questo progetto?
Iscrivite oggi stesso alla nostra newsletter e ricevi gli aggiornamenti su tutti i nostri nuovi progetti direttamente nella tua email!

Lascia una Risposta

AVVISO CHIUSURA ESTIVA: Tutti gli ordini pervenuti e pagati oltre il giorno 22 Giugno verranno evasi a partire dal giorno 9 Luglio. Rimuovi