gianlu.gi Inviato 15 Gennaio 2017 Condividi Inviato 15 Gennaio 2017 Ciao a tutti come da titolo vorrei modificare il firmware marlin aggiungendo dei comandi per arduino, mi spiego meglio: finalmente dopo aver usato per un po la stampante 3d della mia scuola ho deciso di comprare un prusa i3 alla quale vorrei aggiungere un comando per accendere una striscia led che illumini il piatto all'inizio del processo di stampa per poi spegnerla a fine stampa accendendo delle ventole ausiliarie per raffreddare il tutto (vorrei mettere la stampante all'interno di un cubo di plexiglass per evitare depositi di polvere). Mi rivolgo a voi, è possibile fare questa modifica? se si come? Grazie, Gianluigi Cita Link al commento Condividi su altri siti Altre opzioni di condivisione...
Alep Inviato 15 Gennaio 2017 Condividi Inviato 15 Gennaio 2017 Dal punto di vista software non ci sono grandi problemi, io non ho mai aggiunto comandi al marlin ma ci stavo pensando, ed è sicuramente fattibile, Certo non puoi pensare di farlo se non sei pratico di programmazione di Arduino ed è difficle che qualcuno lo faccia per te, dritte ne trovi, programmi completi no. Una modifica del genere può richiedere due o tre giorni di lavoro se non sei gia pratico del Marlin Il problema più grosso sta dal punto di vista hardware. Per comandare qualsiasi cosa occorre un segnale in uscita, Nell'Arduino mega ci sono alcune uscite non utilizzate nelle stampanti 3d, il probelma è arrivarci. Se la tua stampante monta un Arduino+Ramps o simili è facile reperire i segnali perchè Arduino li rende tutti disponibili, ma se la tua scheda è una scheda unica come la GT2560 o simili il problema è molto più grosso perchè i piedini del processore si fermano sotto il processore e sono di difficile accesso. Hai alcuni segnali utilizzabili rinunciando ad altre prestazione. Per esempio se utilizzi un solo estrusore 3 segnali arrivano inutilizzati al secondo estrusore. Prego, Alep Cita Link al commento Condividi su altri siti Altre opzioni di condivisione...
gianlu.gi Inviato 16 Gennaio 2017 Autore Condividi Inviato 16 Gennaio 2017 Ciao Alep, la stampante che mi deve arrivare dovrebbe montate Arduino + ramps separati, ma se così non fosse acquisto una scheda ramps e ci metto l'arduino mega che uso per perdere tempo. Dal punto di vista di programmazione arduino me la cavo bene, ieri sera stavo curiosando all'interno del codice del marlin (non sono riuscito a firlo) cercando appunto dove inserire queste semplici stringhe senza trovare nulla. Giusto per intenderci vorrei che questi comandi vengano eseguiti prima il gode di inizio e dopo quello di fine. In che sezione del marlin sono contenute le procedure di stampa? Cita Link al commento Condividi su altri siti Altre opzioni di condivisione...
Alep Inviato 16 Gennaio 2017 Condividi Inviato 16 Gennaio 2017 La sezione che interessa a te, quella del discernimento dei comandi sta nel file marlin_main.cpp e questo è un esempio di come tratta un comando preso a caso /** * M203: Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec */ inline void gcode_M203() { for (int8_t i = 0; i < NUM_AXIS; i++) { if (code_seen(axis_codes)) { max_feedrate = code_value(); } } } Tieni presente che il Marlin è integralmente parametrato per potersi adattare a qualsiasi meccanica, per cui non vedrai mai un comando diretto ad una porta, ma sempre tramite routine e variabili Cita Link al commento Condividi su altri siti Altre opzioni di condivisione...
gianlu.gi Inviato 17 Gennaio 2017 Autore Condividi Inviato 17 Gennaio 2017 ok in questo caso andrei ad aggiungere un comando gcode? perchè io vorrei realizzare una sequenza indipendente da esso in modo tale che se voglio stampare su altre stampanti lo stesso file non si creano problemi di comandi gcode assenti. Cita Link al commento Condividi su altri siti Altre opzioni di condivisione...
Messaggi raccomandati
Partecipa alla conversazione
Puoi pubblicare ora e registrarti più tardi. Se hai un account, accedi ora per pubblicarlo con il tuo account.