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

Выключение питания при отключении и продолжение печати после отключения

Важная информация
  • Функции выключения питания при отключении и продолжения печати после отключения конфликтуют и не могут быть включены одновременно
  • Если включена только функция выключения питания при отключении, функция продолжения печати после отключения будет недоступна
  • Для корректной работы функции продолжения печати после отключения необходимо правильно настроить и поддерживать соединение с 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:
    # 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}]
    {% 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 ; Обнуление X Y
    {% 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:
    # Gcode, выполняемый после возобновления печати {layer_count} слоев
    M118 Восстановление скорости печати
    M106 S{PLR.fan_speed} ; Включить вентилятор обдува
    M220 S{PLR.move_speed_percent} ; Установка процента скорости перемещения
    M221 S{PLR.extrude_speed_percent} ; Установка процента скорости экструзии
    shutdown_gcode:
    # Gcode, выполняемый перед выключением
    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...