【Unitree Go2】Mid360でSLAMを実行する
初めに
本記事では、オプションのMid360版を用いたSLAMの方法を案内します。
今回はFAST-LIOというものを使っていきます。
環境
環境は、次のようなものを想定しています。
- 機種: Go2 R&D+(Edu+)(AIR/PROではないもの)
- 付属LiDAR:Mid-360
※FAST-LIOはかなり重いので、Orin NXで行うことを前提とします。
1.mid360のip設定
- Mid360 IP:192.168.123.20
- Docking Staion IP:192.168.123.18
2.FAST-LIOの導入
本記事では、FAST-LIOというSLAMアルゴリズムを用いた方法を解説します。
これは(おそらく)foxyに対応していませんので、dockerを用いたhumble環境をセットアップしていきます。
2-1. ネット接続
2-2. livox_ros_driver2とFAST-LIOのダウンロード
$ git clone https://github.com/TechShare-inc/FAST_LIO_ROS2 --recursive
2-3. dockerイメージの作成
まず、nvidia-docker2のインストールします。
$ sudo apt-get update
$ sudo apt-get install -y nvidia-docker2
$ sudo systemctl restart docker
その後、dockerイメージを作成します。
$ cd /path/to/FAST_LIO_ROS2/docker
$ docker build -t fast-lio-ros2:latest .
※かなり時間がかかります
2-4. dockerコンテナの作成
$ cd /path/to/FAST_LIO_ROS2/docker
$ ./container_run.sh fast-lio-ros2 fast-lio-ros2:latest
これでdockerコンテナが作成されました。
2-5. コンパイル
コンパイルの前に、Mid360のipアドレスを修正します。
LiDAR IPと受け取り側のIPを設定します。
次にコンパイルします。
# cd ~/ros2_ws/src/livox_ros_driver2
# ./build.sh humble
これで、livox_ros_driver2とFAST-LIOの両方がコンパイルされました。
3.実行
3-1. livox_ros_driver2の実行
下記のように行うことで、MID360の点群取得をdocker/humble環境で行えます。
$ docker exec -it fast-lio-ros2 bash
# . install/setup.bash
# ros2 launch livox_ros_driver2 rviz_MID360_launch.py
3-2. FAST-LIOの実行
上記のlivox_ros_driver2を実行させた状態で、新しいterminalを開きFAST-LIOを実行します。
$ docker exec -it fast-lio-ros2 bash
# . install/setup.bash
# ros2 launch fast_lio mapping_mid360.launch.py
すると、マップが生成されます。
……が、少し歩かせているとマップが吹き飛んでいきます。
おわりに
本記事ではMid360版を用いたSLAMの方法を見てきました。
この記事が少しでも役に立てたのなら幸いです。
Related Articles
【Unitree Go2】Mid360 on Go2でFAST-LIOを使う
初めに 本記事では、【Unitree Go2】Mid360でSLAMを実行するの続きになります。 前回の記事では犬を少し歩かせると、地図が崩れてしまいました。 本記事ではGo2内蔵のIMUを用いて、安定的なSLAMを実現します。 環境 環境は、次のようなものを想定しています。 機種: Go2 R&D+(Edu+)(AIR/PROではないもの) 付属LiDAR:Mid-360 ※FAST-LIOはかなり重いので、Orin NXで行うことを前提とします。 ...
【Unitree Go2】Mid360のデフォルトサンプルの使い方(現在使用できません)
初めに 本記事では、オプションのMid360/XT16版を用いたメーカーの用意したSLAMの使い方を案内する予定です。 ただし、メーカーに確認したところ、現状はうまく動作せず、2024年の年末頃に更新予定とのことです。(24/8/5現在) 使用するためにTechShareで用意した使用例(点群取得とSLAM)が下記のようにございます: TechShareで用意したサンプル(点群取得とSLAM) Mid360の場合 【Unitree Go2】Mid360を動かしてみる 【Unitree ...
【Unitree Go2】一問一答FAQ
初めに 本記事では、Unitree Go2を購入されたお客様からよくあるご質問内容を、一問一答形式でまとめたものになります。 一問一答(すべての機種について) Q: Go2を歩かせると、右方向に行くことがあまりにも多いですがこれは正常ですか? A: 初期姿勢が少しずれていると、右に行きやすくなることは他のGo2でも確認されています。初期姿勢が正しいか今一度確認ください。 ...
【Unitree Go2】SDK or ROSを使う方法
初めに 本記事では、ユーザー側で用意した外部PCを用いて、SDK(unitree_sdk2)やROS(unitree_ros2)を動かす方法についてご案内します。 環境 環境は、次のようなものを想定しています。 機種: Go2 R&D(Edu), R&D+(Edu+)(AIR/PROではないもの) Docking Station or 外部PC:ubuntu20 / ROS2 foxy 0.参考公式ドキュメント unitree_sdk2 Obtain SDK - Go2 SDK ...
【Unitree Go2】メーカー資料について
本記事ではGo2のメーカー公式資料等についてご案内します。 (1) スマホアプリ Unitree Go - Google Play Unitree Go - Apple Store app 注意:12/4現在開発中のため、一部動作しない機種がございます。 (2) オンラインSDK資料 R&D(EDU)版について: Go2 SDK Development Guide - UnitreeRobotics R&D(EDU)版githubになります: unitree_sdk2 - github ...