『ISOBUS 入门』第 04 节 底层协议:CAN、J1939 与 ISOBUS 的分工

发布时间:2026/10/5 13:18:39
『ISOBUS 入门』第 04 节 底层协议:CAN、J1939 与 ISOBUS 的分工 ISOBUS 的报文看起来是一串十六进制,但它背后叠着三层约定:CAN 决定位怎么发、错怎么纠;J1939 决定报文叫什么、怎么寻址、长了怎么分片;ISO 11783 在农业场景把上面两层固定下来,并补了功能与应用语义。三层各管一段,混在一起看就容易出判断错误——很多「解码不对」的问题其实出在第一层,很多「功能不生效」的问题出在第三层。1. CAN 2.0B:帧、仲裁与错误处理一帧 CAN 报文由帧起始、仲裁场、控制场、数据场、CRC 场、应答场与帧结束构成。标准帧使用 11 位标识符,扩展帧使用 29 位,其余字段结构相同。J1939 与 ISOBUS 都使用扩展帧。几个容易被忽略的机制细节,在排查时很有用:位填充。发送方在连续 5 个同极性位之后插入一个反极性位,接收方再去掉。8 字节数据帧最多插入 24 个填充位,最大帧长 132 位。位填充错误是「线束或位定时有问题」的典型信号之一。CRC 与应答。经典 CAN 的 CRC 为 15 位;接收方在应答槽拉一个显性位表示收到,没有节点应答就是应答错误。非破坏性仲裁。多个节点同时发送时,逐位比较,显性覆盖隐性,标识符数值小的报文先发出去,失败的节点在下一轮重发,报文内容不会被打断。这就是「优先级」在物理层的实现方式。五种错误类型。位错误、填充错误、CRC 错误、格式错误、应答错误。发送方检测到错误时错误计数 +8,接收方检测到错误时 +1。错误计数决定了节点状态:状态条件行为Error Active发送/接收错误计数均小于 128正常参与总线,可发主动错误标志Error Passive发送计数 128 至 254,或接收计数不小于 128只发被动错误标志,发送后额外等待Bus-Off发送错误计数达到 255退出总线,不再参与通信节点进入 Bus-Off 后,需要检测到 128 次连续的 11 个隐性位才能回到 Error Active,也就是 1408 个位时间。换算成时间:125 kbit/s 约 11.26 ms,250 kbit/s 约 5.63 ms,500 kbit/s 约 2.82 ms,1 Mbit/s 约 1.41 ms。这组数字在排障时有两个用法。第一,判断「节点偶发静默后自行恢复」的性质:静默时长与上表量级接近,方向应指

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询