CSR配置字典之AbnormalPump类
更新时间:2025/7/22
在Gitcode上查看源码📋 文档信息
项目 | 内容 |
---|---|
文档标题 | AbnormalPump类配置字典 |
版本 | v1.0 |
创建日期 | 2025-01-27 |
最后更新 | 2025-01-27 |
维护状态 | ✅ 活跃维护 |
📋 变更历史记录
文档变更记录
版本 | 发布日期 | 变更类型 | 变更内容 | 影响范围 | 维护人员 |
---|---|---|---|---|---|
v1.0 | 2025-01-27 | 初始版本 | 创建AbnormalPump类配置字典 | 全新文档 | 系统管理员 |
🎯 类概览
AbnormalPump 类
属性 | 值 |
---|---|
类名称 | AbnormalPump |
功能描述 | 异常风扇调速 |
所属SIG组 | thermal |
所属组件 | CLU |
责任人 | 热设计组 |
最后更新 | 2025-01-27 |
状态 | 🟢 正常运行 |
📊 属性定义详表
必选属性
属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
---|---|---|---|---|---|---|---|---|---|
Id | U32 | 0 | - | - | 泵异常调速策略id 随AbnormalPump累加 | 泵异常调速策略 | "Id": 1 | CSR配置 | 软件 |
DeviceId | U32 | 0 | - | - | 该调速策略对应的器件id 何时为1?何时为2? | 泵异常调速策略 | "DeviceId": 1 | CSR配置 | 热设计 |
Models | String | 空字符串 | "AbnormalRotation"/"NotInPosition"/"StopWorking" | - | 风扇异常类型 取值范围为: "AbnormalRotation"-转速异常 "NotInPosition"-不在位 "StopWorking"-停止工作 | 泵异常调速策略 | "Models": "AbnormalRotation" | CSR配置 | 热设计 |
LiquidCoolingIds | U32[] | [] | - | - | 当DeviceID对应器件处于Models对应异常状态时,参与调速的泵id序列 StopWorking状态下为何为[1]或[2]? | 泵异常调速策略 | "LiquidCoolingIds": [1, 2] | CSR配置 | 热设计 |
LiquidCoolingPWMs | U8[] | [] | 0-100 | - | 泵转速数组,与LiquidCoolingIds对应 每个元素代表对应泵的PWM占空比 | 泵异常调速策略 | "LiquidCoolingPWMs": [100, 100] | CSR配置 | 热设计 |
🔗 动态关联机制
语法规范
使用 #/xxx
格式实现属性间的动态关联:
yaml
# 语法格式
属性名: "#/目标类.属性名"
# 实际示例
DeviceId: 1 # 对应器件ID
Models: "AbnormalRotation" # 异常状态类型
LiquidCoolingIds: [1, 2] # 参与调速的泵ID数组
LiquidCoolingPWMs: [100, 100] # 对应泵的PWM占空比数组
关联说明
- DeviceId: 指定监控的器件ID,当该器件出现异常时触发调速策略
- Models: 定义异常类型,不同异常类型对应不同的调速策略
- LiquidCoolingIds: 与LiquidCoolingPWMs数组必须一一对应,确保每个泵都有对应的PWM值
- 数组对应关系: LiquidCoolingIds[i] 对应 LiquidCoolingPWMs[i]
📂 分类标准
热设计属性
- 定义:与热管理和泵控制直接相关的参数
- 特点:影响液冷系统散热性能和泵运行策略
- 示例:
DeviceId
,Models
,LiquidCoolingIds
,LiquidCoolingPWMs
软件属性
- 定义:用于逻辑控制和软件管理的参数
- 特点:策略标识和管理相关
- 示例:
Id
📝 配置示例
标准转速异常配置
json
{
"AbnormalPump": {
"Id": 1,
"DeviceId": 1,
"Models": "AbnormalRotation",
"LiquidCoolingIds": [1, 2],
"LiquidCoolingPWMs": [100, 100]
}
}
泵不在位配置
json
{
"AbnormalPump": {
"Id": 2,
"DeviceId": 1,
"Models": "NotInPosition",
"LiquidCoolingIds": [2],
"LiquidCoolingPWMs": [100]
}
}
泵停止工作配置
json
{
"AbnormalPump": {
"Id": 3,
"DeviceId": 2,
"Models": "StopWorking",
"LiquidCoolingIds": [1],
"LiquidCoolingPWMs": [100]
}
}
多泵协同调速配置
json
{
"AbnormalPump": {
"Id": 4,
"DeviceId": 1,
"Models": "AbnormalRotation",
"LiquidCoolingIds": [1, 2, 3],
"LiquidCoolingPWMs": [90, 95, 100]
}
}
渐进式调速配置
json
{
"AbnormalPump": {
"Id": 5,
"DeviceId": 2,
"Models": "AbnormalRotation",
"LiquidCoolingIds": [1, 2],
"LiquidCoolingPWMs": [80, 90]
}
}
🔧 使用指南
配置步骤
- 分配策略ID:设置唯一的Id标识此泵异常调速策略
- 确定监控器件:通过DeviceId指定要监控的器件
- 选择异常类型:根据实际情况配置Models(转速异常/不在位/停止工作)
- 配置参与泵组:通过LiquidCoolingIds数组指定参与调速的泵ID
- 设置PWM占空比:通过LiquidCoolingPWMs数组配置对应泵的转速
- 验证数组对应关系:确保LiquidCoolingIds和LiquidCoolingPWMs数组长度一致
注意事项
- 数组长度匹配:LiquidCoolingIds和LiquidCoolingPWMs数组必须长度相同
- 器件ID映射:DeviceId必须对应系统中实际存在的器件
- 泵ID有效性:LiquidCoolingIds中的泵ID必须在系统中存在且可控
- PWM范围控制:LiquidCoolingPWMs中的值应在0-100范围内
- 策略唯一性:每个异常调速策略的Id必须全局唯一
- 异常状态理解:不同Models对应不同的处理逻辑
性能建议
- 全速运行:异常情况下建议泵PWM设置为100%确保最大散热
- 冗余设计:配置多个泵参与调速,提高系统可靠性
- 分层调速:根据异常严重程度设置不同的PWM值
- 监控机制:配合温度和流量监控使用,及时发现异常
异常状态说明
- AbnormalRotation(转速异常):
- 泵转速不在正常范围内
- 建议提高其他泵转速进行补偿
- NotInPosition(不在位):
- 泵物理连接异常或未安装
- 系统应启动其他泵进行补偿
- StopWorking(停止工作):
- 泵完全停止工作
- 需要立即启动备用泵或提高其他泵转速
常见问题
- Q: DeviceId何时为1?何时为2?
- A: DeviceId对应系统中的器件编号,1代表第一个器件,2代表第二个器件,依此类推
- Q: StopWorking状态下为什么LiquidCoolingIds为[1]或[2]?
- A: 当某个泵停止工作时,系统会指定其他特定泵进行补偿,[1]表示启动1号泵,[2]表示启动2号泵
- Q: 如何确保数组对应关系正确?
- A: 确保LiquidCoolingIds[i]对应LiquidCoolingPWMs[i],两个数组必须长度相同且顺序一致