Slic3r 1.2.5 experimental is out!

Il nostro instancabile Alessandro ha appena rilasciato la versione 1.2.5 di Slic3r!

Moltissime le novità tra le quali la possibilità di ruotare i pezzi lungo tutti gli assi, un anteprima 3d fighissima degli STL e molto altro ancora! Grazie Ale!

VN:F [1.9.22_1171]
Rating: 8.6/10 (9 votes cast)
VN:F [1.9.22_1171]
Rating: +2 (from 4 votes)

Slic3r 1.2 – layer infill avanzato

A seguito di questa discussione sul forum RepRap Italia e a una chiacchierata con Alessandro, ho deciso di scrivere una guida sulla gestione avanza degli infill in Slic3r.

Con le nuove funzionalità ora è possibile variare la densità dell’infill all’interno dell’oggetto. A cosa serve? In alcuni modelli particolari può tornare utile avere densità diverse, come ad esempio nel manico di un ukulele. Infatti nella stampa dello strumento era necessario rinforzare la zona tra la paletta e il manico; ma questo comportava dover stampare ad elevata densità anche il resto del manico, con spreco di materiale, tempo ed eventuali problemi di warping.

Per ottenere ciò innanzitutto dobbiamo andare a creare un solido corrispondete allo zona in cui vogliamo variare l’infill:Sezione variazione infill

Nel caso sopra ho fatto una sezione completa dell’oggetto (il prisma), ma avrei potuto fare anche solo una porzione, oppure una sezione dell’area interna. Procediamo con l’esportare in formato STL del modificatore.

Importiamo normalmente in slic3r il nostro modello e ci clicchiamo sopra col tasto destro e selezioniamo “settings”:

Slic3r

ora clicchiamo su “Load Modifier”:

Slic3re selezioniamo l’stl del modificatore, che comparirà sovrapposto graficamente all’oggetto:

slicercon l’stl del modificatore selezionato, clicchiamo sul tasto verde con il “più” e dal menù che ci si apre selezioniamo Infill -> fill density:

Slicere poi variamo la densità:

Schermata-3Ed ecco il risultato:

Schermata-3Possiamo anche aggiungere più modificatori per oggetto, ottenendo ad esempio il seguente risultato:

Schermata-3Nella prossima guida vedremo come personalizzare le geometrie interne dell’infill, con una qualsiasi forma da noi creata.

 

VN:F [1.9.22_1171]
Rating: 7.2/10 (9 votes cast)
VN:F [1.9.22_1171]
Rating: -1 (from 3 votes)

Slic3r: eseguire script post generazione G-Code

È stata possibile la realizzazione di questo articolo grazie all’aiuto di Michele Beltrame di ItalProesperto di programmazione in Perl oltre che fervente sostenitore dell’OpenSource. Ovviamente sono state fondamentali le indicazioni fornitemi dall’ineguagliabile Alessandro Ranellucci. Questa guida prende spunto da questa pagina: http://manual.slic3r.org/PostProcessingScripts.html

Slic3r, tra le tante opzioni disponibili, ci permette di eseguire degli script dopo l’elaborazione del nostro G-Code; il programma ci fornisce questa possibilità in modo da poter modificare il codice in base alle nostre esigenze. Ciò si rileva estremamente utile, poiché andare a modificare il codice sorgente di Slic3r non è una cosa semplice per chi non ha dimestichezza con la programmazione.

Lo script può essere scritto in un qualsiasi linguaggio, ma siccome abbiamo già tutto pronto per Perl, conviene usare direttamente quello.

Prima di tutto doppiano dire a Slic3r che script eseguire. Andiamo su Print Settings –> OutPut Option –> Post porcessing Script

Qui dobbiamo inserire il percorso del nostro file:

  1. se siamo sotto linux il percorso sarà simile a questo:  /home/mio_utente/cartella_dove_ho_salvato/./script.pl      Ricordiamoci che bisogna anteporre ./ prima del nome dello script
  2. Se siamo sotto windows:
    C:\percorso_file\script.pl

Ora procediamo a scrivere il nostro codice; dovendo rielaborare di fatto un file di testo, la funzione principale che deve eseguire è quella di cercare una stringa e sostituirla con un altra. Questo può tornare utile ad esempio se vogliamo che la stampante esegua un determinato comando un layer si ed uno no, oppure dopo un determinato numero di layer, oppure al cambio di estrusore. Di possibili motivazioni ce ne sono molte.

Iniziamo:

#!/usr/bin/perl -i

use strict;
use warnings;
use utf8;

l’opzione -i permette di eleborare più facilmente il G-Code mentre le restanti righe servono per dichiarare le tre librerie elencate.

$^I = '.bak';

questa serve se stiamo lavorando con Windows, altrimenti sotto linux è superflua.

while (my $riga = <>) {
    $riga =~ s/La_stringa_da sostituire/Il_mio_primo_comando\
Il_secondo_comando/g;
    $riga =~ s/La_stringa_da sostituire2/Il_mio_terzo_comando/g;
print $riga;
}

Il while serve a fare un ciclo in modo da leggere tutte le righe del G-Code;

$riga =~ s/……./ va a definire una variabile stringa; La_stringa_da sostituire è l’elemento da sostituire, mentre Il_mio_primo_comando è l’elemento sostitutivo. L’ultimo comando deve essere seguito da /g;

Ricordatevi che se volete inserire più di un comando, la sintassi del G-code vuole che siano incolonnati a capo, e quindi dopo ogni istruzione va inserito il carattere \

Se abbiamo un po’ di confidenza con la programmazione potremmo arrivare ad implementare istruzioni veramente interessati, che fanno uso di IF o altri sistemi.

VN:F [1.9.22_1171]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Slic3r: aumentiamo la qualità di stampa con tempi contenuti.

Uno dei parametri per determinare la qualità di stampa è il layer height, cioè lo spessore con cui viene depositata la plastica. In teoria per avere un oggetto identico a quello modellato, dovremmo avere un numero infinito di slices (fette) con uno spessore infinitesimo. Nel mondo reale ciò non è possibile e quindi si introduce un errore dovuto al “campionamento” del volume, cosa che si nota molto sopratutto sulle superfici curve.

Problema di slicingOvviamente più le fette sono sottili e meno risalta questo problema, ma man mano che aumentiamo la risoluzione (diminuendo gli spessori) e più i tempi di stampa aumentano; questo a dilatazione dei tempi di realizzazione purtroppo non ha un aumento proporzionale (es se stampo a 100 micron, impiego esattamente il triplo del tempo impiegato per 300 micron), ma decisamente più alto perché bisogna anche considerare i tempi di traveling ed altri spostamenti del carrello e dell’estrusore.

Per fortuna Slic3r ci permette, con opportune impostazioni, di mantenere una certa qualità di stampa a tempi contenuti; il tutto grazie alla possibilità di realizzare perimetri e riempimenti con spessori differenti.

Nel nuovo Slic3r 1.0.0RC1 nella tab “Print Setting” alla voce “Infill” troviamo l’impostazione “reducing printing time”:

InfillVariando il numero di layer, slic3r genererà un gcode tale che ogni N perimetri viene realizzato un riempimento. Se ad esempio abbiamo impostato come layer height 100 micron, la stampante farà 3 perimetri da 100 micron e poi procederà con un infill da 300 micron. Ovviamente ciò diminuisce i tempi di stampa, mantenendo una qualità elevata al tatto ed alla vista.

Ho stampato due idle del greg extruder: uno con layer height ed infill a 100 micron ed il secondo con layer height 100 micron ed infill a 300 micron; gli oggetti risultano identici, ma il secondo ha impiegato il 4% di tempo in meno. Ho generato il gcode di oggetti più complessi e con parecchio riempimento, e il tempo stimato di stampa mi dava riduzioni anche del 33%.

Idle greg extruder

Torno a complimentarmi con Alessandro Ranellucci per l’ottimo lavoro che ha svolto e per l’enorme contributo che sta dando al progetto RepRap.

VN:F [1.9.22_1171]
Rating: 9.5/10 (2 votes cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Slic3r 0.9.9 is out!

È finalmente disponibile la nuova versione di Slic3r, che potete scaricare al solito indirizzo: www.slic3r.org.

Una delle novità più gustose ed attese è sicuramente l’implementazione del Raft!!! :-)

Per chi non lo sapesse il Raft è una “suoletta” a griglia che si stampa prima dell’oggetto desiderato; serve sopratutto ad evitare deformazioni (specialmente se si stampa in ABS) e facilita la rimozione dal piatto.

Alessandro, come al solito, ottimo lavoro!

Raft su slic3r

VN:F [1.9.22_1171]
Rating: 1.0/10 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)