外观
Fast-LIO2激光里程计
2025-07-23
算法使用
选择合适的场景
我应当在什么场景下使用该算法 ?
算法运行前,先将无人机放置在平稳的地方,且机头方向有足够结构特征的场景(不推荐在雨雪、 完全空旷、运动物体多等地方)
运行算法
当无人机放置好后,可以开始运行算法:
# 打开终端,初始化无人机并启动 Fast-LIO2 激光里程计 cd X280 bash scripts/init_uav.sh
判断是否正常初始化
当终端提示
drone_odom_succed
时,表明 Fast-LIO2 初始化完成,如下图所示:评估和可视化
初始化完成后,然后用手缓慢拿起无人机,在结构纹理充足的场地中慢速( <1m/s)走一段距离,一般可以通过绕场地一圈回到出发点,观察里程计输出ROS话题
/mavros/vision_pose/pose.pose.position
结果值是否与初始值(x:0 y:0 z:0
)接近。如果偏差能控制在 cm 数量级,则表明 Fast-Lio2 运行良好。
常见问题
Q: 初始化失败,终端持续提示 WAIT mid360 online
雷达数据没收到,需要检查雷达相关话题是否存在、雷达线材是否松动、或者去 X280/src/emnavi_sdk/global_interface/config/livox_ros_driver2/MID360_config.json
路径下检查雷达ip、雷达连接飞机NX主机的有线网卡ip地址,是否与雷达参数文件匹配。
Q: 终端持续提示 WAIT fast-lio_odom
检查雷达相关话题是否都有信息输入 livox/lidar
, livox/imu
, 然后检查 fastlio_odom
话题是否有结果输出。如果没有那说明可能里程计
Q: 初始化完成后,依然会出现里程计飘的问题。
可以根据现象一步步排查
1、如果是初始化后,静止不动都会直接飘了,需要看是否有(动态物体、频闪的光源、反光玻璃等)大量存在于相机视野中,这些会导致 Fast-LIO2 认为场景在运动;
2、也可能是初始化过程中,即IMU预积分阶段时,无人机处于非静止状态,放大了陀螺仪噪声估计误差。
3、可能是内外参关系与实际情况相差过大。需要检查激光雷达与机体是否牢固,排除因为摔飞机导致结构位移。或者需要重新标定内外参信息。
Q: 在室内表现还行,但是在户外场景或者大的空间就不太行。
大概率问题还是场景退化的问题,面对没有多少结构特征的大平面、长廊,或者干脆就看不见点云了,这些情况下雷达里程计收到的结构约束较少,会出现一定程度的漂移。