Autolevel

https://3dfactory.cz/2018/09/16/autolevel/

 

Dobrý den, vítám vás u dalšího ze série článků z dílny malé továrny na velké věci. Pro tentokrát jsem zvolil lákavé téma, autolevel. Pochopitelně toto téma podrobně rozebereme, takže v článku najdete trochu teorie a praktických ukázek jak fungují čidla, poté se podíváme na konkrétní možnosti zapojení a na závěr vše nakonfigurujeme a pošleme v podobě nastaveného Marlina do tiskárny.

 

Teorie, aneb o čidlech…

Nejdříve se pojďme podívat, jaká čidla přiblížení máme vlastně k dispozici. Takovou úplně nejvíce nadřazenou skupinou budou kontaktní a bezkontaktní čidla. Kontaktní máte na tiskárně teď, těmi se zabývat nebudeme. Technicky sem patří i BL Touch senzory a jim podobné ale tohle není skupina, o které chci psát. Dalším rozdělením bychom se dostali na principy fungování, elektromagnetické, infračervené, optické, ultrazvukové, indukční a kapacitní. Tohle je to dělení, u kterého se zastavíme. Indukční a kapacitní? Podívejme se do učebnice základů elektrotechniky, co nám o tomto řekne:

 

Indukční snímače:

Základ snímače tvoří oscilátor pracující na principu změny činitele jakosti jádra Q při přiblížení kovového materiálu. Tato změna se projeví útlumem kmitů oscilátoru a oscilátor přestane kmitat. Vysazení kmitů oscilátoru vyhodnotí prahový detektor, který řídí klopný obvod ovládající výkonový koncový stupeň. Odstraněním kovového materiálu z aktivní spínací zóny oscilátor obnoví kmitání.

 

Kapacitní snímače:

Nespojité kapacitní snímače polohy pracují na principu vyhodnocování kmitů oscilačního RC obvodu. Vniknutím předmětu (vodivého i nevodivého) do elektrostatického pole kondenzátoru se mění kapacita oscilačního obvodu a tím amplituda jeho kmitů. Jejím dvouhodnotovým vyhodnocením se získá logický signál o přítomnosti předmětu v aktivní zóně snímače. Výhodou proti indukčnostním snímačům tohoto typu je větší spínací vzdálenost.

 

Ve dvou odstavcích odborné literatury jsem vám červeně označil důležité sdělení. Totiž indukční snímač, ze své podstaty, reaguje pouze na kovové předměty, zatímco kapacitní snímač dokáže vyhodnotit cokoliv, třeba i dřevotřískovou desku. Dobře to jsem trochu přehnal ale ať už budete v budoucnosti tisknout na cokoliv, kapacitní čidlo bude reagovat na povrch, na který budete pokládat plast. Indukční čidlo bude stále reagovat na hliníkovou vyhřívanou podložku. Říkáte si možná, o co jde, funguje to, tak co. Jenže, vlivem tepla se může hliníková podložka nepatrně prohnout (zpravidla uprostřed), vyrovnáte ji přiložením skla, vaše indukční čidlo však stále měří podle hliníku, kapacitní si změří povrch skla. Důkaz místo slibů najdete ve videu níže.

 

 

Jasně, video je někdy lepší než tisíc slov. Takže máme jasno ve výběru „proximity“ senzoru tedy ve výběru správného čidla přiblížení pro naši aplikaci.  Indukční ke snímaní kovu, kapacitní pro snímání povrchu jako takového. Mimochodem věděli jste, že: si takové kapacitní čidlo můžete koupit i v našem obchodě?

 

Zapojení, schémata, dráty…

Nastal čas, naše čidlo připojit do obvodu. Existuje několik druhů zapojení, my se podíváme na dvě základní. V jednom zapojení bude jako regulace výšky Z fungovat pouze čidlo. Ve druhém zapojení v obvodu pro jistotu necháme i původní spínač. Není totiž nic horšího, než když vám rozehřátá tryska zničí podložku, na kterou tisknete. Slíbená zapojení jsou na obrázcích níže.

 

https://3dfactory.cz/2018/09/14/autolevel/
Piktogram zapojení bez původního koncového spínače.

 

https://3dfactory.cz/2018/09/14/autolevel/
Piktogram zapojení se zachováním původního koncového spínače.

 

Zapojení je vcelku snadné, čidlo k desce připojíme do konektoru na místo původního spínače. S jedinou výjimkou a tou je hnědý drát z čidla. To totiž neumí pracovat s nízkým „logickým“ napětím 5V ale pro svou práci potřebuje přímo 12V z napájecího zdroje (připojit jej můžete třeba na vstup napajení řídící desky). Do obvodu proto musíme připojit také odporový dělič, který ochrání desku před zničujícími účinky vyššího 12V napětí. Kdybychom toto vynechali, snímač by se přiblížil k pracovní podložce, sepnul by a pustil nám do ovládací desky 12V. Ta by to pravděpodobně odnesla poškozením řídícího obvodu. Odporový dělič tedy zajistí snížení napětí na logickou úroveň 5V.

 

Odporový dělič

Opět bychom se mohli podívat do učebnice základů elektrotechniky, ale nebudu vás zdržovat, jistě už chcete tisknout. Pokud si budete pro své čidlo odporový dělič obstarávat, kupte si odpory R1=3K3 a R2=2K2. Pokud chcete experimentovat s odpory, které máte k dispozici. Správné hodnoty vypočítejte podle následujícího vzorce. A konečně, kdo si koupil senzor od 3dfactory.cz, tuto otázku nemusí řešit, odporový dělič včetně DuPont konektoru je připraven.

https://3dfactory.cz/2018/09/14/autolevel/

 

Umístění senzoru

Tato část návodu bude ze všech nejjednosušší. Stačí navštívit web thingiverse.com a najít si vhodný držák čidla. Na výběr jsou doslova desítky provedení. Kdo je zkušenější “hračička” navrhne si svůj, kdo se nechce zdržovat, použije hotový.

https://3dfactory.cz/2018/09/14/autolevel/ https://3dfactory.cz/2018/09/14/autolevel/
Několik náhodně vybraných držáků z webu thingiverse.com.

 https://3dfactory.cz/2018/09/15/autolevel/
Protože používám E3D V6 na alternativním vozíku, vyřešil jsem umístění jednoduchým držákem takto.

Marlin, kompilace, komplikace, nastavení…

Dobře, senzor je připojený k tiskárně, nyní se tedy podívejme jak jej nastavit ve firmware Marlin aby vše fungovalo správně. A aby nešlo jen o pouhé kopírování jednotlivých kroků tohoto návodu, pokusím se ke každé položce připsat i krátký komentář s vysvětlením, aby jste věděli, co nastavujete. Pro snadnější orientaci uvádím i čísla řádků. Ty se mi zobrazují, protože k úpravám používám program notepad++. Je zdarma ke stažení a umí krásně barevně oddělit důležité parametry a komentáře. Celý zdrojový kód se tak rázem stává čitelnější. Kdo z vás používá Arduino IDE, vyhledá si definice ve vyhledávacím okně po stisknutí ctrl+f. Připraveni?

řádek č.533 a č.537

#define Z_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.

#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe. – V tomto místě je potřeba zvolit logiku použitého čidla. Protože jich existuje celá řada vysvětlím jen okrajově, že některé čidla bývají v klidu otevřené a při kontaktu s kovem se vnitřní kontakty sepnou. Tyto čidla mívají označení NO (normaly open). Jiné typy jsou NC (normaly close). Ty bývají sepnuté a při kontaktu s kovem se jejich kontakty otevřou. A tohle se právě snažíme nastavit na tomto řádku. Pokud si nejste jistí správnou volbou, nechejte nastaveno „true“ a později si to ověříme.

řádek č.716

//#define FIX_MOUNTED_PROBE – tento řádek okomentujte smazáním dvou lomítek na začátku řádku, firmware tak pozná že používá čidlo trvale připevněné k extruderu.

řádek č.776

#define X_PROBE_OFFSET_FROM_EXTRUDER 50   // X offset: -left +right [of the nozzle] – tato hodnota (v mém příípadě 50) určuje vzdálenost čidla od středu extruderu, tedy od trysky. Kladná hodnota znamená posun vpravo, záporná hodnota znamená posun doleva od trysky. Moje čidlo je umístěné přibližně 50mm vpravo od trysky.

#define Y_PROBE_OFFSET_FROM_EXTRUDER 3   // Y offset: -front +behind [the nozzle] – Stejné nastavení jako o řádek výše, jen s tím rozdílem, že jde o osu Y. Kladná hodnota = čidlo je za tryskou, záporná hodnota = čidlo je před tryskou. Já mám čidlo asi 3mm za tryskou.

#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above [the nozzle] – Na tomto řádku by jste měli nastavit přesnou vzdálenost od špičky trysky ve svislém směru. Protože tuto hodnotu ještě neznáme, vyplníme 0 a později se k tomuto řádku vrátíme.

řádek č.900

//#define MIN_SOFTWARE_ENDSTOPS – odkomentováním tohoto řádku dovolíme posun tiskárny za hranice softwarového endstopu. Doslova umožníme posun trysky pod Z0 což obyčejně nejde. Budeme to potřebovat pro zjištění výšky čidla nad tryskou. Prozatím jen odkomentujte, později se sem opět vrátíme.

řádek č.975

#define AUTO_BED_LEVELING_BILINEAR – na výběr máme z několika druhů autolevelingu. Nejpoužívanější je právě bilineární proto tento řádek odkomentujte. Pokud chcete poznat i další typy, navštivte stránky projektu Marlin a prostudujte manuál. Ve zkrtce:

1. Lineární – změří na podložce X bodů, které zprůměruje a upraví celkovou vzdálenost trysky od podložky jedinou hodnotou.

2. Bilineární – každý změřený bod promítne do modelu na několika prvních vrstvách. Srovná tak případné nerovnosti. Z motory tak tedy neustále mění výšku podle toho, kde se zrovna nachází extruder.

řádek č.1020

#define GRID_MAX_POINTS_X 3 // Počet bodů, které na podložce chceme změřit v podélné ose X. Standardně nastavené jsou 3 body. Kdo chce, může si přidat nebo naopak počet snížit.

#define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X // Stejné nastavení jako na předchozím řádku, nyní se však jedná o osu Y. Ve výchozím nastavení je počet stanoven stejně jako na ose X. Celkem se tedy bude měřit 9 bodů. Chcete-li si počet upravit, nahraďte frázi GRID_MAX_POINTS_X jakýmkoliv číslem.

řádek č.1024

//#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE

//#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE – MIN_PROBE_EDGE)

//#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE

//#define BACK_PROBE_BED_POSITION (Y_BED_SIZE – MIN_PROBE_EDGE

U těchto čtyř řádků se můžeme na chvíli zastavit. Zde si totiž nastavíte mezní pozice měření. Ve standardním režimu si Marlin vypočítává měřící body z hodnot jako je velikost podložky X_BED_SIZE a vzdálenost měření od okraje MIN_PROBE_EDGE. Občas se mi stalo, že jsem se v těch číslech zamotal a celý firmware mi nešel zkompilovat, obzvláště pokud jsem si zároveň centroval střed podložky. Tuto situaci tedy řeším nastavením pevných hodnot. Ačkoliv měříme na devíti bodech, nastavujeme jen krajní. Střední body jsou vždy poloviční. Nezapomeňte, že nulová hodnota v ose X i Y je v levém předním rohu podložky. Moje nastavení tedy vypadá takto:

#define LEFT_PROBE_BED_POSITION 41

#define RIGHT_PROBE_BED_POSITION 185

#define FRONT_PROBE_BED_POSITION 30

#define BACK_PROBE_BED_POSITION 165

řádek č.1141

//#define Z_SAFE_HOMING // Odkomentováním této funkce bude mít extruder domácí pozici uprostřed podložky. Vysvětlím. Pro ty z vás, kteří máte čidlo nalevo od trysky nebo v její úrovni by nedošlo k homování. Čidlo by se dostalo mimo úroveň podložky. Po odkomentování tohoto řádku se standardně zahomuje osa X do svého endstopu, poté osa Y posune podložku až do zadního endstopu. Pak se extruder přesune na střed podložky a svou domácí pozici najde i osa Z.

 

A to je z nastavení Marlina vše. Takto jednoduché to je. Nyní si firmware nahrajte do řídící desky tiskárny a pustíme se do testů a kalibrování.

KALIBRACE

Pro usnadnění manipulace s tiskárnou bych doporučil nějaký software, který má terminál pro přímé odesílání kódů a taky směrovou ružici pro pohyb extruderu. Výborně se hodí třeba octoprint, repetier host, simplify3D a jiné.

Prvním krokem bude ověření funkce čidla o kterém jsem psal u řádku č.537. Zvedněte trysku do určité výšky, aby čidlo nesnímalo podložku. Terminálovým oknem odešlete příkaz M119. Tiskárna vám zpět odešle stavy jednotlivých endstopů. Všechny by měly být ve stavu „open“. Nyní přibližte k čidlu nějaký předmět a znova odešlete M119, endstop na ose Z by se měl vrátit jako „triggered“.

 https://3dfactory.cz/2018/09/15/autolevel/

https://3dfactory.cz/?p=2364&preview=true
Koncový spínač na ose Z je ve stavu “open”.

 

 https://3dfactory.cz/2018/09/15/autolevel/

Koncový spínač na ose Z je ve stavu “TRIGGERED”.

Pokud jste neudělali chybu v zapojení, vše by mělo fungovat. V případě, že se vám vrátily opačné výsledky, změňte firmware na řádku č.537 na hodnotu „false“.

Nyní terminálovým oknem odešlete příkaz pro přesun všech os do výchozích pozic. G28. Osy X a Y krásně zajedou k endstopům a podle vaší volby na řádku č. 1141 se nastaví i Z0. Buď, u kraje nebo uprostřed podložky.

Teď je ten správný moment pro přesné odměření rozdílu výšek trysky a čidla. Použijte, jak jste zvyklí, kousek kancelářského papíru a vložte pod trysku. Nyní v software, který používáte k ovládání tiskárny, posouvejte trysku opatrně níže, až přichytí papír. Úplně stejně jako jste to dělávali při manuální kalibraci. Až si budete jisti, terminálovým oknem odešlete příkaz M114. Vrátí se vám aktuální pozice Z, předpokládám se zápornou hodnotou. Nyní máte právě tu hodnotu, místo níž jsme na řádku č. 776 nastavili nulu, protože jsme ji neznali. Já jsem při kalibraci naměřil -3.90mm protože můj kapacitní senzor změřil rovnou sklo a je natolik citlivý, že ačkoliv byl umístěn vysoko nad tryskou, stále reaguje v dostatečné vzdálenosti.

https://3dfactory.cz/2018/09/14/autolevel/
Takto vypadá odpověď příkazu M114, zapamatujte si vaši hodnotu Z.

 

Pojďme si tedy poprvé spustit autolevel. Odešlete tiskárně příkaz G29 a sledujte tu parádu. Pokud jste si nastavili správné hodnoty pro vzdálenosti měřících bodů, čidlo v žádném místě neopustí podložku a krásně se změří. Benefitem bude tabulka naměřených hodnot, kterou vám tiskárna vypíše v terminálovém okně. To je překvapení na co jste tiskli, že? Klidně se svými prvními naměřenými hodnotami pochlubte v komentářích pod článkem nebo nám je připněte na facebookovou zeď.

Předpokládám, že se vám podařilo vše nastavit a autolevel proběhl bez komplikací. Můžeme se tak vrátit zpět do nastavení Marlina a dokončit nastavení a opět zakomentujeme řádek č.900, //#define MIN_SOFTWARE_ENDSTOPS, případně si poupravte vzdálenosti měřících bodů na řádku č. 1024. Rozdílovou hodnotu Z uložíte do firmware odesláním příkazu M851 Z-3.90 a uložíte příkazem M500.

https://3dfactory.cz/2018/09/14/autolevel/

SLICER

Zbývá poslední úkol. Ve sliceru, který používáte, si do „start gcode“ přidejte nový příkaz G29. Ovšem pozor na správnou pozici. Nejdříve musí tiskárna provést homing G28 a poté teprve autolevel G29.

https://3dfactory.cz/2018/09/14/autolevel/

 

Hotovo

Tady se můžete podívat, jak má správně nastavený autolevel fungovat, respektive jak funguje ten můj z tohoto návodu…

Pokud se vám vše podařilo, autolevel máte nastavený, pošlete nám video na naši facebookovou stránku. Pro tento článek je informací až až, navíc máme hotovo takže jsme v jeho úplném závěru. Jaké téma rozebereme příště? Máte nějaký námět na dobré téma? Napište nám.

23 thoughts on “Autolevel

  1. Ahoj, rozhodne zajimave, mel bych jen dotaz proc ne BLtouch? Je tam nejaky markantni rozdil proc jej nepouzit a pouzit prave kapacitni senzor?

    Mozna dalsi dotaz je, jak moc dokaze tento autoleveling srovnat tisk, jde o to kolik +- milimetru na cca 22cm heatbedu se sklem je schopno toto reseni pokryt?
    Mam problem s manualnim levelingem, problem je v original H voziku co nese heatbead, prohyba se pri utazeni a tim zase zasekava loziska (mam uz plastove), prakticky po levelingu nejde pohnout vozikem. (Mam uz pripraveny L profily co tento neduh doufejme odstrani)

    Ma predstava je, ze bych zakladem srovnal heatbed napevno a autoleveling mi pripadne nerovnosti pokryl, je to mozne?

    1. Rozhodně BL touch nezavrhuji ale řešení s kapacitním čidlem je levnější a snazší na zapojení.
      Já když jsem si autolevel nastavoval, srovnal mi podložku docela dobře, jakože softwérově.
      Základem je mít rovný podklad. Čidlo pouze na devíti bodech změří výšku tryska/podložka, tu zprůměruje a podle ní tiskne. Teda v základním bilineárním modu který popisují ve článku. Pokud chcete srovnat každý bod zvlášť, musíte si zprovoznit “mesh” bed leveling. Ale to už je celkem náročné na volnou paměť takže je potřeba vypnout jiné funkce nebo vyměnit zavaděč za optiboot…

  2. Ahoj,

    napad na dalsi clanek: uprava proudu do stepper motoru. Po dlouhem tisku se mi Y stepper, zda ponekud teplejsi, ne ze by primo horel, ale vic nez se mi libi. Da se u Anet A8 upravit proud do motoru? Pripadne by se hodilo HOWTO 🙂

    Dale jsem videl mnoho napadu na zakryti tiskarny pro ABS tisk, aby nezchladl behem tisku a neodlupovaly se vrstvy; ci pripadne nejake odzvuceni tiskarny, udelal jsem uz mnoho upgradu a hodne jsem ji ztisil, ale mozna vis o nejake dalsi finte, co jsem nepouzil 🙂 Pripadne nejaky seznam a popis pouzivanych pluginu do OctoPrintu. Moznosti je hodne, ale urcite si poslechnu nejake, ktere uz nekdo pouziva dele a je s tim spokojen.

    Diky

    1. No jo, upravit proud motoru na desce s driverem. To by mohlo jít. Teď je tam nastavené úplně tabulkové optimum ale někdo by třeba rád ubral. Na to se podívám. Bude to ale asi hodně o pájení…
      Děkuji za dobré typy. Enclosure mám za ty roky taky už Xtý a ke každému nějaké zkušenosti…

  3. Super návod 🙂
    každopádně jen jestli to chápu dobře. Tímto způsobem se tiskárna zkalibruje tak, že i když by byl bed na křivo a tisk přes klasický end by nebyl možný tak toto zkoriguje tisknutý gcode tak aby tryska dokonale kopírovala povrch a vše se vytisklo jak má?
    Děkuji za odpověď 🙂

    1. Děkuji. Kdepak, autolevel v jakékoliv podobě pouze naměří bed a zprůměruje hodnotu pro nejpřesnější výšku vrstvy. Pokud by jste chtěl kompenzovat nerovnosti podložky, musel by jste použít “mesh” leveling. Ale ten jsem zatím nezkoušel takže odpovídám jen teoreticky. Nicméně bilinear z návodu výsledek zprůměruje.

        1. Nejen jednoduché, hlavně by jste tiskl křivé objekty. Šikmá podložka vs. předmět kolmo nahoru…

  4. A teď koukám že se to sice řeší již o trochu výše. Ve chvíli když jsem dotaz psal zde žádný komentáře ještě nebyli, tak proto. Jen pro upřesnění 😀

  5. Zdravim Vas. Opat jeden vyborny clanok. Pre mna zatial najpochopitelnejsi navod na instalaciu senzoru aky som cital. Mal by som vsak jednu otazku. Nie je potrebne pred samotnou instalaciou mat vylevelovanu podlozku klasickym sposobom?

    Dakujem za odpoved a za dalsie clanky ktore pre nas pripravujete

    1. Dobrý den, velmi děkuji za kladné hodnocení.
      K tomu autolevelu, samozřejmě je nutné mít srovnanou podložku ostatně jako vždy. I když ji tedy budete mít “trochu” křivou, bilineární autolevel vám tu nerovnost promítne do několika prvních vrstev modelu. Lineární, který teď používám nejčastěji, všechny změřené body zprůměruje. Je tedy lepší mít podložku opravdu co nejrovnější a případnou odchylku autolevel dorovná. Takový je koncept.

  6. Dobrý den
    Děkuji za vaše články,pro mě jako úplného začátečníka je to k nezaplacení.
    Jen bych potřeboval vysvětlit co znamená ODKOMENTOVAT a ZAKOMENTOVAT.
    Děkuji za odpověď

    1. Dobrý den, jsem rád, že jsou mé články přínosné.
      Komentáře…
      V jednotlivých řádcích firmware Marlin jsou mimo zdrojových dat, zapsaný taky komentáře, které nám vysvětlují funkci atd. Tyto komentáře se poznají podle dvojitého lomítka. Když tedy v kódu, na začátku řádku vidíte dvojité lomítko, znamená to, že zkráceně, firmware se bude do ovládací desky nahrávat bez tohoto textu.
      Takže výrazem “zakomentovat” myslím připsat dvojité lomítko aby se text z programu vynechal.
      Výrazem odkomentovat je myšleno smazat lomítka a tedy vyjmout text z komentářů a nechat program aby s daným řádkem pracoval.

  7. Dobry den. Mam este taky mensi problem a mozno budete vediet poradit. Po vsetkych nastaveniach a zapnuti tlace prebehne autolevel. Mam nastaveny bilinerany rezim. Problem je vsak ten, ze aj po manualnom vylevelovani bedu plechovymi mierkami (takze kazdy roh je maximalne presny ) po autoleveli je prava strana vytlacena dobre, no akonahle ide tryska na lavu stranu, priblizi sa natolko k bedu, ze nedokaze vytlacit vlakno. Citim ze sa motor snazi otacat ale nevidim efekt. Ten isty problem som mal aj pri prehodeni na linearny rezim. Je mozne ze ten rozdiel je tak maly, ze nedokaze motor otocit iba o taky maly kusok v osi Z ?

    Dakujem

    1. Ahoj,

      pokud resis levou a pravou rozdilnou vysku, doporucuji upravit manualne Z-osu, pri vypnutych motorech ci vypnute tiskarne, rucne pootoc zavitovou tyci o krok ci vice, dle tvych potreb. Takto jsem vyresil u me Anet A8 spatny leveling i kdyz dle kalibrace je vse OK. Bohuzel Anet nema spravnou tuhost voziku a ten se neprijemne ohyba misto toho, aby napinal heatbead, tak se ohyba sam …

      Jinak doporucuji udelat rucni leveling na necastejsi oblast tisku, vetsinou tisknu na stred +- par centimetru od stredu, takze delat leveling cca 2 cm od okraje je zbytecne, radeji si delam leveling 8 cm uhlopricne z kazdeho rohu, dosahuji tim lepsich vysledku.

  8. Dobrý den, dokonalý článek, na webu se tak srozumitelné a s pedagogickým citem podané návody téměř nevyskytují. Radost mi kazí skutečnost, že paměť mojí A8 nepojme firmware Marlin 1.1.9 se současně aplikovanými změnami pro autolevel a změnami podle článku Vícebarevný tisk s jedním extruderem. Kompilátor Arduina zjistil překročení úložného místa na 101% (asi 2kB). Pomohl by návrat k Marlin 1.1.8 (třeba je o pár kB útlejší), nebo jsou jiné cesty pro úsporu paměti? Pokud můžete, poraďte

    1. Dobrý den, děkuji za projevenou pochvalu.
      K vašemu problému: určitě existují nějaké cesty jak paměť uvolnit. První z nich by bylo vypnutí jiných funkcí. Řekněme třeba PID regulaci teploty, nebo jinou. Další možností by mohla být změna způsobu autolevelingu tak, že si místo bilinearního zvolíte lineární (tzv. jednoduchý).
      A konečně poslední možnost, použijete jiný zavaděč. Mnoho se o tom nenapsalo ale určitě jste mohl při vypalování bootloaderu / zavaděče narazit na název “Anet 1.0 optiboot”. Jde o zredukovaný zavaděč který dokáže ušetřit několik kb místa. Takže na google, hledaná fráze optiboot.

  9. Děkuji za pomoc. Myslíte, že by nevedlo k “cihle”, kdybych v configuration.h zakomentoval některé podmíněné příkazy, které “nezaberou” ? Např. když v ř. 977 (Marlin 1.1.9) zvolím “auto bed leveling linear”, pak by měly být nefunkční příkazy mezi řádkem 995 (#if …) a řádkem 1018 (-endif) a mohly by se zakomentovat. Podobných pasáží tam je více. Nebo mohou existovat tvrdé nepodmíněné “skoky” dovnitř těch podmíněných příkazů ? Asi to vidím jako Hurvínek válku !?!

  10. Dobrý den, super článek ale chtěl bych se zeptat. Jsem nováček v 3d tisku a jako první tiskárnu jsem si vybral Anet A8 a k tomu kapacitní sensor. Šel jsem krok po kroku a když dám domovskou pozici tak mi extruder jede dolů, senzor sepne, ale stále mi tlačí na skleněnou podložku dokud nevypnu tiskárnu. Zkontroloval jsem zapojením i nastavení marlinu jsem zkoušel podle návodu přepsat vícekrát ale nenašel jsem vůbec kde byl mohl být problém.

    1. Dobrý den, základem tedy bude ještě jednou zkontrolovat zapojení. Kapacitní čidla bývají 12V a deska pouze 5V čili je potřeba proměřit výstup jestli je opravdu vše správně. V článku je pak popsán způsob kdy pomocí M-kódu ověříte funkci čidla, jestli je sepnuté nebo otevřené. Když tohle všechno sedí, bude zřejmě chybka ve firmware. Můžete mi na email info@3dfactory.cz poslat vaše konfigurační soubory confifuration.h a configuration.adv.h a já je zkusím porovnat s mými.

  11. Dobrý den. Mám Anet A8 s deskou Anet 3D v. 1_5. Úpravy ve firmware Marlin 1.1.9 dělám pomocí PC s Windows 10 a programu Arduino 1.8.7 přes USB kabel (COM port). V nástrojích programu Arduino jsem dosud vždy vybral desku “Anet V. 1.0” a firmware se do desky nahrál bez problémů, usuzuji z toho, že deska má potřebný bootloader. Při mých dalších úpravách firmware ale kompilátor programu Arduino ohlásil, že “Projekt je moc velký” (101%). V nástrojích programu Arduino je na výběr také deska “Anet V. 1.0 (Optiboot)”, při jejím použití je kompilace programem Arduino o několik kB menší. Je možné takto vytvořený menší projekt nahrát do desky Anet v. 1_5 jako dříve, tedy bez změny bootloaderu ? Děkuji za rady a pomoc. J.K.

    1. Tuto optiboot verzi je nejdříve potřeba zavést jako bootloader. Jinak to nejde, respektive se mi to nikdy nepodařilo. Nejdříve tedy bootloder optiboot a pak již klasicky marlin s vybranou optiboot deskou.

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *