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

相关推荐
YOLO数据集集合1 小时前
无人机航拍人体检测数据集|低空巡检搜救智能监控|YOLO目标检测算法训练集
人工智能·深度学习·yolo·目标检测·无人机
小O的算法实验室1 天前
2026年IEEE TASE,未知环境中的无人机群动态轨迹规划
无人机
zh路西法1 天前
【OpenCV无人机光流速度估计】基于Farneback稠密光流方法的无人机速度估计
人工智能·python·opencv·计算机视觉·无人机
德思特1 天前
特斯拉同款智慧充电站方案 | 德思特5G天线方案,解决充电桩分散联网难题
自动驾驶·无人机·天线
钓了猫的鱼儿1 天前
基于深度学习+AI的无人机违规防控目标检测与预警系统(Python源码+数据集+UI可视化界面+YOLOv11训练结果)
人工智能·深度学习·无人机
LONGZETECH1 天前
Unity 3D工业级教育软件实战:200+无人机装调任务的碰撞检测与交互落地
3d·unity·架构·游戏引擎·无人机·交互·cocos2d
LONGZETECH2 天前
架构师实战拆解|无人机智慧实训SaaS中台:断电续考、AI组卷、多端同步核心设计
大数据·人工智能·架构·系统架构·无人机
战族狼魂2 天前
集 “自动飞行、智能识别、实时预警、勤务联动” 于一体的高速公路应急车道无人机检测系统方案
java·人工智能·大模型·无人机
GIS数据转换器2 天前
智慧能源管理平台
java·大数据·运维·人工智能·无人机