你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

你注意到这个问题了吗?CAN总线支线长度不能太长

[复制链接]
eefishing 发布时间:2019-12-20 22:28
CAN总线网络在应用时,工程师常常会建议总线支线不要太长,那么为什么CAN总线支线不能太长,如果某些环境下必须使用长支线又该怎么办呢?

% E" u$ `# l& @7 o" E1 P5 D
CAN网络的拓扑种类

7 J: Q+ k& l) P* c
控制器局域网CAN(Controller Area Network),是国际上应用最广泛的现场总线之一,最初是由德国Bosch公司设计的,为解决现代汽车中众多控制单元、测试仪器之间的实时数据交换而开发一种串行通信协议。CAN网络的拓扑结构主要有线形拓扑、星形拓扑、树形拓扑和环形拓扑等。
2 c: x7 s1 e$ L& C
线形结构如下图所示,其特点是一条主干总线,在总线上分出支线到各个节点,其优点在于布线施工简单,阻抗匹配规则固定,接线比较方便,缺点是拓扑不够灵活,在一定程度上影响通讯距离;
1.png

, Q) P7 ?- m# N6 S- C' W1 u4 v. v% I
星形拓扑如下图所示,其特点是每个节点通过中央设备连到一起,优点是容易扩展,缺点是一旦中央设备出故障会导致总线集体故障,而且分支线长不同,阻抗匹配复杂,可能需要通过一些中继器或集线器进行扩展;) Z$ b( o" L. A. m
2.png

) Z1 i. b8 y. I) d4 Z& R+ C2 v
树形拓扑如下图所示,其特点是分支比较多,且分支长度不同,优点是布线方便,缺点是网络拓扑复杂,阻抗匹配困难,通讯中极易出现问题,必须加一些集线器设备;- q8 M% z6 |' Y/ l% W/ U7 u4 t( V
3.png

0 M, i0 Y# C9 B  D$ h' E9 `
环形拓扑如下图所示,其特点是将CAN总线头尾相连,形成环状,优势是线缆任意位置断开,总线都不会出现问题,缺点是信号反射严重,无法用于高波特率和远距离传输。% ~$ g8 n% t' h3 Y
4.png

% F; Z8 [  ]+ y" z* S& {) C+ R
虽然CAN总线可以有多种网络拓扑,但在实际应用当中比较推荐使用线形拓扑,且在IOS-11898-2中有高速CAN物理层规范,其中推荐的CAN网络拓扑也是线形拓扑,下面就针对线形拓扑网络CAN支线过长问题进行分析。( ?' T1 b) o) p; O
6 I$ Y" V, e/ m
支线过长带来的问题

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

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

8 H0 ^# K' U/ \; o6 o7 b7 ?
解决支线过长的办法
; V& R; Q! X# v1 r; b
如果我们的总线存在支线过长的问题,那么该怎么办呢?我们下面提供几种解决方案:
$ `" K7 e, q4 k
1、减小分支长度
8 ]4 f) n+ d; ^
在CAN网络布局的根源上解决问题的方式就是减少CAN节点的分支长度,从而降低信号反射,保证位宽的稳定性。如上图波形实验中,其它条件不变,只将分支长度减少为20cm,此时并没有看到边沿台阶的出现。由此可见,减少分支长度是消除边沿台阶的最直接方式。
6.png
* q/ {; x1 l5 T0 k7 c! F
2、长分支上加适当电阻
6 E$ n# s; Q2 \* }6 @8 B
5 ]8 Z/ l* L$ p& P$ K5 B, c
在网络布局无法改变,分支引起的信号反射必须存在的情况下。最实用的方法就是在长分支末端加上电阻,消除信号反射。同样的在上述实验中,在分支节点处加上一个200Ω的电阻,其它条件不变进行通信实验。下图为实验的CAN波形图,此时可以看到边沿台阶已被消减,但是加了电阻之后差分电压变小,注意差分电压不得小于0.9V。这里值得一提的是:阻值大于500Ω的电阻吸收反射的能力很弱,所以在末端挂电阻的时候应小于500Ω。
7.png
% {% Z. P# D+ x! a& L
3、增加CAN中继器或集线器
5 U" R! W) {; A2 h2 }* S7 f' M

) O/ F8 n4 y( z  [& k( m
当然很多场合是在出现了问题之后才发现支线过长,当重新布线或更改节点本身都无法操作的情况下,我们也有解决方案,那就是在过长的支线上增加CAN中继器,典型的如致远电子CANBridge,甚至可以支持不同波特率的CAN网络的连接。
8.png
3 E, s9 Z9 e$ s/ ?3 l' {/ r. W7 L
更多的方法可以参考往期推送的微信文章《【CAN总线冷知识】边沿台阶是怎么来的?》。
, V$ j. q* M8 m& p  f

. h' u2 h0 d% B9 P+ Q
所以无论是标准规定,还是现场实际应用,都告诉我们要保证CAN总线网络良好运行,其支线长度不能过长,为了CAN保证CAN网络的健康,请大家一定要规范使用。
收藏 评论0 发布时间:2019-12-20 22:28

举报

0个回答

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版