國中科展 · 生活與應用科學科(二)· 詳細研究計畫 · 2026-09-27

結合果蠅蕈狀體神經網路之電子鼻
於水果熟成與腐敗判別之研究

結論:可行,建議執行。 用 M5Stack 與三顆氣體感測器做成仿果蠅電子鼻,判斷香蕉的熟成階段。研究不只比較準確率,而是檢驗果蠅嗅覺的每一個步驟分別帶來什麼能力:換濃度也認得、只學一次就會、學新東西不忘舊的。先導模擬支持這三項;其中「增益控制」原理搬到傳統方法上也同樣有效,這也列為結論之一。模擬中果蠅模型在濕度干擾(E8)表現較差,60 秒快速判斷則各方法都做得到。真實感測器能否重現,是 11 月要先驗證的最大風險。

⬇ 下載研究規畫書(Word)

題目新穎度:高(10 年全國得獎 0 件電子鼻) 先導模擬:濃度外推、少樣本、不遺忘優於原始方法 先導模擬:濕度干擾較差、快速判斷無專屬優勢 程式:25 項自動測試通過 真實感測器的濃度比例是否穩定:11 月驗證 每日量測工作量:偏重 器材價格、參考文獻:尚未查證
5 個機制組合編碼、增益控制、PN 適應、稀疏編碼、分區學習
0.80–1.00只學 1 倍濃度,測 0.1–4 倍(模擬;原始方法 0.25–0.95)
60 秒量測可望縮短(模擬:果蠅 0.92,傳統 0.83–0.89)
0.88每類只學 1 個樣本(模擬;原始方法 0.65–0.67)
≥ 1 天目標:比肉眼提早發現腐敗
題目、研究問題與假設

果蠅靠嗅覺尋找發酵中的水果。牠的「蕈狀體」只用約 2,000 個 Kenyon 細胞,就能分辨上千種氣味,而且學一次就記得。本研究把果蠅嗅覺的每一個步驟做進電子鼻,逐一檢驗每個步驟帶來什麼能力,最後用來回答生活問題:這根香蕉還能不能吃?

果蠅嗅覺的五個機制 → 電子鼻的五種能力

果蠅的機制電子鼻上的做法預期帶來的能力實驗
約 50 種嗅覺受器,用「組合」辨認氣味BME688 輪流 5 種加熱溫度+SGP30+SCD40,共 8 種「受器」受器種類越多,越能分辨相似氣味E1c
觸角葉的增益控制(側向抑制)+APL 全域抑制除以總反應量;KC 只留前 5%換濃度也認得E3(E4 快速判斷為實用目標)
PN 適應(習慣常聞到的氣味)用平常聞到的背景氣味,扣掉平均模式(不需標籤)準確率提高、少樣本也學得會E2b、E5
Kenyon 細胞稀疏編碼2,000 個 KC 只亮 5%,可用真實連結體接線不同氣味的編碼不互相干擾E2b、E2c
多巴胺分區學習(每個 MBON 有自己的區)學某一類時只改那一類的突觸學新水果不忘舊的、M5Stack 上當場教E6

研究假設(實驗前訂好,照實回報)

編號假設判斷標準實驗先導模擬
H1仿果蠅電子鼻能分辨 4 種氣味,準確率不輸傳統方法(非劣性)與最好的傳統方法差距 ≤ 5 個百分點E20.96 vs 0.995(差 3.1)
H2只學 1 倍濃度,就能認出 0.25–4 倍的同一氣味;拿掉增益控制就做不到果蠅模型每個濃度 ≥ 80%,且高於原始 kNN/邏輯回歸;消融組明顯下降E3、E2b0.95–1.00 vs 0.25–0.95
H3樣本放入 60 秒就能判斷,量測時間可從 4 分鐘縮短(實用目標,不是果蠅專屬優勢)果蠅模型 60 秒時準確率 ≥ 85%E40.92(傳統 0.83–0.89;30 秒時果蠅 0.69 較差)
H4每類只給 1–3 個樣本,果蠅模型就學得會1 個樣本時高於原始 kNN/邏輯回歸,差距大於 20 次抽樣的標準差E50.88 vs 0.65–0.67
H5學會新的一類後,舊的類別不會被忘記舊類別準確率下降 ≤ 10 個百分點,傳統逐步更新的邏輯回歸下降更多E6−6 vs −77 個百分點
H6判斷熟成階段要「組合比例+強度」兩條路,只看比例不夠加上強度神經元後,香蕉準確率明顯提升,且不輸傳統方法(差距 ≤ 5)E70.91 vs 0.74(邏輯回歸 0.92)
H7電子鼻能比肉眼提早發現香蕉開始腐敗多數香蕉提早 ≥ 1 天E7模擬中位數 0 天

「先導模擬」只代表程式與設計在模擬資料上行得通,模擬資料的反應是我們自己設定的,不能當成結果。H7 是食品科學的主問題,不論演算法勝負都能回答。

創新點

  • 不只比準確率,而是拆解果蠅嗅覺:每個機制都有「拿掉它」的消融實驗,說得出每一步的功能。
  • 真實情境的能力:濃度會變、時間有限、樣本很少、會一直學新東西,這些正是家用電子鼻會遇到的問題。
  • 兩條路的假說:辨認「是什麼氣味」靠組合比例,判斷「壞到什麼程度」還需要強度。模擬支持這個想法(但模擬本來就設定腐敗主要是味道變強),要用真實香蕉檢驗。
  • 真實果蠅連結體:使用 2026 年發表的雄果蠅完整中樞神經連結體(male-cns v1.0)的 PN→KC 接線。
先導模擬評估

用模擬資料(含感測器上升曲線、每日漂移與雜訊)跑完整分析流程,比較「果蠅模型」「傳統 kNN/邏輯回歸」「傳統方法加上果蠅正規化」三種做法,確認實驗設計與程式可行,並作為研究假設的預期值。

果蠅模型的三個關鍵設計與依據

設計生物依據先導模擬(拿掉 → 保留)
PN 適應(扣掉平常的背景模式)PN 會對常聞到的氣味適應標準辨識 0.84 → 0.96;1 個樣本 0.58 → 0.88
強度神經元(8 個,只在熟成判斷用)果蠅同時保留氣味種類與濃度資訊香蕉 0.74 → 0.91
分區學習(每類一個多巴胺區)多巴胺神經元各管一個 MBON 區學新類別時舊類別權重完全不變
研究限制(先導模擬已顯示)
① 把「除以總量」搬到 kNN 上,常常跟完整果蠅模型一樣好:這列為結論之一,果蠅的增益控制原理可以移植;「不遺忘」則是果蠅分區學習特有的。
② 高低濕度(E8)果蠅模型比傳統方法差(0.90 vs 1.00);60 秒快速判斷(E4)各方法都做得到,不是果蠅專屬優勢。
③ 模擬假設同一氣體不論濃淡「比例都一樣」;真實金屬氧化物感測器的比例可能隨濃度改變,11 月第一週就要用真實稀釋液檢查(見時程的決策點)。

參數(強度神經元數量、KC 放電比例)只用「開發資料」決定:校正實驗前 4 天、香蕉第 1 批。之後固定不動,再用其餘資料測試。模擬資料的反應是自行設定的,只作預期值,不是實驗結果。

科別選擇與新穎度

為什麼選生活與應用科學科(二)

科(二)自第 63 屆(2023)起範圍是「生物科技/食品科學」,化工與環境改列科(三)。第 63–65 屆國中組科(二)全國得獎 42 件,類型集中在食品加工與物性、微生物與發酵、天然萃取物功效、生物材料,全部都有實際的濕實驗與生活應用,純模擬作品 0 件。所以本研究把「水果何時腐敗」放在主體,神經模型與電子鼻定位為解決問題的工具。

屆科別作品與本研究的關係
58生活(二)自製多功能行動光譜儀探討果汁新鮮度同為自製儀器檢測新鮮度,但用光譜而非氣味
60生活(二)可見光與近紫外線光譜分析蜂蜜品質儀器檢測食品品質
65生活(二)運用非破壞性電阻抗法檢測超音波催化效果(香蕉)分科後的新科(二),電子量測食品,同樣用香蕉
65生活(二)自釀釋迦醋之探討發酵題材,可作延伸實驗對照

歷屆作品新穎度比對

比對範圍:國中組第 56–65 屆(2016–2025)全部科別全國得獎作品,共 1,086 件。

限制:只比對全國決賽得獎作品的名稱,未含縣市賽作品,也未逐件閱讀內文。

評審可能的質疑與回應

「這比較像工程,不像食品科學?」

說明書中食品實驗(E7 香蕉與標準答案量測)佔一半以上篇幅;題目把「水果熟成與腐敗」放在前面;結論以腐敗曲線與提早天數為主。

「為什麼要用果蠅模型,直接用現成 AI 不行嗎?」

E2 檢驗準確率是否不輸(非劣性);E3、E5、E6 檢驗果蠅機制帶來的能力:換濃度也認得、只學一次、學新的不忘舊的。其中「除以總量」這一步搬到傳統方法上也有效(果蠅原理可移植),「不遺忘」則是果蠅分區學習特有的。E2b 逐一拿掉機制,檢驗每種能力來自哪一步。

研究原理:果蠅怎麼聞 → 如何模仿

偵測對象:選「果蠅真正在聞」的氣味

氣體在食物中代表對果蠅的意義對應感測器
乙醇水果過熟、酵母發酵強烈吸引SGP30、BME688
醋酸發酵後期、變酸吸引BME688
乙酸乙酯熟水果香味吸引BME688、SGP30
二氧化碳呼吸作用、微生物生長高濃度時逃避SCD40
感測器限制:M5Stack 沒有專用的氨氣或硫化氫感測器,對肉類、魚類腐敗產生的胺類反應差,因此不以肉魚為樣本。乙烯對金屬氧化物感測器反應很弱,不作為主要指標。

果蠅嗅覺迴路與電子鼻的對應

果蠅 電子鼻 觸角嗅覺受器約 50 種受器 觸角葉 PN側向抑制、正規化 蕈狀體 KC~2,000 個,只亮 5% 輸出神經元 MBON多巴胺調控學習 3 顆氣體感測器8 維氣味特徵 扣基準 + 除總量濃度不影響形狀 隨機稀疏投射隨機或真實連結體接線 4 個輸出單元新鮮/可食/過熟/腐敗 APL 神經元的全域抑制 → 只保留最活躍的 5%(Top-k)
硬體:M5Stack 電子鼻與採樣盒 密封保鮮盒(約 2–3 L) 香蕉樣本 BME688(0x77) SGP30(0x58) SCD40(0x62) 風扇 乾淨空氣進 抽氣泵出 M5StackCore2 Grove I²C

氣體感測單元選擇

單元晶片量測項目用途決定
Unit ENV-ProBME688VOC 綜合反應、溫度、濕度、氣壓不同加熱溫度對不同氣體敏感。UIFlow 2 一次只能設一個溫度,本研究用程式輪流切換 5 段(200–360°C),得到 5 維氣味指紋主力
Unit Mini TVOC/eCO2SGP30乙醇與氫氣原始訊號、TVOC乙醇是過熟與發酵的關鍵氣體主力
Unit CO2 / CO2LSCD40/SCD41紅外線式 CO₂、溫濕度呼吸作用與微生物生長指標主力
Unit MQMQ-5液化石油氣、甲烷與食品關係小不採用
Air Quality KitSEN55 + SCD40PM、VOC、NOx 指數、CO₂功能重疊且較貴不採用

三顆主力感測器的 I²C 位址互不衝突(SGP30 0x58、SCD40 0x62、BME688 0x77),用 Grove 分接器串在 Core2 的 Port A 即可。

接線前要確認:Grove Port A 是 5 V 供電,三個 Unit 模組是否都內建 3.3 V 穩壓與電位轉換,請以 M5Stack 官方文件為準。SGP30 開機後前 15 秒輸出固定值,量測程式要跳過;它的基準值需要長時間運轉才穩定,每天開機後先暖機 30 分鐘再開始量測。
採樣流程與特徵

一次量測(約 12 分鐘)

乾淨空氣 2 分 放入樣本 3–5 分 換氣 5 分(回復) 基準值 b 上升時間 t₉₀ 穩定值 r(取最後 60 秒平均) 回復時間(回到基準 ±10%) 反應 示意圖,非實測資料

每次量測的特徵向量

來源特徵維度
BME6885 段加熱溫度(200、240、280、320、360°C)下的氣體電阻(相對基準變化量)5
SGP30乙醇原始訊號、氫氣原始訊號2
SCD40CO₂ 濃度增量(ppm)1
環境溫度、相對濕度(、氣壓)2–3
氣味特徵合計(溫濕度另外記錄,不進模型)8

溫濕度本身不是氣味,但要記錄下來:E8 會檢查濕度改變時模型是否受影響;若影響大,再比較「放入模型」與「只用來校正」兩種做法。

採樣標準作業程序(SOP)

  1. 每天開機暖機 30 分鐘;量一次「空盒」當日基準。
  2. 樣本放入前,先在室溫靜置到與室溫相同(冷藏組需回溫 30 分鐘,避免溫度干擾與盒內結露)。
  3. 每個樣本量測時間、放入位置、盒子開關順序都固定;記錄開始時間。
  4. 每量 5 個樣本插入一次空盒量測,用來追蹤漂移。
  5. 樣本量測順序每天隨機排列,避免「最後量的總是比較爛」的系統誤差。
仿果蠅蕈狀體模型

第一層:投射神經元(PN)— 增益控制、適應、上升/下降

xi = (ri − bi) / bi    pi = xi / Σj|xj|    zi = (pi − 平常的 pi) / 平常的變動    PN = [z+, z−]

r 是樣本穩定值、b 是當日乾淨空氣基準。除以總量後,同一種氣味不論濃淡,比例都一樣(增益控制)。適應把「平常就聞得到的模式」扣掉,只留下這個樣本特別的地方;「平常」可以從沒有標籤的背景量測學來,就像果蠅平常聞過很多東西,但大多沒有獎懲。最後每個通道拆成上升(z⁺)與下降(z⁻)兩個 PN,因為放電率不能是負的,共 16 個 PN。判斷熟成時,另外加 8 個強度神經元,各自偏好一段總反應量。

第二層:Kenyon 細胞(KC)— 稀疏編碼

hk = Σj Wkj PNj      yk = 1 若 hk 在前 5%,否則 0

W 是 2,000 × 16 的接線矩陣:隨機接線(每個 KC 接 7 個 PN),或真實連結體接線(雄果蠅 male-cns v1.0,右腦 1,891 個 KC,見教學)。「只留前 5%」是 APL 神經元的全域抑制,它本身也不受濃度影響,所以消融實驗要把「除總量」和 APL 一起拿掉。

第三層:輸出神經元(MBON)— 多巴胺分區學習

wc = 第 c 類的平均 KC 編碼      oc = Σk wck yk ÷ 放電 KC 數

每一類有自己的輸出神經元,多巴胺只改那一區的突觸(分區學習),所以學新的一類時,舊類別的權重完全不變(自動測試已驗證)。除以樣本數(恆定調節)避免樣本多的類別每次都贏。判斷時取 oc 最大者,信心度用 softmax 換算。

對照方法

方法用途
kNN(k = 1、3)、邏輯回歸傳統方法(原始特徵,標準化)
kNN/邏輯回歸+果蠅正規化只把「除以總量」這一招搬過去:果蠅原理能不能移植?
單一門檻(只看乙醇)最簡單的做法,代表「一顆感測器夠不夠」
果蠅模型的消融版本拿掉增益控制/適應/稀疏編碼/分區學習,各一個(E2b)
BME AI-Studio(選做)Bosch 官方工具;UIFlow 輪流加熱的資料可能無法匯入,需先試

公平原則:少樣本實驗中,傳統方法也能用同一份無標籤背景資料做標準化;所有參數只用開發資料決定。

移植到 M5Stack

程式已寫好(enose_classifier.py + mb_infer.py)。模型連同 PN 適應、強度神經元與量測時間設定存成 JSON,已在電腦上驗證 M5Stack 版與電腦版的每一筆判斷與信心度一致。ESP32 上的速度與記憶體要等上機實測。

標準答案:香蕉熟成分級

模型要學的「正確答案」必須在實驗前定好,並且不看電子鼻讀值。以下為初版,須先與指導老師確認。

新鮮可食過熟腐敗 果皮色階 1–5色階 6–7,褐斑 < 10%褐斑 10–50%褐斑 > 50% 或出汁、發霉
指標量法用途
果皮色階常用的 1–7 級香蕉色卡,固定光源與背景拍照分級主依據
褐斑面積 %照片以 ImageJ 門檻法計算褐色像素比例分級主依據,可量化
糖度(°Brix)取果肉汁液,糖度計熟成曲線;破壞性,每天犧牲 1 根
pH果肉加蒸餾水 1:1 打勻變酸指標;破壞性
重量損失 %每天同一時間秤重水分散失;非破壞
肉眼判定「不能吃」3 位不知道電子鼻結果的同學看照片投票,多數決E7 比較提早天數的對照

破壞性量測(糖度、pH)用「陪測香蕉」:同批多買幾根,每天剖一根,不動到電子鼻追蹤的那幾根。

實驗總表(可搜尋、可篩選)

編號類別實驗資料成功標準月份
E1感測器感測器特性:4 種標準溶液 × 6 種稀釋(0.1–4 倍)1 倍各 10 次、其他各 5 次;1 倍另測高/低濕度CV < 10%;上升/回復時間;第 1 週先檢查濃度比例是否穩定11 月
E1b感測器漂移:連續 7 天量空盒與同一瓶溶液每天 1 次扣基準後跨日 CV 變小11 月
E1c果蠅核心組合編碼:受器種類 1→8 種重用 E1種類越多準確率越高11 月
E2果蠅核心標準辨識與非劣性(H1)重用 E1(中濕度)與最好的傳統方法差 ≤ 5 個百分點12 月
E2b果蠅核心元件消融:一次拿掉一個果蠅機制重用 E1找出哪個機制造成哪種能力12 月
E2c果蠅核心真實連結體 vs 隨機 vs 打亂接線(探索)重用 E1無預設方向,任何結果都報告12 月
E3果蠅核心濃度外推:只學 1 倍,測 0.1–4 倍(H2)重用 E1每個濃度 ≥ 80% 且高於原始方法12 月
E4果蠅核心提早判斷:放入後 30–240 秒就判斷(H3)重用 E1 原始記錄,不必重量60 秒 ≥ 85%(實用目標)12 月
E5果蠅核心少樣本:每類 1/3/5/10 個,測試含各種濃度(H4)重用 E11 個樣本時高於原始方法12 月
E6果蠅核心不遺忘+M5Stack 現場教新水果(H5)重用 E7;另做現場示範舊類別下降 ≤ 10 個百分點2 月
E7食品香蕉熟成與腐敗:3 批 × 室溫/冷藏(H6、H7)每天量到腐敗強度神經元提升準確率;提早 ≥ 1 天12–1 月
E7b食品氣味特徵 × 糖度、pH、褐斑的相關重用 E7找出最能代表腐敗的特徵1–2 月
E8感測器濕度干擾:中濕度訓練,測高/低濕度重用 E1下降幅度與原因2 月
E9延伸自釀水果醋三期(選做)另量能否分出三期2 月
E10延伸換水果:草莓或芭樂(選做)另量香蕉模型能否沿用2 月

設計重點:E1c、E2、E2b、E2c、E3、E4、E5、E8 全部重用同一份 E1 資料(4 種氣體 × 6 種稀釋),不必另外量測。

實驗步驟細節

E1 感測器特性(資料來源,最重要)

  1. 標準溶液:食用酒精、白醋、乙酸乙酯(或香蕉油香精)、清水。以「1 倍」為中間濃度,稀釋成 0.1、0.25、0.5、1、2、4 倍,6 種。
  2. 1 倍每種各量 10 次(訓練用),其他濃度各 5 次;1 倍另在低濕度(乾燥劑)與高濕度(濕紙巾)各量 5 次(E8 用)。共約 4 × (10 + 5×5 + 10) = 180 次,約 36 小時機器時間,分 11 月完成,每天順序隨機。
  3. 第 1 週決策點:每種氣體先量 0.25、1、4 倍各 3 次,計算「除以總量」後的比例是否接近(程式:e3_concentration.py)。
    • 接近 → 照原計畫。
    • 不接近(比例隨濃度改變)→ 加入 PN 的壓縮非線性(例如取對數或開根號,真實 PN 反應也會飽和),重新檢查;仍不行則把 E3 的測試範圍縮成 0.5–2 倍,並在討論中說明。

E2b 元件消融

完整果蠅模型與 4 個「拿掉一個機制」的版本,在標準辨識、濃度外推、少樣本三項各自評分。某機制「有用」的標準:拿掉後下降超過抽樣標準差。

E3 濃度外推

只用 1 倍濃度(中濕度)訓練,測試其他 5 種濃度。同時報告:原始 kNN/邏輯回歸、傳統方法+果蠅正規化、果蠅模型、果蠅模型拿掉增益控制。

E4 提早判斷

不用重量:把 E1 的原始記錄在樣本放入後 30、45、60、90、120 秒截斷,用截斷前 15 秒(一整輪 BME688 加熱)的平均當作「當下的值」。模型用完整 240 秒的資料訓練。如果 60 秒就夠,E7 香蕉可以把量測時間縮短,每天能量更多根。

E5 少樣本

每類只給 1、3、5、10 個樣本(從訓練日的各種濃度抽),各抽 20 次;測試集是保留的最後一天,包含各種濃度。所有方法都能用訓練日的無標籤資料做標準化或適應,只有那幾個樣本有標籤。

E6 不遺忘+現場教學

  1. 電腦上:先學新鮮、可食、過熟,再只學腐敗,比較舊類別準確率(對照:逐步更新的邏輯回歸、跨區懲罰的果蠅模型)。
  2. M5Stack 上(展示用):現場放一種新水果,按鍵「教」它一次,再測舊的水果仍能正確判斷。需要替 enose_classifier.py 加一個「學習模式」(2 月)。

E7 香蕉熟成與腐敗(食品科學主體)

  1. 至少 3 批香蕉,每批 10 根編號:5 根室溫、5 根冷藏,另加 4–6 根「陪測香蕉」做破壞性量測(糖度、pH)。
  2. 每天:拍照 → 秤重 → 電子鼻逐根量測 → 陪測香蕉剖開量糖度與 pH。冷藏組先回溫 30 分鐘。
  3. 模型:果蠅模型+8 個強度神經元(第 1 批當開發資料決定參數,第 2、3 批測試);同時報告只看比例的版本,檢驗 H6。
  4. 提早天數:電子鼻「連續 2 天判為腐敗且信心度 ≥ 0.7」的第一天,對比 3 位同學看照片多數決判定不能吃的第一天。
工作量:若 E4 顯示 60 秒就能判斷,每根量測可從約 12 分鐘縮到約 8 分鐘(換氣時間依 E1 回復時間決定),每批 10 根約 1.3 小時/天。
數據分析方法
問題分析方法呈現方式
感測器重複性、漂移變異係數 CV;扣基準前後跨日 CV表格、折線圖
標準辨識(H1)依量測日分組交叉驗證;非劣性:與最好方法差距 ≤ 5 個百分點準確率長條圖、混淆矩陣、PCA 圖
哪個機制有用消融:拿掉後下降是否超過抽樣標準差分組長條圖
濃度外推(H2)只用 1 倍訓練,逐一濃度測試準確率 vs 濃度(對數軸)
提早判斷(H3)截斷原始記錄準確率 vs 秒數
少樣本(H4)20 次抽樣平均 ± 標準差學習曲線
不遺忘(H5)學新類別前後舊類別準確率前後對照圖
腐敗(H6、H7)依批次切分;每根香蕉的「肉眼日 − 電子鼻日」腐敗曲線、提早天數點圖
避免「一直調到贏為止」的規則
  1. 參數只用開發資料(校正實驗前 4 天、香蕉第 1 批)決定,寫進紀錄後固定。
  2. 傳統方法也給同樣的調整機會與同樣的無標籤資料。
  3. 假設與判斷標準在實驗前訂好(本頁),實驗後新增的分析要註明「事後分析」。
  4. 不論勝負,所有方法、所有濃度、所有批次的結果都報告。

工具:Python(numpy、scikit-learn、matplotlib),程式見實作教學;ImageJ 或 browning_area.py 量褐斑面積。樣本數少,只做描述統計與效果量,不過度宣稱「顯著」。

數據記錄表
欄位群組欄位
基本資料樣本編號、批次、第幾天、保存條件(室溫/冷藏)、量測日期時間、量測順序
環境室溫、室內濕度、盒內溫度、盒內濕度、氣壓
基準當日空盒 BME688 5 段電阻、SGP30 乙醇/氫氣、CO₂
感測器原始值BME688 5 段電阻值(每 3 秒一段)、SGP30 乙醇與氫氣原始值、TVOC、CO₂(每秒一筆)
食品標準答案照片檔名、色階、褐斑面積 %、重量、糖度、pH、硬度(可選)
判斷分級標籤、肉眼投票結果、模型輸出與信心度
加分項培養皿菌落計數(需老師指導無菌操作)

M5Stack 把每秒原始值存成 microSD 上的 CSV,檔名含日期與樣本編號;每天結束後複製到電腦並備份到雲端硬碟。

timestamp,sample_id,batch,day,storage,phase,bme_r0,...,bme_r9,sgp_ethanol,sgp_h2,tvoc,co2,temp_c,rh_pct,pressure_hpa
2026-11-03T14:02:11,B1-03,1,4,room,sample,51234,...,18877,17520,13210,145,612,26.1,58.3,1011.2

以上欄位名與數值只是格式範例,不是實測資料。

雲端系統架構(Zeabur) M5Stack 電子鼻 三顆感測器 + 螢幕 microSD 存原始值 Zeabur 服務 / 研究計畫網站(本頁) /api 資料上傳(規劃中) /app 資料看板(規劃中) Volume /data(規劃中) 瀏覽器 老師、組員、評審 HTTPS HTTPS 實線=目前部署;虛線與黃字=規劃中,尚未實作

目前只部署研究計畫網站。資料以 microSD 為主,雲端上傳是方便組員即時看曲線的加分項,不是實驗成敗的必要條件;網路斷線時實驗照常進行。若日後加上 /api,裝置金鑰放在環境變數,不寫進程式碼。

時程規劃(2026-10 至 2027-03)
月份工作項目檢查點/決策點
2026 年 10 月採購、採樣盒、記錄程式;與老師確認分級標準;用模擬資料演練全部分析程式能連續記錄 1 小時;每支程式都跑過一次
2026 年 11 月E1(6 種稀釋)、E1b 漂移、E1c 組合編碼第 1 週:濃度比例是否穩定(決定 E3 範圍與是否加 PN 非線性);月底:4 種氣味分得開
2026 年 12 月用開發資料固定參數 → E2、E2b、E2c、E3、E4、E5;E7 第 1 批香蕉(開發)H1–H4 結果出爐;決定香蕉量測時間(依 E4)
2027 年 1 月E7 第 2、3 批香蕉;E7b 相關分析H6、H7 結果;3 批腐敗曲線
2027 年 2 月E6(含 M5Stack 現場教學模式)、E8;上機實測;延伸 E9、E10(選做)M5Stack 可現場判斷與學習
2027 年 3 月撰寫作品說明書、海報、現場展示說明書送老師審閱

寒假(約 1 月下旬至 2 月中)在家也能量香蕉,但電子鼻與採樣盒要能帶回家,需先確認。

預算(粗估,未查價)

所有金額都尚未查詢台灣經銷商實際價格,採購前需再確認。

風險評估與備案
風險等級影響對策/備案
真實感測器的濃度比例會隨濃度改變高H2、H3 的基礎(模擬假設比例固定)11 月第 1 週先測 0.25/1/4 倍;不穩定就加 PN 壓縮非線性,或縮小 E3 範圍並說明
三顆感測器反應速度不同中提早判斷時比例還沒定型(SCD40 每 5 秒、BME688 一輪 15 秒)E4 從 30 秒起算;若 30–45 秒不佳,改以 60 秒為目標
「一直調到贏」的質疑中結果可信度參數只用開發資料決定並記錄;傳統方法同等對待;全部結果都報告
果蠅正規化讓傳統方法一樣好低「果蠅模型最好」不成立本來就列為結論之一:果蠅原理可移植;果蠅模型另有不遺忘、當場學習的能力
濕度干擾高金屬氧化物感測器對濕度極敏感,香蕉本身會釋放水氣每次記錄溫濕度;固定採樣流程;E8 量化影響;PN 適應可部分抵銷;必要時盒內放定量乾燥劑
感測器漂移中同樣氣味每天讀值不同每日量空盒基準;特徵改用相對變化量;每 5 個樣本插一次空盒
4 種氣體分不開中H1 不成立11 月檢查點;改用 3 類(乙醇、醋酸、清水)或調整 BME688 加熱組合;結果照實寫
每日量測工作量中每天約 2 小時,組員負擔大縮短換氣時間(依 E1 回復時間);組員輪班;必要時每批降到 6 根
程式只在模擬資料上驗證過中真實資料可能出現沒想到的狀況程式已完成(25 項測試);10 月用清水先跑通整條流程;M5Stack 上機失敗時用電腦判斷展示
香蕉批次差異中模型只記住某一批依批次切分訓練與測試;至少 3 批
評審認為偏工程中被質疑不屬科(二)食品實驗佔一半以上篇幅;題目把「水果熟成與腐敗」放前面
模型不易理解低評審不熟神經科學一張圖說明「果蠅怎麼聞 → 如何模仿 → 為什麼更好」
乙酸乙酯安全低揮發性有機溶劑見「安全規範」;或改用香蕉油香精
安全規範
  • 乙酸乙酯、酒精為易燃液體:遠離火源與加熱器,只取少量稀釋液,在通風處操作,老師在場。
  • 腐敗水果與菌落培養皿:戴手套,用完密封丟棄;培養皿不開蓋觀察,丟棄前依老師指示處理。
  • 實驗香蕉一律不食用。
  • 抽氣泵出口朝窗外或通風處,不在密閉房間長時間排放。
  • 鋰電池:M5Stack 內建電池,充電時有人看管,不在採樣盒內充電。
預期成果與應用
  • 一台成本數千元、可現場展示、能即時顯示判斷結果的仿果蠅電子鼻。
  • 三顆感測器對 4 種食品關鍵氣體的特性數據(靈敏度、重複性、回復時間)。
  • 仿蕈狀體方法在少樣本學習與抗濃度變化上的定量比較,以及「側向抑制」這一步的消融結果。
  • 香蕉在室溫與冷藏下的腐敗曲線,以及電子鼻比肉眼提早偵測的天數。

應用場景

家庭

冰箱或水果籃旁的小盒子,提醒「這串香蕉再 2 天要吃完」,減少食物浪費。

水果通路

倉庫抽檢時快速找出開始腐敗的箱子,避免一箱壞掉帶壞整批。

Zeabur 部署步驟
  1. 把專案推到 GitHub(.omc、.remember、實驗原始資料已列在 .gitignore)。
  2. 在 Zeabur 建立專案,選「從 GitHub 部署」。Zeabur 會偵測根目錄的 Dockerfile(nginx 靜態網站,監聽 8080)。
  3. 產生網域,例如 flyenose.zeabur.app(實際名稱部署時再定)。
  4. 之後每次 push 到 main,Zeabur 會自動重新部署;網頁設定為每次重新驗證,不會看到舊版。
行動清單

  • 與指導老師確認題目、科別(生活與應用科學科(二))與香蕉分級標準
  • 查詢 Core2、ENV-Pro、SGP30、SCD40 台灣經銷價格,更新預算
  • 確認三個 Unit 的供電與電位規格,以及 Grove 分接器接法
  • 採購零件、保鮮盒、風扇、抽氣泵、糖度計、pH 計
  • 製作採樣盒(進氣、出氣、感測器固定座)
  • 撰寫 M5Stack 讀取與 microSD 記錄程式,連續記錄 1 小時測試
  • 寫好採樣 SOP 與數據記錄表,組員分工排班
  • 用模擬資料把全部分析程式跑過一次(教學頁「各實驗怎麼跑」)
  • 準備 6 種稀釋液(0.1–4 倍),寫好稀釋表
  • 11 月第 1 週:0.25/1/4 倍比例檢查,決定 E3 範圍
  • 用開發資料固定模型參數,記錄在實驗日誌後不再更動
  • 完成 E1、E1b 感測器特性與漂移測試(11 月檢查點)
  • 用真實 E1 資料跑一次完整果蠅模型(含 PN 適應),確認沒有程式問題
  • 完成 E2、E2b、E3、E4、E5(果蠅核心實驗)
  • 完成 E7 三批香蕉實驗與腐敗曲線
  • 模型移植到 M5Stack,加入現場學習模式(E6),實測速度與記憶體
  • 逐一查證參考文獻(原始論文、官方文件)
  • 撰寫作品說明書、海報與現場展示流程

勾選狀態只存在這台瀏覽器。

參考資料(待查證)
  1. 國立臺灣科學教育館,全國中小學科學展覽會科別說明:twsf.ntsec.gov.tw/Article.aspx?a=38
  2. 全國中小學科學展覽會第 56–65 屆國中組得獎名單:https://twsf.ntsec.gov.tw/activity/race-1/{屆}/high.html
  3. M5Stack 官方產品列表:docs.m5stack.com/en/products
  4. M5Stack Unit Mini TVOC/eCO2(SGP30)說明:docs.m5stack.com/en/unit/tvoc
  5. Male CNS Connectome Consortium, "Sexual dimorphism in the complete connectome of the Drosophila male central nervous system", Cell (2026), doi:10.1016/j.cell.2026.08.015;Google Research 部落格:A connectomics milestone;資料 male-cns:v1.0(CC-BY 4.0)
  6. 待補(需查原文):果蠅蕈狀體稀疏編碼與 APL 抑制的原始研究;以果蠅嗅覺迴路做相似度搜尋的「FlyHash」研究(Dasgupta 等人);Bosch BME688 資料手冊與 BME AI-Studio 使用說明;Sensirion SGP30、SCD40 資料手冊;香蕉果皮色階分級的文獻。

第 6 項只列出主題,作者、年份與期刊都還沒查證,寫進說明書前必須先找到原文。