Grbl を使うのはいいとして、Grbl をコントロールして G-code を送りこむプログラムと、そもそも G-code を生成するプログラムなどが必要になってくる。
最初は Using-Grbl にある通り Universal G-code Sender を使ってみたのだけど、最低限の機能はあるんだけど、いまいち自分の要求が満たせなかった。このページの他のも見てみたけど、実装が微妙だったりしたので、結局自分で書いた。
GrblServer
https://github.com/cho45/GrblServer
そもそもやりたいこととして
- 無線でジョギング(手動でXYZを動かす)
- スマフォとか
- 複数の端末で同時に表示を行いたい
- 箱の近くのRaspiと、ネットワーク上の別のPCとか
で、これらを実現するため
- シリアルポートで Grbl を通信しつつ WebSocket を喋るサーバ
- そのサーバと通信して制御するHTMLのビュー
を作った。前者は nodejs、後者は Polymer を使って実装している。
実際の使用
Grbl のサーバはネットワークに繋げた Raspberry Pi で動かしている。WebSocket は same-origin ポリシーとかがないので、LAN 内なら接続を許可するようなコードにしてある (つもり)
サーバさえ立っていれば、LAN 内のどの端末でも Grbl を制御できるので、PC 上で G-code を作ったやつを実行させたり、スマフォで開いてXYZを手動で動かして原点を出したりとできる。自分的には現時点でそこそこ満足いく構成になっている。
G-code 生成ソフト (CAMソフト)
別のエントリを書く