背景
新适配某电源存在A/B两路输出,当前bmc.kepler.Systems.PowerMgmt.OnePower.Metrics接口的输出电流/输出电压/输出功耗均double,bmc.kepler.Systems.PowerMgmt.OnePower.Status的输出电压状态信息/输出电流状态信息/温度状态信息/通信状态信息/厂商自定义状态属性为U8格式,无法承载多路输出电源的属性获取,需要新增属性实现多路输出参数传感器回显与输出状态监控。
关联ISSUE
整体方案
|
方案1 |
方案2 |
| 方案简述 |
OutputVoltage/OutputCurrentAmps/RailBOutputPowerWattsOutputVoltageFault/OutputCurrentFault/OverTemperature/CMLStatus/OtherStatus/MfrSpecificStatus所有涉及A/B路切换获取的输出信息对应的属性均新增对应B路属性 |
OutputVoltage/OutputCurrentAmps/RailBOutputPowerWatts新增对应B路属性资源树属性OutputVoltageFault/OutputCurrentFault/OverTemperature/CMLStatus/OtherStatus/MfrSpecificStatus其余输出状态相关的属性沿用原资源树属性,后台赋值时使用A路回读值 |
| 优点 |
精细化告警可以精准告警异常的A/B路状态 |
新增资源树属性少 |
| 缺点 |
新增资源树属性多 |
输出状态监控可以覆盖A、B两路异常,但是输出状态异常告警无法区分A/B路,具体区分A/B路需要通过黑匣子日志定位 |
评审点1:变更资源协作接口bmc.kepler.Systems.PowerMgmt.OnePower.Metrics
评审点1详细描述
| 变更类型 |
属性名称 |
签名 |
只读 |
变化通知 |
属性描述 |
访问权限 |
属性来源 |
持久化类型 |
易变属性 |
变更影响 |
| 新增 |
RailBOutputVoltage |
d |
true |
true |
B路输出电压 |
Read: ReadOnly |
代码轮询MCU |
内存数据库 |
true |
新增属性,无影响 |
| 新增 |
RailBOutputCurrentAmps |
d |
true |
true |
B路输出电流 |
Read: ReadOnly |
代码轮询MCU |
内存数据库 |
true |
新增属性,无影响 |
| 新增 |
RailBOutputPowerWatts |
d |
true |
true |
单电源B路输出功率 |
Read: ReadOnly |
代码轮询MCU |
内存数据库 |
true |
新增属性,无影响 |
评审点2:是否变更资源协作接口bmc.kepler.Systems.PowerMgmt.OnePower.Status
评审点2详细描述
| 变更类型 |
属性名称 |
签名 |
只读 |
变化通知 |
属性描述 |
访问权限 |
属性来源 |
持久化类型 |
易变属性 |
变更影响 |
| 新增 |
RailBOutputVoltageFault |
y |
true |
true |
B路电压输出状态(bit7:Vout_Ov_Fault, bit6:Vout_Ov_Warning, bit5:Vout_Uv_Warning, bit4:Vout_Uv_Fault) |
Read: ReadOnly |
代码轮询MCU |
内存数据库 |
false |
新增属性,无影响 |
| 新增 |
RailBOutputCurrentFault |
y |
true |
true |
B路电流输出状态(bit7:Iout_Oc_Fault, bit5:Iout_Oc_Warning) |
Read: ReadOnly |
代码轮询MCU |
内存数据库 |
false |
新增属性,无影响 |
| 新增 |
RailBOverTemperature |
y |
true |
true |
B路过温故障 0:无故障; 1:有故障 |
Read: ReadOnly |
代码轮询MCU |
内存数据库 |
false |
新增属性,无影响 |
| 新增 |
RailBCMLStatus |
y |
true |
true |
B路监测电源模块核心子系统健康状态:内部通信,存储,逻辑故障(bit0:非存储类逻辑错误,bit1:非标准通信异常,bit2:保留位,bit3:固件运行异常,bit4:非易失性存储器故障,bit5:包校验失败,bit6:无效数据,bit7:无效命令;bit间不互斥) |
Read: ReadOnly |
代码轮询MCU |
内存数据库 |
false |
新增属性,无影响 |
| 新增 |
RailBOtherStatus |
y |
true |
true |
B路监测电源辅助子系统及环境异常:电气异常,热故障等特殊场景(bit0:保留位,bit1:输出OR-ing器件失效,bit2:输入B OR-ing器件失效,bit3:输入A OR-ing器件失效,bit4:输入B 熔断器/断路器触发,bit5:输入A 熔断器/断路器触发,bit6:保留位,bit7:保留位;bit间不互斥) |
Read: ReadOnly |
代码轮询MCU |
内存数据库 |
false |
新增属性,无影响 |
| 新增 |
RailBMfrSpecificStatus |
y |
true |
true |
B路电源厂商自定义状态 |
Read: ReadOnly |
代码轮询MCU |
内存数据库 |
false |
新增属性,无影响 |
评审结论
遗留问题