2016年5月7日土曜日

DRV8835で2輪倒立ロボをつくってみました

全体の写真です。白いプラスチックの半円は、転倒したときのダメージ軽減用。



裏側です。電池は単三型Ni-MHを4本。タミヤのダブルギヤボックスをギヤ比114.7:1で使っています。タイヤ径は約55mm。


Arduino ProMini 3.3Vの互換品がeBayで250円くらい。ただし、シリアルのピン配列が純正品と逆でした。



ジャイロ加速度センサーのMPU6050を載せたGY521というモジュール。eBayで200円くらい。Amazonでも買えます。このモジュールには3.3Vを作るためのレギュレーターが載っていますが、入力電圧範囲が3-5Vらしいので、ProMiniから3.3Vを供給しています。I2C通信です。



モータードライバのDRV8835。小さなチップにフルブリッジが2回路搭載されているので、これ1個でDCモーター2個ドライブできます。モーター用電源とロジック電源が分かれているのも使いやすい。モードピンをHIGHにして、ENABLEピンにPWMを、PHASEピンに回転方向を入れています。



距離センサーはGP2Y0A21YK。電源は電池から直結。出力は0から3.3Vの範囲に収まります。距離(mm)の計算はかなりいい加減ですが、95000をanalogRead()の値で割って30を引いています。



ライントレース用センサーは、ヴィストンで安売りしていた反射型赤外線センサーを少し改造。ProMiniから3.3Vを供給し、analogRead()で読み込んでいます。



ライントレースの動画です。


2017年11月5日
その後追加した赤外線リモコンによる操縦機能も入っています。

2017年11月8日

2016年5月2日月曜日

ミニ2輪倒立ロボにライントレースをさせてみました

全体の写真です。ライントレース用に反射型赤外線センサー、衝突防止用に距離センサーを追加しました。



赤外線センサーは、ヴィストンで安売りしていた反射型赤外線センサーを改造して、出力電圧が0から1ボルトになるようにしました。(ESP8266のアナログ入力電圧の範囲に収まるように)



マイクロテクニカのブレークアウトボードには、アナログ入力の配線がないので、WROOM02に直接端子をはんだ付けしました。(写真右上の白い線が接続されている)




隊列を組んでライントレースをさせたいので、衝突防止用に距離センサーを使っています。シャープのGP2Y0E03というセンサーで、I2Cで通信します。



ライントレースの動画です。懐中電灯を検出して停止します。懐中電灯を取り除くと、また動き出します。