Configurazione delle basi del controller MKS Sbase V1.x a 32 bit e introduzione a Smoothieware.

Prolouge

Sono davvero contento di vedere come questa introduzione di base in Smoothieware e il controller MKS Sbase 1.x abbia ricevuto così tanta attenzione e spero davvero che possa aiutare le persone a iniziare o decidere di non farlo.

Di cosa si tratta:

Questo Instructables tratta di orientarci e configurare le basi della scheda controller MKS Sbase 1.x 32 bit e l'introduzione a Smoothieware. Può essere utilizzato anche per Smoothieboard anche nella maggior parte dei casi.

Ho intenzione di spiegare e configurarlo per funzionare come un nuovo controller nel mio clone Ultimaker 2 con un singolo estrusore.

Cosa non sarà:

Non entrerò nell'hardware della scheda, a parte la necessità di collegare i cavi pertinenti.

Non ho intenzione di fare nulla di avanzato nel firmware / configurazione

Sommario:

  1. Connetti e installa
    1. Connessione USB
    2. Installazione del firmware
  2. Configurazione di Smoothieware rispetto a Marlin
  3. Differenza evidente da Marlin
    1. Differenze meno ovvie
    2. File di configurazione e firmware
    3. Configurazione del firmware
    4. Commenti
  4. Firmware Passaggio 1: velocità di avanzamento predefinita
    1. 1/32 Multistepping
    2. Collegamento di motori
    3. Controller motore esterni
  5. Firmware Passaggio 2: limiti di velocità, pin e corrente dell'asse cartesiano
    1. Pins
    2. attuale
  6. Firmware Step 3: LCD, SD ed estrusore
    1. LCD e SD
    2. Configurazione dell'estrusore
    3. Corrente del driver Delta
  7. Firmware Step 4: configurazione del controllo della temperatura Hotend
    1. Tipo di termistore
    2. Sintonia PID
    3. Hotend Thermistor - Physical Layout
    4. Perni del riscaldatore Hotend - Layout fisico
  8. Firmware Step 5: configurazione del controllo della temperatura del letto riscaldato
    1. Tipo di termistore
    2. Letto di controllo della temperatura BANG-BANG
    3. Termistore a letto riscaldato - Layout fisico
    4. Perni riscaldanti del letto riscaldato - Layout fisico
  9. Firmware Passaggio 6: configurazione degli end-laptop
    1. Direzione di homing
    2. Disabilita i computer portatili non utilizzati
    3. Definire la dimensione degli assi
    4. Inversione dell'uscita del finecorsa
    5. Tassi di homing rapidi e lenti
  10. Passaggio firmware 7: Impostazioni di rete
  11. Step 8: Qual è il prossimo?
    1. Configurazione più avanzata?
    2. Utilizzo degli interruttori

Passaggio 1: Connetti e installa

Per installare i driver per la scheda MKS Sbase v1.x (apre il negozio su Aliexpress) sul nostro computer, dobbiamo prima andare e scaricare i driver necessari dal makerbase makerbase-mks su Github.com

Nota: non si desidera utilizzare il firmware MKS in quanto viene redatto. Utilizzare sempre il firmware di Smoothieware. Se confuso sul nome "Repository", allora guardalo come una cartella di file.

Fare clic sul file e fare clic su Scarica in Github e salvarlo da qualche parte sul computer, quindi estrarlo in una cartella.

Connessione USB

Collega USB alla scheda e osserva i LED nell'angolo in alto a sinistra.
Immediatamente il led D7 si illumina. Dopo un po 'anche D1 inizia a lampeggiare mentre D2 e D3 lampeggiano rapidamente.

Apri Gestione dispositivi e aggiorna i driver per il nuovo dispositivo USB Smoothie / Seriel con i driver firmati che hai appena scaricato da Github che si trova nella cartella facile da trovare:
\ MKS-SBASE \ MKS-SBASE \ driver \ smoothieware-windows-signeddriver-v1.0

Il mio installato bene su Windows 10 x64 pro.

Installazione del firmware

  1. Il firmware di MKS è solo una vecchia copia di Smoothieware, quindi vogliamo sempre usare la versione più recente di Smoothieware.
    1. In altre parole: utilizzare sempre il firmware di Smoothieware.
    2. Se non riesci a trovare il file config.txt dal smoothieware originale, basta usare quello di MKS.
  2. Scarica il firmware ufficiale dalla pagina del firmware di Smoothiewares che è una sottopagina sulla propria pagina Github (potresti voler scaricare il loro repository github completo (cartella) per trovare il loro file config.txt)
    1. Inizia utilizzando la versione stabile . Quando tutto funziona correttamente, puoi invece utilizzare la versione notturna. È la versione più recente, ma non ancora completamente testata e considerata come beta / test .
  3. Inserire la scheda SD nella scheda MKS Sbase e collegare il cavo USB. La tua scheda SD verrà ora mostrata nel tuo Esplora file.
    1. In caso contrario, è necessario assicurarsi di disporre dei driver installati.
  4. Se non riesci a trovare il file config.txt da Smoothieware, individua semplicemente il file config.txt in \ MKS Sbase \ MKS-SBASE-master \ MKSSBase-firmware e copialo sulla tua scheda SD.
    1. Smoothieware suggerisce di disabilitare il montaggio automatico su SD quando ci si collega a USB. Soprattutto quando si utilizza un MAC, poiché MAC OSX tende a fare cose funky in momenti strani.
    2. Non ho cambiato nulla sulla mia win10. E non è successo niente di grave l'anno scorso.
  5. Il D7 si illumina, poco dopo D1 segue. D2, D3, D4 lampeggiano e quindi D4 diventa fisso mentre D2 e ​​D3 continuano a lampeggiare.
    1. A questo punto, il firmware.bin modificato era stato modificato nel file firmware.cur sulla scheda SD
  6. Dopo aver aggiornato correttamente, il nome del file si trasformerà in firmware.cur.

Modifica o aggiornamento del firmware

Elimina semplicemente il file firmware.cur dalla tua SD, o rinomina in firmware.cur.old o simili e copia sul nuovo file firmware.bin nella tua SD. Spegni e riaccendi la stampante (scollega anche USB) e potrai vedere il tuo nuovo file firmware.cur sulla tua scheda SD.

Nota: dopo aver apportato modifiche al file config.txt in futuro, è necessario spegnere e riaccendere il controller, ovvero scollegare l'alimentazione (se in uso) e USB. È possibile inviare un comando di ripristino, ma solo tramite l'utilizzo del terminale reale e non tramite Printrun / Pronterface o simili.

È possibile utilizzare il firmware perimetrale che è potenzialmente un candidato di disagio, che ha più funzionalità, ma potrebbe anche contenere alcuni errori. Questo vale oltre questo Instructables.

Passaggio 2: configurazione di Smoothieware rispetto a Marlin

Sto usando il firmware Marlin su Arduino + Ramps da molto tempo, come la maggior parte delle persone 3D, quindi userò Marlin come fonte comparativa per la configurazione del firmware.

Differenza evidente da Marlin

La configurazione di Smoothieware viene eseguita in un singolo file config.txt che viene salvato direttamente sulla scheda SD, utilizzando Blocco note invece di un grande programma come Arduino IDE. Le impostazioni del firmware vengono aggiornate spegnendo e riaccendendo la stampante o inviando un comando di ripristino. Questo rispetto a Marlin con una grande quantità di schizzi (file) di cui abbiamo bisogno per tenere traccia e modificare - vedi Foto per le impostazioni della stampante che sto aggiornando attivamente qui!

Differenze meno ovvie

Ci sono alcune differenze meno ovvie tra Marlin e Smoothieware, dove le più importanti sono:

  1. Le velocità sono piuttosto confuse come una dispersione di mm / sec e mm / min in Smoothieware e Marlin, quindi bisogna esserne consapevoli. Non è presente alcun modello chiaro.
  2. Gli assi in Marlin sono elencati come XYZ ed Estrusore mentre gli assi in Smoothieware sono elencati come Alpha, Beta, Gamma e Delta / E0 ed E1

File di configurazione e firmware

Come avrai potuto notare, il firmware di Smoothieware si basa su 2 file. Un firmware.bin e un file config.txt . Esiste un file config.txt di base e un gruppo di file di configurazione preconfigurati presenti nel repository da MKS, situato in una sottocartella. Il file Config può anche essere nominato senza l'estensione .txt.

Nota: questo è un modello e non solo qualcosa da mettere e utilizzare.

Puoi scegliere quello che assomiglia di più alla tua stampante, come Delta o Cartesian . Vado solo con il file Config.txt di base.

Configurazione del firmware

Prima fai un backup del tuo file config.txt, quindi apri config.txt usando il blocco note. Disabilita "A capo automatico " perché potrebbe confonderti.

Nota : Smoothieware mette in guardia contro Notepad ++.

Ricorda anche di prendere in considerazione il moltiplicatore del microstepping. La mia configurazione qui si basa sul multistepping 1/32 per sfruttare la build dei driver DRV8825. Il ponticello multistepping è posizionato nell'angolo in alto a destra. (1)

Commenti

Puoi fare i tuoi commenti scrivendo # all'inizio della riga e poi nel testo. Questo è molto utile per ricordare di cosa si tratta.

Sto aggiungendo una riga all'inizio del file: # Ultimaker 2

Passaggio 3: Firmware Passaggio 1: velocità di avanzamento predefinita

Ho 300mm / sec in Marlin, che si traduce in 18000mm / min, quindi cambierò i 4000 preconfigurati da 4000 a 18000. La mia Ultimaker è molto ben sintonizzata, quindi potresti avere impostazioni molto più basse - o più alte se usi un Delta.
Default_feed viene tradotto in DEFAULT_MAX_FEEDRATE in Marlin.

alpha_steps_per_mm e beta_steps_per_mm devono essere cambiati in 160 mentre gamme_steps_per_mm è cambiato in 800.

l'accelerazione viene modificata in 300 e z_acceleration in 80

Multistepping 1/32

Tutti i precedenti sono 1/32 multistepping. Per utilizzare 1/32 è inoltre necessario impostare il ponticello corretto sul controller. Si trova quasi nell'angolo in alto a destra con 16 | 32 accanto. I pin sono chiamati J3 .

Nota: non cambiare alcun ponticello con l'alimentazione accesa. Incluso cavo USB collegato

Collegamento di motori

Non c'è davvero molto. È necessario disporre di alcuni connettori a 4 pin XH 2, 54 a 4 pin. Puoi usare anche dupont, ma tendono a cadere.

La scheda controller è chiaramente etichettata X ( Cm2_M2 ), Y ( Cm3_M3 ), Z ( Cm2_M4 ), E0 ( Cm2_M1 ) ed E1 ( Cm3_m5 ).

Controller motore esterni

Se è necessario collegare un controller motore esterno, è possibile farlo utilizzando i pin appena sotto il grande dissipatore di calore sopra i driver.

I pin-out sono etichettati Jc_M2, Jc_M3, Jc_M4, Jc_M1 e Jc_M5 elencati in ordine con i suddetti motori.

Passaggio 4: Firmware Passaggio 2: Limiti di velocità, pin e corrente dell'asse cartesiano

I valori predefiniti sono 10000 mm / min, che si traduce in 166 mm / sec (per mantenere il riferimento agli utenti Marlin), il che è sufficiente per molte stampanti. Nota come scrivo valori predefiniti / valore corrente nelle note dopo l'impostazione. Questa è una buona idea nel caso (quando) è necessario apportare modifiche.

Ho 300mm / sec sul mio Ultimaker 2, quindi inserirò 18000 per XY e 4800 per il mio asse Z.

Pins

Al momento non sto cambiando alcun pin, ma dobbiamo digitare _max_rate per ciascun asse, che su una stampante cartesiana è uguale a _axis_max_speed . Questo non è il caso delle stampanti Delta.

Quindi per alpha_max_rate e beta_max_rate inserisco 18000 e per gamma_max_rate inserisco 4800 .

Prendi nota del ! elencato dopo ogni _dir_pin - indica la direzione di un asse, il che significa che è possibile rimuovere o aggiungere ! se i tuoi assi stanno andando nella direzione sbagliata.

Torna indietro e modificalo in seguito, se necessario, invece di scambiare i cavi, cosa che non puoi fare se usi i connettori appropriati in ogni caso.

attuale

I miei motori XYZ Nema hanno una tensione di 3, 2 e 1, 7 amp.

Se volessi alimentare la corrente massima dei miei motori, imposterò _current su 1, 7 amp, ma i motori funzionerebbero piuttosto caldi, quindi proverò usando 1 invece che dovrebbe essere abbondante.

Ho impostato il mio motore Z su 0, 8 amp in quanto in realtà non sta facendo molto lavoro, traducendo in: gamma_current 0.8

Passaggio 5: Firmware Passaggio 3: LCD, SD ed estrusore

LCD e SD

Non cambierò nulla per quanto riguarda LCD e SD.

Configurazione dell'estrusore

Non sto usando l'estrusore originale, quindi i miei numeri saranno diversi qui !.

Ho decommentato due impostazioni qui: extruder.hotend.retract_length e extruder.hotend.retract_feedrate ma devo ammettere che non so se ciò sia necessario o meno, poiché lo configuriamo nel nostro dispositivo di scorrimento in ogni caso.

Corrente del driver Delta

Una cosa da notare qui è la corrente per il nostro driver delta, che si traduce nel nostro motore Extruder 01.

Il motore del mio estrusore è valutato a 2, 5 amp. Voglio dargli un po 'di succo, ma non farlo girare troppo caldo, quindi lo metterò a 1.5amp. Sto eseguendo un estrusore con cambio 5.1, quindi non ho davvero bisogno di pressarlo. 1.5amp è probabilmente anche troppo.

Passaggio 6: Firmware Passaggio 4: Configurazione controllo temperatura hotend

Non sto cambiando i pin o il connettore che usiamo, ma attenersi ai valori predefiniti.

Tipo di termistore

Cambio il tipo di termistore utilizzato. Sto usando l'hotend E3D, che viene fornito con un termistore Semitec, quindi devo cambiarlo.

Per trovare il termistore corretto, guardiamo: //smoothieware.org/temperaturecontrol#toc5

Sintonizzazione PID

Dobbiamo configurarlo, ma non possiamo davvero farlo in questa fase dal momento che abbiamo bisogno di tutto prima di tutto.

Quando sei pronto per farlo, il comando è leggermente diverso rispetto al firmware Marlin.

In Smoothiware il comando è M303 E0 S60 per testare a 60c. Ho fatto un test a 60 e poi di nuovo a 200 con nuovi valori.

Termistore di Hotend - layout fisico

Per collegare effettivamente il nostro termistore, diamo un'occhiata all'immagine dei nostri pin per capire dove lo colleghiamo.

Il connettore predefinito per il termistore hotend è quello denominato TH2 sulla scheda.

  1. TH1 è P0.23 - Letto riscaldato
  2. TH2 è P0.24 - Hotend
  3. TH3 è P0.25 - Non assegnato
  4. TH4 è P0.26 - Non assegnato

Ho fatto un piccolo commento nel file config.txt per ricordarmi che 0.24 è TH2

Perni del riscaldatore hotend - layout fisico

Control.hotend.heater.pin 2.7 sono i morsetti a vite etichettati Heater1 sulla scheda

Il grafico sotto sembra piuttosto disordinato, ma è elencato come da sinistra a destra sulla scheda del controller. È elencato sulla scheda stessa, il che non lo rende così male come potrebbe sembrare.

  1. Hot-bed è P2.5 - Letto riscaldato
  2. Heater1 è P2.7 - Hotend01
  3. Heater2 è P2.6 - Hotend02
  4. FAN è P2.4 - FAN

Passaggio 7: Firmware Passaggio 5: Configurazione del controllo della temperatura del letto riscaldato

Non ci sono commenti per indicare chiaramente l'inizio della sezione del letto riscaldato, quindi ho fatto un commento di avvio # Configurazione del controllo della temperatura del letto riscaldato per abbinare l'inizio della sezione hotend.

Tipo di termistore

Potrebbe essere necessario cambiare il termistore con il tipo appropriato per la configurazione. Nient'altro davvero.

Per trovare il termistore corretto, guardiamo: //smoothieware.org/temperaturecontrol#toc5

Letto di controllo della temperatura BANG-BANG

Sto facendo funzionare il mio letto riscaldato attraverso un SSR (Solid State Relay) che non è molto bravo a gestire il PID, che utilizza segnali PWM più alti. Potrei farlo abbassando i segnali a 20 (secondo il sito smoothiewares), ma onestamente non so come fare una messa a punto PID del mio letto riscaldato?

Se volessi specificare la mia frequenza per il letto, sarebbe così:

 temperature_control.bed.pwm_frequency 20 

Desidero decommentare e modificare l'impostazione per temperature_control.bed.bang_bang su true e anche decommentare la riga successiva temperature_control.bed.hysteresis

Termistore a letto riscaldato - Layout fisico

Qui ancora una volta diamo un'occhiata all'immagine dei nostri pin per capire dove colleghiamo il termistore.

Il connettore predefinito per il termistore a letto riscaldato è quello denominato TH1 sulla scheda.

  • TH1 è P0.23 - Hot-bed
  • TH2 è P0.24 - Hotend
  • TH3 è P0.25 - Non assegnato
  • TH4 è P0.26 - Non assegnato

Ho fatto un piccolo commento nel file config.txt per ricordarmi che 0.23 è TH1

Per trovare il termistore corretto, guardiamo: //smoothieware.org/temperaturecontrol#toc5

Perni riscaldanti del letto riscaldato - Layout fisico

temperature_control.bed.heater_pin 2.5 sono i morsetti a vite HOT-BED . Questo è il grande terminale a vite proprio accanto all'ingresso di alimentazione.

Il grafico sotto sembra piuttosto disordinato, ma è elencato come da sinistra a destra sulla scheda del controller

  1. Hot-bed è P2.5 - Letto riscaldato
  2. Heater1 è P2.7 - Hotend01
  3. Heater2 è P2.6 - Hotend02
  4. FAN è P2.4 - FAN

Il letto riscaldato è impostato di default come bang_bang, che va bene per grandi aree come un letto riscaldato.

Passaggio 8: Firmware Passaggio 6: configurazione degli end-laptop

Questa sezione sembra molto confusa a prima vista, ma in realtà non è male, quando si capisce per la prima volta come viene ordinato.

Fonte di Smoothieware: //smoothieware.org/endstops

Direzione di homing

Consente di impostare la direzione di riferimento per la nostra stampante in stile Ultimaker. Sappiamo che ospita X min, Y max e Z max. Questo si traduce in:

  • alpha_homing_direction home_to_min
  • beta_homing_direction home_to_max
  • gamma_homing_direction home_to_max

Disabilita i computer portatili non utilizzati

Non utilizziamo i terminali X max, Y min e Z min, quindi disabilitiamo questi, digitando nc, che si traduce in N ot C connesso.

  • alpha_max_endstop nc
  • beta_min_endstop nc
  • gamma_min_endstop nc

Definire la dimensione degli assi

Dobbiamo definire le dimensioni della nostra stampante. Questo si traduce in software endtops in Marlin.

  • alpha_max 213
  • beta_max 179
  • gamma_max 195.8

Inversione dell'uscita del finecorsa

Testare l'output eseguendo un comando M119 . Sembra diverso rispetto a quando si utilizza Marlin, quindi invece di essere attivato, si ottiene un 1 se il finecorsa segnala un colpo.

Se si ottiene un falso positivo, è necessario ripristinare il segnale di fine corsa aggiungendo un ! dopo il numero pin.

Puoi vedere come ho rimosso il ! dal mio alpha_min_endstop e come ha cambiato l'output durante l'emissione del comando M119 .

Suggerimento: basta non concentrarsi su 1.24, 1.27 o 1.29 che sono i numeri dei pin, ma basta guardare!

Tassi di homing rapidi e lenti

La frequenza di homing si trasferisce direttamente alla velocità di spostamento mm / sec.

Ho aumentato il _fast_homing_rate per X e Y a 100 e Z a 20. L'Ultimaker 2 si porta a Z max e ci vogliono davvero anni per farlo a casa se lo si mantiene sul suo valore predefinito.

In realtà l'avevo raddoppiato a Marlin, ma voglio provarlo un po ', prima di alzarlo, dal momento che ho appena cambiato il mio letto riscaldato in qualcosa di più pesante.

Quando si colpisce il finecorsa, gli assi si ritraggono un po ', dove la distanza che ho definito in _homing_retract_mm, e poi si sposta lentamente indietro. Questo è definito da _slow_homing_rate alcuni. Li ho alzati bene, specialmente per i miei assi Z.

Passaggio 9: Firmware Passaggio 7: Impostazioni di rete

Se si intende utilizzare l'opzione di rete, è possibile procedere con l'installazione automatica, in cui è stato abilitato DHCP e alla stampante viene assegnato un IP dal router / server DNS.

Se invece si desidera configurare la stampante con un indirizzo statico, è sufficiente digitare qui l'indirizzo IP e la maschera di sottorete.

L'ho cambiato in qualcosa di adatto alla mia sottorete. Il tuo potrebbe apparire diverso.

Ora posso collegarmi alla stampante usando sia un browser Internet standard che usando Pronterface.

Usando un Explorer otteniamo una GUI Pronterface semplificata per il nostro uso.

Ho mantenuto abilitato telnet perché voglio vedere quali opzioni mi offre.

Nota: disabilitare qualsiasi servizio di rete che non si utilizza, poiché si aprirà una violazione della sicurezza in cui le persone potrebbero subentrare nella macchina. Soprattutto disabilitare Telnet se non lo si utilizza.

Passaggio 10: quali sono le prospettive?

Questo è tutto per ora!

Speravo che ti avesse aiutato a iniziare, o ti abbia aiutato a decidere chi fare il salto per le tavole tipo Smoothie e Smoothieware o stare lontano.

Credo di aver adempiuto allo scopo di questo Instructables iniziando a utilizzare il controller Sbase 1.2 e utilizzando Smoothieware.

Ormai dovremmo avere una stampante funzionale, anche se è ancora necessaria una messa a punto.

Configurazione più avanzata?

Ho già impostato un Hotend Temperature e -fanswitch (2 interruttori), che tratterò in un prossimo Instructables.

Utilizzando gli interruttori

1) Fanswitch :: Essere in grado di accendere / spegnere la mia ventola utilizzata per raffreddare il mio dissipatore di calore hotend - Non lo voglio sempre acceso a meno che non sia necessario, in quanto può essere piuttosto rumoroso.

2) Un interruttore che esegue il polling della temperatura per il nostro hotend e quindi utilizza l'interruttore del ventilatore per accendere il ventilatore a temperature pari o superiori a 50c e quindi spegnerlo di nuovo, quando la temperatura scende al di sotto di 50.

Articoli Correlati