机上の空論主義者

-♰- 有言不実行の自身をブログ名で戒めろ -♰-

【ESP32】小型擬似オムニロボットを自作したよ:)

こんにちは~~~


皆さん、toioというSTEM教育用のロボットをご存じですか?
このロボットは約3cm x 3cmの極小サイズでありながら、エンコーダ付きの2輪駆動でスピーカーやモーションセンサ、磁気センサ、絶対位置センシング(仕組みは不明。赤外線カメラ?)などの多彩な機能を搭載しています。
専用のマットを用いて絶対位置が取得できるらしいのですが、マットの色にパターンがあり、そのパターンから位置を推定しているのだと予測されます。

https://toio.io/blog/img/ac37bb5e6c89132532cb48b0089c6e3e3d45cf13.jpg?v=20201102



さて、この高機能なtoioですが、2輪駆動なので回転移動を加えなければ移動方向が限られています。右に進みたければ、90度回転してからでないとその方向に進めません。移動方向の自由度を上げるためには、オムニホイールやメカナムホイールを用いたロボットが用いられています。



私は以前、メカナムホイールを採用したロボットを作成していましたが、今回はオムニホイールの特徴を持つ小型の移動ロボットを作ってみました。

まあ、toioと比べてエンコーダも光学センサも搭載していない貧弱マシンではありますけどね。。。


製作したもの

自作基板用のモータドライバシールドを設計し、

ume-boshi.hatenablog.jp

それを用いて ↓ の製品の仕組みで擬似オムニホイール駆動式のマシンを作成しました。この製品は、M5stickC用のやつですね。

www.digikey.jp

使用部品

主に使用した部品は下記のものです。自作基板はM5stackみたいなものだと思ってもらえれば大丈夫です。

回路

雑ですが、モータ動作のための回路は ↓ の画像のようになっています。

f:id:ume-boshi:20210120223350p:plain:w400
モータを動作させる回路のところだけ参考にしてください。

左側のほうにある、13pinと9pinのところが自作基板との接続部分になっており、そのうち8ピンを用いてモータを制御しています。モータ制御部は完全に別電源にしたいと考えた結果、その8pinの信号についてフォトカプラアレイ(TLP291)を介して伝達するようにしています。フォトカプラ使っているので、抵抗がたくさんありますね。
別電源として制御される8信号を、最終的にDRV8835のほうに突っ込んで、モータが動作するような感じです。

一応、エンコーダが4コマで使えるようになっています(移動を取得する術が思いつかなかったので使っていませんが)。



基板図については、ひどすぎるのでまだ公開できないです。。。


モータの取り付け

非常に雑な方法ですが、木材をカッターで切って作りました。角をうまく削って、4つのモータが45度で入るようにし、それを木工用ボンドで取り付けるという荒業。

工作なんて必要機能が満たせるなら、これぐらい雑でいいんですよ!(なお、既に気に食わなくて3Dプリント用データは作成した)

f:id:ume-boshi:20210121195413j:plain:w400
木とボンドとテープで作る。工作の初歩です。



モータの先端には、グリップ力を高めるための木工用ボンドがついています。

f:id:ume-boshi:20210122054412j:plain:w400
グリップ代わりにボンドがついている。

最後に、布テープで木材と基板を繋げて終わりです。


試作品

試作したデバイスが ↓ です。

f:id:ume-boshi:20210121195608j:plain:w400
まだまだ試作感がありますね



そして、ただ前後動作させた例が ↓ の動画。

youtu.be

外部電源対応にしたせいでパワフルになりすぎ、全然まっすぐ進んでいませんね!
どうやって修正しようかなぁ。。。


おわりに

皆さん、「何に使うんだろう?」と疑問に感じているのではないでしょうか。こいつに関しては、とりあえずラジコン化したいと考えていますが、さらに発展形も既に考えています。楽しみにしておいてください... :)

まあ、就活も研究も何もかもうまくいっていないので、お見せできるのはずいぶん先だと思いますが。