




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于西门子S7-200PLC的modbus从站协议攻略 作者:广州-殇城一、基础理论知识准备MODBUS协议在一根通讯线上使用主从应答式连接(半双工),这意味着在一根单独的通讯线上信号沿着相反的两个方向传输。首先,主计算机的信号寻址到一台唯一的终端设备(从机),然后,终端设备发出的应答信号以相反的方向传输给主机。1、MODBUS从站协议的两种传输模式MODBUS从站协议的传输模式包括传统的ASCII模式(大多数仪表设备使用)和RTU(远程终端)模式,在使用MODBUS协议时,主站和从站必须使用相同的传输模式和使用相同的波特率、校验方法。MODBUS的ASCII传输模式当控制器以 ASCII 模式在 Modbus 总线上进行通讯时,一个信息中的每 8 位字节作为 2 个 ASCII 字符传输的,这种模式的主要优点是允许字符之间的时间间隔长达 IS,也不会出现错误。2、ASCII模式通讯帧格式在 ASCII 模式中,以(:)号(ASCII3AH)表示信息开始,以回车一换行键(CRLF) (ASCII OD和OAH)表示信息结束。对其它的区,允许发送的字符为 16 进制字符 0-9,A-F。网络中设备连续检测并接收一个冒号(:)时,每台设备对地址区解码,找出要寻址的设备。字符之间的最大间隔为 1S,若大于 1S,则接收设备认为出现了一个错误。典型的ASCII模式通讯帧的格式如下图所示:3、RTU模式通讯帧格式RTU 模式中,信息开始至少需要有 3.5 个字符的静止时间,各个区允许发送的字符均为 16进制的 0-9,A-F。网络上的设备连续监测网络上的信息,包括静止时间。当接收第一个地址数据时,每台设备立即对它解码,以决定是否是自己的地址。发送完最后一个字符号后,也有一个3.5个字符的静止时间,然后才能发送一个新的信息。 整个信息必须连续发送。如果在发送帧信息期间,出现大于1.5个字符的静止时间时,则接收设备刷新不完整的信息,并假设下一个地址数据。同样一个信息后,立即发送的一个新信息,(若无 3。5 个字符的静止时间)这将会产生一个错误。是因为合并信息的 CRC 校验码无效而产生的错误。RTU模式通讯帧格式如下:4、功能码及其对应的请求帧和响应帧的格式通过上面介绍ASCII模式通讯帧和RTU通讯帧的格式,我们可以看到,在通讯帧里面包括了一个功能码的问题,所谓功能码是指主站告诉从站执行何种功能,也就是说,相当于我告诉你,我将要干什么。标准的MODBUS协议功能码如下表所示代码意义行为01读DO状态获得数字(继电器)输出的当前状态(ON/OFF)02读DI状态获得数字输入的当前状态(ON/OFF)03读数据寄存器获得一个或多个寄存器的当前二进制值05控制DO控制数字(继电器)输出状态(ON/OFF)16预置多寄存器设定二进制值到一系列多寄存器中由于使用不同的功能码时,主机向从机发送的请求帧和从机向主机回送的响应帧是各不相同的,下面,将为大家详细讲解各个功能码对应的请求帧和响应帧的格式功能1 功能1用来读单个或者多个数字量输出的ON/OFF状态。当利用功能1时,上位机(计算机)向PLC发送的通信请求帧的格式为:站地址01点数CRC此时,PLC以4位16进制的格式返回相应的数字量输出点的状态,响应帧的格式为:站地址01数据字节数数据字节1数据字节nCRC功能2功能2用于读当个或者多个开关量输入点的ON/OFF状态,请求帧格式和响应帧格式和功能相同。功能3功能3读取当个活多个保持寄存器(V存储区中的字)的内容,最多可以读120个字的数据。当利用功能3时,上位机(计算机)向PLC发送的通信请求帧的格式为:站地址03首字地址字数CRC此时,PLC以4位16进制的格式返回相应的数字量输出点的状态,响应帧的格式为:站地址03数据字节数数据字节1数据字节nCRC功能4功能4用来读单个或者多个模拟量输入值,其请求帧和响应帧的格式与功能3相同。功能5功能5用于将某一个开关量输出点(Q点)置位或者复位。当利用功能51时,上位机(计算机)向PLC发送的通信请求帧的格式为:站地址05数据字CRC此时,PLC以4位16进制的格式返回相应的数字量输出点的状态,响应帧的格式和请求帧格式相同。功能6功能6用于将一个数据字写入V存储区,响应帧和请求帧格式相同:站地址06字地址数据字CRC功能15功能15用于改写多个开关量输出点,采用功能15时,被改写的开关量的状态不是被强制的,用户可以再次用程序来修改这些点的值。采用功能15时,计算机向PLC发送的请求帧的格式为:站地址OF起始位地址位数数据字节1数据字节nCRCPLC向上位机返回的响应帧的格式为:站地址OF起始位地址位数CRC功能16功能16用于写多个V存储区的字,一个请求帧最多可写120个字。该功能对应的请求帧格式为:站地址10首字地址字数字节数数据字1数据字nCRCPLC向计算机返回的请求帧的格式为:站地址10首字地址字数CRC二、编程实战篇(MODBUS RTU模式)通过上面的理论知识的学习,相信大家已经对MODBUS从站协议有了一定的了解,下面我们就一起来学习一下怎样来编程实现VB(或者串口调试助手等软件)读取PLC内部存储单元的内容。闲话少说,VB通过MODBUS协议访问PLC的内部数据时,双方遵循的是MODBUS从站协议,上位机和下位机只需保持一致的通信数据格式,PLC利用库文件初始化端口0以后,计算机向PLC发送请求帧,再读取PLC返回回来的响应帧的数据即可。简而言之,两者的通信是一个握手的过程,下面先说一下S7-200 PLC MODBUS从站协议RTU传输模式通信的初始化。S7-200PLC初始化MODBUS从站协议RTU传输模式时,可以利用Mcro/Win编程软件的库文件来实现,在每次上电前,调用库文件初始化程序,具体的程序见下面的程序截图和本文附录的程序。在这里需要说明的是,当PLC端口0初始化以后,PLC端口0是不能和装有编程软件的计算机连接的,所以在调试过程中,为了方便监视程序运行,建议大家选用224或者226的CPU。Mro/WIN编程软件自带的MODBUS从站协议库文件只能支持RTU模式,不能用于ASCII模式传输,这是大家应该特别注意的。该库文件说明如下:在第一个循环周期内初始化Modbus从站协议Mode: 模式选择,启动/停止MODBUS,1=启动;0=停止Address: 从站地址,MODBUS从站地址,取值1247Baud: 波特率,可选1200,2400,4800,9600,19200,38400,57600,115200 Parity: 奇偶校验,0=无校验;1=奇校验;2=偶校验 Delay: 延时,附加字符间延时,缺省值为0 MaxIQ: 最大I/Q位,参与通信的最大I/O点数,S7-200的I/O映像区为128/128,缺省值为128 MaxAI: 最大AI字数,参与通信的最大AI通道数,可为16或32 MaxHold: 最大保持寄存器区,参与通信的V存储区字(VW) HoldStart: 保持寄存器区起始地址,以&VBx指定(间接寻址方式) Done: 初始化完成标志,成功初始化后置1 Error: 初始化错误代码在本例子中,设置从站地址为1Port0 通讯波特率为9600无校验可以使用的S7-200最大数字量输入输出点数为128可以使用的S7-200最大模拟量输入寄存器字数为32可以使用的V区寄存器地址字数为1000, 起始地址为VB0该库文件使用见下面两图也就是说,上位机利用MODBUS从站协议的RTU模式读取PLC的数据时,在PLC里面只需按照上面那样,调用库文件来初始化端口0即可。剩下的部分工作由上位机来完成,上位机要读PLC的数据时,必须根据不同的功能发送相应的请求帧,PLC才会返回相应的数据。在这里我们建议大家使用串口调试助手或者PLC串口通信工具来调试程序,在使用这些串口调试工具的时候,计算机串口传输数据格式必须和PLC初始化的数据格式保持一致(波特率相同、奇偶校验位相同,有无校验位相同,停止位数相同),两者才可以相互通信。由于本人的口才不佳,关于MODBUS从站协议RTU模式的讲述就到此结束了,具体大家请看我附录的程序以及相关的数据说明吧。PS:1、 采用MODBUS从站协议时,计
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 采购相关安全协议书
- 车库出售定金协议书
- 解除车贷合同协议书
- 健身俱乐部预售协议书
- 项目合股承包协议书
- 配偶同意卖房协议书
- 餐厅人身安全协议书
- 酒店订餐免责协议书
- 餐厅员工持股协议书
- 退休人员免责协议书
- 2025-2030年辣椒素产业行业市场现状供需分析及投资评估规划分析研究报告
- 2025中国铁路南宁局集团有限公司招聘高校毕业生58人三(本科及以上学历)笔试参考题库附带答案详解
- 大国工匠活动方案
- 《华能企业文化建设》课件
- 陕西延安通和电业有限责任公司招聘笔试真题2024
- 2025年医院管理专业研究生入学考试试卷及答案
- 2025年江苏高处安装、维护、拆除作业-特种作业证考试复习题库(含答案)
- Unit7OutdoorfunIntegration(课件)-译林版(2024)英语七年级下册
- 成人重症患者人工气道湿化护理专家共识
- 2023年船员培训计划
- 2025中国铁路郑州局集团招聘614人(河南)笔试参考题库附带答案详解
评论
0/150
提交评论