这段代码是一个用于运行温室加热和照明场景的脚本,主要用于研究在不同光照和加热配置下温室的能耗和性能。该脚本是David Katzin在其博士论文中使用的工具,用于生成第5章中的仿真数据。以下是代码的详细解释:
脚本功能
- 运行多种温室场景:
- 脚本通过调用
runHeatByLightScenarios
函数,运行16种不同的温室场景。 - 每种场景测试不同的光照类型(如HPS高压钠灯、LED灯或无光照)、加热配置(如是否使用锅炉、是否使用热量回收)以及其他参数(如光照强度、遮光幕布、能量缓冲大小等)。
- 脚本通过调用
- 研究目标:
- 通过对比不同场景的仿真结果,研究如何通过优化光照和加热配置来降低温室能耗。
- 特别关注LED照明在温室中的应用及其对能耗的影响。
场景分类
脚本中的16个场景可以分为以下几类:
- 无光照场景:
- 场景1(N):无光照,无热量回收。
- 场景2(N-HH):无光照,有热量回收。
- LED照明场景:
- 场景3(L-200):LED照明,光照强度为200 μmol/m²/s,使用锅炉和遮光幕布。
- 场景4(L-450):LED照明,光照强度为450 μmol/m²/s,不使用锅炉,使用遮光幕布。
- 场景5(LL-450):顶部和内部LED照明,总光照强度为450 μmol/m²/s,不使用锅炉,使用遮光幕布。
- 场景6(L-450-NBO):LED照明,光照强度为450 μmol/m²/s,不使用锅炉和遮光幕布。
- 场景7(L-450-GL):LED照明,光照强度为450 μmol/m²/s,不使用锅炉,使用遮光幕布,并采用渐变光照控制。
- 场景8(L-450-20H):LED照明,光照强度为450 μmol/m²/s,不使用锅炉,使用遮光幕布,每日最大光照时间为20小时。
- 场景9(L-450-BB):LED照明,光照强度为450 μmol/m²/s,不使用锅炉,使用遮光幕布,并增大能量缓冲。
- 场景10(L-450-SB):LED照明,光照强度为450 μmol/m²/s,不使用锅炉,使用遮光幕布,并减小能量缓冲。
- 场景11(L-400):LED照明,光照强度为400 μmol/m²/s,不使用锅炉,使用遮光幕布。
- 场景12(L-500):LED照明,光照强度为500 μmol/m²/s,不使用锅炉,使用遮光幕布。
- HPS与LED混合照明场景:
- 场景13(HL-320):HPS顶部照明和LED内部照明,总光照强度为320 μmol/m²/s,不使用锅炉,使用遮光幕布。
- 场景14(HL-320-NBO):HPS顶部照明和LED内部照明,总光照强度为320 μmol/m²/s,不使用锅炉和遮光幕布。
- 场景15(HL-370):HPS顶部照明和LED内部照明,总光照强度为370 μmol/m²/s,不使用锅炉,使用遮光幕布。
- 场景16(HL-370-NBO):HPS顶部照明和LED内部照明,总光照强度为370 μmol/m²/s,不使用锅炉和遮光幕布。
关键参数
lampType
:- 光照类型,可以是
'none'
(无光照)、'led'
(LED灯)或'hps'
(高压钠灯)。
- 光照类型,可以是
heatHarvest
:- 是否启用热量回收。
blackoutScreen
:- 是否使用遮光幕布。
boiler
:- 是否使用锅炉进行加热。
ppfd
:- 光合有效辐射(Photosynthetic Photon Flux Density,PPFD),单位为 μmol/m²/s。
intPpfd
:- 内部光照的光合有效辐射(用于混合照明场景)。
gradLamp
:- 是否采用渐变光照控制(即光照强度随太阳辐射变化)。
twentyHours
:- 是否将每日最大光照时间设置为20小时(默认通常为18小时)。
paramNames
和paramVals
:- 用于修改模型参数的名称和对应值。
saveFile
:- 保存仿真结果的文件名。
代码结构
- 场景1-2:
- 测试无光照条件下的温室能耗,分别测试有无热量回收的情况。
- 场景3-12:
- 测试LED照明在不同光照强度、遮光幕布、能量缓冲大小等条件下的能耗。
- 场景13-16:
- 测试HPS与LED混合照明在不同光照强度和遮光幕布条件下的能耗。
代码应用
- 该脚本用于研究如何通过优化光照和加热配置来降低温室能耗。
- 通过对比不同场景的仿真结果,可以得出以下结论:
- LED照明在温室中的节能效果。
- 热量回收、遮光幕布、能量缓冲等配置对能耗的影响。
- 不同光照强度和时间对作物生长和能耗的影响。
示例输出
每个场景的仿真结果会保存到指定的文件中,例如:
N.mat
:场景1的仿真结果。L-450.mat
:场景4的仿真结果。HL-320-NBO.mat
:场景14的仿真结果。
注意事项
- 运行该脚本需要确保
runHeatByLightScenarios
函数及其依赖的其他函数(如温室模型)已正确配置。 - 仿真可能需要较长时间运行,尤其是对于复杂场景。
- 需要根据实际需求调整参数(如光照强度、能量缓冲大小等)。