gkket 发表于 2024-11-2 16:16:45

西门子S7-300 PLC编程 FB和FC的区别

FB--功能块,带背景数据块
    FC--功能,相当于函数
   他们之间的主要区别是:FC使用的是共享数据块,FB使用的是背景数据块举个例子,如果您要对3个参数相同的电机进行控制,那么只需要使用FB编程外加3个背景数据块就可以了,但是,如果您使用FC,那么您需要不断的修改共享数据块,否则会导致数据丢失。FB确保了3个电机的参数互不干扰。

    FB,FC本质都是一样的,都相当于子程序,可以被其他程序调用(也可以调用其他子程序)。他们的最大区别是,FB与DB配合使用,DB中保存着FB使用的数据,即使FB退出后也会一直保留。FC就没有一个永久的数据块来存放数据,只在运行期间会被分配一个临时的数据区。在实际编程中,是使用FB还是FC,要看实际的需要决定。FB的好处楼上以讲得很好了。

    FB与FC没有太大的差别,FB带有背景数据块,而FC没有。所以FB带上不同的数据块,就可以带上不同的参数值。这样就可以用同一FB和不同的背景数据块,被多个对象调用。

    FC和FB像C中的函数,只不过FB可以生成静态变量,在下次函数调用时数据可以保留,而FC的变量只在调用期内有效,下次调用又重新更换。

    S7-300plc中的FB和FC的分别?FB带有自己的背景DB而FC没有自己的背景DB, 用FC 和FB 有什么分别呢,他们都能实现控制功能,到底该用FB还是该用FC,什么时候用FB什么时候用FC?
FB与FC没有太大的差别,FB带有背景数据块,而FC没有。所以FB带上不同的数据块,就可以带上不同的参数值。这样就可以用同一FB和不同的背景数据块,被多个对象调用。

    FC和FB像C中的函数,只不过FB可以生成静态变量,在下次函数调用时数据可以保留,而FC的变量只在调用期内有效,下次调用又重新更换。每次调用FC的I/O区域必须要自己每次手动输入,而FB就不要,省去不少麻烦,如果在上位机控制直接输入DB控制地址就可以。

day456321 发表于 2025-11-14 12:33:22

占个楼慢慢看,先马克一下
楼主辛苦啦,期待下一篇分享

HST 发表于 2025-11-14 13:51:00

原来还有这种操作,长见识了!

wqf1559587432 发表于 2025-11-14 16:40:49

路过打卡,为优质内容疯狂打 call

Tongfenhua 发表于 2025-11-15 08:35:27

这评论区卧虎藏龙,个个都是人才!

雨下一整晚612 发表于 2025-11-15 08:48:51

赞同 + 10086,没毛病,完全没毛病

yyadd2001 发表于 2025-11-16 10:10:20

这逻辑绝了,分析得太到位了吧

Brues 发表于 2025-11-17 07:30:32

谁懂啊!这内容我能循环看十遍

kayechong 发表于 2025-11-18 23:48:20

说得对!狠狠赞同,没毛病~

13934153446 发表于 2025-11-18 23:52:34

我先占个楼,等下再慢慢看~
页: [1] 2
查看完整版本: 西门子S7-300 PLC编程 FB和FC的区别