uBotAerial 概述
需要:uBotAerial 0.1.x(含依赖 uBotCore),并启用引擎插件 EnhancedInput
用 uBotAerial 在 UE 里飞多旋翼无人机:导航研究用简化飞控,飞控研究用刚体动力学,自己写的飞控也能接进来。
三类无人机对应三种研究需要,都是插件内容里的示例蓝图,由插件的组件拼成:
| 能力 | 适合 | 接收的指令 | 页面 |
|---|---|---|---|
导航级无人机(BP_UBotNavigationDrone) |
导航、规划、感知,不关心飞控 | 速度、偏航角速度 | 用速度指令飞导航无人机 |
物理级无人机(BP_UBotPhysicsDrone) |
需要真实的动力学,直接用内置串级飞控 | 速度、姿态、角速度、单电机 | 物理无人机的指令与控制模式 |
裸机级无人机(BP_UBotBareAirframeDrone) |
研究飞控,控制器自己写 | 角速度、单电机 | 自己写飞控 |
| 示例无人机与试飞关卡 | 马上飞起来 | 示例无人机与试飞关卡 | |
| 键盘和手柄手动飞行 | 手动试飞 | 键盘和手柄手动飞行 | |
| 风 | 恒定风和阵风 | 风 | |
| 碰撞 | 撞到地面、墙和其他物体 | 碰撞 | |
| 从 ROS 2 下发速度、姿态和电机指令 | 配合 uBotROS 0.1.2 | 从 ROS 2 发飞行指令 |
已发布 最新版本 0.1.0
uBotAerial 依赖 uBotCore 0.1.2 起的版本和引擎插件 Enhanced Input,不依赖 uBotSensor 和 uBotROS。用 uBot Manager 安装,依赖会一并装好。
示例内容在 /UBotAerial/Examples/ 下的三个示例蓝图和 /UBotAerial/Maps/L_UBotAerialDemo,用法见 示例无人机与试飞关卡。
| 组件 | 作用 | 参考 |
|---|---|---|
uBot Simple Flight |
导航级飞行模型:速度按一阶响应逼近指令 | uBot Simple Flight |
uBot Multirotor Dynamics |
物理级和裸机级的刚体动力学 | uBot Multirotor Dynamics |
uBot Flight Controller |
自己写飞控时继承的基类 | uBot Flight Controller |
uBot Cascaded Flight Controller |
内置的串级飞控 | uBot Cascaded Flight Controller |
uBot Rotor |
随电机转速旋转的桨叶 | uBot Rotor |
uBot Multirotor Manual Input |
键盘和手柄手动飞行 | uBot Multirotor Manual Input |
uBot Wind(Actor) |
在关卡里放置的风源 | uBot Wind |
uBot Wind Subsystem |
汇总所有风源,也可以用蓝图设置风 | uBot Wind Subsystem |
uBot Multirotor Library |
蓝图函数库:查找飞行模型、生成机架 | uBot Multirotor Library |
示例无人机的模型是 Fab 上 HARTWEL JUNIOR KISAKA 的 Animated Drone,授权 CC BY 4.0。插件的 NOTICE 写明了改动。
- 示例无人机与试飞关卡:打开试飞关卡,马上飞起来。
- 用速度指令飞导航无人机:用蓝图给导航无人机发速度指令。