1. 食用菌工厂化生产环境参数基线测定

任务对象与测点布置

本次基线测定选一间层架式出菇房(示例:长12 m、宽6 m、4层床架,层间距0.55 m),目标是拿到能反映菇房真实环境波动的24小时连续数据。传感器不追求多,但必须覆盖三类关键位置:送风口附近(看新风/冷风入口的冲击)、菇房几何中心(看整体平均状态)、回风口/门侧角落(看气流死区与外界扰动)。每类位置在垂直方向取上下两层,共6个温湿度测点;CO₂浓度传感器布置在中心与角落各1个,高度取菌丝/子实体呼吸带(约床架中层)。

采样间隔统一设为5 min,连续采集24 h,共288条记录/测点。所有传感器在布设前需在同一位置静置30 min做一致性比对:温度互差应≤0.3 ℃、相对湿度互差≤3 %RH、CO₂互差≤30 ppm,超出则更换或做偏移修正,否则后续曲线无法区分“环境真实波动”与“传感器漂移”。

数据采集与日变化曲线绘制

采集完成后,按测点分组计算每小时均值,绘制温度、湿度、CO₂三条日变化曲线。判读时重点看三件事:波动幅度(最大值与最小值之差)、波动时刻(是否与通风、加湿、开关门等调控动作对应)、空间离散度(同一时刻不同测点的差值)。下面给出可直接运行的数据处理与绘图代码,输入为采集导出的CSV(字段:时间、测点编号、温度、湿度、CO₂)。

import pandas as pd
import matplotlib.pyplot as plt

# 读取采集数据,时间列解析为datetime
df = pd.read_csv("mushroom_room_24h.csv", parse_dates=["时间"])

# 按测点与小时聚合,得到每小时均值
df["小时"] = df["时间"].dt.hour
hourly = df.groupby(["测点编号", "小时"])[["温度", "湿度", "CO2"]].mean().reset_index()

# 计算每个测点的波动幅度(极差)
span = df.groupby("测点编号")[["温度", "湿度", "CO2"]].agg(lambda s: s.max() - s.min())
print(span)

# 绘制三条日变化曲线(以中心测点为例)
center = hourly[hourly["测点编号"] == "C-MID"]
fig, axes = plt.subplots(3, 1, figsize=(9, 8), sharex=True)
axes[0].plot(center["小时"], center["温度"], marker="o", color="#e07b39")
axes[0].set_ylabel("温度 / ℃")
axes[1].plot(center["小时"], center["湿度"], marker="o", color="#2f8fbf")
axes[1].set_ylabel("相对湿度 / %RH")
axes[2].plot(center["小时"], center["CO2"], marker="o", color="#5b8c5a")
axes[2].set_ylabel("CO₂ / ppm")
axes[2].set_xlabel("时刻 / h")
for ax in axes:
    ax.grid(alpha=0.3)
plt.tight_layout()
plt.savefig("daily_curve.png", dpi=150)

示例数据下,中心测点温度日较差约2.1 ℃、湿度日较差约9 %RH、CO₂日较差约420 ppm,且CO₂峰值出现在凌晨通风间歇段——这类“幅度+时刻”的组合就是后续识别调控盲区的直接依据。

调控盲区与波动规律识别

把6个测点的极差和同一时刻的空间差值放在一起看,盲区通常表现为两种形态:一是局部持续偏离,如角落测点温度长期比中心高1.5 ℃以上,说明该区域气流覆盖不足;二是同步突变但幅度异常,如送风口测点在新风开启瞬间温度骤降3 ℃,而中心仅降0.8 ℃,说明冷风直吹、混合不均。判读阈值建议:温度空间差>1.0 ℃、湿度空间差>5 %RH、CO₂空间差>200 ppm即视为存在明显盲区,需在下一轮布点或调控策略中重点处理。

菇房测点布置与日变化曲线判读 测点布置(俯视+层架剖面) 送风侧 回风/门侧 4层床架 S-UP S-LOW C-MID C-LOW R-UP R-LOW CO₂-C CO₂-R 送风口测点 中心测点 角落测点 24 h 日变化曲线(中心测点) 高 低 0h 12h 24h 温度 湿度 CO₂ 盲区判读逻辑 局部持续偏离 角落温度长期高于中心 >1.5 ℃ 同步突变幅度异常 送风口骤降3 ℃,中心仅降0.8 ℃ 空间离散度超限 温差>1.0 ℃ / 湿差>5 %RH 判定为调控盲区,进入下一轮布点/策略调整

结果记录与基线表

测定结束后,把每个测点的极差、空间差和对应时刻整理成基线表,作为后续调控优化的对照基准。下表为示例数据(非实测,仅演示字段与判读方式):

测点温度极差/℃湿度极差/%RHCO₂极差/ppm与中心温度差/℃判读
S-UP3.211380-1.8冷风直吹,混合不足
S-LOW2.69350-1.2同上,下层稍缓
C-MID2.194200基准参考点
C-LOW1.98400+0.3正常
R-UP2.410460+1.6角落积热,气流死区
R-LOW2.29440+1.4同上
基线测定的价值不在“测了一次”,而在于形成可复用的对照基准:后续调整送风角度、加湿时序或布点方案后,用同一套测点、同一采样间隔复测,直接对比极差与空间差是否收窄,才能判断调控是否真正生效。
若一致性比对未通过仍继续采集,测点间的差值可能来自传感器本身而非环境,会导致盲区误判。务必先完成比对与偏移修正,再进入24 h连续采集。