CNCマシンで円を描く(駆動テストその2) [CNC]
Y軸の組み付け固定ができたので、ようやく本式に3軸全体の駆動ができるようになった。
これまでは、実際軸駆動はX軸、Z軸を個別にコントローラーで動かしていただけで、CNCの全体として正常・正確に動くのかの確認はできていない。
というわけで、上の写真右下の赤いサインペンでプロッタもどきに線を引かせてみた。
bCNCのコントローラーを使えば、上下左右、斜め方向に直線が簡単に描けるが、
X,Y軸の同時駆動による微妙な制御を確認するのに円を描かせてみることに。
bCNCのターミナルから、次のGコードを手入力する。
G91G2X0Y0I0J-10F300
これが、現状の位置から時計回りに半径10mmの円を毎分300mmの速度で動かすという指令になる(らしい)。
タイプミスや、スペースを間に入れてしまったりでエラーを返された末(^^; 5、6回目ににようやく動き始める。
ご覧の通り、円にはなるが左右(X軸)方向が結構変形している。
X軸の駆動ベルトが明らかに緩すぎるようだ。
ベルトを締めるなど若干の調整後、直径4cmで円を描いたところ。
だいぶ良くなったが、さらに調整。
直径4cmで書いたが、横方向が0.5mmほど短い。
これはペンの固定が結束バンド1か所のため、首を振っているせいと思われる。
このCNCマシンの駆動精度だが、理論上の分解能はX,Y軸が0.0125mm、Z軸は0.01mmになる。
これ、あくまでモーターの回転精度からくる理論値で、これ以外に機械的な組み付け精度やベルト駆動に伴う誤差などの要素が加わるので実際は精度はもっと落ちると思われる。
分解能の理屈は、ステッピングモーターが一般的な2相タイプなので1回転するのに200ステップ(1ステップで1.8°角回転する)となり、この1ステップがモーターの最小分解能になる。
今回、X、Y軸のベルト・プリーリーは2GTで歯のストロークが2mmで、プーリーの歯数が20であるため、モーター軸1回転で40mmの送り量になる。つまり、この構成だけだと分解能は40mm÷200ステップ=0.2mmにすぎない。
分解能0.2mmではさすがに荒すぎるので、これに、ドライバー本体のマイクロステップ機能を使用して、モーターのステップをさらに1/16まで細かくしている。DRV8825だと、1/2、1/4、1/8、1/16、1/32まで、CNCシールドのソケットの間にあるジャンパで設定できる。
写真では黄色のジャンパが全て刺さっている(全てHigh)が、Low’(ジャンパなし)を組み合わせて希望するマイクロステップを設定できる。
これによりモーター1回転は200ステップ×16=3200ステップとなり、1ステップ当たりの送り量は40mm÷3200ステップ=0.0125mmとなる。
これに対し、Z軸は台形ネジ駆動のため1回転のストロークは8mm、マイクロステップは1/4とし、モーター1回転当たりのステップ数は200×4=800ステップ、8mm÷800ステップ=0.01mmで、X,Y軸に近い値にしている。
DRV8825はマイクロステップを1/32まで上げられるので、分解能をさらに上げることは可能だが、その他の精度の限界もあるし、モーターのトルク低下というデメリットもあるようなので、この辺がいいところだろう。
この辺の分解能はコントローラーにCNCの基本情報として設定する必要があり、正しく設定されていないと当然スケールが異なるなど精度が出ない。
上のリスト$100、$101、$102に記載のある数字が、X,Y,Z各軸の1mm当たりのステップ数を示している。