Raspberry Pi OSにOctoPrintを導入する
概要
Raspberry PiでOctoPrintを使うときはImagerでOctoPiをインストールする方法が主流ですが、CNCフライスの制御も併せてやりたかったのでRaspberry Pi OSに手動でOctoPrintを導入してみました。
実行環境
MCU: Raspberry Pi 3B+
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 12 (bookworm)
Release: 12
Codename: bookworm
参考サイト
よく知らなかったが3Dプリンタは自作や改造ができたりするらしく、ちょうど開催されていた技術書典9で見つけた本を買ってみたところ
OctoPrintなるソフトウェアを使うことでネットワーク経由で印刷をすることができることがわかった。
https://aose.hatenablog.jp/entry/2021/12/08/213836
事前準備
Raspberry Pi OSのインストール方法は省略します。インストールした後にaptのupgradeまで終わらせてある前提で解説を進めます。
OctoPrintのインストール・初期設定
Pythonの環境構築・OctoPrintのインストール
デフォルト環境を汚さないよう、念のため仮想環境にインストールします。
まずはOctoPrint用の仮想環境を作成します。
cd ~
python -m venv OctoPrint
少し待つとユーザーフォルダに「OctoPrint」というフォルダが追加されます。
このフォルダの中にあるpipを使ってOctoPrintをインストールします。
OctoPrint/bin/pip install OctoPrint
インストールが正常に完了したら起動してみます。
OctoPrint/bin/octoprint
起動したらブラウザで「http://[ラズパイのローカルIP]:5000」にアクセスします。
「Loading OctoPrint UI, please wait…」と表示されれば成功です。
初期設定
「Loading OctoPrint UI, please wait…」と表示された状態でしばらく待つと、初期設定ウィザードが表示されます。
設定方法は↓ここのサイトが説明が丁寧でした。
※現時点ではまだカメラに必要な設定が出来ていないので、参考サイト通りにやっても動きません。
自動起動の設定
次にOctoPrintを自動起動するように設定します。
まずは以下のコマンドで設定ファイルを作成します。
sudo nano /etc/systemd/system/octoprint.service
開いたファイルに以下の内容をコピペします。ユーザー名をpiから変更した場合はパスを修正してください。
貼り付けたら「Ctrl+S」で保存、「Ctrl+X」で終了します。
[Unit] Description=The snappy web interface for your 3D printer After=network-online.target Wants=network-online.target [Service] Environment="LC_ALL=C.UTF-8" Environment="LANG=C.UTF-8" Type=simple User=kokubo ExecStart=/home/pi/OctoPrint/bin/octoprint [Install] WantedBy=multi-user.target
設定ファイルをsystemctlに反映させて自動起動を有効化します。
sudo systemctl daemon-reload
sudo systemctl enable octoprint.service
sudo systemctl start octoprint.service
sudo systemctl status octoprint.service
最後のコマンドで設定状況が表示されます。Loadedが「enable」になっており、Activeが「active(running)」になっていれば成功です。ここまで設定すれば3Dプリントが可能になります。
追加の設定
「コントロール」でWebカメラの映像を見れるようにする(作成中)
コントロールのWebカメラの映像はmjpg-streamerを使っているようですが、本家の開発は終了しており最新OSに対応していないので他のアプリを使います。
ディスカッション
コメント一覧
まだ、コメントがありません