ESP32で3DプリンターをIoT化、印刷するたびに稼働データをGoogle スプレッドシートへ自動記録

FabScene(ファブシーン)

3Dプリンターを使っていると「これまで何回印刷したか」「トータルで何時間動かしたか」といった稼働履歴が気になることがある。OrangeTungsten氏が公開した「Fi5 IoT Module」は、印刷が終わるたびに稼働データを自動でGoogle スプレッドシートに記録してくれるESP32ベースの小型デバイスだ。

3Dプリンターの制御ボード「MKS Robin Nano v1.2」には、本来Wi-Fiモジュールを接続するための通信ポートがある。OrangeTungsten氏はこのポートを活用し、ESP32モジュールと接続。さらに、3Dプリンターを動かすソフトウェア「Marlin」に手を加えて、印刷終了時に累計印刷回数、成功回数、稼働時間、フィラメント使用量といったデータをESP32に送る機能を追加した。

ESP32はこのデータを受け取ると、Wi-Fi経由でGoogle スプレッドシートに送信する。クラウド側の仕組みにはGoogle Apps Scriptを使っており、専用サーバーを用意しなくてもGoogleの無料サービスだけでデータの蓄積が可能だ。

ファームウェア改造の手順も公開

OctoPrintのようにRaspberry Piを使う方法もあるが、このプロジェクトの特徴は3Dプリンター内部のソフトウェアを直接改造している点にある。Marlinに新しい命令「M1600」を追加し、この命令が実行されるとデータが外部に送られる。印刷データの最後にM1600を入れておけば、毎回自動で記録される仕組みだ。

GitHubリポジトリには、ファームウェアの改造手順、ESP32用のプログラム、回路図、基板データ、ケースの3Dモデルまで一式公開されている。MKS Robin Nano v1.2を使っている環境であれば、同じ仕組みを再現できる。現状はデータ記録のみだが、将来的には外出先からプリンターを操作するといった拡張も想定した設計となっている。

関連情報

GitHub – Fi5-IoT-Module

fabsceneの更新情報はXで配信中です

この記事の感想・意見をSNSで共有しよう
  • URLをコピーしました!