各位大佬好,我在使用 Honeybee 进行能耗模拟时遇到了一个非常诡异的“假死”问题,卡了很久,希望能得到指点。
【运行环境】
软件版本:Rhino 8 + Grasshopper
插件版本:Ladybug Tools (Honeybee) v1.8.0
气象数据:成都 TMYx(为了避开路径和命名问题,已将文件精简重命名为 cd.epw 和 cd.ddy,并存放在 D:\sim\ 纯英文短路径下)。
模型:6 层楼的纯几何体。
几何检查:在 Rhino 中已确认 6 个房间全为 Closed Solid Polysurface(封闭的实体多重曲面)。在 Grasshopper 中读取未出现 Null,成功赋予了 MidriseApartment 的 ProgramType,并顺利打包进 HB Model。
目前的诡异症状
- 成功运行的假象: 拨动连接在
HB Model to OSM上的_write和run_开关(True)后,CMD 黑框能正常弹出并运行一段时间(且终端日志显示无严重报错),最终进度条跑完,并且在D:\sim\CoreBuilding\openstudio\run\文件夹下成功生成了eplusout.sql等一系列结果文件。 - 读取数据为空:当我把打包后的模型连接到
HB Color Rooms的_rooms_model,并将HB Read Room Energy Result电池的cooling(制冷能耗)输出端连上 Panel 后,里面没有任何数据(空值)。 - 导致后续的
HB Color Rooms电池处于橙色无数据状态,无法给建筑上色。
我已经做过的排查尝试(但均未解决)
- 排查了 C 盘权限与路径:将所有计算路径改到了
D:\sim\。 - 排查了 0.5s 闪退与未选型问题: 怀疑是
.ddy文件未被成功读取导致引擎跳过全年模拟,于是我采取了“显式导入”方案:使用HB Import DDY读取cd.ddy,连入HB Sizing Parameter,再组装进HB Simulation Parameter的_sizing_端口中,并确保了_for_run_period_为 True。红框报错已解决,但依然无数据。 - **排查了 ID 对应问题:*确认了
HB Color Rooms的模型源头直接来自于打包阶段的HB Model,没有连错上游节点。
我的困惑:既然 SQL 文件已经生成,说明 EnergyPlus 已经跑完了,为什么 HB Read Room Energy Result 就是提取不出 cooling 和 heating 的数据?是由于 OpenStudio 翻译过程中丢弃了某些 Zone 数据,还是 SQLite 读取在我的电脑上出了 Bug?