LoginSignup
18
18

More than 3 years have passed since last update.

raspberry pi zero wでOctoPrintを動かしてみた

Posted at

はじめに

GWに格安3Dプリンタ、Ender-3 Proを購入しました。事前の想像以上に綺麗に出力できるので満足しています。ただ、プリンタが結構大きく、稼働時の音がそこそこあり、印刷が数時間に及ぶため普段使わない部屋に設置したところ、

  • 印刷の途中経過がわからない
    • 数時間後に失敗(だいたい一層目が、、、)
      • 仕方ないので印刷開始後、しばらく目視確認。。。
      • →悲しい
  • データの運搬がマイクロSDカード
    • 往復するのが結構面倒
    • 近いうちに紛失する
  • 操作パネルが、それほど使いやすくない

と、どうにかならないかと思案していたら、OctoPrintという3Dプリンタの管理アプリを発見。RaspberryPi用のイメージ(OctoPi)が公開されていて、手持ちのラズパイもあったので、早速試してみました。

  • 「Please note that the Raspberry Pi Zero W is not recommended 」とあるけど、手持ちのZeroで動くか確認
  • カメラモジュールもあるので、遠隔監視と印刷のタイムラプス映像をみて楽しむ

結果、Raspberry Pi Zero Wで目立った問題もなく、結構快適な環境ができました。いか、作業メモです。

アプリケーション

  • OS
os-release
pi@octpizero:~ $ cat /etc/os-release 
PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)"
NAME="Raspbian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
  • OctoPrint: 1.3.11
  • mjpg-streamer

機材

  • 3Dプリンタ:Ender-3 Pro
  • raspberry pi zero w
    • SD:8GB
    • 上記カメラモジュール
  • USBケーブル
    • A - Mini B <- 手持ちを探すのが大変だった。。。
    • A - Micro変換 上記とZeroの接続用
    • A - Micro Zeroの電源用
  • 印刷した、ラズパイのマウンタ

お約束

この記事は、私の環境での結果です。大きく物が壊れることはないと思いますが、お試しの際はご注意を。

インストール

最初にOctoPi(試したバージョンは、0.16.0)を試したのですが、手持ちのカメラモジュールを認識できませんでした。さっさと試したかったので、原因究明はやめて、カメラモジュールの動作実績のあるRaspbian Stretch LiteにOctoPrintをインストールすることにしました。

OSインストールで変更した点

モニタを使う予定はないので、GPUのメモリ割り当てを最小に変更。boot.txtの末尾に gpu_mem=16 を追記。

OctoPrintのインストール

基本的に、公式の手順通りで、動きます。変更したのは、

  • octoprintの起動をsystemdに変更したくらいです。
/etc/systemd/system/octo.service
cat /etc/systemd/system/octo.service 
[Unit]
    Description=OctoPrint service

[Service]
    User=pi
    ExecStart=/home/pi/OctoPrint/venv/bin/octoprint

[Install]
    WantedBy=multi-user.target

初回起動時、Web画面が表示されるまで 結構な時間(10分以上) かかりました。ゆっくり待ちましょう。

初回起動時に、Wizardで初期設定を行います。
画面キャプチャ撮り忘れた。

プリンタ設定

先人の知恵があったので、そのまま流用。

スライサーとの連携

スライサーはCura(3.6.0)を使っています。プラグインを導入すると、スライサーから印刷できるようになるので、設定します。

OctoPrintAPIキー取得

設定アイコン→APIでAPI Keyを取得する。

スクリーンショット 2019-05-23 20.17.50.png

Curaにプラグインを導入する

Marketplace → プラグインから「OctoPrint Connection」を導入。

スクリーンショット 2019-05-23 20.22.02.png

image.png

を押すと、「Connect Octoprint」が追加されているので、rasberry piのIPなどのホスト情報、API Keyを登録。
私の環境では、「Store G-code on the printer SD Card」を有効にすると接続に失敗したので設定を外した。(SDカードの利用をやめたかったので、特に調査もしなかった。。。)

スクリーンショット 2019-05-23 20.25.41.png

すると、スライス処理が終わると、、

スクリーンショット 2019-05-23 11.28.06.png

おお、直接印刷できる。
スクリーンショット 2019-05-23 11.28.26.png

印刷風景もリモートで確認可能。
スクリーンショット 2019-05-23 11.25.15.png

OSの負荷は高いけど、許容範囲かな。印刷の失敗もないし、印刷動画配信も結構滑らかなのでよしとします。
スクリーンショット 2019-05-23 11.30.11.png

印刷後、FFMPEGでゴリゴリエンコードしてタイムラプス動画を生成。今は印刷しないでね、と警告が表示されます。動画を見るにはメニューからダウンロードします。ちなみに、32MBの動画は印刷時間5時間くらいの動画です。

image.png


使ってみて

  • スライサーから直接印刷できるのは便利
    • プレヒートで事前に加熱できるから、スライスする前にプレヒートしておけばすぐ印刷できる
    • 一層目がちゃんと出てなかったら、その場で中止できるのが便利
  • raspberry pi zeroで問題なく動いた(ように見える)。
    • 一週間ほど使いましたが、raspberry pi zeroの性能で印刷が失敗していない(気づいていないだけかも)
    • 印刷時間も、遅くなった気はしない(もともと時間がかかるので、気にならないだけかも)

これから

OctoPrintは結構色々なAPIが公開されているので、

  • 印刷が終わったら携帯に通知
  • Homebridgeと連動してAppleHomeに状態と印刷状況の表示
  • ラズパイに照度センサつけて、夜の印刷している時だけLED照明つける(暗くて確認できないから)

など、やってみたいと思います。

ちょっとした問題点

プリンタの主電源を切っても、ラズパイのUSBから給電されるらしく、プリンタの液晶がつきっぱなしになります。ほぼ、プリンタ本体の操作は行わなくなったのですが、高さ調整はプリンタのメニューから、

  1. ホーム位置に移動
  2. モータ制御解除
  3. 手で調整

を行う必要があるので、モニターは外せない。。。何かいい方法はないだろうか。。

GCode Viewer素敵。。。。
image.png

18
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
18