Raspberry PiとOctoPiで3DプリンタをWiFi化してみた〜WEBブラウザから印刷するまで

Raspberry PiとOctoPiで3DプリンタをWiFi化してみた〜WEBブラウザから印刷するまで
Raspberry PiとOctoPiで3DプリンタをWiFi化してみた〜WEBブラウザから印刷するまで

3Dプリンタで印刷するたびにSDカードを抜き差しするのは非常にわずらわしいですよね?3Dプリンタとパソコンは離れているのでUSBケーブルでは届きませんし、どうしたものかと悩んでいたところ、3DプリンタをWiFi化できる方法を発見しました。 それが、Raspberry PiとOctoPiを使った方法です。 この記事では、Raspberry PiにOctoPiというOSを入れて、WEBブラウザでGコードを3Dプリンタへアップロードし、印刷できるようにする方法を解説します。

「OctoPi」OSをインストールすることで、簡単にお持ちの3Dプリンタを無線化できます!ブラウザからGコードをアップロード、印刷の進捗具合を視覚化、カメラで動画撮影してタイムラプス化などが可能です。

OctoPiとは

OctoPiとは、WEBブラウザ経由で3Dプリンタを操作可能にする「OctoPrint」というソフトが使用できるラズパイ用のOSです。

GitHub - guysoft/OctoPi: Scripts to build OctoPi, a Raspberry PI distro for controlling 3D printers over the web OctoPrint.org

OctoPrintでは単に3DプリンタへGコードファイルをアップロードできるだけでなく、温度状況や、Webカメラによる録画やタイムラプス、印刷状況の可視化などさまざまな機能が備わってます。WEBブラウザからアクセスできますので、設定によっては外出先からもアクセス可能になります。

ただし、本記事ではカメラの設定や、外部ネットワークからのアクセス設定は行いません。

用意するもの

はじめに、今回使うものをご紹介します。

ラズパイ

私はRaspberry Pi zero WHを使用しましたが、OctoPiでは推奨されないようです。次のように警告が出てしまいました。

Raspberry Pi zeroは推奨されない
Raspberry Pi zeroは推奨されない

メッセージによれば、Raspberry Pi 3以上か、またはRaspberry Pi zero 2を使うことを推奨されてます。結果的には、Raspberry Pi zero WHでもなんとか動きますが、ヒーターなどを扱う3Dプリンタですので何かあったら大事故になる恐れがあります。Raspberry Pi 4を購入し、それでOctoPiを運用することにしました。

Raspberry Pi 4
Raspberry Pi 4

▼ こちらからRAMが4GBの正規品を購入しました。

MicroSDカード

Raspberry PiのOSは、MicroSDカードへ書き込むことになります。OctoPiには録画機能もありますので、動画を撮る場合は、大きめの容量のMicroSDカードを選びましょう。 ▼ 私はこちらのSDカードを使ってます。

3Dプリンタ

私が使用している3Dプリンタは、こちらのCreality社の「Ender3 V2」です。

Raspberry PiへOctoPiのインストール

ここではOctoPiをRaspberry Piへインストールする手順を解説します。

Raspberry Pi Imagerのダウンロード

まずは、OctoPiをダウンロードし、SDカードにOSイメージを書き込みます。SDカードにOSを書き込むには、「Raspberry Pi Imager」を使うとたいへん便利ですのでそれを使います。

▼ こちらから「Raspberry Pi Imager」をダウンロードしましょう。

Raspberry Pi OS – Raspberry Pi

Raspberry Pi ImagerでSDカードに書き込む

Raspberry Pi Imagerをインストールしたら起動し、「CHOOSE OS」→「Other specific purpose OS」→「Octo Pi」→「OctoPi(stable)」を選択します。

安定版のOctoPiを選択
安定版のOctoPiを選択

次に、SDカードをパソコンに差し込み「CHOOSE STORAGE」でSDカードを選択します。

書き込むSDカードを選択
書き込むSDカードを選択

画面右下のギアボタンから、あらかじめSSHやWiFi情報を設定します。参考として私の設定例をご紹介いたします。

詳細設定
詳細設定

最後に、「WRITE」を選択すれば自動でOctoPiがダウンロードされ、SDカードにOSイメージが書き込まれます。

OctoPiのダウンロードがはじまります
OctoPiのダウンロードがはじまります

OSの書き込みが完了しましたら、Raspberry PiにSDカードを差し込んでください。そして、Raspberry Piと3DプリンタをUSBでつなぎ、Raspberry Piの電源を入れてください。WiFi情報に間違いがなければ、Raspberry Piの起動後に自動でWiFi接続されるはずです。

ブラウザからOctoPrintへアクセス

パソコンのウェブブラウザにhttp://octopi.local/を入力すると、OctoPi化されたRaspberry Piへアクセスできます。 しばらくすると次のようなUIが立ち上がります。

ブラウザからOctoPrintへアクセス
ブラウザからOctoPrintへアクセス

パスワードなどをカスタマイズしていない場合、OctoPiのデフォルト設定値は次のとおりです。

項目
ホスト名octopi
ユーザー名pi
パスワードraspberrypi(or raspberry)

OctoPrintの初期設定

ここではOctoPrintの初期設定を行います。

私は次の通り選択しました。

Restore Backup

はじめてなので、Restore from a backup?はスルーしました。

Access Control

Access Controlでは、ブラウザからアクセスするためのパスワード設定です。SSHとは別のユーザ名とパスワードを設定すると安全です。
Access Control
Access Control

Online Connectivity check

Configure the Connectivity checkでは「Disable Connectivity Check」を選択しました。
Configure the connectivity check
Configure the connectivity check

Anonymous Usage Tracking

Configure Anonymous Usage Trackingでは「Disable Anonymous Usage Tracking」を選択しました。
Configure Anonymous Usage Tracking
Configure Anonymous Usage Tracking

Plugin Blacklist

Configure plugin blacklist processingでは「Enable Plugin Blacklist Processing」を選択しました。
Configure plugin blacklist processing
Configure plugin blacklist processing

Default Printer Profile

Ender3 V2では次の通り設定しました。 お使いのプリンタ名を入力します。

General
General
Print bed & build volume
Print bed & build volume
Axes
Axes
Hotend & extruder
Hotend & extruder

Finish

以上で「Finish」します。「OctoPrint化しても、決してプリンタのそばを離れないでください」と注意が書かれてます。火事などにならないように十分注意しましょう。

OctoPrintの設定完了
OctoPrintの設定完了

さて、これでOctoPrintの準備は整いました。

OctoPrintのインタフェース
OctoPrintのインタフェース

左メニューの「Connection」からプリンタに接続します。しかし「Ender3 V2」では次のような警告が表示されてしまいました。

OctoPrintでEnder3 V2の警告表示
OctoPrintでEnder3 V2の警告表示

このエラーを解決するために次の作業を行いました。

OctoPrintでEnder3 V2の警告表示を解決する

ヘッダーにあるスパナマークから設定メニューを開き、左メニューから「Plugin Manager」を選択します。「Get More」ボタンをおして、「Creality 2x temperature reporting fix」を探しインストールします。

Creality 2x temperature fixのインストール
Creality 2x temperature fixのインストール

一度Raspberry Piを再起動し、「Connection」すれば警告は出ないはずです。

▼ 参考 OctoPrint doesn't show a temperature graph for my Creality printer with stock firmware - FAQ - OctoPrint Community Forum How to install fix for Creality 2x temperature reporting fix - Electronics - OctoPrint Community Forum

OctoPrintで印刷開始

それでは、OctoPrintで印刷開始してみましょう。 左メニューの「Connection」からプリンタに接続します。すると、まるでArduinoのときと同じように、シリアル通信で3DプリンタとRaspberry Piが接続されました。

次に、Gコードに変換しておいたファイルを左メニューの「Files」からアップロードします。下図のプリンタのアイコンを押すと印刷が開始されます。

OctoPrintで印刷開始
OctoPrintで印刷開始

印刷中はヒートベッドやノズルの温度がグラフで表示されます。また、下の動画のように「GCode Viewer」で、ステッピングモータの動きをアニメーションで見ることができます。

OctoPrintで印刷中のGCode Viewer
OctoPrintで印刷中のGCode Viewer

関連記事

 
最後までご覧いただきありがとうございます!

▼ 記事に関するご質問やお仕事のご相談は以下よりお願いいたします。
お問い合わせフォーム

私が使っている3Dプリンター

私はCrealityのEnder3 V2を愛用してます。Ender3はシンプルな構成ゆえに、とても低価格で購入できます。とりあえず最小限の構成で3Dプリントを始めてみて、使っていくうちに必要なものをアップグレードしていく感じで改造を楽しめます^^

3Dプリンタの備品たち

Ender3 V2のアップグレード部品として、現在はこれらの備品を備えてます。

私が使っているフィラメント