2014年1月18日土曜日

マイクロステップによる2軸同時駆動

 
購入したA4988モータドライバを早速動かします。
これです。
ドキュメントは何も無いのですが、 Pololu のモジュールとピンコンパチと思われます、というかおそらくおんなじ回路です。
ということで Pololu の説明にしたがって動かすことにします。

まずはピンヘッダのハンダ付け。


まっすぐにつくようにブレッドボードにピンヘッダを刺しておいてその上でハンダ付けします。


X、Y 軸用にひとつずつ作製。


 ちゃんとした基板は後で設計するとして、まずはテストとして小さなブレッドボードに作りこむことにします。


回路、というか接続はPololuの説明のままです。


両方のモジュールで共通な電源、GNDあたりを地下配線しておきます。


電源接続のピンなど立てたりしながら作っていきます。


電源回りが終わりましたので、モータと接続するケーブルにもピンヘッダを付けてブレッドボードにさせるようにしておきます。


こんな感じ。L298Nを使ってフルステップで動かしたときは 電流制限用にセメント抵抗をぶら下げておりましたが、A4988はPWM電流制限の機能がありますので抵抗は不要です。すばらしい。


全体を乗っけるのはお得意のMDFボード。DAISOで4枚100円で売っている100mm角のモノを使います。
まずパラレルポートを固定して、


こんな感じでいいでしょう。


ブレッドボードも固定します。


ゴム足は高さあわせのひとつだけ(手抜き)


パラレルポートの出力をDIRとSTEPにつなぎます。ピンアサインは後でMACH3上でどうにでも変更できますので、ここはとりあえずつないでおくだけ。


ここで、レーザコントロール用の回路もこやつに乗せてしまおうと欲を出してちょっとやり直し。


モジュールを少し詰めて、横にフォトインタラプタを乗せました。ジャンク箱にあったPC817です。 あんまり考えてないけど多分動くでしょう。これはとりあえず乗せておいて、モータの後テストすることにします。


適当なピンをフォトインタラプタにつないでおきます。パラレルの電流規格調べとかないといけませんね。5mAとか引いていいのかな。 .....あとで考えます。


配線はこれだけです。
次に電流制限を設定します。半固定抵抗で分圧された電圧を基準にして電流制限をすることが出来ます。 値は Pololuの説明にある Current Limit = VREF × 2.5  という式を参考に。

基板上には半固定抵抗の電圧を計るためのむき出しのビアがありますのでそこにテスタをあててGNDとの間の電圧を読みます。


初期設定は0.6Vでした。1.5Aです。これはおそらく私が使うモータには流しすぎと思われます。


 ということで、1Aに制限するために0.4Vに設定します。


これで準備は完了です。
Logoc電源 5V、モータ電源8V(35V以下で、モータが回れば何でもいい)、モータへの配線をつなぎます。


ステージを持ってきてモータをつなぎます。


まずはフルステップで動かします。マイクロステップの分割設定は3つのピンを下の表にしたがってHigh(5V)にしてやることで行います。


ではまずフルステップで動かしてみましょう。

video

次にMS1ピンをHighにして1/2ステップにします。

video

1/4ステップ。パルスを送り出す速度を変えていないので、マイクロステップの分割数が細かくなると動きがどんどん遅くなっていきます。それと同時に、音が静かになっていくことがお分かりいただけると思います。

video

1/8

video

1/16。このドライバの最小分割です

video

ここでレートを16倍にあげてフルステップとスピードをあわせてみます。

video

何気に動いていますが、この状態でフルステップの16倍の位置決め精度があります。
フルステップでは約170um/stepでしたので、1/16ではほぼ10umの位置決め精度の能力があることになります。実際はないです(笑

ちょいと速く動かしてみます。

video

1/16分割でMACH3の最高速度で動かしています。 これではラスターでマーキングをするにはちょっと遅いように思われます。
ということで、ラスターによるマーキングとベクターによるカッティングを同一設定でやるなら1/8分割くらいで動かすのがよさそうです。もちろん分割数はPICマイコンからコントロールできますので用途によって切り替えることも出来ます。
この辺も一通り試してから基板設計のときに考えることにします。

さて、1軸テストは良い感じなので2軸をつないでみます。


基板はこのように。


L298Nを使ったテストのデータと同じものを動かしてみます。

video

期待に反してあんまり静かにはなりませんでしたが、フルステップでがたがた動かしていたときに比べると雲泥の差です。電流を調整してやるともう少しは静かになると思います。

ちなみにフルステップの時はこんな感じでした。

video

バイクみたいですね。

ということで、これである程度は静かになって、位置決めの精度も大きく改善しましたので ひとまずステージ駆動については完成とします。
次はレーザのコントロールです。これは少し工夫が要るはず。MACH3は元々スピンドルを制御することを想定したソフトですので、レーザを思ったようにON/OFFするには皆さんいろいろ工夫しています。
いまYoutubeをみて情報を集めているところです。




4 件のコメント:

  1. 違う日記のコメントを書かせて頂いてたらもうUPされて驚きです!!
    2軸の動作音が消防車みたいで少し笑ってしまいましたw
    少し質問なのですがA4988のマイクロステップ設定pinは手動で設定するのでしょうか?
    machからはそれに合わせた「倍数のパルス数を送る」という事で良いのでしょうか?

    返信削除
  2. らせたろきんさん
    一日篭って作業しております。全力投球です。
    2軸ステージに円を書かせるとサイレンみたいな音がしますよね。もう少し電流を少なくすれば静かになるのかな。3Dプリンタはほとんど同じ駆動でえらく静かなので出来るはずだとは思うのですが....

    A4988のステップ設定はいまは手動でしています。が、マイコンからコントロールしてやればリアルタイムで(そんな必要があるかは別として)変更することが可能です。3本のプルダウンされているピンをマッピングに従ってHighに吊ってやれば分割数が変わります。

    MACH3についてはご理解の通りです。MACHさんはモータがどんなステップレートで回っているのか全く気にしておりませんので、マイクロステップの分割数が細かくなるとどんどんモータの回転速度は遅くなっていきます。それを補完するためには設定を分割数倍してやる必要があります。

    返信削除
  3. みら太さん
    お返事ありがとう御座いました。
    しかしA4988モジュールはいい働きをしますね。
    私も今度仕入れてみたいと思います。

    返信削除
    返信
    1. らせたろきんさん
      その通りです。いままでPICで作っていた部分(CW/CCW と パルスだけで動かす)が入っている上にマイクロステップまで、と至れり尽くせりです。
      PICでマイクロステップというのもちょっと考えないではないのですが、あまりに労力がかかりそうです。ということで楽チンコースを選んでみました。
      ぜひご検討ください。中国からの通販で買えば格安です。

      削除