歩行ロボットを制作するための基礎~サーボ編

歩行ロボットを制作するための基礎~サーボ編

歩行ロボットを制作したいという方向けに書いてみます。
(私は趣味でロボットつくってるだけの人間です)

歩行ロボットに必要なことは主に以下の通りです。
 1.アクチュエータ制御(サーボモータなど)
 2.センサ関係
 3.バッテリ関係
 4.有線・無線によるコントロール

今回は1のアクチュエータ制御、特に一般的に使われている
サーボモータの制御について書きます。

Arduinoで制御する場合はとても簡単です。

準備するもの

今回使っていく部品は、以下の通りです。

 ・Arduino UNO
 ・USB A type - B type(Arduino UNOとPCをつなぐためのケーブル)
 ・サーボモータ(例 Corona製のマイクロサーボ)
 ・ジャンパワイヤ(最低でも3本以上)

サーボモータは4.8V駆動のものならなんでも良いです。
秋月電子などで入手可能です。

部品のつなぎかた

電子回路設計ツール fritzingで描いてみました。

サーボの信号線(黄色)をボードの2番ピンに
同じく電源(赤色)を5Vピンに
GND(黒色)をGNDピンに

それぞれ接続します。

実際につなぐと上の画像のようになります。
ジャンパワイヤをつかってサーボとボードをつなぎます。

プログラム

プログラムですが、テスト用にこんな感じに書きます。
(Arduino IDEに最初から入っているサンプルプログラムでも可)

今回のプログラムはfor文を用いてスムーズに回転するようにしてありますが、
loopのところを下記のように変更しても"大体"同じ感じになります。
(delayは変更する必要があるかもしれませんが)

void loop(){
 s0.write(0);
 delay(500);
 s0.write(180);
 delay(500);
}

http://youtu.be/MdQzHvEb5fo

実際に動作させると上の動画のようになります。

サーボ1個制御するだけなら、ボードの5Vピンで問題ありません。

注意すべきなのは複数になった場合です、別電源が必要になります。


とりあえず、これで1個動かすことができました。
複数動かすのもプログラムを少しいじるだけでできますので、ぜひ皆さん挑戦してみましょう。

【おまけ】12個のサーボを同時にうごかす!

ほとんどのArduinoは12個までのサーボを同時に接続することができます。
プログラム自体はさきほどのやつをちょっと弄っただけです。

そして、なんやかんやあってできたものが以下の動画になります。

http://youtu.be/QsShcOKQkt8

おしまい

今回は初歩のサーボ制御について書かせていただきました。

先ほどのおまけで12個のサーボが制御できると書きましたが、
歩行ロボットを作る上では現実的とは呼べません。(作れるには作れる)

12個MAXでつくった場合、デジタルピンがすべてサーボに占領されるため
センサ類が使えなくなる場合もあります。

次回は多数のサーボを使うのに役立つ方法などを書きたいと思います。

ここまで見ていただいた方、どうもありがとうございます。

一応今後の方針としては、
低予算でつくれる低自由度の2足歩行ロボットの作り方を考えていこうと思います。

【補足】サーボモータのケーブルの色について

今回使っているサーボモータのケーブルの色に注目していただきたいと思います。
国内で流通しているサーボには2種類あります。

Futabaなどは白・赤・黒の3色
その他、黄・赤・黒の3色

赤は電源(4.8~6.0Vなど)
黒はGND(0V)
白と黄は信号線

となります。

違反について