工廠 AI 化
進階
工廠 AI 化

提前發現製程偏移:管制圖與 EWMA 先做,再談 AI

用統計管制和 EWMA 監控尺寸或參數,在超規之前發出警告,再用機器學習預測品質,全程只做提醒不自動調機。
1 小時
6 步
免費
編
AI 有解編輯部
最後更新 2026 年 11 月 5 日・CC BY 4.0
用到的工具
Python
pandas
scikit-learn
刀具慢慢磨耗、材料批次改變,零件不會一下子變壞,而是慢慢偏掉。等到量出不良時,可能已經多做了一批。最有效的第一步不是神經網路,而是把幾十年前就有的統計工具用好。
你需要準備
•
持續量測的數值,例如尺寸、溫度、壓力,一天至少幾十筆
•
Python:pip install pandas numpy
•
現場人員對「正常狀態」的定義
進度 0/6
1

確認量測可信

資料不準,分析全白費。先確認量具有校正,同一件量多次的差異夠小,不同人量也差不多。這類檢查稱為量測系統分析。
2

用穩定期建立基準

挑一段大家都同意是正常的期間,算出中心值與標準差。把資料存成 readings.csv,欄位是 value。
Python
import numpy as np import pandas as pd readings = pd.read_csv("readings.csv")["value"] base = readings.iloc[:100] # 前 100 筆是確認過的穩定期 center, sigma = base.mean(), base.std() upper, lower = center + 3 * sigma, center - 3 * sigma monitor = readings.iloc[100:] # 基準期之後才開始監控 alpha = 0.2 ewma = pd.concat([pd.Series([center]), monitor]).ewm(alpha=alpha, adjust=False).mean().iloc[1:] ewma.index = monitor.index # EWMA 從中心值起算 limit = 3 * sigma * np.sqrt(alpha / (2 - alpha)) raw_alarm = monitor[(monitor > upper) | (monitor < lower)].index.min() ewma_alarm = ewma[(ewma - center).abs() > limit].index.min() print("單點超限首次出現", raw_alarm, "EWMA 首次出現", ewma_alarm)
以上程式實測可以執行。
3

為什麼用 EWMA

傳統管制圖看的是單點有沒有超過 ±3σ。EWMA 會累積近期的趨勢,對緩慢偏移更敏感。
我們用模擬資料測試 500 次,讓平均值在 140 筆內慢慢偏移 4 個標準差。從偏移開始算,單點超限的中位數要 44 筆才發現,EWMA 只要 30 筆。實際差距要看你的製程,但原理相同。
管制界限是製程自己的「聲音」,和客戶要求的規格界限不同,不要混用。
4

放到現場

1.
把資料自動收集進來,看〈用 Python 讀舊機器的 Modbus〉。
2.
在看板上畫出趨勢。
3.
警告時通知負責人,並附上建議檢查的項目。
4.
寫好反應計畫:誰、在幾分鐘內、檢查什麼。
沒有反應計畫的警報,很快就會被忽略。
5

有足夠資料再做預測

累積到有足夠的不良紀錄後,可以用製程參數預測品質:
文字
這是每批的製程參數與最後的品質量測值。 請建立迴歸模型預測品質,用時間前段訓練、後段驗證, 和「直接用過去平均值」比較誤差。 列出最有影響的參數,並說明這只是相關性。
模型要贏過基準線才有價值。還要監控模型本身,換料、換機、換季都可能讓模型失準,需要定期重新驗證。
注意
這套系統只負責提醒,不要讓它自動調整機台參數。調機由合格人員依程序進行。AI 不能進入安全迴路,也不能取代機台的保護裝置。
6

衡量成效

上線前後比較:
•
不良率、報廢與重工成本
•
從開始偏移到發現的時間
•
誤報次數,誤報太多就要調整參數
你照著做成功了嗎?
成為第一個回報的人。你的回報會決定攻略排序與作者分潤。
下一步
•
想找出不良的原因,看〈從製程資料找不良原因:相關不等於因果〉。
•
想用影像檢查外觀,看〈用 Anomalib 訓練瑕疵檢測〉。
收錄在學習路線
廣告版位
想讓正在用 AI 的人看到你的產品?了解廣告合作
問與答
卡住的地方、補充的做法都可以留在這裡
還沒有人留言。
更多「工廠 AI 化」攻略