Strona 1 z 1

Tevo (tarantula) odysseus RS

: 18 cze 2021, 22:49
autor: Robbo
Witam wszystkich jako początkujący użytkownik drukarki 3d.
Mam prośbę do kogoś biegłego w programowaniu o małą pomoc.
Po zakupie tej drukarki postanowiłem zamontować klona BLTouch i oczywiście musiałem pogrzebać w Marlinie 2.0.7.2 (płyta skr 1.3) z którym nie miałem nigdy do czynienia.
Udało mi się dosyć dobrze wszystko poustawiać, dodać obsługę PID ów, zmieniłem śruby na 2mm i uruchomiłem auto leveling, ale mam dziwne zachowanie wentylatora na heater blocku. Włącza się i wyłącza podczas wykonywania pomiaru.
Gdzieś oewnie nakładają się definicje pinów...
Kompilacja przechodzi bez błędów.
Jeśli ktoś byłby zainteresowany to oczywiście mogę udostępnić firmware. Autoleveling mam ustawiony lepiej niż w jakimkolwiek istniejącym poradniku w Internecie.

Re: Tevo (tarantula) odysseus RS

: 18 cze 2021, 23:22
autor: JGFTW
Możliwe, że masz odkomentowane:

Kod: Zaznacz cały

#define PROBING_FANS_OFF          // Turn fans off when probing
https://github.com/MarlinFirmware/Marli ... on.h#L1250

Ta funkcja robi dokładnie to co opisujesz - wyłącza wentylatory podczas próbkowania stołu.
Jak tego zachowania nie chcesz to zakomentuj ten fragment i nagraj Marlina jeszcze raz.

Raczej wątpie, że jest to kwestia nakładania się definicji pinów ;)

Re: Tevo (tarantula) odysseus RS

: 19 cze 2021, 06:41
autor: Robbo
Wielkie dzięki, oczywiście, że to było to.

Jeszcze mam jedną prośbę jest coś takiego jak:
#define Z_PROBE_END_SCRIPT "G1 Z10 F12000\nG1 X15 Y330\nG1 Z0.5\nG1 Z10"
Mógłbyś mi to przetłumaczyć to polecenie.
Chodzi mi o to żeby po próbie głowica podniosła się o powiedzmy 10mm w osi Z następnie jednocześnie z dużą prędkością na pozycję XY = 0 i po ich osiągnięciu podniosła Z o 30mm (bez próbkowania Z)

Re: Tevo (tarantula) odysseus RS

: 19 cze 2021, 09:13
autor: JGFTW
Po zakończeniu próbkowania stołu wykonają się następujące komendy:

Kod: Zaznacz cały

 
G1 Z10 F12000 // podniesienie głowicy na pozycję Z10, prędkość 12000mm/min
G1 X15 Y330 // przejście na pozycję X15 Y330 
G1 Z0.5 // kolejne przeniesienie się głowicy na Z.05, obniżenie karetki 
G1 Z10 // podwyższenie się karetki na Z10
https://marlinfw.org/docs/gcode/G000-G001.html

Trochę przekombinowane, szczególnie dwa ostatnie fragmenty można śmiało wywalić (chyba, że pełnią jakąś bardzo ważną funkcję) i jak zmienisz wartości przy pozycjach X,Y to powinno to robić co chcesz. Musisz sprawdzić czy prędkość przesuwu danej osi - parametr F (feedrate w mm/min) - jest odpowiednia.

Kod: Zaznacz cały

#define Z_PROBE_END_SCRIPT "G1 Z10 F4000\nG1 X0 Y0 F10000"
Jak podniesienie się będzie zbyt szybkie/wolne to edytuj parametr F, dałem przykładowe wartości.

Nie ma co sobie komplikować życia z edytowanie tego; Ja bym to zostawił tak, żeby jedynie podniosło się na pozycję Z10 lub Z30 (jak chcesz) po próbkowaniu stołu:

Kod: Zaznacz cały

#define Z_PROBE_END_SCRIPT "G1 Z30 F12000"
Swoją drogą ten sam efekt (podniesienia głowicy po zakończeniu poziomowania) można osiągnąć poprzez:

Kod: Zaznacz cały

#define Z_AFTER_PROBING           30 // Z position after probing is done
https://github.com/MarlinFirmware/Marli ... on.h#L1221

Re: Tevo (tarantula) odysseus RS

: 19 cze 2021, 09:34
autor: Robbo
#define Z_PROBE_END_SCRIPT "G1 Z10 F4000\nG1 X0 Y0 F10000 a jak po tym dodam \nG1 Z40 F4000" to po powrocie na XY Home podniesie się o Z=40?
Dzięki bardzo już kumam.
Właściwie to się tym zacząłem tym bawić od kilku dni.