Ardupilot和Gazebo的环境搭建

Ardupilot和Gazebo

  1. 安装Ubuntu 22.04

  1. 安装Arduilot
    • 克隆ArduPilot仓库

      bash 复制代码
      git clone https://github.com/ArduPilot/ardupilot.git
    • 编译

      bash 复制代码
      cd ardupilot
      git submodule update --init --recursive
      Tools/environment_install/install-prereqs-ubuntu.sh -y
    • 环境配置

      bash 复制代码
      pwd
      /home/daniel/ardupilot
      
      export PATH=$PATH:<ardupilot path>/Tools/autotest
      export PATH=/usr/lib/ccache:$PATH
      
      . ~/.profile
    • 编译配置

      bash 复制代码
      ./waf configure --board sitl
    • 测试

      bash 复制代码
      sim_vehicle.py -w -v ArduCopter

  1. 安装Gazebo Harmonic
    • 添加官方软件源和密钥 在终端中依次执行以下命令,添加Gazebo的官方软件仓库

      bash 复制代码
      sudo apt-get update
      sudo apt-get install curl
      sudo curl https://packages.osrfoundation.org/gazebo.gpg -o /usr/share/keyrings/pkgs-osrf-archive-keyring.gpg
      echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/pkgs-osrf-archive-keyring.gpg] http://packages.osrfoundation.org/gazebo/ubuntu-stable $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/gazebo-stable.list > /dev/null
    • 安装 Gazebo Harmonic 更新软件列表并安装:

      bash 复制代码
      sudo apt-get update
      sudo apt-get install gz-harmonic
    • 验证安装完成后 您可以通过运行 gz sim --version来验证是否成功。


  1. 安装Arduilot_gazebo插件

    • Harmonic (apt)

      bash 复制代码
      sudo apt update
      sudo apt install libgz-sim8-dev rapidjson-dev
      sudo apt install libopencv-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-bad gstreamer1.0-libav gstreamer1.0-gl
    • 克隆仓库并构建:

      bash 复制代码
      git clone https://github.com/ArduPilot/ardupilot_gazebo
      cd ardupilot_gazebo
      mkdir build && cd build
      cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo
      make -j4
    • 假设您已将存储库克隆到: $HOME/ardupilot_gazebo:

      bash 复制代码
      echo 'export GZ_SIM_SYSTEM_PLUGIN_PATH=$HOME/ardupilot_gazebo/build:${GZ_SIM_SYSTEM_PLUGIN_PATH}' >> ~/.bashrc
      echo 'export GZ_SIM_RESOURCE_PATH=$HOME/ardupilot_gazebo/models:$HOME/ardupilot_gazebo/worlds:${GZ_SIM_RESOURCE_PATH}' >> ~/.bashrc

  1. 安装MavProxy
    • 安装依赖

      bash 复制代码
      sudo apt-get install python3-dev python3-opencv python3-wxgtk4.0 python3-pip python3-matplotlib python3-lxml python3-pygame
      python3 -m pip install PyYAML mavproxy --user
      echo 'export PATH="$PATH:$HOME/.local/bin"' >> ~/.bashrc
    • 更新

      bash 复制代码
      pip3 install mavproxy pymavlink --user --upgrade

  1. 启动gazebo和ardupilot
    • 启动gazebo

      bash 复制代码
      cd ardupilot_gazebo
      gz sim -v4 -r iris_runway.sdf --render-engine ogre
    • 启动ardupilot

      bash 复制代码
      cd ardupilot
      sim_vehicle.py -v ArduCopter -f gazebo-iris --model JSON --map --console
    • 等待传感器初始化完成后解锁执行任务

      bash 复制代码
      mode guided // 切换到引导模式
      arm throttle //解锁
      takeoff 5 //起飞高度5m
      position 0 0 3 //位置设置为(0,0,3) m
      position 100 100 0 //位置设置为(100,100,0) m
      position 100 -200 0 //位置设置为(100,-200,0) m
      rtl

相关推荐
小O的算法实验室7 小时前
IEEE TAES,双组变邻域搜索算法+异构协同多无人机侦察任务分配
无人机
feasibility.7 小时前
当“给机器人指路“成为一门数据工程学——SimpleNav 拆解:导航大模型的标准化之争
ai·机器人·无人机·导航·具身智能·vla·vln
workflower1 天前
人形机器人安全伦理标准
人工智能·安全·机器学习·机器人·无人机
YOLO数据集集合2 天前
无人机航拍建筑与拆除废物检测数据集 | 建筑垃圾 无人机巡检 废物分类 资源回收 目标检测10042期
目标检测·分类·无人机
haishikeji696_2 天前
现成无人机管理系统源码|支持私有化部署、二次开发、政企投标、自动机库对接
人工智能·无人机·低空经济·无人机管理系统·飞控管理系统
zhuidushi44062 天前
四旋翼无人机制作以及强化学习控制
无人机
YOLO数据集集合2 天前
【无标题】无人机河道非法捕鱼网分割数据集 | 非法捕鱼网 河道巡检 实例分割 无人机航拍 渔业执法 生态保护9071期
无人机·钓鱼检测·捕鱼检测数据集
AI浩2 天前
DroneScan-YOLO:针对无人机图像中微小目标的冗余感知轻量级检测
yolo·无人机
YOLO数据集集合3 天前
无人机热成像人员检测数据集 | 无人机热成像 红外检测 人员检测 低空安防 9067期
无人机·红外人员·红外数据集·无人机热成像·热成像人·识别人员
YOLO数据集集合3 天前
天空反无人机检测数据集 | 无人机检测 多旋翼识别 固定翼识别 低空安防 目标检测9063期
人工智能·yolo·目标检测·计算机视觉·无人机·反无人机