加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

TIAv17环境下再次学习练习STL-68调用多重背景数据块

(2024-02-13 19:08:19)
标签:

西门子

tia

stl编程

多重背景数据块

分类: 西门子软硬件
继续学习TIA环境下STL编程,这一篇学习调用多重背景数据块。
CALL # 变量名称
通过声明一个具有功能块数据类型的静态变量,创建一个多重背景。只有已声明的多重背景才会被包括在程序元素目录中。
TIAv17环境下再次学习练习STL-68调用多重背景数据块
比如一个项目中有多个类似的设备需要控制,这些设备的控制逻辑是类似的,可以建立一个FB来描述。如果在OB1中反复调用这个FB,就会创建很多个背景数据块。使用多重背景数据块可以避免创建多个背景数据块。
在前面练习的基础上来学习理解。比如前面创建的FB1需要被反复调用。
TIAv17环境下再次学习练习STL-68调用多重背景数据块
新建FB4,在FB4中反复调用FB1
TIAv17环境下再次学习练习STL-68调用多重背景数据块
打开FB4,可以不建内部变量,也可以建立内部变量,这个练习我不建立内部变量,写STL语句调用FB1,建立背景数据块的时候选择建立多重背景数据块,起一个名字。
TIAv17环境下再次学习练习STL-68调用多重背景数据块
点击确定按钮,可以看到程序如下
TIAv17环境下再次学习练习STL-68调用多重背景数据块
可以配置参数如下
TIAv17环境下再次学习练习STL-68调用多重背景数据块
在FB4中再次调用FB1,可以看到还没有完全输入FB1,就会自动列出可选项,这里选择前面建立的背景数据块#FB1_Instance1,输入参数
TIAv17环境下再次学习练习STL-68调用多重背景数据块
现在FB1被调用了两次,这两次调用共用了背景数据块#FB1_Instance1
在OB1里面调用FB4,相当于组织块里面调用了两次FB1,给FB4分配一个背景数据块
TIAv17环境下再次学习练习STL-68调用多重背景数据块
点击确定按钮,由于前面定义FB4的时候没有定义内部的IO,所以这里就没有输入输出的配置
TIAv17环境下再次学习练习STL-68调用多重背景数据块
打开FB3_DB背景数据块
TIAv17环境下再次学习练习STL-68调用多重背景数据块
可以看到这个背景数据块内部有一个FB1的数据类型,这个就是前面说的功能块类型数据。
关闭窗口,把程序下载到模拟器,修改数值
TIAv17环境下再次学习练习STL-68调用多重背景数据块
是哟多重背景数据块可以减少背景数据块的数量,便于维护。






TIAv17环境下再次学习练习STL-68调用多重背景数据块




TIAv17环境下再次学习练习STL-68调用多重背景数据块









0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有