初遇AirSim(二)

初步搭建好AirSim平台后就可以更换复杂、自定义环境并且链接远程控制。
AirSim官方GitHub:https://github.com/Microsoft/AirSim
配置AirSim可以看初遇AirSIm(一)


配置自己的场景

打开虚幻4在左边菜单 “学习” 中选择自己想要的场景,这里以山脉景观为例
初遇AirSim(二)_第1张图片
然后下载到本地
初遇AirSim(二)_第2张图片
准备好这些后 创建工程 ,这里要注意名称改为英文。打开工程在菜单栏选择 文件 下的 新建C++类 按照默认选项一直下一步,官方说法是在项目中至少要有一个source文件。
初遇AirSim(二)_第3张图片
然后将AirSim\Unreal 目录下的 Plugin 文件拷贝到所创建的工程下。e.g. 在我建的LandscapeMountains项目目录下拷入这个文件。
初遇AirSim(二)_第4张图片
编辑下面的 LandscapeMountains.uproject 像这样:

{
    "FileVersion": 3,
    "EngineAssociation": "4.16",
    "Category": "Samples",
    "Description": "",
    "Modules": [
        {
            "Name": "LandscapeMountains",
            "Type": "Runtime",
            "LoadingPhase": "Default",
            "AdditionalDependencies": [
                "AirSim"
            ]
        }
    ],
    "TargetPlatforms": [
        "MacNoEditor",
        "WindowsNoEditor"
    ],
    "Plugins": [
        {
            "Name": "AirSim",
            "Enabled": true
        }
    ]
}

保存.uptoject 文件然后右键选择 Generate Visual Studio Project Files ,这回查找这个项目下所有plugins文件和source文件然后重新生成vs可以运行的 .sln 文件。
这里写图片描述
还有一种方式是打开虚幻4的项目然后在菜单文件一栏下选择刷新vs项目。
初遇AirSim(二)_第5张图片
这时在vs中打开 .sln 文件进行和初遇AirSim(一)配置简单环境中一样的操作这里写图片描述
在场景中菜单窗口栏打开世界设置窗口,在Game Mode选择 AirSimGameMode
初遇AirSim(二)_第6张图片 初遇AirSim(二)_第7张图片
自定义环境就配置好了,如果有需要还可以下载其他场景。

设置远程操控

我设置PX4 Hardware-in-Loop,如果有其他需要可以查看官方文档:
https://github.com/Microsoft/AirSim/blob/master/docs/remote_control.md
https://github.com/Microsoft/AirSim/blob/master/docs/px4_setup.md

  • 确保远程控制接收器和发送器绑定 。
  • 下载QGroundControl,打开并通过USB链接飞行器。
  • 这里可能需要重新使用固件v1.5.5,在GitHub下载v1.5.5。这里写图片描述
  • 在QGC中更新固件推荐PX4,选择在本地文件中的版本,找到之前下载解压好的v1.5.5,选择 nuttx-px4fmu-v2-default.px4
    初遇AirSim(二)_第8张图片初遇AirSim(二)_第9张图片
  • Airframe 选择 SimulationHILQuadooper X
    初遇AirSim(二)_第10张图片
  • 校准飞行器,具体不在这里说推荐网上查找资料或查看官方文档(推荐),或者我上传了一个简单版(不推荐)。
  • 在AirSim的配置文件settings.json中注明版本PX4,配置文件在C盘 C:\Users\*\Documents\AirSim目录下。
{
  "SettingsVersion": 1.0,
  "DefaultVehicleConfig": "PX4"
}

若有遥控器无法链接的问题需要编辑 settings.json文件,具体见问题2。

遇见问题总结

1、右键 .uproject 点击 Generate Visual Studio Project Files 提示缺少插件:
初遇AirSim(二)_第11张图片
原因是 ..\Plugins\AirSim 目录下缺少 AirSim.uplugin 文件。解决办法一是删除掉 AirSim\Unreal 目录下Plugins 从新build会生成新的 Plugins。另一个解决方法是找到 AirSim\Unreal\Environments\Blocks\Plugins\AirSim 目录下拷贝这个文件到自己项目下。
初遇AirSim(二)_第12张图片
e.g. 将 D:\AirSim\Unreal\Environments\Blocks\Plugins\AirSim 目录下 AirSim.uplugin 复制粘贴到 D:\Unreal Projects\LandscapeMountains\Plugins\AirSim 目录下

2、RC Controller on USB not detected 没有探测到USB。
这里写图片描述
需要在 C:\Users\*\Documents\AirSim\settings.json 中设置PX4端口 “SerialPort”:”*” ,意思是寻找任何可能是Pixhawk设备的端口。若要找到自己Pixhawk设备端口可以右键 我的电脑属性 中找到 设备管理器,在这里查看端口,设置成 “SerialPort”:”COM3,115200”
初遇AirSim(二)_第13张图片 初遇AirSim(二)_第14张图片
settings.json 中编辑:

{
  "SettingsVersion": 1.0,
  "DefaultVehicleConfig": "PX4",
  "PX4": {
    "FirmwareName": "PX4",
    "SerialPort":"*"
   }
}

更多settings配置和不用遥控器需要shell控制的,可以看初遇AirSim(三)


参考资料

px4设置官方文档:https://github.com/Microsoft/AirSim/blob/master/docs/px4_setup.md
演示视频:https://www.youtube.com/watch?v=HNWdYrtw3f0&feature=youtu.be
AirSim设置视频:https://www.youtube.com/watch?v=1oY8Qu5maQQ&feature=youtu.be

你可能感兴趣的:(学习日志)