Slic3r: il lato software della stampa 3D by Alessandro Ranellucci

51
[email protected] - makerblog.it Alessandro Ranellucci Slic3r: il lato software della stampa 3D mercoledì 3 aprile 13

description

Il progetto RepRap e altre iniziative derivate offrono la possibilità di costruire stampanti 3D a basso costo; la diffusione è ormai notevole anche in Italia. Per guidare questo hardware occorre un software che trasforma un modello 3D in una strategia di costruzione e quindi nei relativi movimenti della macchina. Il software più diffuso (circa 25.000 utenti), più attivo e più aperto è Slic3r, open source, scritto in Perl dall’autore del talk. Si descriveranno il progetto, gli algoritmi di geometria computazionale usati, i prossimi obiettivi, la community, i modelli di finanziamento.

Transcript of Slic3r: il lato software della stampa 3D by Alessandro Ranellucci

[email protected] - makerblog.it

Alessandro Ranellucci

Slic3r: il lato software della stampa 3D

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Topolino, marzo 2013. Un indicatore della diffusione della stampa 3D anche in Italia.

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Questa storia comincia due anni fa, con il mio primo ed ultimo plastico architettonico commissionato ad un service di prototipazione: oltre 1.000 euro per un modellino 25x25cm. Cominciai così a chiedermi se vi fossero alternative...

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

RepRapmercoledì 3 aprile 13

Trovai su Internet una comunità di centinaia di persone che dialogava attraverso un canale chat ed un forum, ispirandosi al lavoro di un professore inglese, nell’intento di costruire una macchina autoreplicante...

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

ICANBUILD.IT

mercoledì 3 aprile 13

Comprai così un kit tedesco e mi costruii la mia prima stampante.

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

I primi risultati erano così così ma incoraggianti...

Slic3r: il lato software della stampa 3D

C’era una voltaSkeinforge...

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

E la colpa non era del tutto mia. Il software disponibile all’epoca era lento e complicato da usare, oltre che inadatto ai miei scopi.

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Torniamo ai giorni nostri. Slic3r è un software moderno per la stampa 3D, forse il più diffuso, supportato da una vasta community.

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Questo sono io che guardo un piccolo me stesso stampato. Con affetto paterno.

Slic3r: il lato software della stampa 3D

Obiettivi iniziali:

makerblog.itAlessandro Ranellucci

· velocità di elaborazione· pulizia del codice· nuove funzioni· semplicità di utilizzo

mercoledì 3 aprile 13

L’obiettivo della semplicità è successivamente venuto meno... ma ne parleremo più avanti.

Slic3r: il lato software della stampa 3D

Ma esattamente... cosa fa Slic3r?

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Affetta il modello da stampare.

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Genera i movimenti della stampante [video].

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Calcola il flusso da estrudere [video].

Slic3r: il lato software della stampa 3D

ok

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3D

Slic3r è scritto in:

PerlCC++

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3D

...Perl?

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

Una valida scelta per Slic3r

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3D

sintassi concisa

makerblog.itAlessandro Ranellucci

my @points = map @$_, map @$_, grep $_->encloses_point($point), grep $_->area >= $threshold, @expolygons;

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

wxWidgets per l’interfaccia grafica

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

distribuzione di eseguibili multipiattaforma self-contained

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

integrazione di codice C e C++

multithreading (decente)

strumenti di profilazione

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3D

...torniamo a Slic3r

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3D

(Alcuni) algoritmi geometrici usati:

makerblog.itAlessandro Ranellucci

• point in polygon• point in segment• nearest point• points visibility in non-convex polygon• line intersection• linestring clipping• merge collinear lines• bounding box• Douglas-Peucker simplification• polygon packing• polygon union/difference/intersection/xoroffset• Voronoi diagram• medial axis• convex hull• ...

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3D

Lavorare per layer consente di ridurre (quasi) tutti i problemi tridimensionali a problemi bidimensionali

makerblog.itAlessandro Ranellucci

‣algoritmi più semplici e più efficienti

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3D

Esempio: generazione del riempimentomakerblog.itAlessandro Ranellucci

1.ruoto il poligono

2.trovo la bounding box

3.genero linee verticali

4.taglio le linee con il contorno

5.unisco le linee tagliate con un TSP

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3D

Slic3r è un progetto open source con una forte community

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3D

13.000 righe di codice25.000 download per release144 fork su GitHub1.063 issue (aperte e chiuse) :-(20 e-mail al giorno :-((100 utenti nel canale #slic3r su IRC2.072 post nel forum

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3D

Slic3r è un progetto open source rilasciato sotto la licenza AGPLv3

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

It’s a git life

mercoledì 3 aprile 13

Tutta la vita del progetto si svolge su GitHub e nel canale #slic3r su FreeNode IRC.

Slic3r: il lato software della stampa 3D

Smoke-testing distribuito

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

La community segnala problemi, identifica le cause, suggerisce soluzioni.

Slic3r: il lato software della stampa 3D

Come ha influito Slic3rsulla stampa 3D?

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

Velocità e qualità

mercoledì 3 aprile 13

Nel dicembre 2011 viene annunciato il record di precisione. 10 micron. Questo grazie a Slic3r che ha permesso di lavorare ad alta qualità in tempi ragionevoli.

Slic3r: il lato software della stampa 3D

Più estrusori, più colori, più materiali

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Nell’autunno 2012 Slic3r ha consentito la stampa con macchine equipaggiate di più estrusori per ottenere oggetti multicolore oppure per usare un diverso materiale per il materiale di supporto.

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

RICHRAP.BLOGSPOT.COM

mercoledì 3 aprile 13

...e la community ha subito approfittato della nuova potenzialità per sviluppare soluzioni ancor più complesse. Il tema è sempre quello di sbloccare delle potenzialità diffuse, abilitando ciò che bloccava la sperimentazione in certe direzioni.

Slic3r: il lato software della stampa 3D

Algoritmi per risparmiare tempo e materiale

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

A sinistra: la nuova funzione per effettuare il riempimento solo dove necessario per sostenere le superfici orizzontali, risparmiando tempo e materiale. A destra: la possibilità di stampare le pareti esterne con maggiore dettaglio rispetto all’interno, superando così la rigida suddivisione in layer.

Slic3r: il lato software della stampa 3D

Strategia di raffreddamento integrata

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Una logica unitaria per il controllo del raffreddamento che modula la velocità della ventola e al tempo stesso decide se rallentare la velocità di stampa in funzione della geometria degli oggetti.

Slic3r: il lato software della stampa 3D

Il problema della semplicità d’uso:

makerblog.itAlessandro Ranellucci

· infinite varianti di macchine· tanti produttori di filamento· tante esigenze

semplicità d’uso vs. flessibilità

mercoledì 3 aprile 13

...ma da Slic3r 0.9.9 esiste un “simple mode” che dovrebbe rendere Slic3r semplice da capire anche per i nuovi utenti.

Slic3r: il lato software della stampa 3D

Controllo del flussomakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

Controllo del raffreddamento

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3D

Materiale di supporto per sottosquadri

makerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

Idee per il futuro

· supporto per archi e NURBS?· ottimizzazione per dispositivi embedded?· altre tecnologie di prototipazione rapida?

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

Crowdfunding e non solo

e altri...

mercoledì 3 aprile 13

Sin da subito il progetto è stato sostenuto da tante donazioni spontanee da parte degli utenti, che volevano ringraziare, incoraggiare e restituire in parte quanto il software ha permesso loro. Poi sono arrivati gli sponsor seri. Produttori di filamento e di stampanti che ritengono critiche l’esistenza e la continuità del progetto Slic3r.

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

Hi Mike.

mercoledì 3 aprile 13

Mike Sheldrake è un programmatore californiano che lavora part-time su Slic3r grazie ai finanziamenti degli sponsor. Nell’altra metà del tempo realizza tavole da surf con macchine CNC. Far incontrare le esigenze di tutti è stato un gran successo: in questo modo sono contenti gli sponsor perché il progetto procede più velocemente, sono contento io perché ho un aiutante, è contento Mike perché è pagato per fare ciò che lo diverte, è contenta la community perché Slic3r è in continua evoluzione.

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Dal 2013, sempre grazie ai finanziamenti degli sponsor, è in corso la redazione di un manuale completo a cura di Gary Hodgson.

Slic3r: il lato software della stampa 3D

Cose ancora da fare

makerblog.itAlessandro Ranellucci

· anteprima 3D· live slicing· editor interattivo· materiale di supporto perfetto· altre tecnologie di stampa· ...

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3Dmakerblog.itAlessandro Ranellucci

mercoledì 3 aprile 13

Slic3r: il lato software della stampa 3D

¿ Q&A ?makerblog.itAlessandro Ranellucci

RICHRAP.BLOGSPOT.COM

mercoledì 3 aprile 13