- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
高可靠性隔离型RS422接口的设计方案
摘要:以工控环境中的分布式监测系统为应用背景,设计和实现了一种高可靠性隔离型RS422通信接口方案。方案中采用了隔离、防浪涌、阻抗匹配、奇偶校验、帧校验等多种软硬件措施来提高接口的可靠性。经环境试验和电磁兼容试验验证,该方案很好得解决了监测系统中各个传感器节点和接入节点之间的可靠通信问题。
1 引言
现代工业测控系统中,系统之间以及系统内部经常需要进行数据通信。通信分无线和有 线两种方式,由于无线通信的可靠性不及有线通信,因此在工业环境中一般选用有线通信。 对于有线通信既可以采用并行数据总线方式进行,也可以采用串行数据总线方式来进行,不 同的总线适合不同的应用环境。一般我们在设计接口方案的时候,总是在满足系统需求的前 提下选择成熟稳定可靠且易于实现接口方案。
在我们开发的分布式监测系统中,传感器节点需要尽可能将信号无失真稳定可靠得传 输到接入节点。从通信的可靠性考虑我们放弃了布点灵活方便的无线通信方式,选择了有线 通信。考虑到实际的应用情况,传感器需要分布在监测范围的各个角落,各个传感器与接入 节点直接的通信距离不一,从几米到上百米均有可能。如果传感器和接入节点直接选用模拟 信号直接传输的方式,对于那些传输距离远的传感器节点,其信号衰减会很严重,信噪比会 降低很多,同时传输过程中也会引入干扰,因此传感器节点需要将采集到的信号数字化,然 后通过数字接口将信号发送出去。由于数字信号抗干扰性强,可以无失真的传输,因此信号 失真只存在传感器对其数字化的过程中。有线数字通信的方式比较多,如果采用并行数据总 线,那么传感器节点和接入节点之间的连线数量会较串行总线大大增加,会给布点带来不便 和增加成本,因此在工程上长距离通信时一般都采用串行通信。由于分布式监测系统中传感 器节点和接入节点之间的通信对传输距离有一定要求,对可靠性要求高,但对通信速率要求 不高,最后我们选用了实现简单、抗干扰性强、通信距离远的RS422接口。虽然RS422采用的 是差分传输方式,抗干扰能力强,但如果只是简单的采用一般的设计方案,在温湿度及电磁 环境十分恶劣的工业环境下仍会出现接口故障甚至损坏,因此有必要从软硬件上面引入更多 的抗干扰、保护、侦错等措施来提高接口的可靠性。
2 RS422 标准及分布式监测系统介绍
RS422是一种在工程中广泛使用的接口标准,它采用差分传输方式,也称为"平衡传输",标准全称是"平衡电压数字接口电路的电气特性"。可见RS422定义的是接口电路的电气特 性,而对数据格式没有做定义。RS422是全双工通信,通信的双方均含有一个发送驱动器和 接收驱动器。其中接收驱动器的两个平衡线连接端点定义为A和B,发送驱动器的两个平衡线 连接端点定义为Y和Z,一般使用平衡双绞线将一端的Y和A、Z和B连接起来。通常情况下,发 送驱动器端Y、Z之间的正电平在+2~+6V,代表正逻辑,负电平在-6~-2V,代表负逻辑。在 接收端,当A、B之间有大于+200mV 的电平时,输出正逻辑电平,小于-200mV 时,输出负逻 辑电平。RS422最大传输距离为4000英尺(约1219米),最大传输速率为10Mb/s。其中平衡双 绞线的长度与传输速率成反比,在100Kb/s速率下,才能达到最大传输距离。只有在很短的 距离下才能获得最高速率传输。一般100米长的双绞线能获得的最大传输速率为1Mb/s。
本文中所设计的RS422接口方案主要用于工控环境中的分布式监测系统,此系统的结构 示意图如图1所示。该系统主要可分为四个层次结构:服务器、交换机、接入节点、传感器 节点。其中传感器节点负责采集信号,首先对信号进行放大和抗混叠滤波,然后通过A/D芯 片将模拟信号转换为数字信号,最后通过RS422接口将采集到的数据传送给接入节点;接入 节点一方面负责接收来自服务器的命令,对各个传感器节点进行管理,另一方面将来自于近 端的各个传感器节点的有效数据通过以太网接口发送给远端的服务器;交换机主要作用是将 服务器和各个接入节点通过以太网连接起来;服务器则负责数据的接收、分析、存储并显示 结果以及对整个系统的管理。
3 RS422 接口硬件电路设计
为保证接口的可靠性,电路设计中要考虑到芯片的选择、接地、阻抗匹配、电气保护等 问题。市面上可供选择的RS422接口芯片种类很多,为了防止瞬态高压对接口的破坏以及有 效隔离各个系统模块直接的相互干扰,本方案选用的是美信公司的隔离型RS422接口芯片 MAX1490 AEPG。采用隔离的设计方案可以将瞬态高压转移到隔离接口中的电隔离层上,由于 隔离层的高绝缘电阻不会产生损害性的浪涌电流,可以有效防止浪涌及静电对接口的损害。
MAX1490A转换速率可达5.5Mbps,隔离电压可以到2500V,可以承受高电压持续时间较长的瞬 态干扰。同时MAX1490A是将高频变压器、光耦、MAX490等元件集成到一个IC里面的单芯片, 电路实现起来也比较容易。MAX1490 AEPG是MAX1490A系列中的一款工业级芯片,使用温度范 围较商用级更广,为-40°C 到 +85°C。使用MAX1490AEPG设计的电路原理图如图2:
图2 MAX1490A 硬件电路图
此原理图参考了MAX1490A的数据手册的典型应用电路图。其中接口电路采用5V供电,C1、 C2是去耦电容,R3、R5、R6、R8取数据手册建议参考值。R1、R2为匹配电阻,可以降低信号 反射。R1、R2的取值取决于采用的传输数据线的阻抗,通常数双绞线特性阻抗大约在100 至 120 之间,所以R1、R2通常取120欧姆。实际应用中,匹配电阻并不一定需要。由于接收器 是在每个数据位的中点采样数据的,只要反射信号在开始采样时衰减到足够低就可以不考虑 匹配。具体而言R1、R2是否需要取决于数据传输速率、电缆长度及信号转换速率,有一条经 验性的准则可用来判断在什么样的数据速率和电缆长度时需要进行匹配:当信号的上升或下 降时间超过电信号沿总线单向传输所需时间的3倍以上时就可以不加匹配。例如对MAX1490A 而言,输出信号的上升或下降时间典型值为15ns,通常双绞线上的信号传输速率约为 0.2m/ns, 当电缆长度不超过1米的时候可以不用焊接R1、R2。RS422接口的接地是一个非 常重要的问题,接地处理不当经常会导致不能稳定工作甚至危及系统安全,没有一个合理的 接地系统可能会使系统的可靠性大打折扣,尤其是在工作环境比较恶劣的情况下对于接地的 要求更为严格。很多设计者认为RS422采用差分传输,通信链路可以不需要信号地,从而只 是简单地用一对双绞线将对应数据端口连接起来。这种接线方法在一般情况下也可以工作, 但给系统埋下了极大的隐患,主要会导致EMC和共模干扰导致数据出错两个问题。RS422 接 口采用差分方式传输信号,只需检测两线之间的电位差就可以判断数据值,但前提是收发驱 动器只有在共模电压不超出一定范围(-7V 至+12V )的条件下才能正常工作,当共模电压 超出此范围就会导致接收驱动器接收数据出错,甚至有可能损坏接口。另外驱动器输出信号 中的共模部分需要一个返回通路,如果没有一个低阻的返回通道(信号地),就会以辐射的 形式返回源端,整个总线就会像一个巨大的天线向外辐射电磁波,同样传输线也很容易受到 外界的电磁干扰。因此图2中的RS422接口的隔离地线需要通过传输线缆的屏蔽层连接起来, 另外在设计PCB布线和覆铜的时候需要注意将信号地和隔离地之间保持一定的距离,最好在 芯片下面的PCB导一个长方形的槽,这样可以有效防止爬电,以保证MAX1490A的2500V隔离效 果。稳压管D1~D8的作用是把数据传输线的电压牢牢限制在-7V至+12V,以有效保护RS422 接口。增加D9和D10的目的主要是为了防止浪涌电压损坏接口。
来源:微计算机信息 [p]
4 通讯接口的软件实现
RS422标准只对接口的电气特性做出规定而不涉及协议,因此我们可以定义自己的高层 通信协议。在本设计方案中,传感器节点和接入节点在底层以字节为单位通信,采用ASCII 协议,数据长度为11位:1位起始位+8位数据+1位偶校验+1位停止位。在上层协议中采用数 据包为单位通信。通信协议中使用了三种通信数据包:数据包、命令包和应答包。其中数据 包定义为:长度为100个字节,前面98个字节为数据字节,后面2个字节为校验字节,校验字 节为前98个字节以每2个为一组进行异或所得值;命令包定义为:长度为10个字节,第1个字 节固定为0X02,代表这个数据包为命令包,第2个字节为命令类型标志字节,用来表明命令 的类型,如请求发送数据命令、请求发送状态命令等。第2到第7字节为保留字节,暂时没有 定义,固定为0,可以留待以后扩充功能。最后两个字节为校验字节,校验字节为前8个字节 以每2个为一组进行异或所得值;应答包定义为:长度为10个字节,第1个字节固定为0X01, 表明这个数据包为应答包,第2字节为接收是否正常标志字节,为0X01代表正常,0X00代表 不正常。第3字节为接入节点和服务器通信故障是否错误标志字节,值0X01代表正常,0X00 代表故障。第3到第7字节为保留字节,暂时没有定义,固定为0,留待以后扩充功能。最后 两个字节为校验字节,校验字节为前8个字节以每2个为一组进行异或所得值。每种数据包均 引入字节偶校验和帧校验,这样可以有效得检测到通信中的数据错误。
本系统中,传感器节点和接入节点可双向通信,考虑到实际情况下主要是传感器节点通过RS422接口向接入节点发送大量的数据,而接入节点主要向传感器节点发送少量的状态和命令,协议中设计了两种通信模式。
通信模式A:接入节点主动发起通信,接入节点首先主动发送一个请求传感器节点发送 数据的命令包给传感器节点,传感器节点收到此命令包后发送一个数据包给接入节点,完成一次通信,接入节点负责无应答错误和数据错误的检查。此模式下接入节点端程序流程图如图3左图所示,传感器节点端接收流程图如图3右图所示。
图3:模式A接入节点端程序流程图(左)与传感器节点端流程图(右)
通信模式B:传感器节点主动发起通信,传感器节点首先发出数据包给接入节点,接入节点收到数据包后发送一个应答包,传感器节点收到应答包后完成一次通信,无应答错误和数据错误的检查由传感器节点负责。此模式下传感器节点端程序流程图如图4左图所示,接入端接收流程图如图4右图所示。
图4:模式B接入节点端程序流程图(左)与传感器节点端流程图(右)
正常情况下,接入节点与传感器节点均处于接收状态。当接入节点主动发起通信时进入 通信模式A,当传感器节点主动发起通信时进入通信模式B。
实际做稳定性测试时,采用一台普通PC机作为上位机服务器,传感器节点循环发送三角 波数据,服务器显示三角波波形,传感器节点和服务器均记录传输的数据包数量,系统连续 运行8小时,实验结果显示服务器收到的数据包数目和传感器节点发送的数据包数目相同, 数据传输丢失率为0.0%。另外在整个系统做高温、低温、湿热等环境试验和静电放电、浪 涌冲击、电场辐射抗扰度、工频磁场抗扰度等电磁兼容可靠性试验中,RS422接口也表现十 分可靠,没有出现差错。
5 总结
本设计方案在芯片选型上选用了美信公司的隔离型RS422芯片MAX1490AEPG,可以有效从 电气上隔离系统各个子模块的相互干扰,电路设计上考虑了接口两侧接地的隔离距离以防止 爬电,两个对接的RS422接口共地可以很好的抑制传输线的共模电压干扰以及取得良好的EMC 性能,传输线终端的匹配电阻可以减少信号的反射,增加稳压和瞬态抑制二极管可以解决防 浪涌、静电放电等问题;在通信协议设计中引入的字节的偶校验、数据帧的校验可以有效得 检测数据出错,无应答计数器和数据错误计数器的引入可以侦测到通讯线路故障和批量数据 出差以及避免软件死锁,采取以上措施使RS422接口的通信可靠性得到极大的保障。该设计 方案可以广泛用于对可靠性有一定要求的工控、医疗、军事场合。
本文作者创新点:本文提出的接口设计方案在硬件上对普通的RS422接口电路进行改善,在 软件上亦加入了多种检错措施。从软硬件两方面整体来提高RS422接口的可靠性,使其在恶 劣的工控环境更加稳定可靠。
(作者:匡敬辉 阎兆立 王景彬 程晓斌 中国科学院声学研究所)
来源:微计算机信息