// 此模板仅供参考,如果不适用可以修改
问题描述
泵告警代码逻辑的讨论
一、
monitor_status函数中
PowerGood由下电变化为上电,若新 PWM 与 last_pwm 接近(恒温环境下大概率如此),change_times 已经是5,立即进入泵告警扫描scan_status(),可能产生误告警
1:停转告警。如果self.SpeedRPM为0,会立即触发self.Status = pump_status.STATUS_STOP_RUNNING,停转告警逻辑不应当这么灵敏,在当前的边界场景下,应当预留窗口
2:流速异常告警。通电前几秒钟流速不在预期范围内,目前代码是10s 5次的检测窗口,Scanner扫描周期1s(窗口期实测未产生告警)
二、
check_pwm_change_for_status 注释与实际不符
注释写"PWM变化小于5%",实际阈值是 PWM_CHECK_THRESHOLD = 30,对应 30/255 ≈ 11.8%
三、
4.上电期间如果泵转速偏差过大产生告警,之后下电,泵不再工作。预期此时无法检测泵的状态,(停转与流速异常)异常状态应当恢复为正常
实测告警不会消失 monitor_status函数中,应当将停转,流速异常这两状态恢复为正常
四、
当出现泵流速异常告警时,无有效日志定位告警时的预期PWM,实际PWM与SpeedRPM,建议新增
环境信息
-
操作系统:如 Ubuntu 24.04
-
软件版本:OpenUBMC2512 LTS SP1
-
硬件配置:[如 CPU、内存等]
重现步骤
-
[第一步]
-
[第二步]
-
[第三步]
期望结果
[您希望实现什么]
实际结果
[实际发生了什么,包含错误信息]
尝试过的解决方案
[列出您已经尝试过的解决方案及结果]
分析结论
[详细总结您对此问题的分析结论]