🦮

Mini Pupper2(ミニぷぱ2)をROS2対応する方法

2025/02/24に公開
1

Mini Pupper2(ミニぷぱ2) をROS2で動かす

メーカーから実機提供いただいた四脚ロボット「Mini Pupper2」。一通り動作確認したので、いよいよROSで動かします(概略と初期の動作確認は以下記事参照ください)。

https://karaage.hatenadiary.jp/entry/2025/02/09/073000

ROS2のセットアップは、以下に記載があるのですが、ちょっとハマったので、ハマったところを中心に記載していきます。
https://minipupperdocs.readthedocs.io/ja/latest/guide/ROS2Guide.html

なお、セットアップにはMini Pupper2の他、Linux PCが必要です。ここのハードルが一番高いかもしれませんね。

以下記事で、比較的安全にWindows PCでLinuxを使う方法を記載しているので、よかったら参考にしてみてください。

https://zenn.dev/karaage0703/articles/0ca67e19aa772e

以下3つのステップに分けて説明していきます。

  • Linux PCのROS2セットアップ
  • Mini Pupper2のROS2セットアップ
  • Linux PCからのロボット操作

Linux PCでROS2セットアップ

ここは公式ガイドの通りで比較的すんなりいけました。

ただ、自分の環境では、以下のcolcon buildでつまづきました。

$ colcon build --symlink-install

エラーをもとに、以下のライブラリインストールしてからビルドしたら通りました。

$ pip3 install catkin_pkg
$ pip3 install empy==3.3.4
$ pip3 install lark

ROSあるあるですね。スマートな方法とか設定あると思いますが、忘れました…

Mini Pupper2のROS2セットアップ

ガイドを参考にROS2のイメージをSDカードに書き込みます。

ガイドではbalenaEtcherを使って書き込んでいましたが、私はRaspberry Pi Imager
で書き込みをしました。以下記事参考にしてください。

https://zenn.dev/karaage0703/articles/8fe578dba4857a#セットアップ

書き込み設定。

SDを書き込んだ後は、そもそもどういうハード設定でセットアップするかという前提が分からなくて少し戸惑いました。結局以下のようにMini Pupper2と直接モニタとUSBキーボードを繋げば良さそうということが分かりました。

最初は、Raspberry Pi4でセットアップしてから、SDを差し替えると良いかなと思ってましたが、SDイメージがMini Pupper2のハードウェア前提でイメージが作られているようで、起動しませんでした(途中で止まってしまう)。

ログイン名とパスワードは以下です(注意深くガイド読むと分かります)。

- login: ubuntu
- password: mangdang

また、日本語キーボードだとキーマップが変で正しく記号が打てないので、以下コマンドでキーボードを設定します。

$ sudo dpkg-reconfigure keyboard-configuration

あとは、だいたいガイドの通りでいけます。ネットワークの設定だけ完了したら、以下のようにIPアドレスが画面に表示されます。

こうなったらLinux PCからsshでMini Pupper2にリモートアクセスできるので、モニタやキーボードを外してOKです。

Linux PCからのロボット操作

これで、Linux PCからMini Pupper2にログインしたり、ROS2で操作できるようになるはずです。

Mini Pupper2のROS2ノードの起動コマンドは以下です。

$ . ~/ros2_ws/install/setup.bash
$ ros2 launch mini_pupper_bringup bringup.launch.py

これを実行しないと、以下コマンドを実行しても、何もノードが表示されません(ガイドの順番では、ノードの起動が後に書いてありますが、先に実行する必要があります)。

$ ros2 node list

あとはガイドに従ってキーボードでテレオペすれば、ロボットを操作できると思います。

動かしている様子です。
https://x.com/karaage0703/status/1893835581433487701

まとめ

Mini Pupper2とLinux PCのROSセットアップからROSでの操作までを実施しました。ROS久しぶりに触りましたが(ROS 2はほぼ経験無し)、やはり結構ハードモードですね。この記事で少しでもMini Pupper2をROSで動かせる人が増えたら良いなと思います。

Mini Pupper2がROSで動くようになったら、あとはROSの流儀で他のパッケージを組み合わせたり、自分でROSパッケージ作ってみると色々なことができるかと思います。

書籍は以下とかが参考になるのではないかと思います。

ROS2とPythonで作って学ぶAIロボット入門 改訂第2版

参考リンク

https://qiita.com/Toshiaki0315/items/08dfaf70ec11b23fe05b

https://qiita.com/tech888/items/550dbe4230fbd583a750

https://qiita.com/thun_build/items/6dd1ac4e0c11dcc0fa26

https://github.com/ros-simulation/gazebo_ros_pkgs/issues/1519

https://ar-ray.hatenablog.com/entry/2025/02/28/233247

Discussion

鍛冶屋鍛冶屋

こんにちは
四足歩行ロボットにLLMを適用してみたいと思っていたので、私も予約しました!