# Automatyczna kontrola czystości dyszy w Qidi Q2: rozwiązanie problemu „kapiącego nosa”
Użytkownicy drukarek 3D Qidi Q2 często borykają się z problemem „kapiącego nosa” — kroplą plastiku na dyszy, przez którą czujnik tensometryczny wyzwala się przedwcześnie. Prowadzi to do błędu kalibracji stołu i niepowodzenia pierwszej warstwy. Proponujemy rozwiązanie: makro dla Klipper, które automatycznie sprawdza czystość dyszy i w razie potrzeby powtarza czyszczenie.
Dlaczego standardowe czyszczenie dyszy w Qidi Q2 jest niewystarczające
Drukarka Qidi Q2 jest wyposażona w czujnik tensometryczny, który wykrywa moment styku ze stołem. W procesie przygotowania do druku odbywa się dmuchanie dyszy, schłodzenie do 140°C i czyszczenie szczotką. Jednak przy niskiej temperaturze na dyszy może pozostać twarda kropla plastiku. Podczas kolejnej kalibracji stołu (G29) czujnik wyzwala się wcześniej, co powoduje przesunięcie całej siatki wysokości (bed mesh) w górę. W rezultacie pierwsza warstwa drukowana jest w powietrzu, bez adhezji.
Standardowy makro startowy PRINT_START nie uwzględnia tego problemu. Wykonuje czyszczenie, a następnie kalibrację stołu (Z_TILT_ADJUST i G29), ale jeśli dysza jest zabrudzona, dane kalibracji są nieprawidłowe. Problem jest szczególnie istotny przy zdalnym druku, gdy nie można wizualnie sprawdzić dyszy.
Jak makro wykrywa „kapiący nos”
Rozwiązanie opiera się na analizie danych siatki wysokości stołu (bed mesh). Po wykonaniu G29 makro oblicza średnią wartość Z dla wszystkich punktów siatki. Jeśli średnia przekracza ustalony próg (np. 0,07 mm), wskazuje to na obecność kropli plastiku na dyszy. Przy czystej dyszy średnia Z jest bliska zeru, ponieważ kalibracja ustawia punkt zerowy na poziomie stołu.
Zasada działania:
- Odczytywany jest profil siatki (domyślnie 'kamp').
- Obliczana jest średnia arytmetyczna współrzędnych Z wszystkich punktów.
- Jeśli średnia > próg, uruchamiane jest ponowne czyszczenie i recalibracja.
- W przypadku powtarzającego się błędu — zatrzymanie druku.
Próg dobierany jest tak, aby był wyższy od błędu czujnika i rozszerzalności cieplnej, ale niższy od wysokości pierwszej warstwy. Zalecana wartość: 0,07–0,1 mm.
Krok po kroku: integracja ochrony w Klipper
Dodaj makro _CHECK_NOZZLE_DIRTY do pliku konfiguracyjnego gcode_macro.cfg:
[gcode_macro _CHECK_NOZZLE_DIRTY]
description: Wykrywanie brudnej dyszy i automatyczne powtórzenie czyszczenia
variable_retry_count: 0
gcode:
{% set profile = params.PROFILE|default('kamp') %}
{% set hotendtemp = params.HOTEND|default(250)|int %}
{% if profile in printer.bed_mesh.profiles %}
{% set mesh = printer.bed_mesh.profiles[profile].points %}
{% set total_z = namespace(val=0) %}
{% set count = namespace(val=0) %}
{% for row in mesh %}
{% for z in row %}
{% set total_z.val = total_z.val + z %}
{% set count.val = count.val + 1 %}
{% endfor %}
{% endfor %}
{% if count.val > 0 %}
{% set avg_z = total_z.val / count.val %}
{% endif %}
{% if avg_z > 0.07 %}
{% if retry_count < 1 %}
{ action_respond_info("UWAGA: Dysza brudna (Z-avg: %.3f). Próba czyszczenia..." % avg_z) }
SET_GCODE_VARIABLE MACRO=_CHECK_NOZZLE_DIRTY VARIABLE=retry_count VALUE=1
CLEAR_NOZZLE HOTEND={hotendtemp}
G28 Z
G29
{% else %}
SET_GCODE_VARIABLE MACRO=_CHECK_NOZZLE_DIRTY VARIABLE=retry_count VALUE=0
{ action_raise_error("BŁĄD: Ponowne czyszczenie nie pomogło (Z-avg: %.3f). Zatrzymanie." % avg_z) }
{% endif %}
{% else %}
{ action_respond_info("SPRAWDZENIE: Dysza czysta (Z-avg: %.3f). Druk dozwolony." % avg_z) }
SET_GCODE_VARIABLE MACRO=_CHECK_NOZZLE_DIRTY VARIABLE=retry_count VALUE=0
{% endif %}
{% else %}
{ action_respond_info("SPRAWDZENIE: Profil siatki %s nie znaleziony." % profile) }
{% endif %}
Następnie wstaw wywołanie makra w PRINT_START zaraz po G29:
G29 ; Kalibracja siatki stołu
_CHECK_NOZZLE_DIRTY PROFILE=kamp HOTEND={hotendtemp}
W logach Klipper zobaczysz komunikaty o stanie dyszy. Na przykład:
Mesh Bed Leveling Complete
...
UWAGA: Dysza brudna (Z-avg: 0.136). Próba czyszczenia...
Ważne wskazówki: kluczowe aspekty konfiguracji
- Wartość progowa: Zacznij od 0,07 mm. Dostosuj do swojej drukarki, biorąc pod uwagę błąd czujnika i typ filamentu.
- Kalibracja stołu: Makro wymaga wstępnej kalibracji stołu. Bez niej średnia Z może być nieprawidłowa.
- Ograniczenie prób: Makro pozwala na jedno ponowne czyszczenie. Przy powtarzającym się błędzie druk jest zatrzymywany.
- Testowanie: Aby sprawdzić działanie, podłóż pod dyszę szczelinomierz o grubości 0,1 mm podczas kalibracji.
To makro oszczędza czas, szczególnie przy zdalnym sterowaniu drukarką, i zwiększa niezawodność druku.
— Editorial Team
Brak komentarzy.