你当前的位置:首页 > 西门子案例 >

MODBUS RTU通讯协议在S7-200中的应用

返回文章列表 作者: 时间:03-17 来源:  字体:【

1 引言
工业控制已从单机控制走向集中监控、集散控制,如今已进入网络集约制造时代。工业控制器连网也为网络管理提供了方便。Modbus就是工业控制器的网络协议中的一种。Modbus协议是应用于电子控制器上的一种通讯约规。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。它已经成为主流的工业标准之一。他为符合Modbus协议的不同厂商生产的控制设备可以连成工业网络,进行集中监控。

2 Modbus RTU协议在S7-200中的应用原理
2.1 Modbus RTU协议与S7-200相互关系简介
S7-200 CPU上的通讯口Port0可以支持Modbus RTU协议,成为Modbus RTU从站。此功能是通过S7-200的自由口通讯模式实现,因此可以通过无线数据电台等慢速通讯设备传输。
如果想在S7-200 CPU与其他支持Modbus RTU的设备使用Modbus RTU协议通讯,需要由有S7-200 CPU做Modbus主站。S7-200 CPU做主站必须由用户自己用自由口模式,按相关协议编程。
在S7-200控制系统应用中,Modbus RTU从站指令库只支持CPU上的通讯0口(Port0)。要实现Modbus RTU通讯,需要Step7-Micro/WIN32 V3.2以上版本的编程软件,而且须安装Step7-Micro/WIN32 V3.2 Instruction Library(指令库)。Modbus RTU功能是通过指令库中预先编好的程序功能块实现的。
2.2 Modbus RTU协议在S7-200中应用的基本过程
(1) 首先检查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(指令库)软件包,如图1所示。

图1 指令树中的库指令
(3) 编程时使用SM0.1—调用子程序MBUS_INIT进行初始化,使用SM0.0—调用研究MBUS_SLAVE,并指定相应参数。关于参数的详细说明,可在子程序的局部变量表中找到。
示例参见图2:

图2 调用MODBUS通讯指令库
图2中参数意义如下:
●模式选择:启动/停止MODBUS,1=启动;0=停止;
● 从站地址:MODBUS从站地址,取值1~247;
● 波特率:可选1200,2400,4800,9600,19200,38400,57600;
● 奇偶校验:0=无校验;1=奇校验;2=偶校验;
● 延时:附加字符间延时,缺省值为0;
●最大I/Q位:参与通讯的最大I/O点数,S7-200的I/O映像区为128/128,缺省值为128;
●最大AI字数:参与通讯的最大AI通道数,可为16或32;
●最大保持寄存器区:参与通讯的V存储区字(VW);
● 保持寄存器区起始地址:以&VBx指定(间接寻址方式);
● 初始化完成标志:成功初始化后置1;
● 错误代码:0=无错误。
(4) 注意的问题
调用Step7-Mciro/WIN32 V3.2 Instruction Library(指令库)需要分配库指令数据区(Library Memory)。库指令数据区是相应库的子程序和中断程序所要用到的变量存储空间。如果在编程时不分配库指令数据区,编译时会产生许多相同的错误。
由子程序参数HoldStart和MaxHold指定的保持寄存器区,是在S7-200 CPU的V数据存储区中分配,此数据区不能和库指令数据区有任何重叠,否则在运行时会产生错误,不能正常通讯。注意Modbus 中的保持寄存器区按“字”寻址,即MaxHold规定的是VW而不是VB的个数。

文章相关
现有0条评论 | 更多评论..

我要发表看法



  如果您还不是本站会员
欢迎加入
  • ※ 评论注意事项:
  • 不是会员或未登陆发表评论,评论人名字显示为匿名。
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规。
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任。
  • 本站管理人员有权保留或删除评论中的任意内容。
  • 参与本评论即表明您已经阅读并接受上述条款。
站内搜索
本栏热门
电梯的电气系统由拖动系统和控制系统两部分组成。传统的电气控制系统采用的继电器逻辑控制由于触点多、故障率高、可靠性差、体积大等缺点,正逐渐被淘汰。目前电梯设计使用可编程控制器(PLC),要求功能变化灵活,编程简单,故障少,噪音低。维修保养方便,节能省工,抗干扰能力强
PLC输出的集成脉冲可通过步进电机进行定位控制。关于定位控制,调节和控制操作之间存在一些区别。步进电机不需要连续的位置控制,而在控制操作中得到应用。在以下的程序例子中,借助于CPU214所产生的集成脉冲输出,通过步进电机来实现相对的位置控制。
本文以某物流控制中的机械手控制为例,分析了PLC与步进驱动装置的控制方法,本系统涉及的主要硬件是S7-200 PLC和SH-2H057步进驱动器。
(1) S7-200 PLC系列是西门子公司的可编程控制器,这一系列产品可以满足多种多样的自动化控制要求,由于具有紧凑的设计、良好的扩展性
化工厂、电子厂的漂染冲洗液或电镀冲洗液等工业废水为合乎排放要求,必须经过分离、沉淀等多级处理,使用污水潜水泵对此工业污水进行提升、汇集、调节等处理。PLC因其经济性、灵活性可靠性而得到广泛的应用,PLC的软件可以完成以往传统的接触器继电器式控制无法实现的控制功能
在工业生产中,常需要用闭环控制方式来实现温度、压力、流量等连续变化的模拟量控制。无论使用模拟控制器的模拟控制系统,还是使用计算机(包括PLC)的数字控制系统,PID控制都得到了广泛的应用。PID控制器是比例-积分-微分控制的简称,具有(1) 不需要精确的控制系统数学模型;

设为首页| 加入收藏| 联系我们
Copyright 2004-2007 Www.plc365.coM All Rights Reserved
免费提供PLC可编程控制器编程资料,应用案例,软件下载
请使用1024*768分辨率浏览本站以达到最佳视觉效果