33

阿木币

4

精华

32 小时

在线时间

技术大V

Rank: 4

发表于 2019-8-24 18:41:43 21225 浏览 12 回复

[入门教程] Airsim Setting up PX4 Hardware-in-Loop 环境搭建教程(windows)

本帖最后由 Bingo 于 2019-8-24 20:50 编辑

Airsim Setting up PX4 Hardware-in-Loop 环境搭建教程(windows)

经过本教程,能够通过PX4连接遥控器,继而能够控制airsim UE4中四轴模型。 image

目录

  • 下载安装VS2017
  • git clone Airsim源码并编译
  • 下载安装Airsim指定UE4版本
  • 配置PX4飞控
  • 连接Airsim与UE4、PX4、遥控器

下载安装VS2017

下载VS

安装如下插件

image

git clone Airsim源码并编译

下载安装git工具

管理员身份打开如下所示的cmd

image

到任意目录下

git clone https://github.com/microsoft/AirSim

如果下载缓慢也可以clone我的码云中的仓库

git clone https://gitee.com/bingobinlw/AirSim

然后编译

cd AirSim
build.cmd

出错?YES,谁让这代码是老外写的呢

打开AirSim\AirLib\deps\eigen3\Eigen\src\Core\arch\CUDA\Half.h目录下的文件

修改

image

继续编译

出错!那你到官方github上求助吧,或发帖求助 ,看下我有没有遇到

https://github.com/microsoft/AirSim/issues

下载安装Airsim指定UE4版本

EPIC Game

image

下载AirSim指定的UE4我这里是4.18.3

下载环境包

image

继而创建工程,不过目录以及工程名最好不要包含汉字。

配置PX4飞控

准备:

  • pixhack硬件,USB线,刷最新的px4固件
  • 遥控器以及接收机能够连接pixhack

选择机架

image

重启后校准遥控器,别忘了设置飞行模式。

然后关闭QGC,等待连接UE4。

连接Airsim与UE4、PX4、遥控器

把AirSim编译后的 AirSim\Unreal\Plugins文件夹复制到UE4中你创建的工程的根目录下

image

打开本目录下的UE4工程

新建C++类

image

一路继续,等待一会后会自动打开VS2017,然后关闭UE4,VS2017(不保存)。

然后编辑用文本工具打开 .uproject文件 修改如下内容。

image

然后鼠标右击工程文件名,点击生成VS文件。

image

找不到Generate Visual Studio project files ? 没关系,因为我一开始也没有。你可以重启一下电脑,或者进入

UE4工程,后刷新VS项目,关闭UE4。

image

然后打开LandscapeMountains.sln 文件,进入VS2017工具后 按快捷键F5编译。

编译过程会打开UE4工程。

配置下图选择模型为AirSimGameMode

image

点击播放

image

正常情况下会出现 让你选择车或飞机模型。选择后就会出现模型了,

接下来连接PX4了。

编辑下面的文件内容如下。

参考文档:https://github.com/microsoft/AirSim/blob/master/docs/px4_setup.md

image

保存,点击UE4中播放。希望没问题。电脑连接飞控了吗,飞控连接遥控器了吗,QGC关闭了吗


扫一扫浏览分享
回复

使用道具 举报

176

阿木币

0

精华

349 小时

在线时间

版主

Rank: 7Rank: 7Rank: 7

发表于 2019-8-26 08:52:31
赞一个,给你移到精华资源并加精哈~~~
回复 点赞

使用道具 举报

209

阿木币

1

精华

52 小时

在线时间

老司机

Rank: 2

发表于 2019-8-26 08:56:48
来换个帅气的头像
回复 点赞

使用道具 举报

44

阿木币

1

精华

2327 小时

在线时间

管理员

Rank: 9Rank: 9Rank: 9

发表于 2019-8-26 17:55:52
敢不敢来点更干的干货~
回复 点赞

使用道具 举报

0

阿木币

0

精华

6 小时

在线时间

应届白菜

Rank: 1

发表于 2019-8-28 20:20:45
本帖最后由 amu_led 于 2019-8-29 11:02 编辑

请问,在用虚幻引擎打开工程的时候出现这个问题是为何?
我编译成功了AirSim(反正是没提示错误。。。)将Plugins文件夹复制到了工程文件下下,引擎是4.18.3版本的。

捕获.PNG
“AirSim”插件的二进制文件丢失或与当前引擎版本不兼容。您要禁用它吗?您将不再能够打开用它创建的资产。

我选择否后会这样
捕获2.PNG
然后就启动失败了。。

如果我选择了“是”,禁用以后,进了工程以后,会出现提示启用AirSim插件。
捕获3.PNG
点击启用,会提示需要重启,完了又进入上面提示文件丢失或者版本不兼容那里。。。
也就是说,可以发现插件,是会绊在不兼容了,但是我是严格按照说明使用的版本啊

我第一次用这个,问题比较蠢,还请见谅~_~~~












回复 点赞

使用道具 举报

0

阿木币

0

精华

6 小时

在线时间

应届白菜

Rank: 1

发表于 2019-8-28 20:40:08
本帖最后由 amu_led 于 2019-8-29 11:04 编辑

用您的代码库编译,在这里报错。
“E:\air2\AirSim\AirSim.sln”(默认目标) (1) ->
“E:\air2\AirSim\AirLibUnitTests\AirLibUnitTests.vcxproj”(默认目标) (11) ->
(ClCompile 目标) ->
  e:\air2\airsim\airlib\include\vehicles\multirotor\firmwares\arducopter\arducopterapi.hpp(184): error C2220: 警告被视为错误 - 没有生成“object”文件 [E:\air2\AirSim\AirLibUnitTests\AirLibUnitTests.vcxpr
oj]



我尝试了打开工程关闭“警告被视为错误”,但是在编译时还是会报错。




回复 点赞

使用道具 举报

33

阿木币

4

精华

32 小时

在线时间

技术大V

Rank: 4

 楼主| 发表于 2019-8-29 11:15:54
amu_led 发表于 2019-8-28 20:40
用您的代码库编译,在这里报错。
“E:\air2\AirSim\AirSim.sln”(默认目标) (1) ->
“E:\air2\AirSim\AirLi ...

关于这个问题 airsim\airlib\include\vehicles\multirotor\firmwares\arducopter\arducopterapi.hpp(184): error C2220: 警告被视为错误 - 没有生成“object”文件 [E:\air2\AirSim\AirLibUnitTests\AirLibUnitTests.vcxpr  网上各种方法我都试了,最后还是不行,我解决的办法是直接删除这个文件。然后你可以这样:

                               
登录/注册后可看大图

回复 点赞

使用道具 举报

33

阿木币

4

精华

32 小时

在线时间

技术大V

Rank: 4

 楼主| 发表于 2019-8-29 13:09:31
amu_led 发表于 2019-8-28 20:20
请问,在用虚幻引擎打开工程的时候出现这个问题是为何?
我编译成功了AirSim(反正是没提示错误。。。)将P ...

这个问题不蠢,我也不知道怎么回事
回复 点赞

使用道具 举报

0

阿木币

0

精华

6 小时

在线时间

应届白菜

Rank: 1

发表于 2019-10-8 08:34:18
amu_led 发表于 2019-8-28 20:20
请问,在用虚幻引擎打开工程的时候出现这个问题是为何?
我编译成功了AirSim(反正是没提示错误。。。)将P ...

此问题以解决,多谢
回复 点赞

使用道具 举报

0

阿木币

0

精华

6 小时

在线时间

应届白菜

Rank: 1

发表于 2019-10-8 08:36:21
你好,请问AirSim中的多无人机模拟是如何让实现与多台无人机之间的通信的,还是只是复制一台无人机的参数到虚拟环境中的不同位置而已?
回复 点赞

使用道具 举报

下一页 »
12下一页
返回列表
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表