Ustawianie automatycznego poziomowania w 9 punktach na stole MK42 w Marlinie 2.0.
: 29 lut 2020, 22:12
Stawiam Marlina 2.0 na SKR mini v1.1 w kolejnym klonie prusy MK2s ze stołem MK42. Ten stół ma to do siebie, że pomimo ścieżek z miedzi na całym stole ma 9 punktów, w których są zwoje miedzi w celu dokładniejsze wykrywania przez czujnik indukcyjny. Empirycznie zauważyłem, że zwoje w tych miejscach wykrywają się o 1cm wyżej niż wiązka w pozostałych miejscach na stole.
Źródło : https://github.com/prusa3d/Original-Pru ... bed%20MK42
Początkowo myślałem, że uda się zwyczajnie wyspecyfikować dokładne położenie każdego z 9 punktów, ale nie mogę znaleźć nigdzie w plikach konfiguracyjnych takiej opcji. Może ktoś wie jak się nazywa funkcja, która coś takiego pozwala zrobić ? Czy to już trzeba kod pisać w probe.h/probe.cpp (zaglądałem do tych plików, ale nie umiem w komputer dobrze, żeby to ogarnąć) ?
Jedyną opcją wydaję się ustawienie siatki punktów 3x3 i ustawienie ograniczenia, tak żeby te punkty były wewnątrz :
Skorzystałem z wartości jakie są tutaj : https://github.com/MarlinFirmware/Marlin/issues/6199
Docelowo chciałem, sprawdzić czy taka opcja w ogóle zadziała, jednak dostaję błąd:
Chyba jakiś bug: https://github.com/MarlinFirmware/Marlin/issues/10538 , więc spróbowałem ustawić UBL.
Zmieniłem więc z Bilinear na UBL. I po zmierzeniu w KiCadzie odpowiednich współrzędnych wrzuciłem do configuration_adv.h :
Niestety wrzucając komendę G29 - nic się nie dzieję, natomiast jeżeli skorzystam z G29 P1
To dzieję się dokładnie to co jest napisane w dokumentacji Marlina :
Może ktoś już miał przyjemność ustawiania stołu MK42 w Marlinie 2.0?
Lub wie jak zmusić sprzęt do kalibrowania krzywizny stołu w 9 konkretnych punktach?
Moje pliki konfiguracyjne ;
Źródło : https://github.com/prusa3d/Original-Pru ... bed%20MK42
Początkowo myślałem, że uda się zwyczajnie wyspecyfikować dokładne położenie każdego z 9 punktów, ale nie mogę znaleźć nigdzie w plikach konfiguracyjnych takiej opcji. Może ktoś wie jak się nazywa funkcja, która coś takiego pozwala zrobić ? Czy to już trzeba kod pisać w probe.h/probe.cpp (zaglądałem do tych plików, ale nie umiem w komputer dobrze, żeby to ogarnąć) ?
Jedyną opcją wydaję się ustawienie siatki punktów 3x3 i ustawienie ograniczenia, tak żeby te punkty były wewnątrz :
Kod: Zaznacz cały
#define MIN_PROBE_EDGE_LEFT 35
#define MIN_PROBE_EDGE_RIGHT 238
#define MIN_PROBE_EDGE_FRONT 7
#define MIN_PROBE_EDGE_BACK 202.4
Docelowo chciałem, sprawdzić czy taka opcja w ogóle zadziała, jednak dostaję błąd:
Kod: Zaznacz cały
>>> g29
SENDING:G29
Set Trail 1
? (L,R,F,B) out of bounds.
>>> G29 L35 R238 F7 B202.4
SENDING:G29 L35 R238 F7 B202.4
Set Trail 1
? (L,R,F,B) out of bounds.
Zmieniłem więc z Bilinear na UBL. I po zmierzeniu w KiCadzie odpowiednich współrzędnych wrzuciłem do configuration_adv.h :
Kod: Zaznacz cały
#if EITHER(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL)
// Override the mesh area if the automatic (max) area is too large
//#define MESH_MIN_X MESH_INSET
//#define MESH_MIN_Y MESH_INSET
//#define MESH_MAX_X X_BED_SIZE - (MESH_INSET)
//#define MESH_MAX_Y Y_BED_SIZE - (MESH_INSET)
#define MESH_MIN_X 31.16
#define MESH_MIN_Y 241.93
#define MESH_MAX_X 3.2
#define MESH_MAX_Y 207.2
#endif
To dzieję się dokładnie to co jest napisane w dokumentacji Marlina :
Czyli stół jedzie gdzieś w .... i nici z kalibracji
When you do a G28 and then a G29 P1 to automatically build your first mesh, you’ll notice that UBL probes increasingly far from the starting location. (The starting location defaults to the center of the bed.) Other grid leveling systems start in the corner and probe in a zigzag. UBL’s pattern is better for Delta machines, allowing for the center of the Mesh to be populated (and edited) more quickly.
Może ktoś już miał przyjemność ustawiania stołu MK42 w Marlinie 2.0?
Lub wie jak zmusić sprzęt do kalibrowania krzywizny stołu w 9 konkretnych punktach?
Moje pliki konfiguracyjne ;