參考文件

OCPP 參考文件

開放充電點協定,依你在實作時真正需要的方式整理:每則報文攜帶什麼、各個取值代表什麼,以及規範中哪些地方最容易被讀錯。

OCPP 是什麼

OCPP——開放充電點協定——規定了充電樁如何與管理它的後端對話。充電樁向充電站管理系統(CSMS)建立一條 WebSocket 連線,此後雙向往來的全是 JSON 報文:充電樁回報狀態、電表讀數與交易;後端授權使用者、下發設定並控制功率。

它由 Open Charge Alliance 維護,正因為有它,一家廠商生產的充電樁才能由另一家建置的網路來營運。

目前多數已部署硬體使用的版本是 1.6,發布於 2015 年,至今仍占主導。2.0.1 重構了設定、交易與安全,並且越來越多地出現在新的採購規格中。兩者跑在同一套傳輸之上,但誰也讀不懂對方的報文。

這份參考文件是怎麼組織的

兩個版本各自一則報文一頁:OCPP 1.6 有 28 則,OCPP 2.0.1 有 64 則。當某個動作在兩個版本中都存在時——BootNotification、Authorize、SetChargingProfile 等等——每個版本各占一頁,因為即使名稱沿用,酬載也已不同。

1.6 把報文歸入 6 個功能檔(feature profile),這也是一致性認證的單位:Core 為必選,其餘可選,充電樁須聲明自己實作了哪些。這些功能檔是 Core, Firmware Management, Local Auth List Management, Reservation, Smart Charging, Remote Trigger。

2.0.1 以 16 個功能區塊取代功能檔,並補上了 1.6 完全沒有答案的整塊領域——安全、顯示訊息、電價與費用。版本比較說明了真正改變了什麼。

每一頁報文的結構都相同:這則報文用來做什麼、請求與回應欄位及其型別與必填性、每一個列舉取值、一段可直接貼進測試的完整 OCPP-J 框架,以及實作註記——那些嚴格來說寫在規範裡、卻很容易被忽略,直到花掉你一週時間的部分。