본문으로 건너뛰기

공진 보상 및 압력 사전 보상 설정 문제

이 페이지에서는 Input Shaper(공진 보상) 및 Pressure Advance(압력 사전 보상) 관련 설정 오류와 튜닝 이상에 대해 정리합니다. 가속도계 하드웨어 연결 및 통신 오류는 가속도계 테스트 및 보정을 참조하세요.

Input Shaper 활성화 후 진동 무늬 악화 또는 출력물 흐림

증상: [input_shaper] 설정 후 출력물 표면의 진동 무늬(고스트/리플)가 오히려 비활성화 시보다 더 뚜렷해지거나, 디테일이 흐려지고 모서리가 둥글어집니다.

일반적인 원인:

  • shaper_freq_x / shaper_freq_y가 실제 공진 주파수와 크게 차이가 납니다.
  • shaper_type이 현재 기종에 적합하지 않습니다(예: 고강성 기계에 2hump_ei를 사용하여 과도한 평활화 발생).
  • 기계 구조에 느슨함이 있습니다(벨트 과도한 느슨함, 슬라이더 간극, 나사 미체결). 공진 보상으로 기계적 문제를 수정할 수 없습니다.
  • Input Shaper 활성화 후 Pressure Advance를 재보정하지 않아 두 기능이 중첩되어 압출 이상이 발생합니다.

해결 방법:

  1. 먼저 기계적 문제를 배제합니다: 전원 차단 후 벨트 장력, 슬라이더/레일 간극, 프레임 나사 체결 상태를 확인합니다.

  2. 공진 측정을 다시 수행하여 정확한 주파수를 얻습니다:

    TEST_RESONANCES AXIS=X
    TEST_RESONANCES AXIS=Y
  3. 공진 그래프에 따라 적절한 셰이퍼 유형을 선택합니다:

    셰이퍼적용 시나리오주파수 허용 오차평활도 영향
    zv고강성, 저진동 기종±5%가장 낮음
    mzv대부분의 데스크톱 기종(권장 우선)±10%중간
    ei베드 무빙 타입 / 진동이 큰 경우±20%중상
    2hump_ei여러 공진 주파수가 존재하는 경우±45%높음
    3hump_ei복잡한 공진 모드±60%가장 높음
  4. Input Shaper 활성화 후 반드시 Pressure Advance를 재보정합니다:

    SET_PRESSURE_ADVANCE ADVANCE=0
    TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005
  5. 흐림 현상이 심하면 shaper_freq를 약 5–10% 낮추거나 허용 오차가 더 낮은 셰이퍼 유형으로 변경해 봅니다.

관련 설정 참고: Klipper 공진 보상 공식 문서.

TEST_RESONANCES / SHAPER_CALIBRATE 설정 관련 오류

오류 메시지:

  • accel_chip not configured / No accelerometer configured
  • probe_points must be specified 또는 좌표가 출력 범위를 벗어남
  • Invalid accel_chip / 지정한 칩 이름을 찾을 수 없음

일반적인 원인:

  • [resonance_tester]에서 accel_chip을 설정하지 않았거나, [adxl345] / [mpu9250] / [lis2dw] 섹션 이름과 일치하지 않습니다.
  • probe_points 좌표가 [stepper_x] / [stepper_y]에서 정의한 position_max 범위를 벗어납니다.
  • 다중 가속도계 설정 시 accel_chip에 잘못된 대소문자 또는 접두어를 사용했습니다.

해결 방법:

  1. 설정 섹션 이름이 일치하는지 확인합니다:

    [adxl345]
    cs_pin: toolboard:gpio12
    spi_bus:spi0_gpio4_gpio3_gpio2

    [resonance_tester]
    accel_chip: adxl345
    probe_points:
    150, 150, 20
  2. probe_points의 X, Y 좌표는 반드시 출력 범위 내에 있어야 하며, Z 좌표는 테스트 시 노즐과 베드 사이의 높이입니다(20 mm 권장).

  3. 툴보드의 가속도계를 사용하는 경우 accel_chip 이름이 설정 섹션과 완전히 일치해야 합니다(대소문자 구분).

  4. 다중 칩 시나리오에서는 accel_chip_xaccel_chip_y를 지정하여 각각 다른 축에 대응할 수 있습니다.

하드웨어 통신 오류: ACCELEROMETER_QUERY가 시간 초과 또는 ID 오류를 반환하는 경우 가속도계 테스트 및 보정의 일반적인 문제 처리를 참조하세요.

axes_map은 자동으로 판단하지 않음

증상: ACCELEROMETER_QUERY는 정상적으로 데이터를 반환하지만, TEST_RESONANCES / SHAPER_CALIBRATE 실행 후 공진 그래프 방향이 비정상적이거나 X/Y 축 결과가 서로 바뀐 것으로 보이거나, Input Shaper 활성화 후 출력 품질이 개선되지 않습니다.

설명:

Klipper에서 [adxl345], [lis2dw], [mpu9250], [bmi160], [icm20948] 등 가속도계 설정은 동일한 axes_map 해석 로직을 사용합니다. Klipper는 설정의 axes_map만 읽을 뿐, 센서 설치 방향에 따라 좌표 매핑을 자동으로 판단하지 않습니다.

axes_map을 입력하지 않으면 기본값은 다음과 같습니다:

axes_map: x,y,z

일반적인 원인:

  • 툴보드 또는 외장 가속도계의 설치 방향이 프린터의 X/Y/Z 좌표 방향과 일치하지 않습니다.
  • 다른 기종 또는 다른 설치 방향의 설정을 복사하여 x, y, z 순서 또는 부호가 잘못되었습니다.
  • 툴보드, 노즐 하우징 또는 가속도계 설치 위치를 교체한 후 axes_map을 다시 확인하지 않았습니다.

올바른 작성법:

axes_map은 반드시 3개 축을 작성해야 하며, 축 순서 교환 및 부호 반전을 지원합니다:

[adxl345]
axes_map: x,y,z

# 예시: X는 그대로, Y/Z 교환
# axes_map: x,z,y

# 예시: X/Y 방향 반전, Z는 그대로
# axes_map: -x,-y,z

확인 방법:

  1. 먼저 가속도계 통신이 정상인지 확인합니다:

    ACCELEROMETER_QUERY
  2. 가속도계 데이터 기록을 시작한 후, 작은 이동으로 X, Y 방향을 각각 테스트합니다:

    ACCELEROMETER_MEASURE
    G91
    G1 X10 F3000
    G1 X-10 F3000
    G1 Y10 F3000
    G1 Y-10 F3000
    G90
    ACCELEROMETER_MEASURE NAME=axes_map_check
  3. /tmp/<칩 유형>-axes_map_check.csv에서 X/Y 이동 시 어떤 데이터 열이 가장 크게 변화하는지 확인합니다. 예를 들어 [adxl345]/tmp/adxl345-axes_map_check.csv를 생성합니다. 이름이 있는 설정 섹션(예: [adxl345 hotend])을 사용하는 경우 파일 이름에 해당 칩 이름이 포함됩니다.

  4. X 방향 이동 시 주 응답이 Y 또는 Z에 나타나면 축 순서를 조정해야 합니다. 응답 방향이 반대이면 해당 축 앞에 -를 추가합니다.

  5. 다중 가속도계 시나리오에서 ACCELEROMETER_MEASURECHIP=<칩 이름>을 추가하여 테스트할 가속도계를 지정할 수 있습니다.

  6. axes_map을 수정한 후 RESTART를 실행하고, 다시 TEST_RESONANCES 또는 SHAPER_CALIBRATE를 실행합니다.

axes_map은 가속도계 데이터가 프린터 좌표에 어떻게 매핑되는지만 영향을 주며, 가속도계 통신 문제를 해결하지는 않습니다. ACCELEROMETER_QUERY 자체에서 오류가 발생하면 먼저 가속도계 통신 또는 배선 문제를 처리하세요.

Failed to configure shaper(s)

오류 메시지: configparser.Error: Failed to configure shaper(s) shaper_x with given parameters, Failed to configure shaper(s) shaper_z with given parameters.

일반적인 원인:

  • shaper_freq_x 또는 shaper_freq_y가 선택한 shaper_type의 사용 가능한 주파수 범위를 벗어났습니다. 예를 들어 mzv는 높은 주파수에서 유효한 해가 없을 수 있습니다.
  • damping_ratio 설정이 부적절하여(너무 작거나 너무 큼) 셰이퍼가 유효한 매개변수를 생성할 수 없습니다.
  • SHAPER_CALIBRATE로 검증되지 않은 매개변수 조합을 수동으로 입력했습니다.

해결 방법:

  1. SHAPER_CALIBRATE를 다시 실행하여 자동으로 권장되는 shaper_typeshaper_freq를 사용합니다.
  2. 수동으로 조정하는 경우 shaper_freq를 낮추거나, 허용 오차가 더 높은 셰이퍼 유형(예: ei 또는 2hump_ei)으로 변경합니다.
  3. damping_ratio가 합리적인 범위(기본 0.1, 일반 범위 0.05–0.2)인지 확인합니다.
  4. 특정 축의 셰이퍼만 비활성화해야 하는 경우 유효하지 않은 값을 입력하는 대신 shaper_freq_x: 0으로 설정합니다.

shaper_freq 과다로 모터 이상음 또는 탈락

증상: Input Shaper 활성화 후 모터에서 고주파 울림음이 발생하고, 출력물에 규칙적인 줄무늬가 나타나거나, 고속 이동 시 탈락(step loss)이 발생합니다.

일반적인 원인:

  • shaper_freq 설정 값이 실제 공진 주파수보다 훨씬 높습니다(예: 실제 40 Hz인데 80 Hz로 입력).
  • 공진 그래프를 잘못 해석하여 노이즈 피크를 공진 주파수로 오인했습니다.
  • max_accel 설정이 너무 높아 모터 토크 용량을 초과합니다. 해결 방법:
  1. SHAPER_CALIBRATE를 다시 실행하여 자동 추천 주파수 및 셰이퍼 유형을 기준으로 삼습니다.

  2. 공진 그래프를 수동으로 해석할 때, 가장 높고 가장 날카로운 피크에 해당하는 주파수를 선택하고, 낮고 넓은 노이즈는 무시합니다.

  3. max_accel을 모터가 실패하지 않는 범위로 낮춥니다(3000부터 시작하여 점진적으로 높이는 것을 권장):

    [printer]
    max_accel: 3000
  4. 모터에서 지속적인 이상 소음이 발생하면 Input Shaper를 임시로 비활성화하여 설정 문제인지 확인합니다:

    SET_INPUT_SHAPER SHAPER_FREQ_X=0 SHAPER_FREQ_Y=0

Pressure Advance 활성화 후 모서리 볼록 또는 소재 부족

현상: pressure_advance를 활성화한 후, 출력물 모서리에 재료가 쌓이거나(볼록) 모서리 앞부분에 소재가 부족하거나 가늘어집니다.

일반적인 원인:

  • PA 값이 너무 작음: 감속 시 노즐 내 잔류 압력이 충분히 보상되지 않음 → 모서리 볼록.
  • PA 값이 너무 큼: 가속 시 과도한 리트랙트 → 모서리 앞 소재 부족, 선이 가늘어짐.
  • 슬라이서에서 Coasting 또는 Extra restart distance를 동시에 활성화하여 PA 보상과 중첩 충돌.
  • 압출기 rotation_distance가 보정되지 않아 기본 압출량이 부정확.

해결 방법:

  1. 슬라이서에서 Coasting, Extra restart distance, 동적 가속도 제어를 비활성화합니다.

  2. 먼저 압출기 rotation_distance를 보정한 후, PA를 보정합니다.

  3. TUNING_TOWER를 사용하여 테스트 타워를 출력합니다:

    SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500
    TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005

    다이렉트 압출기는 FACTOR=.005, 원격 Bowden은 FACTOR=.020을 사용합니다.

  4. 모서리가 가장 선명하고 선이 가장 균일한 층의 높이를 선택하여 PA 값을 계산합니다:

    pressure_advance = START + 높이 × FACTOR

  5. 일반적인 값 범위: 다이렉트 압출 0.02–0.15, Bowden 0.1–1.0. 1.0을 초과해도 개선되지 않으면 문제가 PA에 있지 않음을 의미합니다.

관련 설정 참조: Klipper Pressure Advance 공식 문서.

PA 값이 너무 높아 압출기 탈조(스킵) 발생

현상: 높은 pressure_advance 값(예: >0.2)을 사용한 후, 가속/감속 단계에서 압출기에서 딸깍 소리가 나거나 출력물에 단선이 발생합니다.

일반적인 원인:

  • PA 보상이 가속/감속 시 과도한 추가 압출/리트랙트 동작을 생성하여 압출기 토크를 초과.
  • 가속도 설정이 너무 높아 PA 보상량이 순간적으로 과대해짐.
  • 압출기 전류 부족 또는 필라멘트 미끄러짐.

해결 방법:

  1. max_accel을 낮추어 PA 보상의 순간 압출량을 줄입니다.
  2. PA 값을 적절히 낮추어 모서리 품질과 압출 신뢰성 사이의 균형을 유지합니다.
  3. 압출기 전류 설정(TMC 드라이버 run_current)이 충분한지 확인합니다.
  4. 필라멘트 미끄러짐이 없는지 확인합니다(압출 기어 마모, 스프링 압력 확인).
주의

PA 시스템은 출력 시간과 총 압출량을 변경하지 않으며, 가속/감속 단계에서 압출 동작을 재분배할 뿐입니다. 매우 높은 PA 값은 극도로 큰 순간 압출기 동작량을 유발하며, 이 동작 폭을 제한할 수 있는 설정 항목은 없습니다.

pressure_advance_smooth_time 설정 부적절

현상: 출력 표면에 주기적인 물결 무늬, 압출 속도 불균일, 또는 모서리 전환이 자연스럽지 않음.

일반적인 원인:

  • pressure_advance_smooth_time 설정이 너무 큼(>0.1초), PA 보상 응답이 둔감해짐.
  • 설정이 너무 작음(<0.01초), PA 보상이 너무 과격해져 압출 떨림 발생.
  • 구버전 설정에서 더 이상 사용되지 않는 [pressure_advance] 독립 섹션을 사용.

해결 방법:

  1. 기본값 0.040은 대부분의 시나리오에 적합하며, 일반적으로 수정할 필요가 없습니다.

  2. 설정은 [extruder] 섹션 내에 작성해야 합니다:

    [extruder]
    pressure_advance: 0.05
    pressure_advance_smooth_time: 0.040
  3. 독립된 [pressure_advance] 설정 섹션을 사용하지 마십시오(더 이상 사용되지 않음).

  4. Bowden 긴 배관을 사용하는 경우, 0.060–0.080으로 적절히 늘릴 수 있습니다.

슬라이서 설정과 Klipper 압출 제어 충돌

현상: PA를 구성한 후 출력 품질이 오히려 저하되어, 스트링잉 증가, 모서리 이상 또는 압출 입자 발생.

일반적인 원인:

  • 슬라이서에서 Coasting 기능을 활성화하여 PA 감속 보상과 중첩.
  • Simplify3D의 Extra restart distance로 인해 압출 속도가 급격히 변화.
  • KISSlicer의 PreloadVE가 PA 기능과 중복.
  • 슬라이서의 "동적 가속도 제어" 또는 "Scarf joint"가 테스트를 방해.

해결 방법:

  1. 슬라이서에서 다음 기능을 비활성화합니다:
    • Coasting
    • Extra restart distance
    • PreloadVE (KISSlicer)
    • 동적 가속도 제어 / 동적 압력 제어
    • Scarf joint 이음새 (PA 보정 시)
  2. 정상적인 리트랙트 설정(0.5–1.0mm 권장)과 "리트랙트 시 와이핑"은 유지합니다.
  3. 슬라이서의 "Z-lift on retract"(리트랙트 시 Z축 상승)을 비활성화하고, Klipper 매크로로 제어합니다.

PA 보정 테스트 시, 슬라이싱 속도는 100mm/s, 층 높이는 노즐 직경의 약 75%, 채움 0%, 동적 가속도 제어를 비활성화하여 PA 효과를 충분히 노출시키는 것이 좋습니다.

Klipper 업그레이드 후 공진 보상 관련 설정 변경

현상: Klipper 업그레이드 후 SHAPER_CALIBRATE 동작이 변경되고, 공진 테스트 결과가 이전과 다르거나, 설정 폐기 경고가 발생합니다.

일반적인 원인:

  • Klipper가 [resonance_tester] 기본 매개변수(예: sweeping_period, accel_per_hz)를 업데이트.
  • 구버전 max_accel_to_decelminimum_cruise_ratio로 대체됨.
  • 가속도계 샘플링 로직 또는 필터 알고리즘 업데이트.

해결 방법:

  1. 업그레이드 후 Klipper 설정 변경 기록을 확인하여 공진 보상에 영향을 주는 항목이 있는지 확인합니다.

  2. 이전 테스트 동작을 복원해야 하는 경우, [resonance_tester]에 명시적으로 추가합니다:

    [resonance_tester]
    sweeping_period: 0
    accel_per_hz: 75
  3. 업그레이드 후 이전 주파수 값을 그대로 사용하지 말고 SHAPER_CALIBRATE를 다시 한 번 실행하는 것이 좋습니다.

  4. max_accel_to_decel이 폐기되었다는 오류가 발생하면 다음으로 변경합니다:

    [printer]
    minimum_cruise_ratio: 0.5

설정 마이그레이션: 더 많은 업그레이드 후 설정 마이그레이션 문제는 설정 관련 오류의 관련 섹션을 참조하십시오.

Loading...