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

相关推荐
workflower1 天前
AI system product quality model
大数据·人工智能·机器学习·云计算·无人机
workflower1 天前
世界模型的内涵与发展
人工智能·机器人·云计算·无人机
YOLO数据集集合1 天前
玉米雄穗目标检测数据集 | 玉米雄穗 作物表型 智慧农业 无人机巡检 小样本检测9142期
人工智能·目标检测·无人机·玉米·玉米雄蕊·玉米雄穗
workflower2 天前
从生成式模型开始的技术延伸
人工智能·机器学习·机器人·云计算·无人机
Zootopia6262 天前
多架 eVTOL集群排班调度方案思考
人工智能·算法·数学建模·matlab·动态规划·无人机·evtol
feasibility.3 天前
把城市压缩成 2067 个盒子:CosFly 无人机跟踪数据管线论文解剖
人工智能·大模型·嵌入式·无人机·vla
YOLO数据集集合3 天前
无人机视角行人与车辆检测数据集 | 无人机航拍 行人检测 车辆检测 智慧城市 公共安全9140期
人工智能·目标检测·无人机·智慧城市·车辆识别·无人机视角
workflower3 天前
世界模型向产业上游发掘的热点
人工智能·机器学习·机器人·云计算·无人机
YOLO_DATA3 天前
YOLO27防震锤缺陷检测数据集 防震锤数据集 1000张 防震锤 带标注 voc yolo 2 类 目标检测
人工智能·深度学习·yolo·目标检测·计算机视觉·数据集·无人机
高升说4 天前
无人机避障方案取舍:单目、双目与激光雷达的工程对比
人工智能·无人机