跳转至

RflySim Model-仿真模型相关模块库


RflySim Model 库提供了一套完整的无人机仿真建模工具,包括六自由度动力学模型、电机模型、力模型、地面模型以及多种通信接口模块,支持从单无人机到多无人机的全场景仿真。


模块列表

动力学模型

模块 功能描述
6DOF 六自由度刚体动力学模型,计算无人机位置、速度、姿态、角速度等运动状态
Copter Force Model 多旋翼气动力模型,计算旋翼产生的拉力、扭矩和阻力
Copter Motor Model 多旋翼电机模型,模拟电机动态响应和转速特性
Ground Model 地面交互模型,模拟起落架与地面的接触力和摩擦力

通信接口

模块 功能描述
UDP 20100 PX4SIL Recv PX4SIL UDP 数据接收接口,接收端口 20100 的 PX4 仿真数据
UDP 30100 TrueSim Recv TrueSim UDP 数据接收接口,接收端口 30100 的高精度仿真数据
UDP 40100 RflyPX4 Recv RflyPX4 UDP 数据接收接口,接收端口 40100 的 RflySim PX4 数据
PX4SIL IntFloat Send PX4SIL 整型/浮点数据发送接口,向 PX4 发送整型和浮点型控制数据
PX4 Fault Params Send PX4 故障参数发送接口,向飞控发送故障注入参数

输出接口

模块 功能描述
3D Output 三维可视化输出接口,向 RflySim3D 发送位置和姿态数据
Sensor Output 传感器数据输出接口,输出各类传感器的模拟数据

使用场景

单机仿真

  • 动力学建模:使用 6DOF 模块搭建无人机刚体动力学模型
  • 电机建模:配合 Copter Motor Model 和 Copter Force Model 构建完整的多旋翼动力系统
  • 地面交互:使用 Ground Model 模拟起落架与地面的接触

硬件在环仿真

  • PX4SIL 接口:使用 UDP 20100/30100/40100 接收模块与 CopterSim 通信
  • 控制数据发送:使用 PX4SIL IntFloat Send 向飞控发送控制指令
  • 三维可视化:使用 3D Output 将仿真数据发送到 RflySim3D 显示

故障注入仿真

  • 故障参数发送:使用 PX4 Fault Params Send 向飞控注入各类故障参数
  • 传感器故障:通过 Sensor Output 模拟传感器故障数据

使用注意事项

动力学建模

  1. 参数准确性:6DOF 模块的质量、转动惯量等参数需要与实际无人机匹配,否则仿真结果会失真
  2. 坐标系约定:模块使用 NED(北东下)坐标系和机体坐标系,输入输出数据需符合该约定
  3. 初始条件:设置合理的初始位置、速度、姿态,避免初始状态冲突导致仿真发散
  4. 数值稳定性:仿真步长不宜过大,建议固定步长不超过 1ms,保证数值积分稳定性

通信接口

  1. 端口配置:UDP 接收/发送模块的端口号需与 CopterSim 配置匹配,避免通信失败
  2. 网络设置:确保防火墙允许相应端口的 UDP 通信,特别是多机仿真场景
  3. 数据同步:通信模块的采样时间需与 Simulink 模型步长一致,避免数据错位
  4. 超时处理:接收模块需设置合理的超时机制,防止因通信中断导致仿真卡死

故障注入

  1. 参数范围:故障参数需在合理范围内,过大或过小的值可能导致仿真崩溃
  2. 故障时机:合理选择故障注入时机,避免在关键控制阶段注入严重故障
  3. 恢复机制:设计故障恢复逻辑,测试系统的容错能力和自恢复能力
  4. 安全边界:设置仿真安全边界,当状态超出安全范围时自动终止仿真

相关资源


注意:本文档为 RflySim Model 库的索引文档。各模块的详细使用说明请参考对应模块的独立文档页面。