フォロ・ロボットを改造してみた
はじめに
こんにちは、けりです。
今回はエレキット社製のロボットキット「フォロ」を改造してみたので、簡単に紹介します。
フォロについてはこちらの公式動画をご覧ください。
このロボット、6足歩行のよちよち歩きがとてもかわいいんですよね。
小さい子向けのキットのようですが、目に赤外線センサがついていて、障害物を避けたり、物体に追従したり、結構よくできています。
ただ、基本的には探索モードと追従モードの2モードでしか遊べず、カスタマイズができません。
そこで今回はこのロボットを改造してESP32マイコンで自由に制御できるようにしてみました。
また、9軸モーションセンサ(MPU9250)も搭載したので、姿勢推定しながらの自律走行などができるようになりました。
参考にした記事
フォロの改造は既に電子工作界隈で話題になっていたようで、Watako さんの記事 フォロ君の簡易回路解析 – Watako-Lab. がとても参考になりました。
ちなみに、Watako さんの記事に出てくるフォロの基板は Ver1.0
でしたが、私が購入したフォロの基板は Ver2.0
にバージョンアップしていました。
ただ、コネクタや結線はほぼ同じで、追加された電解コンデンサで電源の安定化を図っているようです。
改造前の基板
さて、こちらが改造前の制御基板です。
真ん中の丸いのがスピーカー、ちょっと上の横向きのICがマイコン(EM78P259NSO18J)、右の縦向きのICがモータードライバ(MX1508)です。 あとは下端の左右にフォトリフレクタがあります。
ちなみに、Ver1.0基板のマイコンは無刻印だったそうですが、Ver2.0基板のマイコンには EM78P259NSO18J
と型番の刻印がありました。
ググってみたところ、台湾のELAN Microelectronics 製の8Bitマイコンのようです。
スペックはかなり低そうなので、このマイコンで頑張るよりはスッとESP32に差し替えるのが正解ですね。
基板からマイコンを剥がす
モータードライバやフォトリフレクタなどはそのまま使いたいので、マイコンだけを半田で剥がします。
このあたりは普段の電子工作の腕の見せ所ですね!
マイコンの全部の足を素早く半田でひたひたにして溶かして、一気に剥がします。
半田ごてを2本使う方法もありますが、慣れれば1本でも大丈夫です。
他にもヒートガンを使う方法もありますが、慣れるとはんだごてのほうが素早く取り外せます。
ちなみに、スピーカーが一度取り外されているのはマイコンを取り外す際に邪魔だったからです。
改造後の基板
上記でマイコンを剥がした基板に対して、ESP32を取り付けた基板がこちらです。
ESP32モジュールを裏返して両面テープで止めて、あとは空中配線で接続しました。
3.3VのレギュレータはESP32モジュールの右上あたりに直にはんだ付けされています。
ちなみに、ESP32モジュールの裏側にはピンアサインが書いてあるのですが、今回はこれがめっちゃ役立ちました。
左側にある青い基板はそこら辺に転がっていた9軸センサモジュール(MPU9250)です。
頭の向きなどを推定するために取り付けました。
ピンアサイン
現状、ESP32のピンアサインはこちらのようになっています。
機能 | ESP32 | 注記 |
---|---|---|
左目LED | IO26 | 元はマイコン直接続だったので100Ωの抵抗を追加 |
右目LED | IO25 | 元はマイコン直接続だったので100Ωの抵抗を追加 |
ボタン | IO0 | 内蔵プルアップ ESP32のBOOTモード切り替えスイッチ兼用 |
スピーカーFET | IO27 | PWM駆動 |
フォトリフレクタ出力FET | IO2 | 左右連動 |
フォトリフレクタ入力(左) | IO35 | アナログ入力 |
フォトリフレクタ入力(右) | IO34 | アナログ入力 |
モータードライバ並進1 | IO33 | PWM出力 |
モータードライバ並進2 | IO33 | PWM出力 |
モータードライバ回転1 | IO12 | PWM出力 |
モータードライバ回転2 | IO13 | PWM出力 |
注意点として、フォトリフレクタのアナログ信号は理論的には電源電圧の6V程度までスイングするのですが、実測したところ3V程度に収まっていたため3.3VのESP32に直接接続しています。
本当は3Vのツェナーダイオードをつないでおくといいみたいですが、まあ抵抗値も10kΩと大きいので壊れることはないでしょう。
お仕事とかでは絶対にやっちゃだめですよ?
改造した基板をフォロに取り付け
ESP32の分だけ基板が若干分厚くなりましたが、ちゃんともとの場所に収まっています。
電源スイッチだけ外に出ていますが、それ以外は元のフォロと見た目は全く変わりません。
しかし、中身はESP32に変わっているのでWiFi経由での制御やファームウェアの書き換えができるようになりました。
宴会芸
さっそく改造したフォロを動かしてみました。
フォロロボを魔改造して宴会芸ができた pic.twitter.com/19fWj0Dp2z
— けり (@kerikun11) March 3, 2024
ちなみに、上の動画のようにジャイロセンサを使用して同じ姿勢を維持する動作を、マイクロマウス界隈では宴会芸と呼ばれています。
操作画面
ESP32はWiFiに対応したマイコンなので、スマホなどから操作することができます。
こちらはESP32をウェブサーバーにしてスマホのブラウザで操作できるようにしたものです。
今後余裕があればジョイスティックなどをつけたいですね。
ただ、WiFiだと若干タイムラグがあるので、できればBLEとかで操作したいと思っています。
ソースコード
一応、今回の改造で使用しているソースコードは GitHub に公開しています。
ただ、あまりきれいに書いていないので参考程度にしてください。
今後も随時更新していく予定です。
おわりに
さて、エレキットのフォロを(魔)改造して、自在に操れるようにしてみました。
各機能の動作確認はできたので、これからいろいろ遊んでみたいと思います。
それにしてもこのフォロキット、3000円程でこのクオリティはすごいですね。
ちょっとした動きからも開発者の愛を感じますし、その辺も再現していけたらいいなと思っています。