Classical CAN 指南

如何估算 CAN 总线负载

了解 Classical CAN 的开销、位填充、标识符格式和总线负载估算限制。

容量由完整帧消耗

CAN 流量包含仲裁、控制、CRC、确认、分隔符、数据和帧间隔。本工具对 11 位标准标识符使用 47 个基准位,对 29 位扩展标识符使用 67 个基准位,再加数据位。

负载 % = 帧位数 × 帧/秒 ÷ 比特率 × 100

Worked Example:500 kbit/s Classical CAN

场景:500 kbit/s、11 位标准标识符、8 字节数据、每秒 1000 帧。以下帧长度包含最小 3-bit intermission,是理论容量估算。

  1. 无填充帧 = 47 + 8 × 8 = 111 bit。
  2. 帧时间 = 111 ÷ 500000 = 222 μs。
  3. 无填充负载 = 111 × 1000 ÷ 500000 × 100 = 22.2%。
  4. 保守估算 = ceil(111 × 1.20) = 134 bit;帧时间 268 μs,负载 26.8%。

20% 是本工具的规划余量,不是协议规定的严格最坏上界;实际填充取决于位模式,且未计入重传、错误帧、仲裁延迟、过载和其他流量。此处仅使用 Classical CAN,不使用 CAN FD 公式。参考 Bosch CAN Specification 2.0 和 CiA CAN CC 概览。

打开 CAN 计算器

请核对设备文档。这些公式是通用模型,具体硬件模式和协议条件可能带来额外约束。