工業 IoT/SCADA · SDK / protocol

python-can

python-can Project

透過 Python 函式庫存取 CAN 接口。

官方文件下載開發規格

PYTHON-CAN / DEVELOPER FIELD GUIDE

選對接口,定義可驗證的結果。

公司/專案背景、十個技術入口,以及每份引用的實作分析。

2026-10-08 · 串接尚未實測

公司/專案背景全貌

依官方公司或專案自述撰寫的原創概要;完整原文請見來源。

python-can · About
專案python-can 提供 Python 抽象介面,可跨硬體與虛擬介面傳送、接收與記錄 CAN 訊框。
範圍訊框傳輸不同於應用專屬訊號解碼與裝置行為。本指南採穩定4.6.1文件。
官方 About 完整原文 ↗
About 引用 — TA 分析
適用角色進行 AI 供應商初選的採購、合作夥伴與產品負責人。
本站評估用定位與公司背景判斷初步適配度;另行取得專案部署、支援與商務條件。

已核對官方來源。未呼叫供應商 API 或執行推論;結果為內部契約示意。

十項技術入口比較

依實作決策選出的十個技術文件入口,非十套獨立 SDK 或官方排名。

依要完成的工作選擇
接口用途與 TA
01 · Interface configurationAPI / SDK / developer guide選擇後端、通道與通訊設定。CAN 整合工程師
02 · Bus send/receive/filterAPI / SDK / developer guide使用共通實體/虛擬匯流排 API。傳輸開發者
03 · Message objectAPI / SDK / developer guide表示識別碼、內容及 CAN/CAN-FD 旗標。訊框剖析作者
04 · Notifier and listenersAPI / SDK / developer guide將傳入訊框分派給監聽器。事件管線開發者
05 · Log readers and writersAPI / SDK / developer guide讀寫支援 CAN 記錄格式。追蹤分析者
06 · Asyncio receptionAPI / SDK / developer guide以事件迴圈回呼或 AsyncBufferedReader 接收訊框。非同步應用團隊
07 · Broadcast ManagerAPI / SDK / developer guide管理週期訊息傳送工作。週期流量開發者
08 · Error taxonomyAPI / SDK / developer guide區分初始化、操作與逾時失敗。可靠度工程師
09 · SocketCAN backendAPI / SDK / developer guide透過 Linux CAN 網路介面連線。Linux 整合者
10 · In-process VirtualBusAPI / SDK / developer guide在共用通道的虛擬用戶端間交換訊息。離線測試作者

逐份文件分析

能力摘要依據官方文件;限制與建議測試為本站工程評估。

01

API / SDK / developer guide

Interface configuration

Interface configuration · TA
目標讀者 TACAN 整合工程師
官方文件能力選擇後端、通道與通訊設定。
輸入 → 輸出明確/設定檔/環境設定 → 匯流排設定。
執行環境後端驅動與相符介面參數。
本站選型評估設定來源可加入明確參數以外的值。
本站建議驗證記錄解析後後端/通道,避免非預期實體介面。
官方文件 · Interface configuration ↗
02

API / SDK / developer guide

Bus send/receive/filter

Bus send/receive/filter · TA
目標讀者 TA傳輸開發者
官方文件能力使用共通實體/虛擬匯流排 API。
輸入 → 輸出訊息傳送或限時接收 → 操作結果/Message/None。
執行環境選定後端與支援的驅動語意。
本站選型評估依驅動而定,傳送完成可能是佇列可用或 ACK。
本站建議驗證區分傳送與接收應用接受。
官方文件 · Bus send/receive/filter ↗
03

API / SDK / developer guide

Message object

Message object · TA
目標讀者 TA訊框剖析作者
官方文件能力表示識別碼、內容及 CAN/CAN-FD 旗標。
輸入 → 輸出訊框欄位 → Message 物件。
執行環境CAN 格式符合目標後端。
本站選型評估建構子的嚴格驗證需設定 check=True。
本站建議驗證驗證 ID 寬度、DLC、內容長度與訊框旗標。
官方文件 · Message object ↗
04

API / SDK / developer guide

Notifier and listeners

Notifier and listeners · TA
目標讀者 TA事件管線開發者
官方文件能力將傳入訊框分派給監聽器。
輸入 → 輸出匯流排訊息 → 回呼或緩衝訊息。
執行環境執行中的 Notifier 與生命週期管理監聽器。
本站選型評估關閉需刷新並停止監聽器。
本站建議驗證追蹤接收錯誤、待處理量與儲存輸出筆數。
官方文件 · Notifier and listeners ↗
05

API / SDK / developer guide

Log readers and writers

Log readers and writers · TA
目標讀者 TA追蹤分析者
官方文件能力讀寫支援 CAN 記錄格式。
輸入 → 輸出訊息串流/檔案 → 記錄或剖析訊框。
執行環境支援格式、寫入器與檔案系統權限。
本站選型評估格式支援與保留中繼資料不同。
本站建議驗證往返驗證 ID、位元組、時間戳與必要旗標。
官方文件 · Log readers and writers ↗
06

API / SDK / developer guide

Asyncio reception

Asyncio reception · TA
目標讀者 TA非同步應用團隊
官方文件能力以事件迴圈回呼或 AsyncBufferedReader 接收訊框。
輸入 → 輸出傳入訊框 → 協程/監聽器處理。
執行環境事件迴圈與後端專屬接收機制。
本站選型評估部分介面仍採接收執行緒。
本站建議驗證驗證取消、待處理讀取器清理與有限處理。
官方文件 · Asyncio reception ↗
07

API / SDK / developer guide

Broadcast Manager

Broadcast Manager · TA
目標讀者 TA週期流量開發者
官方文件能力管理週期訊息傳送工作。
輸入 → 輸出訊息與週期 → 週期工作。
執行環境後端支援排程與工作生命週期。
本站選型評估要求週期並非硬即時保證。
本站建議驗證獨立量測抖動並驗證工作停止/關閉。
官方文件 · Broadcast Manager ↗
08

API / SDK / developer guide

Error taxonomy

Error taxonomy · TA
目標讀者 TA可靠度工程師
官方文件能力區分初始化、操作與逾時失敗。
輸入 → 輸出後端失敗 → can 例外類別。
執行環境在匯流排生命週期與操作外層處理例外。
本站選型評估接收逾時無訊框不同於操作例外。
本站建議驗證將各類別映射為可處理狀態,不杜撰資料。
官方文件 · Error taxonomy ↗
09

API / SDK / developer guide

SocketCAN backend

SocketCAN backend · TA
目標讀者 TALinux 整合者
官方文件能力透過 Linux CAN 網路介面連線。
輸入 → 輸出CAN socket 操作 → 訊框。
執行環境設定 Linux can 或 vcan 介面。
本站選型評估vcan 沒有實體控制器,不是硬體驗證。
本站建議驗證確認通道狀態、位元率及所選虛擬/實體邊界。
官方文件 · SocketCAN backend ↗
10

API / SDK / developer guide

In-process VirtualBus

In-process VirtualBus · TA
目標讀者 TA離線測試作者
官方文件能力在共用通道的虛擬用戶端間交換訊息。
輸入 → 輸出虛擬訊息 → 接收虛擬用戶端。
執行環境Python 程序與相同虛擬通道。
本站選型評估負載下沒有真實匯流排速率限制或 ID 仲裁。
本站建議驗證用於邏輯測試,不用來宣稱匯流排負載效能。
官方文件 · In-process VirtualBus ↗

Official documentation

Official documentation · 補充引用分析
TA工程師與技術產品負責人
本站驗證建議實作前固定版本並依目標環境核對支援條件。
官方文件 · Official documentation ↗

04 / INPUT · EXPECTED OUTPUT · ACCEPTANCE

實作前先看懂預期結果

僅為虛構 CAN 觀察契約;未開啟匯流排,也未傳送、接收或重播訊框。

示意契約 · 未呼叫 API 或執行模型 · 不是供應商實測輸出

訊框擷取

預期行為 — 示意,尚未執行
輸入含四個內容位元組的合成標準 ID 訊框。
預期結果保留 ID291、精確位元組01020304與旗標。
驗收條件未提供解碼規格時不可杜撰工程訊號。

安靜接收視窗

預期行為 — 示意,尚未執行
輸入限時接收未見符合訊框。
預期結果no_message;frame=null。
驗收條件區分逾時、零位元組 CAN 訊框及介面失敗。

無效訊框

預期行為 — 示意,尚未執行
輸入設定 check=True 且 DLC 不符合位元組。
預期結果傳送前驗證錯誤。
驗收條件不可靜默填補或截斷內容。

後端不可用

預期行為 — 示意,尚未執行
輸入要求介面驅動或通道無法初始化。
預期結果初始化失敗;沒有成功擷取工作階段。
驗收條件回報後端/通道資訊,避免隱含切換至實體硬體。

將預期結果對應至你的應用

將實際執行環境回應對應至此建議應用契約。所有數值皆為示意,不含憑證或真實執行。

預期輸出 JSON — 示意,非實測 · PythonCAN-expected-results.json
{
  "schema_version": "1.0.0",
  "example": true,
  "provider": "python-can",
  "status": "ok",
  "input_id": "sample-001",
  "data": {
    "channel": "virtual-demo",
    "arbitration_id": 291,
    "is_extended_id": false,
    "is_fd": false,
    "data_hex": "01020304",
    "signal_decoding": "not_performed",
    "physical_bus_verified": false
  },
  "error": null,
  "verification": "illustrative-only;not-provider-response"
}
下載規格、範例與驗收計畫
工程交接 — 本站建議契約與驗收門檻
狀態語意有效空結果與錯誤不同;等待中的工作不可提前顯示成功。
證據記錄服務與 SDK 版本、請求識別、設定及回應映射。此處未執行或量測效能。
建議驗收以授權代表樣本測試前,先約定數值誤差與負載目標。

開發評估

CAN 遙測資料檢視器

開發構想規格・串接尚未實測

接口能力依據官方文件或程式庫;以下產品方向、輸入、交付與驗收條件則是我們的開發評估。

需整合驗證

估算可交付產品前,需共同驗證執行環境、資料結構或硬體。

原型輸入規劃
測試設備或模擬器、訊號對照表與明確單位。
原型交付規劃
附時間、資料新鮮度、單位與連線狀態的設備數值。
驗收條件
對照來源驗證比例與時間;設備斷線時不得顯示正常。
依賴條件
閘道或服務帳號、設備資料結構與測試環境。

開發順序

  1. 確認 python-can 的存取、授權與支援版本。
  2. 準備上述樣本,針對「CAN 遙測資料檢視器」先實作一個有官方文件的操作。
  3. 整理輸出時保留來源、時間與錯誤狀態,並保留供應商回應供審核。
  4. 通過驗收條件後,再估算擴展投入與客戶交付。

如何驗證需求

記錄產品瀏覽、官方文件點擊、規格下載與技術 Hub 點擊。這些是事件次數,不等於獨立人數或已完成串接。

本次可行性評估依實作條件判斷;尚未給定流量排名或交期承諾。

相關產品