基于能耗优化的商场通风系统MPC实现技术问询
商场MPC能耗优化建模问题
背景与目标
我们是特罗姆瑟的三名本科生,正在撰写学士学位论文,主题是在本地商场实现MPC(模型预测控制),核心目标是通过能耗优化维持室内温度。目前卡在输入变量与目标函数的正确定义上。
输入数据来源
- 实时传感器数据:来自Bechoff IPC的pyads服务器
- 预测数据:未来12小时的室外温度数组
- 待整合数据:24小时电价数组、建筑内人数数据(暂未加入模型,优先搭建基础框架)
系统方程
通风系统温度约束方程
T5_max = T1 + n1*(T3-T1) T6_max = T5_max + n2*((V*rho*C_water)*n2*(T8-T7))/V_flow T2_max = T5_max + T6_max + (n3 * V*rho*C_air*(T5-T1))/(V_flow * rho * C) T5_min = T6_min = T2_min = T1
其中:
n1、n2、n3为效率常数- 所有
T类变量为实时传感器数据 V_flow为常数
商场室内温度动态方程
sum(T3)dT/dt = (T3 - (UA*(T3-T1))/V*rho*C_air + ((T2-T3) * V_flow/Volume) dt T_room = T3 + (sum(T3)dT/dt)
其中UA与Volume为已知常数。
需求说明
我们需要设置t5、t6、t2的最优温度,满足:
- 室内温度
T_room维持在18-24℃范围内 - 实现成本最优(系统按E1→E2→E3顺序消耗能源,需结合12个时段的电价数组)
当前尝试的问题代码
以下代码仅用常量模拟,变量定义与上述方程不符,参考了APMonitor示例:
#Væskebatteri NomEff_E2 = m.Param(value=50) #Gjenvinner n1 = 0.8 #E1 = VolumFlow*rho_luft*Cv_luft*(T5-uteTemp) # Parameters Volum = m.Const(value=39000) #m^3 VolumFlow = m.Const(value=5) #m^3/s rho_luft = m.Const(value=1.2) #kg/m^3 rho_vann = m.Const(value=1000) #kg/m^3 Cv_vann = m.Const(value=4.18) #kJ/kgK Cv_luft = m.Const(value=1.006) #kJ/kgK NomEff_El = m.Const(value=100) #KW T1 = m.Const(value=-10)#C UA_verdi = m.Const(value=100) #W/C t5 = m.Var() t6 = m.Var() t3 = m.Var() t2 = m.Var() t5.value = T1 t6.value = T1 t2.value = T1 t3.VALUE = 18 #lower t3.lb = 18 t5.lb = T1 t6.lb = T1 t2.lb = T1 #upper t5.ub = T1 + n1*(t3-T1) t6.ub = T1 + n1*(t3-T1) + NomEff_E2/(VolumFlow*rho_luft*Cv_luft) t2.ub = T1 + n1*(t3-T1) + NomEff_E2/(VolumFlow*rho_luft*Cv_luft) + NomEff_El/(VolumFlow*rho_luft*Cv_luft) t3.ub = 25 m.Equation(t3.dt == (t3-(UA_verdi*(t3-T1)))/ (Volum*rho_luft*Cv_luft)+((t2-t3)*(VolumFlow/Volum))) E1 = m.Param(VolumFlow*rho_luft*Cv_luft*(t5-T1)) E2 = m.Param(VolumFlow*rho_luft*Cv_luft*(t6-t5)) E3 = m.Param(VolumFlow*rho_luft*Cv_luft*(t2-t6)) n2 = m.Const(value = 0.2) n3 = m.Const(value = 1) spottpris = m.Const(value = 0.7) effektledd = m.Const(value=15) m.Obj((-E1 + E2*n2 + E3*n3)*(spottpris+effektledd)) m.options.IMODE = 3 m.solve(disp=False) print(t3.VALUE, t5.VALUE, t6.VALUE, t2.VALUE)
请求指导
恳请提供简易实现指导,帮助我们正确定义输入变量、约束方程与目标函数,完成基础MPC模型搭建。
内容的提问来源于stack exchange,提问作者Kneven
相关产品推荐
相关产品推荐

