电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> plc工业软件使用 >> 正文

Modbus RTU通信教程 STEP 7-MicroWIN SMART软件 从站的配置及编程

作者:佚名    文章来源:本站原创    点击数:    更新时间:2023/6/4

前面的文章我们介绍了Modbus RTU通信中主站S7-1200的配置和编程,今天这篇文章,我们来介绍从站S7-200 Smart的配置及编程。

 

本例程从站使用S7-200 Smart的CPU ST40,通信端口使用CPU模块本体的RS485接口,modbus地址为2。

打开编程软件STEP 7-Micro/WIN SMART,在指令库中找到文件夹“Modbus_RTU_Slave”,里面有两个指令:MBUS_INIT和MBUS_SLAVE,如下图:

 

指令INIT用来初始化从站的地址、通信的波特率、存储器地址等相关信息。选中该指令将其拖放到主程序MAIN中,如下图:

 

该指令的相关参数含义见下面的表格:

 

注意:

1)MaxIQ用于设置modbus参数地址0xxxx与1xxxx对应的PLC的输出Q与输入I的地址,在S7-200 Smart中,最大可设置为256(不同类型的PLC该值不同)。当设置为0时,将禁用输入及输出的读写操作;

2)MaxAI用于设置modbus参数地址3xxxx对应的PLC的字输入寄存器的地址,也就是模拟量输入(AI)的地址。对于S7-200 Smart紧凑型CPU(CR20s、CR30s、CR40s、CR60s)而言,建议设置为0;其它标准型CPU,建议设置为56;

3)MaxHold用于设置modbus地址4xxxx或4yyyyy对应的PLC的保持存储区的大小,以字为单位。例如,如果要允许modbus主站访问2000个字节的从站V存储区,则MaxHold应设置为1000;

4)MBUS_INIT仅在CPU启动后的第一个扫描周期执行一次即可;如果更改通信参数,则重新再执行一次;

MBUS_INIT指令的完整代码如下图:

 

接下来我们将MBUS_SLAVE指令添加到主程序块中,并设置其参数如下图:

 

调用STEP 7 - Mciro/WIN SMART Instruction Library(指令库)需要分配库指令数据区(Library Memory)。库指令数据区是相应库的子程序和中断程序所要用到的变量存储空间。

MBUS_SLAVE指令库需要一个781个字节的全局 V 存储区。 分配方法如下:

右键单击“程序块”,在弹出的菜单中单击“库存储器”,如下图:

 

在弹出的库存储器分配对话框中,选择“Modbus RTU Slave”,如下图:

 

点击“建议地址”,系统会自动分配可用的V存储区作为库存储区。

Tags:Modbus-RTU,modbus,STEP7,通信  
责任编辑:admin
请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
1分 2分 3分 4分 5分

还可以输入 200 个字
[ 查看全部 ] 网友评论
最新推荐
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
返回顶部
刷新页面
下到页底
晶体管查询