L293D 利用して Arduino 戦車を作る

もうちょっと、中途を書こうと思ったのですが、ここ2週間あまりで一気に進みました。モーターの電源をマイコンから給電すると、モーターが動く瞬間にパルスが走って Arduino が落ちます。なので、別系統で電源を入れるようにするために、TA7291P を使ってみました。が、両方の車輪を回すのに2枚必要ならば、面倒だからもともとある L293D を使ってみようかな、と中国から10個ほど輸入しました。輸入って言ったって、ebay.com から買っているだけで、国際郵便で2,3週間で届きます。

Arduino 戦車1号機

回路図とか配線とかは後で出すとして、部品はこんな感じ。

  • L293D フルブリッジのモータードライブ(モーターが2個動きます)
  • LED 2個(動作確認用)
  • HC-05 Bluetooth モジュール
  • タミヤのギアーボックス
  • タミヤのキャタピラ
  • Arduino Uno 互換機
  • Arduino 用シールド基板
  • 100μF 電解コンデンサ、電源用のコネクタなどなど

ってことで、値段的には、3,000円掛かっていないと思います。まあ、その裏側で Bluetooth モジュールをつぶしたり、配線はしたものの動かないシールドが3枚あったりと、試作つぶれがあるわけですが、そのあたりは電子回路初心者なので仕方がない。でも、まあ、半田をひと巻き使い切るぐらいには、半田付けをしたのでそれなりには上手くなってきたかなと。いや、上手いかどうかは別として、半田付け自体に抵抗が無くなってきたのは確かです。

埋め込み画像への固定リンク

これは、先日の JXUG のライトニングトークスで発表したように Bluetooth 経由で PC や Android から動かせます。Bluetooth 2.0 のシリアル通信(SPP)を使っているために、iPhone では動きません。このあたりは、BLE 対応にして別途設計する予定です(手元に HM-10 のモジュールがあります)。

Arduino 戦車2号機用シールド

1台だけ作るのでは面白くないので、2台目も作りました。この度は、Bluetooth モジュールだけでなく何かのセンサーを付けれるように SCL/SDA のラインをあらかじめ入れてい有ります。右上のコネクタがそれです。LED は信号機っぽく、赤/黄/青 の 3つを付けています。

右下のジャンパーピンは、Arduino からの 5V 給電と、別給電を分ける仕組みです。保護回路は入れていないので注意が必要ですが。なんか、Arduino の 5V を並列で入れればモーターのほうも動くのでこうしています…が、ちょっとモーターの操作を厳しくやると(前進、後進を繰り返すとか)Arduino がリセットするので、やっぱりパルス対策は必要みたいですね。パスコンを適当に入れただけではダメなようです。

埋め込み画像への固定リンク

最初は、ユニバーサル基板に沿って、ずずメッキの線を引いていたのですが、だんだん面倒くさくなって空中配線しています。なんか、危なそうな配線なので、もうちょっとチップ回りの配線は考えたほうがいいようです。プリント基板を外注するのでもいいのですが、試作段階だし、ブレッドボードにちょっと毛が生えたぐらいのことしかやっていないので、このあたりは手配線でスピードを稼ぎたいところです。この配線自体は、Vcc と GND を逆にしてしまったので、途中でやり直しています(表裏を見るのを間違えたという)。結果、3時間以上掛かってしまっているという体たらく。

埋め込み画像への固定リンク

↓な感じで、モーターシールドを自作されている方もいるので、自分も頑張りたいところなんですよね。

Festina lente. – Arduino用モーターシールド自作の記録
http://mikilabo.tumblr.com/post/111652585283/arduino

勿論、モーターシールド自体を買ってしまって、そのうえにセンサーの類を乗っけてというのもいいんですが、最初のステップは実地で体得しておきたいところなので、手間暇かけてやっています。

Bluetooth 接続する

Bluetooth 2.0 を使ったシリアル通信なので、結構汎用的に使えます。Android から制御するのが、手軽なのですが、他にも色々できます。

Lumia 1520 に Windows 10 TP を入れて動かしてみたり、

埋め込み画像への固定リンク

デスクトップ PC に Bluetooth ドングルを差して、WPF から動かしてみたりすることができます。

埋め込み画像への固定リンク

スマートフォンや PC 絡みは結構簡単に拡張ができます。

お次は DualShock3 のコントローラーと Wii コントローラーで動かしたいところですね。Raspberry Pi の場合はそれなりに動かせるのですが、まだ Arduino では試していません。このあたりは、RasPi + Arduino のハイブリッドでもいいかもしれません。

ちなみに、Bluetooth 絡みは今週末の .NET ラボ勉強会で解説します。Bluetooth Low Energy の方も含めて(たぶん、BLE の実演のほうは無理かもしれんけど)、色々買い集めた Bluetooth モジュールなどの実物を見せながら、という感じでやっていきます。

カテゴリー: Arduino, Bluetooth パーマリンク