总线拓扑方式
节点数
标准节点数:32 所谓节点数、即每个rs-485接口芯片的驱动器能驱动多少个标准rs-485负载、根据规定、标准rs-485接口的输入阻抗为≥12kω、相应的标准驱动节点数为32、为适应更多节点的通信场合、有些芯片的输入阻抗设计成1/2负载(≥24kω)、1/4负载(≥48kω)甚至1/8负载(≥96kω)、相应的节点数可增加到64、128和256、 下列为常用的一些驱动ic比较: 型 号 32个节点: sn75176、sn75276、sn75179、sn75180、max485、max488、max490 64个节点: sn75lbc184 128个节点: max487、max1487 256个节点: max1482、max1483、max3080~max3089
硬件设计
485芯片 MAX485 MAX1487,上下拉,串联电阻,双向TVS管接到地
光耦隔离
因为是通讯,速率要跟上,光耦的参数要设置适当 在应用系统中,由于要对现场情况进行实时监控及响应,通信数据的波特率往往做得较 高(通常都在4800波特以上)。限制通信波特率提高的“瓶颈”,并不是现场的导线(现场 施工一般使用5类非屏蔽的双绞线),而是在与单片机系统进行信号隔离的光耦电路上。此 处采用TIL117。电路设计中可以考虑采用高速光耦,如6N137、6N136等芯片,也可以优化普 通光耦电路参数的设计,使之能工作在最佳状态。例如:电阻R2、R3如果选取得较大,将会 使光耦的发光管由截止进入饱和变得较慢;如果选取得过小,退出饱和也会很慢,所以这两 只电阻的数值要精心选取,不同型号的光耦及驱动电路使得这两个电阻的数值略有差异,这 一点在电路设计中要特别慎重,不能随意,通常可以由实验来定。 3 485总线输出电路部
瞬态防护 ESD 雷电等
瞬态抑制二极管SMBJ12CA SMBJ6.0A 贴片封装 在切换大功率感性负载(电机、变压器、继电器等)、闪电等过程中都会产生幅度很高的瞬态干扰,如果不加以适当防护就会损坏接口。对于这种瞬态干扰可以采用隔离或旁路的方法加以防护。 图5a所示为隔离保护方案。这种方案实际上将瞬态高压转移到隔离接口中的电隔离层上,由于隔离层的高绝缘电阻,不会产生损害性的浪涌电流,起到保护接口的作用。通常采用高频变压器、光耦等元件实现接口的电气隔离,已有器件厂商将所有这些元件集成在一片IC中,使用起来非常简便,如Maxim公司的MAX1480/MAX1490,隔离电压可以到2500V。这种方案的优点是可以承受高电压、持续时间较长的瞬态干扰,实现起来也比较容易,缺点是成本较高。 图5b所示为旁路保护方案。这种方案利用瞬态抑制元件(如TVS、MOV、气体放电管等)将危害性的瞬态能量旁路到大地,优点是成本较低,缺点是保护能力有限,只能保护一定能量以内的瞬态干扰,持续时间不能很长,而且需要有一条良好的连接大地的通道,实现起来比较困难。 实际应用中可以将二者结合起来灵活运用(图5c)。隔离接口对大幅度瞬态干扰进行隔离,而旁路元件保护隔离接口不被过高的瞬态电压击穿。 雷击过压防护的必要性 由于RS485总线实行长距离传输(1200米以上),而且其传输线通常暴露于户外,因此极易因为雷击等原因引入过电压。而RS485收发器工作电压较低(5V左右),其本身耐压也非常低(-7V~+12V),一旦过压引入,就会击穿损坏。在有强烈的浪涌能量出现时,甚至可以看到收发器爆裂,线路板焦糊的现象。 在构成RS-485总线网时,采用双绞线作传输线,传输线一般在室外架空或沿电缆沟敷设,所以,在雷雨季节常发生因雷电在传输线上引起瞬变干扰而损坏器件。另外,由于RS-485的网络拓扑一般采用终端匹配的总线型结构,即通常采用一条总线将各个节点串接起来,不支持环形或星型网络,因此,雷电引发的瞬变往往导致传输线上的多个RS-485收发器损坏,故防雷措施是RS-485技术实际使用中必须考虑的问题,也是提高系统可靠性一个十分重要的措施。 RS-485接收器差分输入端对“地”的共模电压允许范围为-7到+12V,超过此范围的过压瞬变可能会损坏器件。引起过压瞬变的来源通常是雷电、静电放电、电源系统开关干扰等,例如人体接触芯片的引脚而产生静电放电,其电压可以高达数十千伏,可以使工作中的器件产生闭锁而不能运行或使器件受损;而雷电感应在RS-485传输线上引起的瞬变干扰,其能量更可在瞬间烧毁连接在传输线上的全部器件 目前市场上有一些RS-485芯片通过在内部集成瞬变电压抑制二极管(TVS)来防过压瞬变。TVS的作用原理是当管子两端经受瞬态能量冲击时能极快地将其两端的阻抗降低,通过将能量吸收掉从而把其两端间的电压箝制在其标称值上,保护后端元件。受半导体工艺限制,集成到RS-485芯片上的TVS很难做到大功率,在雷击到来时,瞬态能量可以损坏内置的TVS,同时,瞬态电流产生的强磁场会使近距离的其他电路上感应出高电压,即形成所谓的反击,造成电路损坏。RS-485芯片上集成TVS的主要功能是为了消除静电,但不能防雷击浪涌。
以上为RS485总线的两级防护电路图。当雷击发生时,感应过电压由T与R端引入,G1.G2进行共模防护,G3进行差模保护,此时过电压被大大削弱到约500V左右,在经过电阻R1R2限流,TVS1/2/3二次限压后,到收发器的电压被钳制在6.8V左右,从而实现对收发器的保护。 G1/G2/G3 R1/R2 TVS1/2/3 比较 方案一 GS41-181N 10Ω/1W P6KE6.8CA 体积小/防护中/成本低 方案二 3R090 10Ω/1W P6KE6.8CA 体积大/防护高/成本高 方案三 P0640 10Ω/1W P6KE6.8CA 体积小/防护低/成本中 为了降低成本及体积,可不可以只采用一级防护? 答:不行。能承受大能量雷击的器件(如RS485)不可能一次将雷击电压钳制到芯片可以承受的水平。TVS虽然可以将雷击电压一次钳制到芯片可以承受的水平,但是不能承受大的雷击能量,因此必须两级防护。
DCDC电源隔离
独立电源,如果是不同电平系统,如通讯的5V到CPU系统的3.3V也起到隔离作用 485隔离串联电阻两重,先经过玻璃放电管,然后TVSTVS和玻璃放电管TVS距离485芯片管教近,玻璃放电管距离大地近 隔离区最好不掺入非隔离区电源 dcdc模块: DCDC隔离为485芯片供电和外围器件单独电源 包括光耦隔离485的一端 比如一款专用的DCDC直接输入12V,输出是两个电位,0V输出就相当于要隔离部分的地 RS-232/RS-485有源隔离转换器专用DC-DC电源模块 深圳市耀华电子有限公司是专业生产微功率、小体积、高效率、隔离DC-DC电源模块的高新技术企业,产品均采用性能优良的厚膜陶瓷电路制做,可与欧美著名品牌相媲美。 DY 05S05系列DC-DC电源模块专业用于RS-232/RS-485有源隔离转换器,本品具有可靠性高、小体积,高效率,高性价比等特点。输出功率有0.25W、0.5W、1W等,封装形式为SIP4。价格优惠。欢迎来电咨询及索取样片。 DY系列产品属隔离定压系列,该类产品具有体积小、效率高、高隔离电压、高可靠性、低价格等显著优点,其适用于数字信号处理电路及对电压稳定度要求不高的模拟电路,特别适用于分布式电源供电系统及使用小功率电源供电的电路。在对电压稳定度要求很高的电路和对纹波噪声敏感度要求很高的电路时,应采用WDY系列产品。 Yaohua DY XXSXX-W2、W5、1W系列的一般特性: 绝缘强度: 1000VDC 绝缘电阻(注1): 1000MΩ最小值 工作温度: -40℃85℃ 空载功耗: 30mW/60mW/100mW 平均无故障时间: >100万小时 工作频率 130KHz±20% 存储温度: -40℃125℃ 存储湿度: ≤95% 冷却方式: 自然空冷 外壳材料: 阻燃耐热塑料 *耀华DC-DC优质产品* 工作时温升: 20℃最大值,10℃典型值 Yaohua DY XXSXX-W2、W5、1W系列的输入特性: 输入电压类型: 5V、12V、15V、24VDC 输入电压充许变化范围: Vin±10% 最大输入电压值(注2): Vin+25%
也要考虑共地情况
不不共地的情况:比如,一次试验测量数据线相对于某些设备的地的电位为6点多伏,高于VCC 5V 此处的485和它上级或者下级共地 一个典型的错误观点就是认为RS-485通信链路不需要信号地,而只是简单地用一对双绞线将各个接口的”A”、”B”端连接起来。这种处理方法在某些情况下也可以工作,但给系统埋下了隐患,主要有以下两方面的问题:
- 共模干扰问题。的确,RS-485接口采用差分方式传输信号,并不需要相对于某个参照点来检测信号,系统只需检测两线之间的电位差就可以了。但应该注意的是,收发器只有在共模电压不超出一定范围(-7V至+12V)的条件下才能正常工作。当共模电压超出此范围就会影响通信的可靠,直至损坏接口。如图3所示,当发送器A向接收器B发送数据时,发送器A的输出共模电压为VOS,由于两个系统具有各自独立的接地系统,存在着地电位差VGPD。那么,接收器输入端的共模电压就会达到VCM=VOS+VGPD。RS-485标准规定VOS≤3V,但VGPD可能会有很大幅度(十几伏甚至数十伏),并可能伴有强干扰信号,致使接收器共模输入VCM超出正常范围,并在信号线上产生干扰电流,轻则影响正常通信,重则损坏接口。
- 电磁辐射(EMI)问题。驱动器输出信号中的共模部分需要一个返回通路,如果没有一个低阻的返回通道(信号地),就会以辐射的形式返回源端,整个总线就会像一个巨大的天线向外辐射电磁波。
软件设计
接收:中断;要有时间间隔检查机制 发送:循环或中断,要有检查总线是否繁忙的机制 初始化:关于UART通讯引脚的初始化,有的芯片SPEN置1之后还需要设定方向寄存器 比如73/4/6490都需要SPEN=1 TRISC<7.6>=1 1有的器件,比如6490和7x系列,UART都需要配置RC6 RC7方向,有的新器件不需要 PIC初始化 USART uses standard non-return-to-zero (NRZ) format (one START bit, eight or nine data bits, and one STOP bit). AVR器件中可以实现多种配置,带校验,一到两个停止位 接收超时检查机制: modbus 3.5个间距的保证 可采用(1/BAUD)*11*3.5的定时器监控总线,在总线数据倾听(接收)后清定时器然后打开定时器;若(1/BAUD)*11*3.5时间无接收数据时定时器溢出即可根据总线协议决定是否响应发送数据. 1/9600 1/9600×11×3.5,11为RTU模式下发送一个字节数据的位数,带奇偶校验的。 需要检查的定时器间隔: 至少这么多 最长间隔是这么长,不成超过这个间隔 大约4ms 个值可以是1~247之间的任 两个字符间隔检查时间1.5=1.71875ms=1718.75us 取定时器2us检查一次 共计数859次 太短了,单片机太累了。 取1716 143 12 20 143*2 90us 19次数 2us=(256-248)*1/4 90us/2=45 256-45=211 8分频 初值211 90US=(256-211)*8/4*1US 定时器 /* T0 initial 分频比率有:8分配 64分频 256分频 没有16分频 BasicInterval=(256-Pvalue)*Prescaler/Fosc*1us =(256-6)*1/4*1us 500us=(256-6)*8/4*1us choose this,integer 2ms=(256-131)*64/4*1us 8ms=(256-131)*256/4*1us 发送总线状态检查: 如果自己在接收,别的设备在发送,则总线忙;如果没有接收则可以置为空闲 如果自己在发送,则忙;发送完可切换为空闲 如果没有接收也没有发送,则为空闲 收发切换的延时: 在485芯片的通信中,尤其要注意对485控制端DE的软件编程。为了可靠的工作,在485 总线状态切换时需要做适当延时,再进行数据的收发。具体的做法是在数据发送状态下,先 将控制端置“1”,延时1ms左右的时间,再发送有效的数据,一包数据发送结束后再延时 1ms后,将控制端置“0”。这样的处理会使总线在状态切换时,有一个稳定的工作过程。
默认接收状态
默认都要接收状态
调试
用串口调试文件调试
防冲突设计
在非主从系统中药有防冲突机制
布线施工
严格几个施工规范: 485+和485-条数据线一定要互为双绞. 布线一定要布多股屏蔽双绞线,多股是为了备用,屏蔽是为了出现特殊情况时调试,双绞是因为485通讯采用差模通讯原理,双绞的抗干扰性最好.不采用双绞线,是极端错误的. 485总线一定要是手牵手式的总线结构,坚决杜绝星型连接和分叉连接. 设备供电的交流电及机箱一定要真实接地,而且接地良好. 有很多地方表面上有三角插座,其实根本没有接地,要小心.接地良好时,可以确保设备被雷击 浪涌冲击 静电累计时 可以配合设备的防雷设计较好地释放能量.保护485总线设备和相关芯片不受伤害. 避免和强电走在一起,以免强电对其干扰. 通讯线必须采用国际通用的RVVSP(超五类屏蔽双绞线),这样可有效防止 和屏蔽干扰。用于 485 总线的屏蔽双绞线的型号为RVVSP2、4、8(1 对、2 对、4 对双绞线,带屏蔽) 。通讯线单线截面不小于 0.55mm2 ,一般应采用0.75mm2。长总超过2km,时,应使用单线截面1.0mm2或更大的线。 我们推荐用的屏蔽双绞线的型号为RVSP2*0.5(二芯屏蔽双绞线,每芯由16股的0.2mm的导线组成)。采用屏蔽双绞线有助于减少和消除两根485通信线之间产生的分布电容以及来自于通讯线周围产生的共模干扰。 工程商大都习惯采用5类网线或超5类网线作为485通信线,这是错误的。这是因为: (1)普通网线没有屏蔽层,不能防止共模干扰。 (2)网线只有0.2mm平方,线径太细,会导致传输距离降低和可挂接的设备减少。 (3)网络线为单股的铜线,相比多芯线而言容易断裂 485布线注意事项: 1、485通信线必须用屏蔽双绞线,最好多股备用,总长不超过1200米。 2、布线尽量远离高压电线,不要与电源线并行,更不能捆扎在一起。 3、485总线一定要是手牵手式的总线结构,坚决杜绝星型连接和分叉连接。 4、超出30台控制器或线长大于500米,必须采用485中继器。 5、交流供电的设备及机箱一定要真实接地,而且接地良好。 6、用屏蔽线将所有485设备的GND地连接起来。 7、在最后一台485设备的485+和485-上并接 120欧姆的终端电阻。 1。485总线应采用什么样的通讯线 必须采用国际上通行的屏蔽双绞线。我们推荐用的屏蔽双绞线的型号为RVSP2*0.5(二芯屏蔽双绞线,每芯由16股的0.2mm的导线组成)。采用屏蔽双绞线有助于减少和消除两根485通信线之间产生的分布电容以及来自于通讯线周围产生的共模干扰。 工程商大都习惯采用5类网线或超5类网线作为485通信线,这是错误的。这是因为: (1)普通网线没有屏蔽层,不能防止共模干扰。 (2)网线只有0.2mm平方,线径太细,会导致传输距离降低和可挂接的设备减少。 (3)网络线为单股的铜线,相比多芯线而言容易断裂。 2。 为什么要接地 485收发器在规定的共模电压-7V至+12V之间时,才能正常工作。如果超出此范围会影响通讯,严重的会损坏通讯接口。共模干扰会增大上述共模电压。消除共模干扰的有效手段之一是将485通讯线的屏蔽层用作地线,将机具、电脑等网络中的设备地连接在一起,并由一点可靠地接入大地。 4。485通信线应如何走线? 通信线尽量远离高压电线,不要与电源线并行,更不能捆扎在一起。 5。为什么485总线要采用手拉手结构,而不能采用星形结构? 星形结构会产生反射信号,从而影响到485通信。总线到每个终端设备的分支线长度应尽量短,一般不要超出5米。分支线如果没有接终端,会有反射信号,对通讯产生较强的干扰,应将其去掉。 。485总线上设备到设备之间可以有接点吗? 在同一个网络系统中,使用同一种电缆,尽量减少线路中的接点。接点处确保焊接良好,包扎紧密,避免松动和氧化。保证一条单一的、连续的信号通道作为总线。 7。什么叫共模干扰和差模干扰?如何消除通讯线上的干扰? 485通信线由两根双绞的线组成,它是通过两根通信线之间的电压差的方式来传递信号,因此称之为差分电压传输。 差模干扰在两根信号线之间传输,属于对称性干扰。消除差模干扰的方法是在电路中增加一个偏值电阻,并采用双绞线; 共模干扰是在信号线与地之间传输,属于非对称性干扰。消除共模干扰的方法包括: (1)采用屏蔽双绞线并有效接地 (2)强电场的地方还要考虑采用镀锌管屏蔽 (3)布线时远离高压线,更不能将高压电源线和信号线捆在一起走线 (4)不要和电控锁共用同一个电源 (5)采用线性稳压电源或高品质的开关电源(纹波干扰小于50mV)
什么情况下在485总线上要增加终端电阻?
一般情况下不需要增加终端电阻,只有在485通信距离超过100米的情况下,要在485通讯的开始端和结束端增加终端电阻。 在应用系统工程的现场施工中,由于通信载体是双绞线,它的特性阻抗为120Ω左右, 所以线路设计时,在RS-485网络传输线的始端和末端各应接1只120Ω的匹配电阻(如图1中 R8),以减少线路上传输信号的反射。 终端120欧姆电阻是接在该条485总线的最远端,防止信号反射干扰,类似于局域网的终结器 在RS485组网过程中另一个需要主意的问题是终端负载电阻问题,在设备少距离短的情况下不加终端负载电阻整个网络能很好的工作但随着距离的增加性能将降低。理论上,在每个接收数据信号的中点进行采样时,只要反射信号在开始采样时衰减到足够低就可以不考虑匹配。但这在实际上难以掌握,美国MAXIM公司有篇文章提到一条经验性的原则可以用来判断在什么样的数据速率和电缆长度时需要进行匹配:当信号的转换时间(上升或下降时间)超过电信号沿总线单向传输所需时间的3倍以上时就可以不加匹配。 一般终端匹配采用终端电阻方法, RS-485应在总线电缆的开始和末端都并接终端电阻。终接电阻在RS-485网络中取120Ω。相当于电缆特性阻抗的电阻,因为大多数双绞线电缆特性阻抗大约在100~120Ω。这种匹配方法简单有效,但有一个缺点,匹配电阻要消耗较大功率,对于功耗限制比较严格的系统不太适合。
一次实验 总线上 断电设备对总线的影响试验
一次试验验证,一些设备断电对总线的影响:数据线或地为未通电的设备供电了 如果共地,则正数据和地构成电源,很明显发现正数据电平由4点多伏明显降低为1点多伏上拉下拉电阻也是导致正负数据线构成回路的因素,插上一个不通电的,正数据有降,负数据有升高485芯片内部本身也应该造成了回路,这是不可避免的部分 确定的趋势:插上不通电的设备,高电平下降,低电平升高 不共地的话有地点胃肠共地的话又出现明显的这种情况怎么办?DCDC隔离,浮地? 供电电源与数据线电平试验 目的:如题 方法: 三串对应三块电源 先测量三串都通电条件下数据线的电平 然后分别单独断开每一串的电源测试其他串数据线的电平 过程与数据:
轮数
第一串典型值
第二串典型值
第三串典型值
一轮:都通电
高:4.07低:2.62
高:5.21低:3.78
高:2.98低:1.51
二轮:只断开第一串电源
高:4.77低:3.92
高:2.71低:1.79
三轮:只断开第二串电源
高:3.83低:2.76
高:2.85低:1.68
四轮:只断开第三串电源
高:3.78低:2.78
高:4.84低:3.87
五轮:只保留第一串电源
高:3.59低:2.89
六轮:只保留第二串电源
高:4.55低:4.0
七轮:只保留第三串电源
高:2.56低:1.93
分析: ----―――――――趋势: 断开某一串的电源,其他串数据线电平高电平降低,低电平升高 ---――――――――特别: 第一轮中数据线高电平超过5V? 第三串中高电平过低? 第六轮中低电平太高? 高低压差太小? 地的电压差 第一串与第二串:第一串高第二串1.17 第二串与第三串:第二串低第三串2.26