3Dプリンタ用サーバ"OctoPrint"をRaspberry Pi 3 Model Bで動かしてみる

Raspberry Pi 3 Model B を買ったので3Dプリンタ用サーバーとして動かしてみます。

今回はOctoPrintを動かしてみようと思います。
Raspberry Pi 3 Model Bへのインストールと3Dプリンタと接続するところまでをやってみます。





前回はRaspberry Pi 3 Model Bを購入し動作の確認をしました。
Raspberry Pi 3を買ったので動作確認をする

今回は本来の目的であるOctoPrintをインストールしてみます。

OctoPrintをRaspberry Pi 3 Model Bで動かしてみる

OctoPrint http://octoprint.org/

OctoPrintは小型コンピュータボードであるRaspberry Piでも動く3Dプリンタの制御ソフトウエアです。3DプリンタとRaspberry PiをUSBケーブルでつないでおけば、ネットワークで3Dプリンタの制御やモニタが可能となります。

Raspberry PiへOctoPrintをインストールする最も簡単な方法はOctoPiを使う事です。

OctoPi https://octopi.octoprint.org/

OctoPiとは、OctoPrintが動くRaspberry Pi用SDカードのイメージを作成するプロジェクトです。OctoPiのイメージを書き込んだSDカードをRaspberry Piに挿せばOSとOctoPrintがすぐに動きます。

それではやってみましょう。

OctoPiのSDカードを作る


OctoPiのページの手順に従いやってみます。

OctoPiをダウンロードします。この記事の執筆時のバージョンは0.13でした。ファイルのサイズは500MBほどです。
ダウンロードが完了したらファイルを展開して中身のディスクイメージファイルを取り出してください。
執筆時は、"2016-03-18-octopi-jessie-lite-0.13.0.img"というファイルでした。

次にこのイメージファイルをSDカードへ書き込みます。書き込みには専用のソフトウエアが必要です。

書き込む方法はこちら
INSTALLING OPERATING SYSTEM IMAGES / raspberrypi.org

私はWindowsなのでWindowsの場合を書いておきます。

書き込むSDカードをパソコンに挿します。
SDカードのフォーマットをした方が動作が確実です。
フォーマットの仕方はこちら
https://www.raspberrypi.org/documentation/installation/sdxc_formatting.md

SD Card Formatter (https://www.sdcard.org/downloads/formatter_4/index.html


Deviceが書き込むSDカードのドライブレターになっているか確認します。私の場合はMドライブでした。
オプション設定を開きます。


論理サイズ調整をONにします。

フォーマットします。

フォーマットが終わったらダウンロードしたイメージを書き込みます。

書き込みに必要なツールを入れます。
Win32DiskImager utility (https://sourceforge.net/projects/win32diskimager/
をダウンロードしインストールします。

Win32DiskImager utilityを管理者として実行します。管理者として実行するにはスタートメニューのアイコンを右クリックして"その他"→"管理者として実行"をクリックします(Windows 10の例)。


イメージファイルを選択します。Deviceが書き込むSDカードのドライブになっているのを確認します。
良ければWriteをクリックします。

書き込みが完了するとイメージから展開されたファイルがSDカードに書き込まれています。
SDカードはまだパソコンに挿しておいてください。

WiFiの設定をする

Rapberry Pi 3 Model BにはWiFiが搭載されています。このWiFiでネットワークへつながるようにアクセスポイントのSSIDとパスワードを設定します。

SDカードに展開されたテキストファイルを編集します。LinuxとWindowsでは改行コードが異なるためメモ帳では編集できません。何かテキストエディタを用意しましょう。私はSakura Editorを使っています。
Sakura Editor (http://sakura-editor.sourceforge.net/

SDカードのルートフォルダにある"octopi-network.txt"を開きます。

### WIFI CONFIGURATION

と書かれた行の下の方に

## WPA/WPA2 secured
#iface wlan0-octopi inet manual
#    wpa-ssid "put SSID here"
#    wpa-psk "put password here"

と書かれた行があります。下3行の"#"を削除します。
"put SSID here"と書かれている場所をあなたが使うWiFiのSSIDに書き換えます。
"put password here"と書かれている場所をあなたが使うWiFiのパスワードに置き換えます。

この行の下の方にも同じような行がありますね。WEPなど少し古い暗号化を使っている場合はそちらを変えます。

保存して終了します。
この設定を間違えるとWiFiにつながらないので注意しましょう。

OctoPiを動かす

それではSDカードをRapberry Piに挿して電源を入れてください。立ち上がりに1分ほどかかるでしょうか。
まずはネット接続の確認をしますのでプリンタはつながなくてもいいです。

ネットワークにつながったかどうかの確認で一番簡単なのはエクスプローラーでネットワークを見る事でしょうか。


"OctoPrint instance on octopi"のアイコンが表示されていれば一安心でしょうか。

それではWEBブラウザでOctoPrintを表示してみます。上のアイコンをダブルクリックすると標準のブラウザで表示されるでしょう。
あるいは
で開くはずです。ルータの機種によっては名前でアクセスできないかもしれません。そのような時はRaspberry Piに割り当てられたIPアドレスを調べてつなぎましょう。

ブラウザはChromeが良いでしょうか。IEではちゃんと動かないです。

Chromeでつなぐとこんな画面が表示されます。


何やら警告画面が出ます。まずは何もクリックしないでください。
ネットワークにプリンタがつながるので、勝手にプリンタを操作されないようにユーザIDを使いましょうと警告している画面です。間違ってクリックすると誰でもいじれる設定になってしまいます。

今はネットにつながってOctoPrintが動いている事がわかれば十分です。

パスワードの変更

デフォルトで設定されているOctoPrintのパスワードを変更します。
そのためにはパソコンからSSHでOctoPiとつながなくてはなりません。
なにそれ?  ・・・と思わない方はちゃちゃっとやっちゃってください。

SSHで他のコンピュータと接続するターミナルソフトをインストールします。
Tera Termが良いですかね。


インストールしたら実行します。
新しい接続画面が出ます。


Hostに"optopi.local"
Serviceは"SSH"
にしてOKを押します。l

セキュリティの警告がでますが Continueで。
その後ユーザー認証画面です。


User nameには "pi"を入れます。
Passphraseには "raspberry"を入れます。
OKを押します。

OctoPiとつながると次のターミナル画面が出ます。


これでパスワードを変える準備ができました。

ターミナル画面で
passwd
とコマンドを入れます。現在のパスと、新しいパスを2回入れればパスワードの変更は終わりです。

まだターミナル画面を閉じないでください。

SDカードの容量をすべて使うようにする

OctoPiのイメージをSDカードに書き込んだ時にパーティションが作成されます。約2GBくらいのパーティションができていました。もっと大きな容量のSDカードを使ったとしてもOctoPiはこの2GBほどでしか動いていません。残りの容量は遊んでしまいます。もったいないのでSDカードの残りの容量を使えるようにします。

ターミナル画面で
sudo raspi-config
とコマンドを入れてください。するとRaspberry PiのOSの設定ツールが動き出します。


この画面ではカーソルキーとTabキーで項目を選びます。
1のExpand Filesystemを選択しenterキーを押します。

するとパーティションが再設定されます。

パーティションリサイズ完了
Finishを選択して終了します。Finishが選べない?Tabを押してみてください。

再起動を促されますので再起動します。

地域設定をする

ついでに地域設定をしておきます。しなくてもいいかもしれませんが。

先ほどの設定ツールをまた起動させます。


5を選びます。
新たにメニューが表示されます。


I2でタイムゾーンを設定しましょう。


Asiaを選んで


Tokyoを選びます。

タイムゾーン以外の地域設定はやっても意味がないでしょう。設定しないと気持ち悪いと思う方はやってみてください。

これでOctoPiの初期設定は完了です。

OctoPrintの画面を見てみる

それではChromeでOctoPrintを表示してみましょう。動作確認で見たWeb画面を表示します。



アクセス制御を有効にしたままで使いましょう。
Usernameに"pi"を、Passwordに先ほど変更したパスワードを入れて"Keep Access Control Enabled"をクリックします。


やっとOctoPrintの画面を見れました。アクセス制御を有効にしているのでこのままではプリンタの制御ができません。ログインする必要があります。

右上にログインボタンがあるので先ほどと同じIDでログインします。
すると制御可能な画面が表示されます。



今回はOctoPrintのアップデートがあるとメッセージが表示されました。アップデートも簡単にできるんですね。してしまいましょう。

パトロン募集のメッセージも表示されます。OctoPrintの開発が続くことを望む方はパトロンになってはどうでしょうか。

3Dプリンタとの接続を確認する

3DプリンタとOctoPrintの接続を確認してみます。USBケーブルをRaspberry Piにつなぎます。
Raspberry Piの電源を入れた後にUSBケーブルをつないだ場合はブラウザをリロードしてください。

ブラウザ画面左側のConnectionにシリアル接続の条件を入れます。



BS01+ではシリアルポートをAUTOにしておくとうまくつながらない時があります。Baudrateは115200にします。ここはお使いのプリンタに合わせてください。

Connectを押します。


Machine StateがOperationalになれば接続成功です。
うまくいかない場合はボーレートの確認やRaspberry Piの電源を入れ直したりしましょう。

画面右側のTerminalをクリックするとプリンタとのシリアル通信のメッセージが表示されます。


まとめ

OctoPiを使うと簡単に3Dプリンタ用のネットワーク環境が作れる事がわかりました。SDカードを変えるだけでいろいろな使い方ができるRaspberry Piは面白いですね。

Raspberry Piがちゃんと動かない時はほとんどUSBの電源ケーブルに問題が生じた時でした。最近のLSIは動作の低電圧化が進んでいるため電源電圧の変動に弱いのです。どうしても安定して動かない時はUSBケーブルを変えてみるのが良いでしょう。

今回はOctoPiを入れて動かし3Dプリンタとつながるところまでです。
基本的にはこれでG-Codeをアップロードして動かすこともできます。
3Dプリンタ用設定やUSBカメラの接続は今後書く予定です。



コメント

最近のコメント

Threaded Recent Comments will be here.