XTDrone+Mavros+Gazebo仿真——配置与控制不同的无人机

参考资料为XTDrone官方文档:

配置与控制不同的无人机 · 语雀XTDrone目前支持多旋翼飞行器(multiroto...https://www.yuque.com/xtdrone/manual_cn/vehicle_config#

1、修改无人机机型为solo

以outdoor3.launch为例,讲解如何配置不同的机型

初始的rover为无人车需要换成solo无人机,注意节点名字要带上solo_0,z轴写为1,不然飞机卡在地面上。

bash 复制代码
<?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/outdoor3.world"/>
    <!-- gazebo configs -->
    <arg name="gui" default="true"/>
    <arg name="debug" default="false"/>
    <arg name="verbose" default="false"/>
    <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>
     <!-- solo_0 -->
     <group ns="solo_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="1"/>
            <arg name="R" value="0"/>
            <arg name="P" value="0"/>
            <arg name="Y" value="0"/>
            <arg name="vehicle" value="solo"/>
            <arg name="sdf" value="solo"/>
            <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  -->

2、启动仿真Gazebo+Mavros程序:

bash 复制代码
cd ~/PX4_Firmware
roslaunch px4 outdoor3.launch 

3、然后启动通信脚本,solo代表子机型,0代表飞机的编号:

bash 复制代码
cd ~/XTDrone/communication
python multirotor_communication.py solo 0

4、再启动键盘控制脚本,solo代表子机型,1代表飞机的个数,vel代表速度控制:

bash 复制代码
cd ~/XTDrone/control/keyboard
python multirotor_keyboard_control.py solo 1 vel

5、按顺序启动

6、演示视频

XTDrone配置控制无人机

相关推荐
YOLO数据集集合19 小时前
无人机山地灾害巡检数据集 | 滑坡多区域实例分割 遥感影像解译 地质灾害预警深度学习数据10296期
人工智能·深度学习·目标检测·计算机视觉·无人机
moonsims1 天前
Lattice Mesh 如何在 Anduril 的 Fury 无人战机或反无人机系统 中落地应用-扮演“神经系统”和“数据链路桥梁”的核心角色
无人机
AI浩1 天前
用于无人机目标检测的三模态融合 Transformer
目标检测·transformer·无人机
EW Frontier1 天前
【分享转发私信免费获取】CounterUAVHub 项目技术方案解析:轻量化静态站点构建无人机反制数据平台【附python代码】
无人机·counteruavhub·无人机反制数据平台
通信仿真爱好者1 天前
第【19】期--基于监督学习的无人机安全通信的联合轨迹优化与功率分配研究--python完整代码+文档
深度学习·无人机·轨迹优化·物理层安全·功率优化
小O的算法实验室1 天前
2026年IEEE TVT,基于双四元数运动优化的新型无人机三维路径规划方法及应用
无人机
提伯斯6461 天前
Fast-Lio和LIO-SAM分别在有gps情况下与PX4融合的过程
ros·px4·fast-lio·lio-sam
GIS数据转换器2 天前
城市排水生命线安全运行监测平台深度解析
java·运维·人工智能·python·安全·数据挖掘·无人机
渡之2 天前
GRiM-Net 深度解析 | 无人机 GNSS 拒止场景下两阶段跨视角视觉定位框架
深度学习·算法·动态规划·无人机
海砥装备HardAus2 天前
大载重工业吊运无人机动力学耦合与负载抑制底层控制技术
无人机·pid·工业无人机