像所有 Unreal 项目一样,AirSim 的项目也可以被打包出来,但是我不建议你在 Ubuntu 环境下这么做,因为在 Ubuntu 环境下 AirSim 使用 PX4 SITL 可能会出现崩溃的情况。我们也正在解决这个问题。另外,Unreal 需要的硬盘空间很大(大约 69 GB),需要的硬件配置也很高,所以如果你不想在自己的电脑上安装一个如此巨大的软件,也可以使用 Gazebo ,可以省却很多适配的烦恼。
注意:AirSim 官方支持 Unreal 4.18,但是在本示例中所用到的 Unreal 布景只支持 Unreal 4.22 版本,而经过测试 AirSim 在 Unreal 4.22 版本下也可以使用,故我们选择了 Unreal 4.22 版本。
UnrealEngine/Engine/Binaries/Linux/UE4Editor
。Unreal/Environments
目录中,有一个名字叫 Blocks
预设的项目,但是在打开该项目之前请先把 AirSim/Unreal/Enviroments/Plugins
复制到 AirSim/Unreal/Enviroments/Blocks
中,然后在 Unreal 中打开项目。你可以编辑(Firmware_Path)/posix-configs/SITL/init/ekf2/iris
文件来设置飞机参数
按F1
键可以查看快捷键,你也可以打开 FPS 显示随时查看 FPS。
fcu_url
参数,首先新建一个 launch 文件。<arg name="fcu_url" default="/dev/ttyACM0:57600" />
的默认参数为<arg name="fcu_url" default="udp://:[email protected]:14557" />
。EKF2_AID_MASK
参数改为 vision position fusion
,对应值为 8
。编辑 (Firmware_Path)/posix-configs/SITL/init/ekf2/iris
文件,将其中的 EKF2_AID_MASK
值改为 8
,默认为 1 。 在这个配置文件中,GPS 的Enable
选项已经被设置成false
,并且加入了双目摄像头。
simulator/airsim
目录中,运行 drone_image_ros.py
。bash
sudo pip install airSim cd (GAAS_PATH)/simulator/airsim python drone_image_ros.py
注意:当你使用 SLAM 时,请进入 Unreal 的Edit >> Editor Preference
中把Use Less CPU when in Background
选项关闭。不然的话当 Unreal 处在后台运行的时候,会影响帧率。