打印
[CAN-bus/DeviceNet]

很好的**

[复制链接]
4473|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jerrymiao|  楼主 | 2008-4-25 14:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
摘要 在传统的CAN节点设计[1]的基础上,采用ADI公司推出的新型双通道数字隔离器ADuM1201[2]。突破传统的CAN总线隔离方法,设计性能更为优良的CAN智能节点,并且为基于CAN总线的智能节点的应用设计提供新思路。

关键词 CAN总线 T89C51CC01 ADuM1201 

引言

  CAN (Controller Area Network)[3] 总线又称控制局域网络,最早由德国BOSCH公司推出,用于汽车内部测量与执行部件之间的数据通信。CAN 已被公认为几种最有前途的现场总线之一。其总线规范已被ISO国际标准组织制订为国际标准。CAN的主要优点:①  为多主工作方式,可以很方便地构成多机备份系统;②  可以点对点、点对多点及广播方式收发数据,通信速率最高可达1 Mb/s(此时通信距离最长为40 m),实际节点数可达110个,直接通信距离最远可达10 km(速率在5 kB/s以下);③  CAN网络上的节点可分为不同的优先级,以满足不同的实时要求;④  采用非破坏性仲裁技术,能够有效地避免总线冲突;⑤  用短帧结构,每一帧的有效字节数为8个(短帧传输时间短、受干扰概率小、重发时间短,每帧信息都有CRC校验及其他检错措施,可保证数据的低出错率;⑥  通信介质可为双绞线、同轴电缆或光纤,选择灵活;⑦  总线节点在错误严重的情况下,具有自动关闭输出功能,以使总线上其他节点的操作不受影响。

  基于CAN总线的智能节点的设计有经典的电路。本文介绍一种新的思路,可应用在煤矿等场合。

1  系统概述

  如图1所示,本系统由单片机、隔离器、CAN控制器和外扩的RAM组成。其中,单片机选择Atmel公司推出的T89C51CC01[4]。它是一种功能强大的8位微控制器,自带CAN控制器和32 KB Flash存储器的8位微处理器,与8051系列单片机兼容,静态时钟模式;其周期时间为300 ns,内有32 KB闪速程序存储器,可在系统编程(ISP),包括有2 KB闪速引导存储器,2 KB EEPROM和1.2 KB RAM;可控制15个CAN通道,这些通道可编程用于接收、发送或接收缓冲器;可为网络节点提供硬件支持,并且内部还有A/D转换和PWM发生器等其他功能。

  AT89C51CC01输出的信号不能与物理总线直接相连,必须使用CAN总线收发器,因此外接了基于CAN总线协议的总线收发器PCA82C250,选择了经典的控制电路。PCA82C250是CAN控制器与总线之间的物理接口,可以提供对总线的差动发送和接收功能。针对CANL和CANH的两种输出状态,总线具有两种不同的电平。这两种电平可以差分输入,接收端呈现显性或隐性两种状态。同时,使用PCA82C250可以增长通信距离,提高系统的瞬间抗干扰能力。

  由于现场情况十分复杂,各节点之间存在很高的共模电压,虽然CAN接口采用的是差分传输方式,具有一定的抗共模干扰的能力,但当共模电压超过CAN驱动器的极限接收电压时,CAN驱动器就无法正常工作了,严重时甚至会烧毁芯片和仪器设备。因此,为了适应强干扰环境或是高的性能要求,必须对CAN总线各通信节点实行电气隔离。


图1  系统框图

  传统的CAN总线隔离方法是光耦合器技术,使用光束来隔离和保护检测电路,以及在高压和低压电气环境之间提供一个安全接口。目前一般使用6N137光电隔离器件。以Toshiba公司的6N137为例,其工作电压为5 V,最高速率10 Mbps,工作温度一般为0~70℃,隔离电压为2500 V(有效值),并且以DIP8型封装,每个芯片仅提供一个隔离通道。这些性能已经限制了6N137在更高要求的环境中应用,因此,本系统采用了ADI公司推出的新型双通道数字隔离器ADuM1201。ADuM1201有诸多优于光电隔离器件性能的地方,可满足CAN总线的要求。

  虽然AT89C51CC01内部有1 KB的ERAM可用来存储程序,但是为了保证数据存储具有足够大的空间,设计中外扩了128字节的RAM,即61C1024。具体电路连接如图2所示。


图2  T89C51CC01相关电路

  PCA82C250将接收到的所有总线上传输的帧,通过电流和电压隔离,传送到T89C51CC01的CAN模块。CAN 模块比较接收码寄存器和帧的ID码,相等的则接收,并引发一个接收中断。在接收中断的处理中,AT89C51CC01读取CAN模块接收缓冲区中的数据,将其传送到61C1024的双口RAM中。最后,PC通过PCI总线定时读取61C1024双口RAM中的数据。

  另外,这里用到的单片机AT89C51CC01也可用AT89C51CC03[5]来代替,两者的比较如表1所列。

表1  AT89C51CC01和AT89C51CC03比较表


2  ADuM1201

  ADuM1201是ADI公司推出的新产品。它采用的iCoupler技术是基于芯片尺寸的变压器,而不是基于光电耦合器所采用的LED与光电二极管的组合。这种技术由于取消了光电耦合器中的光电转换过程,并且采用了iCoupler变压器专利技术集成变压器驱动和接收电路,从而实现了光电隔离器无法比拟的性能优势。由于使用晶片级制造工艺直接在芯片上制造iCouple变压器,所以iCoupler通道比光电耦合器有效地实现通道之间的集成,以及比较容易地实现其他半导体功能。

  由于没有光电耦合器中影响效率的光电转换环节,所以iCoupler数字隔离器无需驱动LED的外部电路,功耗仅为光电耦合器的1/10~1/50。这种新的基于电磁的隔离方法,在抗高温影响方面远优于光耦合器。iCoupler数字隔离器在125℃高温环境下性能和可靠性并不下降,因此可以采用低成本、小体积的SOIC封装,这样不但降低了成本还减小了芯片的体积。另外,iCoupler数字隔离器的隔离通道具有比光电耦合器更高的数据传输速率、时序精度和瞬态共模抑制能力。其额定隔离电压是高隔离度光电耦合器的2倍,并且数据传输速率和时序精度是其10倍。此外,与光电耦合器不同的是,多通道iCoupler数字隔离器能在同一芯片内提供正向和反向通信通道,这样就可以使得信号的传输方向更加灵活,简化了芯片间的硬件连接线路。

  ADuM1201具有诸多优于光电隔离器的优点:

①  速度更高——最高速率可以达到25 Mbps;
②  功耗更低——功耗低于同数据传输率时传统光电隔离器的1/10,最小工作电流为0.8 mA;
③  性能更高——时序精度,瞬态共模抑制力,通道间匹配程度均优于传统光电隔离器;
④  体积更小——集成度更高,印制电路板(PCB)面积为传统光电隔离器的40%;
⑤  价格更便宜——每通道成本为传统光电隔离器的40%;
⑥  应用更灵活——与传统光电耦合器不同的是,多通道iCoupler数字隔离器能在同一芯片内提供正向和反向通信通道。

  ADuM1201所隔离的两端有各自的电源和参考地,电源电压为2.7~5.5 V,这样可以实现低电压供电,从而进一步降低系统功耗。系统中使用的电源是5 V。电源和参考地之间接入0.01~0.1 μF电容,以滤除高频干扰,电容和电源之间的距离应在20 mm以内,这样可以达到更好的滤波效果。由于两个隔离通道高度匹配,通道间串扰很小,并且采用两通道输入/输出反向设计,非常适合CAN总线双向收发的特性,大大简化可隔离器与所隔离两端的硬件连接。需要注意的是:GND1与GND2是两个不同的参考地,否则将达不到隔离的效果;ADuM1201正常工作时,两端的供电源需要同时上电才能保证ADuM1201两通道都能正常工作,如果有一个没有上电就能导致整个芯片无法正常工作。相关电路连接如图3所示,其中两个IN4148为防雷击管,用来防止总线上的瞬变干扰。


图3  ADuM1201相关电路图

  隔离芯片ADuM1201处于系统的中间,用来隔离各传感器节点,比传统的光电隔离器件具有更好的性能。ADuM1201消除了传统光电隔离器不确定的传输速率、非线性的传输函数以及温度和寿命对器件的影响,无需其他驱动和分立元件,提供了更加稳定的转化性能,而且在相同的信号传输速率下功耗只有光电隔离器的1/10~1/6。另外,ADuM1201以单一芯片实现了CAN总线节点之间的电气隔离,并采用双转化通道,两通道方向相反的特殊结构,非常适合于CAN总线信号的传输,大大简化了系统的硬件结构;同时,由1个隔离芯片代替以往的2个,大大增加了通道间的匹配程度,使系统获得更好的隔离性能。

结语

  本节点的设计利用传统的经典电路,并用ADuM1201代替传统的光电隔离器件,降低了系统功耗,简化了系统结构,增强了系统稳定性,提高了系统的性能。成板之后调试效果良好,并且为基于CAN总线的智能节点的应用设计提供了一定的参考价值。

参考文献

1  邬宽明.CAN总线原理与应用系统设计.北京:北京航空航天大学出版社,1996
2  ADI公司. DualChannel Digital Isolators ADuM1200/ ADuM1201. 2004
3  丁恩杰,马方清.监控系统与现场总线. 徐州:中国矿业大学出版社,2003
4  Atmel公司. AT89C51CC01 datasheet.200501
5  Atmel公司. AT89C51CC03 datasheet. 200506

李英:硕士研究生,主要从事信号与信息处理方面的研究。
徐钊:教授,从事通信与信息系统方面的研究。

相关帖子

沙发
开芯行者| | 2008-4-26 11:27 | 只看该作者

很好的**

文章很好,这个电路在我的一个项目中是这样用的,不过有一小点可能有点问题,即PCA82C250的RS脚的电阻问题,当总线速度为高速时,即100k左右之上时,电阻用47k的恐怕有问题了,应用小于1.8K的,这在我实际的调试中解决过.还有一小点ADuM1201的价钱有点高.那位网友能推荐一个便宜点的吗?多谢

使用特权

评论回复
板凳
lnskngdc| | 2008-4-27 16:06 | 只看该作者

新华龙有款便宜点的

先声明,不是广告啊。我也是周五的时候才知道,新华龙有款便宜点的,他们的销售人员给我推荐的,型号忘记了,大概**块吧,但是工作原理好像不同,他们的那个是射频的,不知能接受否?
ad的东西是有点贵,但是质量是没问题的,别的 还没用过。

to:开芯行者,你说的RS脚不能接大电阻是什么原理啊?我门的方案用的是10k的,跑500k都没问题,不知rs脚是干啥的?如果能说通原理就好了。

使用特权

评论回复
地板
开芯行者| | 2008-4-27 18:41 | 只看该作者

to lnskngdc

首先多谢推荐。我查总线芯片82C250使有说明,上面有对Rs脚的使用要求,对于高速总线即波特率大于62.6kbps时,要求其Rs脚对地电压要小于0.3Vcc,为达到这个要求,则Rs脚所接电阻值要小于1.8K。我查了以前的设计,请见我发的贴子,原来用的是32K的电阻,结果总是不能发送,后来将电阻去掉使该脚直接接地,反而一切正常了,后来请教专家,他说如果所接电阻太大,会将Rs电压接到2.5V,使总线收发器处于待机状态。我遇到的问题即是他所说的情况。后来这样作就没问题了。你所说的,我也不知为什么。
 
请路过的大侠多多指正啊。

使用特权

评论回复
5
lnskngdc| | 2008-4-28 09:27 | 只看该作者

待机?

呵呵,如果是电压太低导致待机的话那为什么低速就不会待机呢?应该与高速的一样啊,如果说这个rs脚如果接不好会导致通讯问题,那这个功能就是**肋了.没时间看手册了,最近一直忙,唉,基础啊,基础,看来得补课了.

使用特权

评论回复
6
jerrymiao|  楼主 | 2009-2-27 13:58 | 只看该作者

ADUM1201价钱不高了

也就7 8 块钱的样子嘛

使用特权

评论回复
7
LiangXinJi| | 2009-9-18 23:48 | 只看该作者
做个记号!!正要用呢!

使用特权

评论回复
8
LiangXinJi| | 2009-9-18 23:49 | 只看该作者
做个记号!正要用.

使用特权

评论回复
9
LiangXinJi| | 2009-9-18 23:50 | 只看该作者
赌东道赌东道赌东道的

使用特权

评论回复
10
dqyubsh| | 2012-11-5 06:50 | 只看该作者
mark

使用特权

评论回复
11
byin| | 2012-12-13 17:44 | 只看该作者
多谢分享,刚用这个数字隔离芯片做了个板子,很快会用到

使用特权

评论回复
12
charrijon| | 2013-1-9 11:33 | 只看该作者
功率够吗????

使用特权

评论回复
13
wudonghua| | 2013-1-10 15:48 | 只看该作者
这片子还可以

使用特权

评论回复
14
jiaxinhui| | 2013-3-11 08:29 | 只看该作者
有空,试用一下

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

52

主题

139

帖子

2

粉丝