Welcome! Log In Create A New Profile

Advanced

MK4Duo evoluzione.

Posted by onekk 
MK4Duo evoluzione.
April 16, 2020 05:29AM
Apro un nuovo thread per discutere qui di una argomento che di tanto in tanto viene fuori:

Un firmware per le stampanti a 8bit, i punti fermi sono base MK4Duo, perché è facilmente configurabile e gira bene.

Espongo alcune idee, poi chi vorrà interverrà ed criticherà costruttivamente.

Premesse, al giorno d'oggi lo svilupppo è sulle schede a 32 bit, per cui non chiediamo troppo ad una scheda ad 8 bit.

Però molti progetti "educativi", anche di scuole superiori, usano la stampa 3d, e la compilazione del firmware è abbastanza ostica, l'uso poi a volte diventa complicato.

Il perché di tutto questo, mi è capitato un paio di volte di aiutare qualche ragazzo a portare a termine un progetto di "diploma" che riguardava l'autocostrusione di una stampante 3D ai fini della tesina di diploma.

Ho avuto modo di interloquire con gli studenti e i professori durante un paio di fiere dove si tenevano le "Olimpiadi Robotiche" ed erano presentait progetti degli studenti.

Sarebbe bello avere un Firmware funzionale e tarato sulle esigenze di avere una solida base di codice e che comprenda un "minimo sindacale", che però ci stia su una scheda a 8bit per cui Arduino Mega e schede simili all in one tipo la MKS gen v1.4 che si trova attorno ai 25 Euro in giro, e supporta i driver "sostituibili" ed è gia dotata di connettore LCD integrato per il display RepRap grafico da 128x64.

Base minima sindacale.
- Display grafico RepRap Smart Graphics Display (128x64)
- se fosse per me salverei tutto sulla SD e non in EEPROM
- un paio di estrusori
- un Mosfet esterno per l'Heated Bed, che è una bestia grama per quanto riguarda le schede economiche, quindi il pilotaggio dei pin esterni, ma già e fattibile senza problemi.
- La possibilità di cambiare al volo il Beta del seosre di temperatura. (Nel passaggio tra PLA e ABS, sarebbe utile sostituire l'intero gruppo di estrusione, e visto la precisione intrinseca il modo più veloce è quello di cambiare il beta del sensore al volo)


Qui potremmo aggiungere roba strana, diciamo:
- ABL o UBL che dir si voglia
- cambio filo
- sensore di fine filo
- pausa in stampa per inserire eventuali bulloni ecc.
- Case light

Cose esotiche:

- La seriale la userei solo per passare i dati ad una schedina Wifi che serve come interfaccia grafica per leggere e comandare la stampante a distanza, (5 Euro) con software già affermati e testati.
- Diciamo magari estrusori multipli come i noti progetti italiani, ma tanto ci sono già in MK4duo, Dondolo, flusso canalizzatore ecc
- una seconda serial sarebbe carina per passare dati di comunicazione ad un secondo arduino esterno, per roba strana, controlli aggiuntivi non servono, la camera calda si può fare con un arduino nano, un paio di Mosfet e un display lcd a 16x2 righe collegato in I2C (diciamo 15 euro in tutto) l'arduino aggiuntivo gestirebbe tutto, basta che abbia il comando di accensione da parte del processore principale della stampante.

Questo comando sarebbe anche un semplice protocollo sulla seriale tipo "CC ON" per accendere e "CC OFF" per spegnere, se proprio vogliamo accorciare "CC0" e CC1" rapido e conciso.

Altre cose esoticissime, ma già testate.

Il menu personalizzato che al posto di eseguire cose, esegue un file sulla SD che contiene i comandi da eseguire, ad esempio:


#define CUSTOM_USER_MENUS
#define USER_SCRIPT_DONE ""
#define USER_DESC_1 "Home & ABL"
#define USER_GCODE_1 "G28\nG29"
#define USER_DESC_2 "Scalda a GT"
#define USER_GCODE_2 "M23 ccg1.g\nM24"
#define USER_DESC_3 "Raffredda"
#define USER_GCODE_3 "M23 cgc2.g\nM24"
#define USER_DESC_4 "Scarica Filamento"
#define USER_GCODE_4 "M23 cgc3.g\nM24"
#define USER_DESC_5 "Carica Filamento"
#define USER_GCODE_5 "M23 cgc4.g\nM24"

Forse queste cose si possono già fare, poter intervenire sulle variabili di stampa durante la stessa.:

- ovverride della temperatura di estrusione,
- regolazione fine degli step per mm dell'estrusore,

Informazioni sul display:

- Ho notato che durante la stampa la posizione non si aggiorna velocemente , a parer mio serve a poco avere sul display una informazione non utile, se aggiungiamo poi che la velocità di aggiornamento è bassa secondo me risparmierebbero "cavalli vapore" al processore.
- Durante i movimenti manuli, ed in generale quando non si sta stampando le posizioni servono e nei movimenti sono basilari


Ordine dei menù ne dovremmo discutere.


L'intento è quello di raccogliere l'esigenza se c'è di funzioni nel firmware, tenendo conto delle premesse, scenario:

- Stampante autocotruita, con un occhio alla economicità e alla reperibilità
- Meccanica cartesiana
- Scheda a 8 bit
- Non driver esotici TMC programmabilil al volo ecc, e altra roba esotica le potremmo escludere.
- firmware che si possa adattare alla meccanica senza ricompilare.

In pratica c'è già quasi tutto se non tutto in MK4Duo, però il fatto che debba gestire le schede a 32bit rende la lettura del codice difficoltosa, nello scenario della classe di un istituto tecnico, la possibilità di comprendere il codice ritengo sia importante.


Mi chiedevo quanto hanno idee simile alle mie e quanti potrebbero aiutarmi a mettere a punto le idee e magari un firmware (Mago Alberto)

Saluti

Carlo D.


P3Steel - MKS GEN v1.2 e REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER + Gen 7 MOSFET (HotBed) + alimentatore step-down 12V -> 5V
Firmware MK4duo 4.3.6 con ABL induttivo con LJ18A3 - Slic3R (Originale) ed ESP3D per controllare la stampante da remoto.
HotEnd Cinese V6 clone con ugello da 0.4mm.

[My Building Log]
Sorry, only registered users may post in this forum.

Click here to login