工业网络控制技术 项目9 Modbus通信应用.ppt

工业网络控制技术 项目9 Modbus通信应用.ppt

  1. 1、本文档共52页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

目前更多的现场设备使用ModbusRTU,但ModbusTCP正在迎头赶上。压力变送器、流量计和气体分析仪使用ModbusRTU。PLC、DCS和控制室设备使用ModbusTCP。一些通过互联网与网络服务器通信的设备使用ModbusTCP。在进行Modbus通信应用时,需要采用通信协议支持功能,学习者常常对于如何配置Modbus网络以及编制协议感到困惑,不能深入理解。本任务带着大家解读Modbus中最常用的功能代码,用虚拟仿真软件模拟主站的发送请求(查询)以及从站的发送响应(响应)动作,直观感受查询字节流和响应字节流(设备地址、功能代码、数据字节、错误检查)的传输,如图为将要模拟的事件,主站PLC3通过Modbus网络读取从站PLC1压了和温度数据,主站向从站PLC2发送执行指令让阀1和阀2动作。Modbus是一种请求/应答协议,提供由功能代码指定的服务。Modbus事务处理的过程如下:主机设备(客户端)创建Modbus应用数据单元形成查询报文,其中功能码标志了向从机设备(服务器端)指示将执行哪种操作。功能码占用一个字节,有效的码字范围是十进制1~255(其中128~255为异常响应保留)。查询报文创建完毕,主机设备(客户端)向从机设备(服务器端)发送报文,从机设备(服务器端)接收报文后,根据功能码做出相应的动作,并将响应报文返回给主机设备(客户端)。如果出现与请求Modbus功能有关的差错,那么响应报文的功能码域将包括一个异常码。主机设备(客户端)能够根据异常码确定下一个执行的操作。对于异常响应,从机设备(服务器端)将返回一个与原始功能码等同的码值,但设置该原始功能码的最高有效位为逻辑1,用于通知主机设备(客户端)。Modbus协议是包括ASCII、RTU、TCP三种报文类型。这里仅介绍RTU模式帧格式。查询和响应字节流中的字节具有不同的功能,查询和响应字节流根据其用途分为四个部分。这四个部分为设备地址、功能码、8位数据字节和错误检查。每个部分都有不同的用途。字节流的这个设备地址部分只有一个字节长;功能代码部分也只有一个字节长;如图所示,主站发送给从站的实际查询,从站发送了一个响应回到主站。字节流最后部分查询字节流的错误检查部分,电干扰或物理干扰或其他会干扰RS-485通信,对通信介质的干扰会导致数据错误。错误检查用于检测和处理这些可能的干扰,以确保主从通信可靠地传输数据。如果一个设备是与Modbus协议兼容的,它必须有一部分专用于Modbus内存服务,该内存区域称为Modbus存储区。Modbus存储区分为四个区域,分别是线圈、输入,输入寄存器,保持寄存器。1)线圈区域的内存地址从1到10000,因此线圈区域有10000个1位的内存块。线圈区域用于存储离散输出的数字数据2)输入区域的内存地址从10001到20000,这个区域也有一万个一位的内存块。输入区域用于存储离散输入的数字数据。3)输入寄存器的内存地址从30001到40000,所以有10000个16位的内存块。输入寄存器用于模拟输入。4)保持寄存器的内存地址从40001到50000,同样是10000个16位的内存块。保持寄存器用于模拟输出。线圈读取、输入读取、保持寄存器读取、输入寄存器读取、单个线圈写入、单个寄存器写入。每个功能代码名都有一个与其相关联的数字。根据Modbus标准,功能代码编号是1、2、3、4、5、6。推荐的两款软件工具是Modscan32和Modsim32,下载地址如图提示。Modscan32是Modbus主站模拟器,Modsim32是Modbus从站模拟器。Modscan32用作Modbus主站从Modbus从站读取数据。第三个软件虚拟串口用来创建虚拟Modbus网络。双击虚拟串行端口应用程序,在应用界面建立起一个从COM3到COM4的虚拟连接虚拟的Modbus网络,让Modscan64与Modsim64交换数据。设置Modscan主站通信参数,包括波特率、字长度、奇偶校验、停止位、协议选择。注意主站和从站通信参数设置要一致。Modbus主站从Modbus从站获取数据,必须知道从站单元ID和寄存器地址。还记得前面的一个例子吗?主站要从ID为22的从站获取30019的压力。Modbus主站模拟器内要设置连接到ID22,所以输入从站ID号。起始地址为30019,用于标志要正确读取的地址块的起始地址。请注意,3是表示不同功能的代码,下拉列表有0、1、2、3、4,选择4输入寄存器读取,要把19放在地址栏中,读取数据长度为1,在长度栏中填入1。这样Modbus主站,启动单元ID22,地址为19,长度为1的寄存器。注意,这里没有输入30019,因为当我们选择输入寄存器时,软件会将30

文档评论(0)

dllkxy + 关注
实名认证
内容提供者

本文库主要涉及建筑、教育等资料,有问题可以联系解决哦

版权声明书
用户编号:5213302032000001

1亿VIP精品文档

相关文档