へっぽこ、ミニマル、DIY

UbuntuでCNCルーターを動かす

footfoot - 2019-10-14
UbuntuでCNCルーターを動かす
今までミニPCのWindows10でCNCルーターを動かしてましたが、持ち運びたかったのでノートPCに入れたUbuntuでも動かせるようにしてみました。
  • CNCルーター : SainSmart Genmitsu CNC 3018-Pro (GRBL 1.1f)

ノートPCのUbuntuは問題なく動作したのであとはCNCのコントローラーアプリが動けば使えます。

GRBLコントローラーは軽いCandle1.1.7 (Linux)が使いたかったのでノートPCには32bitUbuntu16.04をインストールしました。Candleは64bitだと動きません。18.04は32bitのISOは配布してないので16.04しかないのですね。ただアップグレードはできるみたいなので18.04にするのもいいかも。

逆にbCNCは64bitじゃないとエラーでインストールできませんでした。どっちも使えるようにしたかったけどままなりませんなぁ。

USBシリアルポートのパーミッションを変更

Ubuntuで使う注意点はUSBシリアルポートのパーミッション。Candle1.1.7を起動してCNCの基板とPCにUSBを繋いでみると、Candleの右下にSerial port error 2: Permission denied candleと表示されてシリアルポートのパーミッションのエラーが出ます。パーミッションを変更しないとシリアル通信できないようです。

USBのポート名はCandleのsettingでわかるので、このコマンドでパーミッションを666(読み書き可)に変更したら正常に動きました。ttyUSB0はそれぞれ違うと思います。

$ sudo chmod 666 /dev/ttyUSB0

だたこれだとUSBを抜き差しするたびにこのコマンドを打たないといけないので面倒。

自動にならんかなとググったら見つかりました。USBシリアル接続時に自動で書込権限を付与する(ubuntu,/dev/ttyACM0)

まずこのファイルを開きます(エディターはgeditに変更)。

$ sudo gedit /lib/udev/rules.d/50-udev-default.rules

で26行目の最後に, MODE="0666"と追加して保存。

KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout", MODE="0666"

これでUSBを挿せば自動でStatusがIdleになってCNCが動く状態にできました。

ちなみに..

Ubuntu16.04はアプリを管理するソフトウェアがくそすぎて使い物になりません。いつまでも読み込みが終わらないしエラー連発。なので前からあるソフトウェアセンターをインストールしました。

$ sudo apt-get install software-center

それとUbuntuにはCH340のドライバーはカーネルに入ってるのでインストールする必要はなかったです。

ってな感じでUbutnuでもCNCを動かせる環境ができました。

コメント