grbl1.1+Arduino CNCシールドV3.5+bCNCを使用中。
BluetoothモジュールおよびbCNCのPendant機能でスマホからもワイヤレス操作可能。
その他、電子工作・プログラミング、機械学習などもやっています。
MacとUbuntuを使用。

CNCマシン全般について:
国内レーザー加工機と中国製レーザー加工機の比較
中国製レーザーダイオードについて
CNCミリングマシンとCNCルーターマシンいろいろ
その他:
利用例や付加機能など:
CNCルーター関係:



*CNCマシンの制作記録は2016/04/10〜の投稿に書いてあります。


ラベル G-Code Generator の投稿を表示しています。 すべての投稿を表示
ラベル G-Code Generator の投稿を表示しています。 すべての投稿を表示

2016年8月3日水曜日

CNCマシン:LaserWeb3

ブラウザベースのG Code SenderであるLaserWeb3ができたようです。
ちょっと前までLaserWeb2でしたが、いつのまにかLaserWeb3にバージョンアップしたみたいです。
以前、LaserWeb1と2を試してみたときの内容はこちらへ
追記:
LaserWeb4(アルファ版)もできたようです。
Chrome上で動くようです。
さっそくダウンロード&インストールしてみました。
各OSごとのインストール方法はwikiページにのっているので、やや面倒ですが、それに従えば難しいことはないと思います。どうやらRaspberry Piにもインストールできるようなので便利かもしれません。
dxf、svg、stlなどのフォーマットも読み込めるようです。

関連:
Laserweb3を使用してスタンプ制作(使用例)

2016年5月21日土曜日

InkscapeのMac版ショートカットキー設定/パスに沿った図形の複数配置

Inkscapeのデフォルトだと、Macのショートカットキーとは違うのでそのままだとちょっとやりづらいです。MacでコピーはCommand+cですが、control+cになっています。InkscapeのEdit>Preferences>Interface>Keyboard ShortcutsでAdobe Illustratorに変えられるのですが、それでもcontrol+cになってしまいます。

検索すると、ここに載っていました(Mac OS X固有の問題)。忘れないように書いておこうと思います。

Commandキーを使う場合:
Teminalを開いて、
cd ~
を入力して、/Users/usernameのディレクトリに移動したら、
touch.Xmodmap
を入力すると.Xmodmapという不過視ファイルが出来上がって、
open.Xmodmap
を入力して、それを開く。開いた新しい画面に、
keycode 66=Alt_L
を入力すると、左optionキーがX11でAltキーになるようです。
そして、controlキーとcommandキーを入れ替えるために、
! Switch meta and control
keycode 67 = Meta_L
keycode 63 = Control_L
keycode 71 = Control_R
clear mod2
clear control
add mod2 = Meta_L
add control = Control_L Control_R
これらもまとめてコピペするといいようです。
X11を一旦閉じて、Inkscapeを起動すると、ちゃんとcmmandキーが機能しています。

もうひとつ使いたいのは、option押しながらドラッグするとduplicateしてくれる方法。でもこれはできないみたいです。duplicateはcommand+dを使うしかない。
これで少し使いやすくはなりました。


パスに沿って複数図形を配置する場合:
それから個人的に、これをやりたかったのですが、
まずこんな感じで、大きい円(円をObject to Pathでパスにしたもの)の上に、小さい赤丸をたくさん並べたいというやり方についてです。
きっと方法があるだろうと調べてみると、ひとつは図形(赤丸)をパターンに変換してから配置するというのがあったのだけれども、そうするとパスには戻せなくなるようなので(Gコード化できなくなる)、パス図形をパスに沿って複数配置するという方法でやってみました。
最初に二つの図形を選んでおいて(このとき、配置される図形:赤丸はパスとなる図形:大きい丸よりも上下関係で言えば上にないといけない)、
このGenerate from Path>Scatter...を選ぶと、

多少重なって欲しいので、Space between copies:に-6.0を入れておきます。
Orignal pattern will be:Copiedになっていますが、この他にMovedでも構いません。オリジナル(小さい赤丸)を残しておくか、いっしょに移動させてしまうかの違いです。しかし、もうひとつClonedという選択肢もありますが、これをつかうと生成される図形がパスではなくなってしまうようなので、ダメみたいです。CloneとかPatternはPathにできないようなので、レーザーカットではあまり用いないほうがいいかもしれません。
Copiedを選べば、このようにオリジナルは元の位置に残るようです。
複数配置されたほうはグループ化されて一つになってしまっているので、一旦Ungroupしてバラバラにし、もう一度複数を選んで、Path>Unionをすると、
こんな感じにつながってくれます。これはパスなので、このままレーザー用にGコードを生成できます(Laser Tool Plug-inを使って)。保存先のディレクトリを入力しないとエラーがでます。

こんな感じでレーザー加工パスができあがりました。パスもひとつながりになっています。あとはbCNCで読みこんでレーザー加工。

bCNC上での画面。

2016年5月20日金曜日

CNCマシン:WebベースのCNC制御アプリ(その2)

Laserweb2を試す:
WebベースのCNCマシン制御アプリとして、もうひとつ気になるのが、LaserWeb/Laserweb2。
まずは最新版のLaserWeb2を試してみました。

追記:その後LaserWeb3もリリースされました。
さらに追記:その後LaserWeb4もでました。スタンドアロンのアプリになったようです。

これも前回試したChiliPeppr/grbl同様にSerial Port JSONでシリアル通信するようです。なので、Macの場合なら前回ダウンロードしたSerial Port JSON 1.86(Mac OS X x64)をつかってみます(zipファイルを解凍すると以下)。
MacBookとArduino(CNCマシン)をUSB接続して、上のserial-port-json-serverをダブルクリックして起動。そうすると前回同様Terminalが起動してシリアル通信の準備が整います。
あとは、http://openhardwarecoza.github.io/LaserWeb2/にブラウザでアクセスします。
こんな画面がでてくるので、左上のLoginボタンを押してGoogleアカウントでログインします。
あとは、上部のメニューバーのようなところで、Arduinoのシリアル通信のポートを選び、grbl、115200、Connectを押せばつながるはずです。
右側下のウィンドウにメッセージ「Grbl message: '$' for help」がでれば接続。
右側のConsole:の欄に$$を入力するとセッティング内容が表示されます。
左下のジョグボタンもいちおう動きました。

レーザー刻印加工もできるようなので左上のOpenボタンでjpeg画像を読み込ませて、左下ウィンドウのPrepare Rasterを押してみると、
元画像とちょっとずれてます。バグでしょうか。
3DならSTLフォーマットを読み込めるようなので、
ただ、まだスケール編集などは開発途中のようなので、使えるようになるにはもう少しらしいです。
LaserWeb2のほうは最近できたばっかりのようなので、まだ修正箇所があるような感じです。
名前からしてレーザー加工するならこのWebアプリが使えるようになるといいんですが、今後に期待しましょう。


LaserWeb(バージョン1)のインストール:
それでは、LaserWebのほうはどうかというと。
インストールというか起動の方法がTermnalを使うので難しそうに見えますが、書いてある通りにやってみます(ここに書いてあります)。

nodejs version node-v0.12.7をインストール。
https://nodejs.org/download/release/v0.12.7/に行き、
Macなのでnode-v0.12.7.tar.gzをダウンロードし解凍。
中のREADME.mdを開くとインストール方法が書いてます(このへんからめんどくさそう)。

Unix/Macintosh:

```sh
./configure
make
make install
```

If your python binary is in a non-standard location or has a
non-standard name, run the following instead:

```sh
export PYTHON=/path/to/python
$PYTHON ./configure
make
make install
```
おそらく、Macの場合はApple-Pythonが既に入っているので、下のほうのインストール方法で。
Terminalを開いて、まず
which python
を入力してpythonの場所を確認してみるといいと思います。もし以下のように返ってくれば、
/usr/bin/python
Apple-Pythonを使っていることだと思うので、上記インストール方法(下の方のやり方)で
export PYTHON=/usr/bin/python
と入力。
$PYTHON ./configure
と入力。そして、
make
と入力。おそらく次のmake installは、頭にsudoをつけないとエラーになるので、
sudo make install
と入力(管理者権限パスワード入力要求があるのでパスワードも入れる)。たぶんこれでnode-v0.12.7の方は大丈夫かと(かなりめんどくさい)。
あとはLaserWebのインストール手順に従い、cdを使って適当なディレクトリに移動して(移動しなくでもいいかもしれないけど)、gitクローンをつくるので以下を入力。
git clone https://github.com/openhardwarecoza/LaserWeb.git
クローンができあがるので、
cd LaserWeb
を入力してLaserWeb内に移動。
この段階でArduinoとはUSB接続しておき、
npm install
を入力。そして、
node server.js
も入力。そうするとTerminalの画面上には、
こんな感じの部分が出てくるので、下のほうに書いてある手順、
1. Open Chrome(とりあえずChromeを開いて以下のアドレスを入力する)
2.Go to :
   http://192.168.3.3:8000/(この部分のアドレスはそれぞれ異なるので、書いてあるアドレスをChrome上にコピペしてアクセスする。)
そうするとようやくLaserWebの画面がChrome上に出てきます。

右上のMachineというウィンドウの中にPortを選ぶところがあるので、そこでArduinoのポートを選べば接続されるはずです。以下。
Bluetoothモジュールを使っているので一番上のを選んでますが、普通にArduinoにUSB接続しているなら一番下のになります(これはUNOではなくてDiemillanovaなのでこんなポート名)。
あとは右下のほうのSENDの左隣にGコード入力欄があるので、$Xでロック解除したり、$$で設定内容表示されれば問題ないと思います。ジョグは右側の緑のMACHINE CONTOLをクリックで以下のような操作画面が出てきます。

ためしに、左上RASTERボタンでjpeg画像を読み込んでみました。
こんな感じでラスタ加工するセッティング画面も出てくるので適当に入力します。
多少読み込みや変換作業に時間がかかるようです。

少し待つと作業画面に画像が出てきます。

こんな感じです。こっちもなんとなく画像が一回り小さくなっているようにも見えますが、いちおう使えそうな感じです。3D読み込みはないけれども、DXFやSVGも読み込めるし、ラスタ加工もできるのでレーザーの基本的な作業はこれでも充分できそうです。
ただ、問題はインストールや起動がちょっと面倒。Terminalをあまり使わない人にとっては違和感あります。

関連:

2016年5月18日水曜日

Inkscape Laser Tool Plug-inのエラー

InkscapeのExtensionである「Laser Tool Plug-in」は、レーザー加工するときには便利なのですが毎回最後のGコードでエラーがでます。工程の最後にエラーがでるようなので、作業自体には問題ないのですが、作業終了後毎回ロックがかかってしまいます。
「Laser Tool Plug-in」で簡単なGコード(画像上:20mmの円を描くGコード)を生成すると、以下のような感じ。

M05 S0

G90
G21
G1 F600
G1  X27.6603 Y17.0556
G4 P0 
M03 S500
G4 P0
G1 F400.000000
G2 X24.7314 Y9.9845 I-10. J0.
G2 X17.6603 Y7.0556 I-7.0711 J7.0711
G2 X10.5892 Y9.9845 I-0. J10.
G2 X7.6603 Y17.0556 I7.0711 J7.0711
G2 X10.5892 Y24.1266 I10. J-0.
G2 X17.6603 Y27.0556 I7.0711 J-7.0711
G2 X24.7314 Y24.1266 I-0. J-10.
G2 X27.6603 Y17.0556 I-7.0711 J-7.0711
G1  X27.6603 Y17.0556
G4 P0 
M05 S0
G1 F600
G1 X0 Y0
M18

この最後のM18がたぶんエラーの原因になっているのだと思います。
M18を調べてみると、RepRapのGコードでは、「全てのモーター停止」となっているので、このことなのかもしれません。しかしgrblでは、M18は対応してないようなのでエラーがでるのだと思います。
「プログラム終了」というMコードであれば、M30が一般的のようです。grblでもM0、M2、M30がポーズと終了になっています(このページのNice featuresの欄に書いてあります)。しかしRepRapだとM30は「SDカード上のファイルを削除する」のようです。
おそらくLaser Tool Plug-inはRepRapよりの設定なのかもしれません。

ということで、M18をM30に書き換えてから実行してみたらエラーはでませんでした。
生成されたGコードファイルをTextEditで開いて訂正してもいいし、bCNCなら以下のようにEditorで編集してもいいと思います。

それなら、Laser Tool Plug-inのファイルを開いてプログラムを書き換えればいいのかもしれないと思ってApplication/Inkscape.app/Contents/Resources/share/inkscape/extensions/laser.pyをTextEdit(行数が表示されないのでSublime Text)で開いてみました(Inkscape.appを右クリックでパッケージの内容を表示、もしくはcontrol+クリックでパッケージの内容を表示でContentsフォルダ内を見ることができます)。
そうすると、
laser.pyの91行目にM18がありますね。どうやらfooterとして挿入しているようです。おそらくこのM18をM30に書き換えればgrblでもエラーがでなくなるのではないでしょうか。

さっそくM18を上画像のようにM30に書き換えました。これでlaser.pyを保存し直して、Inkscapeで試してみます。Inkscapeを開いてLaser Tool Plug-inで簡単なGコードを生成してみます。以下。

M05 S0

G90
G21
G1 F600
G1  X58.0571 Y43.5429
G4 P0 
M03 S500
G4 P0
G1 F400.000000
G2 X52.6251 Y30.4288 I-18.546 J0.
G2 X39.5111 Y24.9968 I-13.114 J13.114
G2 X26.3971 Y30.4288 I-0. J18.546
G2 X20.9651 Y43.5429 I13.114 J13.114
G2 X22.3768 Y50.6401 I18.546 J0.
G2 X26.3971 Y56.6569 I17.1343 J-7.0973
G2 X32.4139 Y60.6772 I13.114 J-13.114
G2 X39.5111 Y62.0889 I7.0973 J-17.1343
G2 X46.6084 Y60.6772 I0. J-18.546
G2 X52.6251 Y56.6569 I-7.0973 J-17.1343
G2 X56.6454 Y50.6401 I-13.114 J-13.114
G2 X58.0571 Y43.5429 I-17.1343 J-7.0973
G1  X58.0571 Y43.5429
G4 P0 
M05 S0
G1 F600
G1 X0 Y0
M30

最後がM30になってますね。これでgrblを使っている場合はエラーがでないはずです。これでひとつ問題解決しました。よかった。


それから前にも書きましたが、Laser Tool Plug-inの上から5個目のLaser Power S#は0-256 or 0-10000となっていますが、grblだとデフォルトが0-1000なので、ここも違います。数値入力するので、ここはプログラム自体を書き換える必要はないかと思いますが。

grbl0.9のconfig.hの254行目を見ると、

#define SPINDLE_MAX_RPM 1000.0 // Max spindle RPM. This value is equal to 100% duty cycle on the PWM.
#define SPINDLE_MIN_RPM 0.0    // Min spindle RPM. This value is equal to (1/256) duty cycle on the PWM.

となっているので、スピンドル最高1000(100%)、最低0がデフォルトのようです。

grblの今後の開発予定(Development Path and Future Needs)では、リアルタイムに調整可能なフィードレート、クーラントやスピンドルのオーバーライドなどが挙げられているので、bCNC上にあるオーバーライド機能はまだ使えないということなのかもしれません。
追記:Grbl1.1からはオーバーライド機能に対応しました(こちらのページ中程)。
これはbCNCのControl画面ですが、画像の下のほうにFeed OverrideとSpindleのスライダーがあり、ここでリアルタイムに調整可能にはなっていますが、grblではまだということだと思います。
フィードやスピンドル(PWM)の値は、あらかじめ何回か素材に合わせてテストしてから実行しているので、それほど使うわけでもないのですが、たしかにあったほうが可変的に実験もできるので便利です。
まあオープンソースなので、この辺りは各自でやっていくしかないでしょう。

2016年5月17日火曜日

CNCマシン:SketchUcamについて

3DモデリングならSketchupを使っている人も多いと思います。とても使いやすいソフトだとは思うのですが、個人的にはソリッドモデルばかり使っていたので、あのペラペラな感じに違和感があって、あまり使っていませんでした。
ちょっと調べてみると、ブーリアン演算も簡単にできるようなので、使ってみてもいいかなと思いました。少なくてもBlenderに比べればずっと使いやすいです。
そのままダウンロードするだけだと、あまりプラグインが入っていないようで、3Dの出力は.daeと.kmzだけ。なので、SketchupでCNCマシンを使っている人は、「Export to DXF or STL」というプラグインを使っているようでした。
しかし、同時に「SketchUcam」というプラグインもあるようで、それならそのままGコードを書き出せるようです。以下の動画がチュートリアル。
けっこうこれも使いやすそうです。
ということで、Fusion360、Blendercam、SketchUcamあたりという感じでしょうか。
一応ここにメモっておいたという感じです。

2016年5月15日日曜日

CNC関連のソフト(まとめ)

CNCマシン制作の構想段階当初から、Macで使えるオープンソースのCNC関連のソフトをいろいろ探しています。数年前の流行が一段落したせいか、一見よさそうだけど開発が止まっているもの、便利そうだけどバグがあったりとなかなか見極めが難しそう。Macなので数はかなり限定されるのですが、いままで見て来たソフトのリスト。
Mac利用者からの見ての使いやすさで★〜★★★つけてます。初心者向けという感じで、必ずしも高機能がいいというわけではなく。すぐに使えるかどうかという基準で。それと今後の開発も期待できるかどうか。Linux系はMacでも使えることがあるけど、インストールが面倒だったり、Mac特有のバグがあったりするのであまり触っていません。Raspberry Piにインストールして使えば便利そう。

主には以下の5種類。

・2Dドローイングソフト:
  svg、dxfなどのフォーマットで出力できるもの

  Inkscape★★★
    イラストレータの代用(イラストレータのショートカットキーに変換可)。
    Extension(Plug-in)との組み合わせで充分使える。
    スナップ機能も細かく設定できるのでCADのように製図できる。
    Forumも充実しているし、2Dやレーザー加工はこれがメインで大体大丈夫だと思う。
    オフカット(Outset/Inset)機能でルーター加工パスもつくれる(使用例)。

・3Dモデリングソフト:
  stlなどの3Dフォーマットで出力できるもの

  Fusion360★★★
    3Dモデリング操作しやすい。
    無料版が最低1年間は使える。その後また更新?
    Gコードも生成可能。
    クラウドベースなので共同作業がやりやすい。
  Blender★★☆
    操作方法が独特で慣れるまで大変だけど、基本的に何でも作れる。
    Add-on(プラグイン)も豊富にある(シリアル通信なども可能)。
    BlendercamでGコード生成可能。
  ・SketchUp:★★★
    操作が直感的で扱いやすい。
    プラグイン「Export DXF or STL」をインストールすると便利。
    プラグイン「SketchUcam」をインストールすればGコード生成も可能。

・CAM/G Code Generator:
  図面データ(2Dデータ:svg、dxfなど、3Dデータ:stlなど)をGコードに変換してくれる

  Fusion360★★★(使用例
    3DモデリングしながらGコードも生成できる。3Dプリンターにもいいかも。
    商用ソフトでもあるので、かなり本格的(設定などが細かい)。
    レーザー加工用の機能がないのがちょっと残念。3D加工向きかも。
  Blendercam★★★(使用例
    Blenderと組み合わせて使えば便利。
    様々な3Dデータを読み込むことができるので、Gコード生成用としても使える。
    3D切削加工はほぼ可能。
  gcodetools(Inkscape Extension):★★☆(使用例
    やや開発が停滞しているようだけど、基本的なGコードは生成可能。
    最初は使い方に違和感を感じるけど慣れれば簡単。
  Laser Tool Plug-in(Inkscape Extension):★★★(使用例
    レーザー加工するならこのInkscapeとこのプラグインで簡単に設定できる。
    操作/設定がシンプルで使いやすい。
  ・Laserweb3/Laserweb4:★★★(使用例
    ブラウザ上のレーザー用アプリ。Laserweb4は単体アプリ化。
    Gコード生成とGコード送信もこれ一つで出来るので便利。
  Jscut★★★(使用例
    Webベースなのでブラウザ上で作業が可能。
    シンプルで使いやすい。オフカットなどのパスも生成可能。
    他のWebベースのGコードセンダーと組み合わせて使うと遠隔操作可能なので便利。
  ・PyCAM:★☆☆
    インストールが面倒、Macにはバグもあったり、しばらくは改善されなさそう。
  ・SketchUcam:★★★
    SketchUpのプラグイン。
    SketchUpと合わせて使うと便利。

・G Code Sender/Controller:
  Gコードを読み込んでCNCマシンへ送信したり手動入力制御したりするPC上のアプリ

  Universal-G-Code-Sender★★☆
    シンプルなので最初は使いやすいかも。
    grblとの相性がいいのかも。
    JavaベースなのでMacも充分使える。
    開発中の新バージョンに期待したいけどいつになるのか?
  GrblController★☆☆
    数年前までは使っている人もいたみたい。開発が止まっていそうで、今後あまり期待できない。
    基本的なことはできるけど、他に比べるとやはりいまいち。
  bCNC★★★(bCNCを使ってみたときの記事はこちらへ
    操作も比較的シンプル。
    dxf読み込み可能、基本的なCAM機能もある。
    Autolevel機能もあるので基板制作にも向いている。
    Pendant機能でWeb上からスマホなどで遠隔操作可能。
  LaserWeb/LaserWeb2/LaserWeb3/LaserWeb4★★★
    ブラウザ上の操作はシンプル。svg、dxf対応。Jscutと組み合わせると便利。
    Webベースなので遠隔操作可能(最近はWebベースが主流かも)。
    ブラウザ上でstlファイルを読み込むことができる。
    まだまだ開発が継続されているので今後も期待ができる。
  cheton/cnc★★☆
    これもWebベースでつかいやすそう。
    Webカメラでの監視、320x240 LCDディスプレイ対応の操作画面もある。
    Raspberry Piを用いて操作などすると便利そう。
    今でも頻繁に開発が進んでいそう。
  ・GRBLWeb:★★☆
    こちらもWebベースでRaspberry Piにインストールしてホストとして使うのかも。   
  ・Easel:★★☆
    X-CARVEやShapeoko(1or2)用のWebベース、CAD+CAM+GrblControllerソフト。
    X-CARVEやShapeoko(1or2)用だけれども使うことはできる。
    ただ、Machine選択でX-CARVE/Shapeoko(1or2)/Carveyしかないから戸惑うが、ウィンドウ下のAdvanced>> に進み、Advanced SettingsでMachine Inspectorを使えば大丈夫。
    細かい設定はないけれどもオールインワンなのですぐに使うにはいいかも。
    ステップバイステップで設定が誘導されるので初心者にはわかりやすい。   
  ・Mach3:☆☆☆
    MacなのでMach3とは無縁。

・G Code Interpreter:
  CNCマシンのマイコン(Arduinoなど)上のファームウェア
  Gコードからモーター制御してくれる
 ・Grbl v1.1:★★★(Grbl v0.9やv0.8はこちら
   Arduino Uno用。3軸制御まで。
 ・Grbl-Mega
   Arduino Mega2560用。
   以下のフォークされたバージョンでは4軸制御や3Dプリンター制御など可能。
   https://github.com/bdurbrow/grbl-Mega
   https://github.com/fschill/grbl-Mega
   https://github.com/HuubBuis/grbl-L-Mega
   https://github.com/fra589/grbl-Mega-5X
 ・GrblESP(ESP8266用Grbl)
   SPI通信により最大8軸。Wifi操作可能。
 ・Grbl_ESP32(ESP32用Grbl)
   基本3軸制御? Wifi/Bluetooth操作可能。
 ・Android対応ArduinoMega2560専用6軸ファームウェア
【EU Free VAT】CNC Part 4th Fourth A axis Rotary axis Dividing head K11-65mm 3 Jaw Manual Chuck with TailstockOriginal price: USD 233.37Now: USD 172.70

  ・LinuxCNC★★☆
    GrblもLinuxCNCに準じているようなので、すべてLinuxを使えばかなり便利そう。
    ただ、Linuxもやり始めると手間暇かかってしまう。
    少なくてもRaspberry PIを使ってできるかもしれない。
  ・TinyG★★☆
   Grblより強力そうだけど、それだけ値段も高いのでお手頃ではない。$165ドル。
   ファームウェアはAVR Studio(Win用)でアップデート。Mac用AVR Studioもあることはある。
  
  
まとめ:
基本的にはG Code InterpreterはGrblを使用。
2D加工するなら、Inkscape+Extension(gcodetoolやLaser Tool Plug-in)でGコードファイルを生成する。あるいは、InkscapeのsvgファイルをJscutで読み込んでGコードファイルとして出力。
特に2Dのレーザー加工の場合は、Inkscape+Laser Tool Plug-inで充分だと思う。
Gコードファイルを読み込んで実行するソフトは、Universal-G-Code-Senderがシンプルでわかりやすいかも。現在は、bCNCが便利なので(慣れたので)使っていますが。
3Dの場合は、モデリングは何のソフトでも構わないと思う。Sketchupなど使いやすいと思うソフトで。その3DデータをFusion360かBlendercamでGコードを生成する感じになると思う。

この際、Linuxにしてもいいのかもしれないけれど、手間暇かかるのでそこまではしないつもり。Macの環境でもそこそこつくりたい物はつくれそうだし、とりあえずあるものを利用するだけでも充分だと思う。

ただ今後はRaspberry Pi3を使い、wifi経由でWebベースのLaserWeb2、cheton/cnc、Jscutを使うのがよさそう。遠隔操作やカメラ監視なども可能になるし、ワイヤレスでどこででも作業が出来るというのがいい。スマホやタブレットで操作もできるようになるので。
個人的には、LaserWeb2に期待したい感じ。現在はstlを読み込めるけど、スケール変換などがまだできない。今後のロードマップを見ると、3Dにも力入れようとしているし、まだまだ発展しそう。以下のような画面。

追記:
普段は、G Code SenderとしてbCNCをつかっていますが、bCNCにはPendantという機能(ネットワークを使ってWeb上で操作する)があり、先ほどつかってみたらタブレット(ブラウザ上から)でリモートコントロールできました。

これ↑が、Pendant機能をつかったタブレットのブラウザ上の画面です。
いままで通りに、CNCマシン(Arduinoボード)とMacBookをUSB接続し、bCNCを立ち上げてPendant開始ボタンを押すと機能がONになります(以下)。

ホストとなるMacBook上でもブラウザが自動的に立ち上がって操作画面が出てきます。アドレスに「http://localhost:8080」とでているはずなので、ローカルネットワーク内の他のコンピュータやスマホなどからもアクセスできるはずです。
持っているタブレットでは「localhost:8080」ではアクセスできなかったので、数字でプライベートIPアドレス「192.168.3.3:8080」(MacBookのプライベートIPアドレスとポート)を入れてみたら表示できました。
つまり、MacBookはCNCマシン本体脇に、そしてタブレットやスマホを持ちながらZ軸に近寄って調整などが可能というわけです。ポートマッピングも使えば、外出先からも操作可能だと思います。
bCNCは、いろいろな機能があってかなり便利そうです。

関連:
G Code Sender(bCNCなど)

CNCマシン:Fusion360も試してみました

前回、Blendercamが使えるということがある程度分かったので、今回はいよいよFusion360を試してみます。ほかにもPyCAMやLinuxCNCも見てみましたが、Mac利用者にとってはいまいち開発があまり進んでいないようで、まだまだバグとかもありそうなので見送ることに。
というか、大体の人がFusion360に流れて行っているのではないでしょうか?


Fusion360のダウンロード:
ということで、ある程度Fusion360の動画で使い勝手を見てみて、早速ダウンロードしてみました。
画面右上のほうには、とりあえずトライアル30日間無料というのがあるのですが、そこをクリックすると、
こんな↑画面が出て来て、本格的に購入するか、教育バージョンで3年間無料か、非営利か年間$100K以下のビジネスのホビーユーザーで1年間無料かというのが、次に選べるようになっています。まだ30日無料トライアルにしたままですが、いずれにせよ最低でも1年間は無料になるという感じです。

モデリングは使いやすい:
モデリングについては動画でも見てみましたが、けっこう使いやすい直感的なインターフェイスという感じです。Blenderのような癖のある感じではないのですぐに覚えられそうです。
とりあえず、チュートリアルを見ながらやってみましたが、モデリングは何とかなりそうなので、すぐにGコード生成の仕方をいろいろいじってみました。
かなり細かい設定やいろんな加工の仕方があるので、情報過多で難しそうですが、普段使うものは限られてくると思うので、ひとつずつ設定していけばなんとかなりそうです。


レーザー加工はどうやる?:
以下の動画も見てみましたが、かなり手慣れた方法でモデリングしていました。

部材の厚みや間隔などを一旦変数化して、あとから数値入力によって簡単に編集し直す方法を使っています。たしかにこれは製品などつくる上では便利そうです(個人的にはあまり使わないと思うけど)。実はこの動画を見たのは、レーザー加工の手順を知る理由でしたが、最終的には部品のサーフェイスをdxfで出力保存して、あとは何かでやってくれというものでした。他の動画でもレーザー加工に関しては同じような感じでした。
2次元のレーザー加工の場合は、Fusion360を使う必要がないという感じ。おそらく手順としては、
Fusion360で3Dモデリング→一部をdxfで出力→Inkscape+Laser Tool Plug-inでGコード生成→bCNC
という手順になりそう。bCNCでdxfファイルを直接読み込むことはできるけど、レーザー用にスピンドルONや出力値(M3 S=1000など)のGコードを編集しなければいけないので、結局上記のような経路となってしまいます。
Fusion360なら全部ひとつのソフトでできるのかと思ったら案外そうでもないです。3Dプリンター用のボタンはあるので、3Dミリングか3Dプリンター用という感じでしょうか。


3Dミリング加工:
仕方ないのでミリング加工についてもいじってみました。チュートリアルもやってみましたが、手順通りに進めるとすぐに終わってしまうので、前回Blendercamでも使った3Dモデルでやってみました。
このデータはstlフォーマットです。直接ソフトでは読み込むという機能がないかわりに、一旦クラウドへアップロードしてから新規に開くという手順。基本的にクラウドで共有しながら共同でプロジェクトを開発していくみたいな感じになっているようです。
またこの凹凸がある表面を3次元的に削るというデータをつくってみます。
ネットにチュートリアルのサイトや動画もあるので、ここでは手順は省きますが、とりあえずBlendercamもそうでしたが、各項目の設定を入力していくだけです。加工の仕方や設定の種類はさすがに商用ソフトでもあるのでFusion360はすごいです。その分設定が細かすぎてすぐには全部を把握できない感じ。何回かエラーがでてきて、パスが表示されないこともありましたが、エラー内容を見ながら、ここかな?という感じで訂正していき、なんとかパス生成しました。


加工パス生成:
しかし、できあがった加工パス超高密度。エラーはでなかったけれども、これでは何時間かかるのかわかりません。
そして、出来上がったGコードをbCNCへ持っていくと、
こちらも真っ黒。おそらく加工に10時間以上かかるパス。
まあ、いちおう手順としては分かったので、なんとななりそうです。


Fusion360の印象:
チームで何かプロジェクトをやるときには便利そうです。プロのプロダクトデザイン用のソフトって感じです。ミリング機能に関しては本格的で金属など削るにはいいと思います。3Dモデリングも使いやすそうです。
個人的には、Fusion360だけですべて出来るのかと思っていたら(Gコードセンダーにもなるのかと思っていた)そういうわけはなかったです。いわゆるCAD、CAMソフトという感じでした。3D切削加工するときは使うかもしれませんが、シンプルな2D加工ならわざわざ使う必要もないかも。特にレーザー加工なら、Inkscape+Laser Tool Plug-inで充分かもしれません。


Fusion360操作ガイド CAM・切削加工編 1 2019年版―次世代クラウドベース3DCAD/CAM
三谷 大暁
カットシステム
売り上げランキング: 27,799

人気の投稿