본문으로 건너뛰기

정전 시 자동 종료 및 정전 후 재개 인쇄

주의사항

1. 기능 개념 및 절차

  • 정전 시 자동 종료

    • 개념: 비정상적인 정전이 감지되면, 시스템은 현재 인쇄 상태를 저장하지 않고 즉시 안전 종료를 실행합니다.
    • 복구 절차: 전력이 복구된 후, 장치는 자동으로 재시작되어 대기 상태가 됩니다. 이전 인쇄 작업은 중단되었으므로, 새로운 인쇄를 수동으로 시작해야 합니다.
  • 정전 후 재개 인쇄

    • 개념: 비정상적인 정전이 감지되면, 시스템은 현재 인쇄 진행 상황(예: 위치, 레이어 높이)을 즉시 저장한 후 종료합니다.
    • 복구 절차: 전력이 복구된 후, 일반적으로 사용자 확인이 필요하며, 장치는 정전된 지점부터 중단된 인쇄를 완료할 수 있습니다.

2. 핵심 규칙

  • 정전 시 자동 종료와 정전 후 재개 인쇄는 상호 배타적인 기능으로, 동시에 활성화할 수 없습니다.
  • 정전 시 자동 종료 기능을 활성화하면, 정전 후 재개 인쇄 기능은 자동으로 비활성화됩니다.

3. 선택 방법

  • "정전 시 자동 종료" 선택: 전력 안전에 더 관심이 있거나, 전력 복구 후 장치가 자동으로 시작되어 대기 상태가 되기를 원하며, 중단된 인쇄를 복구할 필요가 없는 경우 이 기능을 활성화하세요.
  • "정전 후 재개 인쇄" 선택: 실패가 허용되지 않는 긴 시간의 인쇄 작업을 자주 수행하며, 정전 후 중단 지점에서 인쇄를 재개하기를 원하는 경우 이 기능을 활성화하세요.

배선

중요 주의사항
  • FLY C8 정전 시 자동 종료/재개 인쇄 기능 주의사항
  • USB를 통해 다른 메인보드에 연결할 때는 반드시 5V 전원선을 분리하거나 격리해야 합니다(예: 케이블 절단 또는 데이터 핀만 포함된 USB 연결 케이블 사용).
  • KPPM 모듈을 반드시 연결해야 하며, 그렇지 않으면 정상적으로 사용할 수 없습니다.
  • 하위 기기와 상위 기기 간의 5V 연결을 분리할 수 없는 경우, 메인보드의 전원이 완전히 차단된 후에만 재시작해야 하며, 그렇지 않으면 정상적으로 부팅되지 않을 수 있습니다.
  • FLY-C8 USB 연결 사용
    Loading...

설정

전원 차단 시 자동 종료 비활성화

주의사항
  • 전원 차단 시 자동 종료 기능을 비활성화해야 합니다. 그렇지 않으면 전원 복구 후 인쇄 재개 기능을 사용할 수 없습니다.
  • 전원 복구 후 인쇄 재개 기능에는 진행 상황 저장 후 자동 종료 기능이 포함되어 있습니다.
  • 상위 기기에 다른 전원 공급이 연결되지 않도록 하십시오. 그렇지 않으면 부팅이 불가능할 수 있습니다.
  • 브라우저 주소창에 장치의 IP 주소를 입력하여 접속합니다. 예: http://192.168.6.179

  • 설정 페이지로 이동

    • 브라우저에서 장치 IP 주소를 엽니다. 예: http://192.168.1.2/
    • fluidd에서는 아래 왼쪽 그림과 같이 체크 해제 -> 숨겨진 파일 및 폴더 필터링을 선택합니다.
    • mainsail에서는 아래 오른쪽 그림과 같이 체크 -> 숨겨진 파일 표시를 선택합니다.
    Loading...
    Loading...
    • 이제 .flyos-config 폴더가 보입니다. 이 폴더로 들어가면 sys-config.conf 파일이 있습니다.
    • sys-config.conf 파일은 이동식 디스크 FlyOS-Conf에 있는 설정 파일 config.txt의 심볼릭 링크입니다.
    Loading...
    • sys-config.conf 파일을 열고 shutdown_pin_stateshutdown_pin= 설정을 찾습니다.
    • 이 두 설정 앞에 #을 추가합니다.
    • 그런 다음 저장 -> 닫기를 선택하고 재시작합니다.
    Loading...

plr.cfg 구성 파일

  • 프린터 구성 페이지에서 plr.cfg 파일을 찾습니다.
  • 파일 내용을 비운 후, 아래 구성을 붙여넣습니다.
  • 구성 파일 내용은 다음과 같습니다:
[mcu host]
serial: /tmp/klipper_host_mcu

[power_loss_resume]
power_pin: host:gpiochip1/gpio21
is_shutdown: True # 종료 작업 실행 여부, 기본값은 활성화
paused_recover_z: -2.0 # 정지 시 일시 중지된 상태라면, 재개 시 Z 이동 거리, 기본값은 이동 없음
start_gcode:
# 재개 전 실행할 gcode
# 전원 손실 전 저장된 모든 매개변수는 {PLR}를 통해 가져올 수 있음
# M118 {PLR}을 사용하여 사용 가능한 모든 매개변수 출력 가능
# M118 {PLR}
M118 재개 시작: {PLR.print_stats.filename}
M118 중단 위치: X:[{PLR.POS_X}] Y:[{PLR.POS_Y}] Z:[{PLR.POS_Z}] E:[{PLR.POS_E}]
# 모든 히터 온도 복원
{% for name, heater in PLR.heaters.items() %}
{% if heater.target > 0 %}
M118 히터[{heater.name}] 설정 목표 온도: {heater.target}
SET_HEATER_TEMPERATURE HEATER="{heater.name}" TARGET={heater.target}
{% endif %}
{% endfor %}
# 압출 온도 대기
{% if PLR.toolhead.extruder in PLR.heaters and PLR.heaters[PLR.toolhead.extruder].target > 0 %}
{% set extruder = PLR.heaters[PLR.toolhead.extruder] %}
M118 [{extruder.name}] 목표 온도 도달 대기: {extruder.target}
TEMPERATURE_WAIT SENSOR="{extruder.name}" MINIMUM={extruder.target-5} MAXIMUM={extruder.target+5}
{% endif %}
G91 ; 상대 좌표
G1 Z2 F100 ; Z 상승, X,Y 원점 복귀 준비
G90 ; 절대 좌표
G28 X Y ; XY 원점 복귀
M83 ; 상대 압출
# G1 E0.5 F400 ; 약간 압출
layer_count: 2 # 지정된 레이어 수 재개 후 layer_change_gcode 실행
layer_change_gcode:
# {layer_count} 레이어 재개 후 실행할 gcode
M118 인쇄 속도 복원
M106 S{PLR.fan_speed} ; 파트 쿨링 팬 켜기
M220 S{PLR.move_speed_percent} ; 요청 속도 비율 설정
M221 S{PLR.extrude_speed_percent} ; 요청 압출 속도 비율 설정
shutdown_gcode:
# 종료 전 실행할 gcode
M118 전원 전압 낮음, 종료
# M112 ; 긴급 정지
  • 위 구성 파일을 저장한 후

  • printer.cfg 파일을 열고, 파일 맨 앞에 다음 내용을 추가합니다:


    [include plr.cfg]

  • 오른쪽 상단의 저장 후 재시작을 클릭합니다.

  • 이제 Klipper 전원 손실 후 재개 기능이 구성 완료되었습니다.

[homing_override]에 대한 설명

주의
  • [homing_override]를 사용하는 경우, [homing_override] 내에서 홈 위치를 임의로 설정해서는 안 됩니다. 이로 인한 전원 복구 후 재개 실패에 대해서는 책임지지 않습니다.
  • 아래에 [homing_override] 설정 설명이 있습니다.
  • 설명
    • [force_move]: 강제 이동 기능을 활성화하여 지정된 위치로 강제 이동할 수 있도록 합니다.
    • [force_move][homing_override]set_position_z 기능을 대체합니다. 이 구성을 따르지 않으면 전원 복구 후 재개가 실패할 수 있습니다.
    • 아래의 [homing_override] 구성은 전원 복구 후 재개 시 Z축을 올바르게 홈으로 되돌리기 위한 것입니다.
[force_move]
enable_force_move: true


[homing_override]
axes: z
gcode:
{% set max_x = printer.configfile.config["stepper_x"]["position_max"]|float %}
{% set max_y = printer.configfile.config["stepper_y"]["position_max"]|float %}
{% if 'z' not in printer.toolhead.homed_axes %}
SET_KINEMATIC_POSITION Z=0
G90
G0 Z5 F600
{% endif %}
{% set home_all = 'X' not in params and 'Y' not in params and 'Z' not in params %}

{% if home_all or 'X' in params %}
G28 X
{% endif %}

{% if home_all or 'Y' in params %}
G28 Y
{% endif %}

{% if home_all or 'Z' in params %}
G0 X{max_x / 2} Y{max_y / 2} F3600
G28 Z
G1 Z10 F2000
{% endif %}

  • 리프트(Lift)에 대한 설명
    • 이 구성은 Z축이 홈 위치에 있지 않은 경우에만 실행되는 동작입니다. 이 구성은 정상적인 사용에는 영향을 미치지 않습니다.
      {% if 'z' not in printer.toolhead.homed_axes %}
      SET_KINEMATIC_POSITION Z=0
      G90
      G0 Z5 F600
      {% endif %}

[gcode_macro _CLIENT_VARIABLE] 구성에 대한 설명

  • 구성에 [gcode_macro _CLIENT_VARIABLE] 매크로가 포함되어 있고 다음 변수가 설정된 경우:
  • 참조
[gcode_macro _CLIENT_VARIABLE]
variable_use_custom_pos: True # 사용자 정의 위치 활성화
variable_custom_park_dz: 5 # 사용자 정의 파킹 높이 오프셋 설정
  • [power_loss_resume] 모듈의 paused_recover_z 매개변수 값을 위 오프셋 값과 부호가 반대가 되도록 조정해야 합니다.

구성 대응 관계

매크로 변수일시 정지/재개 모듈 매개변수대응 관계
variable_custom_park_dz: 5paused_recover_z: -5부호 반대, 값 동일
variable_custom_park_dz: -3paused_recover_z: 3부호 반대, 값 동일

구성 예시

[gcode_macro _CLIENT_VARIABLE]
variable_use_custom_pos: True
variable_custom_park_dz: 5

[power_loss_resume]
paused_recover_z: -5

중요: 이 대응 관계를 유지하지 않으면 전원 복구 후 재개 또는 일시 정지 복구 시 Z축 높이 계산이 잘못되어 출력에 영향을 미칠 수 있습니다.

테스트

첫 번째 테스트: 긴급 정지를 통한 전원 차단 시뮬레이션

  1. 아무 파일이나 인쇄를 시작하고, 인쇄 중에 긴급 정지 버튼을 클릭하여 전원 차단 상황을 시뮬레이션합니다.
  2. 펌웨어 재시작을 다시 클릭하고, Klipper가 재연결되어 정상 상태로 돌아올 때까지 기다립니다.
  3. 웹 인터페이스에 팝업 알림이 나타나는지 관찰합니다. 알림이 있으면 전원 복구 후 재개 기능이 정상 작동하는 것입니다.
  4. 이후 실제 전원 차단 상황을 추가로 테스트하여 기능의 신뢰성을 검증할 수 있습니다.

두 번째 테스트: 실제 전원 차단 시뮬레이션 및 기능 검증

  1. 테스트 준비: 시스템이 정상적으로 부팅되고 Klipper에 연결된 후, 호스트 컴퓨터 옆의 표시등 상태를 먼저 확인합니다. 일반적으로 시스템이 실행 중일 때 깜박이는 LED가 있으며, 이 표시등이 이후 관찰해야 할 핵심 표시등입니다.
  2. 장치가 정상 작동 중이고 Klipper에 연결된 상태에서 직접 전원을 차단하여 실제 전원 차단 시나리오를 시뮬레이션합니다.
  3. 즉시 호스트 컴퓨터 옆의 표시등이 5초 이내에 완전히 꺼지는지 확인합니다.
    • 꺼진 경우: 전원 차단 시 자동 종료 기능이 정상 작동하는 것이므로 다음 단계를 계속 진행합니다.
    • 꺼지지 않은 경우: 자동 종료 기능이 작동하지 않은 것으로, 일반적으로 관련 구성(예: kppm의 배선 또는 설정)에 오류가 있어 집중적으로 점검하고 문제를 해결해야 합니다.
  4. 최소 5초 이상 기다린 후 전원을 다시 연결하고, Klipper가 자동으로 재연결되어 정상 작동하는지 관찰합니다. (데이터 저장 및 종료에는 3-5초가 필요합니다)
  5. 웹 인터페이스 확인
    • 팝업 알림이 나타난 경우: 전원 복구 후 재개 기능이 성공적으로 활성화되어 정상 작동하는 것입니다.
    • 아무런 알림이 없는 경우: 전원 복구 후 재개 기능이 예상대로 시작되지 않은 것으로, 위 현상을 바탕으로 관련 구성을 체계적으로 점검해야 합니다.

Loading...