什么是PLC的FB,FC,DB,OB,这些块是什么意思?怎么用?

用户4339968463773


首先FB块功能块,FC功能。FC里面可以编程不同的程序就是没有共同程式的程序而后被OB块调用,OB是执行,它可以调用你所编的程序的每个块,调用你所编的块之后,然后PLC只能通过扫描OB块来处理你所编程序,OB块可以调用很多块。FB块里面主要编的就是一些有共同程式的一些程序,举例,三个电机要分别运行,都是通过星三角启动的,只是他们功率不一样,所以所选择的交流接触器,热保护型号也不一样,包括启动关闭开关形成的电路图都是一样的,所以此时他们三个电路图都是一样的,这就起他们的共同点形成的程式,这个共同的程式也就是电路图就编程在FB里面,每个FB块可以形成不同的DB,DB里面就是没有电机运行的参数。三个电机就会调用共同的FB三次就形成3个DB块,每个DB对应每组的参数。这个DB块我们称之为背景数据块,因为它是一个DB相对应一组电机的。FC在编程的时候也会产生数据。这个数据在共享数据块里,都可以调用的,公用的。





工业自动化陈工


首先你说的这些是在西门子的PLC编程软件中才有的程序块,而在其他厂牌的PLC中也有相似功能的程序块但是就不是叫这些名字了!--比如STEP7软件和博图软件中就有这些,且这些程序块的规划也是西门子300/400/1200/1500系列的PLC中才有的。像西门子200系列的PLC中就没有这样的程序块规划了,虽然200系列的PLC中也有主程序,子程序和数据块等说法,但是和你提问的这些数据块有很大的差别!

至于这些块是什么含义,最好是来看一下STEP7帮助文件中的解释,如下图:

这个图片是来自STEP7的帮助文件中,从这个图片可以看到OB块就叫做组织块,FB叫功能块,FC叫功能,DB是数据块(但是DB其实可以分为共享数据块和背景数据块)。这个图上还可以看到有SFB和SFC这些是系统提供的预定义过的功能块和功能!

我来简要的说一下这些块通常怎么使用,因为像组织块OB就有很类型,即很多个OB块的,每个块的作用不同,用法也就不同,所以这里只简要说一点常规的。

OB组织块中最普通常用的就是OB1它就像西门子200PLC中的主程序一样,根据扫描周期一遍又一遍的自动执行OB1中的程序,所有的其他的FB、FC等的子程序都需要在OB1中被调用,它们中的程序才能被执行,因为只有OB1才是一个自动循环执行的主程序,CPU上电后这个OB1块就不断的自动执行。而像OB35是一个100ms的根据时间来自动执行的循环中断OB组织块,OB40是一个硬件中断组织块,这里中断的意思主要就是中断OB1的程序循环,先执行中断,中断执行后再继续执行OB1中的程序。

FB功能块,就是可以创建你想创建的子程序,但是FB块的在调用的时候必须配合DB块来使用。

FC功能,它和FB块的作用一样,都是用来创建子程序的时候使用,但是FC就不需要配合DB块使用。

FB和FC块中写好子程序后,必须在OB1中被调用,它们块中的程序才能被执行。如果,你忘记在OB1中调用了,那么响应的程序则无法执行!

再来说一下DB块,上边我说了DB块有2种,当其为背景数据块的时候,其实他就像是一个FB块的专用映像数据块,可以便于我们观察这个FB块中的一些参数。而当DB块被定义为全局数据块的时候,它就不专属于某个FB功能块了,它可能可以存储多个FB块的数据,当然也可以存储不是FB块中的数据。


就简单说这么多了,因为你问题中的这些块,每一种都不是简单的几百字能写的清楚明白的,都需要自己在项目实际应用中去掌握更多的技巧和用法,言尽于此,希望能对你有点用处,谢谢!


分享到:


相關文章: