宿州西门子代理商
PLC简介
编程逻辑控制器是种专门为在工业环境下应用而设计的数字运算操作电子系统。它采用一种可编程的存储器,在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,通过数字式或模拟式的输入输出来控制各种类型的机械设备或生产过程。
PLC的FB和FC是什么意思
FB和FC在PLC中相当于一个计算式,FC是功能,可以调用共享数据,由于其调用接口和被调用的共享数据是不变的,因此FC执行的结果是不变的;FB有专属自己的1到N个“背景数据块”,FB可以调用共享数据也可以调用背景数据,设把共享数据看作FB的“背景数据块0”,那么,FB可调用的数据块就从0到N,调用不同的数据块执行结果不一样(因为背景数据不一样)。FC,FB都受组织块OB调用。
FB块优点
1、易于移植性,对于相同控制逻辑不同参数的被控对象,只要使用不同的背景DB,同一个FB块就可以方便
2、多重背景,减少重复工作,提率
3、多次调用时,参数修改方便
4、有独立的存储区
FC块优点
1、小巧灵活,对于非多次调用的程序更易理解
2、不占用额外的存储资源
FB和FC块的功能
FB--功能块,带背景数据块
FC--功能,相当于函数FB,FC块均相当于子程序,既可以调用其它FB,FC块,也可以被OB,FB,FC块调用。
PLC中FB和FC块的区别
1、FB是具有存储功能的,FC没有存储功能
2、FB需要背景数据块,而FC是没有的
3、参数的传递方式不同,FB的输入输出对应背景DB,而FC的输入输出没有实际对应的,只有程序调用时,才会和实际的地址产生关系。FB参数传递的是数据,FC参数传递的是数据的地址。
西门子PLC中FB和FC块的区别(举例)
用西门子plc编程时,可以用到功能块FB和功能FC(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控制地址就可知道FC与FB的区别
对于用户来说,在编写用户程序或选择设备时,必须清楚下面介绍的三个阶段,即用户程序执行过程的原理。
PLC采用集中处理的方法,即对输入扫描信号、执行用户程序和输出刷新都采用集中分批处理的工作方式。
(1)输入扫描 在这一阶段中,PLC以扫描方式读入所有输入端子上的输入信号,并将输入信号存入输入映像区,输入映像存储器被刷新。在程序执行阶段和输出刷新阶段中,输入映像存储器与外界隔离,其内容保持不变,直至下一个扫描周期的输入扫描阶段,才被重新读入的输入信号刷新。可见,PLC在执行程序和处理数据时,不直接使用现场当时的输入信号,而使用本次采样时输入到映像区中的数据。如果输入设备能使PLC输入端形成闭合回路,对应输入端编号的内部输入继电器内保存为“1”,即相当于继电器线圈导通。在程序执行过程中,该编号对应的触点动作;如果输入设备能使输入开路,则对应输入端编号的内部输入继电器内保存为“0”,即相当于继电器线圈没导通,在程序执行过程中,该编号对应的触点不动作。如果在PLC处于非输入扫描的阶段,PLC外的输入设备状态发生了变化,内部输入继电器也不会发生变化,要等到下一个输入扫描阶段才能根据此时的输入状态来刷新。所以,对于少于十几毫秒的输入信号,经常采集不到。
(2)执行程序 在执行用户程序过程中,PLC按梯形图程序顺序自上而下、从左至右逐个扫描执行,即按助记符指令表的先后顺序执行。但遇到程序跳转指令,则根据跳转条件是否满足来决定程序跳转地址。程序执行过程中,PLC从输入映像区中取出输入变量的当前状态,然后进行由程序确定的逻辑运算或其他运算,根据程序指令将运算结果存入相应的内部继电器中,包括输出继电器、内部辅助继电器、定时器、计数器等。输出继电器的信号存放在输出映像区,即输出继电器与PLC外部的同编号的输出点对应。
在程序执行过程中,同一周期内,的逻辑结果影响后面的触点,即后执行的程序可能用到的较新中间运算结果;但同一周期内,后面的运算结果不影响的逻辑关系。该扫描周期内除输入继电器以外的所有内部继电器的较终状态(导通与否),将影响下一个扫描周期各触点的开与闭。
(3)输出刷新 程序执行阶段的运算被存入输出映像区,而不送到输出端口上。在输出刷新阶段,PLC将输出映像区中的输出变量送入输出锁存器,然后由锁存器通过输出模块产生本周期的控制输出。如果内部输出继电器的状态为“1”,则输出继电器触点闭合。全部输出设备的状态要保持一个扫描周期