メインコンテンツにスキップ

AI Guard 拡張機能の説明

AI Guard は、FLYOS-FAST v1.4.0 テスト版イメージにプリインストールされている Klipper 画像検出拡張機能で、定期的にカメラ画像を読み取り、スパゲッティ状の印刷異常やストリング(糸引き)などの印刷異常を識別しようとします。

テスト機能、極めて高い印刷失敗リスク

AI Guard はカメラ画像を継続的に取得し、ローカルで AI 推論を実行するため、CPU、メモリ、ストレージへの負荷が著しく増加します。システム負荷が高くなりすぎると、Klipper のスケジューリング異常、MCU 通信の中断、印刷タスクの直接的な失敗が発生する可能性が非常に高くなります。

  • 本番印刷、長時間印刷、無人印刷、重要モデルの印刷では有効にしないでください。
  • いつでも停止できる短時間のテストでのみ使用し、システム負荷と Klipper ログを継続的に監視してください。
  • AI 検出は誤検知や見逃しが発生する可能性があり、手動監視の代替にはならず、プリンタの安全保護機構としても機能しません。

バージョンとデフォルト状態

  • FLYOS-FAST v1.4.0 テスト版イメージでのみ確認されています。
  • システムには fly_ai_guard 拡張機能、モデルファイル、fly-ai.cfg のサンプルがプリインストールされています。
  • デフォルトの printer.cfg では fly-ai.cfg がロードされないため、AI Guard はデフォルトでは実行されません。

有効化前の準備

  1. まず、カメラのスナップショット URL が正常な画像を返すことを確認します。
  2. プリンタで現在印刷タスクが実行されていないことを確認します。
  3. printer.cfgfly-ai.cfg をバックアップします。
  4. 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 イメージのデフォルト値説明
camerahttp://127.0.0.1/webcam/?action=snapshotAI Guard が読み取るカメラのスナップショット URL。GoCam を使用する場合は http://127.0.0.1:8080/snapshot に変更します
cpu_affinity0,1,2AI ワーカープロセスが使用を許可される CPU コア番号
spaghetti_threshold0.5スパゲッティ検出の信頼度しきい値
stringing_threshold0.5ストリング(糸引き)検出の信頼度しきい値
interval_time10.02 回の検出間の間隔(秒単位)
discover_count1異常イベントをトリガーするまでの連続ヒット数
print_onlyTrueTrue の場合、印刷状態のときのみ検出を実行します
pause_on_discoverFalseトリガー回数に達したときに印刷を一時停止するかどうか
discover_gcodeM118 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 ワーカーの再起動の繰り返しが発生した場合は、直ちに AI Guard を無効にしてください。

拡張機能の無効化

printer.cfg から以下を削除するかコメントアウトします:

[include fly-ai.cfg]

その後、Klipper を再起動します。pause_on_discover を変更するだけでは AI 推論は無効になりません。リソースの使用を停止するには、[fly_ai_guard] 設定セクション全体のロードを停止する必要があります。

既知の制限

  • これは v1.4.0 テスト版の機能であり、認識精度と長期的な安定性はまだ検証されていません。
  • 推論負荷は、KlipperScreen、カメラ、タイムラプス撮影、リモートプロキシ、その他のプラグインと重なります。
  • カメラの信号なし、スナップショット URL の誤り、ネットワーク経由の画像取得タイムアウトは検出に影響を与えます。
  • 現在のサンプルでは自動一時停止はデフォルトで有効になっていません。有効にした場合でも、誤検知により通常の印刷が中断される可能性があります。
  • システム負荷が高すぎる場合、AI Guard 自体と印刷制御の両方が機能しなくなる可能性があります。
Loading...