西门子s7-300与s7-400中fc与fb的区别

来源:电工天下时间:2015-10-23 21:49:17 作者:老电工手机版>>

西门子s7-300与s7-400中fc与fb的区别

1、FB有背景数据块,FC没有背景数据块。这是最本质的区别。

背景数据块是每个被控对象的专用存储区,就好像被控对象在银行的私人保险箱。临时变量是多个FB、FC的被控对象公用的数据区,就好像布告栏,大家都可以往上面贴布告,先贴的布告将被后贴的覆盖。

2、FB和FC的局部数据都有IN、OUT、IN_OUT和TEMP,FC的返回值RET_VAL实际上是输出参数。因此有无静态变量(STAT)是二者的局部变量的本质区别。FC没有静态变量。

3、功能块的输出参数不仅与来自外部的输入参数有关,还与用静态变量保存的内部状态数据有关。功能因为没有静态变量,相同的输入参数产生的执行结果是相同的。

4、不能给功能的局部变量设置初始值,可以给功能块的局部变量(不包括TEMP)设置初始值。初始值需要专用的存储区来保持,FC因为没有背景数据块,所以不能设置初始值。

附,fc与fb区别的其它解释。

FC和FB区别

问题:

同一FC调用N次赋不同实参和同一FB调用N个背景DB有什么区别?
例如,FC1被调用实参使用DB1.DBX0.0等和FB1被调用背景数据块用DB1。

解答:
FC功能FB功能块,区别在于功能块带数据存储,两者都是为了简化编程结构化编程设计的,目的都是用程序实现一个用户想要的功能。

STEP7编程软件FB与FC的区别

FB和FC的区别主要有3点:

1、有无背景数据块。

2、有无静态变量。

3、临时变量之外的局部变量有无初始值。
如果有相邻两次调用之间需要保存的局部变量,必须选用FB。上述局部变量应选用静态变量。这样才能保证在FB内部不使用全局变量,FB内部程序不需任何的修改,就可以移植到其他项目。

-- 分隔线 ---

西门子PLC,S7-300或者S7-400中的FB(功能块)

一般编程的时候FB用途很少的(比较大的系统除外)
所以大部分时间都是使用FC,功能:FB自己带数据块存储数据,FC使用共享数据块存储。
例如,建立个FC1,在OB1中调用call fc1。
如果有数据交换的话,在建立个DB1为共享数据块,则,举例采集的温度,在FC1中编程,可以通过FC105功能存储到DB1中,然后再FC1使用例如DB1.DBW0。

FB带自己的数据块,不需要共享数据块。

-- 分隔线 ---

S7-300程序FB和FC有什么区别

S7-300程序FB和FC有什么区别,UDT和DB有什么区别。

UDT只有被DB"选择"后才能应用,单独无法访问。它毕竟只是一种结构,而不是变量,不代表地址。

UDT的数据怎么样访问?

UDT相当一个模板,它本身不会被下载到PLC当中的,比如定义一个UDT1, 然后定义一个数据块DB1,而这个数据块的类型就可以设置成UDT1类型。

FB因为有背景数据块可以有静态变量,FC则没有,不能定义静态变量,UDT是自定义数据类型,可把多个数据的组合定义成一个类型,DB块则是保存数据的地方,当然也可以定义UDT类型的数据。

FC和FB的根本区别在于,FC不具备自己的存储区,而FB拥有自己的存储区------DB,在调用任何一个FB时,都必须指定一个背景DB.这一区别使得FC和FB在以下几个方面有所不同。

1、参数、变量的类型。
fb有静态(stat)变量类型,而fc没有。

2、参数的赋值。

由于fc没有数据区,因此在调用fc的时候必须给形参赋实参,而fb的情况比较复杂,对于fb对于大多数类型的参数,可以赋也可以不赋。

udt是自定义数据类型,db块则是保存数据的地方。

调用fb时,系统会提示生成一个背景数据块。在wincc里用到变量时,fb比较实用。

一般的子程序fc就可以了,能用fc,尽量用fc,节省plc运行时间与plc存储。

相关文章
  • 西门子s7-300 plc绝对寻址与符号寻址的功能说明

    西门子s7-300 plc绝对寻址与符号寻址的功能说明

    西门子s7-300 plc绝对寻址和符号寻址,绝对地址包含地址标识符和内存位置,STEP 7可以自动地将符号名称翻译成所需要的绝对地址,西门子step7中的绝对寻址与符号寻址的实例教程。

    时间:2020-11-17 13:19:15

  • SFC chart的控制命令的分类与用法

    SFC chart的控制命令的分类与用法

    有关SFC chart的控制命令的分类与用法,SFC chart的控制命令包括手动命令、自动命令、外部命令、内部命令,其功能与使用注意事项,一起来了解下。

    时间:2020-04-25 13:50:45

  • 西门子s7-300增加模拟量输入模块过程的步骤

    西门子s7-300增加模拟量输入模块过程的步骤

    西门子s7-300增加模拟量输入模块过程的步骤,分为九个步骤与一个注意问题,改造工程提前办理工作票,准备用要用的工具及材料,当配置下载成功后,进入软件程序设计划面调用FC105进行量程变换。

    时间:2020-04-23 11:24:40

  • 西门子s7-300定时器的剩余时间参与比较的方法

    西门子s7-300定时器的剩余时间参与比较的方法

    西门子s7-300定时器的剩余时间参与比较的方法,要求剩余时间值与5s比较,所以MW10中BI剩余时间值应与50(单位为100ms,即5s)比较,在脉冲定时器定时时断开输入端,剩余时间值保持不变。

    时间:2020-04-23 10:19:13

  • 西门子s7-300 plc定时器指令的类型与用法

    西门子s7-300 plc定时器指令的类型与用法

    西门子s7-300 plc定时器指令的类型与用法,西门子S7-300有五种类型的定时器,三种类型的计数器,有关延时通定时器指令、锁存型延时通定时器指令、延时断定时器指令、脉冲定时器指令、脉冲扩展定时器指令的用法。

    时间:2020-04-23 10:12:27

  • 西门子s7-300支持的传感器类型有哪些

    西门子s7-300支持的传感器类型有哪些

    西门子s7-300支持的传感器类型西门子plc s7-300的di模块很多,其具体参数需要在硬件组态中查看。1、s7-300的大部分di模块均为漏型(选取pnp型的传感器),在硬件组态时不提示源型或漏型。

    时间:2020-04-23 09:36:17

  • 西门子s7-300子程序执行时间的是多少

    西门子s7-300子程序执行时间的是多少

    有关西门子s7-300执行子程序时间的查看方法,分享了西门子s7-300执行子程序时间的具体查看步骤,可在主程序调用该子程序的前后分别读取cpu的系统时钟,利用时钟指令fc34进行相减进行编程运算。

    时间:2020-04-08 13:32:13

  • 西门子s7-300下载程序报错原因分析

    西门子s7-300下载程序报错原因分析

    有关西门子s7-300下载程序的报错原因,西门子s7-300下载程序报错原因查找方法,地址间断连续,说明模拟量模块有问题,在硬件组态中点击“离线—在线”。

    时间:2020-04-08 12:38:52

Copyright © 2015 - 2022 dgjs123.com All Rights Reserved

电工天下 版权所有