サーボモーター(2) 360度回転
前回、マイクロサーボモーター SG90をいじりました。
で、もう一個買って「赤上げて、白上げて、赤下げないで、白下げる」の旗揚げゲームロボットを作ろう、と思ったのですね。
それでまた、今華電子さんに行ってきたのですが、SG-90というのは2種類ありました。
70NTD(約280円)のこちら、
と80NTD(約320円)のこちら
で、ワタクシ、単純に「どうせなら360度回せるほうがいいじゃん?」と考えまして、後者の方を購入しました。
で、回せるのはいいとして、制御方法どうなるんだろうな?
よくわからないんで、前回と同じ0°⇒45°⇒90°⇒135°⇒180°⇒0°を繰り返すつもりのスケッチのままで、モーターを差し替えてみたら、こんな動作になりました。
つまり、「指定した角度まで回って、そこでとまる」という、前回のとは全く違っています。いろいろ試してみました。
#include <Servo.h>
Servo mypointer;
に対して mypointer.write( );の引数を変えて試してみましたところ、
0 左回り高速
70 左回り低速
90 停止
110 右回り低速
180 右回り高速
のようになりました。こちらの場合、引数は角度じゃないんですね。実際の動画を載せておきます。
0 左回り高速
70 左回り低速
90 停止
110 右回り低速
180 右回り高速
という具合でした。
同じサーボモーターでも360度回転のタイプは、制御方法が全く別物ですね。どうしても旗揚げゲームロボットにこだわるなら、やはり前回の180度回転のタイプのものを二つそろえたいところですが、360度回転のこちらはこちらで別の応用を考えましょう。