środa, 16 lipca 2014

Drugie podejście do poziomowania stołu z użyciem programu Gcode


Parę miesięcy temu pisałem o kalibracji stołu w drukarce 3D i o tym, jak ten proces usprawnić z wykorzystaniem prostego programu w G-codzie. Program ten sterował drukarką w taki sposób, że ekstruder zatrzymywał się na 30 sekund w poszczególnych rogach stołu w pozycji Z=0 umożliwiając dostosowanie odległości między stołem a dyszą we wszystkich tych punktach. Niedawno trafiłem na bardzo użyteczny kod "M0" - oczekiwanie na wciśnięcie przycisku na panelu drukarki. Wykorzystałem go m.in. do usprawienia procesu kalibracji. Nowy program do poziomowania stołu można pobrać z GitHuba.

Eksperymentując nieco z G-codem zawsze brakowało mi poleceń umożliwiających jakąś interakcję z użytkownikiem. Z ciekawych kodów znalazłem następujące:


M0: Stop (wait)

Składnia: M0

Polecenie zatrzymuje przetwarzanie G-code'u z wyświetleniem "waiting for user" na panelu drukarki, aż do momentu kiedy użytkownik wciśnie przycisk pokrętła. Niestety oprogramowanie nadmiarowo obsługuje to zdarzenie wchodząc dodatkowo w menu - co tak naprawdę jest bardziej denerwujące niż szkodliwe.


M300: Play beep sound

Składnia: M300 S<frequency Hz> P<duration ms>
Przykład: M300 S300 P1000

Kod niestety nie działa w drukarce Prime XT, mimo że jest ona wyposażona w buzzer na panelu. A szkoda, bo razem z M0 mógłby się bardzo przydać w sytuacjach kiedy trzeba zawołać użykownika. Dobrym przykładem takiej sytuacji jest konieczność zmiany koloru filamentu pomiędzy warstwami. Tak czy owak - sam kod M0 bardzo się w takiej sytuacji przydaje.


M117 in Marlin: Display Message

Składnia: M117 <message>
Przykład: M117 Hello World

Problem z tym kodem jest taki, że nie za dobrze działa w połączeniu z M0. Zdaje się, że kiedy tylko M0 zostanie zassane do buforu drukarki, aktualnie wyświetlany napis jest zamieniany na "waiting for user". Tak więc, trudno byłoby użyć tych 2 kodów razem zatrzymując drukarkę z komunikatem "zmień filament".

Brak komentarzy:

Prześlij komentarz