当前位置: 首页 > news >正文

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,不然飞机卡在地面上。

<?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程序:

cd ~/PX4_Firmware
roslaunch px4 outdoor3.launch 

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

cd ~/XTDrone/communication
python multirotor_communication.py solo 0

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

cd ~/XTDrone/control/keyboard
python multirotor_keyboard_control.py solo 1 vel

5、按顺序启动

6、演示视频

XTDrone配置控制无人机

 

 

相关文章:

  • DeepSeek赋能智慧工厂:推动制造业高效智能可持续,开启制造业转型升级
  • hi3516cv610适配AIC8800D80的连接路由器记录
  • 文件上传和下载前后端交互逻辑
  • leetcode1 两数之和 哈希表
  • 极狐GitLab 17.9 正式发布,40+ DevSecOps 重点功能解读【四】
  • Golang的多团队协作开发
  • 设计模式|策略模式 Strategy Pattern 详解
  • BambuStudio学习笔记:FlushVolCalculator类
  • doris: Oracle
  • ROM修改进阶教程------修改安卓机型SELinux宽容的几种方式方法 以及第三方系统中如何关闭SELinux宽容
  • 【AD】5-2 DXF结构导入与板框自定义
  • skynet简单游戏服务器的迭代
  • Spring AI 接入 DeepSeek AI
  • 【linux 安装mongodb】在redhat9上安装mongodb8出现下载元数据错误
  • LLM 模型 Prompt 工程
  • rabbitmq-amqp事务消息+消费失败重试机制+prefetch限流
  • Ubuntu 22.04安装NVIDIA A30显卡驱动
  • 机器学习-决策树详细解释
  • 决策树(Decision Tree)基础知识
  • Java TCP 通信:实现简单的 Echo 服务器与客户端
  • 反制美国钢铝关税!印度拟对美国部分商品征收关税
  • 技术派|更强的带刀侍卫:从054B型战舰谈谈世界护卫舰发展
  • 寒武纪陈天石:公司的产品力获得了行业客户广泛认可,芯片市场有望迎来新增量需求
  • 尹锡悦涉嫌发动内乱案举行第三次庭审
  • 梅花奖在上海|穿上初演时的服装,“鹮仙”朱洁静再起飞
  • 特朗普将启的中东行会如何影响伊美核谈判?专家分析