Ubuntu22.04+ros2humble复现Lightning-LM
·
一 编译Lightning-LM
- 从github下载源码到工作空间
git clone https://github.com/gaoxiang12/lightning-lm.git
2.安装依赖(按照下述方法可能部分依赖没有正确安装,但根据AI辅助可以很快解决)
- Pangolin(用于可视化,见thirdparty)
- OpenCV
- PCL
- yaml-cpp
- glog
- gflags
- pcl_conversions
解压缩下载的源码,进入到解压缩的目录下启动终端,如图

然后执行

bash ./scripts/install_dep.sh
会自动安装部分依赖,Pangolin需另装,在目录thirdparty下有源码作者给的0.93版本安装包,把其解压到主目录,然后按照里面的readme安装即可,安装步骤如下:
进入压缩包,执行下面命令安装依赖
./scripts/install_prerequisites.sh recommended
然后执行下面命令安装
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
sudo cmake --install build
sudo ldconfig
执行下面命令可以查看是否安装成功
sudo find /usr/local -name "PangolinConfig.cmake" -o -name "pangolin-config.cmake" 2>/dev/null
一般会在:
* `/usr/local/lib/cmake/Pangolin/PangolinConfig.cmake`
3.安装好依赖进行编译
在Lightning-LM的工作空间执行colcon build编译命令
如果顺利编译成功则直接看4,下面是针对编译卡在80%左右,系统整个卡住的情况:
卡在80%的原因大概是编译内存溢出,(可通过htop查看系统内存占用情况,重点关注swp,如图)

如果卡死直接参考下面文章即可解决:
等待编译完成即可。
二 运行Lightning-LM
1.建图
- 在工作空间下运行(注意下面运行代码的目录换成自己的)
source install/setup.bash
ros2 run lightning run_slam_online --config /home/zys/LM_ws/src/lightning-lm/config/default_nclt.yaml
- 播放数据包或者输入传感器数据(根据自己情况来)
ros2 bag play rosbag2_2026_03_11-16_30_22_0.db3
- 等待数据包播放完,建图完成

- 播放完成后,在工作空间下另外起一个终端,执行以下命令保存地图
source install/setup.bash
ros2 service call /lightning/save_map lightning/srv/SaveMap "{map_id: new_map}"
至此,建图完成。
2.定位
- 在工作空间执行以下命令,同样的default_nclt.yaml前的目录换成自己的
source install/setup.bash
ros2 run lightning run_loc_online --config /home/zys/LM_ws/src/lightning-lm/config/default_nclt.yaml
- 车放回建图原点,播放数据包或者输入实时数据
ros2 bag play rosbag2_2026_03_11-16_30_22_0.db3
- 完成定位,定位消息话题为tf,执行以下命令即可查看
ros2 topic echo /tf

三 相关参数配置
一些参数修改在LM_ws/src/lightning-lm/config/default_nclt.yaml文件里面,主要雷达和imu话题改为自己的,其他说明在readme里面。
更多推荐



所有评论(0)