홈으로 돌아가기

Qidi Q2의 "snotty nose" 해결책 | Klipper 매크로

이 기사는 Qidi Q2 3D 프린터의 "snotty nose" 문제 해결책을 설명합니다. 베드 캘리브레이션 전에 노즐 청결도를 자동으로 검사하는 Klipper 매크로를 소개합니다. 매크로 통합으로 인쇄 신뢰성을 높이고 시간을 절약하세요.

Qidi Q2에서 "snotty nose" 고치는 법: 자동 노즐 검사
Advertisement 728x90

Qidi Q2 자동 노즐 청결 확인: "코딱지" 문제 해결

Qidi Q2 3D 프린터 사용자들은 종종 "코딱지" 문제를 겪습니다—노즐에 플라스틱 덩어리가 붙어 로드셀이 조기 트리거되는 현상입니다. 이로 인해 베드 캘리브레이션이 실패하고 첫 번째 프린트가 실패합니다. 해결책은 다음과 같습니다: 노즐 청결도를 자동으로 확인하고 필요 시 와이프를 반복하는 Klipper 매크로입니다.

표준 Qidi Q2 노즐 와이프의 한계

Qidi Q2 프린터는 베드 접촉을 감지하기 위해 로드셀을 사용합니다. 프린트 준비 중에 노즐을 퍼지(purge)한 후 140°C로 식히고 브러시로 청소합니다. 하지만 이 낮은 온도에서 고체 플라스틱 덩어리가 노즐에 남아 있을 수 있습니다. 베드 레벨링(G29)이 진행될 때 센서가 너무 일찍 작동해 전체 베드 메쉬가 위로 이동합니다. 그러면 첫 번째 레이어가 공중에 떠서 접착력이 전혀 없습니다.

표준 PRINT_START 매크로는 이 문제를 무시합니다. 노즐을 와이프한 후 Z 틸트를 조정하고 G29를 실행하지만, 더러운 노즐이 캘리브레이션 데이터를 망칩니다. 특히 원격 프린팅에서 문제가 심각합니다. 노즐 상태를 육안으로 확인할 수 없기 때문입니다.

Google AdInline article slot

매크로가 "코딱지"를 어떻게 감지하는가

이 해결책은 베드 메쉬 데이터를 분석합니다. G29 후 모든 메쉬 포인트의 평균 Z 값을 계산합니다. 평균이 설정된 임계값(예: 0.07 mm)을 초과하면 노즐에 플라스틱 덩어리가 있을 가능성이 큽니다. 깨끗한 노즐은 캘리브레이션이 베드 레벨에 노즐을 0으로 맞추기 때문에 평균 Z가 0에 가깝습니다.

작동 원리:

  • 메쉬 프로필(기본 'kamp')을 로드합니다.
  • 모든 Z 좌표의 산술 평균을 계산합니다.
  • 평균 > 임계값이면 다시 와이프하고 재캘리브레이션합니다.
  • 반복 실패 시—프린트를 중단합니다.

임계값은 센서 노이즈와 열팽창 위, 첫 번째 레이어 높이 아래로 설정하세요. 권장: 0.07–0.1 mm.

Google AdInline article slot

Klipper에 단계별 통합

gcode_macro.cfg 파일에 _CHECK_NOZZLE_DIRTY 매크로를 추가하세요:

[gcode_macro _CHECK_NOZZLE_DIRTY]
description: Detects dirty nozzle and auto-retries wipe
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("WARNING: Nozzle dirty (Z-avg: %.3f). Attempting wipe..." % 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("ERROR: Retry wipe failed (Z-avg: %.3f). Aborting." % avg_z) }
            {% endif %}
        {% else %}
            { action_respond_info("CHECK: Nozzle clean (Z-avg: %.3f). Printing OK." % avg_z) }
            SET_GCODE_VARIABLE MACRO=_CHECK_NOZZLE_DIRTY VARIABLE=retry_count VALUE=0
        {% endif %}
    {% else %}
        { action_respond_info("CHECK: Mesh profile %s not found." % profile) }
    {% endif %}

그 후 PRINT_START에서 G29 직후에 매크로 호출을 추가하세요:

G29 ; Bed mesh calibration
_CHECK_NOZZLE_DIRTY PROFILE=kamp HOTEND={hotendtemp}

Klipper 로그에서 노즐 상태를 확인할 수 있습니다. 예시:

Google AdInline article slot
Mesh Bed Leveling Complete
...
WARNING: Nozzle dirty (Z-avg: 0.136). Attempting wipe...

주요 설정 노트

  • 임계값: 0.07 mm부터 시작하세요. 프린터, 센서 허용오차, 필라멘트에 맞게 조정하세요.
  • 베드 캘리브레이션: 매크로는 먼저 베드 캘리브레이션이 필요합니다. 생략하면 평균 Z가 틀립니다.
  • 재시도 제한: 한 번의 재와이프만 허용합니다. 두 번째 실패 시 프린트를 중단합니다.
  • 테스트: 캘리브레이션 중 노즐 아래에 0.1 mm 두께 게이지를 넣어 테스트하세요.

이 매크로는 시간을 절약해줍니다—특히 원격 작업에서—and 프린트 성공률을 높여줍니다.

— Editorial Team

Advertisement 728x90

다음 읽기