オープンソースのCAMソフトGrblでステッピングモーターを回してみる:Arduinoで学ぶ基礎からのモーター制御(11)(3/3 ページ)
今回は、3DプリンタやCNCで定番の制御ファームウエアとなっているオープンソース「Grbl」を使って、ステッピングモーターを制御します。
Grblを使ってみる
ここではGrblでステッピングモーターを動かしてみます。
せっかくですのでターミナルエミュレーターで’$’の後、リターンキーを押してみます。するとGrblのコマンド一覧が表示されました。ここに表示されるのはGrblに特化したコマンドのヘルプが表示されています。これ以外にステッピングモーターを動かすためにはG-CODEというコマンドが使われます。3DプリンタやCNCや産業用のNC工作機械も同じコード体系のコマンドが使われています。今回は試運転ですのでG00のみを使ってみます。
それではモーター駆動用の電源を入れてみましょう。
ターミナルエミュレーターで
G00 X 1 [Enter]
と打ってみてください。ただし [Enter] はキーボードのEnterキーあるいはReturnキーを示します。
モーターが回転したでしょうか。
これはX軸上で指定した絶対座標に移動するというコマンドです。
ちなみにここで
?
と打ち込んでみてください。すると以下のように表示されます。これは現在の状態 (Current Status) を示します。
<Idle,MPos:1.000,0.000,0.000,WPos:1.000,0.000,0.000>
「IMPos;1.000」が現在のX軸上の位置を示します。
次に
G00 X 0 [Enter]
と入力すると先ほどと同じ程度に逆回転したことが分かりますか。
また、
?
と打ってみましょう。
すると今度は、「MPos:0.000」になっていますね。
X軸上の絶対位置が0に戻ったことを示しています。
絶対位置0はGrblが起動した時点の位置あるいは、コマンドでCntrol-Xでリセットをかけた時点の位置が基準となります。という具合にG00コマンドは、次に続くパラメーターが絶対座標であり、その位置に移動するようにモーターを回転させる命令です。次のXはどの軸上で動かすかを指定します。今回はX軸にしかモーターを接続していないのでXしか使いません。そして次の数値がどのくらいモーターを回転させるか指定します。この値については次回以降、詳しく解説します。
おわりに
今回、オープンソースのファームウェアであるGrblを導入することでPC側からG-CODEを使ってステッピングモーターを制御することができるようになりました。次回はPC側に導入するGrbl Controllerを使ってステッピングモーターを制御してみたいと思います。お楽しみに。(次回へ続く)
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- マイコン1つで複数モーターを操る、制御モジュール「A4988」を学ぶ
ステッピングモーターに制御用ドライバモジュールを組み合わせると、用途の幅がグッと広がります。今回は3Dプリンタなどで、バイポーラ型ステッピングモーターの制御モジュールとしてよく利用されている「A4988」の扱いを学びます。 - 定番IC「TA7291A」でバイポーラ型ステッピングモーターを駆動する
ステッピングモーターを制御する時、トランジスタで回路を組んでもよいのですが、制御用ICなどを用いる方が便利です。今回は定番IC「TA7291A」でバイポーラ型ステッピングモーターを制御します。 - バイポーラ型ステッピングモーターの制御
精密制御に欠かせないステッピングモーター。今回はバイポーラ型ステッピングモーターについて、その制御をマイコン(Arduino)から行います。 - ステッピングモーターの制御
前回までは“マブチモーター”に代表される「直流ブラシ付きモーター」を、マイコン(Arduino)で制御する方法を紹介してきました。今回からは「ステッピングモーター」の制御に取り組みます。 - PWMを使ったサーボモーターの制御
ラジコンカーのステアリングやロボットの関節などに用いられ、角度を指定して動かす機能を持つのが「サーボモーター」です。今回はArduinoからこのサーボモーターの制御をPWMを用いて行う手法を紹介します。 - PWMでマブチモーターを制御する
「マブチモーター」でもおなじみ「直流ブラシ付きモーター」は安価で入手性もよいモーターですが、マイコンからの制御を考えると一工夫必要になります。今回は「PWM」を使った回転制御を紹介します。