2024年5月18日发(作者:)
RS485与Modbus通信协议教程
1979年施耐德电气订立了一个用于工业现场的总线协议Modbus协
议,现在工业中使用RS485通信场合很多都采纳Modbus协议,所以今
日我们来了解下RS485通信和Modbus通信协议。
【一】/前言
在工业掌控、电力通讯、智能仪表等领域,通常情况下是采纳串
口通信的方式进行数据交换。最初采纳的方式是RS232接口,由于工业
现场比较多而杂,各种电气设备会在环境中产生比较多的电磁干扰,会
导致信号传输错误。
1979年施耐德电气订立了一个用于工业现场的总线协议Modbus协
议,现在工业中使用RS485通信场合很多都采纳Modbus协议,所以今
日我们来了解下RS485通信和Modbus通信协议。
【二】/RS485通信
1、实际上在RS485之前RS232就已经诞生,但是RS232也有不足:
1)接口的信号电平值较高,达到十几V,简单损坏接口电路的芯
片,而且和TTL电平不兼容,因此和单片机电路接起来的话必需加转换
电路。
2)接口使用的信号线与其他设备形成共地模式的通信,这种共地
模式传输简单产生干扰,并且抗干扰性能也比较弱。
3)传输距离、速率都有限,最多只能通信几十米;只能两点之间
进行通信,不能够实现多机联网通信。
2、针对RS232接口以上不足,显现了RS485等新的接口标准,
RS485具备以下的特点:
1)逻辑“1”以两线间的电压差为+(2—6)V表示;逻辑“0”以
两线间的电压差为(2—6)V表示。接口信号电平比RS232降低了,不
易损坏电路的芯片,且该电平与TTL电平兼容,可便利与TTL电路连接。
2)RS485通信速度快,数据最高传输速率为10Mbps以上;其内部
的物理结构,采纳的是平衡驱动器和查分接收器的组合,抗干扰本领大
大加添。
3)传输距离最远可达到1200米左右,但传输速率和传输距离是
成反比的,只有在100KB/s以下的传输速率,才能达到最大的通信距离,
假如需要传输更远距离可以使用中继。
4)可以在总线上进行联网实现多机通信,总线上允许挂多个收发
器,从现有的RS485芯片来看,有可以挂32、64、128、256等不同个
设备的驱动器。
3、RS485有两线制和四线制,四线制只能实现点对点的通信方式,
现很少采纳。两线制这种接线方式为总线式拓朴结构,在同一总线上最
多可以挂接32个结点。在RS485通信网络中一般采纳的是主从通信方
式,即一个主机带多个从机。
4、很多情况下,连接RS485通信链路时只是简单地用一对双绞线
将各个接口的“A”“B”端连接起来。而疏忽了信号地的连接,这种连
接方法在很多场合是能正常工作的,但却埋下了很大的隐患,这有两个
原因:
1)共模干扰问题:RS485接口采纳差分方式传输信号方式,并不
需要相对于某个参照点来检测信号,系统只需检测两线之间的电位差就
可以了。但人们往往忽视了收发器有肯定的共模电压范围,RS485收发
器共模电压范围为7~+12V,只有充足上述条件,整个网络才能正常工
作。当网络线路中共模电压超出此范围时就会影响通信的稳定牢靠,甚
至损坏接口。
2)EMI问题:发送驱动器输出信号中的共模部分需要一个返回通
路,如没有一个低阻的返回通道(信号地),就会以辐射的形式返回源
端,整个总线就会像一个巨大的天线向外辐射电磁波。
5、由于PC机默认的只带有RS232接口,以下方法可以得到PC上
位机的RS485电路:
1)通过RS232/RS485转换电路将PC机串口RS232信号转换成
RS485信号,对于情况比较多而杂的工业环境最好是选用防浪涌带隔离
的产品。
2)通过PCI多串口卡,可以直接选用输出信号为RS485类型的扩
展卡。
【三】/Modbus通信协议
Modbus协议是应用于电子掌控器上的一种通用语言。通过此协议,
掌控器相互之间、掌控器经由网络(例如以太网)和设备之间可以通信。
它已经成为一通用工业标准。有了它,不同厂商生产的掌控设备可以连
成工业网络,进行集中监控。
此协议定义了一个掌控器能认得使用的消息结构,描述了一掌控
器恳求访问其它设备的过程,如何回应来自其它设备的恳求,以及怎样
侦测错误并记录。它订立了消息域格局和内容的公共格式。
1、Modbus具有以下几个特点:
1)标准、开放,用户可以免费、放心地使用Modbus协议,不需
要交纳许可证费,也不会侵害学问产权。目前,支持Modbus的厂家超
过400家,支持Modbus的产品超过600种。
2)Modbus可以支持多种电气接口,如RS232、RS485等,还可以
在各种介质上传送,如双绞线、光纤、无线等。
3)Modbus的帧格式简单、紧凑,通俗易懂。用户使用简单,厂商
开发简单。
2、Modbus寄存器种类说明
1)线圈状态:输出端口,可设定端口的输出状态,也可以读取该
位的输出状态;
2)离散输入状态:输入端口,通过外部设定更改输入状态,可读
但不可写;
3)保持寄存器:掌控器运行时被设定的某些参数,可读可写;
4)输入寄存器:掌控器运行时从外部设备获得的某些参数,可读
不可写。
3、Modbus通讯数据格式
1)单个写入:
2)多个写入:
3)读取:
4、Modbus功能码简述
功能码可以分为位操作和字节操作,位操作的最小单位是Bit,字
节操作的最小单位为2个字节(Byte)。
(1)位操作指令:读线圈状态01H、读离散输入状态02H、写单
个线圈05H、写多个线圈0FH。
(2)字节操作指令:读保存寄存器03H、读输入寄存器04H、写
单个保存寄存器06H、写多个保存寄存器10H。
5、Modbus功能码
发布者:admin,转转请注明出处:http://www.yc00.com/web/1716028759a2708975.html
评论列表(0条)