Lesson 02 · 原理
它是怎么"算"出能耗的
不背公式,但要弄懂:一次仿真步里,EnergyPlus 到底算了什么、为什么会"算得慢"。
第 1 课我们说 EnergyPlus 是"虚拟楼的物理沙盘"。这一课拆开沙盘,看它每走一个时间步,到底做了哪几件事。理解这个,你才能解释方案里两个常被问到的现象:为什么仿真"慢",以及为什么 10 分钟采样对我们的训练"够用"。核心就一个词——热平衡法。
地基:热平衡法(Heat Balance Method)
想象一个房间。它的温度无时无刻不在被四股力量同时改变:墙把外面的热导进来、空气把热对流给墙面、阳光照在墙上被吸收、各面墙之间互相辐射。EnergyPlus 的做法不是"估"一个温度,而是把这四股力列成一组能量守恒方程,老老实实把每个墙面、每个时刻的温度解出来。这套方法叫热平衡法,是 ASHRAE 手册推荐的做法。
| 传热项 | 通俗解释 |
|---|---|
| 导热(conduction) | 热穿过墙/窗/楼板传进传出 |
| 对流(convection) | 房间空气和墙面之间的热交换 |
| 短波辐射吸收/反射 | 阳光(短波)打在表面上被吸收或弹开 |
| 长波辐射交换 | 各墙面之间互相"烤"对方(红外辐射) |
解方程,不是查表
简化模型可能用"室外 30°C、室内想 24°C,温差 6°C 乘个系数"估冷量。EnergyPlus 不这样——它每个墙面、每个时间步都在解一组耦合方程,还要和空调系统来回迭代直到稳定。这精度高,但代价是每步计算量大。这就是方案风险表里"EnergyPlus 仿真速度慢(T6)"的根因。
两个时间步:房间步 vs 系统步
这是理解"为什么 10 分钟够用"的关键。EnergyPlus 同时跑两种粒度:
房间/环境时间步(Zone Timestep)
└─ 用户设定,常用 1 小时 6 步 = 每步 10 分钟
└─ 在这个步里算:墙面热平衡、室温变化、阳光、人员……
每个房间步内,会自动再细分 ▼
空调系统时间步(System Timestep)
└─ 自动变细,处理"空调反应快"的动态
└─ 算:送风温度、冷机出力、阀门开度对室温的即时影响
| 时间步 | 谁设定 | 典型粒度 | 负责算什么 |
|---|---|---|---|
| 房间步(Zone) | 用户,Timestep 对象 | 常 6 步/小时 = 10 分钟 | 围护结构传热、室温演化 |
| 系统步(System) | 程序自动细分 | 更细(动态) | HVAC 设备的快速响应 |
为什么现有 10 分钟采样对训练"够用"
方案 [§1.6] 有一句关键判断:HVAC 的热惯性时间常数通常在 15–60 分钟——也就是说,你调了冷机,室温要十几分钟后才慢慢变。我们的训练数据是 10 分钟一个点(现有 Pivot 管道),刚好能捕捉到这条"慢变化曲线"。如果去控照明(毫秒级变化)就不够,但控空调足够。这就是为什么方案敢直接复用现有 iot_data 表,而不必新建高频采集链路。
两条环路:空气环(AirLoop)与水环路(Plant Loop)
EnergyPlus 把楼的空调系统抽象成两类"环路"。搞清楚它们,你就能看懂 IDF 里那一堆 HVACTemplate 对象在搭什么:
┌──────────── 空气环(AirLoop / Zone Air)────────────┐
│ 混风段 ──▶ 冷却/加热盘管 ──▶ 送风机 ──▶ 各房间 │
│ ◀────────── 回风 ──────────────── │
└──────────────────────────────────────────────────────┘
│ 盘管里有水在换热
▼
┌──────────── 水环路(Plant Loop)────────────────────┐
│ 冷机 ──▶ 冷冻水泵 ──▶ 盘管 ──▶ 回水 ──▶ 冷机 │
│ 冷却塔 ◀── 冷却水泵 ◀── 冷机 ◀── │
└──────────────────────────────────────────────────────┘
- 空气环:处理"风"。从各房间回风,经过混风、盘管、风机,再分配回各房间。对应送风温度、风量、新风比这些量。
- 水环路:处理"水/制冷剂"。冷机产冷冻水,泵打到盘管换热,冷却塔散热。对应冷冻水供回水温度、冷机功率、COP 这些量。
一个仿真步,端到端发生了什么
把上面三件事串起来,一个 10 分钟的房间步里,EnergyPlus 大致这样转:
- 读输入:取这个时刻的室外温湿度、太阳辐射、风速(来自 EPW 天气文件,第 3 课)、人员/照明/设备的时间表(来自 IDF)。
- 房间热平衡:解四项耦合方程,得到各墙面温度、新室温。
- 系统步迭代:在房间步内自动细分,反复算"空调这样送,室温会怎样",直到房间与系统协调收敛。
- 水环路求解:算冷机出力、水泵功耗、冷却塔散热,得到设备能耗。
- 写输出:把室温、能耗、COP 等写到输出文件(第 3 课),并把当前状态交给 Python 回调(第 4 课)。
EnergyPlus 不是查表估能耗,而是用热平衡法解一组耦合传热方程,并在房间步(10 分钟级)+ 自动细分的系统步两层粒度上迭代。空气环管"风"、水环路管"水",两者通过盘管换热耦合。理解了它"算得认真",就能解释仿真为何慢、以及为何 10 分钟采样对我们的慢热惯性系统足够。
方案复用现有 10 分钟采样的 iot_data 做训练数据,主要依据是?
卡住了就问我:"热平衡法"那一段如果觉得抽象,可以问我"那它和 PID 控制里的热模型有什么不一样"——我会帮你把它和你熟悉的控制思路对上号。