RflySimSDK v3.08
RflySimSDK说明文档
载入中...
搜索中...
未找到
Motor FaultModel模块

image-20240724144220566
功能 包含MotorFault模块,Motor_fun模块。MotorFault模块用于选择电机故障类型,并输出注入故障后电机的转速;Motor_fun模块用于表示电机原理的数学建模。
输入
FaultIn 故障输入,包括故障类型和故障参数。
PWMIn 外部输入给模型的电机转速
输出
MotorRads 注入噪声后的电机转速

MotorFault模块(内层)

image-20240724144444269
功能 包含FaultParamsExtract噪声参数提取模块, MotorFaultModel电机模型模块。本模块用于从 无噪声电机执行效率故障 和 有噪声电机执行效率故障 选择电机故障类型,并输出注入故障后电机转速。
无噪声电机执行效率故障 和 有噪声电机执行效率故障 这两个故障模块的实现机制不同,但都同属于电机故障。通过用对应的故障ID可以触发对应的故障。123450为电机故障ID
输入
FaultIn 故障输入,包括故障类型和故障参数。
FaultID 故障的唯一标识密钥
NoiseFaultID 噪声故障的唯一标识密钥
MotorNum 无人机的故障电机数量
输出
PWMOut 注入故障后电机输出的转速

FaultParamsExtract模块(内内层)

image-20240724152011646

具体参考**同目录下的FaultParamsExtract说明文档**

MotorFaultModel模块(内内层)

image-20240724152436882
功能 本模块需要用到8维FaultParam的输入,因此故障ID的格式应该是:
inSILInts=[FaultID FaultID FaultID FaultID ...]
inSILInts=[param1 param2 param3 param4 param5 param6 param7 param8 ...] -> FaultParam
param的每一位表示本电机的健康系数(0到1),实际上就是pwm_out = pwm_in * param
如果param1=0,则电机1直接坏掉,始终输出0
输入
hasFault 一个布尔值,如果检测到 FaultID 则为 true,否则为 false
FaultParam 一个长度为 20 的浮点数数组,存储故障参数。如果检测到故障,数组的前 16 个元素将包含与 FaultID 相关的参数,最后 4 个元素将包含 inFloats 数组的最后 4 个值。
inPWMs 外部输入给模型的电机转速
motNum 无人机的故障电机数量
输出
y 注入故障后的 电机输出转速。

Motor_Fun模块(内层)

image-20240724144334922
功能 这个绿色的模块是对电机原理的数学建模。具体原理请参考《多旋翼飞行器设计与控制》第四章“动力系统建模和估算”的4.2小结,详细介绍了动力系统的数学模型。总的来说,该模块通过接受一个电池油门(即电池模块的输出,在此处指的是PWMIn),输出一个电机转速(在此处为PWMOut)
输入
PWMIn 注入故障后的 电机输出转速。
motorWb Motor speed-throttle curve constant term(rad/s) 电机速度油门曲线常数项(rad/s)
motorCr Motor throttle-speed curve slope(rad/s) 电机油门速度曲线斜率(rad/s)
motorT Motor inertia time constant(s) 电机惯性时间常数(s)
ModelInit_RPM 模型初始的电机转速
输出
radW 电机输出转速
PWMOut 多电机输出转速集成