Marlin Firmware Konfigurálása 3D Nyomtatóhoz: Lépésről Lépésre

Ebben a cikkben lépésről lépésre megmutatom, hogyan kell a Marlin firmware-t konfigurálni egy HyperCube 3D nyomtatóhoz. Minden épített 3D nyomtató valamennyire egyedi, így egyedileg testre szabott firmware-re van szüksége. Például lehet, hogy a stepper motor kábeleket fordítva kötöttem be hozzád képest. Egyébként ez az első, amit ki kell próbálni, hogy a motorok megfelelő irányba forognak-e.

Egy „óvatos Home-ot” elindítunk a firmware feltöltése után, és ha rossz irányba mozog valami, akkor gyorsan áramtalanítjuk a nyomtatót, hogy ne kínozza saját magát a tengelyek végein. Javítjuk a firmware-t és újra próbáljuk.

MKS GEN 1.4 board-ot használok, a példában egyrészt ez fog szerepelni, másrészt kitérek arra is, hogy RAMPS esetében mit kell az adott sorba írni. De vigyázat: a RAMPS-os példáimat nem próbáltam ki! A célom nem az, hogy működő kódot adjak a kezedbe, hanem az, hogy megmutassam melyik sorokat kell módosítanod a saját nyomtatód bekonfigurálásához. K.I.S.S: Keep it simple, stupid Mindent olyan egyszerűre kell csinálni, amennyire csak lehet, de nem egyszerűbbre.

Nagyon erősen javaslom, hogy kis lépésekben módosítsuk a kódot és egy-egy önállóan tesztelhető beállítás után azonnal próbáljuk is ki a művünket! Ne csináljuk azt, hogy mint valami kérdőívet kitöltjük az elejétől a végéig a konfigurációs fájlt és minden számunkra szimpatikus, jópofa funkciót bekapcsolunk. Ennek egészen biztosan az lesz a következménye, hogy elrejtünk valami kis hibát, amit aztán órákig keresgélhetünk.

A cél az legyen, hogy minden egyes sor módosításának a hatásával tisztában legyünk!

Micro:bit alapú léptetőmotor vezérlés

Frissített Marlin firmware telepítési útmutató - VS Code és Auto Build Marlin

Szerintem nem túlzás valamilyen forráskód kezelő szoftvert, például Git-et vagy SVN-t használnunk a Marlin kódunk karbantartásához. De ha ezt nem is teszed, akkor legalább készíts másolatot minden működő változatáról a Configuration.h fájlnak.

Első lépésként nevezzük át a mappát valami egyedibbre, például Marlin_1-1-9_HyperCube-ra és a benne lévő Marlin.ino fájlt ugyan így Marlin_1-1-9_HyperCube.ino-ra. Ez azért lesz jó, mert ha több Marlin változatot is tárolunk a gépünkön, akkor az Arduino IDE fejlécében látni fogjuk, hogy éppen melyik van nyitva. Az Open Recent menüben is segít, ha nem csupa egyforma „Marlin” sorakozik egymás alatt.

Első módosításként a 139. sorban nevezzük el a nyomtatónkat. A sorok számozását konkrétan fogom megjelölni, de természetesen ezek elcsúszkálhatnak a Te verziódhoz képest. Vegyük ki a sor elején lévő komment jelet és írjunk be valami nevet:

#define CUSTOM_MACHINE_NAME "HyperCube"

Fordítsuk el a programot Ctrl+R billentyűkkel! Ha minden rendben, akkor elkezdhetjük az érdemi munkát:

A mechanika működésé beállításai

Az első nagyobb csomagban azokat az alapbeállításokat végezzük el, melyekkel a tengelyek mozgatását, Home-ot, ki lehet próbálni.

Megoldások léptetőmotor vezérléshez

CoreXY felépítés

A 494. sorban állítsuk be a CoreXY mechanikát. Vegyük ki a kommentet:

#define COREXY

A későbbiekben ha mást nem írok, akkor „beállítás” alatt a komment jelek törlését fogom érteni!

Végálláskapcsolók

MKS GEN és RAMPS esetén is fordítsuk meg a végállás kapcsolók jelének az értékét. Ha azt tapasztaljuk, hogy fele, vagy dupla távolságokat mozognak a tengelyek, mint amit várunk tőlük, akkor itt a megfelelő értéket duplázni, vagy felezni kell.

Hibajelenségek és javítási lehetőségek: Opel alapjárati motor

#define INVERT_E0_DIR true

Ezen nem érdemes gondolkodni, mindjárt kipróbáljuk.

Vízszint szenzor

Ha nem használsz vízszint szenzort, akkor ugord át ezt a részt. Az alábbiakban MKS GEN alaplaphoz PNP bekötésű indukciós szenzort állítok be. Más csillagállás esetén lehet, a Z EndStop-ot invertálnod kell például.

#define Z_PROBE_OFFSET_FROM_EXTRUDER 0#define AUTO_BED_LEVELING_BILINEAR
Vízszint szenzor

Nyomtatási terület mérete

Be kell állítanunk a tengelyek hosszait, mivel csak a kezdő pontokra tettünk végálláskapcsolókat, így a tengelyek másik végeinek elérését szoftverből számolja a firmware.

#define Y_BED_SIZE 180#define Z_MAX_POS 130

Minimum oldalak szoftveres vizsgálatát viszont kapcsoljuk ki:

//#define MIN_SOFTWARE_ENDSTOPS

Próbáljuk ki a művünket!

Igaz, még képernyő kezelést sem állítottunk be, de konzol segítségével ki tudjuk próbálni, hogy eddig mindent jól csináltunk-e. A tengelyeket kézzel állítsuk nagyjából középre, hogy legyen időnk felismerni, ha rossz irányba indulnának el.

Fordítsuk le a programot és töltsük fel a vezérlőre, majd nyissuk meg a konzolt Arduino IDE-ben, vagy az OctoPrint-ben. Helyezzük áram alá a nyomtatót!

Végálláskapcsolók ellenőrzése

Az M119-es paranccsal ellenőrizhetjük, hogy mit gondol a vezérlő a kapcsolók aktuális állapotáról.

Recv: ok

Ha nem így van, akkor invertálnunk kell azt az értéket, amit beállítottunk.

Recv: z_min: open

Ha az az irány került TRIGGERED állapotba, amelyikhez tartozó kapcsolót kézzel lefogtunk, akkor próbáljuk tovább a többit. Az indukciós szintezőt is ki tudjuk próbálni, ha valami fém tárgyat teszünk alá, és látjuk, hogy világít a lámpája. Ha valami mégsem úgy van, ahogy várjuk, akkor valószínű a vezetékeket nem kötöttük be megfelelően.

Ha továbbra is minden okés, akkor adjunk ki egy G28 parancsot. Ezzel Home helyzetbe mozgatjuk a nyomtatót. Figyeljünk nagyon, hogy valóban a végállás kapcsolók felé indulnak-e el a motorok. Ha nem, akkor áramtalanítsuk a nyomtatót és javítsuk a vonatkozó INVERT DIR beállítást.

Ha sikerült helyesen a home, akkor megdicsérhetjük magunkat, a konfiguráció nehezén már túl is vagyunk. Folytassuk a munkát, csináljunk 3D nyomtatót ebből a remekül mozgó robotból!

Elektronikák beállításai

Vezérlő típusa

Ha nem RAMPS-ot használunk, akkor a 134. sorban mondjuk meg, hogy melyik nyomtatóvezérlő pin kiosztását használja a Marlin. MKS GEN esetében:

#define MOTHERBOARD BOARD_MKS_GEN_13

LCD képernyő

MKS GEN alaplaphoz MKS mini LCD képernyőt használok, ezt így kell beállítani:

#define MKS_MINI_12864

Ha RAMPS-ot használunk például 20×4-es LCD kijelzővel, ahogy az eredeti videóban látható, akkor pedig ezt a sort aktiváljuk:

#define REPRAP_DISCOUNT_SMART_CONTROLLER

Ha valami egyéb megoldást választottunk, akkor nézzünk utána, hogyan kell a Marlin-ban azt a konkrét kijelzőt beállítani. Mindegyik esetben kapcsoljuk még be az SD kártya elérhetőségét is:

#define SDSUPPORT
RAMPS

Filament vastagság

Állítsuk be az 1.75mm-et filament vastagságként:

#define DEFAULT_NOMINAL_FILAMENT_DIA 1.75

Fűthető tálca

A fűthető tálcát a tálcához tartozó termisztor típusának megadásával kapcsoljuk be:

#define TEMP_SENSOR_BED 1

Probáljuk ki ismét a módosításainkat!

A K.I.S.S. jegyében, elégedjünk meg ennyi beállítással és töltsük fel a firmware-t a nyomtatóra. Ugyanis mindazt beállítottuk, ami minimálisan szükséges ahhoz, hogy nyomtatni tudjunk.

Próbáljuk ki a kijelzőt, indítsunk el rajta funkciókat, fűtést, tengelyek mozgatásait. Próbálgassuk kicsit a nyomtatót és ha az eddigi szándékainkkal ellentétesen működik valami, akkor javítsuk a hibát.

Ha mindent rendben találtunk, akkor jöhet a következő rész, a finomhangolás. Előtte persze egy megérdemelt korsó sör. 🙂

BIGTREETECH SKR Mini E3 V3.0 Vezérlőpanel

A 3D nyomtatás világában a vezérlőpanel jelenti a szívet és az agyat egyben. A BIGTREETECH SKR Mini E3 V3.0 a legújabb fejlesztésű, kifejezetten az Ender 3 sorozatú nyomtatókhoz tervezett vezérlőpanel, amely forradalmasítja a nyomtatási élményt. Ez a 32 bites panel a legmodernebb STM32G0B1RET6 vagy STM32G0B0RET6 főprocesszorral és négy TMC2209 UART csendes léptetőmotor meghajtóval rendelkezik, amelyek együttesen biztosítják a hihetetlenül csendes és precíz működést.

A panel tökéletes megoldást jelent azoknak, akik szeretnék fejleszteni meglévő Ender 3, Ender 3 Pro vagy Ender 3 V2 nyomtatójukat, és kiküszöbölni a gyári vezérlőpanel korlátait. Az újratervezett hűtőrendszer, a továbbfejlesztett tápellátás és a bővített csatlakozási lehetőségek mind azt szolgálják, hogy nyomtatója megbízhatóbban, pontosabban és csendesebben működjön.

Főbb Jellemzők

  • Fejlett 32 bites vezérlés: A legújabb STM32G0 sorozatú főprocesszorral, amely jelentősen nagyobb teljesítményt és jobb vezérlési lehetőségeket biztosít a korábbi 8 bites vezérlőkhöz képest.
  • TMC2209 UART csendes léptetőmotor meghajtók: 4 beépített meghajtó, amelyek szinte hangtalan működést tesznek lehetővé, miközben pontosabb mozgásvezérlést biztosítanak.
  • Továbbfejlesztett hűtőrendszer: Újratervezett hűtőbordák és három vezérelhető CNC ventilátor csatlakozás a hatékonyabb hőelvezetés érdekében, ami meghosszabbítja a panel élettartamát.
  • Bővített tápellátási lehetőségek: Az SPI kimeneti port tápellátásának növelése +3,3 V-ra, valamint opcionális +3,3 V és +5 V külső SPI érzékelő tápellátás, amely lehetővé teszi a perifériák közvetlen tápellátását.
  • Termisztor interfész védelmi áramkör: Megakadályozza a fő vezérlőchip károsodását, növelve a megbízhatóságot és az élettartamot.
  • Fűtési kimenet támogatás: Támogatja a fűtött fej és a fűtött ágy kimenetét, jelzőfénnyel a megfelelő csatlakozás és bekapcsolás esetén.

Felhasználási Területek

Az SKR Mini E3 V3.0 vezérlőpanel számos területen nyújt kiemelkedő teljesítményt:

  • Csendes nyomtatás: A TMC2209 meghajtók szinte teljesen hangtalan működést biztosítanak, így akár éjszaka vagy irodai környezetben is használhatja nyomtatóját anélkül, hogy zavarná környezetét.
  • Precíziós modellek készítése: A fejlett 32 bites vezérlés és a pontosabb léptetőmotor vezérlés finomabb részleteket és jobb felületi minőséget eredményez a nyomtatott modelleken.
  • Hosszú nyomtatási munkák: A továbbfejlesztett hűtési rendszer lehetővé teszi a hosszabb, megszakítás nélküli nyomtatási munkákat a túlmelegedés veszélye nélkül.
  • Firmware testreszabás: A nagyobb teljesítményű processzor támogatja a fejlettebb firmware-eket és egyedi funkciókat, amelyek a gyári vezérlővel nem lennének lehetségesek.

Kompatibilitás

A BIGTREETECH SKR Mini E3 V3.0 vezérlőpanel kifejezetten az alábbi 3D nyomtatókkal kompatibilis:

  • Creality Ender 3
  • Creality Ender 3 Pro
  • Creality Ender 3 V2

A panel méretei és csatlakozói úgy lettek kialakítva, hogy tökéletesen illeszkedjenek ezekhez a modellekhez, így a telepítés egyszerű és gyors. A csomag tartalmazza az összes szükséges csatlakozót és rögzítőelemet, így nincs szükség további alkatrészekre a beszereléshez.

A vezérlőpanel támogatja a népszerű firmware-eket, mint például a Marlin 2.0, amely lehetővé teszi a nyomtató funkcióinak testreszabását és bővítését. A 32 bites architektúra elegendő teljesítményt biztosít a fejlettebb funkciók, mint például az automatikus ágyszintezés, filament érzékelés vagy a fejlett mozgásvezérlés használatához.

Előnyök és Hátrányok

Előnyök:

  • Rendkívül csendes működés a TMC2209 UART meghajtóknak köszönhetően
  • Jelentősen jobb nyomtatási minőség a pontosabb mozgásvezérlés révén
  • Hatékonyabb hűtési rendszer, amely meghosszabbítja a panel élettartamát
  • Egyszerű telepítés, közvetlenül helyettesíti a gyári vezérlőpanelt
  • Bővített csatlakozási lehetőségek további perifériák számára
  • Támogatja a fejlett firmware funkciókat a nagyobb teljesítményű processzornak köszönhetően
  • 12 hónapos gyártói garancia

Hátrányok:

tags: #leptető #motor #vezérlés #marlin #beállítás