什麼是 CAN 高層協定(Higher Layer Protocol, HLP)?
CAN 協定本身僅負責基礎的資料傳輸(最多 8/64 bytes),不包含節點位址、診斷、啟動流程或資料解譯功能。這些高階邏輯功能需由 高層協定(HLP) 處理,讓整個 CAN 系統具備完整的「網路通訊行為」。
高層協定的功能
- 節點啟動與初始化
- 封包識別與 ID 分配
- 設備狀態同步與報告
- 參數配置與診斷功能(如 OBD、UDS)
常見 CAN 高層協定比較
協定名稱 |
應用領域 |
特色說明 |
CANopen |
工業自動化 / 醫療 / 電梯 |
標準物件字典、PDO/SDO 傳輸、高裝置相容性 |
J1939 |
卡車 / 農機 / 建機 |
自動位址分配、廣播封包、SAE 標準 |
DeviceNet |
PLC 感測控制網 |
與 Rockwell PLC 整合佳、設備參數導向 |
UAVCAN |
無人機 / 機器人 |
高容錯、同步簡易、適合小程式嵌入 |
KVASER 如何支援 HLP 開發
- CANopen:搭配 CANlib SDK、CANtrace、第三方 CANopen stack
- J1939:支援訊框轉換、DBC 載入、J1939 分析模組
- DeviceNet:透過 Softing/ODVA 工具配合 KVASER 硬體
- UAVCAN:原生支援 Linux SocketCAN 架構與 UAVCAN Stack
選擇建議
- 🏭 工業應用 ➜ CANopen / DeviceNet
- 🚚 車用重工業 ➜ J1939
- 🛸 無人控制系統 ➜ UAVCAN
本文由 KVASER 台灣代理商製作,若需 CAN 協定教學、HLP 導入建議或產品選型協助,歡迎與我們聯繫。