西门子PLC功能和功能块的区别

时间:2023-03-05作者:佚名
西门子plc的FB和FC均为用户编写的子程序,局部数据均有IN、OUT、IN_OUT、TEMP,临时变量TEMP储存在局部数据堆栈中。
1)FC的返回值RET_VAL实际上输出参数,因此有无动态变量(STAT)是二者的局部变量的本质区别,功能块的静态变量用北京数据块来保存,如果功能有执行完后需要保存的数据,只能存放在全局变量(I/O、PI/PO、M、T、共享数据块DB中),但是这样会影响功能的可移植性,如果功能或功能块的内部不使用全局变量,只使用局部变量,不需要做任何修改,就可以将块移植到其他项目,如果块使用了全局变量,在移植时需要重新统一分配它们的内部使用的全局变量地址,以保证不会出现地址冲突,当程序复杂,子程序和中断程序很多时,这种重新分配全局变量地址的工作量非常大,也容易出错。如果逻辑块有执行完成需要保存的数据,显然应使用功能块,而不是功能。
2)功能块的输出参数不仅与来自外部的输入参数有关,还与用静态变量保存的内部状态数据有关,功能因为没有静态变量,相同的输入参数产生的执行结果是相同。
3)功能块有背景数据块DB,功能没有背景数据块,只能在功能内部访问功能的局部变量,其他逻辑块与人机界面可以访问相应背景数据块中的变量。
4)不能给功能的局部比啊娘设置初始值,可以给功能块的局部变量(不包含TEMP)设置初始值,在调用功能块时如果没有设置某些输入参数的实参,将使用背景数据块中的初始值,或上一次执行后的值,调用功能时应给所有的形参指定实参。
举例说明:
1、生成功能
打开SIMATIC管理器执行【插入】-【S7块】-【功能】如下图所示

西门子PLC功能和功能块的区别
2、生成局部数据
双击打开FC1,如下图,将分隔条向下拉,分隔条上面是功能的变量声明表,下面为程序编写区,

西门子PLC功能和功能块的区别
在变量声明表中定义局部变量,(局部变量只能在所在的功能中使用),
1)IN:由调用它的块提供的输入参数
2)OUT:返回给调用它的块的输出参数
3)IN_OUT:初值由调用它的块提供,块执行后返回给调用它的块。
4)TEMP:暂时保存在局部数据堆栈中的数据,只是在执行块时使用临时数据,执行完后,不再保存临时数据的数值,它可能被别的数据覆盖。
5)RETURN中的RET_VAL属于输出参数。
本例IN和OUT参数如下图

西门子PLC功能和功能块的区别
3、生成功能中的程序

西门子PLC功能和功能块的区别
STEP7自动在局部变量的前面加#号,如#start。
4、调用功能
在OB1导入FC1,如下图

西门子PLC功能和功能块的区别
启动仿真如下:

西门子PLC功能和功能块的区别

西门子PLC功能和功能块的区别

相关阅读

PVC╱KBG╱JDG╱SC:四种电气导管对比总结

建筑工程中常用的四种电气导管: PVC管 (硬化聚氯乙烯管)、 KBG管 (扣压式薄壁钢管)、 JDG管 (紧定式薄壁钢管)、 SC管 (焊接钢管),其材质、工艺及适用范围各有何特点?预埋...
2023-06-11
PVC╱KBG╱JDG╱SC:四种电气导管对比总结

MOS管开关电路原理图解

对于MOS管,我们在电路设计中都会遇到,那么应该如何设计一个MOS管的开关电路呢? 我们一般会用一个三极管去控制,如下图! MOS管开关电路 但是这个电路的缺点也是显而易见,由于...
2023-06-27
MOS管开关电路原理图解

傻傻分不清电路?专业电气学姐为你全方面解读(八)

在上一次学习了道菜 “基尔霍夫电流定律(KCL ) ”后,这次我们继续学习第二道菜“ 基尔霍夫电压定律( KVL ) ”。 在《电工基础》的第 11 课时中,“曹大厨”(把曹老师说成厨师...
2023-06-27
傻傻分不清电路?专业电气学姐为你全方面解读(八)

2周见1次!水电工惹怒女友欲跪键盘,回家看到这5张纸条哭了!

作为一名水电工,平时工作繁忙,早出晚归。偶然到外地出差,导致冷落了女朋友,自己也因此感到愧疚。 「这女孩能不娶吗?」一名25岁水电工男网友只有高中学历,靠着一技之长努...
2023-06-11
2周见1次!水电工惹怒女友欲跪键盘,回家看到这5张纸条哭了!

无桥PFC电路共模EMI问题解决方案

图5给出了传统Boost PFC和无桥PFC抖动电平点的比较示意图,从图中可以看出,传统Boost PFC仅有A点是抖动的,而无桥PFC的A、B、C和D点都是抖动的,这将带来严重的共模EMI问题,由此也产生...
2023-06-05
无桥PFC电路共模EMI问题解决方案

热销商品

四氟包覆/FEP/PTFE包覆胶O型圈全氟醛FFKMO型圈耐化学腐蚀氟胶

四氟包覆(FEP/PTFE)O型圈及全氟醚(FFKM)O型圈是高性能密封解决方案,专为极端化学环境设计。FEP或PTFE包覆氟橡胶(FKM)芯材的O型圈兼具外层优异的耐化学腐蚀性、抗溶胀性...
5

领普E3S/E5配套插座面板86型暗装插座多孔五孔空调无边框家用

领普E3S/E5配套插座面板86型暗装插座多孔五孔空调无边框家用,是一款专为现代家庭设计的多功能插座。该款插座采用86型设计,易于安装和适配各种家用电器,无论是台灯、...
11.9

原装博世角磨机GWS6-100/TWS6600/6700转子定子碳刷齿轮/博士配件

原装博世角磨机GWS6-100/TWS6600/6700系列配件,包括转子、定子、碳刷及齿轮等核心部件,均采用博世原厂高品质材料制造,确保与设备完美匹配,保障运行稳定与高效性能。...
3.5

聚氨酯橡胶缓冲垫弹性套联轴器牛筋柱销减震套垫圈弹性垫缓冲胶垫

聚氨酯橡胶缓冲垫弹性套联轴器中的牛筋柱销减震套、垫圈及弹性垫,是一种高性能减震缓冲元件。采用优质聚氨酯橡胶材料制成,兼具高弹性、耐磨损、抗老化及耐油耐酸碱...
0.27

硅胶垫片/硅胶垫/硅胶垫片圆形/硅胶垫圈/橡胶垫片/氟胶垫片

硅胶垫片(又称硅胶垫、硅胶垫圈)是一种由硅橡胶制成的密封材料,具有优异的耐高低温(-60℃~230℃)、耐老化、绝缘和环保无毒特性,广泛用于食品、医疗、电子及家电等领域...
1

网站栏目