1、数据块不同:FC使用的是共享数据块,FB使用的是背景数据块
举个例子,如果您要对3个参数相同的电机进行控制,那么只需要使用FB编程外加3个背景数据块就可以了,但是,如果您使用FC,那么您需要不断的修改共享数据块,否则会导致数据丢失。FB确保了3个电机的参数互不干扰。
2、实际决定不同:
FB,FC本质都是一样的,都相当于子程序,可以被其他程序调用(也可以调用其他子程序)。他们的最大区别是,FB与DB配合使用,DB中保存着FB使用的数据,即使FB退出后也会一直保留。FC就没有一个永久的数据块来存放数据,只在运行期间会被分配一个临时的数据区。在实际编程中,是使用FB还是FC,要看实际的需要决定。
FB与FC没有太大的差别,FB带有背景数据块,而FC没有。所以FB带上不同的数据块,就可以带上不同的参数值。这样就可以用同一FB和不同的背景数据块,被多个对象调用。
3、静态变量不同:
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控制地址就可!
1、不同的数据块:FC使用共享数据块,FB使用后台数据块
例如,如果要用相同的参数控制3个电机,则只需使用FB编程以及3个背景数据块。 但是,如果使用FC,则需要不断修改共享数据块。 否则,数据将丢失。 FB确保三个电机的参数不会相互干扰。
2、实际决定有所不同:
FB和FC本质上是相同的,它们等效于子例程,并且可以被其他程序调用(也可以调用其他子例程)。 它们之间最大的区别是FB与DB结合使用,即使FB退出后,FB使用的数据也存储在DB中。 FC没有永久性的数据块来存储数据,在操作过程中只会分配一个临时的数据区域。 在实际编程中,使用FB还是FC取决于实际需求。
FB和FC之间没有太大区别。 FB有一个背景数据块,而FC没有。 因此FB可以为不同的数据块带来不同的参数值。 这样,多个对象可以使用相同的FB和不同的背景数据块。
3、不同的静态变量:
FC和FB与C中的函数相似,不同之处在于FB可以生成静态变量,并且数据可以在下一个函数调用期间保留,而FC变量仅在调用期间有效,下一次将被替换。
FB和FC之间没有太大区别。 FB有一个背景数据块,而FC没有。 因此FB可以为不同的数据块带来不同的参数值。 这样,多个对象可以使用相同的FB和不同的背景数据块。
FC和FB与C中的函数相似,不同之处在于FB可以生成静态变量,并且数据可以在下一个函数调用期间保留,而FC变量仅在调用期间有效,下一次将被替换。 每次调用FC的I / O区域时,每次都必须手动输入它,而FB则不需要它,这省去了很多麻烦。 如果直接在上位机控件中输入DB控件地址!
本回答被网友采纳