CAN总线布线规范

  摘要:今天的CAN总线已从汽车电子慢慢渗透入工业自动化,医疗,铁路等众多领域。据我们的数据统计,客户在使用CAN总线时约80%的问题均是由总线布局布线不合理导致,今天我们就来扒一扒CAN总线的布局布线规范。
  所谓磨刀不误砍柴功,合理的总线布局布线等于成功的一半,那么总线布线时如何选取导线?如何选取布线拓扑结构呢?
  一、 导线选型
  1、 导线类型
  CAN总线布线时必须采用双绞线,且需采用特征阻抗约120Ω的双绞线,在通信距离较长或电磁环境恶劣的情况下最好用屏蔽双绞线,这样可以有效抑制电磁干扰,保证可靠的通信。
  2、 线长与直流电阻
  当客户的通信距离较长时就不得不考虑线路损耗了,如果使用的线缆太细,导线的直流电阻太大。那么在总线起始端发出的信号在经历漫长的路途之后到达末端的节点时信号将大幅衰减,最终导致通信失败。那么线长和传输线截面积,线长与通信波特率又有什么关系呢?我们总结如下图1所示。
  CAN总线布线规范
  图1传输线相关参数推荐值
  二、布线拓扑结构
  1、“手牵手”式连接
  在直线型拓扑中,由于分支存在一定的长度以及分支长度的积累会造成总线上阻抗不连续,继而产生信号反射的现象,所以直线型拓扑中最常用的是手牵手连接方式。如图 2所示,为了保证通信的可靠性,起始端和末端的节点都需要加120Ω的终端电阻,不可只接一端或两端均不接。
  CAN总线布线规范
  图2手牵手连接方式接线图
  2、T型分支式连接
  在大多数的工业现场、轨道机车中,由于整体线缆非常多均需要使用接线排,方便后期维护。所以CAN总线上的节点分支不可避免,只能尽量减小分支长度,如图 3。
  CAN总线布线规范
  图3 T型分支结构图
  这个分支长度在最高波特率1M时最好在0.3m以内,我们可以推断在其他波特率条件下如果分支长度满足小于0.3m,那么总线通信可以稳定运行。
  在某些场合无法做到这么短的分支怎么办呢?我们可以根据不同的波特率,选择不同的分支长度。如图4可知,随着波特率的增加,分支约束越来越严格,相反如果想增加分支的长度那么波特率必须降低以获得稳定的通信。
  CAN总线布线规范
  图 4 波特率与分支长度的关系
  3、星型拓扑
  CAN总线布线规范
  图 5 等长星型连接
  如图 5所示,若采用等长星型拓扑进行接线可以不使用集线器设备,适当调整每个节点的终端电阻即可实现组网。
  R=N×60Ω
  N:分支数量
  R:每个分支的终端电阻
  注意每个节点必须加终端电阻,不能在星型网络的中心加任何电阻。
  在现实应用中很多场合无法做到等长星型连接,这个时候我们需要使用CAN集线器来进行分支,如图6所示。
  CAN总线布线规范
  图 6 集线器用于复杂的分支网络
  使用集线器布线灵活性很大,可以根据需要任意分支,少了很多约束条件。

CAN总线布线规范

出处:周立功致远电子 发布于:2015-10-14 | 6343 次阅读

  摘要:今天的CAN总线已从汽车电子慢慢渗透入工业自动化,医疗,铁路等众多领域。据我们的数据统计,客户在使用CAN总线时约80%的问题均是由总线布局布线不合理导致,今天我们就来扒一扒CAN总线的布局布线规范。
  所谓磨刀不误砍柴功,合理的总线布局布线等于成功的一半,那么总线布线时如何选取导线?如何选取布线拓扑结构呢?
  一、 导线选型
  1、 导线类型
  CAN总线布线时必须采用双绞线,且需采用特征阻抗约120Ω的双绞线,在通信距离较长或电磁环境恶劣的情况下最好用屏蔽双绞线,这样可以有效抑制电磁干扰,保证可靠的通信。
  2、 线长与直流电阻
  当客户的通信距离较长时就不得不考虑线路损耗了,如果使用的线缆太细,导线的直流电阻太大。那么在总线起始端发出的信号在经历漫长的路途之后到达末端的节点时信号将大幅衰减,最终导致通信失败。那么线长和传输线截面积,线长与通信波特率又有什么关系呢?我们总结如下图1所示。
  CAN总线布线规范
  图1传输线相关参数推荐值
  二、布线拓扑结构
  1、“手牵手”式连接
  在直线型拓扑中,由于分支存在一定的长度以及分支长度的积累会造成总线上阻抗不连续,继而产生信号反射的现象,所以直线型拓扑中最常用的是手牵手连接方式。如图 2所示,为了保证通信的可靠性,起始端和末端的节点都需要加120Ω的终端电阻,不可只接一端或两端均不接。
  CAN总线布线规范
  图2手牵手连接方式接线图
  2、T型分支式连接
  在大多数的工业现场、轨道机车中,由于整体线缆非常多均需要使用接线排,方便后期维护。所以CAN总线上的节点分支不可避免,只能尽量减小分支长度,如图 3。
  CAN总线布线规范
  图3 T型分支结构图
  这个分支长度在最高波特率1M时最好在0.3m以内,我们可以推断在其他波特率条件下如果分支长度满足小于0.3m,那么总线通信可以稳定运行。
  在某些场合无法做到这么短的分支怎么办呢?我们可以根据不同的波特率,选择不同的分支长度。如图4可知,随着波特率的增加,分支约束越来越严格,相反如果想增加分支的长度那么波特率必须降低以获得稳定的通信。
  CAN总线布线规范
  图 4 波特率与分支长度的关系
  3、星型拓扑
  CAN总线布线规范
  图 5 等长星型连接
  如图 5所示,若采用等长星型拓扑进行接线可以不使用集线器设备,适当调整每个节点的终端电阻即可实现组网。
  R=N×60Ω
  N:分支数量
  R:每个分支的终端电阻
  注意每个节点必须加终端电阻,不能在星型网络的中心加任何电阻。
  在现实应用中很多场合无法做到等长星型连接,这个时候我们需要使用CAN集线器来进行分支,如图6所示。
  CAN总线布线规范
  图 6 集线器用于复杂的分支网络
  使用集线器布线灵活性很大,可以根据需要任意分支,少了很多约束条件。

CAN总线布线规范的更多相关文章

  1. PCB主线布线规范—高速线之DDR2

    一.DDR2时钟线走线规则a)时钟线包括 MEM_CLKOUT#0.MEM_CLKOUT0.MEM_CLKOUT#1.MEM_CLKOUT1,MEM_CLKOUT#2.MEM_CLKOUT2: MEM ...

  2. PCB布线规范

    模拟电路和数字电路PCB设计的不同点 http://linear.eefocus.com/module/forum/thread-593593-1-1.html 合集   PCB给种设计资料 http ...

  3. Altium Designer 总线式布线

    1.常规布线:不详细说了,是个人就知道怎么弄.需要说明的是在布线过程中,可按小键盘的*键或大键盘的数字2键添加一个过孔:按L键可以切换布线层:按数字3可设定最小线宽.典型线宽.最大线宽的值进行切换. ...

  4. openrisc 之 Wishbone总线学习笔记——总线互联

    一,总线命名规范 1,wishbone总线接口信号都是高电平有限 2,wishbone接口信号都是以 _i ,或者是 _o 结束.i表示输入, o表示输出. ()表示该信号为总线信号,总线位宽可以大于 ...

  5. 【转】认识物理I/O构件- 主机I/O总线

    在数据离开系统内存总线后,它通常传输到另一条总线,即主机I/O总线.在今天的产品中,最常见的主机I/O总线是PCI总线,但也存在着几种其他的总线,如S -总线,EIS A总线及VME总线.主机I/O总 ...

  6. vxi总线

    20世纪80年代后期,仪器制造商发现GPIB总线和VME总线产品无法再满足军用测控系统的需求了.在这种情况下,HP.Tekronix等五家国际著名的仪器公司成立了VXIbus联合体,并于1987年发布 ...

  7. AD各种布线方法总结

    1.常规布线:不详细说了,是个人就知道怎么弄.需要说明的是在布线过程中,可按小键盘的*键或大键盘的数字2键添加一个过孔:按L键可以切换布线层:按数字3可设定最小线宽.典型线宽.最大线宽的值进行切换. ...

  8. PCB布线经验

      查看: 3645|回复: 11    [经验] PCB设计经验(1)——布局基本要领 [复制链接]     ohahaha 927 TA的帖子 0 TA的资源 纯净的硅(中级) 发消息 加好友 电 ...

  9. Altium_Designer-各种布线总结

    1.常规布线:不详细说了,是个人就知道怎么弄.需要说明的是在布线过程中,可按小键盘的*键或大键盘的数字2键添加一个过孔:按L键可以切换布线层:按数字3可设定最小线宽.典型线宽.最大线宽的值进行切换. ...

随机推荐

  1. 【PyQt5 学习记录】011:使用 QListWidet 创建列表

    使用 QListWidet 创建列表 作者: 八月未见 博客: https://www.cnblogs.com/jmtm/ 创建列表: list_widget = QListWidget() 插入项目 ...

  2. vue实现上传上删除压缩图片

    <script> import {Config} from '@/config.js' import {mapState} from 'vuex' import {LocalData, t ...

  3. CSS选择器之伪类选择器(伪元素)

    selection [CSS4]应用于文档中被用户高亮的部分(比如使用鼠标或其他选择设备选中的部分).(IE8及以下不支持)(火狐-moz-selection) first-line 选择每个 < ...

  4. elixir 关键字列表

    关键字列表 元组列表 每个元素第一个为原子时候 称为关键字列表 iex(7)> list = [{:d, 1}, {:s, 2},{:h, 3}][d: 1, s: 2, h: 3]iex(8) ...

  5. 填报表导出excel后不可写的单元格处于锁定状态

     填报表单元格分为可写和不可写两种状态,当填报表在web上展现的时候可写单元格可以进行数据填报和修改,非可写单元格不可操作. 报表导出为excel时,润乾导出excel包默认情况下不对excel单 ...

  6. mybatis 一对一 映射实体类、嵌套查询

    一对一 在SysUser 类中增加SysRole字段.1.sql语句将role.role_name映射到role.roleName上. 2.还可以在XML 映射文件中配置结果映射.<result ...

  7. Django html标签make_safe

    from django.utils.safestring import mark_safe a = mark_safe("<a href='#'>test</a>&q ...

  8. UIButton的resizableImageWithCapInsets使用解析

    UIButton的resizableImageWithCapInsets使用解析 效果: 使用的源文件: 源码: // // ViewController.m // SpecialButton // ...

  9. 17级-车辆工程-周金霖 计算机作业 MP4音乐网站

  10. mysqlDOS命令

    MySQL : 1.安装mysql服务:mysqld install 2.删除mysql服务:sc delete mysql 3.启动mysql服务:net start mysql 4.初始化设置密码 ...