Перейти к основному содержанию

Отключение при сбое питания и возобновление печати

Важно знать

1. Концепция функций и процесс

  • Отключение при сбое питания

    • Концепция: При обнаружении аварийного отключения питания система не сохраняет текущее состояние печати и немедленно выполняет безопасное выключение.
    • Процесс восстановления: После восстановления питания устройство автоматически перезагрузится и перейдет в режим ожидания. Предыдущая задача печати прервана, необходимо вручную начать новую печать.
  • Возобновление печати после сбоя питания

    • Концепция: При обнаружении аварийного отключения питания система немедленно сохраняет текущий прогресс печати (например, позицию, высоту слоя), а затем выключается.
    • Процесс восстановления: После восстановления питания обычно требуется подтверждение пользователя, после чего устройство может продолжить незавершенную печать с места прерывания.

2. Основные правила

  • Функции отключения при сбое питания и возобновления печати являются взаимоисключающими и не могут быть включены одновременно.
  • Если включена функция отключения при сбое питания, функция возобновления печати автоматически отключается.

3. Как выбрать

  • Выберите "Отключение при сбое питания": Если вы больше заботитесь о безопасности электропитания или хотите, чтобы устройство автоматически запускалось и переходило в режим ожидания после восстановления питания, без необходимости возобновления прерванной печати, включите эту функцию.
  • Выберите "Возобновление печати после сбоя питания": Если вы часто выполняете длительные и критически важные задачи печати и хотите иметь возможность продолжить печать с точки прерывания после сбоя питания, включите эту функцию.

Настройка

Отключение выключения при отключении питания

Важно знать
  • Необходимо отключить функцию выключения при потере питания, иначе невозможно будет использовать функцию возобновления печати после сбоя питания.
  • В функции возобновления печати после сбоя питания есть возможность автоматического выключения после сохранения прогресса.
  • Убедитесь, что к верхнему компьютеру не подключены другие источники питания, иначе он не включится.
  • Введите IP-адрес устройства в адресной строке браузера, например: http://192.168.6.179

  • Перейдите на страницу конфигурации

    • Откройте IP-адрес устройства в браузере, например: http://192.168.1.2/
    • В fluidd, как показано на левом рисунке ниже, снимите галочку -> Скрывать файлы и папки.
    • В mainsail, как показано на правом рисунке ниже, установите галочку -> Показывать скрытые файлы.
    Loading...
    Loading...
    • Теперь вы увидите папку .flyos-config. Войдите в эту папку, там будет файл sys-config.conf.
    • Файл sys-config.conf является символической ссылкой на файл конфигурации config.txt на съемном диске FlyOS-Conf.
    Loading...
    • Откройте файл sys-config.conf, найдите параметры shutdown_pin_state и shutdown_pin=
    • Добавьте символ # перед этими параметрами
    • Затем сохраните -> закройте файл и перезагрузите устройство
    Loading...

Файл конфигурации plr.cfg

  • На странице конфигурации принтера найдите файл plr.cfg.
  • Очистите его содержимое и вставьте приведенную ниже конфигурацию.
  • Содержимое конфигурационного файла:
  • Если у вас версия C5, используйте следующий код:
[mcu host]   
serial: /tmp/klipper_host_mcu

[power_loss_resume]
power_pin: !host:gpiochip0/gpio260
is_shutdown: True # Выполнять ли операцию выключения, по умолчанию включено
paused_recover_z: -2.0 # Если остановка была в режиме паузы, расстояние перемещения Z при возобновлении печати, по умолчанию не перемещается
start_gcode:
# G-код, выполняемый перед началом возобновления печати
# Все параметры, сохраненные до отключения питания, доступны через {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}]
M140 S{PLR.bed.target} ; Установить температуру стола
M104 S{PLR.extruder.target-10} ; Установить температуру экструдера
M109 S{PLR.extruder.target-10} ; Ожидать нагрева экструдера до заданной температуры
G91 ; Относительные координаты
G1 Z2 F100 ; Поднять Z, подготовиться к обнулению X,Y
G90 ; Абсолютные координаты
G28 X Y ; Обнулить XY
M140 S{PLR.bed.target}; Установить температуру стола
M104 S{PLR.extruder.target} ; Установить температуру экструдера
M190 S{PLR.bed.target}; Ожидать нагрева стола до заданной температуры
M109 S{PLR.extruder.target} ; Ожидать нагрева экструдера до заданной температуры
M83 ; Относительная экструзия
# G1 E0.5 F400 ; Выдавить немного
layer_count: 2 # После печати указанного количества слоев выполнить layer_change_gcode
layer_change_gcode:
# G-код, выполняемый после печати {layer_count} слоев
M118 Восстановление скорости печати
M106 S{PLR.fan_speed} ; Включить вентилятор обдува
M220 S{PLR.move_speed_percent} ; Установить процент запрашиваемой скорости перемещения
M221 S{PLR.extrude_speed_percent} ; Установить процент запрашиваемой скорости экструзии
shutdown_gcode:
# G-код, выполняемый перед выключением
M118 Низкое напряжение питания, выключение
# M112 ; Аварийная остановка
  • После сохранения конфигурационного файла выше

  • Откройте файл printer.cfg и добавьте в самое начало следующее содержимое:


    [include plr.cfg]

  • Нажмите "Сохранить и перезагрузить" в правом верхнем углу.

  • На этом настройка функции возобновления печати после отключения питания в Klipper завершена.

Пояснение к [homing_override]

Внимание
  • Обратите внимание: если используется [homing_override], нельзя произвольно устанавливать позицию возврата в дом в [homing_override]. За сбои при возобновлении печати после отключения питания ответственность не несется.
  • Ниже приведены пояснения по конфигурации [homing_override].
  • Пояснение
    • [force_move]: Включает функцию принудительного перемещения, позволяя перемещаться в указанную позицию.
    • [force_move] заменяет функцию set_position_z в [homing_override]. Если не следовать этой конфигурации, это может привести к сбою при возобновлении печати после отключения питания.
    • Конфигурация [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 %}

  • Пояснение о подъеме
    • Эта конфигурация выполняется только если ось 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 # Установить смещение высоты парковки
  • Вы должны соответствующим образом скорректировать значение параметра paused_recover_z в модуле [power_loss_resume], чтобы оно было противоположным по знаку указанному выше смещению.

Соответствие конфигураций

Переменная макросаПараметр модуля паузы/возобновленияСоответствие
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...