XY Plotter
電気部品の取付け
2018年9月15日
モーターを取り付けてベルトをかけました。 | |
左の写真は制御基板です。 Arduino UNOとCNCシールドです。 eBayでこの2枚とA4988が5個セットになったものが1100円で販売されています。 |
|
Aruduino基板にCNCシールド基板を差し込んで使います。 ファームウエアはGRBLというCNCコントロールソフトです。 ダウンロードしてフリーで使用できます。 |
|
ここで一言 以前にCNCフライス盤を作った時の制御はMachというソフトでした。 このソフトはPCから直接ステッピングモーターのパルスを出力するソフトです。 CNC本体にはステッピングモーターのドライバさえあれば良く制御コンピーューターは不要です。 ただしPCのパラレルプリンターポートを利用していましたので古いパソコンでしか使えません。 最近のパソコンはプリンターポートなんてついていませんので。 またMachが無料で使えるのはGCODEが500行までという制限が付いていました。 いろいろ不便な点がありました。 最近のCNCは3Dプリンターのように機械の方にマイコンを装備してUSBケーブルでPCから制御するように変わっているようです。 いつごろそうなったのか知りませんがGRBLというArduinoでCNCを制御するソフトは6年程前にリリースされています。 今回のXYプロッターも仕組みはCNCそのものなのでGRBLを使います。 Arduino UNOにGRBLというファームウエアソフトを書き込みます。 PCにはbCNCというソフトを使ってGCODEデータを送信します。。 どちらも初めて使うソフトなので動かすのが楽しみです。 |
|
左はbCNCというCNCのコントロールソフトです 。 |
|
うまく動くか確認しました。(動画) |
|
動く事は動いたのですが10mm動かす操作をすると30mm動きました。 defaults.hというファイルの中に下記の記述がありました。 #ifdef DEFAULTS_GENERIC // Grbl generic default settings. Should work across different machines. #define DEFAULT_X_STEPS_PER_MM 250.0 #define DEFAULT_Y_STEPS_PER_MM 250.0 #define DEFAULT_Z_STEPS_PER_MM 250.0 ああここだなと思いました。 なぜなら1mm動かすパルス数が80の所、250も出力している事になっているからです。 250/80=3.125 約3倍動くのも当然です。 下記のように書き換えました。 #define DEFAULT_X_STEPS_PER_MM 80.0 #define DEFAULT_Y_STEPS_PER_MM 80.0 コンパイルして書き込み後テストしましたが変わりませんでした。 試しに下記のようにXの行をコメントに変更してコンパイルするとエラーが出ました。 //#define DEFAULT_X_STEPS_PER_MM 80.0 エラー文 ******************************** C:\Users\pavilion6740\Documents\Arduino\libraries\grbl\settings.c:49:29: error: 'DEFAULT_X_STEPS_PER_MM' undeclared here (not in a function) .steps_per_mm[X_AXIS] = DEFAULT_X_STEPS_PER_MM, ^ コンパイル時にエラーが発生しました。 ******************************** エらーが出たのでここを読み込んでいるのは確かです。 ところが設定値を変更しても変わらないのです。 どうしてでしょう。 うーん。わからない。 |
|
ネット上の情報を調べた結果、GRBLは‘$’に続くコマンドで、設定の表示や値の変更が行えるようになっているという事が分かりました。 $$を送信すると設定値の一覧が表示されます。 さっそく試したら左のように表示されました。 この中にXやYを1mm動かすパルス数の設定がありました。 $100・・・Xを1mm動かすパルス数 $101・・・Yを1mm動かすパルス数 X、Y共250.000になっています。 なる程ここの設定が有効だったのですね。 |
|
下記の2つを送信してみました。 $100=80 $101=80 すると左のようにXやYを1mm動かすパルス数の値が80に変更されました。 動作テストをしたら操作と動作が一致しました。 なーんだ、簡単だったなと思いました。 3Dプリンターの時はConfiguration.hを変更してコンパイルする必要があったのですがGRBLの場合はそんなことしなくていいようになっているんですね。 同じ要領で最大速度と加速度を調整しました。 |
|
動作テスト(動画) 軽快に動く事が確認できました。 |
|