一、电路.
1.1.RS485通讯标准协议.
相信RS485通讯标准大家都已经熟悉了,也不再多说。下面的说明部分在网上广为流传,就抄抄下来吧。
典型的串行通讯标准是RS232和RS485.它们定义了电压,阻抗等。但不对软件协议给予定义,区别于RS232, RS485的特性包括:
a. RS-485的电气特性:逻辑“1”以两线间的电压差为+(2—6) V表示;逻辑“0”以两线间的电压差为-(2—6)V表示。接口信号电平比RS -232-C降低了,就不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL 电路连接。
b. RS-485的数据最高传输速率为10Mbps
c. RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干能力增强,即抗噪声干扰性好。
d. RS-485接口的最大传输距离标准值为4000英尺,实际上可达 3000米。 RS-485接口在总线上是允许连接多达128个收发器,因RS-485接口具有良好的抗噪声干扰性,长的传输距离和多站能力等上述优点就使其成为首选的串行接口。因为RS485接口组成的半双工网络 ,一般只需二根连线,所以RS485接口均采用屏蔽双绞线传输。
1.2. 典型的RS485通信芯片
以TI为例,通常所用的BC184,内置TVS保护,具有15KV静电防护能力;稍差一点的BC182,则可以防护至8KV ESD冲击;而3082,则只能承受4KV ESD冲击。在选用485芯片时,需注意其ESD防护能力,驱动能力,对485总线差分信号的定义等。
1.3. 485应用电路举例。
如下图:
a. A/B线需拉上下拉,保证总线空闲时,A/B差分信号仍是确定状态,避免杂讯影响。上/下拉电阻取得小,则负载加重,会影响485总路线上节点数量;而取得大,则会影响数据传输的波特率。,一般在几K到几十K之间,具体还在看应用电路的需求。(比如此电路中上/下拉取值为3.3K,在实际带载测试(1200bps)时,485总线上只能挂十几外负载;而换成47K,则可以挂到一百多个负载;但若要在9600bps下通信,则上/下拉要小一些才行,目前的试验发现,10K基本上已经是极限了)
b. 对地TVS用作ESD防护。
c. 尽量不要以上/下拉电阻来驱动负载,最好单独用一路信号控制使能端,以充足发挥IC的驱动能力。
d. V485输出能力要足够。因工业应用领域,485总路线上有可能同时接很多节点,此时A/B线对外输出电流会比较大,若V485前端供电电路输出不够,则差分电压不够而导致无法正常通信。
二、接口防护设计
2.1 ESD防护
以TI 3082为例,芯片本身只能保证4KV HBM的ESD防护,而系统要求为8KV接触放电,此时就需要在A/B线间对地加TVS来保护芯片。TVS管尽量选用高速、低容值、大通流量的,当然够用就好,不必追求过高的性能。启动电压和截止电压选取要恰当,以防止TVS误动作,而干扰485的正常通信(还要考虑到485总线上的共模电压部分)。
在进行PCB布板时,尽量使V485靠近电源输出端,使电源线路尽量短;要保证接线良好,TVS管接地路径也要尽量短。同时在V485前端供电电路输出端,应采用大电容并小电容的方式,平滑输出的同时,还能吸引部分ESD带来的高压尖峰。
总之,好的ESD防护,是用正确的器件以及合理的PCB Layout来实现的。
顺便说说,通常ESD冲击到来,会造成三种类型的芯片损伤。一是击穿,这种是不可恢复的。二是Latch-up,这种重新上电后又会消失,但长时间latch-up状态,则会使芯片烧毁。三是软损伤,这种损伤并不会使芯片马上失效,但会使芯片可靠性降低,这种损伤最隐性,往往要到客户现场合用过一段时间后才会发现,这种损伤是最应该避免的。曾经我们有一款产品,做ESD测试都能过,但往往在客户端使用一段时间后就会出现问题,后来分析才发现是ESD冲击导致芯片软损伤的结果。
2.2 高压防护
很多系统还会要求485接口能耐受市电或者工业电直接接入,保证数分钟通电不损坏。这样的要求是为了保证在应用现场,工作人员不慎将交流电接入到485端口上时,不致引发485电路的损坏。
以本电路为例,以两路PTC+TVS管形成回路,当有大的交流电压灌入时,PTC开始发热,进而形成高阻,保证后续电路。
在布板时,应注意在PTC和TVS管的通路间的线宽要足够大(通常0.5mm线宽可通过1A电流,具体因PCB不同而不同。),以承受大电流的通过。
2.3 高压高频电磁脉冲防护
A/B线对地的TVS能起到一定的保护作用,但更重要的是PCB布板合理,防止高频高压脉冲耦合进内部线路,这部分可参考高频电路的布板。
2.4 高压冲击防护
这部分防护,一是布板时要留足爬电距离;二是光耦及变压器(有些系统是采用外置电源供电,同理)的隔离效果要好。
三、应用
RS485的理论通信距离可达1200m,速率可达几Mbps,通讯节点可达256个(不同的芯片会有不同,也有支持四五百个节点的产品)。但在实际应用中受电路、接线方式及应用环境影响很大。下面重点说说接线方式(这部分是从网上摘抄的,大家将就着看吧)。
3.1 线材: 采用特性阻抗120±20%欧姆,截面积0.5平方毫米带屏蔽双绞线电缆作总线。(注意此阻值并不特指线路纯电阻,而是特定频率下的线路阻抗,通常485的通信频率在1.2K到几百K之间。)
3.2 布线规则:485总线要采用手拉手结构,而不能采用星形结构,从总线到每个节点的引出线长度应尽量短。
3.3 连续性:应注意总线特性阻抗的连续性,在阻抗不连续点就会发生信号的反射,造成通讯可靠性下降,所以,应该使用一条单一、连续的双绞线作为总线。下列几种情况易产生这种不连续性:
a,总线的不同区段采用了不同电缆。
b,或某一段总线上有过多读卡器紧靠在一起安装。
c,分支线到总线的距离过长。
3.4 阻抗匹配:在RS485组建网络过程中另一个需要注意的问题是终端负载电阻问题,一般终端匹配采用终端电阻方法, RS-485应在总线电缆的开始和末端都并接120Ω终端电阻。
3.5 中继:理论上RS485的最长传输距离能达到1200米,但在实际应用中由于外界的确一些干扰等因素,传输的距离要比1200米短,具体能传输多远视周围环境而定,在传输过程中可以采用增加中继的方法对信号进行放大,延长传输距离。
3.6 接地:将485通讯线的屏蔽层用作地线,将读卡器、RS232-RS485转换器、电脑的地连接在一起,并且将RS485通讯线屏蔽层可靠接地,可接到建筑物避雷器的接地连接线上,接地连接线建议使用截面积4平方毫米以上多股铜线,从通讯线屏蔽层到建筑物避雷器的连接线尽可能短,并且连接时注意一定要可靠,连接点注意防锈。当使用光电隔离型中继器做线路延长或者分支时,各个分支的屏蔽层没有直接连接,此时,每个分支的屏蔽层都应该独立接地,接地要求同上。在同一条总线上或者同一个分支上,只能有一个接地点。