无人机避障——MID360+FasterLIO+EGO-planner实测问题解决

前期复现FastDrone,先跑通FastDrone自带的仿真,但尚未与飞控集成,然后就搭建了纯软件仿真(稍后补上参考文档),采用双目VINS做定位,仿真的效果非常好,使用Intel Realsense相机+Nvidia Jeston板子+四轴搭建真机(稍后补上),办公室照明不错,测试VINS偶尔会发散,轨迹是锯齿状的,换大场地测试,光照条件变差,VINS轨迹总是发散,想办法增加了光源,结果EGO-planner自动执行了短短几十秒就由于定位漂移致炸鸡------无人机撞到障碍物坠落。最近拜访了高飞老师的无人机公司,受启发,果断换激光雷达,用MID360替换双目,原想十拿九稳,结果遇到一大坑,查了快一周,仔细看rviz,发现了问题根源,终于解决了,发现不止自己遇到了,就分享给大家。

EGO-planner报错: ERROR! the drone is in obstacle. This should not happen.

Faster-LIO替换VINS,遇到问题,

bash 复制代码
iter=5,time(ms)=0.058,rebound.
[ERROR] [1776337886.013669837]: ERROR! the drone is in obstacle. This should not happen.
[ERROR] [1776337886.013683083]: Ran out of pool, index=100 58 16
[ERROR] [1776337886.013695521]: Unable to handle the initial or end point, force return!
[ERROR] [1776337886.013707564]: a star error
iter=5,time(ms)=0.06,rebound.
plan_success=0
refine_success=0

[drone 0 replan 94842]==============================================
[ERROR] [1776337886.013877139]: Ran out of pool, index=100 73 3
[ERROR] [1776337886.013888504]: Unable to handle the initial or end point, force return!
[ERROR] [1776337886.013899499]: a star error, force return!
[ERROR] [1776337886.013922661]: ERROR! the drone is in obstacle. This should not happen.
[ERROR] [1776337886.013936150]: Ran out of pool, index=100 72 4
[ERROR] [1776337886.013947585]: Unable to handle the initial or end point, force return!
[ERROR] [1776337886.013959527]: a star error
iter=5,time(ms)=0.062,rebound.

用双目VINS测试没有遇到此问题,改用了Faster-LIO后,出现此问题,一开始按报错排查planner代码,A*、优化等,找不出原因,后面看到有人在参考博客评论说是Odom的z坐标为负数导致,我尝试修改了代码,验证无效,不管怎么动,始终在障碍里,好像这个障碍与机体绑定了,我就看原始点云,调整rviz显示点云效果,确实看到一个几乎贴着雷达中心的点,令人难以置信,一般LIO对点云输入都会过滤的,怎么可能出现这种问题?

发现确实是代码有错误,src/pointcloud_preprocess.cc 改正前后,

验证解决了。

同时看到有用Fast-LIO2的也遇到了,Fast-LIO2源码可能有相似的漏网之鱼问题,条件是使用avia_handler函数,且feature_enabled为false。

相关推荐
2601_962293531 天前
第3.7章 机器人第三方库实战总结(七):OpenCV视觉SLAM核心库详解:API速查+源码实例+避坑指南
图像处理·opencv·计算机视觉·slam·第三方库
事已至此_先吃饭吧4 天前
ORB_SLAM2: Optimizer::PoseOptimization
slam
事已至此_先吃饭吧8 天前
ORB_SLAM2:词袋模型 Bag of Words
slam
熊猫_豆豆20 天前
家庭扫地机器人路径规划Python版本
机器人·扫地机器人·slam·路径规划
事已至此_先吃饭吧24 天前
调试 ORB_SLAM2 非ROS版本
slam
全息数据1 个月前
里程计运动模型及标定【激光slam(一)】
slam·激光slam·定位与建图
zh路西法1 个月前
【3D SLAM源码解读系列】(四) GTSAM与iSAM2——从回环约束到位姿图优化
c++·slam·gtsam·pgo·isam2
乱七八糟的屋子1 个月前
TooN 超详细入门实战教程|C++轻量极致精简矩阵库(机器人/SLAM专用)
矩阵·机器人·数值计算·slam·c++矩阵库·轻量线性代数·机器人数学
kobesdu1 个月前
激光雷达运动畸变是怎么来的,FAST-LIO又如何用IMU反向传播消除它?
ros·slam·fastlio
酸梅果茶2 个月前
【7】lightning_lm项目-LIO 前端 -IVox 局部地图
前端·slam