yamameのアイコン画像
yamame 2021年02月03日作成 (2021年02月04日更新)
製作品 製作品 閲覧数 1687
yamame 2021年02月03日作成 (2021年02月04日更新) 製作品 製作品 閲覧数 1687

掌に乗る2足歩行ロボットの製作

はじめに
 ロボットが欲しいな、と思いますが、現実にはなかなか高価で手に入りません。また、機能が高い分、大型化しています。掌に乗るロボットにしよう、ということで作ってみました。

4サーボモーターでの2足歩行<SG90相当>
 SG90のサーボモーターをいくつか持っていましたので、片脚2つで計4つ使ってみました。コントロールする頭部にはM5AtomMatrix。LEDをたくさん持っているので表情を作ります。バッテリーは単4電池3個を使いました。GPIOピンは4つ使います。
キャプションを入力できます
 サーボの配置は脚長にしたり、ズングリにしたり。

マイクロサーボに変更
 ある時、ひょんなことからHOBBY KINGのマイクロサーボを入手します。HK15318B等を6個も! 一気に小型になりました。
キャプションを入力できます
 それならばと、腕を付けて一気に人間型に。バッテリーもランドセルを背負うようにデジカメの3.7Vバッテリーに変更。これでM5Atomと6個のサーボモーターを運用できるのには驚きました。

キャプションを入力できます
さらなるグレードアップ
 OLED液晶を使って、ESP32_Facesというライブラリで表情を出せることになりました。さらに、距離センサーを導入してみました。障害物に接近すると一旦後退して、乱数で方向や角度を変えて進路変更するようにしました。これらはI2CでGroveAポートから利用しています。他のI2C利用のものを並列で使えるようです。
https://youtu.be/69iWsNzZdsk
キャプションを入力できます
サーボモータドライバボード導入
 機能を拡張するために、サーボモータドライバを導入しました。6チャンネルあれば十分なのに、なかなかいいドライバボードは見つからず、結局16チャンネルある一般的なPCA9685 16チャンネル PWM Servo モーター ドライバー を導入しました。ただし、私には必要ないものを取り去って軽量化とコンパクト化を図りました。このドライバーボードは3.3Vでも動作するのでバッテリーに負荷が少なくありがたかったです。(5Vのものは動作不安定になりました。バッテリーが保証された現在では使えるとは思いますが。)

M5AtomEchoに変更<声をゲット>
 GPIOピンをそんなに使わなくなったので、MatrixからEchoに変更。これによって声を出せるようになりました。スケッチの中に配列変数のかたちで入れておいて、必要な時にAquesTalkを利用して発声できるようにしましました。

キャプションを入力できます

バッテリー問題
 はじめのころは単4電池。それがデジカメバッテリー。いろいろ身に纏ってからはそれでは不十分になってきたので(フル充電しても、液晶やEchoは動作するもののサーボはすぐに動かなくなる。容量が大きくなっても同じ。)9V乾電池を降圧モジュールを介して電源としてみました。動きが安定しました。もっとも、乾電池では重すぎるので充電式のものに変更。30gという軽さにも助かっています。
キャプションを入力できます
 軽くなったバッテリーを背負って、嬉しそうに歩くロボット。
キャプションを入力できます
 ただ、距離センサーが前方だけを感知するので、斜め方向から障害物に向かうと避けることができません。センサーを2つか3つ付けて感知するようにすればいいのかもしれません。とりあえず、緊急の場合を想定し(机から落下して壊れたことがあります。)M5StackGrayとBLEでつないで、コントロールできるようにしています。

キャプションを入力できます
https://twitter.com/i/status/1334748499510870024
こんな感じです。
キャプションを入力できます

3
  • yamame さんが 2021/02/03 に 編集 をしました。 (メッセージ: 初版)
  • yamame さんが 2021/02/04 に 編集 をしました。 (メッセージ: 掌サイズを表示しました)
ログインしてコメントを投稿する