【AirSim】源代码

AirLib

AirSim代码的大部分 都位于 AirLib. 这是一个独立的库 a self-contained library,你可以使用任何 C++11 编译器进行编译。
AirLib包含以下组件:
物理

  • 物理引擎 Physics engine:这是header-only physics engine? 它旨在快速和可扩展,以实现不同的车辆。
  • 传感器型号Sensor models:这是用于气压计,IMU,GPS和磁力计的 header-only models?
  • 车型Vehicle models:这是车辆配置和型号的 header-only models。
    目前我们已经在X配置中实现了MultiRotor的模型和PX4 QuadRotor的配置。
  • 控制库:AirLib的这一部分为我们的API 提供 抽象基类abstract base class,并为特定的车辆平台(如MavLink)提供 具体实现concrete implementation。 它还具有RPC客户端client 和服务器server的类。

Unreal/Plugins/AirSim

这是项目中唯一依赖于虚幻引擎的部分。 我们已将它隔离,因此我们也可以为其他平台实现模拟器(例如,Unity)。
虚幻代码利用其基于UObject的类(包括蓝图)。The Unreal code takes advantage of its UObject based classes including Blueprints.

  • SimMode_类 SimMode_ classes:我们希望支持各种模拟器模式,例如没有无人机的纯计算机视觉模式。
    SimMode类有助于实现许多不同的模式。

VehiclePawnBase:这是所有车辆 典当 pawn ?可视化的 基类。
VehicleBase:此类提供抽象接口 abstract interface 以实现 渲染组件rendering component(即虚幻棋子),物理组件(即MultiRotor)和控制器(即MavLinkHelper)的组合。

MavLinkCom

这是由我们自己的团队成员Chris Lovett开发的库,它提供了与MavLink设备通信的C ++类。 该库是独立的,可以在任何项目中使用。 有关详细信息,请参阅MavLinkCom。

Sample Programs 示例程序

我们已经创建了一些示例程序来演示如何使用API。 请参阅HelloDrone和DroneShell。
DroneShell演示了如何使用UDP连接到模拟器。 模拟器正在运行服务器(类似于DroneServer)。

Unreal Framework

原图链接
下图说明了虚幻游戏引擎如何加载和调用AirSim:
在这里插入图片描述

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值