AnyMath 文档
Notebook

选择用于CPU冷却的风扇

该示例演示了如何根据风扇护照数据对AnyMath模型进行参数化,并在模拟其操作时检查处理器风扇的冷却效率,同时考虑到实际的处理器热释放周期和根据处理器负载调整风扇速度。

模型的一般视图

CPU_Fan.png

设置风扇参数

我们采用护照特征,并以两个向量的形式传递体积流量与静压图的数据。 此外,我们指出在消除该特性时有效的风扇速度。 向量的维度必须匹配。

In [ ]:
# ==============================================================================
# 用户数据输入(一个频率的护照数据)
# ==============================================================================

# 护照参考转速(rpm)
const N_ref = 2000.0 

# 压力额定值向量(尺寸m),Pa
pressure_rise_passport = [0.0, 1.83, 3.66, 5.49, 7.32, 9.16, 10.99, 12.82, 14.65, 16.1, 
                          16.48, 18.32, 20.15, 21.98, 23.81, 24.5, 25.64, 27.47, 29.31, 
                          31.14, 32.97, 34.8]

# 频率N_ref,l/min的体积流量(维度m)矢量
volumetric_flow_passport = [29.0291, 26.8708, 22.4003, 16.0321, 11.8087, 10.7402, 10.3039, 
                            9.2101, 5.2882, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 
                            0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001];

旋转频率的分配

我们将指定转动风扇的转速。

In [ ]:
# 目标转速矢量(尺寸n),rpm
velocity_input = [2000.0, 2500.0, 3000.0]
Out[0]:
3-element Vector{Float64}:
 2000.0
 2500.0
 3000.0

让我们为所选转速创建体积成本矩阵。

让我们根据相似公式重新计算所选频率的体积流量对静压的依赖性

In [ ]:
# ==============================================================================
# 调用计算函数并与工作区同步
# ==============================================================================
include("calc_flow.jl")

# 从calc_flow调用函数。jl文件,计算成本矩阵
calculated_matrix = calculate_fan_matrix(pressure_rise_passport, volumetric_flow_passport, velocity_input, N_ref)

# 将最终结果写入风扇块的AnyMath全局工作区
global pressure_rise = pressure_rise_passport
global volumetric_flow_rate = calculated_matrix
global velocity = velocity_input
global efficiency_table = ones(length(velocity_input), length(pressure_rise_passport)) .* 0.3 



println("参数化已成功完成! 成本矩阵已经形成。")
Параметризация успешно завершена! Матрица расходов сформирована.

我们将显示选定转速下的风扇特性图。

In [ ]:
# ==============================================================================
# 调用绘图函数
# ==============================================================================
include("plot_charts.jl")
# 从plot_charts调用图形函数。jl文件
plot_fan_characteristics(pressure_rise_passport, volumetric_flow_rate, velocity_input)
No description has been provided for this image

风扇转速控制

模型中的转速在控制单元中进行调节,控制单元将设定点温度和处理器温度传感器的信号输入到其输入端。 根据这些温度之间的差异,风扇速度1,2或3打开,或者如果不再需要强制冷却,则关闭。 实际转速与转速水平的对应关系由用户设置。

Controller.png
In [ ]:
# 控制器参数化(调整转速与旋转频率的对应关系)

# 基于用户定义的velocity_input矢量创建vel_table矢量
# 尺寸(n+1),从0开始
global vel_table = vcat(0.0, velocity_input)

# 创建参考点的向量-枚举(旋转频率的级别-[0,1,2,...]),
# 从0开始。 它的维度将自动等于vel_table的维度(n+1)
global index_table = collect(0:(length(vel_table) - 1));

让我们运行模型并绘制风扇运行时间表,作为处理器冷却系统的一部分。

In [ ]:
# 启动模型进行计算的脚本
include("run_model.jl")
# 让我们运行并输出感兴趣模型的图形
run_and_plot_fan_simulation("CPU_Fan")
No description has been provided for this image

结论

示例中所示的用于检查风扇特性的充分性的方法可用于广泛的任务,并且与模拟过程的物理尺度是不变的。 除了冷却计算设备外,开发的技术还可以扩展以解决相关行业的广泛应用工程任务,特别是:

  1. **航空和空间技术:**为车载电子设备设计热控制系统,冷却有效载荷舱,以及强制通风民用船只和轨道站的密封舱。

  2. **运输工程:**电动汽车牵引电池(电池)冷却系统的热建模,电源逆变器,发动机舱,以及乘用车和机车HVAC系统的设计。

  3. **能源和电力电子:**大功率电力变压器、成套开关柜和变频驱动器强制冷却系统的计算和优化。

  4. **IT基础设施和数据中心:**为服务器机房设计精密空调系统,计算数据中心"热"和"冷"走廊的空气平衡,以及为刀片服务器选择高密度风扇。

  5. **特殊建筑和采矿:**房间和地下结构的强制通风系统的设计,船舶的生命支持系统,以及主要通风的矿井通风系统的计算。

  6. 农工业综合体自动化温室综合体、垂直农场和畜牧业设施中的小气候和通风系统建模。

所提出的模型使得即使在初步设计阶段,也可以显着减少现场测试的时间,优化风扇驱动电机的能耗并保证技术系统热保护的可靠性。