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

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

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

Настройка функций

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

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

    • В адресной строке браузера введите IP-адрес устройства, например: http://192.168.1.2/
  2. Показ скрытых файлов

    • Fluidd: Снимите галочку с "Фильтровать скрытые файлы и папки"
    • Mainsail: Поставьте галочку "Показывать скрытые файлы"
    Loading...
    Loading...
  3. Редактирование конфигурационного файла

    • Найдите и перейдите в папку .flyos-config
    • Откройте файл sys-config.conf
Loading...
  1. Комментирование конфигурации отключения при сбое питания

    • Найдите параметры shutdown_pin_state и shutdown_pin
    • Добавьте символ # в начало каждой строки, чтобы закомментировать их.
  2. Сохранение и перезагрузка

    • Сохраните измененный конфигурационный файл.
    • Закройте файл и перезагрузите систему.
Loading...

Настройка функции возобновления печати

  1. Редактирование конфигурационного файла plr.cfg

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

    [power_loss_resume]
    power_pin: xxxx
    is_shutdown: True # Выполнять ли операцию выключения. По умолчанию включено.
    paused_recover_z: -2.0 # Перемещение по оси Z при возобновлении печати, если она была приостановлена. По умолчанию не перемещается.
    start_gcode:
    # G-код, выполняемый перед началом возобновления печати.
    # Все параметры, сохраненные до отключения питания, доступны через {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}]
    {% if PLR.bed.target > 0 %}
    M140 S{PLR.bed.target} ; Установка температуры стола
    {% endif %}
    {% if PLR.extruder.target > 50 %}
    M104 S{PLR.extruder.target - 10} ; Ожидание нагрева экструдера до заданной температуры
    {% endif %}
    G91 ; Относительные координаты
    G1 Z2 F100 ; Подъем по оси Z, подготовка к обнулению X, Y
    G90 ; Абсолютные координаты
    G28 X Y ; Обнуление XY
    {% if PLR.bed.target > 0 %}
    M190 S{PLR.bed.target} ; Ожидание нагрева стола до заданной температуры
    {% endif %}
    {% if PLR.extruder.target > 0 %}
    M109 S{PLR.extruder.target} ; Ожидание нагрева экструдера до заданной температуры
    {% endif %}
    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 ; Аварийная остановка
  2. Включение конфигурационного файла

    • Откройте файл printer.cfg и добавьте в самое начало:
    [include plr.cfg]
    • Нажмите "Сохранить и перезагрузить" в правом верхнем углу.

Настройка переопределения калибровки (Homing Override)

Важные замечания
  • При использовании [homing_override] нельзя произвольно устанавливать позиции калибровки в конфигурации.
  • Неправильная настройка может привести к сбою функции возобновления печати.

Описание конфигурации

  • [force_move]: Включает функцию принудительного перемещения, позволяя перемещаться в указанную позицию.
  • [force_move] заменяет функцию 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 %}

Пояснение о подъеме оси Z Эта конфигурация выполняется только если ось Z не откалибрована и не влияет на нормальное использование:

{% if 'z' not in printer.toolhead.homed_axes %}
SET_KINEMATIC_POSITION Z=0
G90
G0 Z5 F600
{% endif %}

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

Шаг 1: Тест имитации сбоя питания

  1. Начните печать любого файла.
  2. Во время печати нажмите кнопку Аварийная остановка, чтобы имитировать сбой питания.
  3. Нажмите Перезагрузка прошивки и дождитесь повторного подключения Klipper.
  4. Проверьте, появится ли всплывающее окно в веб-интерфейсе (если появится, функция работает нормально).
  5. Для проверки надежности функции можно провести тест с реальным отключением питания.

Шаг 2: Тест реального отключения питания

  1. Подготовка к тесту: Убедитесь в состоянии индикатора рядом с хостом (при нормальной работе должен мигать светодиод).
  2. Тест отключения питания: При работающем устройстве отключите питание напрямую.
  3. Проверка индикатора: Убедитесь, что индикатор полностью погас в течение 5 секунд.
    • Погас: Функция отключения при сбое питания работает нормально.
    • Не погас: Автоматическое выключение не сработало, проверьте конфигурацию.
  4. Тест восстановления: Подождите не менее 5 секунд и снова включите питание.
  5. Проверка функции:
    • Появилось всплывающее окно: Функция возобновления печати работает нормально.
    • Нет подсказки: Функция возобновления печати не запустилась, проверьте конфигурацию.

Loading...