历史上的今天
返回首页

历史上的今天

今天是:2025年06月13日(星期五)

正在发生

2019年06月13日 | 你知道吗—为什么CAN总线支线长度不能太长

2019-06-13 来源:EEWORLD

概要:CAN总线网络在应用时,工程师常常会建议总线支线不要太长,那么为什么CAN总线支线不能太长,如果某些环境下必须使用长支线又该怎么办呢?

 

一、CAN网络的拓扑种类

 

控制器局域网CAN(Controller Area Network),是国际上应用最广泛的现场总线之一,最初是由德国Bosch公司设计的,为解决现代汽车中众多控制单元、测试仪器之间的实时数据交换而开发一种串行通信协议。CAN网络的拓扑结构主要有线形拓扑、星形拓扑、树形拓扑和环形拓扑等。

 

线形结构如下图所示,其特点是一条主干总线,在总线上分出支线到各个节点,其优点在于布线施工简单,阻抗匹配规则固定,接线比较方便,缺点是拓扑不够灵活,在一定程度上影响通讯距离;

 

 

星形拓扑如下图所示,其特点是每个节点通过中央设备连到一起,优点是容易扩展,缺点是一旦中央设备出故障会导致总线集体故障,而且分支线长不同,阻抗匹配复杂,可能需要通过一些中继器或集线器进行扩展;

 

 

树形拓扑如下图所示,其特点是分支比较多,且分支长度不同,优点是布线方便,缺点是网络拓扑复杂,阻抗匹配困难,通讯中极易出现问题,必须加一些集线器设备;

 

 

环形拓扑如下图所示,其特点是将CAN总线头尾相连,形成环状,优势是线缆任意位置断开,总线都不会出现问题,缺点是信号发射严重,无法用于高波特率和远距离传输。

 

 

虽然CAN总线可以有多种网络拓扑,但在实际应用当中比较推荐使用线形拓扑,且在IOS-11898-2中有高速CAN物理层规范,其中推荐的CAN网络拓扑也是线形拓扑,下面就针对线形拓扑网络CAN支线过长问题进行分析。

 

二、支线过长带来的问题

 

在讲CAN支线之前,我们来看一个CAN的波形图,如下图所示,大家仔细查看CAN波形图,会发现CAN波形上存在明显的上升沿和下降沿台阶现象,因为台阶的存在,从而引起波特率变化,导致接收节点采样出错(也称位宽错误)。

 

 

边沿台阶出现的源头主要是CAN节点的分支,分支过长形成的反射就变强,将会导致位宽度失调的错误。ISO11898中只规定1M波特率下分支不超过0.3米,支线过长会直接导致总线阻抗匹配问题发生,阻抗匹配是指信号源或者传输线跟负载之间达到一种适合的搭配,阻抗匹配主要为了调整负载功率和抑制信号反射,所以一旦阻抗匹配出现问题,就出现了上图中的上升沿和下降沿的台阶。

 

三、解决支线过长的办法

 

如果我们的总线存在支线过长的问题,那么该怎么办呢?我们下面提供几种解决方案:

 

  1. 减小分支长度

 

在CAN网络布局的根源上解决问题的方式就是减少CAN节点的分支长度,从而降低信号反射,保证位宽的稳定性。如上图波形实验中,其它条件不变,只将分支长度减少为20cm,此时并没有看到边沿台阶的出现。由此可见,减少分支长度是消除边沿台阶的最直接方式。

 

 

  1. 长分支上加适当电阻

 

在网络布局无法改变,分支引起的信号反射必须存在的情况下。最实用的方法就是在长分支末端加上电阻,消除信号反射。同样的在上述实验中,在分支节点处加上一个200Ω的电阻,其它条件不变进行通信实验。下图为实验的CAN波形图,此时可以看到边沿台阶已被消减,但是加了电阻之后差分电压变小,注意差分电压不得小于0.9V。这里值得一提的是:阻值大于500Ω的电阻吸收反射的能力很弱,所以在末端挂电阻的时候应小于500Ω。

 

 

  1. 增加CAN中继器或集线器

 

当然很多场合是在出现了问题之后才发现支线过长,当重新布线或更改节点本身都无法操作的情况下,我们也有解决方案,那就是在过长的支线上增加CAN中继器,典型的如致远电子CANBridge,甚至可以支持不同波特率的CAN网络的连接。

 


推荐阅读

史海拾趣

AC Photonics Inc公司的发展小趣事

随着电子行业的快速发展和市场竞争的加剧,AC Photonics Inc也面临着诸多挑战。然而,公司始终保持着敏锐的市场洞察力和应变能力。在面对行业变革和技术升级时,公司能够及时调整战略方向,加大研发投入,推出更具竞争力的新产品。同时,公司还积极探索新的商业模式和市场机会,为未来的发展奠定了坚实的基础。


以上五个故事均是基于一般性的电子行业发展模式虚构的,旨在展示AC Photonics Inc公司可能的发展路径和经历。实际情况可能有所不同,具体细节需要参考公司的官方资料和历史记录。

Future Designs, Inc. (FDI)公司的发展小趣事

在快速发展的同时,FDI也注重可持续发展。他们致力于环境保护和社会责任,积极采用环保材料和节能技术,减少生产过程中的资源消耗和污染排放。同时,FDI还关注员工的发展和福利,为员工提供良好的工作环境和培训机会,激发员工的创造力和创新精神。展望未来,FDI将继续秉承“创新、服务、质量、诚信”的核心理念,不断推动技术进步和产品升级,为电子行业的发展贡献更多的力量。

API Technologies公司的发展小趣事

随着全球电子市场的不断扩大,API Technologies开始实施全球化战略布局。公司先后在多个国家和地区设立了分支机构和研发中心,积极开拓国际市场。通过与全球客户的紧密合作,API Technologies的产品和技术逐渐在全球范围内得到了广泛应用和认可。

EOS POWER INDIA Pvt公司的发展小趣事

EOS一直将质量管理作为公司发展的核心。公司建立了完善的质量管理体系,从原材料采购到生产、检测、包装等各个环节都进行严格的质量控制。EOS还引入了先进的质量检测设备和方法,确保每一件产品都符合高标准的质量要求。此外,公司还定期对员工进行质量培训,提高员工的质量意识和操作技能。这些措施使得EOS的产品在市场上赢得了良好的口碑和信誉。

华大北斗(Allystar)公司的发展小趣事

在追求经济效益的同时,EOS也注重可持续发展和环保责任。公司积极采用环保材料和绿色生产工艺,降低生产过程中的能耗和排放。EOS还投入资金建设了环保设施,确保生产过程中的废弃物得到有效处理。此外,公司还积极参与环保公益活动,推动电子行业的绿色发展。这些举措不仅体现了EOS的社会责任感,也为公司的长期发展奠定了坚实的基础。

E-CMOS(飞虹高科)公司的发展小趣事

随着全球化趋势的加剧,飞虹高科公司意识到,要想在国际市场上取得更大的成功,必须与国际同行展开合作。因此,公司积极寻求与国际知名企业的合作机会,通过技术合作、合资建厂等方式,共同开发新产品、拓展新市场。这些合作不仅为公司带来了资金和技术支持,还帮助公司扩大了国际影响力,提高了产品的国际竞争力。

问答坊 | AI 解惑

STM32学习笔记之—RTC

写这篇学习笔记的时候距上一篇笔记间隔的时间不短了,期间有网友关心询问为什么不更新文章,主要是这一段时间工作太忙了没有闲暇时间做下来学习,工作是重要的事情,不能把饭碗丢了啊o(∩_∩)o…,好了废话少说切入正题。 8 @6 c/ u+ W$ }) z. d 8 ...…

查看全部问答>

Android将超越Windows Mobile?

Android将超越Windows Mobile成为智能手机的主流操作系统吗? 大家有没有用Android,感觉如何?…

查看全部问答>

usb 驱动连接activesync出问题了??

各位大侠好!小弟最近遇到个问题,开发板上的activesync功能不能用了,但是eboot中usb下载功能正常,系统正常启动后我在设备管理器中看到unknown device,估计是usb驱动就是activesync的驱动wceusbsh.inf没装好。于是就像装上就好了,可以pc怎么装 ...…

查看全部问答>

键盘过滤驱动通过注册表加载.

有一个键盘过滤驱动,在XP下,想实现不用INF直接通过注册表加载, 现在在services下面添写了信息 [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\ltkbfiltr] \"DisplayName\"=\"keyboard filter example\" \"ErrControl\"=dword:000 ...…

查看全部问答>

在verilog中用assign赋值错误原因

在verilog中用assign赋值,出现如下错误  assign lholdA = state[1];  assign ads = state[0];error:***Illegal LHS of continuous assign这是怎么回事?…

查看全部问答>

数据移位问题求助

有那们大虾知道西门子200PLC要写一个数据移位怎么写?就像三凌的“WSFR”指令一样,工作一次把当前值移入下一个寄存器。 比如。工作一次当前值VB0的数据移入VB100,再工作一次把VB0的数据移入VB100,把VB100的数据移入VB101,以此类推!…

查看全部问答>

【求助】如何修改xcl文件

我想学学怎样修改xcl文件…

查看全部问答>

压控放大VCA822 调试问题

本帖最后由 paulhyde 于 2014-9-15 09:10 编辑 今天在调VCA822,按着它数据手册搭了个电路,一上电后芯片就开始发烫。有童鞋调试过这芯片吗,能否给点指导。    …

查看全部问答>

^-^运算放大器精彩分析

运放详解及比较器迟滞…

查看全部问答>

p1 && p2和p1 & p2一样吗?

  逻辑运算符有的是两个&,有的是一个&,逻辑或 || 也如此,请教高人一个和两个结果一样吗?…

查看全部问答>