OCPP 錯誤碼

OCPP 1.6 為 StatusNotification 的 errorCode 欄位定義了 16 個取值。其中十五個描述故障,一個表示一切正常。

OCPP 錯誤碼出現在 StatusNotification 的 errorCode 欄位中。它是一個封閉列舉——充電樁不得自行發明取值——正是這一點才讓全網範圍的故障統計成為可能。

這個集合刻意做得很小,這也是它最大的侷限。十六個碼無法描述充電樁出問題的所有方式,因此廠商把真正的細節放進旁邊的自由文字欄位 vendorErrorCode。兩個都要讀。標準碼告訴你類別,廠商碼告訴你實際發生了什麼。

OCPP 1.6 ChargePointErrorCode 取值及其意義、常見成因與通常處理方式
錯誤碼意義常見成因通常處理方式
NoError無故障。隨正常狀態變化一起回報。正常運作。隨一般狀態變更一併送出。無需處理
ConnectorLockFailure接口上鎖或解鎖失敗。機械鎖扣卡住、插座內有異物,或鎖定致動器失效。現場處理
EVCommunicationError與車輛的通訊失敗。多半是 Control Pilot 的問題。Control Pilot 訊號通訊失敗。多半是車輛或線材的問題,而非充電樁。重試,仍失敗則現場處理
GroundFailure漏電保護器動作。漏電保護裝置跳脫。視為安全類故障。現場處理
HighTemperature內部溫度過高。環境溫度過高、散熱口被遮蔽,或長時間大電流輸出。通常會自行恢復
InternalError某個內部硬體或軟體元件出現故障。某個硬體或軟體元件失效。細節要看廠商錯誤碼。先遠端重置,仍失敗則現場處理
LocalListConflict更新過程中本機授權名單版本衝突。SendLocalList 更新與充電樁持有的版本衝突。遠端修復
OverCurrentFailure過電流保護動作。過電流保護跳脫,通常是車輛或線材故障。通常會自行恢復
OverVoltage供電電壓高於允許範圍。供電電壓高於允許範圍。屬於電網側問題。聯絡供電方
PowerMeterFailure電錶故障。電能表停止回應。此後的計費資料都不可信。現場處理
PowerSwitchFailure功率開關或接觸器故障。接觸器未能正常分閘或合閘。現場處理
ReaderFailureRFID 讀卡機故障。RFID 讀卡機故障。充電樁可能仍可透過遠端啟動使用。現場處理
ResetFailure請求的重啟失敗。一次請求的重置未能完成。先遠端重置,仍失敗則現場處理
UnderVoltage供電電壓低於允許範圍。供電電壓低於允許範圍。屬於電網側問題。聯絡供電方
WeakSignal無線通訊訊號過弱。行動網路或 Wi-Fi 訊號太弱,無法穩定維持連線。現場處理
OtherError其餘各碼都描述不了的故障。其他錯誤碼都無法描述的故障。請查看 vendorErrorCode。取決於廠商

NoError 並不等於「沒有訊息」

NoError 會被持續送出,因為每一次一般的狀態變更都帶有 errorCode,而正常的狀態轉換用的正是這個取值。如果監控管線統計「帶錯誤碼的 StatusNotification」卻不過濾 NoError,得出的故障率基本會是 100%。

影響整站的故障應回報在連接器 0 上

共用硬體的故障——電表、通訊模組、主接觸器——屬於 connectorId: 0,它指的是充電樁本身。某個特定插座的故障則屬於那個連接器。凡是把所有故障都回報在連接器 1 上的充電樁,都會讓人無法分辨「一個插座壞了」和「整站壞了」。

錯誤碼不會自己清除

協定中沒有「故障已解除」這樣的訊息。故障要靠之後一則攜帶 NoError 的 StatusNotification 來清除;如果充電樁始終不送,你的儀表板就會永遠顯示這個故障。重連之後對齊狀態時,用 TriggerMessage 請求 StatusNotification,就是詢問當前真實狀態的方式。

OCPP 2.0.1 沒有錯誤碼

這張表是 OCPP 1.6 的表,2.0.1 沒有對應物。2.0.1 的 StatusNotification 根本沒有 errorCode 欄位——故障改為透過 NotifyEvent 回報,針對裝置模型中的某個元件與變數觸發,並帶有 0 到 9 的嚴重等級。

結果是表達力更強,卻遠沒那麼方便:不再有十六個固定取值可供 switch,因為一個站點會回報什麼,取決於它自己的裝置模型。任何要從 1.6 遷移到 2.0.1 的故障處理邏輯,都必須重建,而不是單純對映。

廠商錯誤碼

vendorErrorCode 是自由文字,與 vendorId 搭配以說明它屬於誰的命名空間。它沒有標準化,OCPP 中也沒有文件,卻往往是唯一能指出真實故障的東西。從第一天起就把它收集起來——事後為整個車隊的歷史資料補上這一項是做不到的。