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

简介¶
一句话描述:该模块是RflySim Swarm接口库中,基于Offboard__full模块封装的NED坐标系位置控制指令编码模块。
该模块是RflySim无人机集群 swarm 开发工具链中的专用编码模块,支持开发人员直接输入NED坐标系下的位置控制指令,为集群多无人机的位置控制场景提供了便捷封装。该模块生成的标准化Offboard控制指令可通过配套通信接口发送给PX4飞控,同时对接CopterSim仿真引擎与RflySim3D可视化环境,可直接在RflySim全仿真链路中完成集群位置控制算法的验证与测试,典型使用场景为多无人机集群编队、集群协同航路跟踪等基于位置控制的集群任务开发。
端口说明¶
输入端口(Inputs)¶
| 端口名 | 数据类型 | 维度 | 说明 |
|---|---|---|---|
NED Position Setpoint |
double |
1×3 |
NED坐标系下的目标位置指令,依次为北方向位置、东方向位置、下方向位置 |
Yaw Setpoint |
double |
1×1 |
目标偏航角指令,单位为rad |
输出端口(Outputs)¶
| 端口名 | 数据类型 | 维度 | 说明 |
|---|---|---|---|
Encoded Offboard Command |
double |
1×N |
编码后的全量离线控制指令,可直接接入Offboard__full模块的指令输入端口 [待确认] |
参数配置(Parameters)¶
双击模块打开的 Mask 对话框中可配置以下参数:
| 参数名 | 类型 | 默认值 | 可选值/范围 | 说明 |
|---|---|---|---|---|
CopterID |
int |
1 |
1~255 |
目标无人机的ID,用于集群场景中指定控制对象 |
参数设置说明¶
CopterID¶
该参数指定当前位置控制指令对应的无人机编号,在多无人机集群仿真中,需要为每架无人机的指令编码模块配置唯一匹配的CopterID,保证指令正确发送给对应无人机。
模块特性(Block Characteristics)¶
| 特性项 | 值 |
|---|---|
| 支持的数据类型 | double、single |
| 直接馈通(Direct Feedthrough) | 是 |
| 采样时间 | 继承 |
| 代码生成支持 | 否 |
数据通信协议¶
该模块为集群Offboard控制指令编码模块,输出编码后的指令数据通过UDP协议发送给RflySim仿真端,遵循RflySwarm集群通信协议格式,默认使用集群控制通信端口。
相关模块¶
| 模块名 | 说明 |
|---|---|
Offboard__full |
RflySim Swarm集群基础Offboard控制封装模块 |
vel_ned_full |
NED坐标系下集群速度控制指令编码模块 |
att_sp_full |
姿态期望指令集群编码模块 |
thrust_sp_full |
推力期望指令集群编码模块 |
RflyUdpSendSwarm |
集群控制指令UDP发送模块 |
注意事项与常见问题¶
- 坐标系一致性:该模块输出的控制指令基于NED坐标系,输入位置指令时需保证输入坐标与NED坐标系定义一致,不可直接输入ENU坐标系坐标,否则会出现无人机位置控制方向相反的错误。
- 与Offboard__full模块依赖关系:该模块是Offboard__full模块的封装衍生模块,使用前需确保模型中已正确配置Offboard__full模块的通信参数(如无人机ID、UDP通信端口等),否则模块无法正常发送位置指令。
- 初始化顺序:该模块需在RflySim Swarm环境和Offboard__full通信模块初始化完成后再输出位置指令,不可在仿真初始步直接输出非零期望位置,否则可能导致无人机失控触发锁死保护。
- 采样时间匹配:该模块的采样时间需与模型中Offboard__full通信模块的采样时间保持一致,不建议使用差异超过10倍的采样率,否则会出现指令丢包或者控制滞后问题。
- 群体组网使用限制:当在多机集群仿真中使用多个pos_ned_full模块时,需要为每个无人机对应配置独立的无人机ID,避免不同无人机指令冲突导致位置控制异常。
更新日志¶
v4.1.0(2023-06-15): 初始版本,新增支持NED坐标系下位置控制指令输入的pos_ned_full封装模块。