注意:
本教程为 ROS1,需要 Ubuntu 20.04,使用算法为 fast_lio。
本项目基于开源项目:https://github.com/deepglint/FAST_LIO_LOCALIZATION_HUMANOID.git
一、系统环境准备
1.1. 安装必要的依赖库
# 安装 C++ 标准库
sudo apt install libc++-dev libc++abi-dev
# 安装 Eigen3 线性代数库
sudo apt-get install libeigen3-dev
库说明:
libc++-dev:C++ 标准库开发文件libeigen3-dev:线性代数库,用于矩阵运算和几何变换- 这些是编译 FAST-LIO 和 Open3D 必需的数学和系统库
二、创建工作空间和准备
2.1. 创建定位工作空间
mkdir -p ~/ws_loc/src
cd ~/ws_loc/src
将上述开源项目移到这里。
三、获取并配置 Open3D 库
3.1. 下载预编译 Open3D 库
- 请自行下载 Open3D 预编译库,只需下载
open3d141.zip
3.2. 编辑 CMakeLists.txt
# 编辑 CMakeLists.txt 配置 Open3D 路径
cd ~/ws_loc/src/FAST_LIO_LOCALIZATION_HUMANOID/open3d_loc
nano CMakeLists.txt
3.3. 修改 CMakeLists.txt 中的 Open3D 路径
将:set(Open3D_DIR "/home/liar/open3d141/lib/cmake/Open3D") 中的 liar 改成自己的用户名(假设用户名为 your_username):
set(Open3D_DIR "/home/your_username/open3d141/lib/cmake/Open3D")
保存操作: 修改完后按 Ctrl+X,然后输入 Y,最后按 Enter。
3.4. 完成 Open3D 的配置
cd ~/ws_loc
catkin_make -DROS_EDITION=ROS1
四、安装 Livox SDK 和相关驱动
4.1. 安装 Livox-SDK2
# 克隆 Livox-SDK2
git clone https://github.com/Livox-SDK/Livox-SDK2
# 编译安装
cd Livox-SDK2
mkdir build && cd build
cmake .. && make -j
sudo make install
4.2. 安装 Livox-SDK(旧版)
# 克隆 Livox-SDK
git clone https://github.com/Livox-SDK/Livox-SDK
# 重命名并处理嵌套文件夹
# 注意:文件有两层嵌套,需要删除第二层嵌套文件夹
# 编译安装
cd Livox-SDK
mkdir build && cd build
cmake .. && make -j
sudo make install
注意: 如果遇到 cmake 版本兼容问题,尝试使用策略跳过。
4.3. 安装 livox_ros_driver
# 克隆驱动
git clone https://github.com/Livox-SDK/livox_ros_driver
# 重命名并处理嵌套文件夹
# 创建 livox 专用工作空间
mkdir -p ~/ws_livox/src
cd ~/ws_livox/src
# 创建符号链接
ln -s ~/livox_ros_driver .
# 编译
cd ~/ws_livox
catkin_make
注意: 如果遇到 cmake 版本兼容问题,尝试使用策略跳过。
五、解决编译问题和配置
5.1. 重新配置和编译定位系统
cd ~/ws_loc/build
cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 ../src -DROS_EDITION=ROS1
make -j
六、配置激光雷达
6.1. 配置激光雷达参数文件
cd ~/ws_loc/src/FAST_LIO_LOCALIZATION_HUMANOID/livox_ros_driver2/config
nano MID360_config.json
配置文件,校正激光雷达在 G1 机器人上的安装姿态,确保点云数据坐标系正确。
6.2. 修改 IP 地址配置
桥接机器人,检查本机 IP 地址:
hostname -I
- 将
MID360_config.json配置文件中的 IP 地址:
"host_net_info": {
"cmd_data_ip": "192.168.123.222",
...
}
修改为你自己的 IP 地址,例如:
"host_net_info": {
"cmd_data_ip": "192.168.123.111",
...
}
七、环境配置和连接测试
7.1 网线连接机器人配置
(也可以先跳过这一步进行下面的步骤,后面遇到问题再来修改)
在 home 中:
nano ~/.bashrc
在文件末尾添加:
# 有线连接配置
export ROS_MASTER_URI=http://localhost:11311
export ROS_HOSTNAME=localhost
注释掉其他 ROS 相关配置(如果有):
# export ROS_IP=192.168.111.128
# export ROS_IP=192.168.123.111
# export ROS_MASTER_URI=http://192.168.123.161:11311
# export ROS_IP=192.168.123.99
八、运行 FAST-LIO 系统
8.1. 测试激光雷达连接
# 测试激光雷达 IP 连通性
ping 192.168.123.120
8.2. 打开四个终端运行系统
终端 1:启动 ROS 核心
roscore
终端 2:启动建图系统
cd ~/ws_loc
source devel/setup.bash
roslaunch fast_lio mapping_mid360_g1.launch
终端 3:启动雷达驱动
cd ~/ws_loc
source devel/setup.bash
roslaunch livox_ros_driver2 msg_MID360.launch
终端 4:启动可视化界面
rviz

