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
#define BAUDRATE 115200
Průměr filamentu
#define DEFAULT_NOMINAL_FILAMENT_DIA 1.75
Použitý sensor extruderu a podložky
#define TEMP_SENSOR_0 11 #define TEMP_SENSOR_BED 11
Parametry PID regulace teploty
#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
#define PIDTEMPBED // My printer #define DEFAULT_bedKp 511.14 #define DEFAULT_bedKi 97.49 #define DEFAULT_bedKd 669.98
Počet kroků na mm
#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
#define DEFAULT_MAX_ACCELERATION { 1000, 1000, 100, 1000 }
Autokalibrační sonda
Jedná se o vzdálenost autokalibrační sondy od trysky.
#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í
#define Z_HOMING_HEIGHT 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
Velikost podložky
#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
#define AUTO_BED_LEVELING_BILINEAR
Hranice kalibrace podložky
#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
#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í
#define Z_SAFE_HOMING
Umožnění ukládaní změn nastavení do EEPROM
#define EEPROM_SETTINGS // Enable for M500 and M501 commands
Komunikační jazyk displeje
#define LCD_LANGUAGE cz
Podpora SD karty a nastavení
#define SDSUPPORT #define SPI_SPEED SPI_QUARTER_SPEED #define SD_CHECK_AND_RETRY
Výběr typu displeje
#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…