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

相关推荐
24年生活经验_小旻4 天前
ROS2+Ardupilot+Gazebo通信仿真基本环境搭建
无人机
嘉子的秃头日记5 天前
TRO 2026|无人机能不能像积木一样,拼出不同形态?
无人机
YOLO数据集集合5 天前
无人机航拍地质灾害智能识别 山体滑坡实例分割数据集落地实战 | 泥石流监测 道路险情封堵 深度学习模型训练方案10296期
人工智能·深度学习·yolo·目标检测·无人机
海砥装备HardAus5 天前
大载重工业无人机高空风扰建模与ADRC自抗扰抗风控制实现
无人机·adrc·工业无人机
海砥装备HardAus5 天前
大载重工业无人机动力容错控制:单电机失效下的应急重构算法设计
算法·重构·嵌入式·无人机
中科固源5 天前
飞控里的“暗战”:无人机软件栈中的控制权风险
网络安全·无人机·低空经济
YOLO数据集集合5 天前
无人机风电设备智能巡检 风机叶片缺陷目标检测数据集实战 | 表面腐蚀漏油识别 工业视觉质检 深度学习模型训练落地10337期
人工智能·深度学习·目标检测·计算机视觉·无人机
飞手早知道6 天前
一站式选机服务落地 赋能无人机行业采购提质增效
无人机
LONGZETECH6 天前
无人机仿真教学软件选型实战:5 个硬核技术维度,避开实训建设踩坑
3d·无人机·交互·cocos2d
渡众机器人6 天前
智能体对抗挑战赛和空地协同侦排挑战赛的报名流程
人工智能·自动驾驶·无人机·智能体·报名流程