跳转到内容

UBotAerial

名称
uBotAerial UBotAerial
手册
uBotAerial 手册
文档版本
0.1.0(UE 5.5)
依赖
UBotCore ^0.1.2
引擎插件
EnhancedInput
提供
Actuation.Velocity、Actuation.Attitude、Actuation.Motor、Body.Multirotor、Aerial.Wind
预编译
UE 5.5 Win64
仓库
github.com/AstreoX/uBotAerial
模块
UBotAerial(Runtime)
数据
UBotDocExport 1

多旋翼无人机:面向导航的简化飞控,带速度、姿态、角速度和电机控制的刚体动力学,风,以及示例无人机蓝图。

页面说明
uBotAerial 概述uBotAerial 手册uBotAerial 提供三类多旋翼无人机、风、手动飞行和试飞关卡:各适合什么研究,包含哪些组件,装它需要什么。
示例无人机与试飞关卡uBotAerial 手册用插件自带的示例无人机和试飞关卡马上飞起来,并把示例放进自己的关卡、改成自己的。
用速度指令飞导航无人机uBotAerial 手册用速度指令控制导航级无人机,了解它的响应、刹车和倾斜。
物理无人机的指令与控制模式uBotAerial 手册了解物理级和裸机级无人机接收哪些指令、控制模式怎样切换,以及指令中断时会怎样。
自己写飞控uBotAerial 手册用自己写的控制器替换内置的串级飞控。
自己拼一架无人机uBotAerial 手册不用示例蓝图,用插件的组件把任意 Pawn 拼成无人机,并让转子和机架对上。
键盘和手柄手动飞行uBotAerial 手册用键盘或手柄手动飞无人机,了解三种手动模式的区别和切换操控对象的方法。
风uBotAerial 手册给场景加恒定风和阵风,或在运行时用蓝图改变风。
碰撞uBotAerial 手册了解无人机碰到地面、墙和其他物体时会怎样,并在蓝图里得知撞击。
uBotAerial 常见问题uBotAerial 手册uBotAerial 的常见问题,按主题分组,每题给出答案和链接。
名称类型节点说明
uBot Cascaded Flight ControllerUUBotCascadedFlightController对象0内置飞控,级联结构:速度环(世界系 PID)给出推力向量和目标姿态,姿态环(四元数误差 P)给出角速度,角速度环(PI 加惯量前馈)再把推力分配给各旋翼。每种控制模式从各自对应的一级进入;默认增益适合默认机架和 1 kHz 物理步频。
uBot Flight ControllerUUBotFlightController对象3物理多旋翼的飞控。多旋翼每个物理步(或每隔 `Controller Rate Divider` 步)带着真值状态和当前控制模式的目标调用一次 `Compute Motor Commands`,并执行它返回的归一化电机指令。在 C++ 里继承并重写 `_Implementation` 函数即可换成自己的飞控;蓝图子…
uBot Multirotor DynamicsUUBotMultirotorDynamicsComponent组件5用于飞控研究的刚体多旋翼:有电机滞后的旋翼、推力与反扭矩、相对空气的阻力和重力,按 uBot 仿真时间以固定步长积分。接受速度(航向系)、姿态、角速度和单电机指令,前三者由飞控换算成电机指令。
uBot Multirotor LibraryUUBotMultirotorLibrary函数库2uBot 多旋翼的辅助函数。
uBot Multirotor Manual InputUUBotMultirotorManualInputComponent组件2本地玩家控制(附身)所属多旋翼时,用键盘或手柄驾驶它。输入动作和映射上下文在运行时创建(Enhanced Input),不需要资产;要改按键就设置自己的。控制期间每帧发送一条指令。控制结束时,速度模式下刹车悬停;姿态和角速度模式下按 `Command Loss Action` 处理,默认悬停。
uBot Multirotor MovementUUBotMultirotorMovementComponent组件7多旋翼飞行模型的基类。它按 uBot 仿真时间以固定物理步移动根组件(被更新的组件),用碰撞体扫过世界并沿接触面滑动(地面和其他表面一样),每帧显示外推到当前仿真时间的姿态。接受航向坐标系下的速度指令(`IUBotVelocityCommandable`):X 沿当前朝向向前,Y 向右,Z 向上,只用 Z 方向的…
uBot RotorUUBotRotorComponent组件2多旋翼的可视转子:一个绕本地 Z 轴旋转的网格。同一 Actor 上的多旋翼运动组件每帧用相同 `Rotor Index` 的电机设置转速,并在开始游玩时按它的转子布局设置旋转方向。
uBot Simple FlightUUBotSimpleFlightComponent组件2用于导航研究的简化飞行控制:无人机以平滑、有界的响应(一阶、限制加速度和加加速度)跟踪速度指令,并在有限距离内刹停。没有力和姿态动力学,倾角随加速度变化。
uBot WindAUBotWindActor2关卡里的风,作用于 uBot 多旋翼。放一个到关卡中,风就吹遍整个关卡(风场空间均匀),多个风 Actor 的风会叠加。编辑器里的箭头指向稳定风的方向。
uBot Wind SubsystemUUBotWindSubsystem子系统2世界的风:所有已启用的 `uBot Wind` Actor 加上蓝图设置的脚本风的总和。风场空间均匀,位置参数仅为以后扩展保留。
名称字段说明
UBot Flight SetpointFUBotFlightSetpoint11飞控在一个物理步里要飞的目标。单位为 SI,坐标为 UE 世界轴。
UBot Manual Flight AxesFUBotManualFlightAxes4手动飞行的输入,每个轴的取值范围是 -1 到 1。
UBot Multirotor AirframeFUBotMultirotorAirframe7多旋翼的质量、转动惯量、旋翼和阻力。默认是一架 1.5 kg、轴距 450 mm 的四旋翼 X。
UBot Multirotor StateFUBotMultirotorState8多旋翼在最近一个物理步的真值状态,SI 单位,UE 世界坐标轴。
UBot Multirotor Velocity LimitsFUBotMultirotorVelocityLimits4多旋翼的速度上限。超过上限的指令会被截断,水平方向保持不变。
UBot Rotor SpecFUBotRotorSpec6多旋翼的一个旋翼:位置、旋向和电机参数。
UBot Wind SettingsFUBotWindSettings4风:恒定部分加阵风。阵风是相位由种子决定的正弦之和,同样的设置在同样的仿真时间给出同样的风。
名称取值说明
EUBot Command Loss ActionEUBotCommandLossAction3物理多旋翼在指令中断(发送方释放或超时)后的行为。
EUBot Flight Control ModeEUBotFlightControlMode4物理多旋翼飞行时执行哪一类指令。
EUBot Manual Flight ModeEUBotManualFlightMode3键盘和手柄输入如何驾驶多旋翼。
EUBot Motor Command MappingEUBotMotorCommandMapping2归一化电机指令(0 到 1)如何换算成转子转速。
EUBot Rotor Spin DirectionEUBotRotorSpinDirection2从上往下看,转子的旋转方向。
EUBot Simple Flight Tilt ModeEUBotSimpleFlightTiltMode3简化飞行模型倾斜的对象。