西门子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功能和功能块的区别

相关阅读

模电学习:三极管推挽电路

一、推挽的概念 在电路中,推挽(Push-Pull)是指使用两个输出器件(例如晶体管或MOSFET)交替地将信号推到正和负极性,以便将信号放大并推到一个负载上。 推挽输出电路通常用于驱...
2023-06-06
模电学习:三极管推挽电路

dc-dc降压电路原理图 BUCK电路简介和工作原理

BUCK电路简介 BUCK电路是一种基于电感储能原理的DC-DC变换器,其涉及到物理中的电磁感应和电能转换的基本原理。在BUCK电路中,通过控制输入占空比可变的PWM波切换开关管的导通和断开...
2023-11-20
dc-dc降压电路原理图 BUCK电路简介和工作原理

住宅水电安装工程怎么做才算好?看这个你就明白

住宅项目的机电安装工程怎么做才算是规范化标准化?我们从以下六个方面,分享新芒果地产集团在施工质量上的把控要求,图文解读清晰明了,标准化的感官效果也绝对是一种享受!...
2023-06-11

开关电源/开关MOS管/开关变压器损耗讲解

今天给大家分享的是:开关电源损耗与效率、开关晶体管损耗、开关变压器损耗。 一、开关电源的损耗 开关电源的损耗主要来自三个元件:开关晶体管、变压器和整流二极管。 1、开关...
2023-06-16
开关电源/开关MOS管/开关变压器损耗讲解

如何避免电焊机触电事故

电焊机实际上就是具有下降外特性的变压器,将输入电压220V或380V交流电变为低压电。 电焊机一般按输出电源种类可分为两种,一种是交流电源的;一种是直流电的。 直流电焊机可以说...
2023-06-19

热销商品

广东珠江电线电缆阻燃国标定制BYJBV BVR YJV YJY RVV RVS RV KVV

广东珠江电线电缆,专注于阻燃国标定制,产品涵盖BYJBVBVRYJVYJYRVVRVSRVKVV等多种规格。我们采用先进生产技术,严格遵循国家标准,确保产品质量可靠、性能稳定。产品适...
¥ 1

可换头防静电塑胶镊子ESD-7A/242/249/259防划伤夹IC硅晶片陶瓷头

ESD-7A/242/249/259是一款专为半导体行业设计的防静电塑胶镊子,有效防止静电对敏感电子元件的损害。其独特之处在于可更换的镊子头,包括专为夹持IC硅晶片和陶瓷元件...
¥ 2

公牛官方旗舰店开关插座空调16A插座五孔10A面板暗装多孔G12白灰

公牛官方旗舰店提供一系列高质量的开关插座和空调配件。这款16A插座五孔面板采用暗装设计,适用于多种安装环境,如墙面、天花板等。它具有10A的电流容量,可以满足家庭...
¥ 5.55

L型套筒扳手铣口烟斗双头弯头7字穿孔机修六角汽修轮胎工具6-19mm

L型套筒扳手是一款常用于工业领域的多功能工具,具备双头设计,可高效完成铣口、烟斗等多种工件孔位加工,适用六角汽修、轮胎等场景。其套筒尺寸为6-19mm,精准适配各类...
¥ 3.5

西门子开关插座无框皓彩米绒白亚光二三插USB10A五孔一开旗舰店

西门子开关插座无框皓彩米绒白亚光二三插USB10A五孔一开旗舰店,作为西门子品牌的专卖店,提供了一系列高品质、设计新颖的家居电气产品。这里销售的开关插座采用无框...
¥ 8.77

网站栏目