宇树 G1 机器人 ROS1 二次开发:基于 FAST-LIO 的建图与 RViz 配置
本教程基于 ROS1 环境(Ubuntu 20.04),采用 FAST_LIO 算法进行建图、定位与导航的二次开发。我们将重点讲解从环境搭建到成功运行建图系统的全过程。
一、系统环境准备
1. 安装必要的依赖库
在开始之前,需要确保系统安装了编译所需的 C++ 标准库和线性代数库。
# 安装 C++ 标准库
sudo apt install libc++-dev libc++abi-dev
# 安装 Eigen3 线性代数库
sudo apt-get install libeigen3-dev
这些是编译 FAST-LIO 和 Open3D 所必需的数学和系统基础库。
二、创建工作空间
我们需要一个独立的工作空间来管理定位相关的代码包。
mkdir -p ~/ws_loc/src
cd ~/ws_loc/src
将项目仓库克隆到这里。本项目遵循开源项目 https://github.com/deepglint/FAST_LIO_LOCALIZATION_HUMANOID.git。
git clone https://github.com/deepglint/FAST_LIO_LOCALIZATION_HUMANOID.git
三、配置 Open3D 库
1. 获取 Open3D 库
请确保本地已安装预编译的 Open3D 库(版本 1.4.1)。如果尚未安装,建议通过源码编译或官方渠道获取,避免使用第三方网盘链接以防版本不兼容。
2. 修改 CMakeLists.txt
进入项目目录并编辑配置文件,指定 Open3D 的路径。
cd ~/ws_loc/src/FAST_LIO_LOCALIZATION_HUMANOID/open3d_loc
nano CMakeLists.txt
找到 set(Open3D_DIR ...) 这一行,将其中的用户名路径修改为你当前的实际路径。例如,如果你的用户名为 your_username:
set(Open3D_DIR "/home/your_username/open3d141/lib/cmake/Open3D")
保存退出(Ctrl+X,输入 Y,回车)。
3. 编译工作空间
回到工作空间根目录进行编译:
cd ~/ws_loc
catkin_make -DROS_EDITION=ROS1
四、安装 Livox SDK 和相关驱动
宇树 G1 通常搭配 Livox 激光雷达,因此需要安装对应的 SDK 和 ROS 驱动。
1. 安装 Livox-SDK2
这是较新的 SDK 版本,用于支持 MID360 等型号。
git clone https://github.com/Livox-SDK/Livox-SDK2
cd Livox-SDK2
build && build
cmake ..
make -j
make install

