發(fā)酵食品批次追溯的數(shù)據(jù)建模難點(diǎn)
作者按:做過(guò)幾個(gè)調(diào)味品廠的數(shù)字化項(xiàng)目,發(fā)酵環(huán)節(jié)的數(shù)據(jù)建模和肉制品、飲料差異很大。這里把踩過(guò)的坑整理一下,供做工業(yè)軟件或 IoT 采集的朋友參考。
一、發(fā)酵工藝的特殊性
調(diào)味品發(fā)酵(醬油、醋、豆瓣醬、腐乳等)和連續(xù)生產(chǎn)最大的區(qū)別是:時(shí)間維度被拉到極致。
· 醬油高鹽稀態(tài)發(fā)酵:3-6 個(gè)月
· 醋固態(tài)發(fā)酵:20-40 天
· 豆瓣醬自然曬露:6-12 個(gè)月
這意味著:
1. 一個(gè)"批次"的生命周期跨越數(shù)月甚至數(shù)年
2. 發(fā)酵過(guò)程中要經(jīng)歷多次"翻醅/攪拌/添料"
3. 環(huán)境參數(shù)(溫度、濕度、光照)直接影響風(fēng)味
4. 最終產(chǎn)品品質(zhì)和中間每一天的狀態(tài)都有關(guān)
傳統(tǒng) MES 的"工單→工序→報(bào)工"模型在這里基本失效。你沒(méi)法讓操作工每天給發(fā)酵罐"報(bào)工"。
二、核心實(shí)體重新設(shè)計(jì)
發(fā)酵場(chǎng)景的核心不是"工序",而是"發(fā)酵事件":
-- 發(fā)酵批次主表
fermentation_batch (
batch_no VARCHAR(64) PRIMARY KEY,
product_code VARCHAR(32),
starter_lot VARCHAR(64), -- 種曲/酵母批號(hào)
raw_material_lots JSON, -- 原料批號(hào)列表(大豆/小麥/麩皮)
start_date DATE,
expected_end_date DATE,
status SMALLINT -- 發(fā)酵中/已出池/異常終止
);
關(guān)鍵在 raw_material_lots 用 JSON 存多個(gè)原料批——因?yàn)榘l(fā)酵投料不是一次性完成的,可能分 3-5 批投不同產(chǎn)地的黃豆。
然后是發(fā)酵事件表(記錄每一次翻醅、添料、檢測(cè)):
-- 發(fā)酵過(guò)程事件
fermentation_event (
id BIGINT PRIMARY KEY,
batch_no VARCHAR(64),
event_type SMALLINT, -- 1翻醅 2添料 3取樣 4溫控調(diào)整 5異常
event_time DATETIME,
operator VARCHAR(32),
params_json JSON, -- 溫度/pH/濕度等快照
notes TEXT
);
params_json 是靈活字段,因?yàn)椴煌l(fā)酵階段關(guān)注的參數(shù)不同:
· 前期:溫度上升速率、水分含量
· 中期:pH變化、還原糖含量、氨態(tài)氮
· 后期:色率、總酸、氨基酸態(tài)氮
三、CCP 監(jiān)控的難點(diǎn)
發(fā)酵食品的 CCP 不是"殺菌溫度"這種單點(diǎn)參數(shù),而是趨勢(shì)。
比如醬油發(fā)酵,關(guān)鍵不是某一天的 pH 值,而是 pH 從 6.5 降到 4.2 的速率和曲線(xiàn)形態(tài)。降太快可能是雜菌污染,降太慢可能是酶活性不足。
所以數(shù)據(jù)采集策略要變:
參數(shù) | 采集頻率 | 存儲(chǔ)策略 |
發(fā)酵池溫度 | 每 30 分鐘 | 時(shí)序數(shù)據(jù)庫(kù)(InfluxDB/TDengine) |
pH 取樣 | 每 2-3 天人工+設(shè)備 | 關(guān)系庫(kù),綁定 event |
環(huán)境溫濕度 | 每 1 小時(shí) | 時(shí)序庫(kù) |
翻醅操作 | 每 1-2 天一次 | 事件表 |
審計(jì)時(shí)需要的不是"某天的快照",而是連續(xù)曲線(xiàn) + 人工干預(yù)事件疊加顯示——曲線(xiàn)上能標(biāo)出"哪天翻了醅、哪天加了鹽"。
四、風(fēng)味追溯的逆向查詢(xún)
這是最難的??蛻?hù)投訴"這批醬油有異味",你要能反查:
成品批號(hào)
→ 發(fā)酵批次號(hào)
→ 發(fā)酵期間所有事件(翻醅頻次/溫控偏差/添料記錄)
→ 原料批號(hào)(黃豆產(chǎn)地/年份/存儲(chǔ)條件)
→ 種曲批號(hào)(酶活性指標(biāo))
→ 環(huán)境數(shù)據(jù)(雨季/高溫天影響)
這個(gè)鏈路里,發(fā)酵事件表是核心樞紐。沒(méi)有它,你只能查到"用了哪批黃豆",查不到"發(fā)酵第 45 天是不是溫度超標(biāo)了"。

五、落地建議
1. 先數(shù)字化發(fā)酵事件:讓操作工每天用平板記錄翻醅/添料/取樣,比上傳感器快得多
2. 溫度先上無(wú)線(xiàn)探頭:發(fā)酵池埋 IoT 溫度傳感器,30 分鐘采一次,成本幾千塊
3. pH 和理化指標(biāo)走 LIMS 對(duì)接:別在 MES 里重復(fù)建檢驗(yàn)?zāi)K
4. 追溯展示用時(shí)間軸 UI:把發(fā)酵曲線(xiàn)+人工事件疊加在同一時(shí)間軸上,審計(jì)員一眼能看懂
六、小結(jié)
發(fā)酵食品的數(shù)字化和飲料/肉制品最大的不同:時(shí)間尺度從小時(shí)級(jí)變成月級(jí),控制對(duì)象從設(shè)備變成微生物群落。
數(shù)據(jù)模型要從"工單驅(qū)動(dòng)"轉(zhuǎn)向"批次+事件驅(qū)動(dòng)"。先跑通發(fā)酵事件記錄和溫度曲線(xiàn)采集,后面的追溯、品質(zhì)分析、工藝優(yōu)化都是水到渠成的事。
本文基于實(shí)際調(diào)味品發(fā)酵項(xiàng)目經(jīng)驗(yàn)整理。相關(guān)數(shù)據(jù)采集方案已在多個(gè)釀造車(chē)間落地運(yùn)行。
提交
食品廠 MES 選型指南:追溯與投料防錯(cuò)
銅鋁加工 MES 選型指南:
MES解決非標(biāo)設(shè)備廠最痛的3個(gè)問(wèn)題
鋰電池Pack制造企業(yè)數(shù)字化管控方案
電子廠挑MES避坑:6個(gè)選型要點(diǎn)


投訴建議