【Flightmare最全教程】基于ROS的Flightmare仿真环境的搭建

搭建基于ROS的Fligtmare仿真环境

Flightmare 是一个灵活的模块化四旋翼模拟器,主要由两个核心组件构成:基于 Unity 的可配置渲染引擎和用于动力学仿真的灵活物理引擎。这两个组件完全解耦,可独立运行。在安装配置的过程中遇到了一些问题,解决之后想与大家分享,避免大家在配置的过程中遇到相同的问题。

在这里插入图片描述

  • Flightmare主要特性:

    • 配备大型多模态传感器套件,包括提取场景 3D 点云的接口。
    • 提供强化学习 API,可并行模拟数百架四旋翼。
    • 集成虚拟现实头显,支持与模拟环境交互。

应用场景:
可用于路径规划、强化学习、视觉惯性里程计、深度学习、人机交互等多种应用。

仓库地址:
https://github.com/uzh-rpg/flightmare
官方学习网站地址:
https://flightmare.readthedocs.io/en/latest/documentation.html

Git环境配置及相关依赖库的安装

Git

在终端运行以下指令,配置git环境

sudo apt-get install git
git config --global user.name "Your Name Here"
git config --global user.email "Same Email as used for github"
git config --global color.ui true

Packages

在终端运行以下指令,安装Flightmare所需要的依赖库

apt-get update && apt-get install -y --no-install-recommends \
   build-essential \
   cmake \
   libzmqpp-dev \
   libopencv-dev

基于ROS的Flightmare环境配置

  • 推荐配置:
    • Ubuntu:20.04
    • ROS:noetic

Gazebo安装

ROS Melodic 及更新版本:使用 Gazebo 版本 9.x 运行命令 sudo apt-get install gazebo9
ROS Kinetic 及更新版本:使用 Gazebo 版本 7.x 运行命令 sudo apt-get install gazebo7
ROS Indigo:使用 Gazebo 版本 2.x 运行命令 sudo apt-get install gazebo2

安装ROS依赖

对 Ubuntu20.04,运行

sudo apt-get install libgoogle-glog-dev protobuf-compiler ros-$ROS_DISTRO-octomap-msgs ros-$ROS_DISTRO-octomap-ros ros-$ROS_DISTRO-joy python3-vcstool

对其他Ubuntu版本,运行

sudo apt-get install libgoogle-glog-dev protobuf-compiler ros-$ROS_DISTRO-octomap-msgs ros-$ROS_DISTRO-octomap-ros ros-$ROS_DISTRO-joy python-vcstool

在继续之前,请确保您的 protobuf 编译器版本为 3.0.0。要检查版本,请在终端中输入 protoc --version。如果不是这种情况,请查看官方指南了解如何操作。

配置catkin工具及创建工作空间

安装catkin

sudo apt-get install python-pip
sudo pip install catkin-tools

创建工作空间

cd
mkdir -p catkin_ws/src
cd catkin_ws
catkin config --init --mkdirs --extend /opt/ros/$ROS_DISTRO --merge-devel --cmake-args -DCMAKE_BUILD_TYPE=Release

接下来就可以开始安装Flightmare仿真环境了。

安装并编译Flightmare

从原始仓库拉取仓库

cd ~/catkin_ws/src
git clone https://github.com/uzh-rpg/flightmare.git

克隆相关依赖

vcs-import < flightmare/flightros/dependencies.yaml

此处需要配置本地的SSH密钥,详细操作请查阅相关的教程。

编译工作空间

catkin build flightros -DBUILD_SAMPLES:=ON

这里的-DBUILD_SAMPLES:=ON也可以不加,开启后可以编译racing实验,但会遇到一些问题(可能只是博主自己铸币qwq)

确保编译全部通过,如果有报错解决报错后再次编译。

Flightmare Unity Binary的下载安装

在已经安装并配置完成的UE中安装Flightmare Unity Binary,UE的下载和相关配置可以查看相关的博客
https://blog.csdn.net/Dugege007/article/details/128472571

在所给链接https://github.com/uzh-rpg/flightmare/releases/latest/download/RPG_Flightmare.tar.xz中下载’RPG_Flightmare.tar.xz’,并将其提取到/path/to/flightmare/flightrender目录下。

Flightmare仿真环境的基本实验运行

在Flightmare环境的基础实验(rotors_gazebo.launch)中,使用RotorS来对四旋翼无人机进行建模,使用rpg_quadrotor_control控制器作为模型的基础控制器。

进入工作空间

cd ./catkin_ws

source一下

source ./devel/setup.bash

运行相应的launch文件

roslaunch flightros rotors_gazebo.launch

就可以在unity环境中进行基础仿真了

在这里插入图片描述

在下一篇博客中会对其他实验和其他功能进行进一步的讲解。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值