ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:29.41KB ,
资源ID:9378597      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-9378597.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(西门子S7200与变频器MODBUS通讯实例详解.docx)为本站会员(b****0)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

西门子S7200与变频器MODBUS通讯实例详解.docx

1、西门子S7200与变频器MODBUS通讯实例详解西门子 S7200 与变频器 MODBUS 通讯实例详解西门子S7200PLC简介西门子S7-200PLC在实时模式下具有速度快,具有通讯功能和较高的生产力的特点。一致的模块化设计促进了低性能定制产品的创造和可扩展性的解决方案。来自西门子的 S7 -200微型PLC可以被当作独立的微型 PLC解决方案或与其他控制器相结合使用。Modbus 通讯协议简介Modbus是由Modicon (现为施耐德电气公司的一个品牌) 在1979年发明的,是全球第一个真正用于工业现场的总线协议。ModBus 网络是一个工业通信系统,由带智能终端的可编程序控制器和计算

2、机通过公用 线路或局部专用线路连接而成。 其系统结构既包括硬件、 亦包括软件。 它可应用于各种数据 采集和过程监控。ModBus 网络只有一个主机,所有通信都由他发出。网络可支持 247 个之多的远程从属 控制器,但实际所支持的从机数要由所用通信设备决定。采用这个系统,各 PC可以和中心主机交换信息而不影响各 PC执行本身的控制任务。1 MODBUS RTU协议在 S7-200中的应用原理1.1 MODBUS RTU协议与S7-200相互关系简介S7-200 CPU上的通讯口 PortO可以支持 MODBUS RTU协议,成为MODBUS RTU从站。此 功能是通过 S7-200 的自由口通讯

3、模式实现,因此可以通过无线数据电台等慢速通讯设备传 输。想在S7-200 CPU与其他支持 MODBUS RTU的设备使用 MODBUS RTU协议通讯,需要由有S7-200 CPU做MODBUS主站。S7-200 CPU做主站必须由用户自己用自由口模式,按相关 协议编程。2 从站指令的用法:S7-200控制系统应用中, MODBUS RTU从站指令库只支持 CPU上的通讯0 口(PortO)。要实现MODBUS RTU通讯,需要 Step7-Micro/WIN32 V3.2以上版本的编程软件,而且须安装Step7-Micro/WIN32 V3.2 Instruction Library(指令

4、库)。MODBUS RTU功能是通过指令库中预先编好的程序功能块实现的。MODBUS RTU协议在 S7-200中应用的基本过程 首先检查 S7-200控制系统中所用 Micro/WIN卞软件版本,应当是 Step7-Micro/WIN V3.2以上版本。(2)检查Micro/WIN 的指令树中是否存在 MODBUS RTU从站指令库(图1),库中应当包 括 MBUS_INIT和 MBUS_SLAVE两个子程序。如果没有,须安装 Micro/WIN32 V3.2 Instruction Library(指令库)软件包编程时使用 SM0.1 调用子程序 MBUS_INIT进行初始化,使用 SM0

5、.0 调用研究MBUS_SLAVE并指定相应参数。关于参数的详细说明,可在子程序的局部变量表中找到。SM0.1MBUS INITENB,C. DE.VB10019200R GH.I.+2004-0+ 14LVE1000Mode Addr BaudDelayMaxlQMaxAlMaiiH oldDoneError* M1 0 0 -MB11阿细 2 iffiffiMODBUS_SLA.VESM0 0I L.MMBUSSLAVE EMDoneError调用MODBUS通讯指令库参数意义如下:莫式选择:启动/停止MODBUS,仁启动;0=停止;从站地址:MODBUS从站;丄址,取值1247;波特率:

6、可选 1200, 2400, 4800, 9600, 19200, 38400, 57600;奇偶校验:0=无校验;仁奇校验;2=偶校验;延时:附加字符间延时,缺省值为 0;最大I/Q位:参与通讯的最大I/O点数,S7-200 I/O映像区为128M28,缺省值为128;最大AI字数:参与通讯的最大 AI通道数,可为16或32;最大保持寄存器区:参与通讯的V存储区字(VW);保持寄存器区起始 址:以&VBX指定(间接寻址方式);初始化完成标志:成功初始化后置1;错误代码:0=无错误。1.3注意的问题调用 Step7-Mciro/WIN32 V3.2 Instruction Library(指令

7、库)需要分配库指令数据区 (LibraryMemory)。库指令数据区是相应库li:子程序和中断程序所要用到 变量存储空间。匚丄编程时不分配库指令数据区,编译时会产生许多相同的错误。由子程序参数 HoldStart和MaxHold指定茁保持寄存器区,是 S7-200 CPU V数据存储区中分配,此数据区不能和库指令数据区有任何重叠, 否则运行时会产生错误,不能正常通讯。注意MODBUS中出保持寄存器区按 字”寻址,即MaxHold规定的是VW而十4VBJ个 数。3主站指令的用法:1. MODBUS RTU主站指令库的功能是通过在用户程序中调用预先编好的程序功能块实 现的,该库对 Port 0和

8、Port 1有效。该指令库将设置通信口工作在自由口模式下。2. MODBUS RTU主站指令库使用了一些用户中断功能,编其他程序时不能在用户程序 中禁止中断。3. MODBUS RTU主站库对 CPU的版本有要求。CPU的版本必须为 2.00或者2.01 (即 订货号为 6ES721*-*23-0BA* ),1.22版本之前(包括 1.22版本)的S7-200 CPU不支持。使用 MODBUS RTU主站指令库,可以读写 MODBUS RTU从站的数字量、模拟量 I/O以及保持寄存器。要使用 MODBUS RTU 主站指令库,须遵循下列步骤:安装西门子标准指令库 按照要求编写用户程序调用 MO

9、DBUS RTU 主站指令库MODBUS RTU 主站功能编程1. 调用 MODBUS RTU 主站初始化和控制子程序使用SM0.0调用MBUS_CTRL完成主站的初始化,并启动其功能控制:用 SM0.0 调用 MODBUS RTU 主站初始化与控制子程序各参数意义如下 :a. EN 使能: 必须保证每一扫描周期都被使能(使用 SM0.0)b. Mode 模式: 为 1 时,使能 MODBUS 协议功能;为 0 时恢复为系统 PPI 协议c. Baud 波特率: 支持的通讯波特率为 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200。d. P

10、arity 校验: 校验方式选择0=无校验1=奇较验2 =偶较验e. Timeout 超时: 主站等待从站响应的时间, 以毫秒为单位, 典型的设置值为 1000 毫 秒(1 秒),允许设置的范围为 1 - 32767。注意: 这个值必须设置足够大以保证从站有时间响应。f. Done 完成位: 初始化完成,此位会自动置 1。可以用该位启动 MBUS_MSG 读写操作(见例程)g. Error 初始化错误代码(只有在 Done 位为 1 时有效):0=无错误1=校验选择非法2= 波特率选择非法3= 模式选择非法2.调用 MODBUS RTU主站读写子程序 MBUS_MSG,发送一个 MODBUS请

11、求;调用 MODBUS RTU 主站读写子程序各参数意义如下 :a. EN使能: 同一时刻只能有一个读写功能(即 MBUS_MSG)使能注意:建议每一个读写功能(即MBUS_MSG)都用上一个 MBUS_MSG指令的Done完成位来激活,以保证所有读写指令循环进行(见例程) 。b. First 读写请求位: 每一个新的读写请求必须使用脉冲触发c. Slave 从站地址: 可选择的范围 1 - 247d. RW 从站地址: 0 = 读, 1 = 写1. 开关量输出和保持寄存器支持读和写功能2. 开关量输入和模拟量输入只支持读功能e. Addr 读写从站的 选择读写的数据类型数据地址:00001

12、至 0xxxx - 开关量输出10001至1xxxx -开关量输入30001至3xxxx -模拟量输入40001至4xxxx -保持寄存器f. Count 数据个数 通讯的数据个数(位或字的个数)注意:MODBUS主站可读/写的最大数据量为120个字(是指每一个 MBUS_MSG指令)g. DataPtr 数据指针:1. 如果是读指令,读回的数据放到这个数据区中2. 如果是写指令,要写出的数据放到这个数据区中h. Done 完成位 读写功能完成位i. Error 错误代码: 只有在 Done 位为 1 时,错误代码才有效0 =无错误1 =响应校验错误2 =未用3 =接收超时(从站无响应)4 =

13、 请求参数错误( slave address, MODBUS address, count, RW)5 = MODBUS/自由口未使能6 = MODBUS正在忙于其它请求7 = 响应错误(响应不是请求的操作)8 =响应CRC校验和错误101 = 从站不支持请求的功能102 = 从站不支持数据地址103 = 从站不支持此种数据类型104 = 从站设备故障105 = 从站接受了信息,但是响应被延迟106 = 从站忙,拒绝了该信息107 = 从站拒绝了信息108 = 从站存储器奇偶错误常见的错误:如果多个 MBUS MSG指令同时使能会造成 6号错误从站delay参数设的时间过长会造成主站 3号错误

14、从站掉电或不运行,网络故障都会造成主站 3号错误3.在CPU的V数据区中为库指令分配存储区( Library Memory)MODBUS Master指令库需要一个 284个字节的全局 V存储区。西门子S7200 PLC MODBUS支持的功能码功能码描述1读取单个/多个线圈的实际输出状态。功能 1返回任意数量输出点的接通 /断开状态(Q)。2读取单个/多个线圈的实际输入状态。功能 2返回任意数量的输入点的接通/断开状态(I)3多个保持寄存器。功能 3返回V存储器的内容。保持寄存器在 MODBUS下是字类型,在一个请求中最多可读 120个字。4读单个/多个输入寄存器,返回模拟输入值。5写单个线

15、圈(实际输出)。功能5将实际输出点设置为指定值。该输出点不 是被强制,用户程序可以重写由 MODBUS的请求而写入的值。6写单个保持寄存器。功能 6写一个单个保持寄存器的值到 S7-200的V存储区。15写多个线圈(实际输出)。功能15写多个实际输出值到 S7-200的Q映像区。 起始输出点必须是一个字节的开始(如 Q0.0或Q2.0),并且要写得输出的数量是8的倍数。这是 MODBUS从站协议指令的限定。这些点不是被强制,用户程序可以重写由MODBUS的请求而写入的值。16写多个保持寄存器。功能 16写多个保持寄存器到 S7-200的V区。在一个请求中最多可写120字。例 国产精驱变频器与

16、S7200 CPU224XP PLd讯(1)设置变频器的通讯参数参数设置值说明P0.014启动命令改为串行通讯P0.032频率给定改为串行通讯P3.091339600波特率无奇偶校验P3.103从站地址3硬件接线S7200 通讯口 1第3脚RS485+ 第8脚RS485-(3)初始化程序网络3通讯协议SM0.0MBUS_CTRLEN11 SM0.0Mode11960(-BaudDone-M1.0-ParityError-MB1050(-Timeout变频器的控制地址,因为变频器控制地址为 2000H,所以换位10进制为8192, MUDBUS地址40001开头,需要加1,控制地址为8193,功

17、能码4为读写寄存器,因为启动变频器的控制命令为 17,所以传送17到VW200则启动变频器网络4控制变频器运行M2.0M8.0PMBUS_MSGENFirstSlaveDoneRWErrorAddrCountDataPtr3M3.01-MB1248193-bWB200-(5 )设置变频器的给定频率网络6给定数値频率M3.0M3.0I 1叮MBUS_MSGENFirstSlaveDoneRWAddrCountDataPtrError3-1-481941-&VB300-M5.0MB14变频器的通信控制字节劈数地址功能说明内曲设定参数GG代农雾数府阳代表雪数号码.对变频器命令(06K)2000H位0

18、1OOBi无功能Q1B:停止10B:运行118*点动位23保留位45OOB:无功能018:正方向运行10B:反方向运ff11B:改变方向运行拉67保留2001H串【设皑频率命令变频器故障枝位2002H00:无功能:QI: EF.: 02:故障览位西门子通讯MUDBUS协议在工控上使用最广泛的一种协议,具备以下几个特点1 )使用简单,利用MUDBUS库文件简单的几条指令就能实现与智能仪表,变频器,打印机等设备进行通讯,且无需加其他硬件上的成本 MODBUS总线广泛应用于仪器仪表、智能高低压电器、变送器、可编程控制器、人机界面、变频器、现场智能设备等诸多领域。MODBUS 与其他的现场总线和工业网

19、络相比有以下几个显著特点 :2)标准、开放 :用户可以免费放心的使用MODBUS协议,不用缴纳许可费用,不会涉及侵犯知识产权。目前支持 MODBUS的厂一家超过400家,支持 MODBUS的产品超过600种。在中国,MODBUS已经成为国家标准 GB/T19582-2008。据不完全统 计:截止到2007年MODBUS的节点安装数量已经超过了 1000万个。3)应用广泛:凡MODBUS协议设备具有 RS232485接口的都可以使用本产品实现与现场总线PROFIBUS的互连。如:具有 MODBUS协议接口的变频器、智能高低压电器、电机启动保护装置、电量测量装置、智能现场测量设备、各种变送器及仪表

20、等。4) MODBUS可以支持较多类型的电气接口: MODBUS总线协议采用主站查询从站的方 式,物理接口可以是 RS232、RS485 RS422 RJ45,还可以在各种介质上传送,如双绞线、 光纤、无线射频等 .5) MODBUS的帧格式较为简单、紧凑,格式规范,易于传输,通俗易懂。用户使用容易,厂商开发简单。用户不必了解 PROFIBUS和MODBUS技术细节,只需参考说明手册及提 供的应用实例, 按要求完成配置, 不需要复杂的编程, 即可在短时间内实现设备间的连接通 信。6)透明通信:用户可以依照PROFIBUS通信数据区和MODBUS通信数据区的映射关系,实现PROFIBUS到MODBUS之间的数据透明通信。

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2