MotorFault 模块文档¶
所属工具箱:RflySim PHM

简介¶
一句话描述:该模块用于向多旋翼无人机电机注入指定参数的电机效率故障,输出注入故障后的电机转速,支持无噪声和带噪声两类电机故障注入。
该模块属于RflySim PHX故障诊断与预测健康管理工具链,主要用于面向电机故障的仿真测试场景,内置完成了电机原理数学建模与故障注入逻辑,开发者仅需配置故障类型与参数即可完成故障注入,无需自行搭建故障模型。该模块可配合PX4飞控仿真、CopterSim物理引擎仿真与RflySim3D可视化环境使用,接收正常控制逻辑输出的电机PWM指令,将注入故障后的电机转速输出给飞控或动力学模型,可用于复现电机卡滞、效率下降、完全停转等各类典型电机故障场景,为无人机电机故障诊断、容错控制算法开发提供仿真数据支撑。
端口说明¶
输入端口(Inputs)¶
| 端口名 | 数据类型 | 维度 | 说明 |
|---|---|---|---|
FaultIn |
double |
1×N |
故障输入,包含故障类型标识和故障参数信息 |
PWMIn |
double |
1×M |
外部输入的无故障电机转速,M为无人机电机数量 |
输出端口(Outputs)¶
| 端口名 | 数据类型 | 维度 | 说明 |
|---|---|---|---|
MotorRads |
double |
1×M |
注入指定故障后的电机转速输出,M为无人机电机数量 |
参数配置(Parameters)¶
双击模块打开的 Mask 对话框中可配置以下参数:
| 参数名 | 类型 | 默认值 | 可选值/范围 | 说明 |
|---|---|---|---|---|
MotorFaultID |
int |
123450 |
123450 |
电机故障的唯一标识ID |
NoiseMotorFaultID |
int |
[待确认] |
正整数 | 带噪声电机执行效率故障的唯一标识ID [待确认] |
FaultMotorNum |
int |
1 |
1~16 |
发生故障的电机编号 |
参数设置说明¶
MotorFaultID¶
电机故障类故障的全局唯一标识密钥,本模块通过该ID匹配输入的故障指令,触发对应电机故障注入。
FaultMotorNum¶
指定需要注入故障的目标电机编号,支持多旋翼无人机最多16个电机的故障注入配置。
故障注入规则¶
本模块支持两类电机执行效率故障:无噪声电机效率故障和带噪声电机效率故障,通过故障ID区分触发。故障注入实现逻辑为:输出转速 = 输入转速 × 健康系数,其中健康系数范围为0~1:健康系数为0时对应电机完全损坏,输出恒为0;健康系数为1时电机无故障,输出与输入一致。
模块特性(Block Characteristics)¶
| 特性项 | 值 |
|---|---|
| 支持的数据类型 | double、single |
| 直接馈通(Direct Feedthrough) | 是 |
| 采样时间 | 继承 |
| 代码生成支持 | 否 |
数据通信协议¶
本模块不涉及网络通信。
相关模块¶
| 模块名 | 说明 |
|---|---|
PropFault |
注入螺旋桨故障的故障仿真模块,属于RflySim PHM库 |
BattFault |
注入电池故障的故障仿真模块,属于RflySim PHM库 |
IMUFault |
注入IMU传感器故障的故障仿真模块,属于RflySim PHM库 |
BaroFault |
注入气压计传感器故障的故障仿真模块,属于RflySim PHM库 |
GPSFault |
注入GPS传感器故障的故障仿真模块,属于RflySim PHM库 |
MagFault |
注入磁力计传感器故障的故障仿真模块,属于RflySim PHM库 |
注意事项与常见问题¶
- 初始化顺序:本模块依赖RflySim平台的PHM仿真环境初始化,必须将该模块放置在RflySim Flight Simulation框架中使用,启动仿真前需完成RflySim内核初始化,否则故障参数将无法正确解析,导致故障注入失效。
- 故障ID匹配规则:无噪声电机效率故障和带噪声电机效率故障对应不同的故障ID,需严格按照约定ID配置故障输入:仅当输入故障ID匹配模块预设的123450编码规则时,对应故障才会触发,错误的ID输入会导致故障无法注入。
- 故障参数格式要求:本模块接收长度为20的
FaultParam浮点数数组,其中前16个元素存储故障参数,每个电机对应1位0~1区间的健康系数,计算规则为故障后转速 = 输入转速 × 健康系数;若健康系数设置为0,对应电机输出转速将恒为0,需保证参数维度和区间符合要求,否则会出现维度不匹配的仿真错误。 - 多旋翼电机数量匹配:输入
MotorNum(故障电机序号)必须和当前仿真无人机配置的电机总数量匹配,序号不能超出电机总数范围,否则会出现数组越界错误,导致仿真崩溃。 - 采样时间匹配:本模块的输出
MotorRads为电机转速闭环控制的关键反馈信号,需保证本模块采样时间和飞控闭环模块的采样时间保持一致,不一致会导致转速闭环控制发散,仿真结果异常。 - 参数含义区分:本模块输入的
PWMIn为归一化转速指令,并非物理PWM占空比数值;输出MotorRads为物理单位rad/s的转速,信号类型不要混淆,避免控制逻辑计算错误。 - 电机模型参数配置:底层
Motor_Fun模块的电机速度油门曲线参数motorWb、motorCr和惯性时间常数motorT,需要和你使用的电机型号参数匹配,错误的参数会导致电机转速模型偏差过大,故障仿真结果失去参考意义。
更新日志¶
v4.10(2024-07-24): 初始发布MotorFault电机故障注入仿真模块,支持多种电机效率故障类型注入,包含电机原理数学建模子模块