Unitree LiDAR L1でSLAM

本稿ではUnitree社の小型LiDAR L1を用いたPC上でのデータ取得,および応用例としてのSLAM実行例をご紹介します.

1. Unitee L1?

Unitree社が独自開発した3D LiDARです.約8cm四方,230gと小型・軽量で低コストながら,360°×90°の点群および6軸IMUのデータ取得ができます.

https://techshare.co.jp/product/unitree/4d-lidar-l1/

2023年の新型四脚ロボットであるUnitree Go2の顎部に同様のLiDARが付いており,歩行時の障害物検出に利用されています.

2. 実行環境

以下の環境で動作を確認しました.

ホストOS: Ubuntu 22.04

CPU: Intel(R) Core(TM) i5-10210U @ 1.60GHz x 8

メモリ: 8GB

3. 使ってみる

3.1. スキャンデータ取得

Unitree Roboticsのgithubから,L1を使用する際のソフトウェア類を取得できます.下記リンクのリポジトリは,L1のデータを取得するためのSDK,およびROS/ROS2パッケージです.

https://github.com/unitreerobotics/unilidar_sdk

ROS2で利用する場合のビルド手順は以下の通り

git clone https://github.com/unitreerobotics/unilidar_sdk
cd unilidar_sdk/unitree_lidar_ros2
colcon build --symlink-install

sourceコマンドによるセットアップ後,L1のセンサーノード立ち上げとrviz2による可視化を行うlaunchスクリプトを実行

ros2 launch unitree_lidar_ros2 launch.py

下画像のようにスキャンデータが確認できます.

ros2ノード実行時の画面

こちらは2023年7月に名古屋国際会議場で開催したRobot Innovation Week 2023における,L1デモ展示での様子です.来場客や会場の柱などが確認できます.

3.2. SLAM

9月末に,Point-LIOという(tightly-coupledな)LiDAR-IMU複合オドメトリーアルゴリズムに基づく,L1向けのSLAMパッケージが公開されました.

https://github.com/unitreerobotics/point_lio_unilidar

※Point-LIOのフレームワークについてはこちらを参照

https://onlinelibrary.wiley.com/doi/epdf/10.1002/aisy.202200459

UnitreeはUbuntu 20.04(ROS noetic)環境で動作確認したようですので.dockerを用いた環境構築を行いました.※詳細な手順はここでは割愛します

OSRFのnoeticイメージをベースに,READMEの通りに依存プログラムをインストールし,ビルドします.

USB接続したL1は/dev/ttyUSB0として認識されます.デバイスファイルへのアクセス許可設定を忘れずに.

以下は弊社開発センターフロア内を巡回したデータに基づき,3次元地図を作成する様子です.

mapping

作成された地図はpcd形式で保存されます.

4. おわりに

Unitree LiDAR L1を用いたデータ取得,SLAMの実行例をご紹介しました.やや特殊なスキャン方式ではありますが,小型・安価な3次元LiDARとして活躍できるポテンシャルを秘めたデバイスかと思います.

L1 LiDARをはじめ,Unitree製品に関するお問い合わせは

unitree@techshare.co.jp

まで!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です