小坂です。加速度センサを使ってDCモーターの制御を行ってきました。

しかし動くだけではなく砲台を載せたいということもあって3Dプリンタでサーボのマウントを出力して2軸の砲台を作りました。2軸ということもあって、砲台の操作にはジョイスティックがうってつけです。

 

_dsc4799

 

というのもジョイスティックの中身は可変抵抗が2つ内蔵されているだけです。扱いが非常に簡単な上に、ほとんどの人が家庭用ゲーム機で触れたことがあるので感覚的に操作ができます。

 

img_3324

 

いままでコントローラーはブレッドボードだったので、そこにジョイスティックを挿せばいいのですが、wiiヌンチャクを使ってみることにしました。

名前の通り任天堂のwiiで使えるコントローラーなのですが、加速度センサーとジョイスティックと2つのボタンがあり、arduinoに繋いでコントローラーとしても使うことも可能です。ということで、これを使わない手はありません。

 

_dsc4806

 

砲台も設置して、コントローラーもブレッドボードからwiiヌンチャクに付け替えて、加速度センサーでキャタピラをジョイスティックで砲台を動かすプログラムを書き込みました。

しかし、ここで問題が起きました。

いままで順調に動いていたDCモーターなのですが、arduinoにサーボを繋いで動かそうとしたところ、片方のキャタピラが全く動かなくなってしまいました。サーボはプログラムの通りに動いています。

どうやら、サーボを動かすためのライブラリを使用すると、arduinoでPWM制御できるピンの数が減るみたいで、その減ってしまったピンにDCモーターが繋がれていたために動かなくなってしまっていたようです。

文章にすると単純ですが、このライブラリの特性が原因だと突き止めるまでに2週間もかかってしまいました。こういうことは電子工作ではよくある話ですが、知識が無いと全く前に進めなくなってしまうので、ネットをつかった検索能力は電子工作において最も重要かもしれません。

動かしてみた映像がこちらです。

 

砲台にはまだ何も付いていませんが、モーターでBB弾を飛ばすために砲身の設計を進める生徒さんや、スピーカーをつけて発射音を鳴らそうと考えている生徒さんなど、やりたいことはそれぞれのようです。それぞれの製作がスムーズにいくよう頑張りたいと思います。

_dsc4807

_dsc4800

_dsc4797

余談ですが最近はブラウザから、arduinoにプログラムを書き込むことができます。scratchなどと同じオンラインエディターということです。公式ではありませんが「codebender」というサイトで提供されており、ログインすればどんなPCからも自分の開発環境にアクセスできるのでロボット工作の授業でも使い始めました。

Share