Пояснение к расширению AI Guard
AI Guard — это расширение Klipper для обнаружения изображений, предустановленное в тестовом образе FLYOS-FAST v1.4.0. Оно периодически считывает кадры с камеры и пытается распознать такие аномалии печати, как «спагетти» и «паутина» (слипание/нити).
AI Guard постоянно получает изображения с камеры и выполняет локальный ИИ-анализ, что значительно увеличивает нагрузку на CPU, память и хранилище. При чрезмерной нагрузке на систему высока вероятность нарушения планировщика Klipper, обрыва связи с MCU или прямого сбоя задания печати.
- Не включайте во время официальной, длительной, неконтролируемой печати или печати важных моделей.
- Используйте только в коротких тестах, которые можно остановить в любой момент, постоянно наблюдая за нагрузкой системы и журналами Klipper.
- ИИ-детекция может давать ложные срабатывания или пропускать ошибки; она не заменяет контроль оператора и не является защитным механизмом безопасности принтера.
Версия и состояние по умолчанию
- Проверено только в тестовом образе FLYOS-FAST v1.4.0.
- В системе предустановлены расширение
fly_ai_guard, файлы моделей и примерfly-ai.cfg. - По умолчанию в
printer.cfgне загружаетсяfly-ai.cfg, поэтому AI Guard по умолчанию не запускается.
Подготовка перед включением
- Сначала убедитесь, что адрес снимка с камеры возвращает корректное изображение.
- Убедитесь, что принтер в данный момент не выполняет задание печати.
- Сделайте резервные копии
printer.cfgиfly-ai.cfg. - Используйте
top, чтобы зафиксировать нагрузку на систему до включения AI Guard, это будет базовым значением для сравнения.
Справочная конфигурация
Пример файла в образе находится по адресу:
/usr/share/printer_data/config/fly-ai.cfg
При использовании GoCam можно ориентироваться на:
[fly_ai_guard]
camera: http://127.0.0.1:8080/snapshot
cpu_affinity: 0,1,2
spaghetti_threshold: 0.5
stringing_threshold: 0.5
interval_time: 10.0
discover_count: 1
print_only: True
pause_on_discover: False
discover_gcode:
M118 AI检测触发
| Параметр | Значение по умолчанию в образе v1.4.0 | Описание |
|---|---|---|
camera | http://127.0.0.1/webcam/?action=snapshot | Адрес снимка с камеры для AI Guard; при использовании GoCam измените на http://127.0.0.1:8080/snapshot |
cpu_affinity | 0,1,2 | Номера ядер CPU, разрешенных для рабочего процесса ИИ |
spaghetti_threshold | 0.5 | Порог уверенности для обнаружения «спагетти» |
stringing_threshold | 0.5 | Порог уверенности для обнаружения «паутины» (нитей) |
interval_time | 10.0 | Интервал между двумя проверками, в секундах |
discover_count | 1 | Сколько последовательных срабатываний требуется для запуска события аномалии |
print_only | True | При значении True детекция выполняется только в состоянии печати |
pause_on_discover | False | Приостанавливать ли печать после достижения количества срабатываний |
discover_gcode | M118 AI检测触发 | G-code, выполняемый при достижении условия срабатывания |
- При первом тестировании оставьте
pause_on_discover: False, чтобы избежать немедленной паузы печати из-за ложного срабатывания. - Не сокращайте сильно
interval_timeдля увеличения скорости реакции: чем чаще проверки, тем выше нагрузка на систему. - Не снижайте пороги детекции и не включайте автоматическую паузу только по результатам одного теста.
Включение расширения
Добавьте в printer.cfg:
[include fly-ai.cfg]
Сохраните и перезапустите Klipper. Во время первого теста не начинайте печать; сначала запустите через SSH:
top
Одновременно просматривайте журнал Klipper:
tail -f /usr/share/printer_data/logs/klippy.log
Если появляется постоянная высокая нагрузка, нарушения планировщика Klipper, потеря связи с MCU, сбои получения кадров с камеры или повторные перезапуски AI worker, немедленно отключите AI Guard.
Отключение расширения
Удалите или закомментируйте в printer.cfg:
[include fly-ai.cfg]
Затем перезапустите Klipper. Изменение только pause_on_discover не отключает ИИ-анализ; чтобы остановить потребление ресурсов, необходимо полностью прекратить загрузку всего блока конфигурации [fly_ai_guard].
Известные ограничения
- Это функция тестовой версии v1.4.0; точность распознавания и долгосрочная стабильность еще не проверены.
- Нагрузка от ИИ-анализа суммируется с нагрузкой от KlipperScreen, камеры, таймлапса, удаленных прокси и других плагинов.
- Отсутствие сигнала камеры, ошибка адреса снимка или таймаут получения изображения по сети влияют на детекцию.
- В текущем примере автоматическая пауза не включена по умолчанию; даже после включения ложные срабатывания могут прерывать нормальную печать.
- При чрезмерной нагрузке на систему могут выйти из строя как сам AI Guard, так и управление печатью.