电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> 梯形图实例 >> 正文

西门子S7-200SMART间接寻址读取配方 子程序调用方法

作者:佚名    文章来源:网络整理    点击数:    更新时间:2025/6/21

这篇文章为大家介绍如何利用200SMART编程软件的间接寻址功能来读取不同配方号的数据,根据不同的配方来生产不同的产品。下面以一个生产不同口味面包的配方为例,向大家介绍程序的编写及测试结果。

子程序创建和调用方法:西门子PLC子程序实例,S7-200 SMART PLC带参数子程序应用实例
www.dzkfw.com.cn/Article/tixingtu/10468.html

01 所需软件及硬件

西门子200SMART编程软件V2.7版,200SMARTST30 CPU一台,通信网线一条。

02 程序编写

1、配方数据录入

实际生产中配方的数据已经定好,我们可以在编程软件的数据页中将这些数据输入到相应的变量地址中,如下图1所示,输入的是四种口味面包的数据,分别是糖份、水分、面粉和盐份,当然这些只是举例,不是实际的面包生产配方。

 

▲图1▲

2、配方处理子程序

将默认的SBR0子程序重命名为配方处理,建立一个带参数的子程序。在变量表中建立相应的接口参数,程序编辑区编写配方处理程序,如下图2、3所示:

 

▲图2▲

 

▲图3▲

3、子程序解读

打开200SMART编程软件,如上图3所示,第一网段程序为建立指针,将VB0的物理地址传送到指针中去;第二网段程序为根据配方编号的不同,将指针指向不同的配方数据的首地址;第三网段为将选中配方的数据批量传送到配方显示地址区域。

需要注意的是:配方显示地址的首地址也要建立指针,而且该形参的类型必须定义为IN类型,否则选中的配方数据无法正确传送到该地址区域。

4、主程序编写

主程序编写相对简单,主要是在程序运行初期初始化一些变量、限定配方号数值、根据配方的选择激活调用配方处理子程序的位变量M0.0以及子程序执行完以后复位相关变量。如下图4所示:

 

 

▲图4▲

03 测试效果

将程序下载到PLC中,选择在线监控,在状态图表中输入需监控的变量地址,将不同的配方编号写入VD0中,大家和图1的配方数据比较,可以发现数据是完全一致的。监控视图如下图5所示:

 

▲图5▲

总结:巧妙地利用200SMART的间接寻址功能,可大大简化程序的编写工作量,即使配方数再多、配方数据再长,只要不超过PLC的存储容量和扫描周期的长度,均可用这个案例程序来处理。另外配方子程序的最后那段采用批量传送指令也很巧妙,不必使用FOR循环指令传送,也简化了程序编写。

Tags:200Smart,间接寻址,读取配方  
责任编辑:admin
  • 上一篇文章:
  • 下一篇文章: 没有了
  • 请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
    1分 2分 3分 4分 5分

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