Logo PJ
Home
Arcade
Musica
FabLab
Linux
DreamBox
Giochi
 
   Introduzione   Stampa 3D   CNC   Laser 

Realizzazione della CNC

A quasi un anno dalla realizzazione della stampante 3D voglio ora realizzare uno strumento che mi aiuti nella lavorazione del legno. Il progetto parte come fresa CNC con un piccolo motore a corrente continua ma potrebbe evolvere con l'installazione di un laser per il disegno e il taglio.

Non ho intenzione di inventare nulla di nuovo, ma di partire da progetti presenti in rete e da soluzioni presenti sul mercato (prettamente cinese, soprattutto per una questione economica). Queste le linee base:

  • La struttura verrà realizzata con profilato di alluminio da 2 cm per lato.
  • Per gestire i movimenti nell'asse Y verrà implementato un piatto mobile, in maniera analoga alla stampante 3D. Questo approccio limiterà le dimensioni massime dei lavori ma risulta di più semplice implementazione.
  • Per muovere gli assi non verranno utilizzate cinghie ma barre filettate. Anche per i binari dei carrelli verranno utilizzate barre metalliche.
  • Poiché nei lavori di fresatura si ha un continuo alzare ed abbassare della punta da taglio, diversamente da quanto fatto con la stampante 3D il binario dell'asse X avrà un'altezza fissa: l'asse Z alzerà unicamente il supporto che sorregge la fresa.
  • Dal momento poi che un lavoro CNC inizia sempre con l'impostazione dell'origine del taglio, almeno inizialmente non verranno gestiti i fine corsa. Potrei introdurli successivamente se riterrò utile una protezione delle meccaniche da comandi errati.
  • Come fresatrice verrà utilizzato un motore in corrente continua da 12V con punte dedicate. In questa maniera posso anche l'accensione e lo spegnimento dell'utensile.
  • Per la gestione dei motori verrà utilizzata una scheda dedicata che via USB riceve i comandi G-CODE e pilota di conseguenza i movimenti nei  tre assi e l'accensione del motore.

Costruzione del telaio

Come scritto precedentemente il telaio è stato realizzato utilizzando estrusi di alluminio di sezione quadrata da 2 cm per lato. Per unire i vari pezzi sono stati utilizzati angolari, sempre in alluminio, fissati con appositi dadi che si inseriscono nelle scanalature laterali delle barre. Ho voluto iniziare il progetto con una dimensione media della base, 40 cm di larghezza per 30 cm di profondità, ottimo compromesso per poter lavorare parti in legno abbastanza grandi senza occupare troppo spazio. Anche in altezza non aveva senso eccedere con le misure, visto che andrò a lavorare soprattutto con pannelli di legno di massimo 20mm di spessore. Nulla vieta in un secondo momento di aumentare le dimensioni del telaio in uno qualsiasi degli assi sostituendo le barre corrispondenti.

I binari per i carrelli sono stati realizzati con barre di acciaio da 8 mm di diametro, fissate con apposite staffe acquistate in Cina o stampate in 3D. Anche per le barre filettate, direttamente collegate tramite giunti ai motori passo passo, sono stati utilizzati componenti standard recuperabili in qualsiasi negozio specializzato in materiale per CNC o stampanti 3D. I motori sono gli stessi che ho utilizzato per la stampante 3D mentre i cuscinetti a sfera differiscono leggermente. L'intero supporto che gestisce l'asse Z scorrendo sull'asse X e che sostiene la fresatrice è composto di due parti stampate in 3D.

L'elettronica

Per l'interfacciamento con il computer ho utilizzato una scheda cinese (sul sito di Grbl viene chiamata Woodpecker PCB) che in pratica monta lo stesso processore dell'Arduino Nano; è stata programmata con il software Grbl per interpretare i comandi in arrivo via USB dal computer e pilotare i motori che gestiscono gli assi X, Y e Z (massimo 12V/2A), la fresatrice (massimo 60V/10A) e ha pure il collegamento per un diodo laser (massimo 12V/5A). Inoltre è predisposta per gestire gli switch di fine corsa: basta collegarli al connettore e configurare opportunamente Grbl per utilizzarli.

Dopo una lunga ricerca su Internet, in un forum ho trovato la funzione dei pin presenti sul connettore in basso:

The external contacts are all GND.
2* Limit-X-Axis
2* Limit-Y-Axis
2* Limit-Z-Axis
A5 = Probe
A3 = Coolant Enable
A2 = Cycle Start/Resume
A1 = Feed Hold
A0 = Reset/Abort
D13 = Spindel Direction

Una volta collegata al PC, la scheda viene vista come porta seriale associata al dispositivo USB e può essere comandata dai vari software tramite comandi G-CODE.

La fresatrice

Inizialmente pensavo di utilizzare un Dremel fissato con un supporto appositamente stampato, ho preferito invece optare per un motore elettrico da 12V che raggiunge i 10000 giri al minuto: in questa maniera posso far pilotare direttamente alla scheda la sua accensione e ho un cavo elettrico in meno. Il mandrino ER11 mi permette di montare sia punte dritte che a V con albero di diametro 3.175 mm (praticamente le stesse dei Dremel).

Il motore è fissato al telaio tramite un supporto che scorre lungo i binari dell'asse Z; dal punto di vista elettrico invece è bastato collegare con due fili elettrici i terminali del motore al connettore della scheda.

I fine corsa

Appurato che la scheda supporta i fine corsa si tratta ora di montare gli switch per gestirli. Per evitare un numero eccessivo di fili ho optato per l'installazione dei soli switch all'origine degli assi, lasciando che sia il software ad evitare di superare i limiti massimi della macchina. Ho identificato le posizioni dove installare gli interruttori e ho stampato i supporti, dopodiché ho saldato i fili rosso/nero e ho applicato dei connettori all'altro capo per poterli collegare agevolmente alla scheda..

La scheda supporta anche il probing, ovvero la possibilità di rilevare automaticamente le coordinate di origine relative all'oggetto. Per fare questo occorre realizzare due terminali da collegare alla massa e al pin 5, nel mio caso due morsetti a coccodrillo. Una volta dato il comando di probe per uno dei tre assi, quando i due terminali entrano in contatto il movimento del motore si arresterà. Con i pannelli di legno utilizzo una basetta ramata attaccata ad uno dei morsetti e la appoggio sulla superficie del pannello fino al termine del probing.

RIFERIMENTI

  • Album fotografico su Flickr dove sono presenti le foto del progetto.
  • OpenBuildsItalia e CNC Store sono negozi italiani dove acquistare materiale specifico per CNC e stampanti 3D, compresi i profilati e gli accessori correlati.
  • Misumi è un negozio online dove è possibile comprare profilati, ferramenta e accessori utili per la costruzione del telaio.
  • Sito ufficiale di Grbl, il software inserito all'interno della scheda CNC che pilota i motori.
  • Tra i software per pilotare la scheda troviamo GRBL controller e l'applicazione JAVA UniversalGcodeSender.
  • Degno di nota il programma IntelliG-Code, che permette di pilotare una CNC basata su Grbl e possiede un sacco di caratteristiche uniche che consentono di realizzare fori o incisioni senza dover creare precedentemente i percorsi con un CAD. In pratica all'interno possiede un piccolo CAD che consente di realizzare semplici lavori, oltre ad una sezione per l'incisione diretta di forme come rettangoli o cerchi, di linee o sequenze di fori.
  • GrblGru è un software free nato con lo scopo di simulare l'esecuzione di file G-CODE, evoluto poi come client completo per pilotare una macchina CNC e come generatore di codice per realizzare semplici lavori senza dover utilizzare un programma CAD.
  • I gcodetools sono un'estensione per Inkscape che permette di esportare direttamente in formato G-CODE; gestendo i layer del programma è possibile generare piani di taglio differenti tra loro a seconda della profondità di incisione.
  • Tramite MakerCAM è possibile generare il G-CODE per la fresatura partendo da un'immagine vettoriale in formato SVG.
  • JScut è un altro CAM in linea che converte immagini SVG in sorgente G-CODE.
  • Mach4 è un programma molto macchinoso e complicato da configurare che dato il sorgente G-CODE pilota la fresa ed esegue il lavoro di incisione.
  • CAMotics è un simulatore di CNC: permette cioè di eseguire codice G-CODE e analizzarne il risultato senza sprecare tempo e legno. Utile quando si fanno prove di conversione o altri esperimenti. Un programma simile è JViewer.