Come creare una base di codiceG ( gcode ) per la stampante3d . Quella parte che serve per preparare la stampante 3d in modo tale che sia pronta per la stampa. Incollo qui sotto il codice che ho utilizzato nel video poi andrò a semplificarlo fino ad ottenere una base .
;FLAVOR:Marlin ;TIME:589 ;Filament used: 0.243068m ;Layer height: 0.1 ;Generated with Cura_SteamEngine 4.0.0 M104 S200 M105 M109 S200 M82 ;absolute extrusion mode M73 P0 M158 G21 G90 M104 S220 T0 M109 S100 T0 G162 X Y F2500 G161 Z F1100 G92 Z-5 G1 Z0.0 G161 Z F100 M132 X Y Z A B G1 X230.0 Y5.0 Z10.0 F3300.0 M6 T0 M6 T0 M108 R3.0 T0 G1 X230 Y5 F3300.0 G1 Z0.6 F1100 M108 R4.0 G4 P1500 M105 G1 X210.0 Y5.0 Z1 F3300.0 G92 E0 G1 F1500 E-6.5 ;LAYER_COUNT:99 ;LAYER:0 ;TYPE:WALL-INNER G0 F3600 X120 Y70 G1 F1500 E0.01 G1 F800 X150 Y70 E0.02 G1 X150 Y100 E0.04 G1 X120 Y100 E0.06 G1 X120 Y70 E0.08 G0 F3600 X100 Y60
Come esercizio , voglio creare la prima parte del codice che serve per preparare la stampante . . Elimino dal codice g qui di sopra i comandi di temperatura e l’estrusione che al momento non servono andrò a spiegare quei codici nei miei prossimi articoli .
M73 P0 M158 G21 G90 G162 X Y F1000 G161 Z F1000 G92 Z-5 G1 Z0.0 G161 Z F100 M132 X Y Z A B G1 X230.0 Y5.0 Z10.0 F1000.0 G92 E0 G0 F1000 X120 Y70 G0 F1000 X100 Y60
Il metodo che sto adoperando e un po particolare è importante capire il perché..!!?? Adesso mi spiego . Nel mercato troviamo moltissime marche di stampanti 3d . Ogni una di esse a specifiche diverse . Il metodo che sto descrivendo e come una scorciatoia che si può utilizzare su qualsiasi modello di stampante 3d. Ora descrivo brevemente i codici che ho prelevato :
M73 P0 ( inizia la procedura di costruzione ) M158 (imposta un nuovo arresto massimo per un asse) G21 (imposta i millimetri (MM) come unita di misura ) G90 (imposta l'attuale posizione come assoluta ) G162 X Y F1000 ( Porta le assi X Y in posizione"Home position"(dipende dal firmware) G161 Z F1000 (Porta l'asse Z in posizione"Home position") G92 Z-5 (imposta l'attuale posizione dell'asse Z come -5 (solo per la mia stampante) G1 Z0.0 (sposta l'asse Z al punto 0 (zero) G161 Z F100 (Porta l'asse Z in posizione"Home position") M132 X Y Z A B ( Qui richiama tutti i valori "offsets" memorizzatati nel firmware G1 X230.0 Y5.0 Z10.0 F1000.0 ( posiziona l'ugello nel punto di partenza) G92 E0 (Imposta la posizione di origine dell estrusore in questo caso pari a 0) G0 F1000 X120 Y70 (Sposta l'ugello nelle coordinate X120 Y70) G0 F1000 X100 Y60 (Sposta l'ugello nelle coordinate X100 Y70 )
Quello che ho ottenuto è una base compatibile con la mia stampante Hamlet da qui posso andare ad aggiungere altri comandi .
“Bla bla bla ma funziona ?!”
Ce da notare che come si vede nel video la stampante non aspetta di raggiungere le temperature di estrusione e non estrude nulla . In questi casi sarebbe saggio lasciare l’estrusore vuoto !!
La base con il codice g che ho prelevato sulla mia stampante funziona ! Quello che voglio fare e renderla un po più corta eliminando i comandi che penso non servono .
La trasformo come segue per creare una base di codiceG ( gcode ) per la mia stampante3d :
M73 P0 ( inizia a costruire ) M158 (imposta un nuovo arresto massimo per un asse) G21 (imposta i millimetri (MM) come unita di misura ) G90 (imposta l'attuale posizione come assoluta ) G162 X Y F1000 ( porta le assi X Y in posizione"Home position") G161 Z F1000 ( porta le assi X Y in posizione"Home position") M132 X Y Z A B ( richiama i valori "offsets" memorizzatati nel firmware") G1 Z30 F1000 (sposta l'asse Z al punto z30 mm) G92 E0 (imposta come 0 il valore del estrusore ) G0 F1000 X120 Y70 Z50 (sposta l'asse x y nei punti x120 y70)
Ora mi sembra perfetto vediamo come si comporta nella stampante :
Nel articolo che segue voglio inserire i comandi per estrudere il filamento !