基于Modbus协议的串口通讯程序——(RS485总线系统应用之3)

发布者:转眼人老最新更新时间:2015-10-13 来源: eefocus关键字:Modbus协议  串口通讯  RS485总线 手机看文章 扫描二维码
随时随地手机看文章
1. 前言

    在工业测控和数据采集系统的数据通信中,需要利用计算机通过串行接口与测控网中的设备进行数据或命令传输。截止到目前为止,被广泛应用的串行通信接口有RS-232、RS-485/422等。

    RS-232是最早的串行接口,应用于低波特率的串行通信。RS-232采取的是单端不平衡传输方式,其收发端的数据信号都是相对于地信号的,所以共模抑制能力差。再加上双绞线分布电容的影响,其最大传输距离仅为 15米,最高传输速率只有20kbit/s(=2560Byte/s),并且只支持点对点通信。

为克服RS-232串口的通信距离短、波特率低的缺点,后来推出了RS-485/422接口标准(以下简称485总线)。由于485总线的先进性,很快在工业测控等领域得到了广泛地应用。

2. 485总线的特点

485总线采用了平衡发送和差分接收接口标准。在发送端将串行口的TTL电平信号转换成差分信号由A、B两线输出,经过双绞线传输到接收端后,再将差分信号还原成TTL电平信号。因此具有极强的抗共模干扰能力,加之总线收发器灵敏度很高,可以检测到低至200mV的电压。故传输信号经过千米以上的衰减后都可以完好恢复。在100kbit/s的传输速率下,通信距离可以达到1200米左右。如果通信距离较短,其最大传输速率可达10Mbit/s。如果需传输更长的距离,需要增加485中继器。RS-485采用半双工工作方式,支持多点数据通信。RS-485总线网络拓扑一般采用终端匹配的总线型结构。即采用一条总线将各个节点串接起来,不支持环形或星型网络。如果需要使用星型结构,就必须使用485中继器或者485集线器。RS-485/422总线一般最大支持32个节点,如果使用特制的485芯片,可以达到256个节点或更多。

3. 485总线布线规则

    为了避免数据传输错误,在485总线的布线设计和施工中,应特别注意以下几点:

  ①.由于485总线传送的是一对差分信号,485网络上各设备之间的数据传输线最好采用外加屏蔽层的双绞线,屏蔽层应在一个点可靠接地。

  ②.在工业现场应用中,如果现场干扰源非常复杂,各节点之间可能存在很高的共模电压。虽然485接口使用的是差分传输方式,具有抗共模干扰能力。但是当共模电压大于+12V或者小于-9V时,就超过了485接收器的极限接收电压,接收器将无法工作,甚至可能烧毁芯片和设备。此时,应在485总线网络中使用485光隔离中继器,从而消除共模电压的影响。

  ③.随着传输距离的延长,485总线网络上会产生回波反射信号。如果485总线的传输距离超过100米,建议在485网络的开始端和结束端并接120Ω电阻。

  ④.一般应采用手牵手的总线拓扑结构。最好不要采用星型拓扑结构。否则会产生反射信号,影响通信质量。要尽量减少节点设备与主干线路之间的距离,如果在实际应用中必须距离较远,应使用485中继器接出一个485总线的分支。如果实际应用中一定要使用星型拓扑结构,则必须使用485集线器

⑤.必须重视485总线的负载能力,影响负载能力的因素有:接在主计算机串口的485转换器的供电能力,通讯距离,485数据线材的品质,波特率等。

无源型的485转换器是从计算机的串口窃电,供电力较差,带负载能力不足。如果485网络上的设备比较多,应使用带电源的485转换器。选用好的485专用通讯线缆,尽可能使用低的波特率。使用485中继器或者485集线器,都可以提高485总线的负载能力。

4. 485总线布线方法

    在485总线的简单应用中,一般采用总线型的拓扑结构布线方式。但是在比较复杂的系统中,总线型拓扑结构的布线施工不但非常繁琐,而且还浪费了大量的连线。灵活利用485集线器或485中继器,可以将总线型的拓扑结构连接成星形或树型的拓扑结构。大大的方便了前期施工和后期的维修工作。

 

485总线星形拓扑结构

 


485总线树型拓扑结构

5. 120Ω电阻的连接方法

    在485总线的实际应用中,当传输距离超过一定的长度时,总线的抗干扰能力就会出现下降,在这种情况下,就要在485总线的首尾两端接入120欧姆的终端匹配电阻,以保证485总线的稳定性。[page]

  终端匹配电阻的正确接法是在485总线的首端的设备的出口和末端的设备的入口上各接一个120欧姆的终端电阻,该电阻并接在485总线的正负两线之间。如下图所示:


单独使用232转485转换器时终端匹配电阻的接法

 


 

 

加接485中继器时终端匹配电阻的接法

 

 
 

 

使用485集线器时终端匹配电阻的接法

 

 

参考文献:

① 《微型计算机原理与接口技术》 中国科学技术大学出版社  作者: 周荷琴吴秀清

② 《单片机原理及串行外设接口技术》北京航空航天大学出版社  作者:李朝青等

关键字:Modbus协议  串口通讯  RS485总线 引用地址:基于Modbus协议的串口通讯程序——(RS485总线系统应用之3)

上一篇:基于RS-485总线的温湿度监测系统——(RS485总线系统应用之5)
下一篇:RS-485总线布线规则及方法——(RS485总线系统应用之4)

推荐阅读最新更新时间:2024-05-03 00:01

MSP430F5438A系列之串口通讯
前言: 不知不觉,已经毕业快一年!看到某些大佬们在专栏里写了上百篇技术博客,内心还是很膜拜的。职场菜鸟一枚,没有其他挣钱的门路,为了养家糊口,只能默默做技术。以前在学校的时候,学的东西都是皮毛,说白了就是略知一二,还吹牛逼。工作就不一样了,特别是做技术,需要为自己所写的每行代码负责。不然,后果很严重! 串口通信应用广泛,将下位机关键信息通过串口输出到PC机,看起来舒服、用起来方便,在做调试的时候会经常用到。由于项目中使用的控制器是TI公司MSP430F5438A这款芯片,以后所有的程序都是基于该芯片。 本次需要实现的功能:单片机判断串口0收到的字符,输出相应的字符串到上位机。 下面直接上代码: #include
[单片机]
MSP430F5438A系列之<font color='red'>串口通讯</font>
关于RS485和MODBUS的区别/RS485和其它总线网络的区别
经常看到RS485和MODBUS写在一起,它们的区别和联系? RS485是一个物理接口,简单的说是硬件。 MODBUS是一种国际标准的通讯协议,用于不同厂商之间的设备交换数据(一般是工业用途); 所谓协议,也可以理解为上面有人说的“语言”吧,简单的说是软件。 一般情况下,两台设备通过MODBUS协议传输数据: 最早是用RS232C作为硬件接口,(也就是普通电脑上的串行通讯口(串口)); 也有用RS422的, 也有常用的RS485,这种接口传输距离远,在一般工业现场用的比较多。 MODBUS协议又分MODBUS RTU,MODBUS ASCII和后来发展的MODBUS TCP三种模式: 其中前两种(MODBUS RTU
[嵌入式]
串口通讯的概念及接口电路
  随着计算机系统的应用和微机网络的发展,通信功能越来越显的重要。这里所说的通信是只计算机与外界的信息交换。因此,通信既包括计算机与外部设备之间,也包括计算机和计算机之间的信息交换。由于串行通信是在一根传输线上一位一位的传送信息,所用的传输线少,并且可以借助现成的电话网进行信息传送,因此,特别适合于远距离传输。对于那些与计算机相距不远的人-机交换设备和串行存储的外部设备如终端、打印机、逻辑分析仪、磁盘等,采用串行方式交换数据也很普遍。在实时控制和管理方面,采用多台微机处理机组成分级分布控制系统中,各CPU之间的通信一般都是串行方式。所以串行接口是微机应用系统常用的接口。 许多外设和计算机按串行方式进行通信,这里所说的串行方式
[测试测量]
基于RS485总线的小型集散系统设计
1.前言 集散控制系统是一种价格昂贵的自动化控制装置,国内外集散系统制造公司,在生产大型集散系统的同时,都推出了同系列的小型集散系统,即使这样,其价格对国内小企业而言仍然偏高。我们从我国中小企业的实际情况出发,以个人计算机做操纵站,通过RS-485总线与多台DCS基本 控制器 组成了一种简易集散系统,经济实用。    2.系统的组成及其框图 整个系统包括一台PC或者IPC作为操纵站用于组态、实时监控,多个DCS基本控制器(最多32个)负责现场控制,操纵站和基本控制器之间通讯采用RS-485总线标准。系统结构如图1 所示。操纵站可选用带有RS-485串行通讯接口工控机,或者选用一般PC机,但要在RS-232接口上增加一个RS-
[嵌入式]
基于RS485总线的远程测控系统
  RS-485总线型远程测控系统已得到广泛应用,这主要因为RS-485总线具有传输距离远等特点。在传输速率为9600bit/s时传输距离可达1.2km以上,最高传输速率可达10Mbit/s,且只用普通双绞线即可,同一对双绞线上可以挂接多至256个以上的终端。有许多工业测控模块都是采用RS-485总线型的,比如Adam、Nudan等,但价格较高。本文介绍的RS-485远程测控系统结合传统的分布式测控系统的特点、利用了RS-485总线的特点,而且巧妙地应用了AT89C2051单片机和CD4067多路开关,因而成本低,功能灵活,使用简单。   1、系统设计方案   本系统由一台PC作为主机,多至255台AT89C2051单片机作为从机
[单片机]
51串口通讯 中断注意
首先是自己遇到了问题,然后在同事的帮助下解决了,然后上网一查有这样的注意文章,就转过来了 一、深入了解字符串的问题 char str11 = a ; P1=strlen(str11); 上面的一个是一个测试字符个数的实例,用仿真就可以看到结果。结果是1。也就是说字符’’是不会被计入的。那么我们就可以通过此函数来分辩是否是字符和字符串。当然如果字符串是一个字符的话,那么就是我们上面的那个情况了,会直接被当做一个数看待。 注:上位机发过来的数据全部是字符串格式的。 二、串口中断问题 先看下面的程序。 void UART_SendByte(unsigned char dat) { SBUF=dat; while(!T
[单片机]
STM32F1--串口通讯实验
串口通讯实验–通讯的基本概念 通讯的基本概念 1、串行通讯 2、并行通讯 3、异步通讯 4、同步通讯 5、单工、半双工、全双工 串口通讯实验–USART介绍 串口通讯简介 一般采用的是标准的电气标准,但是采用的协议没有标准规定,但是,我们一般都采用96N81 的标准(9600波特率, N 无校验位, 8 位数据位,1位停止位) 串口通讯一般当采用的引脚只有三个,所以 TXD RXD SGND 这三个 USART 同步异步收发器 USART的结构框图 关于波特率的相关问题 串口通讯实验–USART 的配置步骤 step1 使能串口时钟概念和对应的串口引脚 step2 初始化串口参数 停
[单片机]
STM32F1--<font color='red'>串口通讯</font>实验
RS485光电隔离器在485总线保护效果
在要求通信距离为几十米到上千米时,广泛采用RS485串行总线标准。RS485总线是工业应用中非常成熟的技术,是现代通讯技术的工业标准之一,采用RS485总线设计网络也是基于这些原因。 RS485(RS232转RS485)被广泛应用在各种通信系统中,由于在实际工程中的各种信号干扰(雷击、过压),RS485总线存在自适应、自保护功能脆弱等缺点,如不注意一些细节的处理,常出现通信失败甚至系统瘫痪等故障,因此对RS485进行隔离保护,提高其可靠性至关重要。如何在工业应用中保证RS485的可靠性? 目前隔离器隔离技术主要有磁隔离与光隔离两大类: 光隔离的线性、精度只能依赖器件厂家提供的技术指标,设计人员可以调整的方式很少,也不可能超
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved