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)

Ti si rompe la chiave dell’auto? Te la stampi a casa!

Circa un anno fa mi si è rotta la chiave-telecomando della Toyota Yaris; l’elettronica e la chiave metallica erano integre, ma si era crepato l’involucro plastico che teneva tutto insieme. Ho chiesto un duplicato all’autoconcessionario, ma il preventivo di oltre 100 euro mi ha spinto ad usare la replica che è sprovvista dell’elettronica (oltretutto la chiave avrebbe raddoppiato il valore stesso dell’auto, che quest’anno ha raggiunto la veneranda età di 15 anni).

Chiave toyota yaris

Siccome ho acquisito una certa dimestichezza con la modellazione CAD con Blender ed avendo appreso i comandi per lo “stop and go” della stampante, mi sono cimentato nell’impresa di ricreare la chiave, utilizzando però un “unica” fase di stampa: ho fermato la stampa per poter inserire la chiave e l’elettronica e poi l’ho riavviata in modo da ottenere un unico oggetto, che ovviamente è più solido e meno soggetto a rottura. Ecco i risultati:

Chiave toyota yaris stampata Chiave toyota yaris stampata

 

Al seguente link: modello chiave Toyota Yaris trovate l’STL.

Per realizzare la chiave dovete mettere un @pause al layer 40 per l’inserimento della chiave, ed un altro al layer 55 per l’inserimento dell’elettronica.

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