浅谈RS485通讯、半双工系统与Modbus协议

今日头条

1095人已加入

描述

概述

RS485是广泛用于工业实施中的串行数据传输标准。在实现RS485通信时,通常使用Modbus协议。这将RS485与通过以ASCII字符进行传输进行通信的RS232协议区分开来。要使用RS485协议处理设备,了解Modbus非常重要。

内容

什么是RS485通讯?

什么是半双工系统?

什么是Modbus?

——Modbus消息

——Modbus消息格式

串行传输模式

什么是RS485通讯

什么是RS485通讯?

RS485 是类似于RS232的协议,用于实现串行数据通信。两种协议使用不同的电信号来实现数据传输。

在工业环境中使用RS485接口的原因之一是它能够为连接到同一总线的多个设备提供服务。

解决在查询多个设备时需具有多个可用接口的需求。可以通过使用总线终端器,移动开关或将小型电阻器拧到端子上来实现此目的。(注意确保使用正确的接口,因为RS485和RS32协议不完全兼容。)在RS232和RS485接口之间构建网关(通常会看到RS485协议直接连接到USB,GSM或以太网端口。这种较便宜的方法消除了对使用任何其他组件的需求)

使用RS485端口的设备通常采用Modbus协议。

附表总结了RS485协议的特征。

通信

RS485在平衡线上提供半双工传输,覆盖距离可达1.2 km。

什么是半双工系统?

半双工系统包括一个或多个发射机和接收机,通信由发送器发出,该发送器针对特定接收器发出请求。然后,发送方等待预定的时间长度以进行答复,或者确定接收方不会再收到任何答复。

通信

RS485网络是基于主/从框架构建的。主机扮演发送器的角色,向指定的从机发出请求,从机充当接收器。主机监听响应,如果未在适当的时间范围内获得响应,则将终止通信。

什么是Modbus?

Modbus消息

01)Modbus消息的原理。

在Modbus RS485网络中,当主站设备向连接的从站发送查询时,

通信开始。从设备花时间监视网络中是否有专门针对它的查询。

收到查询后,它将执行一个操作或对主服务器做出响应。查询仅由主设备启动。

Modbus协议使主机可以选择将消息寻址到特定从设备或同时与所有从设备进行通信。这是使用特殊的“广播”地址完成的。

读写操作使用线圈通过Modbus消息发送。线圈由16位字和二进制寄存器组成。从站只能响应收到的消息,而不能启动与主站的通信。

并行连接到RS485总线的每个从站设备都分配有唯一的Modbus从站ID。所有Modbus通信都从发送从站ID开始,以警告从站设备接受查询或通知主站哪个设备提供了答复。

以与RS232连接相同的方式,需要正确配置从属设备和主设备。如速度和奇偶校验之类的参数需要在整个网络中同步。

02) Modbus消息格式

在协议中定义了主站和从站之间的Modbus通信中使用的消息格式。

Modbus查询由该设备(或广播)地址,限定任何请求操作的功能码,与该请求返回的数据,和一个误差校验字段组成。

Modbus响应由该验证所请求的动作已被获取的字段,与响应发送的数据,和一个差错检测域的。如果从设备无法满足请求或错误影响消息的接收,则从设备将创建一条错误消息作为其响应。

串行传输模式

Modbus通信采用两种不同的串行传输模式:ASCII和RTU。

Modbus ASCII模式:将每个8位消息作为两个ASCII字符发送。

ASCII模式的优点包括能够在文本控制台上轻松监视消息的功能。此模式还允许在不启动超时的情况下接受一秒钟的间隔。

Modbus RTU(远程终端单元)模式以其他格式传输消息。这时一个8位消息包含两个4位十六进制字符。使用此传输模式的数据需要以连续流的形式发送,并且与ASCII模式相比,在可比较的波特率下具有更好的吞吐量。

非常感谢您抽出宝贵的时间来这里。欢迎在评论区留言,并持续关注获取更多精彩内容。
      责任编辑:tzh

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分