配置Fastlio环境到XTDrone

针对三维固态雷达的仿真,XTDrone 的官方文档中的教程,是配置的高博的 faster-lio ,是基于 fastlio 修改的一个轻量版本,但我的环境在实际使用中,经常运行不正常,点数少了,漂移会比较严重,有时还会报错,点数多了的话,就会崩掉,因此更换了 Fastlio 版本进行仿真,可以正常运行。

安装 Fastlio 的方法与安装 faster-lio 是一致的,可以参考以下两篇,其中一篇是官方文档,其中的一些配置参数后续还会用到:

https://blog.youkuaiyun.com/m0_71983702/article/details/139634206?spm=1001.2014.3001.5501

https://www.yuque.com/xtdrone/manual_cn/livox_lio

在步骤操作到安装 Faster-LIO 时,将链接替换为 Fastlio 的链接:

https://github.com/hku-mars/FAST_LIO

修改模型文件

注意修改px4的模型文件:

目的就是调用从 XTDrone 复制过来的模型文件,如果已经是这样了,就不用修改。

修改 Livox-simulation-customMsg

在配置好 Livox-simulation-customMsg 与 livox_ros_driver 以及 fastlio 之后,就需要将 avia 雷达加入到仿真环境,按照教程,将 livox_points_plugin.cpp 文件中的 avia.csv 文件的路径替换到自己的路径,因为我的 px4 的launch 文件中,调用的是 px4 工程 Tools 目录下的模型,也就是从 XTDrone 复制过去的模型,因此这个绝对路径我就填了这个路径:

还有注意发布类型选 3:

修改 Fastlio

对照官方文档的参数修改即可:

之后重新编译 catkin_ws。根据自己电脑的情况调整雷达分辨率:

运行

运行 px4 仿真

roslaunch px4 outdoor_fastlio.launch

我的是重新弄了一个 outdoot_fastlio.launch 文件:

<?xml version="1.0"?>
<launch>
    <!-- MAVROS posix SITL environment launch script -->
    <!-- launches Gazebo environment and 2x: MAVROS, PX4 SITL, and spawns vehicle -->
    <!-- vehicle model and world -->
    <arg name="est" default="ekf2"/>
    <arg name="world" default="$(find mavlink_sitl_gazebo)/worlds/outdoor1_light.world"/>
    <!-- gazebo configs -->
    <arg name="gui" default="true"/>
    <arg name="debug" default="false"/>
    <arg name="verbose" default="true"/>
    <arg name="paused" default="false"/>
    <!-- Gazebo sim -->
    <include file="$(find gazebo_ros)/launch/empty_world.launch">
        <arg name="gui" value="$(arg gui)"/>
        <arg name="world_name" value="$(arg world)"/>
        <arg name="debug" value="$(arg debug)"/>
        <arg name="verbose" value="$(arg verbose)"/>
        <arg name="paused" value="$(arg paused)"/>
    </include>
     <!-- iris_0 -->
     <group ns="iris_0">
        <!-- MAVROS and vehicle configs -->
            <arg name="ID" value="0"/>
            <arg name="ID_in_group" value="0"/>
            <arg name="fcu_url" default="udp://:24540@localhost:34580"/>
        <!-- PX4 SITL and vehicle spawn -->
        <include file="$(find px4)/launch/single_vehicle_spawn_xtd.launch">
            <arg name="x" value="0"/>
            <arg name="y" value="0"/>
            <arg name="z" value="0"/>
            <arg name="R" value="0"/>
            <arg name="P" value="0"/>
            <arg name="Y" value="0"/>
            <arg name="vehicle" value="iris"/>
            <arg name="sdf" value="iris_realsense_livox"/>
            <arg name="mavlink_udp_port" value="18570"/>
            <arg name="mavlink_tcp_port" value="4560"/>
            <arg name="ID" value="$(arg ID)"/>
            <arg name="ID_in_group" value="$(arg ID_in_group)"/>
        </include>
        <!-- MAVROS -->
        <include file="$(find mavros)/launch/px4.launch">
            <arg name="fcu_url" value="$(arg fcu_url)"/>
            <arg name="gcs_url" value=""/>
            <arg name="tgt_system" value="$(eval 1 + arg('ID'))"/>
            <arg name="tgt_component" value="1"/>
        </include>
    </group>
</launch>
<!--the launch file is generated by XTDrone multi-vehicle generator.py  -->

运行 fastlio

roslaunch fast_lio mapping_avia.launch

最后再运行 XTDrone 的键盘与通信脚本,我是写了一个简单的脚本打开新的窗口来自动调用这两个脚本,我是wsl,一直开窗口不太方便:

简单控制飞机跑了一圈,正常运行,效果还好:

内容概要:本文档详细介绍了基于MATLAB实现的无人机三维路径规划项目,核心算法采用蒙特卡罗树搜索(MCTS)。项目旨在解决无人机在复杂三维环境中自主路径规划的问题,通过MCTS的随机模拟与渐进式搜索机制,实现高效、智能化的路径规划。项目不仅考虑静态环境建模,还集成了障碍物检测与避障机制,确保无人机飞行的安全性和效率。文档涵盖了从环境准备、数据处理、算法设计与实现、模型训练与预测、性能评估到GUI界面设计的完整流程,并提供了详细的代码示例。此,项目采用模块化设计,支持多无人机协同路径规划、动态环境实时路径重规划等未来改进方向。 适合人群:具备一定编程基础,特别是熟悉MATLAB和无人机技术的研发人员;从事无人机路径规划、智能导航系统开发的工程师;对MCTS算法感兴趣的算法研究人员。 使用场景及目标:①理解MCTS算法在三维路径规划中的应用;②掌握基于MATLAB的无人机路径规划项目开发全流程;③学习如何通过MCTS算法优化无人机在复杂环境中的飞行路径,提高飞行安全性和效率;④为后续多无人机协同规划、动态环境实时调整等高级应用打下基础。 其他说明:项目不仅提供了详细的理论解释和技术实现,还特别关注了实际应用中的挑战和解决方案。例如,通过多阶段优化与迭代增强机制提升路径质量,结合环境建模与障碍物感知保障路径安全,利用GPU加速推理提升计算效率等。此,项目还强调了代码模块化与调试便利性,便于后续功能扩展和性能优化。项目未来改进方向包括引入深度强化学习辅助路径规划、扩展至多无人机协同路径规划、增强动态环境实时路径重规划能力等,展示了广阔的应用前景和发展潜力。
### 配置FastLIO LiDAR Odometry and Mapping FastLIO是一个高效的LiDAR惯性里程计和建图框架,旨在实现实时高精度的位姿估计和三维环境重建。为了成功配置并运行FastLIO,在安装依赖项之后需调整数文件以适应特定硬件设置。 #### 安装依赖库 首先确保系统已安装ROS(Robot Operating System),因为FastLIO基于ROS构建。接着按照官方文档说明下载源码仓库,并编译工作空间内的节点程序[^1]。 ```bash sudo apt-get update && sudo apt-get install ros-noetic-cmake-modules \ ros-noetic-tf2-sensor-msgs ros-noetic-laser-geometry python3-catkin-tools ``` #### 调整配置 编辑`config/params.yaml`文件来指定传感器的具体属性以及算法内部的一些选项: - `imu_topic`: IMU话题名称,默认为`/imu/data` - `lidar_topic`: 激光雷达主题路径,默认设为`/velodyne_points` - `map_frame_id`: 地图坐标系ID字符串形式表示,默认是`"map"` - `odom_frame_id`: 里程计照帧名,默认取值为`"odom"` 对于不同的激光雷达型号可能还需要额设定诸如垂直角度范围、水平视场角等物理特性数[^2]。 #### 启动FastLIO节点 完成上述准备工作后即可启动FastLIO服务端口监听来自部设备的数据流输入。通常情况下只需执行如下命令行指令就能激活整个流程: ```bash roslaunch fast_lio lio_sam.launch ``` 这会加载预先定义好的launch脚本从而简化了实际操作过程中的复杂度。 #### 数据可视化工具RViz集成 为了让用户更直观地观察到即时反馈效果,推荐配合rviz图形界面一起使用。通过订阅相应的Topic可以在界面上呈现出点云图像叠加姿态轨迹变化情况。 ```xml <node pkg="rviz" type="rviz" name="rviz" args="-d $(find fast_lio)/rviz/fastlio.rviz"/> ``` 以上就是针对FastLIO的基础配置指南概览,具体细节还需阅项目主页上的README.md获得更多帮助和支持信息。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

龙猫略略略

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值