Amazon購入の3Dプリンタキットの動作検証作業 その4
前回投稿
の続きです。
ステッピングモータードライバ(A4988)のマイクロステップ設定について
今回使用しているステッピングモータードライバA4988には入力パルスと出力するパルス(ステッピングモーターへのパルス)の比率(1/1、1/2、1/4、1/8、1/16のいずれか)を指定できる(マイクロステップ設定)機能が提供されています。
設定の仕方はRAMPS 1.4互換シールド上の各ドライバ接続コネクタの間にあるジャンパーMODE0、MODE1、MODE2の3つで行います。
A4988に接続しているステッピングモーターにステップ角度が 1.8 deg を使った場合のジャンパー(MODE0,1,2)の状態とマイクロステップ設定値(比率)とステッピングモーターのステップ角度を表にまとめてみました。
MODE0 | MODE1 | MODE2 | 比率 | ステップ角度 (deg) |
360度のステップ数 |
オープン | オープン | オープン | 1/1 | 1.8 / 1 = 1.8 | 200 |
ショート | オープン | オープン | 1/2 | 1.8 / 2 = 0.9 | 400 |
オープン | ショート | オープン | 1/4 | 1.8 / 4 = 0.45 | 800 |
ショート | ショート | オープン | 1/8 | 1.8 / 8 = 0.225 | 1600 |
ショート | ショート | ショート | 1/16 | 1.8 / 16 = 0.1125 | 3200 |
今回は MODE0:ショート MODE1:ショート MODE2:ショート の比率 1/16 で使用することにします。
Marlinで扱えるG-CODEについて
Marlin で扱うことができる G-CODE は本家のサイトでは英語で説明されています。
使用環境に合わせたMarlinの設定について
実際に動くステッピングモーターがパルス(PULSE)と回転方向(DIR)でちゃんとCADで作成した寸法通りに動くように Marlin に設定する値の算出方法を整理してみたいと思います。Marlin の場合 Configuration.h で指定するようになっています。 Arduino-IDEでのビルドが必要です。
使用するステッピングモーターやメカ機構(プーリー等)の仕様に合わせて Marlin のパラメータ step/mm を各軸毎に決める必要があります。
今回は筐体(メカ機構)はないので次の条件で計算手順を書いておきます。3.4. 5. の値は仮定となります。
【条件】
1. | ステッピングモーターのステップ角度 | : | 1.8 deg |
2. | ステッピングモータードライバ(A4988)のマイクロステップ設定値 | : | 1/16 step |
3. | X,Y軸のプリーピッチ(歯間隔) | : | 2.0 mm |
4. | X,Y軸のプリー歯数 | : | 20.0 |
5. | Z軸の1回転で進む量 | : | 0.8 mm |
上記の条件での X,Y軸の step/mm 値と Z軸の step/mm 値は
ステッピングモーターのステップ角度が
1.8 deg
なのでステッピングモーターが1回転するステップ数は
360 / 1.8 = 200 steps
ドライバのマイクロステップ設定値が 1/16 step なので
ステッピングモーターが1回転するステップ数は
200 x 16 = 3200 steps
1回転で送りネジが1mm進むので1mm進めるステップ値は
3200 / 1mm = 3200 steps/mm
となる。
よって、各軸の step/mm 値は
X軸:3200 / (2.0 * 20.0) = 80 step/mm
Y軸:3200 / (2.0 * 20.0) = 80 step/mm
Z軸:3200 / 0.8 = 4000 step/mm
として設定することにします。
今回はここまで。