RS485总线收发实验.docx
《RS485总线收发实验.docx》由会员分享,可在线阅读,更多相关《RS485总线收发实验.docx(28页珍藏版)》请在冰豆网上搜索。
RS485总线收发实验
RS-485总线收发实验
在本章节,我们将介绍RS-485总线的使用。
本实验一共需要两块神舟IV号STM32开发
板,一块作为RS485的发送端,另一块作为RS485的接收端,接收总线上的数据。
本节分为
如下几个部分:
1RS-485总线实验的意义与作用
2实验原理
3软件设计
4硬件设计
5下载与验证
6实验现象
意义与作用
前面两个例程,我们分别讲解了串口printf实验和串口中断收发实验,对RS232串口原理
及其应用有了一定的了解,但是由于RS232接口标准出现较早,难免有不足之处,主要有以
下四点:
(1)接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容故需使
用电平转换电路方能与TTL电路连接。
(2)传输速率较低,在异步传输时,波特率为20Kbps。
(3)接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易
产生共模干扰,所以抗噪声干扰性弱。
(4)传输距离有限,最大传输距离标准值为50英尺,实际上也只能用在50米左右。
针对RS232接口的不足,于是就不断出现了一些新的接口标准,RS-485就是其中之一,
它具有以下特点:
(1)RS-485的电气特性:
逻辑"1"以两线间的电压差为+(2—6)V表示;逻辑"0"以两线
间的电压差为-(2—6)V表示。
接口信号电平比RS-232降低了,就不易损坏接口电
路的芯片,且该电平与TTL电平兼容,可方便与TTL电路连接。
(2)RS-485的数据最高传输速率为10Mbps(实际取决于RS485接口芯片和电路)。
(3)RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干能力增强,即抗噪声
干扰性好。
(4)RS-485接口的最大传输距离标准值为4000英尺,实际上可达3000米,另外RS-232接
口在总线上只允许连接1个收发器,即单站能力。
而RS-485接口在总线上是允许连
接多达128个收发器。
即具有多站能力,这样用户可以利用单一的RS-485接口方便地
建立起设备网络。
(5)因为RS485接口组成的半双工网络,一般只需二根连线(我们一般叫AB线),所以
RS485接口均采用屏蔽双绞线传输。
基于以上原因,RS485总线在工业控制行业应用非常广泛,适合分散的,远距离(上千
米)的多点通信,这是RS232所不能实现的,因此,通过使用STM32开发板实现RS485的通
信,我们可以了解RS485总线的应用和基本原理,搭建RS485通信网络。
实验原理
RS-485总线简介
在数据通信,计算机网络以及分布式工业控制系统当中,经常需要使用串行通信来实现
数据交换。
目前,有RS-232,RS-485,RS-422几种接口标准用于串行通信。
RS-232是最早的串
行接口标准,
在短距离<15M)较低波特率串行通信当中得到了广泛应用。
(
,
其后针对RS-232
接口标准的通信距离短,波特率比较低的状况,在RS-232接口标准的基础上又提出了RS-422
接口标准,
RS-485接口标准来克服这些缺陷。
下面详细介绍RS-232,RS-422,RS-485接口标准。
RS-232串口标准是种在低速率串行通讯种增加通讯距离的单端标准。
RS-232采取不平
衡传输方式,即单端通讯。
其收发端的数据信号都是相对于地信号的。
所以其共模抑制能力
差,再加上双绞线的分布电容,其传输距离最大约为15M,最高速率为20KBPS,且其只能
支持点对点通信。
针对RS-232串口标准的局限性,人们又提出了RS-422,RS-485接口标准。
RS-485/422采
用平衡发送和差分接收方式实现通信:
发送端将串行口的TTL电平信号转换成差分信号A,B
两路输出,经过线缆传输之后在接收端将差分信号还原成TTL电平信号。
由于传输线通常使
用双绞线,又是差分传输,所以又极强的抗共模干扰的能力,总线收发器灵敏度很高,可以
检测到低至200mV电压。
故传输信号在千米之外都是可以恢复。
RS-485/422最大的通信距离
约为1219M,最大传输速率为10Mb/S,传输速率与传输距离成反比,在100Kb/S的传输速率
下,才可以达到最大的通信距离,如果需传输更长的距离,需要加485中继器。
RS-485采用半双工工作方式,支持多点数据通信。
RS-485总线网络拓扑一般采用终端
匹配的总线型结构。
即采用一条总线将各个节点串接起来,不支持环形或星型网络。
如果需
要使用星型结构,就必须使用485中继器或者485集线器才可以。
RS-485/422总线一般最大支
持32个节点,如果使用特制的485芯片,可以达到128个或者256个节点,最大的可以支持到
400个节点。
EIARS-485标准
在自动化领域,随着分布式控制系统的发展,迫切需要一种总线能适合远距离的数字通
信。
RS-422标准的基础上,研究出了一种支持多节点、
在
EIA
远距离和接收高灵敏度的RS-485
总线标准。
RS-485标准采有用平衡式发送,差分式接收的数据收发器来驱动总线,具体规格要求:
1.接收器的输入电阻RIN12kΩ
2.驱动器能输出±7V的共模电压
3.输入端的电容50pF
4.在节点数为32个,配置了120Ω的终端电阻的情况下,驱动器至少还能输出电压
1.5V(终端电阻的大小与所
用双绞线的参数有关)
5.接收器的输入灵敏度为200mV(即(V+)-(V-)0.2V,表示信号"0";(V+)
-(V-)-0.2V,表示信
号"1")
因为RS-485的远距离、多节点(32个)以及传输线成本低的特性,使得EIARS-485成为
工业应用中数据传输的首选标准。
影响RS-485总线通讯速度和通信可靠性的三个因素
1、在通信电缆中的信号反射
在通信过程中,有两种信号因导致信号反射:
阻抗不连续和阻抗不匹配。
阻抗不连续,信号在传输线末端突然遇到电缆阻抗很小甚至没有,信号在这个地方就会
引起反射,这种信号反射的原理,与光从一种媒质进入另一种媒质要引起反射是相似的。
消
除这种反射的方法,就必须在电缆的末端跨接一个与电缆的特性阻抗同样大小的终端电阻,
使电缆的阻抗连续。
由于信号在电缆上的传输是双向的,因此,在通讯电缆的另一端可跨接
一个同样大小的终端电阻。
从理论上分析,在传输电缆的末端只要跨接了与电缆特性阻抗相匹配的终端电阻,就再
也不会出现信号反射现象。
但是,在实现应用中,由于传输电缆的特性阻抗与通讯波特率等
应用环境有关,特性阻抗不可能与终端电阻完全相等,因此或多或少的信号反射还会存在。
引起信号反射的另个原因是数据收发器与传输电缆之间的阻抗不匹配。
这种原因引起的
反射,主要表现在通讯线路处在空闲方式时,整个网络数据混乱。
信号反射对数据传输的影响,归根结底是因为反射信号触发了接收器输入端的比较器,
使接收器收到了错误的信号,导致CRC校验错误或整个数据帧错误。
要减弱反射信号对通讯线路的影响,通常采用噪声抑制和加偏置电阻的方法。
在实际应
用中,对于比较小的反射信号,为简单方便,经常采用加偏置电阻的方法。
2、在通讯电缆中的信号衰减
第二个影响信号传输的因素是信号在电缆的传输过程中衰减。
一条传输电缆可以把它看
出由分布电容、分布电感和电阻联合组成的等效电路,电缆的分布电容C主要是由双绞线的
两条平行导线产生。
导线的电阻在这里对信号的影响很小,可以忽略不计。
信号的损失主要
是由于电缆的分布电容和分布电感组成的LC低通滤波器。
3、在通讯电缆中的纯阻负载
影响通讯性能的第三个因素是纯阻性负载(也叫直流负载)的大小。
这里指的纯阻性负
载主要由终端电阻、偏置电阻和RS-485收发器三者构成。
在叙述EIARS-485规范时曾提到过RS-485驱动器在带了32个节点,配置了150Ω终端电
阻的情况下,至少能输出1.5V的差分电压。
一个接收器的输入电阻为12kΩ,RS-485驱动器
的负载能力为:
RL=32个输入电阻并联||2个终端电阻=((12000/32)×(150/2))/(12000/32)+(150/2))
51.7Ω
现在比较常用的RS-485驱动器有MAX485、DS3695、MAX1488/1489以及和利时公司使
用的SN75176A/D等,其中有的RS-485驱动器负载能力可以达到20Ω。
在不考虑其它诸多因
素的情况下,按照驱动能力和负载的关系计算,一个驱动器可带节点的最大数量将远远大于
32个。
在通讯波特率比较高的时候,在线路上偏置电阻是很有必要的。
它的作用是在线路进入
空闲状态后,把总线上没有数据时(空闲方式)的电平拉离0电平。
这样一来,即使线路中
出现了比较小的反射信号或干扰,
挂接在总线上的数据接收器也不会由于这些信号的到来而
产生误动作。
在实际应用中,RS-485总线加偏置电阻有两种方法:
(1)把偏置电阻平衡分配给总线上的每一个收发器。
这种方法给挂接在RS-485总线上
的每一个收发器加了偏置电阻,给每一个收发器都加了一个偏置电压。
(2)在一段总线上只用一对偏置电阻。
这种方法对总线上存在大的反射信号或干扰信号比
较有效。
值得注意的是偏置电阻的加入,增加了总线的负载。
神舟IV号RS-485实验原理
本实验主要是利用两块神舟IV号STM32开发板搭建一个简单的RS-485网络,其中一块
神舟IV号作为RS-485接收端,另一块神舟IV号作为RS-485发送端。
而PC主要用于显示神舟
IV号通过串口1打印的提示信息。
网络示意图如下:
其中神舟IV号-B作为RS-485的发送端,循环发送数据到RS-485总线上,而神舟IV号-A
作为RS-485的接收端,当接收到RS-485总线上的数据,收到完整的数据后,通过串口1将数
据发送到PC机。
硬件设计
在神舟IV号STM32开发板中,RS-485接口与串口2的RS232电平接口进行复用,通过跳
线选择即可以选择神舟IV号的串口2连接到RS-232接口或者RS-485接口。
以下为RS-485接口
芯片及其外围电路原理图。
图表1RS485原理图
神舟IV号开发板载有RS485物理芯片,它与处理器的UART2连接,与串口2复用,可通
过跳线选择支持RS-232接口或RS-485接口,跳线定义如下:
JP4
串口2功能选择
1-2
2-3(默认)
串口2RS-485接口
串口2RS-232接口
神舟IV号默认是安装了RS-485接口的120欧终端匹配电阻。
对应上图的R43,请依据实
际应用选择是否安装此匹配电阻。
上图中U3为RS-485接口芯片SP3485,SP3485是Sipex公司推出的RS-485收发器,它具有
如下特性:
工作电源3.3V;
兼容5V电平逻辑
发送/接收使能控制
总线节点最大支持32个
具有输出短路保护电路
芯片的逻辑框图如下:
/RE和DE管脚控制RS-485的收发使能控制。
在神舟IV号中,这两个管脚与处理器的PD7
管脚连接,由PD7管脚控制神舟IV号STM32开发板的RS485作为发送端还是接收端。
查看SP3485RS-485收发器.pdf》
《
可知,PD7输出高电平,
当
此时SP3485芯片的2脚/RE)
(
,