ArduinoCNCを入手しました。

最終更新日 2017年3月27日

CNCシールドを購入しました。早速DRV8834+Dowonsolミニチュアモータを接続し、GRBL1.1からの制御ができる環境を構築することにします。

構成リストは以下のとおりです。

  名称 型番 メーカ 備考
@ CPU NANO互換機 ks0173 KeyeStudio $6.99
A CNCシールド ks0152 KeyeStudio $6.99
B モータドライバ DRV8834 Pololu $5.95
C モータユニット B017NN315C Dowonsol 4-6V DC 2相4ワイヤ ステッパーモーター、74mm ネジロッド + ナット
D PC     NANOとUSB接続
E 5V電源     モータドライブ用の電源1A程度

今回ArduinoはNANOとし、NANOが接続出来るCNCシールドを入手しました。CNCシールドが無くても、既にNANOの端子から期待する信号が出力されていることを確認しているのですが、見た目としてCNCシールドやモータドライバユニットには華があります。

購入したCNCシールドの情報がなかなか入手できません。残念ながらKeyeStudioは情報提供していません。型番で検索してもだめでした。
このCNCシールドのオリジナルがなんなのかが判ればいいのですが。PROTONEERなのかな?

一般的なUNO用のCNCシールドは幾つかのバージョンがあります。外観からはなかなか区別できないのですが4種類はあるようです。

バージョン 外観写真 コメント
CNC3.0

KeyeStudioのCNCですV3で有ることが判っています。
Aitendoに情報があります。
https://www.aitendo.com/product/11471
オリジナルの情報が以下にあります。
https://blog.protoneer.co.nz/arduino-cnc-shield-v3-00
-assembly-guide/

  • GRBL0.8に対応しています。
  • FUSEが付いています。
  • 安価なCNCはほとんどがこのタイプの基板のようです
  • この基板は4軸分のドライバが装着できますが、
    A軸はショートpinにてX/Y/Zのいずれかの信号をコピーするか、D12/D13pinを使用してスピンドルモータを駆動するかという設計のようです。
  • KeyeStudioのボードにはありませんが、PROTONEERのボードにはEndStopに対してHighに固定する事が出来ます。
CNC3.0.3

V.3.0.3というボードがあることが判りました。

  • GRBL0.8に対応しています。
  • FUSEがなくなっています
  • 電源コネクタの位置がずれています
  • EndStoppinはショートして使うのが筋のようです。
  • マイクロステップ用のショートpinはすべてショートの場合FULLSTEPです。向かって左からM0/M1/M2です。1/8にする場合、M2を外します。※ドライバボードの仕様も要確認
CNC3.5

PROTONEERのCNCシールドです。シルク印刷からV3.5で有ることが判っています。

  • GRBL0.9に対応しています
  • 電源コネクタの位置が端に行きました
  • FUSEが削除されたようです。
  • LimitZの端子とSpindleの端子が変更されています
CNC3.5.1

PROTONEERのCNCシールドです。シルク印刷からV3.5.1で有ることが判っています。

  • GRBL0.9に対応しています
    GRBL1.1もハードとしてはそのまま使えます。ただ、コマンドは異なります。
  • LimitSWの端子に抵抗が付いています。
    ノイズ対策ではないかとの情報があります
CNC4.00

今回使用するCNCシールドです。
Nano用になっています。
V4としているのはKeyeStudioの記載に倣いました。
PROTONEERに商品がありません。オリジナルがどこなのか不明です。

  • A6/A7端子があります。しかし、GRBLのファームでは使えないと思われます。
  • I2Cの端子があります。しかしGRBLのファームでは使えないと思われます。
  • D12/13端子が使えますので4軸目にスピンドルを検討することも不可能ではありません。
  • limitZ+の接続先端子を確認しました。D11です。
    つまりgrbl0.8仕様です。残念です。
    grbl1.1で使用するためD11とD12の端子接続は注意が必要です。


とりあえずテスト運転したいと思います。

  1. NANOにGRBL1.1のファームを書き込みます。動作確認は自作ツールで実施します。
  2. マイクロステップ等々の設定を書き換える必要があります。
  3. 今回はPololu社のステッパードライバを使用します。調整が必要です。
    DRV8834は1/8にするためにはM0をL、M1をHにします。※シートピンを刺すとHです。
  4. 各ステッパーコントローラソケット毎に個別の動作確認をします。
  5. すべてのドライバを接続しチェックします。


GRBL1.1の書込】

GRBL1.1のファイナル版がリリースされています。v1.1f.20170131
https://github.com/gnea/grbl/releases
このZIPファイルをArduinoIDE1.8.1に登録したいのですが、うまくゆきません。理由は不明です。

Arduino:1.8.1 (Windows 7), ボード:"Arduino Nano, ATmega328"
指定されたフォルダ/zipファイルには有効なライブラリがありません
「ファイル」メニューの「環境設定」から
「より詳細な情報を表示する:コンパイル」を有効にすると
より詳しい情報が表示されます。

これと同時にHEXファイルも用意されています。こちらをNANOに書き込むことは成功しました。書込ツールはXLoader v1.00を使いました。
https://xloader.russemotto.com/
DeviceとしてNANO(AT328)を選択したところUART通信速度が57600bpsに制限されますが、ちゃんと書き込みできました。

書込後、自作ツールでアクセスしたところ、ちゃんと認識しました。1.1fです。

設定変更】

パラメータリストを問い合わせました。

パラメータ 意味合い デフォルト値 今回値 今回の設定値
$0 ステップパルス、マイクロ秒 10 10 10
$1 ステップアイドル遅延、ミリ秒 25 25 25
$2 ステップポート反転、マスク 0 0 0b00000ZYX
$3 方向ポート反転、マスク 0 0 0b00000ZYX
$4 step enable invert、boolean 0 0 一応そのまま
$5 リミットピンinvert、boolean 0 0 一応そのまま
$6 プローブピンの反転、ブール値 0 0 一応そのまま
$10 ステータスレポート、マスク 1 1 GRBL1.1で変更されています
$11 ジャンクション偏差、mm 0.010 0.01 一応そのまま
$12 円弧公差、mm 0.002 0.002 一応そのまま
$13 レポートインチ、ブール値 0 0 一応そのまま
$20 ソフトリミット、ブール値 0 0 一応そのまま
$21 ハードリミット、ブール値 0 0 一応そのまま
$22 原点復帰サイクル、ブール値 0 0 一応そのまま
$23 ホーミングディレクトリ反転、マスク 0 0 一応そのまま
$24 ホーミングフィード、mm / min 25.000 25 一応そのまま
$25 ホーミングシーク、mm / min 500.000 500 一応そのまま
$26 ホーミングデバウンス、ミリ秒 250 250 一応そのまま
$27 ホーミングプルオフ、mm 1.000 1 一応そのまま
$30 最大スピンドル速度、RPM 1000 1000 GRBL1.1で追加されています
$31 最小スピンドル速度、RPM 0 0 GRBL1.1で追加されています
$32 レーザーモード、ブール値 0 GRBL1.1で追加されています
$100 [X]ステップ/ mm 250.000 26.666 1/4で使用しL=3mm/rev、20Pluse/revなので、
80/3=26.666とします。
$101 [Y]ステップ/ mm 250.000 26.666 1/4で使用しL=3mm/rev、20Pluse/revなので、
80/3=26.666とします。
$102 [Z]ステップ/ mm 250.000 26.666 1/4で使用しL=3mm/rev、20Pluse/revなので、
80/3=26.666とします。
$110 [X]最大レート、mm /分 500.000 250 74mmを20秒とすると半分の250にする必要があります。
$111 [Y]最大レート、mm /分 500.000 250 74mmを20秒とすると半分の250にする必要があります。
$112 [Z]最大レート、mm /分 500.000 250 74mmを20秒とすると半分の250にする必要があります。
$120 [X]加速度、mm / sec ^ 2 10.000 5 10だと脱調するようです。
$121 [Y]加速度、mm / sec ^ 2 10.000 5 10だと脱調するようです。
$122 [Z]加速度、mm / sec ^ 2 10.000 5 10だと脱調するようです。
$130 [X]最大移動量、mm 200.000 74 74mm
$131 [Y]最大移動量、mm 200.000 74 74mm
$132 [Z]最大移動量、mm 200.000 74 74mm

制限電流の調整】

直接可変抵抗器の抵抗値を調整することにしました。この方法だとオフラインで調整出来ます。

3つのモジュールを個々に実行します。

Ra Rf(目標) Rf実際 Imax想定
X軸モジュール 6.62kΩ 0.5kΩ 0.48kΩ 0.48A
Y軸モジュール 7.07kΩ 0.536kΩ 0.53kΩ 0.495A
Z軸モジュール 7.19kΩ 0.545kΩ 0.55kΩ 0.505A

各軸の確認】

一応動かしてみました。
CNCV4の回路図を結局入手できなかったためCNC3.0の回路図と等価として始めたところ、いろいろ違いがあることが判り、手間取ってしまいました。

テスト】

モータが2つしか無いためX軸Y軸に割り当てて動かしてみました。ちょっと脱調してしまうこともありましたが期待通りの位置に動かすことが出来ます。マイクロステップ1/4はちょっと厳しいので1/16にしたいのですが、配線が大変です。大失敗でした。

と云う事で、NANOは諦めてUNO/CNCV3.5で行うのが確かのようです。


戯言(nonsense)に戻る


免責事項

本ソフトウエアは、あなたに対して何も保証しません。本ソフトウエアの関係者(他の利用者も含む)は、あなたに対して一切責任を負いません。
あなたが、本ソフトウエアを利用(コンパイル後の再利用など全てを含む)する場合は、自己責任で行う必要があります。

本ソフトウエアの著作権はToolsBoxに帰属します。
本ソフトウエアをご利用の結果生じた損害について、ToolsBoxは一切責任を負いません。
ToolsBoxはコンテンツとして提供する全ての文章、画像等について、内容の合法性・正確性・安全性等、において最善の注意をし、作成していますが、保証するものではありません。
ToolsBoxはリンクをしている外部サイトについては、何ら保証しません。
ToolsBoxは事前の予告無く、本ソフトウエアの開発・提供を中止する可能性があります。

商標・登録商標

Microsoft、Windows、WindowsNTは米国Microsoft Corporationの米国およびその他の国における登録商標です。
Windows Vista、Windows XPは、米国Microsoft Corporation.の商品名称です。
LabVIEW、National Instruments、NI、ni.comはNational Instrumentsの登録商標です。
I2Cは、NXP Semiconductors社の登録商標です。
その他の企業名ならびに製品名は、それぞれの会社の商標もしくは登録商標です。
すべての商標および登録商標は、それぞれの所有者に帰属します。