ラズパイで3Dプリンター遠隔操作「OctoPrint」「Klipper」とは、品質向上など出来ること
公開日:
:
周辺機器 3Dプリンター, Ender, Ender-3 S1 Pro, 製品レビュー
この記事にはアフィリエイト広告・広告が含まれています。
3Dプリンターの制御をラズパイが行うことで印刷データのWiFi転送から印刷速度や造形品質の向上まで実現できるというファームウェア「Klipper」があり、それを調べるほど早く導入したくなった。
この「Klipper」はフリーソフトウェアとして公開されていて、オープンソースとしてgithubでコードも公開されている。
「OctoPrint」「Klipper」とは、出来ること。
3Dプリンターについて全く知識のない状態だが、Ender-3シリーズは「marlin」という制御ファームウェアで動作しているようだ。
この「marlin」は古くから存在し、Linux界隈でいう枯れたソフトウェアなので安定しているため消費者向け製品に採用されているのだろう。
その「marlin」と同じファームウェアという立場ながら全く異なるアプローチで印刷速度と造形品質を向上させたとして評価されているのが2016年よりKevin O Connor氏によってプロジェクトが開始された「Klipper」。
ここでシンプルに「Klipper」をEnder-3 S1 Proへ上書きインストールしてしまえばよいのではとも思ったが、次のような理由でRaspberry Pi が必要という。
- 処理性能が高い
- Octoprintと連携しやすく拡張性が必要
- ボード自体に拡張性がある
ここで「Klipper」(+Raspberry Pi )で出来ることを調べたので箇条書きにしていく。
- 正確なステッピングモーターの動きを計算
- モーターの動きも細かく計算して印刷プロセスを大幅に改善
- 圧力計算機能によりノズル内のフィラメント圧力を予測、にじみ減少と糸引きを最小限に抑える
- Octoprint連携により複数台の3Dプリンターを制御
なるほど、1つ1つが結構な破壊力を持っている。
Ender-3に限らず3Dプリンターの仕様表にある最大速度で印刷すると糸引きなどのトラブルが報告されているが、その問題を抑えることで印刷速度が向上するという。
さらに複数台の3Dプリンターを管理出来るため、何度かみかけた個人の副業で印刷しているユーザーは恐らく導入しているだろう。
複数の3Dプリンターをトリプルディスプレイで監視、まるで一人で工場を動かしている工場長みたいだ。
これは導入したい。
ただ「Raspberry Pi 」の導入が大変という声もあり、それを金銭的な負担で解決できる製品が「Klipper」を搭載した「Creality Sonic Pad」という公式オプション。
「Creality Sonic Pad」という選択肢
Creality社がオプション扱いで「Sonic Pad」を販売している以上、Ender-3シリーズへの組み込みやファームウェア提供は「技術的に可能だが行わない」ということかもしれない。
もちろん安定している現行のファームウェアを廃止するのも勇気がいるのでオプションという立ち位置が正解なのだろう。
もしCreality社がEnderシリーズに標準搭載する時が来るとしたら、他社が差別化で「Klipper」を搭載して従来の「marlin」と切り替えられるようにするといった革新を起こす必要がありそうだ。
上図はAmazon.co.jpの販売ページに掲載されている画像で、手持ちのEnder-3 S1 Proにも対応しているとあった。
記事投稿時点の販売価格は26,900円(レビュー33件の詳細はAmazonへ)で、この販売ページを見れば「Klipperで出来ること」がわかりやすく説明されている。
上図の通りパフォーマンスの向上、印刷の高速化、他社の3Dプリンターにも対応するといった強みが並んでいる。
マクロはCreality社の独自仕様というわけではなくKlipperが持つ機能で、海外フォーラムを見ると「marlin」で使われている一般的なコードが「Klipper」で対応していない時などにマクロを使っているようだ。
ただAmazonのレビューを見ると技適を取得していないという。
Creality代理店の1社である株式会社サンステラは公式Twitterアカウントで2022年11月30日、技適取得がないことを理由に「Creality Sonic Pad」の販売中止を発表(Twitterへ)している。
こういった経緯もあり技適取得済みのラズパイが支持されているのだろう。
「OctoPrint」のこと。
これまでの話で「Klipper」が3Dプリンター業界で古くからある安定志向のファームウェア「marlin」を上回る機能を備え、それを実現するスペックを持つのがラズパイだということがわかった。
ここからは「OctoPrint」の話。
OctoPrint.orgという公式サイト(OctoPrintへ)を訪問すると印象的な緑色のオクトパスが出迎えてくれる。
同スクリプトのコンセプトは「3Dプリンター用の素早いWebインターフェイス」で次の特徴を掲げていた。
- 完全なリモート制御と監視
- 互換性と拡張性
- 100%オープンソース
Affero General Public License (AGPL) に基づくオープンソースでコードを開示、完全無料で利用できる。
特に支持されているのはウェブ管理画面の見やすさとプラグインによる拡張性の高さのようだ。
次にOctoPrintの支援企業としてCreality社などのロゴが並んでいた。
こういったボランティア的な技術開発を行い、それが企業に支持・支援されるというのは理想的な仕事の1つだと思う。
完全なリモート制御と監視
ウェブブラウザから直接制御できる項目として次の内容が記されていた。
- ウェブカメラの映像表示
- 印刷ジョブ(印刷の進捗管理)を表示
- 印刷上部の開始、停止、一時停止
- GCODEビジュアライザー
- ホットエンドとプリントベッドの温度を監視・調整
- 全ての軸に対してカスタムコントロールできる
Ender-3 S1 Proのあるパネルの情報は全て確認できて、遠隔で操作もできるようだ。
互換性と拡張性
OctoPrintは流通している消費者向け3Dプリンターのほぼ全機種と互換性があり、強力なプラグインシステムで機能を拡張できると説明されている。
- ベッドレベル・ヴィジュアライザーでベッドの水平を視覚化
- Octolapse機能でタイムラプスを作成
- UIテーマ「Themeify」で見た目をカスタマイズ
- ファームウェアアップデーター機能でOctoPrintから3Dプリンターのファームウェアを更新する
- 古いFlashforgeやMakerbotといった特定プリンターのサポート
これらのプラグインは公式リポジトリから簡単にインストール可能で、プラグイン開発をするのも簡単だと説明している。
実用的なプラグイン
例えば「Themeify」をインストールすれば、「Creality Sonic Pad」のような背景をブラックにして商用管理画面のような雰囲気を楽しむということができそうだ。
次にユーザーから支持されているプラグインとしてはGCODEファイルのサムネイルを表示してくれるという「Cura Thumbnails」や「Prusa Slicer Thumbnails」があった。
MacでSTLファイルを操作するときもパーツが多いとイメージを見て確認する必要があったので便利なのがわかる。
プラグイン「MultiCam」はRaspberry Pi単体に複数のカメラを接続時、カメラを簡単に切り替えられるという。
さらに強力だと思ったのが「AstroPrint Cloud」(プラグインページへ)というプラグイン。
3Dプリンターのクラウド管理サービス「AstroPrint」と連携可能で、事前登録した3Dプリンターをクラウド上からリモート管理できるという。
これまではローカルネットワーク内の話だったが、ここで完全なリモート管理が行えるようになった。
それにより、次のようなことを実現できるらしい。
- ブラウザでSTLファイルをスライス(OS問わず、iPhone/iPadから操作可能)
- 外出先から3Dプリンタの操作
- 進行状況を写真撮影して報告
- 印刷完了やエラーの通知
こうなってくると火事になりにくいコンロの上に3Dプリンターを設置して外出、そのまま遠隔操作すれば安全な印刷生活を過ごせそうだ。
その他の機能
プラグインとの境界線が曖昧になってしまうが、他にも次のような機能を利用できるようだ。
- OctoPrint内でSTLファイルを直接スライス
- 3Dプリンターを制御できるユーザーを管理(アカウント機能)
- システムコマンドをメニューに追加して、簡単にシャットダウンや再起動が可能
- 外部コマンドの呼び出しか、カスタムGCODEをプリンターに送信して特定イベントに反応するイベントフックを構成できる
一気に色々と情報が入ってきて混乱してしまうが、Ender-3 S1 Proの小さなモニターで行える以上のことが可能となり、データ転送にSDカードは不要、クラウドサービスと連携すればPC/MACさえ不要で外出先からも管理できるということがわかった。
もちろん印刷品質が良くなり、印刷速度も早くなる。
こうなると「OctoPrint」は必須だろう。
初期費用とセットアップの労力を上回る機能を備えているので、時短やトラブル発生時の映像確認、エラー通知など恩恵は計り知れない。
それでも「Raspberry Pi」とWiFiやカメラの導入は手間がかかりそう。
そこでカメラやWiFiを搭載して販売されているAndroid端末で代用できないのか調べたところ「Octo4a」(OctoPrint for Androidの略)というアプリがあった。
これを導入して使えそうであれば追加レポートをしていきたい。
続き→古いスマホで3Dプリンター遠隔制御、「Octo4a」インストール方法
前回→CrealityブランドのPLAフィラメント購入レビュー、ノギス印刷編
最新記事はタグ「3Dプリンター」へ