「誰でもわかるマイコン入門」パルスモーターを回す
最初は天文工作の基本であるパルスモーターを回すところから始めたいと思います。
マイコンでパルスモーターを回すには、マイコンから4本のパルス信号を出し、それをトランジスタやドライバICで増幅して、モーターを回すのが基本です。
ネットなどで検索するとほとんどこの方法が紹介されています。それとは別に「マイクロステップ駆動」という高度な制御方法があります。
従来はマイクロステップ制御は、専用のモジュールが必要であり、高価で、大きく、よほどの高級機でない限りあまり使われていませんでした。
ただ、最近は事情が異なってきました。半導体の進歩で、驚くほど小さく、低価格なドライバモジュールが出てきたのです。値段もかつては数万円しましたが、今は千円台で購入できます。こうなると、使わない手はありません。マイコンの制御もパルス信号を一本だせばいいので簡単です。
そのようなマイクロステップドライバのうち、写真のようなモジュールを購入しました。
以下のショップで購入できます。
http://strawberry-linux.com/catalog/items?code=12025
キットですが、ほとんどの部品は実装されていて、ターミナルをはんだ付けするだけです。早速、マイコンにつなげてみます。
今回からは回路図は書きません。写真が回路図の代りです。回路図書くと難しく思われるので。
モーターの電源ですが、8.2Vから45VまでのDC電源です。容量は2A位あれば余裕でしょう。私は、余っていた12VのACアダプタをつなげました。
モーターですが、このマイクロステップドライバはバイポーラ制御なので、バイポーラのパルスモーターが必要です。見分けるのは、モーターから信号線が4本出てたら、バイポーラです。6本出てたらユニポーラです。
試験的に回すだけなら、ユニポーラのモータも使えます。ユニポーラのモータはコイルの真ん中からもう一本線が出てるのですが、それを無視すればバイポーラと同じになります。
また実際にモーターを買うなら、減速機内蔵タイプがよいでしょう。
モータのつなぎ方ですが、マイクロステップドライバの説明書に書いてあります。写真のモータは日本パルスモーター製ですが、オリエンタルモーターとは信号線の色が違うので注意してください。
配線で注意が必要です。マイクロステップドライバ側の9番と10番は写真のようにショートさせて配線してください。
mbedのサイトにアクセスし、右上の[Compiler]のボタンをクリックすれば、プログラムを作れます。
メニュー左上の[new]をクリックします。ここでテンプレートとプログラム名を入力しますが、テンプレートはLED点滅のものそのままでよいでしょう。プログラム名はPulseMotorとします。
そして、main.cppをクリックすれば、プログラムを記述できます。テンプレートのプログラムを消して、次のように入力します。
#include "mbed.h"
PwmOut PulseMotor(p21);
int main() {
PulseMotor.period_us(83140);
PulseMotor.pulsewidth_us(83140/2);
while(1) {
}
}
たった、これだけでモーターが回ります。プログラムの動かし方は前回説明したとおりです。
たった、これだけのプログラムですが、書くのが面倒な人のために、このプログラムをアップロードしました。以下のサイトにアクセスし、[Import this program]で取り込めば、すぐ動かせます。このように他人のプログラムをすぐ利用できるところがmbedのいいところです。
http://developer.mbed.org/users/Honmaka/code/PulseMotor/
モータが回るのを確認したら、流す電流を制限しましょう。初期状態では1.65Aも流れてしまうので、(定格はモーターの種類にもよるが1.5A以内) 1Aくらいに制限します。写真のようにVREFとGNDの間の電圧をテスタで測り、だいたい1Vになるように、矢印のボリュームを左に回せばOKです。
さて、次回はこのプログラムの説明と、スイッチを2つ付け、回転方向の切り替えと、0.5倍速(星景写真モード)の設定ができるようにしたいと思います。いつになるかわかりませんが、お楽しみに。
| 固定リンク
コメント