CAN总线终端电阻作用

系列文章目录



前言

CAN总线,全称是Controller Area Network,今天讲一下终端电阻作用。


使用终端电阻来保证隐性位传输

使用终止电阻有两个原因。首先是提高信号质量。端接可防止由于位边沿振铃(振荡)而导致通信失败的反射。当信号到达电缆末端时,反射可能特别强烈,这就是将终端适配器放置在末端的原因。其次,终止可用于获取在通信中定义逻辑 1 的隐性电平。

为什么要使用电阻器?

CAN 是一种传输二进制 0 或 1 的串行协议,其中 0 是显性的,1 是隐性的。每个CAN节点中的CAN驱动器在发送二进制1(隐性电平)时通常完全被动。

为了在隐性位传输过程中获得定义的信号电平,通信线路上需要一个无源元件,通常是电阻器。该电阻器可以“上拉”或“下拉”到某个电压水平,也可以组合使用,例如单线 CAN (SWC) 使用上拉电阻器,而低速 CAN (LS-CAN) 使用上拉和下拉电阻器的组合。SWC 和 LS-CAN 的比特率均小于 125 kbit/s,因此可以在不同的 CAN 节点之间分配电阻。

最大限度地提高信号质量

为了获得良好的信号质量,必须使用双绞线作为传输介质,并保护信号免受外部噪声的影响。双绞线通过确保沿双绞线的均匀横截面和固定的几何形状来提高信号质量,从而确保固定阻抗。固定阻抗对于良好的信号质量至关重要。

双绞线使两根电线保持紧密相连,通过确保两根电线经历共同的电压噪声水平来保护信号免受外部电场的影响,从而消除干扰的影响。此外,捻线使这对电线具有抗磁干扰的能力。两根导线之间的有限间隙最大限度地减少了对磁流的暴露,而且扭曲确保了下一次扭曲中的相反流动,从而抵消了磁场的影响。

获得隐性水平

为了将特定负载达到隐性水平,在两根双绞线之间放置一个电阻负载(即电阻器)。这确保了在两根导线之间产生差分电压所需的一定能级。电阻器还确保当主信号消失时,电压差恢复为零。

一个挑战是为定义隐性电平的电阻器选择一个合适的值。在主信号传输期间,当CAN单元发送二进制0时,必须达到一定的信号电平,同时认识到低电阻值将要求CAN驱动器提供高电流。换句话说,为了节省能源,电阻值应该尽可能高。但是,这还有其他缺点。

高电阻值有两个挑战。首先,如果电阻值较低,则需要相对较高的噪声能量来激活主电平,而低噪声阈值使通信流容易出错。

其次,在主导状态下,电缆中的电容可以充电到该信号电平,以便在CAN驱动器返回无源状态之前,需要对这些电容器进行放电。为了获得最佳性能,电阻值应具有尽可能低的值。

对于低速通信(< 125 kbit/s),上升和下降时间为500纳秒,这种信号变化,从隐性到主导,反之亦然,将分布在100米以上。如果CAN总线小于100米,则可以将电阻器放置在总线沿线的任何位置。在SWC和LS-CAN中,负载分布在每个CAN节点上。这具有电气优势,但如果增加CAN节点的数量,除非每个节点的电阻值增加,否则负载也会增加。

对于高于 125 kbit/s 的比特率,会产生一个新问题,因为更高的比特率也需要更高的转换速率。如果 500 纳秒的压摆率以 125 kbit/s 的速度工作,则在以 1 Mbit/s 的速度发送时需要 50 纳秒的压摆率,从而导致位边沿分布在 10 米长的电缆长度上。如果CAN总线线长于5米,位边将到达CAN总线的另一端并被反射回另一端,在那里它将再次被反射,直到所有能量都被电缆电阻吸收。反射会导致信号电平振铃,要消除它们,必须吸收能量。这可以通过在CAN总线的末端放置一个电阻器来实现,该电阻器的值与电缆的阻抗值相同。它将吸收边缘中的所有能量,并产生一个完美的方波信号,没有任何振铃。

还有一些问题要问:

电缆的阻抗是多少?
这不是一个简单的问题,因为它取决于电缆的成分和隔离性能,以及其机械尺寸。典型的同轴电缆将具有 50 至 75 欧姆,而 CAT5 电缆将具有 100 欧姆阻抗。电缆的两端应放置具有相同值的电阻器。
我的CAN总线连接了多少个节点?
需要检测连接到CAN总线的确切节点数量,并将内部终端调整为正确的值。找出连接节点的数量并不是一件容易的事,相应地改变电阻值也不是一件容易的事。一个简单的解决方案是在电缆上的两个位置放置两个 120 欧姆电阻器,以确保 60 欧姆负载。这将导致连接到总线线路的任何数字节点具有适当的隐性电平。对于高于 125 kbit/s 或超过长电缆的比特率,是否需要将负载放置在电缆的两端,以防止位沿的振荡。
为什么CAN标准选择了120欧姆电阻?
答案是大多数汽车电缆都是单线的。如果您将汽车中通常使用的电线拧成一对,您将获得 120 欧姆的阻抗。如果然后将双绞线挤压到电缆中,阻抗通常会下降到 105 欧姆,然后使用薄隔离(如 CAT5 电缆所示),阻抗会下降到 100 欧姆。
当将CAT5电缆用于CAN总线时,120欧姆电阻不是最佳结束电阻,但对于1 Mbit/s的50纳秒压摆率来说,它已经足够了。如果将比特率提高到 100 Mbit/s 并寻求几纳秒的压摆率,就会出现问题…但这甚至超过了 CAN-FD 所能达到的程度。

总结

以上就是今天要讲的内容,如果您觉得文章还不错,还请您给个三连加关注,非常感谢!

本文作者:WeSiGJ

参考链接(包括但不限于):
https://kvaser.com/using-termination-ensure-recessive-bit-transmission/

欢迎各位兄弟姐妹们,加入C++ HTTP服务器开发技术交流群:

QQ群:426685924

  • 8
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WeSiGJ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值