2.3故障保护和失效保护2.3.1故障保护 和其它任何系统设计一样,必须习惯性的考虑故障应对措施,不论这些故障是自然产生还是因环境诱导产生。对于工厂控制系统,通常要求对极端噪声电压进行防护。485提供的差分传输机制,特别是宽共模电压范围,使得485对噪声具有一定的免疫力。但面对复杂恶劣环境时,其免疫力可能不足。有几种方法可以提供保护,最有效的方法是通过电流隔离,后面会讨论这个方法。电流隔离能够提供更好的系统级保护,但是价格也更高。更流行并且比较便宜的方案是使用二极管保护。使用二极管方法代替电流隔离是一种折衷方法,在更低层次上提供保护。外接二极管和内部集成瞬态保护二极管的例子如下图所示: 图5所示485收发器SN75LBC176外接二极管来防止瞬态毛刺。
图5:噪声环境中的输入保护 RT通常是终端匹配电阻,等于电缆特性阻抗R0。 图6所示内部集成瞬态抑制二极管的485收发器SN75LBC184,用于既希望使用完整485功能,PCB空间又受限的场合。SN75LBC184在内部集成了保护二极管,针对高能量电气噪声环境,可直接替换SN75LBC176。
图6:集成瞬态电压保护,用于噪声环境 2.3.2失效保护 许多485应用也要求提供失效保护,失效保护对于应用层是很有用的,需要仔细考虑并充分理解。 在任何多个驱动器/接收器共用同一总线的接口系统中,驱动器大多数时间处于非活动状态,这个状态被称为总线空闲状态。当驱动器处于空闲状态时,驱动器输出高阻态。当总线空闲时,沿线电压处于浮空状态(也就是说,不确定是高电平还是低电平)。这可能会造成接收器被错误地触发为高电平或低电平(取决于环境噪声和线路浮空前最后一次电平极性)。显然,这种情况是不受欢迎的。在接收器前面需要有相关电路,将这种不确定状态变成已知的、预先约定好的电平,这称之为失效保护。此外,失效保护还要能防止因短路而引起的数据错误。 有很多方法可以实现失效保护,包括增加硬件电路和使用软件协议。尽管软件协议实现起来比较复杂,但这是优先推荐的方法。但是因为大多数系统设计师、硬件设计师更喜欢使用硬件实现失效保护,增加硬件电路实现失效保护更经常被使用。 无论出现短路还是开路情况,失效保护电路必须为接收器提供明确的输入电压。如果通讯线所处环境非常恶劣,则线路终端匹配也是必须的。 目前很多厂商开始将一些失效保护电路(如开路失效保护)集成到芯片内部。通常这些额外的电路只是在接收器同相输入端增加一个大阻值上拉电阻、在接收器反相端增加一个大阻值下拉电阻。这两个电阻通常在100KΩ左右,这些电阻和终端匹配电阻形成一个潜在的驱动器,仅能提供几个mV的差分电压。因此,这个电压(接收器临界电压)并不足以切换接收器状态。使用这样的内部上下拉电阻允许总线不进行终端匹配,但是会显著的降低最大信号速率和可靠性。 图7给出了一些485接口通用外置失效保护电路,每个电路都尽力维持接收器输入端电压不小于最小临界值并在一个或多个故障条件(开路、空闲、短路)下,维持一个已知的逻辑状态。在这些电路中,R2代表传输线阻抗匹配电阻,并成为电压驱动器的一部分:产生稳态偏置电压。这里假设每个接收器代表1个单位负载。 图7右半部分的表格中列出了一些典型电阻和电容值、提供的失效保护类型、使用的单位负载个数和信号失真。在下一节中,会通过对短路失效电路中的电阻值计算,来说明如何修改这些电阻值以便适用于特定设计。
图7:外部485失效保护电路 要实现短路保护,需要更多的电阻。当电缆短路时,传输线阻抗变为零,终端匹配电阻也背短路。在接收器输入端串联额外的电阻可以实现短路失效保护。 图8所示的额外电阻R3仅能用于驱动器和接收器分离的场合。现在的绝大部分485驱动器和接收器都集成到一个芯片上(称之为收发器),并且在内部连接到同一个总线上,这种收发器不可以使用短路失效保护。如果需要进行短路保护,可以选择内部集成短路保护的收发器或者使用驱动器和接收器分离的器件,比如SN75ALS180。如果在收发器使用短路失效保护电路,则电阻R3会引起输出信号额外的失真。驱动器和接收器分离的器件SN75ALS180不会有这个问题,因为驱动器是直接连到总线上的,旁路掉了R3。
图8:短路/开路失效保护电路 下面对电阻值经行计算。如果传输线短路,R2从电路中移除,则接收器输入端电压为: VID= VCC * 2R3 / (2R1 + 2R3) 对于485应用,标准规定接收器可识别最低至200mV的输入信号。因此当VID> VIT或者VID > 200mV,能够确定一个已知状态。这是第一个设计约束条件: VCC* 2R3 / (2R1 + 2R3) > 200mV 当传输线上为高阻态时,接收器受到R1、R2和R3的影响,其输入电压为: VID= [url=]VCC* (R2 + 2R3) / (2R1 + R2 + 2R3)[/url] 得到第二个设计约束条件: VCC * (R2 + 2R3) / (2R1 + R2 + 2R3) > 200mV 传输线会受终端匹配电阻R2与两倍的(R1+R3)并联影响。传输线的特性阻抗Zo与之相匹配,这得到第三个设计约束条件: Zo= 2R2 * (R1 + R3) / (2R1 + R2 +2R3) 其它设计约束条件包括由失效保护电路提供的额外线负载、由R3和R1引起的信号失真以及接收器输入电阻。 注:SN75HVD10等3.3V 485收发器以及更新产品内部集成了短路/开路失效保护电路。 2.4电流隔离 计算机和工业串行接口往往处于噪声环境中,可能会影响数据传输的完整性。对于任何接口电路,经过测试的可以改善噪声性能的方法是电流隔离。 在数据通讯系统中,隔离是指多个驱动器和接收器之间没有直接电流流通。隔离变压器为系统提供电源,光耦或数字隔离器件提供数据隔离。电流隔离可以去除地环流,抑制噪声电压。因此,使用这种技术可以抑制共模噪声,降低其它辐射噪声。 举一个例子,图9显示了过程控制系统的一个节点,通过485链路连接数据记录器和主计算机。 当临近的电动机启动时,数据记录器和计算机的地电势会出现瞬间不同,这通常会引起一个大电流。如果数据通讯没有采用隔离方案,数据可能会丢失,更坏的情况下会损害计算机。 2.4.1电路描述 图9所示的原理图是分布式监视、控制和管理系统的一个节点,这种方案通常用于过程控制。数据通过一对双绞线传输,地线使用屏蔽层。这类应用常常需要低功耗,因为许多远程分站使用电池或者要求有备用电池(电容停电后,需要设备能使用备用电池工作一定时间)。此外,使用低功耗计数,可以使用小型隔离变压器。如图9所示,收发器使用SN65HVD10,当然任何TI公司3.3V或5V RS485收发器、3.3-V TIA/EIA-644 LVDS或者3.3-V TIA/EIA-899 M-LVDS收发器都可以使用这个电路。 2.4.2操作原理 图9所示的例子可用于3.3V或5V,电源使用变压器隔离,数据信号采用数字隔离器隔离。因为485收发器需要隔离电源,可调LDO稳压器必须被隔离。可以使用与非门振荡电路驱动隔离变压器实现这一功能。变压器的输出电压经过调整、滤波后,供低压差线性稳压器使用。在高EMI环境中,这种方法常用于预防其它远距离供电子系统的噪声耦合到主电源。TPS7101用于给其它电子元件供电,最多提供500mA电流。通过调节偏置电阻R7,TPS7101可输出3.3V或5V,具体阻值见BOM清单。 数据信号隔离又三通道数字隔离器ISO7231M完成。该设备可以通过150Mbps信号速率,提供2.5KV(rms)电压隔离和50KV/us瞬间放电保护。
图9:[url=]3.3V[/url]或5V隔离485节点(左边是大地地平面,右边是隔离地平面) 表1:3.3V或5V隔离485节点BOM清单 3.过程控制设计举例
为了获得更多485系统设计知识,一个比较好的方法是看具体的例子。考虑这样一个系统:系统容量为1个主控制器、数个分站的工厂自动化系统,每个分站都可以发送和接收数据。 系统特性如下所示,通用规格见图10。
- 最远分站距主控制器500米
- 31台分站(加上主机共32台设备)
- 信号传输速率为500 kbit/s
- 半双工通讯
图10:过程控制设计举例 遵循485标准的设备以500 kbit/s传输数据,要求驱动器输出渡越(上升/下降)时间tt不能大于0.3个单位间隔时间(UI),所以有: tt≤ 0.3 * UI tt≤ 0.3 * (1 /(500 * 103) ) = 600ns 如果电缆传输信号速度等于光在真空中的传播速度,则信号传输延时tpd为3.33ns/m,乘以传输线长度500米,为1667ns。 根据2.1节的公式可以确定传输线是分布式参数模型还是节点参数模型:若2tpd ≥ tt/5,则认为传输线为分布式参数模型。显然,3334 > 120,所以本例的传输线模型为分布式参数模型。在工业环境中,这种传输线必须要终端匹配。 关于衰减,尽管信号速率为500 kbit/s的基本频率为250 kHz,我们仍然按照500 kHz来计算衰减,这是因为信号中其实包含更高频的部分。根据最大衰减不要超过-6dB的经验法则,要求500米电缆末端最大衰减小于-6dB,即0.36dB/30米。我们查看图3所示的图表,这是电缆厂商提供的衰减与频率关系的图表,500 kHz频率对应的衰减为0.5dB/30米还要多一些,超过设计约束条件0.14dB/30米。在本例中这是允许的,因为稍微减少保守规则提供的噪声容限是可以接受的。
|