四步掌握CAN节点隔离设计

  “隔离”是模块为CAN节点设备提供可靠数据传输的首要保障,通常隔离模块的“隔离”是指模块上电后,能为节点提供信号隔离及电源隔离,隔离电压等级以2500VDC、3500VDC为主。本文将从CAN隔离模块的前级电源保护、后级接地、总线保护电路以及实际组网四个层面出发,全方面的介绍模块的使用细节,帮助大家搭建稳定、可靠的CAN总线网络。

  1.前级电源保护

  模块的初级接口是面对控制信号部分,供电电源通常与CAN控制器或MCU保持一致,这种情况下电源端口建议增加10μF滤波电容。有些应用是模块的电源和总线一起传输过来,比如20个节点中每个节点的电源和CAN信号线一起布线,节点共用一个电源,或模块没有单独的稳压供电电源,这种情况必须为模块电源增加TVS保护及滤波电容,并且确保电源与信号共地,如下图1所示。

  

  图1 电源保护

  2.后级接地

  一般在短距离,干扰小的场合,可将CAN收发器的CANG悬空处理。但在实际现场应用中CAN总线组网绝大多数采用屏蔽双绞线,此时需要对屏蔽层接地。若接地节点为金属机壳,且该节点的初级系统已经接地,这种情况下CAN端口的屏蔽层应该通过一个1000pF电容接地,电容耐压值大于模块隔离耐压。电路示意如图2所示。

  

  图2 CAN端口接地示意图

  3.总线保护电路

  模块CAN接口面对总线,需要更高的浪涌及静电防护等级。CTM系列模块CAN接口裸机可承受±4kV静电及共模±2kV浪涌。若需要更高的等级可以增加浪涌防护电路。常用的有以下两种保护电路,图3、图4中的TVS管等效结电容约为500~1000pF。

  

  图3 桥式保护电路

  

  图4 普通保护电路

  图3为桥式电路,特点是等效节点电容小,测量各线之间电容小于20pF,该电路适用于CAN总线节点数较多,通信速率较高的场合。

  图4所示的普通电路等效节点电容则更大,测量各线之间电容为800pF左右,该电路适用于低速通信场合。

  共模电感:对总线共模干扰大,设备EMI要求高的场合,尤其是汽车行业的应用总线采用51μH的共模电感可有效解决问题。加入共模电感带来的问题便是引入谐振干扰。当收发器的总线信号上升下降时间较短时,共模电感与总线分布电容产生谐振,影响通讯,比如在CAN FD应用场合,这种谐振会影响总线的正常通讯。图5为CTM5MFD模块采用ID段1Mbps,数据段2Mbps速率通讯,加入保护电路的波形,其中绿色为加入共模电感的波形,粉红色为无共模电感的波形。

  

  图5 浪涌电路加入电感波形对比

  除了总线分布参数带来的影响外,模块本身的CAN差分信号也会影响谐振电压幅值。CAN收发器满足以下两个条件,可有助于降低谐振电压幅值。

  1)CANH、CANL信号要同步,且对称性好;

  2)CANH、CANL构成的差分电压信号上升、下降斜率小;

  4.实际组网

  通用CAN隔离模块多数有显性超时保护,模块的最低波特率被限制为40kbps,模块组网时最大通信距离应为1公里。当总线通信最大波特率确定后,组网的总线长度及分支长度应不超过表1限制。

  

  表1 不同波特率下的网络长度

  普通应用组网可参考CTM系列隔离收发器数据手册中已经给出的推荐组网方式,即采用单层屏蔽双绞线。下面给出采用双层屏蔽双绞线的参考组网方式。这种方式为三线传输方式,传输效果及抗干扰性最好。组网时双绞线外屏蔽层单点接大地,内屏蔽层及双绞线连接每个收发器的CANG 、CANH、CANL,每个CAN节点的CANG通过1000pF电容接设备机壳。

  

  图6 三线传输组网示意图

四步掌握CAN节点隔离设计的更多相关文章

  1. 四步走查智能硬件异常Case

    此文已由作者于真真授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 相比于软件,智能硬件产品由于涉及硬件和软件两个端的状态,其异常case要更加错综复杂.由于硬件产品的迭代更新 ...

  2. JAVA EE企业级开发四步走完全攻略 [转]

    http://bbs.51cto.com/thread-550558-1.html 本文是J2EE企业级开发四步走完全攻略索引,因内容比较广泛,涉及整个JAVA EE开发相关知识,这是一个长期的计划, ...

  3. C#中四步轻松使用log4net记录本地日志

    在这里,记录我在项目中使用log4net记录本地日志的步骤.在不会之前感觉很难,很神秘,一旦会了之后其实没那么难.其实所有的事情都是一样的,下面我就分享一下我使用log4Net的经验. 第一步:首先从 ...

  4. Python四步实现决策树ID3算法,参考机器学习实战

    一.编写计算历史数据的经验熵函数 from math import log def calcShannonEnt(dataSet): numEntries = len(dataSet) labelCo ...

  5. 在深谈TCP/IP三步握手&四步挥手原理及衍生问题—长文解剖IP

    如果对网络工程基础不牢,建议通读<细说OSI七层协议模型及OSI参考模型中的数据封装过程?> 下面就是TCP/IP(Transmission Control Protoco/Interne ...

  6. C#中四步轻松使用log4net记录本地日志(WPF有点小区别)

    在这里,记录我在项目中使用log4net记录本地日志的步骤.在不会之前感觉很难,很神秘,一旦会了之后其实没那么难.其实所有的事情都是一样的,下面我就分享一下我使用log4Net的经验. 第一步:首先从 ...

  7. 关于pythoh面向过程开发人员三步转面向对象的补充,再加一步,四步走战略。转面向对象也可以有固定公式。

    前言: oop非常非常非常重要.搞不懂oop,就玩不了python,就算能写也一定是写代码时候喜欢靠猜瞎猫碰死老鼠写得心很虚.为什么这么说呢,我也是从面向过程编程到死走过来的,一路def到死,一看到有 ...

  8. 只需十四步:从零开始掌握 Python 机器学习(附资源)

    分享一篇来自机器之心的文章.关于机器学习的起步,讲的还是很清楚的.原文链接在:只需十四步:从零开始掌握Python机器学习(附资源) Python 可以说是现在最流行的机器学习语言,而且你也能在网上找 ...

  9. 【JAVA EE企业级开发四步走完全攻略】

    本文是J2EE企业级开发四步走完全攻略索引,因内容比较广泛,涉及整个JAVA EE开发相关知识,这是一个长期的计划,单个发blog比较零散,所以整理此索引,决定以后每发一季JAVA EE blog后会 ...

随机推荐

  1. 【java错误】System.out.println()出错

    今天想测试java的System的类,没想到居然出错了.在同一个包下的java文件System全错,而其他包中的System没错.上网查了下资料,原来我是重定义了System类,覆盖了原来的Syste ...

  2. Error no matching function for call to 'std::exception::exception(const char [15])'

    Error no matching function for call to 'std::exception::exception(const char [15])' Error 'logic_err ...

  3. oracle 网络配置 及 pl/sql 连接配置

    oracle网络配置有三个文件,它们都在D:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN 这个文件夹下面,有sqlnet.ora.l ...

  4. hue简单介绍

    hue定义: HUE=Hadoop User Experience 个人理解:可视图的webui界面,方便大数据技术之间的CRUD操作. 官方定义:Hue是一个能够与Apache Hadoop交互的W ...

  5. EF增删查改基类

    /// <summary> /// EF DAL CURD基类 /// </summary> /// <typeparam name="T">& ...

  6. 对《SQL Server中tempdb的management》的一些更正和补充

    对<SQL Server中tempdb的management>的一些更正和补充 前几天看了这篇文章:SQL Server中tempdb的management 发现里面有些内容不是很准确 文 ...

  7. Windows自带强大的入侵检测工具——Netstat 命令 查询是否中木马

    Netstat命令可以帮助我们了解网络的整体使用情况.根据Netstat后面参数的不同,它可以显示不同的网络连接信息.Netstat的参数如图,下面对其中一些参数进行说明.如何检测本机是否有被中木马, ...

  8. ASP.Net WebAPI的返回值

    Asp.Net WebAPI服务函数的返回值主要可以分为void.普通对象.HttpResponseMessag.IHttpActionResult e四种,本文这里简单的介绍一下它们的区别. 一.返 ...

  9. Flask 参数简介

    我们都知道学习了Flask的时候它里面的参数是有很多种的参数  都是需要相互进行调用传递的  今天就简要分析一些常见的参数 首先导入Flask之后看 源码 from flask import Flas ...

  10. PSR规范学习笔记

    PSR已经经历了5次变革,如今PSR4就是最新的标准,但是还是有必要了解下5个版本的内容的,于是去php-fig网站看了下英文原版: 大概看了遍,发现这规范很多的必须很多时候只是建议,但是PHP解析器 ...