Engee 文档
Notebook

房屋供暖系统

本例展示了如何模拟一个简单的房屋供暖系统。

模型示意图

该模型包含一个加热器、一个恒温器和一个由四个部分组成的房屋结构:内部空气、房屋墙壁、窗户和屋顶。

房屋通过墙壁、窗户和屋顶与环境进行热交换。每条路径都是热对流、热传导和热质量的组合模型。当室温低于$18^\circ C$ 时,加热器开始吹热风;当室温超过$23^\circ C$ 时,加热器关闭。该模型可计算供暖成本和室温。

手动开关可用于研究供暖系统关闭时的系统行为。

house_heat_sys_chart_13_03_25_09_19_36.png

住宅热网子系统

house_heat_sys_chart_13_03_25_09_02_33.png

加热器系统

house_heat_sys_chart_13_03_25_09_20_01.png

运行和模拟模型

首先加载模型,然后运行模拟。

In [ ]:
modelName = "house_heat_sys_chart";
model = modelName in [m.name for m in engee.get_all_models()] ? engee.open( modelName ) : engee.load( "$(@__DIR__)/$(modelName).engee");
In [ ]:
results = engee.run( modelName )
Out[0]:
SimulationResult(
    "Т в доме" => WorkspaceArray{Float64}("house_heat_sys_chart/Т в доме")
,
    "Т снаружи" => WorkspaceArray{Float64}("house_heat_sys_chart/Т снаружи")
,
    "Стоимость" => WorkspaceArray{Float64}("house_heat_sys_chart/Стоимость")

)
In [ ]:
res_t_house = results["Т в доме"].value;
res_t_atm = results["Т снаружи"].value;
res_cost = results["Стоимость"].value;
res_time = results["Стоимость"].time;
In [ ]:
gr()    #Включим неинтерактивный бэкенд для отображения графиков
Out[0]:
Plots.GRBackend()
In [ ]:
plot( res_time, [res_t_house res_t_atm], lab = ["Температура в доме" "Температура снаружи"] )
Out[0]:
In [ ]:
plot( res_time, res_cost, lab = "Стоимость отопления")
Out[0]:

从图中可以看出,恒温器将室内温度控制在$18-23^\circ C$ 左右。

结论

在本例中,我们考虑了房屋热网的建模,并使用 Finite Avomats 库实现了加热器控制逻辑。