Abychom mohly tiskárnu oživit a řídit, je nutné do Arduina nahrát firmware a v něm nastavit potřebné hodnoty. Výhodou Arduina a Ramps je, že ho podporují všechny firmwary. Pojďme si je představit.
1. Výběr firmwaru
1.1 Marlin
- nabitý funkcemi
- široce rozšířený
- dobrá dokumentace
- velká kompatibilita s různými deskami
- konfigurace přes Arduino IDE
1.2 Repetier
- výborná dokumentace
- kompatibilita s různými deskami (32 bitové)
- optimalizovaný pro Repetier-Host
- konfigurace přes Arduino IDE nebo web
1.3 RepRap
- vysoce modulární
- podpora 32 bitový desek
- limitovaná podpora řídicích desek
- konfigurace přes web
Ačkoliv mě lákala možnost konfigurace přes web, tak jsem nakonec zvolil Marlin. Bylo to spíše intuitivní rozhodnutí, než pragmatické.
2. Marlin nastavení
Firmware si v poslední verzi 1.1.19 stáhnete ze stránek a rozbalíte zip, v kterém je distribuován. Marlin.ino otevřete v Arduino IDE.
Jelikož je konfigurace každé osobně stavěné tiskárny individuální, tak jsem nikde pořádně nenašel, co bych měl nastavit. V dokumentaci je postupně uvedeno vše co můžete nastavit.
Konfigurace se provádí změnou souboru Configuration.h.
Komunikační rychlost
1 |
#define BAUDRATE 115200 |
Průměr filamentu
1 |
#define DEFAULT_NOMINAL_FILAMENT_DIA 1.75 |
Použitý sensor extruderu a podložky
1 2 |
#define TEMP_SENSOR_0 11 #define TEMP_SENSOR_BED 11 |
Parametry PID regulace teploty
1 2 3 4 5 |
#define PIDTEMP // My printer #define DEFAULT_Kp 25.54 #define DEFAULT_Ki 3.00 #define DEFAULT_Kd 54.41 |
Jednotlivé hodnoty získáte po nahrání firmwaru a provedení zahřívacího cyklu. Více třeba na PID autotuning.
Parametry PID regulace podložky
1 2 3 4 5 6 |
#define PIDTEMPBED // My printer #define DEFAULT_bedKp 511.14 #define DEFAULT_bedKi 97.49 #define DEFAULT_bedKd 669.98 |
Počet kroků na mm
1 |
#define DEFAULT_AXIS_STEPS_PER_UNIT { 100.20, 100.20, 398, 149 } |
Hodnoty pro osu Z spočítáte podle dřívějšího článku o GRBL, pro sou X a Y pomocí kalkulačky.

Korekce se následně provede podle měření a kontrolního tisku. Více v článku kalibrace a tisk.
Akcelerace jednotlivých os
1 |
#define DEFAULT_MAX_ACCELERATION { 1000, 1000, 100, 1000 } |
Autokalibrační sonda
Jedná se o vzdálenost autokalibrační sondy od trysky.
1 2 3 4 5 |
#define FIX_MOUNTED_PROBE #define X_PROBE_OFFSET_FROM_EXTRUDER 23 // X offset: -left +right [of the nozzle] #define Y_PROBE_OFFSET_FROM_EXTRUDER 5 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] |
Minimální výška pro homování
1 |
#define Z_HOMING_HEIGHT 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ... |
Velikost podložky
1 2 |
#define X_BED_SIZE 220 #define Y_BED_SIZE 180 |
V ose Y ji mám redukovanou kvůli uchycení stolu k vyhřívané podložce svorkami.
Typ kalibrace podložky
1 |
#define AUTO_BED_LEVELING_BILINEAR |
Hranice kalibrace podložky
1 2 3 4 |
#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE + 13 #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) |
Korekce houmovací pozice
1 2 |
#define MANUAL_X_HOME_POS -10 #define MANUAL_Y_HOME_POS -5 |
Jedna se o korekci podložení dorazů koncových spínačů v osách X a Y.
Zapnutí bezpečného houmování
1 |
#define Z_SAFE_HOMING |
Umožnění ukládaní změn nastavení do EEPROM
1 |
#define EEPROM_SETTINGS // Enable for M500 and M501 commands |
Komunikační jazyk displeje
1 |
#define LCD_LANGUAGE cz |
Podpora SD karty a nastavení
1 2 3 |
#define SDSUPPORT #define SPI_SPEED SPI_QUARTER_SPEED #define SD_CHECK_AND_RETRY |
Výběr typu displeje
1 |
#define REPRAP_DISCOUNT_SMART_CONTROLLER |
Kompletní můj konfigurační soubor Configuration.h.
3. Marlin nahrání
Kompilace a nahrání firmwaru do desky je stejná, jako u jakéhokoliv jiného Arduino prográmku. Vyberete port, typ desky a dáte uploudovat. Projekt se nejprve zkompiluje a nasledně nahraje do Arduina.
Pokud nevíte, zkuste se podívat na video od Sakula.
Tím máme tiskárnu připravenou a můžeme se vrhnout na kalibraci a první tisk.
Panove, prosimm o rychlu radu, mam zostavenu 3D tlaciaren (mega, ramps 1.6, marlin 1.1.9) , vsetko funguje perfetne, posuvy, endstpy, extruder. No dnes som pripojil prvy krat vyhrievanie trysky a termistor. No vobec sa mi nepodarilo zohriat trisku, Na LCD displey mi stale ukazuje teplrou trysky a aj teplotu hotbed minus 14 stupnov..
Mam extruder MK8 s motorom s vyhrievacim telesom aj termistorom. Ked dam na displeii zohriat PLA hotend, tak sa nic nedeje a po chvilke vypise chybovu zpravu ” Chyba zahrivani, provedte reset”…Ked odklepnem na display “Zahrievanie PLA hottend” a meriam napetie na vystupe do hottendu, tak nameriam 0.00V , cize ziadne napetie….Na odpojenom termistore som meral jeho odpor , vyvody ukazuju ze su skratovane, cize 0.00 Ohm.. co sa mi vobec nepaci, lebo mam novy termistor 47k a ten ukazuje odpor 39k…kde by mohol byt problem?? Alebo v nastaveni marlinu??
Dakujem moc… uz som si myslel ze zajtra previem prvu tlac… a tu mas…