お知らせ:この記事はJLCPCBの提供でお送りしています。
みなさんこんにちは。今回から何回かに分けてキューブ型ロボットトイ”toio”を使った台車ロボットの製作記を紹介していこうと思います。
ATOM Mate for toioの波に乗り遅れる
最初に書いたように、toioとはキューブ型ロボットトイです。toioは公式に発売されているゲームカセットとコンソール、キューブを組み合わせて、キューブを動かすゲームとして遊ぶだけでなく、ユーザーが自由にプログラミングして遊ぶことも想定されています。そのため、各種技術仕様が公開されていて、Makerの間ではtoioのキューブ上部に何か取り付けてカスタマイズしたり、自分でコントローラーを作って動きを制御したりする対象として使われていることも多いです。
スイッチサイエンス、M5Stack社とソニー・インタラクティブエンタテインメント社コラボによる新製品「ATOM Mate for toio™」を2022年11月15日に販売開始、初回ロット限定特典付きhttps://t.co/xGMAGbtnt4
— Switch Science (@ssci) November 15, 2022
そして2022年11月、こちらもMakerによく使われるマイコンモジュールであるM5Stackの開発元であるM5Stack社とtoioがコラボした、”ATOM Mate for toio”が発売されたのでした。toioの動きを制御する通信はBLEで行われるため、ESP32を搭載しているM5StackシリーズのM5Atomをtoioの上に載せてしまえば自律走行できるじゃないか、というアプローチの製品です。正面には測距センサであるToFセンサが搭載されており、前方の物体との衝突も回避できます。toioの最大積載重量は200gと、サイズの割に結構大きいため、さらに何か上に載せたり、引っ張らせることもできそうです。
そして今になってふと台車ロボットを作りたくなり、これを買えば基礎検討ができると思い立ちました。しかし残念ながら2023年2月末現在、ATOM Mate for toioは売り切れ状態になっています。完全に波に乗り遅れました…
仕方ないので自分で設計する
そんなわけで波に乗り遅れたのですが、幸い先ほど書いた通りtoioの技術仕様はかなり公開されているため、自分でアタッチメントを作ったり好きなマイコンから制御したりすることができます。というわけで、toioを使ったミニ台車ロボットを自分で設計することにしました。現時点の仕様はこんな感じです。
- toioの制御はESP32-S3を使って行う
- 上から見たサイズは50x50mm程度に収める
- 前方斜め下と前方斜め左/右を見る測距センサを載せる
1つ目のESP32-S3を使う、というのは単純に新しいマイコンを使ってみよう、という動機です。
次の50x50mm程度に収める、というのは、3.に書いた通り、toioの前面に追加でセンサを付けるため、どうしても一回り大きくなってしまうということと、toioの上に基板や、台車のペイロード(荷物)を載せたいということから決めたターゲットです。
3.の追加のセンサですが、周囲の障害物検知が目的です。前方斜め下を見るセンサについては、障害物検知の他に、机などの端からtoioが落ちてしまうことを防止する目的もあります。toioには特殊なパターンが印刷されたシートが付属していて、このパターンをキューブ側で読み取ることでキューブの絶対位置が検出できます。この絶対位置情報を使えば落下しないように制御することも可能ですが、今回はシート外の机の上でも動かしたいと考えているため、このようなセンサ構成としました。
toioに付けるベース部分を作る
まずは手元で試作
設計方針の大枠が決まったところで、まずはtoioに基板などを取り付けるためのベース部分の設計を始めました。toioの形状の仕様を読み、とりあえずtoio上部に勘合するキャップパーツを自宅の3Dプリンタでプリントしてみました。ただ、仕様ページにはキューブ上部の突起の位置については記載があるのですが、toioに標準で付いてくるキャップパーツの内寸は記載されていませんでした。そこでノギスで実測してみると28.8mmちょうどだったので、CADデータ上では内寸は28.8mmとして、キャップパーツを設計しています。
できあがりはこんな感じです。ノギスで測ると3Dプリントしたキャップパーツの内寸は28.5mm程度となっていました。
試しに取り付けてみました。純正キャップよりも内寸が狭い分固いですが、十分付け外し可能です。
JLCPCBにオーダーする
自宅の3Dプリンタで検証ができたところで、JLCPCBの3Dプリントサービスに出すためのデータ作成に移りました。先ほど述べたセンサ部分については、自宅の3Dプリンタで取り付け角度などを検討してからJLCPCBにオーダーしようと思い、あとから取り付けられるような固定穴と配線穴だけを用意しています。toioとの勘合部分については、寸法公差を考えて、わずかに突起部を作っています。勘合がきつすぎる場合は、あとから突起部を削って調整する作戦です。(両面テープでエイヤでもいい気もしますが…)
今回はJLCPCBのSLA 3DプリントでLEDO 6060 Resinを選択しました。50 x 50 x 10mmと小さいこともあるのでしょうが、1個で$1.39と激安でした。送料の方がはるかに高いので、いくつか、別件で使おうとしているパーツと合わせて発注しました。
まとめ
今回はキューブ型ロボットトイ”toio”とカスタムパーツを組み合わせて作るミニ台車ロボットの製作記の第1弾として、toioに取り付けるベース部分の製作記をお届けしました。しばらくこのシリーズを続ける予定です。お楽しみに!