# HeatingSystem(热力学系统)

本案例使用拖拽式建模在MWORKS.MoHub平台搭建简单的加热系统模型。

HeatingSystem模型

HeatingSystem模型

简单加热系统具有封闭流动循环。经过2000秒的模拟时间后,阀门完全打开。一个简单的理想控制被嵌入到各个组件中,因此加热系统可以通过阀门进行调节:泵控制压力,燃烧器控制温度。可以通过设置参数system.energyDynamics定义不同的温度及流量。

(1)使用system.energyDynamics==Types.Dynamics.FixedInitial时,需要在仿真过程中得到它们的稳态值。

(2)使用system.energyDynamics==Types.Dynamics.SteadyStateInitial(默认设置),仿真开始为稳态。

(3)使用system.energyDynamics==Types.Dynamics.SteadyState除了一个动态状态外,所有动态状态都被关闭。左侧状态tank.m用于说明封闭流动循环。它是恒定的,因为在稳态模拟中流出和流入相等。

注意,封闭的循环流动通常会使得质量流量的循环相等,并且压力未定义。将油箱参数中tank.massDynamics状态选项设置为Types.Dynamics.FixedInitial,可通过油箱液位决定端口压力,解决上述问题。

另外,水箱与其周围环境是隔离的。这样,在加热系统中作为零流量源的水箱温度也可以很好的定义,例如,在模拟开始时,valveOpening.offset=0。然而,假设管道是完全隔离的。如果要在阀门完全关闭的情况下获得稳态值,则还应定义管道与其环境之间的热耦合。

此外值得注意的是,加热器和管道之间的理想化连接导致端口压力相等,被视为高指数DAE,而不是用于连接压力损失相关性的非线性方程系统。可以额外引入压力损失相关系数来模拟加热器和管道之间的压损,以适应不同的直径的管道。

Modelica搭建热力学系统模型。可通过结果查看系统模型中各组件热力学参数变化情况。