
RS串口通信技术.doc
10页RS485 串口通信技术串口通信技术RS232C 属于平衡半双工双点对传传输协议,而 RS485 支持多点传送的半 双工平衡传输协议,它们的区别除了一个是点对点,一个是多点对多点外,传 输距离也是有很大差别的参见下表描述RS232CRS423RS422RS485 操作模式单端单端差分差分 驱动器与接收器的总 数量(在 RS485 网络 中同一时刻只有一个 驱动器是有效的)1 个驱动 1 个接收1 个驱动 10 个接收1 个驱动 10 个接收32 个驱动 32 个接收最大电缆长度50 英尺4000 英尺4000 英尺4000 英尺 最大传输速率 (RS232:40 英尺,而 RS422/RS485:4000 英尺)20kb/s100kb/s10Mb/s-100Kb/s 10Mb/s-100Kb/s驱动器最大输出电压+/-25V+/-6V-0.25V 到+6V-7V 到+12V 驱动器输出电平 (最小输出电平)有负 载+/-5Vto+/-15V+/-3.6V+/-2.0V+/-1.5V驱动器输出电平 (最大输出电平)空载+/-25V+/-6V+/-6V+/-6V驱动器负载电阻(欧姆)3k-7k>=45010054 最大转换率30V/uS可调———— 接收器最大输入电压+/-15V+/-12V-10Vto+10V-7Vto+12V 接收器输入灵敏度+/-3V+/-200mV+/-200mV+/-200mV 接收器输入阻抗(欧姆), (RS485 在一个标准负 载下)3k 到 7k最小 4k最小 4k>=12k一、连线通常的 RS485(正规名称是 TIA/EIA-485-A)是使用平衡双线连接的。
一 共三条线分别为信号正、信号副和地线数据信号在传输以前是非平衡的,经 过差分放大器后变成了平衡信号图一 RS485 信号的连接方法采用平衡连接的传输线其目的就是为了大幅度减少外界的干扰电平信号, 它的原理和我们音频中使用平衡传输是一样的理想的平衡传输信号其两个正 负极(见图二,对应的是 1+和 2+输入)电平是时间上的严格对齐,1+的高电 平,对应 2+的低电平,反之亦然图二理想的平衡 RS485 信号传输电平尽管传输 RS485 信号可以采用任何导电导线,但是通常是使用双绞线来连接为 最佳二、为什么使用双绞线从字面上解释双绞线就是一对长度相等的金属丝互相螺旋状拧在一起的导 线对为什么要使用双绞线传输 RS485 信号呢?那是为了解决在长距离的高速 网络中存在的两个主要问题:EMI 辐射干扰和 EMI 接收干扰1、辐射干扰:在高速传输数据的时候,接收端是依靠高低电平的垂直边沿 (上升沿/下降沿)来判断数据的变化的,频率越高,边沿变化的越快,相应的高频奇次谐波含量也越高下图三是 125kHz 方波信号的 FFT 照片,由图上我 们可以看出它在 5MHz 上还有很大的谐波能量图三 125kHz 方波信号的 FFT 延伸到 5MHz由于高频方波本身的辐射问题,再加之长线传输(此时的长线相当于发射 天线),其对外的辐射特性得到了加强。
使用双绞线则可以有效地抑制这种辐 射干扰其实它的原理很简单,当两条平行对绞天线在辐射电磁波的时候,由 于工作电平是反相,所以辐射电磁波将被抵消当然完全抵消只是个理论数值, 抵消效果取决于对绞线的长度是不是完全一致,以及对绞密度和线间的紧合度, 这些都是和对绞线的制作工艺有很大的关系所以我们可能会发现,用一些比 较高档的线(比如 Belden9841)可以传输更远的 RS485 信号,而且误码率很低2、接收干扰:这是针对接收端来说的抵抗干扰的能力上面我们谈到高频 传输线基本上相当于一个天线,当天线以对绞的方式传输反相信号的时候会抵 消辐射电平同样的原理,它也会帮助接收端抵消输入的噪声信号外部输入 来的“无用”噪声信号在完全相等长度和均匀对绞的线对里面是以“共模信号 (大小相同,方向相同)”存在的;而有用的信号在这里是以“差模信号(大 小相同,方向相反)”存在的而对接收端的差分放大器而言,它只接收差模 信号而抑制共模信号(差分放大器有个电参数叫共模抑制比 CMRR,一般大于 60dB 为优)三、双绞线的特性阻抗双绞线的特性阻抗和其它高频电缆一样要主意的是,特性阻抗和电阻是 不同的概念电阻可以用万用表测出来,特性阻抗不能测。
阻抗是电阻和电 抗的统称,电阻部分是针对直流电路来说的,这部分用万用表可以测量但是 电抗是指电缆间的容抗和感抗之和电抗只是对交流信号有作用,信号的频率 越高,这种表现就越明显)电抗的单位也是欧姆,它的大小取决于双绞线的 线径、绝缘体的导电能力(介电常数)、绝缘体和铜线的排列位置等尽管 TIA/EIA-485-A 里面没有特别指明这个特性阻抗的数值,一般地厂商都是将这 个数值定在 120Ω图四双绞线的特性阻抗上图我们可以看出来,双绞线的特性阻抗从任何位置看都是处处相等的 高频传输电缆和我们在低频的导线不同,高频传输中,信号在任何环节的阻抗 都必须相等,否则就会出现反射(参见《通信原理》)信号反射会引起误码 率的升高以及传输距离缩短从前面对阻抗的分析可以开出来,高频传输双绞 线若避免产生信号反射,主要取决于制线的工艺水平要求阻抗“处处相等” 就要求铜材和绝缘体的一致性,以及缠绕的均匀性在使用过程中我们也要注 意,对双绞线挤压、踩踏、卷曲等都会导致绝缘体与铜线之间的相对位置的改 变而造成阻抗失配,失配将引起信号的反射一般来说,一个 RS485 网络是必须要加入终端电阻的,而且这个电阻的阻 值必须和双绞线匹配。
对于一个标准的 RS485 双绞线电缆来说,终端电阻应该 和双绞线阻抗一致的 120Ω我们按照图五的方式分别连接不同的终端电阻进 行测量,看看连接 54Ω 和 120Ω 两种电阻的电平传递失真特性图五左侧连接的 54Ω,右侧连接的是 120Ω从上图我们可以看出来,对于 120Ω 特性阻抗的双绞线来说,失配会引起 比较强烈的反射,导致传输信号出现失真,引起误码由于阻抗失配导致的信 号反射失真率可以用下面的公式来计算:终端电阻的加装位置也是非常重要的,严格上讲,它只能连接到双绞线的 两个端点,而且应该是两端都加的在实际应用中,一般发送器都是只有 1 个, 所以这种情况下发送端就可以不加这个电阻了,因为它已经没有反向的电流了我们在实践中可能发现这样的问题,就是在一端加上了终端电阻,但是要 小于 120Ω,有时候小到 60Ω 才起作用这是因为你使用的双绞线阻抗不正确 导致的通常的廉价的 RS485 传输线由于制造工艺的原因,阻抗是很不准确的, 而且是变化的很厉害,这样会导致信号来回反射此时如果加入了个小电阻, 会加大传送器的输出电流但是这样做的结果是传输距离的大大缩短,可能要 下降到 150 米以内了。
不过双绞线的特性阻抗我们一般是无法测量的,所以单 纯从说明书上也很难判断前面我们举例的美国 Belden9841 双绞线在国内的零 售价在 10 元/米,它的工艺就非常好,数据的稳定性和传输距离都接近理论值 (距离达到 1000 米左右)现在的很多 RS485 终端设备在端口处都已经自带了 120Ω 的终端电阻了 (参见设备指标说明),这样的设备连接就无须另外加终端电阻了四、一个 RS485 网络的传输/接收能力只有一对双绞线构成的 RS485 网络到底可以同时连接多少个发送器/接收器 呢?很多人想得到这个问题的答案,其实这个数量的限制在 TEA/EIA-485-A 的 手册上也没有一个确切的说法因为尽管这种半双工平衡 RS485 网络的数据结 构允许在一个网络中可以同时存在多个发送器/接收器,但是其数量还是取决于 每个接收器和所有非活动发送器的网络负载理想的情况是一个 RS485 网络中的所有接收器和非活动的发送器的阻抗都 是无穷大的,这样它们就不再消耗任何发送器能量,这种情况下对接收器和非 活动发送器的数量就没有限制了但是事实上这样的情况是没有的由于接收 器和其它的发送器都将成为网络的负载,所以实际的连接数量还要根据双绞线 的质量来确定了。
举例子,如果采用最优质的 RS485 双绞线,阻抗严格为 120Ω 的时候,采 用 MAXIM 的 Max3485 发送器和 Max487 接收器,最多可以同时连接 32 个 Max3485 发送器和 128 个 Max487 接收器这个情况可能是“最好”的了吧五、正确的 RS485 连接方式结合上面对 RS485 网络的技术分析,现在给出几种正确的连接方式供参考1、一个发送器一个接收器参见图六这是一种最常见的连接方式,在这种连接下,终端电阻尽管有些多余(可 以不用),但是养成一种良好的设计习惯也是十分必要的图六一个发送器和一个接收器的正确连接2、一个发送器,多个接收器这种连接方式也是比较常见,这里要注意两个问题,一个就是末端的终端 电阻一定要加上;另一个问题就是分支线一定要短,通常要少于 1 米,这点非 常重要,否则这段支线可能会引起阻抗的失配,导致误码率的升高图七一个发送器和多个接收器的正确连接3、一对收发器这也是一种常见的连接,其原理与图六是相同的图八两对收发器的正确连接4、多对收发器它的原理和图七也是相似的,重要的也是要注意终端电阻的添加(注意, 不能将最两边的收发器外侧的终端电阻省略),还有就是分支线要尽量地短。
图九多对收发器的正确连接六、错误的 RS485 连接方式另外的几种连接情况,可能会引起传输距离以及误码率的提高问题,希望 能引起大家的注意1、无终端电阻匹配可能读者会注意,这种连接和图六非常相似,只是在分支线以后还有 100 英尺的悬空线在图六中我们说,那个终端电阻是可以省略的,那么为什么增 加了这 100 英尺的悬空线就成了错误连接了呢?这个就是高频信号传输的特点 高频电路分析中,我们不能以低频信号“电路”的概念去理解信号的传递图 十中当主信号延干线继续向右传递的时候,由于末端没有连接终端电阻,所以 信号在完全失配的情况下会完全反射(终端在开路和短路的情况下,对于高频 信号来说都是全反射,只是相位不同)全反射的信号会在干线上与正向信号 叠加,由于距离的原因,反向传递的信号会出现杂乱的叠加,其结果就是引起 输出端的信号严重失真,引起误码图十无终端匹配的错误连接图十中的信号测量结果在下半部分左侧(测量点在 A-B),我们和图十右 下侧的匹配状态波形做比较可以看出全反射对信号的影响所以我们在工程中 要注意,高频信号的延长线要做好处理,不要以为什么都不连接就没有问题2、错误的终端电阻安装位置。
见图十一依据图十的问题,如果没有将终端电阻放置在主干线的末端,而是放置在 其它位置,尽管这样可以对前段的阻抗做出匹配,但是终端电阻到双绞线电缆 末端的地方依然会产生反射现象,并与发送信号叠加形成误码误码的形状参 见图十一的左下(测量点在 A-B)读者可以和右下侧的正确终端电阻连接波 形进行比较图十一不正确的终端电阻连接3、多重线缆并联见图十二这样的连接也是常见的错误而且可能会引起更多的问题图十二错误的多重线缆并联第一个问题是 RS485 发送器的设计是为驱动一条电缆的,当并联四条电缆 的时候,其驱动能力明显下降,这就意味着一些比较小的逻辑电平将无法传送,传输距离也大打折扣第二个问题就是特性阻抗的变化在打结点,四条分支 线并联在一起会引起负载阻抗的严重失配,信号的反射情况将更为剧烈4、过长的分支电缆见图十三图十三过长的支线也会引起阻抗失配与图七类似,但是不同的地方是分支线长度过长尽管此时在干线末端已 经正确地连接了负载阻抗,但是太长的支线与右侧干线之间的并联关系依然使 阻抗产生失配,这种情况下低电平段将发生信号畸变,畸变波形见图十三左下 (测量点在 A-B),并与右下侧正确的短支线连接对比。
读者可以将图十三和图十左比较可以发现,干线上的完全反射影响。












