今回ご紹介するのは、話題のクラウドファンディング「Makuake」で、なんと目標額の8,200%を達成している黄色い犬型ロボット「Mini Pupper」(ミニぷぱ)!
いや、8,200%って・・(すごい)。
黄色い犬型ロボットと言えば、あの有名な高性能な四足歩行ロボットを思い出しますよね。果たしてその「家庭用バージョン」なのでしょうか!?
とにかく、まずは開封して電源入れてまもなくの様子を見てください。製品に付属のコントローラで操作していますが、ご機嫌な動きですよね。
■動画 「Mini Pupper」がやってきた!!
この可愛らしい「Mini Pupper」、自分で組み立てるDIYバージョンと、すでに完成されていてラジコンの様に動かすことの出来る組み立て完成バージョンがあります。今回、ロボスタは完成バージョンの方を先行入手しました!
レビューで「Mini Pupper」を体験してみて、コントローラで操作して楽しい、カスタマイズして楽しい、周辺機器を接続したりプログラミングして楽しい、3つの楽しさを改めて実感しました。記事でその片鱗を紹介します。
なお、Mini Pupperの概要については以前の記事も読んでね。
「Mini Pupper」のクラウドファンディングの締め切りは、2022年2月末日までとなっています。なお、本格出荷前のため、このレビューの内容や写真等、実際の製品とは異なる場合がありますので、その点はご了承ください。
開封の儀
何はともあれ開封の儀。
予想していたより大きめな箱で届きました。
開けて見るとすぐに黄色い本体が登場!!
Mini Pupper本体と、充電ケーブル、本体の小さなネジを扱うドライバーに、家庭用ゲーム機のような「コントローラ」が入っていました。
あぁ、早く動かしたい!!
操作は簡単!2ステップで、もう動く!
Mini Pupperの前面には、240×320のスクリーンが装備されていて、デフォルトでいろいろな表情が表示されるようになっています。メカメカしさの残る4本の足は、カーボン素材でできていて、細いながらも丈夫そう。スクっと元気よく立ち上がってMini Pupperの胴体を支えています。
起動とコントローラのペアリング
起動の操作は簡単、たったの2ステップです。
1.「Mini Pupper」の腹部にある電源ボタンをポチッと押すと、横のランプが青色に点灯
2. コントローラのホームとシェアのボタンを長押しして「Mini Pupper」と同期
この2ステップで、「Mini Pupper」を起動し、コントローラとBluetoothでペアリングすることができます。
起動をすると、こーんな可愛らしい顔が表示され、冒頭の動画のようにコントーラーを使って操作することができるようになります!
DIYバージョンなら組み立てる楽しみも
DIY版を購入した場合、自分で組み立てる楽しみもあります。今回のレビューは完成版なので、組み立てや、配線、必要なソフトウェアのインストールなど、難しい部分をすっ飛ばして、すぐに動かせるロボットとして楽しむことができます。
コントローラで初心者でも楽しく遊べる
コントローラ操作だけでも十分に楽しめるMini Pupperは、前後に動くだけでなく、上下に動かしたり、左右に傾けたりすることも可能です。特に、本物の犬のように、お尻をあげてみたり、頭を傾けながら動く様子には、「動物感」と可愛らしさを感じます。
中でもびっくりしたのは「機敏さ!」
歩き出すと同時に、機敏にトコトコと足踏みを始めます。身体の向きを変えながらバランスを取ったり、ぐるっと回転したり、左右の傾きをねじって変更したり。「Mini Pupperのダンス」を操作できるようになるかもしれません。
プログラミングや周辺機器との連携に対応
しかし、「Mini Pupper」は、ラジコンとは大きく違ってプログラミングできるだけでなく、カメラやLiDAR(レーザーセンサー)と組み合わせて、本格的なロボティクス技術を試す楽しみを味わえそう。
プログラミングでダンスをさせたり、AIカメラで家族の顔を認識させたり、LiDARで自動運転の基礎を勉強したりできそうです。
Mini Pupperの創業者によると、初心者からロボティクスやプログラミングに精通している人、子供から大人まで楽しむことができるように、かつては「大企業や研究機関が扱う特殊なロボット」だった四足歩行ロボットを、「家庭で簡単に楽しめるロボット」にしたい、と開発したそうです。
Mini PupperはROS(Robotic Operation System)を採用しています。PythonやC++などのプログラミング言語が使える人は、新しい動きを追加したり、障害物を乗り越えたりと、高度な動きを習得させることができます。また、GitHubのオープンソースコードを活用することで、Mini Pupperが「できること」は、ユーザーが今後増えていくことでさらに拡大することが期待できます。
オープンソースでコードが公開されているので、プログラミングすることで自分好みのMini Pupperへ大変身。
https://github.com/mangdangroboticsclub/QuadrupedRobot
「Mini Pupper」の顔を変えてみた
せっかくなので「Mini Pupper」を即興でカスタマイズする方法を紹介しましょう。
顔の変更方法
「Mini Pupper」の顔は、簡単なGUI操作で変更することができます。そのためにはディスプレイとUSB接続のマウス、USBメモリーが必要になります。
パソコンなどで、「Mini Pupper」に顔として表示したい画像をあらかじめ用意します。その画像はUSBメモリーに保存します。そのUSBメモリーを「Mini Pupper」の背中にあるスロットに挿入します。
ディスプレイに表示されているubuntuを操作し、本体の顔写真が保存されているフォルダを開きます。
(cd ~/Robotics/QuadrupedRobot/Mangdang/LCD/cartoons/)
フォルダ内の元画像から変更したい画像に入れ替えます。
(変更したい画像の名前を、入れ替える元の画像の名前にしてコピーします。元の画像を上書きして消さないように、元の名前ファイル名を変更するか、別のフォルダ等にコピーして残しておきましょう)
これで「Mini Pupper」の顔の変更作業は完了です。プログラミングやコーディングの知識も特に必要ありません。
カメラを接続してみよう
次に、市販されているUSBカメラを「Mini Pupper」に接続し、カメラを「Mini Pupper」の眼として利用できるようにしてみました。
まず、市販のUSBカメラをMini Pupperの背中にあるUSBポートに挿入して接続します。
次に、先ほどと同じ要領で、Ubuntuを使ってフォルダにアクセスし、標準で入っている「Cheese」というソフトを開きます。
これでカメラからの画像が「Mini Pupper」の頭脳に取り込まれ、視覚を得ることができました。
カメラを胴体に固定して「Mini Pupper」を歩かせてみました。
人が入れない様な隙間に入ってみたり、Mini Pupperの視点に立って、家の中を探検したり、とても新鮮で楽しい体験です!
また、VNCを活用すれば、リモートスクリーンから映像の確認も可能になるので、家の中をウロウロ歩いて警備させたり、ペットや子どもの様子を確認したり、以外と役立つ仕事をさせられるしれませんね。まずは、カスタマイズへの第一歩として、カメラをつなげてみるのも楽しいですよ。
Mini Pupperを使ってスキルをレベルアップ
ROSと各種センサーを接続し、プログラミングを駆使して、FSN (Full Self-Navigation) System のロボットとして遊ぶこともできそうです。例えば・・
SLAM (Simultaneous Localisation and Mapping)
SLAMとは、Simultaneous Localisation and Mappingの略です。その名の通り、Simultaneous = 同時に、Localisation = 位置の特定、Mapping = 地図作成を行う技術のこと。LiDARやカメラを使って、Mini Pupperを歩き回らせてリアルタイムで環境のマッピング(地図の作成)を行うことができます。
(公式Kickstartページから引用)
シミュレーター上で動かすユーザーも
Makuakeの「Mini Pupper」ページでは、Mini Pupperに業界最小クラスのLiDARを搭載して、マッピングしたり、指定の場所に呼び出したりできると紹介されています。ROSのNavigatorの活用方法のひとつに、「champ」というプロジェクトの「Gazebo」という仮想空間にアクセスすることでシミュレーター上で動かす、というアイデアを実装したものもあります。
champ自体は、Mini Pupperに限らず、あらゆる四足歩行のロボットをROSで制御するためのパッケージとして提供されていて、実際のロボットを動かすだけでなく、ロボットがその場になくても、PC(Gazebo)上でシミュレーションを行う方法もあります。シンガポールのJuan Miguel Jimenoさんが開発をされたプロジェクトです。Mini Pupperの開発体験に活用できそうです。(https://vimeo.com/480603868)
本人ツイッター(https://twitter.com/joemeno)
仮想環境(Gazebo)を活用して、ROS上でMini Pupperをシミュレーター操作
・Mini Pupperの動かし方(Gazebo)
https://qiita.com/nisshan_/items/fa4a4ab807c5e4bb1ff4#champ
・Mini Pupperのシミュレータでの動かし方
https://zenn.dev/karaage0703/articles/8ccd7090f75883
まずは、ROSの環境づくり(Dockerのセットアップ)を行ったあと、ROSのワークスペースを構築、先ほどのchampをセットアップすれば、仮想環境(Gazebo)のシミュレーター上で、Mini Pupperを動かすことができるそうで、「LiDAR」を装着したMini Pupperなら、ROSのNavigationを使用して、マッピングをしたり、Docker上で保存することで、何度でも同じMini Pupperに会うことも可能になるとのこと。
仮想環境で作り上げた設定は、実際のMini Pupperへ反映させることも可能で、Mini Pupperをどんどん開発していくことができることがよく分かる情報だと思いました。
本当に「誰もが楽しめるロボット:Mini Pupper」
「Mini Pupper」は、コントローラ操作でロボットを自由に動かせるだけでなく、プログラミングやロボティクスに精通している人が、本格的なプログラミングやセンサーの活用など、ロボットとIoT、AI等を学習したい場合にもおすすめの製品です。レビューしてみて「プログラミングをもっと勉強したい」「ロボットのことをもっと詳しく知りたい」と感じるきっかけを与えてくれるロボット犬だと、あらためて感じました。
なお、今回は、プログラミングができなくてもディスプレイに接続、USBマウス操作で画像データを入れ替え、「Mini Pupper」の表情を変更して「カスタマイズに挑戦できる」ことを紹介しました。
機会があれば、コードを書き換えてプログラミングしたり、LiDARでの自動運転、AIカメラやセンサー類を使って自律機能を持たせたり、より高度なカスタマイズにも挑戦したいと思います。
(Written by ロボスタ編集部、Coryell、Ayuka Alyson Kozaki)