東京ビッグサイトで開催されたMaker Faire Tokyo 2017の会場にて先行発売されていたタミヤのロボット工作セットを購入し、マイコンボード(Arduino Uno)を載せる改造を試みてみました。
まずはベースとなるロボットキットの組み立てです。プラモデルの要領でランナーからニッパーで部品を切り離し、残った縁をカッターナイフ(アートナイフ)で削る作業を繰り返します。
部品はネジで固定するか、はめ込み式になっているため接着剤は必要ありません。ただし、シャフトやギアにグリスを塗る作業があるため、手は汚れます。^_^;
プラスチックの部品は説明書にある番号を探して選べば良いのですが、ネジは長さの指定を見ながら実物をものさしで測る必要があるため、簡便なもので良いのでノギスがあったほうが組み立て(ネジ探し)は楽かもしれません。
Twitterでコメントいただいて初めて気がつきました。組立説明書のネジやシャフトのイラストは、ほぼ実寸大でした。 😀
ギアボックスも自分で組み立てます。部品を差し込む順番や向きが説明書の絵を見ただけでは分かり難いため、なかなか面倒な作業です。ケースが透明になっているのは教育的な側面もあるのでしょうね。ギアボックスを組み上げた後で「車輪(キャタピラー)が動かない!」と万一なっても、外から確かめることができますね。あまりやりたくない作業ですが…
ちなみにロボットの基本構成ではロボットの底にストッパがつきます。プログラムバーにとりつけたカム(突起)が、このストッパーを押し下げてキャタピラーが浮き上がり、ロボットが前進したり、停止したりの動きを作り出すようになっています。単純な仕掛けですが上手くできていますね。
まずは改造前のロボットが完成です。ロボットの顔のような部分の中は空洞になっています。ここにマイコンボードを載せて改造をしてみます。
スイッチサイエンスさんのWebサイトから購入した電子部品。連休(海の日)に突入したため、すぐには商品が届かないだろうな!と諦めていたら「営業日14:00までの注文は当日発送」のお知らせを見つけて、おもわず衝動買いしてしまいました。注文翌日の午前中にはクロネコヤマトのポスト便で投函。ありがとうございます。
みんな大好き! Arduino Uno R3。 数年前にも購入して遊んだことがありましたが、ピンソケットに端子名が印刷されていたり、基板の底を覆うケースが付属していたりと地味ですが便利に進化していますね。
改造前は電池ボックスとスイッチを挟んでつながっていたモーターをArduinoで制御するモータードライバにつなぎ替えて簡単に改造完成です。モータードライバはArduinoシールド製品を購入したのでピンソケットに差し込むだけで収まり良くにArduino基板に固定できました。ピンヘッダと端子は自分でシールド基板に半田付けする必要がありましたが、久しぶりの電子工作はそれはそれで楽しかったです。細かいシルク文字が見え辛かったのでメガネを外してハンダ付け作業をしたところ、ハンダ(フラックス)の煙が目に染みたことにショックを受けましたが… ~_~;
パソコンからArduinoにシンプルな確認プログラムを書き込んでロボットを動作させてみた動画です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
#include <DRV8835MotorShield.h> #define LED_PIN 13 DRV8835MotorShield motors; void setup() { pinMode(LED_PIN, OUTPUT); // uncomment one or both of the following lines if your motors' directions need to be flipped //motors.flipM1(true); //motors.flipM2(true); } void loop() { digitalWrite(LED_PIN, HIGH); motors.setSpeeds(150, -150); delay(2000); digitalWrite(LED_PIN, LOW); motors.setSpeeds(0, 0); delay(500); digitalWrite(LED_PIN, HIGH); motors.setSpeeds(-150, 150); delay(2000); digitalWrite(LED_PIN, LOW); motors.setSpeeds(0, 0); delay(500); } |
当初からゴールを考えないままに、衝動買いで始めてしまったため、センサーも通信デバイスもありません。ということでロボットの動きは、あまり工夫はできないのですが、自分で調整したパワーやタイミングのとおりに、ロボットが動いてくれるとやはり嬉しいものです。
ちなみにリチウムイオン電池ではパワーが足りなかったようで、モーターをフルパワーで回すと電圧が低下して、Arduinoがリセットされてしまうようです。Arduinoとモータードライバーの電源を共通にしたことが無理だったみたいです。Arduinoとモータードライバーの電源を分離するのが次に残された課題ですね。と書きながらすでに電池ボックスをあちこち探し回っています… ^_^;
今回の改造で使用した部品は以下の通りです。
ベースロボット | タミヤ カムプログラムロボット工作セット |
---|---|
マイコンボード | Arduino Uno R3 |
モータードライバー | Pololu DRV8835 Dual Motor Driver Shield for Arduino |
バッテリー | リチウムイオン電池900mAh |
充電器 | 5V出力付きリチウムイオン電池充電器 |