vel_ned_full 模块文档¶
所属工具箱:RflySim Swarm

简介¶
一句话描述:该模块是RflySim Swarm接口库中基于Offboard__full封装的NED坐标系速度指令编码模块,用于生成符合协议要求的速度控制指令。
该模块是RflySim多无人机集群仿真工具链的专用指令编码模块,定位为离线控制(Offboard)场景下的速度指令处理封装单元,典型使用场景为多无人机集群速度控制仿真开发,支持开发者直接输入NED坐标系下的期望速度指令,省去自定义协议编码的步骤。该模块生成的编码指令会通过UDP通信传输给CopterSim完成飞控逻辑仿真,最终将仿真状态同步至RflySim3D实现集群飞行的可视化展示,同时也可对接真实PX4飞控硬件完成硬件在环仿真或实物集群测试。
端口说明¶
输入端口(Inputs)¶
| 端口名 | 数据类型 | 维度 | 说明 |
|---|---|---|---|
vel_ned |
double |
1×3 |
NED坐标系下的速度指令,分别为北方向速度、东方向速度、下方向速度 |
CopterID |
double |
1×1 |
要控制的无人机ID,仅当模块配置为单ID模式时为有效输入 |
[待确认] 若模块配置为广播所有无人机模式,CopterID输入端口不生效
输出端口(Outputs)¶
| 端口名 | 数据类型 | 维度 | 说明 |
|---|---|---|---|
packaged_offboard_cmd |
double |
1×n |
编码完成的离线控制指令包,可直接输入给offboard控制发送模块 [待确认] |
参数配置(Parameters)¶
双击模块打开的 Mask 对话框中可配置以下参数:
| 参数名 | 类型 | 默认值 | 可选值/范围 | 说明 |
|---|---|---|---|---|
Target Copter ID |
int |
1 |
1~255 / 0 |
目标无人机ID,0表示广播给所有无人机 |
Yaw rate cmd |
double |
0 |
任意实数 | 偏航角速度指令,单位为rad/s |
参数设置说明¶
Target Copter ID¶
配置需要发送速度指令的无人机ID,设置为0时,模块会将指令广播给集群中所有无人机,此时无需输入CopterID信号;设置为非0值时,可通过输入端口动态输入目标无人机ID实现灵活控制。
Yaw rate cmd¶
模块仅支持输入NED坐标系下的三轴速度指令,偏航角速度作为固定参数在此配置,若需要动态调整偏航角速度,可通过修改模块封装实现端口输入。
模块特性(Block Characteristics)¶
| 特性项 | 值 |
|---|---|
| 支持的数据类型 | double、single |
| 直接馈通(Direct Feedthrough) | 是 |
| 采样时间 | 继承 |
| 代码生成支持 | 否 |
数据通信协议¶
本模块不涉及网络通信,仅完成速度指令编码,最终输出数据会由Offboard控制类模块通过UDP协议发送给PX4仿真固件。
相关模块¶
| 模块名 | 说明 |
|---|---|
Offboard__full |
群舞 Offboard 控制基础封装模块,本模块基于该模块二次开发 |
pos_ned_full |
NED坐标系下位置指令编码模块,同系列群舞控制编码模块 |
att_throttle_full |
姿态油门指令编码模块,同系列群舞控制编码模块 |
注意事项与常见问题¶
- 坐标系规范:该模块输出的速度指令基于NED坐标系,输入速度指令需要符合NED坐标系定义(北为x正方向、东为y正方向、下为z正方向),不要混淆ENU坐标系定义,否则会导致无人机飞行方向与预期完全相反。
- 初始化顺序:需要确保整个RflySim Swarm集群仿真的Offboard模式初始化完成后,再输出该模块生成的速度指令,否则无人机可能无法进入Offboard控制模式,出现失控报错。
- 输入范围限制:输入的速度指令幅值不要超过无人机飞控的最大速度限制,一般建议速度指令绝对值不超过10m/s,超限指令会被PX4飞控截断,导致飞行轨迹偏离预期。
- 采样时间匹配:模块输出速度指令的采样时间需要匹配Offboard__full父模块的通信周期,建议设置为10ms~50ms,采样时间过大(超过1s)会导致Offboard控制超时,飞控自动切回手动模式。
- 集群使用注意:在多无人机集群仿真中,每个无人机需要单独配置独立的vel_ned_full模块,不要多个无人机复用同一个模块,否则会出现指令广播错误,导致所有无人机跟随同一速度指令飞行。
更新日志¶
v4.10(2024-06-15): 初始发布vel_ned_full封装模块,支持在Offboard__full基础上接收NED坐标系下速度指令输入。