CAN总线两个节点ID段相同会怎样?

时间:2023-03-06作者:佚名

  CAN-bus网络中原则上不允许两个节点具有相同的ID段,但如果两个节点ID段相同会怎样呢?
  实验前,我们首先要对CAN报文的结构组成、仲裁原理有清晰的认识。
  一、CAN报文结构
  目前使用最广泛的CAN-bus网络标准是V2.0版本,该标准又分为A、B两部分,它们主要的区别在仲裁区域的ID码长度。其中CAN2.0A(标准帧)为11位ID,CAN2.0B(扩展帧)为29位ID。下表1为CAN报文结构:
  表1 CAN报文结构
  二、仲裁原理
  CAN总线的仲裁是基于“线与原理”,如图1所示。当个收发器同时发出不同电平信号时,隐性电平总是被显性电平覆盖。CAN控制器在发送报文的同时会监听总线状态与自己发送的电平是否一致,如果不一致发生在ID段则会发生仲裁,如果发生在其他区域则会触发相应错误。

CAN总线两个节点ID段相同会怎样?

  图1 线“与”示意图

  下面进入重点,如果两个节点ID段相同会怎样?我们用两个CAN卡 和一台CANScope开始实验,CAN卡模拟CAN标准节点收发报文,CANScope做通信监控,如图2所示。

CAN总线两个节点ID段相同会怎样?
  图2 实验平台搭建

  三、实验一“ID段相同但数据不同”
  使用一个CAN卡发送ID为000H数据为01020304050607H的CAN帧,使用另一个CAN卡发送ID为000H数据为02020304050607H的CAN帧。CANScope监听的数据如图3所示,可以观察到有大量的数据场填充错误。

CAN总线两个节点ID段相同会怎样?
  图3 数据场填充错误

  为什么会这样呢?我们首先分别获取两个CAN卡发送报文对应的波形,如图4。因为两针报文同为标准数据帧,且每帧包含8个字节数据,所以两帧报文对应的波形在ID段、RTR、IDE、R0以及DLC段完全一致。因此,仲裁作用失效,两节点都认为自己获得了优先权,继续发送数据。

CAN总线两个节点ID段相同会怎样?
  图4 报文对应波形对比

  现在我们聚焦数据段,第一个字节数据相同,均为为00H;第二个字节数据不同,分别为01H、02H。图5箭头标示处可以看到两者对应位的逻辑分别为0和1。前面我们提到CAN节点在发送报文的同时会检测总线电平是否与自己发送的电平一致,若不一致发生在非仲裁区域则触发相应错误,因此若这两帧报文同时发送到总线上必将发生位发送错误。因为位发送错误会引起节点发送违反填充规则的6个显性位(主动错误破坏该帧数据),故出现数据场填充错误,如图3。

CAN总线两个节点ID段相同会怎样?
  图5 数据场冲突

  四、实验二“ID相同数据也相同”
  同时使用两个CAN卡发送ID为000H数据为01020304050607H的CAN帧,CANScope做通信监控。首先,我们不勾选“总线应答”选项,使CANScope工作在仅监听模式。实验结果如图6所示,出现的是应答定界符格式错误。

CAN总线两个节点ID段相同会怎样?
  图6 应答界定符格式错误

  为什么会发生这种错误呢?发送报文的节点会在ACK段发送两个隐性位,若在第一个位期间接收到显性电平则认为该帧被正确接收。由于仲裁段相同时两节点都认为自己取得仲裁权,在ACK段等待应答,但该网络中仅存在两个节点,因此在ACK段不能收到应答,进而发生应答定界符错误。简单说来这种情形就类似于总线中只有一个节点将不能实现数据发送。图7是在ACK段有无应答时的波形对比。

CAN总线两个节点ID段相同会怎样?
  图7 ACK应答

  我们勾选上总线应答,再次开始实验(此时总线中相当于有3个节点)。这时如图8所示,总线数据收发正常。

CAN总线两个节点ID段相同会怎样?
  图8 启动总线应答

  总结:当两节点同时发送ID相同数据不同的报文时,将发生数据场填充错误;当两节点同时发送ID相同数据也相同的报文时,若有其他节点应答则不发生错误,若无其他节点应答则发生应答错误。因此,我们在设计CAN总线时应避免ID段相同的情况出现。

相关阅读

电工必藏:中间继电器一键启停电路,按一下开、再按一下停

在很多设备的操作面板上,空间有限,装不下启动+停止两个按钮,这时候一键启停电路就派上大用场了!今天咱们就用中间继电器,实现“单按钮控制电机启停”,原理+接线+避坑指...
2026-05-25
电工必藏:中间继电器一键启停电路,按一下开、再按一下停

一文看懂开关变压器电路的识读方法

在彩色电视机和其他一些电子设备中采用开关电源,开关电源中采用开关变压器,以下介绍了开关变压器的工作特点是什么,以及开关变压器电路的分析方法及注意事项,供大家参考。...
2023-03-29
一文看懂开关变压器电路的识读方法

低成本小家电智能风扇设计方案

分享一型已量产的风扇设计方案。 I下面分功能模块来讲解下: 电源部分 该电源部分采用小家电常用的阻容降压电路,阻容降压的特点是成本低,缺点为电源不隔离,不安全,且提供的...
2023-08-01
低成本小家电智能风扇设计方案

这些机电安装是效果图还是实际图?网友大呼“亮瞎了”

机电安装是一个讲究美观的工作,它要求总体布局合理美观、状态标识清晰准确、设备运行安全稳定;机电安装也是一个讲究细节的工作,它于细微处见功力:支架管件安装标高一致,...
2023-06-11
这些机电安装是效果图还是实际图?网友大呼“亮瞎了”

电力系统中电气设备该怎么选择?这一篇讲清楚!

尽管电力系统中各种设备的作用和工作条件并不一样,具体选择方法也不完全相同,但对它们的基本要求却是一致的。 电气设备要能可靠地工作,必须按正常工作条件进行选择,并按短...
2023-07-05
电力系统中电气设备该怎么选择?这一篇讲清楚!

热销商品

广东珠江电线电缆阻燃国标定制BYJBV BVR YJV YJY RVV RVS RV KVV

广东珠江电线电缆,专注于阻燃国标定制,产品涵盖BYJBVBVRYJVYJYRVVRVSRVKVV等多种规格。我们采用先进生产技术,严格遵循国家标准,确保产品质量可靠、性能稳定。产品适...
¥ 1

可换头防静电塑胶镊子ESD-7A/242/249/259防划伤夹IC硅晶片陶瓷头

ESD-7A/242/249/259是一款专为半导体行业设计的防静电塑胶镊子,有效防止静电对敏感电子元件的损害。其独特之处在于可更换的镊子头,包括专为夹持IC硅晶片和陶瓷元件...
¥ 2

公牛官方旗舰店开关插座空调16A插座五孔10A面板暗装多孔G12白灰

公牛官方旗舰店提供一系列高质量的开关插座和空调配件。这款16A插座五孔面板采用暗装设计,适用于多种安装环境,如墙面、天花板等。它具有10A的电流容量,可以满足家庭...
¥ 5.55

L型套筒扳手铣口烟斗双头弯头7字穿孔机修六角汽修轮胎工具6-19mm

L型套筒扳手是一款常用于工业领域的多功能工具,具备双头设计,可高效完成铣口、烟斗等多种工件孔位加工,适用六角汽修、轮胎等场景。其套筒尺寸为6-19mm,精准适配各类...
¥ 3.5

西门子开关插座无框皓彩米绒白亚光二三插USB10A五孔一开旗舰店

西门子开关插座无框皓彩米绒白亚光二三插USB10A五孔一开旗舰店,作为西门子品牌的专卖店,提供了一系列高品质、设计新颖的家居电气产品。这里销售的开关插座采用无框...
¥ 8.77

网站栏目