CAN总线布线规范
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总线已从汽车电子慢慢渗透入工业自动化,医疗,铁路等众多领域。据我们的数据统计,客户在使用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总线布线规范的更多相关文章
- PCB主线布线规范—高速线之DDR2
一.DDR2时钟线走线规则a)时钟线包括 MEM_CLKOUT#0.MEM_CLKOUT0.MEM_CLKOUT#1.MEM_CLKOUT1,MEM_CLKOUT#2.MEM_CLKOUT2: MEM ...
- PCB布线规范
模拟电路和数字电路PCB设计的不同点 http://linear.eefocus.com/module/forum/thread-593593-1-1.html 合集 PCB给种设计资料 http ...
- Altium Designer 总线式布线
1.常规布线:不详细说了,是个人就知道怎么弄.需要说明的是在布线过程中,可按小键盘的*键或大键盘的数字2键添加一个过孔:按L键可以切换布线层:按数字3可设定最小线宽.典型线宽.最大线宽的值进行切换. ...
- openrisc 之 Wishbone总线学习笔记——总线互联
一,总线命名规范 1,wishbone总线接口信号都是高电平有限 2,wishbone接口信号都是以 _i ,或者是 _o 结束.i表示输入, o表示输出. ()表示该信号为总线信号,总线位宽可以大于 ...
- 【转】认识物理I/O构件- 主机I/O总线
在数据离开系统内存总线后,它通常传输到另一条总线,即主机I/O总线.在今天的产品中,最常见的主机I/O总线是PCI总线,但也存在着几种其他的总线,如S -总线,EIS A总线及VME总线.主机I/O总 ...
- vxi总线
20世纪80年代后期,仪器制造商发现GPIB总线和VME总线产品无法再满足军用测控系统的需求了.在这种情况下,HP.Tekronix等五家国际著名的仪器公司成立了VXIbus联合体,并于1987年发布 ...
- AD各种布线方法总结
1.常规布线:不详细说了,是个人就知道怎么弄.需要说明的是在布线过程中,可按小键盘的*键或大键盘的数字2键添加一个过孔:按L键可以切换布线层:按数字3可设定最小线宽.典型线宽.最大线宽的值进行切换. ...
- PCB布线经验
查看: 3645|回复: 11 [经验] PCB设计经验(1)——布局基本要领 [复制链接] ohahaha 927 TA的帖子 0 TA的资源 纯净的硅(中级) 发消息 加好友 电 ...
- Altium_Designer-各种布线总结
1.常规布线:不详细说了,是个人就知道怎么弄.需要说明的是在布线过程中,可按小键盘的*键或大键盘的数字2键添加一个过孔:按L键可以切换布线层:按数字3可设定最小线宽.典型线宽.最大线宽的值进行切换. ...
随机推荐
- 浏览器根对象document之数值和布尔属性
1.1 节点类型 ELEMENT_NODE 1 一个 元素 节点,例如 <p> 和 <div>. TEXT_NODE 3 Element 或者 Attr 中实际的文字 PROC ...
- 获取本地IP地址的vc代码
作者:朱金灿 来源:http://blog.csdn.net/clever101 获取本地IP地址有两种做法.一种是使用gethostname函数,代码如下: bool CSocketComm::Ge ...
- jQuery轮播图(手动点击轮播)
下面来看看最终做的手动点击轮播效果: 一.原理说明 (1)首先是轮播图的架构,我采用了一个最外边的大div包住两个小div,一个小div里面放四张图片,另一个小div里面放四个数字按钮 (2)对最外边 ...
- Pwn with File结构体之利用 vtable 进行 ROP
前言 本文以 0x00 CTF 2017 的 babyheap 为例介绍下通过修改 vtable 进行 rop 的操作 (:-_- 漏洞分析 首先查看一下程序开启的安全措施 18:07 haclh@u ...
- linux 软件包 rpm命令之安装、更新、卸载、依赖
软件包分类1.源码包2.二进制包二进制包是源码包编译后产生的文件..exe文件是适用于windows平台的二进制包:RPM包适用于redhat系列的二进制包:deb包是适用于ubuntu平台的二进制包 ...
- Leetcode 回文数字判断
一.问题描述 判断一个integer 型的数字是否是回文,空间复杂度应该是常数级别的 . 二.问题分析 首先,负数不是回文,10的整数倍不会是回文,个位数一定是回文. 三.代码实现 思路:将一个数字翻 ...
- 使用 Jenkins 和 Team Services 将应用部署到 Linux VM
持续集成 (CI) 和持续部署 (CD) 是一个管道,可以通过它生成.发布和部署代码. Team Services 针对到 Azure 的部署提供了一组完整的功能完备的 CI/CD 自动化工具. Je ...
- [控件] 心形加载的view
心形加载的view 效果: 素材图片: 源码: StarView.h 与 StarView.m // // StarView.h // Star // // Created by XianMingYo ...
- Stored Properties 与 Computed Properties
Stored Properties 与 Computed Properties About Swift Stored Properties In its simplest form, a stored ...
- 获取系统屏幕尺寸参数的类WxHxD
获取系统屏幕尺寸参数的类WxHxD 源码: // // WxHxD.h // PM2.5 // // Created by YouXianMing on 14/10/29. // Copyright ...