Namestite programsko opremo Marlin in jo zaženite!

Namestite programsko opremo Marlin in jo zaženite!

  1. Prvi koraki
  2. Serijski priključki, hitrost prenosa, Bluetooth, ime po meri
  3. Vodilnik za preklapljanje
  4. Namestitev brez senzorjev
  5. Microstepping in Stealthchop
  6. Kontrola UPSU
  7. Termične nastavitve - senzor za merjenje temperature in maksimalna/minimalna temperatura
  8. PID nastavitve
  9. Varnost - hladno iztiskanje in toplotni pobeg
  10. Mehanske nastavitve - Corexy, tiskalnik trakov, robotska roka
  11. Nastavitve Endstopp
  12. Nastavitve gibanja - pospeševanje itd. tudi v povezavi z linearnim napredovanjem
  13. Z-sonda in izravnava plošče
  14. Velikost plošče
  15. M600
  16. Dodatne funkcije - EEPROM, nastavitve predgrevanja, čiščenje šob, časovnik tiskalnih opravil, geslo, jezik, podpora karticam SD, občutljivost kodirnika, zvočniki, LCD-ji, neopiksli

Pred začetkom kratka opomba - navedel bom število vrstic, da boste lažje našli pravo vrstico vdelane programske opreme. Glede na to, katero programsko opremo uporabljate ali katere konfiguracijske datoteke uporabljate, se to lahko nekoliko razlikuje, vendar je to še vedno razmeroma enostavna rešitev za iskanje prave vrstice.

Tudi izjave v Marlinu se imenujejo definicije, lahko so vklopljene, izklopljene ali vklopljene + izbirna vrednost. Tiste, ki so vklopljene, so nekomentirane, kar pomeni, da nimajo identifikatorja komentarja, ki je dvojna poševnica. V bistvu dvojna poševnica vse izklopi in omogoča pisanje komentarjev, če želite programsko opremo prilagoditi tako, da jo boste pozneje lahko uporabljali sami ali drugi. Vse, kar je zapisano z znakom // na začetku vrstice, bo vdelana programska oprema pri sestavljanju popolnoma prezrla.

1. Prvi koraki

Za urejanje vdelane programske opreme Marlin potrebujete ustrezno programsko opremo. Čeprav je na voljo več možnosti, bi večina uporabila program Visual Studio Code. To programsko opremo lahko brezplačno prenesete zgoraj, tako za Windows, Linux in Mac.

Za to potrebujete tudi razširitev Platform IO. Ko je nameščen program VS Code, pojdite v razširitve v orodni vrstici na levi strani (ikona s 4 kvadrati), poiščite Platformio in kliknite Namesti. Uporabite lahko tudi vtičnik Auto-Build Marlin, s katerim bodo stvari nekoliko hitrejše, če boste ploščo nastavili z ustreznim procesorjem, vendar lahko to naredimo tudi v starem načinu. Kako to storimo, vam bomo pokazali pozneje v besedilu

Ko imate vse skupaj, morate pridobiti vdelano programsko opremo Marlin. Zato se odpravite na Marlin GitHub in prenesite najnovejšo različico

Opazili boste, da obstajata različica s popravki napak in običajna različica. Različica za odpravo napak vsebuje najnovejše spremembe vdelane programske opreme. Je uporabna, vendar tudi najmanj stabilna, saj se nenehno izboljšuje. Vendar je ekipa Marlin zelo dobra pri odkrivanju in odpravljanju napak, zato te različice radi uporabljamo.

Kliknite Koda v zgornjem desnem kotu, da prenesete vdelano programsko opremo v obliki datoteke zip, razpakirajte mapo zip in naložite kodo VS. Nato pojdite v datoteko in odprite mapo ter programsko opremo Marlin.

Naslednje so konfiguracijske datoteke, posebne konfiguracije tiskalnikov lahko najdete tudi na GitHubu.

Te so še posebej uporabne, če želite vdelano programsko opremo le malo spremeniti. Če imate na primer tiskalnik, na primer Ender 3 in ste pravkar nadgradili hotend ter morate spremeniti senzor za merjenje temperature pri programski opremi, lahko preprosto prenesete konfiguracijske datoteke za ta tiskalnik in jih prilepite v mapo Marlin, ki ste jo pravkar prenesli. Tako so vse posebnosti privzete programske opreme tiskalnika že na voljo, spremeniti pa morate le vrednosti senzorja za merjenje temperature.

Ko pripravljate mapo s programsko opremo za urejanje, morate pred začetkom urejanja upoštevati eno zelo pomembno točko in sicer izbrati pravo matično ploščo in model procesorja.

Če v Raziskovalcu na levi strani odprete stran configuration.h, boste v vrstici 70 videli ukaz, ki določa, katera matična plošča se uporablja. Za veliko plošč obstaja samo ena različica, vendar imajo nekatere različice ali pa so nekateri tiskalniki v preteklosti uporabljali različne plošče. Najbolje je, da odprete tiskalnik in preverite, katera plošča je nameščena

Če želite natančno ugotoviti, kako se imenuje vaša plošča v programski opremi, se vrnite v raziskovalca na levi, pojdite na src, core in boards.h. To je seznam vseh plošč, ki jih podpira Marlin. Nato pritisnite CTRL F in vnesite blagovno znamko svoje plošče, tako na primer pri ploščah Creality Ender 3 vnesite Creality. Pomaknite se navzdol, da preskočite vse, kar je povezano s to ključno besedo in našli boste plošče Creality V4. Uporabite lahko samo Board_Creality_V4. To je v bistvu enak postopek za katero koli blagovno znamko matične plošče, če jo podpira ta različica programa Marlin. Našli boste tudi različice procesorjev za to ploščo, za plošče različice 4 sta tu navedena STM32F103RC in STM32F103RE.

Poznamo oboje, vrnite se v Configuration.h in kopirajte ploščo v območje za #define MOTHERBOARD. Zdaj lahko tudi odprete orodno vrstico raziskovalca na levi strani in kliknete zavihek platform.io ter se prepričate, da je v vrstici default_envs na vrhu strani pravilen model procesorja

In to je to, zdaj lahko urejamo programsko opremo. Obstajata dve glavni strani, ki ju bomo urejali, večina jih je v config.h, nekaj pa tudi v config_adv.h.

2. Serijski priključki, hitrost prenosa, Bluetooth, ime po meri

Če greste v config.h, lahko pričnemo tam. Z osnovno ploščo smo že končali, zato preidimo na naslednjo opredelitev: Serial Ports.

Približno vsak tiskalnik uporablja serijska vrata za povezavo z različnimi napravami. V večini primerov se uporablja samo eden, če pa povezujete še kaj drugega, na primer zaslon na dotik s kartico SD ali vrata USB, boste morda morali malo eksperimentirati. Tega tukaj ne bomo počeli, zato to za zdaj pozabimo.

Poslovna hitrost je hitrost komunikacije za ta vrata. Lahko je različna, vendar se večinoma uporablja hitrost 115200 pik.

V nadaljevanju boste našli več možnosti za zaporedna vrata, vendar lahko pustimo neopredeljene, saj dodatnih zaporednih vrat verjetno ne potrebujete.

Najdete tudi možnosti za povezavo Bluetooth, ki je pri tiskalnikih redka in možnost za spremembo imena tiskalnika, ki je privzeto izklopljena. To ime lahko vidite na zaslonu LCD, ko je naprava vklopljena. Vklopite možnost in vnesite novo ime, če se vam zdi primerno.

3. Gonilnik Stepper

Naslednji so gonilniki koračnih mehanizmov. Sliši se zahtevno, vendar sploh ni tako. Vsak tiskalnik uporablja koračne gonilnike, ki upravljajo motorje. V preteklosti so tiskalniki uporabljali gonilnike A4988 ali druge različice, kar je pomenilo, da so bili motorji precej glasni. Danes so v večini tiskalnikov kot standardni gonilniki nameščeni gonilniki TMC2208 ali TMC2209. Obstajajo pa tudi številni drugi gonilniki z različnimi funkcijami in prednostmi, kot so delitev korakov, maksimalni tok ali usmerjanje brez senzorja, pri katerem za usmerjanje osi niso potrebna fizična končna stikala.

Za katerikoli dostop lahko določite, kateri gonilnik želite uporabiti. Pogosto na matični plošči tiskalnika ni določeno, kateri gonilniki se uporabljajo. Včasih plošča uporablja vgrajene gonilnike koračnih mehanizmov, kar pomeni, da jih ni mogoče odstraniti. V tem primeru verjetno ni navedeno, kateri gonilnik se uporablja, včasih pa je na matični plošči oznaka, ki lahko pove, kateri gonilnik se uporablja. Plošče Creality V4 imajo na primer majhno oznako na priključku za kartico SD. Če na njej piše "T8", to pomeni, da je uporabljen gonilnik TMC2208. Nekatere osnovne plošče uporabljajo odstranljive gonilnike, kar ima to prednost, da jih lahko v primeru okvare preprosto zamenjate - če se to zgodi z vgrajenimi gonilniki, je plošča uničena in potrebujete novo.

4. Iskanje lokacije brez senzorjev

Zelo mi je všeč usmerjanje brez senzorjev. Ni tako natančno kot fizične končne postaje, vendar zmanjšuje potrebo po kablih, jaz pa kablov ne maram. Vsi gonilniki ne podpirajo usmerjanja brez senzorja, na primer zelo priljubljeni gonilniki TMC2208 ne morejo uporabljati te funkcije. Gonilniki TMC2209 pa jo lahko.

Za delovanje usmerjanja brez senzorja je potrebnih nekaj fizičnih sprememb na osnovni plošči, vendar ne skrbite, so zelo preproste. To se lahko razlikuje glede na osnovno ploščo, vendar gre običajno za preprosto nastavitev preklopnikov na določenih nožicah. Oglejte si priročnik SKR Mini E3.

Z vidika vdelane programske opreme je tukaj opisano, kaj je potrebno za usmerjanje brez senzorjev: Najprej je treba v vrstici 210 (configuration_adv.h) nastaviti vrednost HOMING_BUMP na 0 - to se običajno uporablja za končne zaustavitve, pri katerih os zadane končno zaustavitev, se malo premakne nazaj in nato počasi spet zadane končno zaustavitev. Privzeto je nekaj mm, zato ga moramo izklopiti.

V vrstici 1174 mora biti ENDSTOP_INTERRUPTS_FEATURE (configuration.h) nedefiniran.

Naslednji element je moč. Dobra stran teh osnovnih plošč v primerjavi s starejšimi je, da motornega toka na starih 8-bitnih ploščah ni bilo mogoče spreminjati z vdelano programsko opremo. Vref na matični plošči ste morali spremeniti tako, da ste zavrteli majhen trimpot, ki je bil zelo občutljiv. Če ste jo zavrteli malenkost preveč, je poskočila na 1,5, čeprav za večino xy motorjev potrebujete le 0,8 (ali 800 mA). Vrstice za nastavitev toka lahko najdete v dokumentu 2386 (configuration_adv.h).

Tok, ki ga potrebujete v vdelani programski opremi, je odvisen od koračnega gonilnika in motorja. Če imate dokaj povprečen motor, kot je motor 42-34, mora biti vrednost toka tukaj le 800. Če najdete tehnični list za svoj motor, boste morda videli, da je maksimalni tok 1,5 A ali 1500 mA. Vendar v vdelano programsko opremo ne vnašajte vrednosti 1500, saj je to absolutna maksimalna vrednost, mi pa ne delamo z najvišjimi vrednostmi, saj bi se to slabo končalo. Iščemo vrednost RMS, srednjo kvadratno vrednost toka. Izračun pravilnega toka pravzaprav ni tako enostaven, vendar obstajajo kalkulatorji, kot je tale od ALL3DP.

Upravljanje toka je ključnega pomena pri umerjanju samonavajanja brez senzorja, saj se boste morali z njim malo poigrati, da boste zagotovili optimalno delovanje.

MONITOR_DRIVER_STATUS se nahaja v vrstici 3204 (configuration_adv.h) - ta redno preverja gonilnike, da določi njihovo stanje. Marlin lahko samodejno zmanjša tok gonilnika, če gonilnik sporoči opozorilo o previsoki temperaturi. Zato ga vklopite.

V vrstici 3317 (configuration_adv.h) lahko omogočite tudi TMC_DEBUG, kjer si lahko ogledate več informacij o koračnih gonilnikih.

Ok, zdaj lahko v vrstici 3272 (configuration_adv.h) vklopimo SENSORLESS_HOMING, to moramo vklopiti za X in Y ter nastaviti občutljivost za zastoj, to je, kako občutljivo lahko gonilniki merijo zastoj, tj. ko motor premakne tiskalno glavo na eno stran svoje osi in udari ob konec. Če je občutljivost prenizka, ne bo zaznala ničesar in bo še naprej vrtela motor, tudi če bo tiskalna glava udarila ob stran, če je občutljivost previsoka, bo ves čas "zaznavala" zastoj, tudi če bo tiskalna glava samo sedela na mestu. Po flashu vdelane programske opreme ima LCD zdaj meni, v katerem lahko spremenite vrednosti za občutljivost za zastoj in tok, tako da morate spremeniti le vrednosti, da bo ustrezalo. Vrednosti za zaustavitev se gibljejo od 0-255, zato bi moral biti prvi poskus na sredini okoli 128. Ustrezno prilagodite vrednost in nato poskusite še enkrat in še enkrat in še enkrat. Če se vam zatakne in ne glede na izbrano vrednost preprosto ne deluje, potem morate prilagoditi jakost toka, samo malo jo povečajte. SAMO MALO!!! Če je 800 miliamperov, jo povečajte na 850 in poskusite znova.

Uporabite lahko tudi define IMPROVE_HOMING_RELIABILITY malo nižje v vrstici 3291, ki je točno to, kar se sliši.

Če vas zanima, je samonavajanje brez senzorjev na osi Z zapleteno, zlasti pri tiskalnikih, ki za premikanje Z uporabljajo vretena, kar je večina tiskalnikov. Če si želite prihraniti težave na tem mestu, ne vklopite brezsenzorskega usmerjanja za Z-os.

5. Microstepping in Stealthchop

V vrstici 2838 je še ena gonilna funkcija X_MICROSTEPS (configuration_adv.h). Krmilniki za koračne gonilnike se premikajo v korakih, običajno 1,8 stopinje na korak, kar je zelo natančno, toda ali je to lahko še bolj natančno? Poleg tega, da si priskrbite drug motor, ki ima manjšo meritev na korak, lahko uporabite Microstepping, ki gonilniku pove, naj motorju sporoči, da se premakne za manj kot 1,8 stopinje, kar je precej priročno za zelo natančno nastavitev. Privzeta vrednost je 16, lahko pa jo povečate, kar seveda pomeni, da se spremeni tudi število korakov, potrebnih za premik motorja za določeno razdaljo. Zato ima Marlin v vrstici 2833 (configuration_adv.h) čudovito funkcijo Interpolate, ki bo, če jo nastavite na true, samodejno "interpolirala" vsako vrednost koraka motorja, tako da vam ne bo treba ničesar ročno spreminjati. Če torej spremenite Microstepping s 16 na 32, morate prilagoditi korake za vse motorje, da dosežejo novo vrednost. Če aktivirate interpolacijo, se to zgodi samodejno

Naslednji element je STEALTHCHOP v vrstici 3140 (configuration_adv.h). Vklopite jo, zaradi nje bo vse zelo tiho - tik pod njo morate preveriti tudi CHOPPER_TIMING CHOPPER_DEFAULT. Najverjetneje imate 24-voltni tiskalnik, zato ga nastavite na 24 V. Seveda je možnost uporabe Stealthchop odvisna tudi od vašega gonilnika, a na srečo ga danes večina že obvlada.

6. Nadzor PSU

V vrstici Configuration.h v vrstici 388 najdemo nadzor PSU (configuration.h), ki je lahko zanimiv, če želimo samodejno izklopiti tiskalnik po končanem tiskanju.

7. Termične nastavitve - senzor za merjenje temperature in maksimalna/minimalna temperatura

Naslednje so termične nastavitve v vrstici 430 (configuration.h) in to je verjetno najbolj zahtevano navodilo za vdelano programsko opremo od vseh. Za veliko ljudi je nadgradnja hotenda prva sprememba, ki jo izvedejo. Če imate Ender 3 in ga želite nadgraditi na hotend Revo, kaj storite? Najprej je treba spremeniti dve stvari, in sicer senzor za merjenje temperature. Večina tiskalnikov uporablja senzor za merjenje temperature 100k, za katerega je tip senzorja v programu Marlin "1". Vendar pa Revo in številni drugi senzorji za temperaturo uporabljajo številko 5, ki je prav tako 100k senzor za temperaturo, vendar proizvajalca Semitec. Kot lahko vidite, obstaja nekaj blagovnih znamk, ki uporabljajo to vrsto senzorja za temperaturo. Morda pa želite preiti na nekaj močnejšega, kot je PT1000? To je odvisno od tipa PT1000, vendar večina uporablja senzor številka 1047 s 4,7 ohma.

Enako lahko storite za temp_sensor_bed v vrstici 536 (configuration.h).

Drugi del nadgradnje hotenda je HEATER_0_MAXTEMP v vrstici 611 (configuration.h). PTFE hotendi so na splošno omejeni na 260 C, kar je v programu Marlin navedeno kot 275 C. Ne vem, zakaj je bilo to storjeno, vendar bo ne glede na to, kakšno temperaturo boste vnesli sem, dejanska dosegljiva temperatura vašega tiskalnika za 15 C nižja. Če imate torej 300 C hotend, morate kot maksimalno vrednost vnesti vsaj 315 C.

V vrstici 597 najdete tudi funkcijo HEATER_0_MINTEMP, ki bo samodejno izklopila grelec, ko bo dosegel to temperaturo. Mimogrede, če vam tiskalnik izklopi grelec ali prikaže napako mintemp in niste prepričani, zakaj, je to morda zato, ker je vaš tiskalnik v prehladnem okolju. Pozimi dobimo veliko vprašanj o tem, saj veliko ljudi hrani svoje tiskalnike v garaži in potem se lahko to zlahka zgodi.

V vrstici 623 imate toplotno preseganje (configuration.h), ki dovoljuje temperature nad vrednostjo maxtemp, preden izklopi napravo. Do prekoračitve lahko pride, če grelec ni umerjen, kar nas pripelje do vrstice 633 in nastavitve PID (configuration.h)

8. Nastavitve PID

Ta sinhronizira grelec in senzor za merjenje temperature, tako da je grelec natančen. Najpomembnejša stvar tukaj je vrstica 659, ki podaja privzete vrednosti za proporcionalno, integralno in derivativno funkcijo. Tu vam v resnici ni treba ničesar spreminjati, vendar je ob menjavi grelnikov dobro opraviti nastavitev PID, ki v bistvu umeri grelnik ali senzor za merjenje temperature, tako da temperatura med delovanjem tiskalnika ne niha preveč. Zato priporočam, da to storite po nadgradnji hotenda. To lahko storite na več načinov, vendar je enostaven način, da to omogočite v meniju LCD v vrstici 803. Drugi način je, da tiskalnik povežete z računalnikom prek vmesnika USB in uporabite terminalski program, kot je Pronterface.

V tem terminalu lahko vnesete ukaze gcode. Pravilni ukaz za nastavitev PID je "M303 E0 S210 C10 U".

Tole je ukaz M303 za začetek postopka glasovanja.

E0 se nanaša na uporabljeni grelec (E0 je privzeta nastavitev za skoraj vse tiskalnike z enim iztiskalnikom).

S210 se nanaša na temperaturo 210 C, ki je primerna za PLA, vendar jo lahko spremenite, če želite uporabljati predvsem druge filamente.

C7 označuje, kako pogosto naj se izvaja test. Večkrat ko izvedete test, bolj natančen je, vendar smo ugotovili, da ni potrebno več kot 7 poskusov.

Po vnosu tega ukaza se test izvede in izpišejo se vrednosti za Kp, Ki in Kd.

Ko dobite te vrednosti, jih lahko v terminal vnesete z ukazom M301, na primer M301 P30 I3 D60.

Potem shranite nastavitve z ukazom M500 in končali ste.

Na plošči in v ohišju je še več možnosti za krmiljenje PID. Nastavitev PID za vašo ploščo ni tako nujna kot nastavitev PID za vaš hotend. Hotende menjamo veliko pogosteje kot senzor za merjenje temperature plošče, vendar je na voljo, ko ga morate vklopiti.

9. Varnost - hladna ekstruzija in toplotna obdelava

Naslednja pomembna točka je zaščita pred toplotno obdelavo v vrstici 827 (configuration.h), ki jo morate vsekakor vklopiti! Ta bo izklopila tiskalnik, če se temperatura dvigne nad pričakovano raven. Morda se je senzor za merjenje temperature premaknil in tega ne veste. Brez nje se temperatura še naprej povečuje, vrednost senzorja za temperaturo pa se skoraj ne spremeni. Kar je slabo. Vklopite ga!

V vrstici 816 (configuration.h) je tudi funkcija za preprečevanje hladne ekstruzije. Ta preprečuje, da bi se motor ekstrudatorja aktiviral, ko je temperatura nižja od vnesene vrednosti. Privzeto je tu nastavljena vrednost 170. Kakšna filamenta običajno uporabljate s tiskalnikom, vam bo povedalo, kakšno vrednost je treba uporabiti tukaj. Če na primer večinoma tiskate PETG, morate nastaviti temperaturo približno 220 C.

10. Mehanske nastavitve - Corexy, tračni tiskalnik, robotska roka

Naslednje so mehanske nastavitve in ker bomo uporabljali nastavitev Corexy je ta zelo pomembna. Tu moramo določiti Corexy.

Na voljo so tudi druge kinematike, kot so delta, tiskalnik za trakove ali če imate robotsko roko, je to prav tako mogoče.

11. Nastavitve Ensstopp in Endstop Noise Threshold

Naslednja so na vrsti 1071 (configuration.h) nastavitve končne zaustavitve. Tu se preprosto aktivirajo končne zaustavitve.

Tole je še ena majhna funkcija za prag hrupa končne zaustavitve. Pred časom sem moral to funkcijo uporabiti, ko sem želel na tiskalnik priključiti zelo dolge kable, tako da je bila vsa elektronika zunaj ohišja. Iz nekega razloga so dolgi kabli povzročali zaznavanje napak med usmerjanjem, vendar me je ta funkcija rešila.

12. Nastavitve gibanja - pospeševanje, koraki, Feedrate, Jerk, Junction Deviation, Linear Advance

Naslednje so nastavitve gibanja na naslovu 1194 (configuration.h) in že prva stvar so privzeti koraki. Kot smo že omenili, se koračni motorji vrtijo v korakih vsakih 1,8 stopinje (razen če imate motor z 0,9 stopinje). Ko motor vrti jermen, vodilni vijak ali zobnik, mora narediti določeno število korakov, da se del premakne za želeno količino. Najpogosteje je to treba spremeniti pri nadgradnjah ekstruderjev, kjer je v resnici treba le spremeniti številko v tej vrstici. Običajno proizvajalci navedejo korake iztiskalnika (ali esteps), vendar jih je morda treba prilagoditi, zato opravimo kalibracijo esteps. O tem obstaja veliko video posnetkov.

Esteps in pravzaprav vseh vrednosti stopnjevanja ni treba konfigurirati v programski opremi, lahko samo uredite zagonsko gcode in vstavite novo vrednost z ukazom M92. To je najlažji način, ko nadgradite svoj iztiskalnik, saj vam v večini primerov ni treba posodabljati vdelane programske opreme, temveč lahko samo uporabite gkodo v rezalniku ali prek vmesnika Pronterface, kot smo že pokazali. To lahko dejansko storite za vse vrednosti v kategoriji nastavitev gibanja z M203 za maksimalno hitrost podajanja, M201 za največji pospešek, m204 za privzeti pospešek in M205 za nastavitve poskokov. Na primer, če želite spremeniti korake ekstrudatorja za nov ekstruder Bondtech, morate v zagonsko kodo Gcode zapisati le M92 E415 (M92 je ukaz za spremembo korakov motorja, E pa pomeni, da gre za motor ekstrudatorja), in to je to. Te vrednosti torej niso določene in jih lahko precej enostavno spremenite, ne da bi spremenili vdelano programsko opremo.

Priložnostno, če vas zanimajo ukazi gcode na splošno in parametri, ki se z njimi uporabljajo, si lahko ogledate Marlinovo spletno mesto, na katerem je seznam vseh ukazov gcode, od katerih so nekateri lahko zelo uporabni. Tole je primer gkode za pospeševanje pričetka M204.

Jerk je funkcija, ki omejuje hitrost spreminjanja pospeška osi, zlasti kadar je tiskalna glava nepremična in se nato nenadoma začne premikati, pa tudi kadar se obrne za 90 stopinj. Gre za razmeroma staro funkcijo v vdelani programski opremi, ki jo še vedno uporablja veliko tiskalnikov, vendar novejši tiskalniki, zlasti tisti z vdelano programsko opremo Klipper, uporabljajo nekaj, kar se imenuje odstopanje Junction Deviation, zato si jo oglejmo.

Ko zadeva spremembe vdelane programske opreme, je to zelo preprosto: pojdite v vrstico 1288 in določite odstopanje Junction deviation. Prav tako se prepričajte, da v vrstici 1265 (configuration.h) ni definiran parameter classic_jerk. S tem je del strojne programske opreme opravljen, vendar morate še vedno ugotoviti vrednost za odstopanje križišča. Privzeto je nastavljena na 0,013 mm, vendar je to v celoti odvisno od vašega tiskalnika. Na srečo je to preprost preskus, vse, kar moramo storiti je, da natisnemo model, pri katerem ima vsaka plast nekoliko drugačno vrednost odstopanja spoja in nato preverimo, katera plast se natisne najbolje. Če opazite velik Ringing, je vrednost previsoka. Vendar tudi ne sme biti prenizka, saj bi to upočasnilo postopek.

TeachingTech ima odličen vodnik in kalkulator.

Naslednje je pospeševanje S-krivulje v vrstici 1301 (configuration.h), ki zmanjšuje vibracije in je, tako kot funkcija Jerk, razmeroma stara ter je bila odložena v korist novih funkcij. Ena od teh je Linear Advance, kaj je to? No, uporablja se za nadzor hitrosti iztisnjenega volumna pri spreminjanju pospeška. Ste pri tiskanju 90-stopinjskih kotov že kdaj opazili, da se tisk tam nekoliko ukrivi? Ravno to je namen funkcije Linear Advance.

V smislu programske opreme je podoben kot odstopanje od križišča. Pojdite na vrstico 2205 v konfiguraciji_adv.h in našli jo boste (configuration_adv.h). Vse, kar morate storiti je, da odstranite komentar, da bo definirana. Nato ga morate kalibrirati, da najdete pravo vrednost. Imenujemo jo vrednost k, privzeto je 0,22.

Kalibracija vrednosti k je podobna kalibraciji vrednosti Junction Deviation (odklon od križišča), izpišemo nekaj z različnimi vrednostmi in vidimo, katera se najbolje obnese. Na srečo ima Marlin popolnoma odličen kalkulator, s katerim lahko vse to izračunate.

13. Z-sonda, izravnava plošče, spreminjanje smeri vrtenja motorja

V vrstici 1311 pridemo do izravnave plošče in Z-sond (configuration.h). To je zelo obsežno poglavje, saj obstaja veliko različnih načinov izravnave, ne samo dodatki za samodejno izravnavo, temveč tudi veliko drugih stvari. Če želite prebrati o vdelani programski opremi za BLTouch ali podobne naprave, priporočam video od TeachingTech o tem, kako pripraviti BLTouch, da deluje na praktično vsaki napravi.

Ali mora biti smer motorja obrnjena? Včasih je to potrebno za nadgradnjo ekstruderja ali spremembo gonilnika koračnega mehanizma. V programu Marlin je veliko funkcij, ki zahtevajo obračanje smeri, vendar vam tega ni treba storiti zdaj. Ko sestavite in zaženete vdelano programsko opremo, preprosto poskusite premakniti motor in preverite ali deluje v pravi smeri. Če morate spremeniti smer, pojdite v vrstico 1698 in spremenite INVERT_[X/Y/Z]_DIR v false ali true.

14. Senzorji velikosti plošče in senzorjev Filament-Runout

Naslednji element v vrstici 1753 (configuration.h) je velikost plošče. Plošče morajo imeti nekaj manevrskega prostora, saj ne želimo, da se naš model natisne preblizu roba, zato lahko nastavimo vrednost min_position na 0, kar bo točka, v kateri bo končni postanek ali usmerjanje brez senzorjev ustavilo to os pri samodejnem usmerjanju. Morda je točka končne postaje že primerno oddaljena od roba plošče ali pa je na splošči sploh ni. V tem primeru potrebujete razdaljo, zato preprosto uredite min_pozicijo v mm, da bo vključevala vašo razdaljo, nato pa premaknite motor na nasprotno stran plošče do točke, za katero ne želite, da jo preseže in to je vaša max_pozicija, ki je točka, do katere je omejeno celotno premikanje.

Naslednji so senzorji za filament-Runout v vrstici 1818 (configuration.h). Senzor Runout najlažje nastavite tako, da uporabite običajen končni omejevalnik z majhnim valjčkom na koncu. Ta valjček je precej pomemben, saj se bo kovinski trak, če izvlečete filament, upognil ali celo zlomil, zaradi česar bo stikalo neuporabno ali nezanesljivo. Obstajajo tudi druge možnosti, na primer optosenzor, ki je po mojem mnenju veliko bolj zanesljiv. Nikoli nisem imel težav s senzorjem na modelu Prusa MK3, vendar je senzorje za končne zaustavitve enostavno dodati, so poceni in s pravo zasnovo lahko zelo dobro delujejo. Če torej želite uporabiti enega, potem odkomentirajte filament_runout_sensor v vrstici 1830, morate imeti #define FIL_RUNOUT_ENABLED_DEFAULT omogočen in nastavljen na true in potrebujete samo 1, razen če imate dvojni ekstruder, zato nastavite #define NUM_RUNOUT_SENSORS na 1, zagotovo morate imeti omogočen ukaz M600 (več o tem malo pozneje), zato preklopite na vrstico 1877 (configuration.h).

Prikazati morate tudi ADVANCED_PAUSE_FEATURE v vrstici 2752 (configuration_adv.h) in odstraniti znak za komentar. Tu lahko izvedete še veliko drugih popravkov, Marlin pa je zraven navedel nekaj zelo koristnih in razumljivih komentarjev. Spremenite jih, kot se vam zdi primerno in jih prilagodite svojemu tiskalniku

Vse, kar morate zdaj storiti, je, da priključite ploščo. Glede na to, kakšna je vaša tablica, jo lahko po želji tudi spremenite. Če želite preveriti, kje je privzeti pin, lahko greste v SRC, PINS in svoj model procesorja, ga izberete in pritisnete CTRL F ter vnesete FIL_RUNOUT_PIN, pri nas je na plošči BTT SKR e3 Mini V3.0 pin PC15, pojdite v Google in vnesite ime svoje plošče ter diagram pinout in preverite, kje se ta pin nahaja.

15. M600

Ukaz M600 smo že omenili. Ta funkcija je žal premalo uporabljena, a je zelo uporabna funkcija vdelane programske opreme in sicer za spreminjanje filamenta med tiskanjem. Če želite prvih nekaj plasti natisniti v eni barvi, naslednje v drugi in nato še naprej menjavati barve, lahko to storite s to funkcijo. Oglejte si to značko, ki smo jo izdelali z ukazom M600.

Tako smo že omogočili funkcijo M600 in napredno pavzo, zdaj moramo omogočiti funkcijo parkiranja tiskalne glave. Pojdite v vrstico 2362 (configuration.h) in aktivirajte funkcijo "parkiranje šobe". Če želite, lahko tukaj spremenite položaj, prav tako pa tudi hitrost v razdelku "feed rate" in "minimum z feed rate"

Preidite na vrstico 824 in omogočite možnost Extrude max length (konfiguracija.h). To bo vleklo novo filamentno vlakno do te dolžine, kar je dovolj za odstranitev starega filamenta in popolno spremembo barve. Ta vrednost je odvisna od tega ali imate Bowdenov kabel ali neposredni pogon. Če imate Bowdenov kabel z dolgo PTFE cevjo, mora biti ta vrednost precej visoka, če imate neposredni pogon, pa je lahko nizka

Potem se vrnite k napredni funkciji pavze v konfiguraciji_adv.h in se prepričajte, da je PARK_HEAD_ON_PAUSE odkomentirana, tako da se šoba ustrezno parkira (konfiguracija_adv.h)

16. dodatne funkcije - EEPROM, nastavitve predgrevanja, čiščenje šobe, gesla, jezik, občutljivost kodirnika, LCD-ji, neopiksli

Naslednja postavka je EEPROM v vrstici 2291 in mora biti vsekakor omogočena (configuration.h) - to je kot pomnilniška funkcija na vašem tiskalniku. Če torej kaj spremenite, pravzaprav karkoli z ukazom Gcode, lahko to shranite z ukazom M500 in to se bo ohranilo. Brez te funkcije se bo tiskalnik samo ponovno zagnal z nastavitvami vdelane programske opreme, ki ste jih nastavili v računalniku. To je zelo priročno.

Naslednje so konstante za predgrevanje v vrstici 2335 (configuration.h). Tako kot pri EEPROM naj bi bile tam privzete, čeprav včasih vrednosti niso ravno najboljše. Všeč mi je, da so te vrednosti nekoliko višje od dejanske temperature tiskanja, vendar je to le malenkost. Privzeto sta prednastavljeni samo temperaturi PLA in ABS, če pa dejansko ne uporabljate nobene od njiju ali potrebujete veliko prednastavitev, jih lahko dodate do 10.

Naslednja je funkcija čiste šobe v vrstici 2374 (configuration.h). Ta funkcija je uporabna za tiskalnik z dvema ekstruderjema, lahko pa je uporabna tudi za tiskalnik z enim ekstruderjem, če želite, da je prva plast popolna.

Naslednja stvar je geslo v vrstici 2498 (configuration.h) - morda ne želite, da tiskalnik uporablja na primer vaš otrok ali sostanovalci, ki ne poznajo mej. Zaščita z geslom bi bila v tem primeru lahko koristna, če pa ste edini, ki ima dostop do tiskalnika, je geslo pravzaprav nesmiselno.

V vrstici 2529 (configuration.h) imamo tudi nastavitve za podporo LCD. Če angleščina ali kitajščina ni vaš prvi jezik, to ni težava, saj jih imate tu na voljo kar nekaj. Če vaš krmilnik uporablja enkodersko kolesce, lahko občutljivost spremenite v vrstici 2602 (configuration.h). Nadalje lahko v nastavitvah krmilnika izberete svoj krmilnik, morda takega s podporo za kartice SD ali takega z zaslonom na dotik.

Tiskalnik lahko nadgradite tudi z neopiksli, ki so diode LED, ki jih lahko pritrdite na tiskalnik in tako ustvarite boljšo osvetlitev ali svetlobni šov. Te nastavitve najdete v vrstici 3450 (configuration.h)

Nazadnje je na voljo nova in zelo zanimiva funkcija, imenovana Input Shaping (oblikovanje vhoda). To je nova funkcija v Marlinu, ki lahko kompenzira vibracije, ki lahko povzročijo grde napake v tisku. Ustvarili smo že video in vodnik, da vam pomagamo pri njeni nastavitvi.

Ta seznam nikakor ne zajema vsega, ampak daje le pregled nad tem, katere spremembe se na splošno pogosto izvajajo. Če imate težave z določenim delom strojne programske opreme Marlin ali če želite, da se ta seznam razširi, nam to sporočite. V prihodnosti bomo ta vodnik razširili in vam pomagali pri vseh želenih spremembah.