目录

1、提高抗干扰能力

2、确保总线尽快进入隐性状态

3、吸收反射的信号,提高信号质量


在详解CAN总线:高速CAN总线和低速CAN总线的特性文章中,高速CAN网络和低速CAN网络都需要安装终端电阻。

高速CAN网络需要在CAN_H和CAN_L加终端电阻,电缆上的终端电阻应与电缆的标称阻抗相匹配,终端匹配电阻一般为120Ω,每个终端电阻应能消耗0.25W的功率(标准来源:ISO 11898-2:2003)。

低速CAN网络的终端电阻数值不固定,Philips建议低速CAN网络,一个整体的RTH和RTL终端电阻为100Ω到500Ω(每个)。整个网络终端电阻可以确定如下公式:

​为什么CAN总线网络中为什么需要安装终端电阻?主要有3方面原因:

  • 提高抗干扰能力,让高频低能量的信号迅速走掉;
  • 确保总线快速进入隐性状态,让寄生电容的能量更快走掉;
  • 提高信号质量,放置在总线的两端,让反射能量降低。

1、提高抗干扰能力

CAN总线上的信号区分“显性”和“隐性”两种状态,“显性”对应二进制的“逻辑0”,“隐性”对应二进制的“逻辑1”。“显性”或“隐性”由CAN收发器决定,下图为一款CAN收发器内部逻辑框图:

总线“显性”时,收发器内部Q1、Q2导通,CANH、CANL之间产生压差;“隐性”时,Q1、Q2截止,CANH、CANL处于无源状态,压差为0。

总线负载时,“隐性”时差分电阻阻值很大,外部的干扰只需要极小的能量即可令总线进入“显性”(一般的收发器显性门限最小电压仅500mV,压差为500mV时,总线就判断为“显性”)。总线上有差模干扰时,总线上就会有明显的波动,而这些波动没有地方能够吸收掉他们,就会在总线上创造一个显性位出来。

所以为提升总线隐性时的抗干扰能力,可以增加一个差分负载电阻,且阻值尽可能小,以杜绝大部分噪声能量的影响。然而,为了避免需要过大的电流总线才能进入“显性”,阻值也不能过小。

2、确保总线尽快进入隐性状态

由于总线上不可避免的存在寄生电容,CAN总线数据传输时,“隐性”和“显性”状态变化会对寄生电容进行充电和放电,若总线中无阻性负载,信号波形会出现“缓慢变化”的过程。如下图所示:

将上图放大后可发现显性恢复到隐性的时间长达1.44μS。在采样点较高的情况下勉强能够通信,若通信速率更高,或寄生电容更大,则很难保证通信正常。如下图所示:

为了让总线寄生电容快速放电,确保总线快速进入隐性状态,需要在CANH、CANL之间放置一个负载电阻。

增加一个60Ω的电阻后,从上图中看出,显性恢复到隐性的时间缩减到128nS,与显性建立时间相当。

由以上的波形对比可发现,终端电阻会使总线更快的在“显性”和“隐性”状态间变化。

3、吸收反射的信号,提高信号质量

信号在较高的转换速率情况下,信号当信号遇到阻抗变化时,会产生信号反射;传输线缆横截面的几何结构发生变化,线缆的特征阻抗会随之变化,也会造成反射。反射的信号则会返回来影响质量,在总线上产生“振铃”,如下图所示:

若“振铃”信号过大,就会影响信号质量,甚至造成总线数据传输错误。

在线缆末端增加一个与线缆特征阻抗一致的终端电阻,可以将反射信号的能量吸收,避免振铃的产生,如下图所示:

CAN总线网络中为什么需要安装终端电阻?相关推荐

  1. 高速CMOS光耦合器在工业现场总线网络中的应用

    介绍 从20世纪80年代中期开始,现场总线技术就准备进入工厂.工业现场总线根据其性能能力进行分类.人们最终选择的现场总线标准主要取决于总线能够处理的数据量及其相关的速度或传播延迟要求.可能有几十个流行 ...

  2. ubuntu chrome java插件_在Ubuntu中为Chrome安装Java插件

    问题描述 我有JDK,在Ubuntu中一切正常,我是说IDE,一些应用程序,我能够开发和运行项目,但是我在Chrome中收到一条消息:Java(TM) is required to display t ...

  3. centos7中使用yum安装tomcat以及它的启动、停止、重启

    centos7中使用yum安装tomcat 介绍 Apache Tomcat是用于提供Java应用程序的Web服务器和servlet容器. Tomcat是Apache Software Foundat ...

  4. Python+Anaconda中库的安装

    查看Anaconda中的Python的开发环境 (1)conda env list 不同环境中库的安装 方式一:  Pycharm+Anacond安装完成后的Python文件创建以及No module ...

  5. eclipse中的git安装与使用

    eclipse中的git安装与使用 1.eclipse中git的安装 一般在eclipse中是没有安装Git的,图1为安装内容 安装完成后重启软件即可. 2.git的配置 一系列安装完成后,我们将进行 ...

  6. Windows10 中使用 virtualbox 安装ubuntu 虚拟机

    文章目录 Windows10 中使用 virtualbox 安装ubuntu 虚拟机 1 下载 virtualbox 1 打开网址,[virtualbox官网](https://www.virtual ...

  7. excel2007无法加载mysql_Excel2007中进行无法安装加载项的解决方法

    最近在学数学模型,用规划求解来计算.以前用Excel XP,知道在工具中加载相关的宏,然后很顺利地就能求解.但是用Excel 2007就找不到北了,今天,学习啦小编就教大家在Excel2007中进行无 ...

  8. 在VMware15中创建虚拟机安装ubuntu系统(超详细教程)

    此篇博文分享幼儿园老小(本人)创建虚拟机安装ubuntu系统的详细操作过程,希望对新手有所帮助咯!(大佬请自行略过哈哈) 我的下载地址详情如下: 下载请戳–>Ubuntu18.04/64位下载地 ...

  9. linux redis数据库安装配置,Linux系统中redis的安装配置步骤

    Linux系统中redis的安装配置步骤 发布时间:2020-06-23 10:13:36 来源:亿速云 阅读:87 作者:Leah 这篇文章将为大家详细讲解有关Linux系统中redis的安装配置步 ...

最新文章

  1. [LeetCode] Factorial Trailing Zeroes
  2. linux下通过inotify-tools监控文件系统
  3. ndr4108贴片晶振是多少频率_王一博社交平台:抛开贴小广告的电线杆,字里行间可见真性情...
  4. 程序员的自我修养学习笔记——第五章
  5. CodeForces - 1295E Permutation Separation(线段树+二维偏序,好题)
  6. LVS_DR实现过程...
  7. html设置渐变色背景图片,css中渐变色作为背景图来使用总结
  8. repeater没有数据显示暂无数据,无记录
  9. axure sketch 对比_对比平台--Axure和Sketch之间的区别
  10. 浏览器开发者工具,自己设置屏幕分辨率调试(chrome)
  11. Windows 7 Sp1 x64 无法安装英文语言包(已解决)
  12. C语言实现移位密码算法,仿射密码算法
  13. BLDC直流无刷电机的控制方式
  14. vue中使用i18n
  15. docker 存储驱动之overlay2
  16. zookeeper之Curator
  17. 线性代数 向量组 线性相关与表出 秩 解的关系总(一)
  18. 论文格式设置(封面、页码、目录、参考文献编号)
  19. Android点击按钮显示密码,Android 开发仿简书登录框可删除内容或显示密码框的内容...
  20. 数据操作层ACCSEE

热门文章

  1. Android - 开发者选项中的一些必知必懂必会
  2. HiKariCP数据库连接池
  3. LCD显示器的模拟和数字接口
  4. 流行的邮件系统--extmail
  5. 利用map和reduce编写一个str2float函数,把字符串'123.456'转换成浮点数123.456:
  6. 基于QT的仓库礼品出入库管理(第一个给别人使用的软件)
  7. 北航计算机学院上机试题,北航计算机系考研复试上机真题及答.pdf
  8. c语言和c 自学,自学C语言最常遇到的七个问题
  9. 最新版PyCharm安装详细教程(Win10)
  10. 高通平台开发系列讲解(充电篇)充电底层驱动 power_supply 子系统