您现在的位置是:首页 > PLC技术 > PLC技术

施耐德Unity Pro功能块类型(FFB)的结构

来源:艾特贸易2017-06-05

简介(1) 功能块类型 (FFB) 的组成内容 每个功能块类型 ( FFB) 都是由 FFB 名称、操作数、功能块实例名称构成,而操作数由形参(形式参数, Formal Parameter )和实参(实际参数, Actual Parameter

    (1)功能块类型(FFB)的组成内容    每个功能块类型( FFB)都是由FFB名称、操作数、功能块实例名称构成,而操作数由形参(形式参数,Formal Parameter)和实参(实际参数,Actual Parameter)构成,如图3-84所示。
FFB结构示意图
    3-84    FFB结构示意图    例如,在ST编程语言中正式调用功能块如图3-85所示。
在编程语言中调用功能块
    3-85    在编程语言中调用功能块    在功能块类型( FFB)的结构中,FFB名称用于确定FFB执行的内容,例如,转换操作、移位寄存器等。操作数用于指定与操作一起执行的数据内容。操作数由形式参数和实际参数构成。    在结构化编程时,为了使得功能块能够成为可以在同一PLC循环内多次调用的通用功能块,功能块中所使用的数据不可以使用绝对地址,而只能以符号地址的形式出现。在调用通用功能块时,可以通过这些符号地址的不同赋值,在每一次调用同一功能块时,得到不同的结果。    参数是在PLC中的功能块类型之间相互传递的数据。参数通常分为“形式参数”和“实际参数”两类。需要通过输入和输出将值传输给FFB或从FFB传输值,即被调用的功能块中所使用的符号称为形参(Formal Parameter,形式参数)。将对象连接到形参,这些对象包含当前的过程状态,即在调用块中对符号所赋予的实际地址称为实参( Actual Parameter,实际参数)。参数类型是为在功能块之间传递参数的形参而定义的数据类型。    在程序运行时,来自过程的值通过实际参数传递给FFB,经过FFB处理后,再次输出。实参的数据类型必须与形参的数据类型匹配。    (2) VAR_IN_OUT变量    FFB常用于从输入变量处读取数据,然后处理该变量,并且输出同一变量更改后的值,这种特殊类型的输入/输出变量称为VAR_IN_OUT变量。    FBDLD中,输入和输出变量通过一根连线连接在一起,如图3-86所示。
含VAR_IN_OUT变量的功能块
    3-86    VAR_IN_OUT变量的功能块    在使用包含VAR_IN_OUT变量的FFB时,必须注意下列问题:    ●必须为所有VAR_IN_OUT分配输入变量;    ●不能将数值或常量赋值给VAR_IN_OUT的输入或输出。    FBDLD中,必须注意下列问题:    ●在使用图形连接时,VAR_IN_OUT变量必须与VAR_IN_OUT变量连接;    VAR_IN_OUT变量的输入/输出只能与一个图形相连接。    VAR_IN_OUT变量的输入和VAR_IN_OUT变量的输出可以与不同的变量相连接。此    时,输入的变量其实是被赋值到输出的变量;    ●取反操作不能用于VAR_IN_OUT变量;    VAR_IN_OUT变量的输出不能使用变量/地址与图形相连接的形式。    (3) ENENO    所有的FFB都可以配置EN输入和ENO输出。如果调用FFB时,EN端设置的数值为“0”,将不执行FFB定义算法,并将ENO端设置为“0”。如果调用FFB时,EN端设置的数值为“1”,将执行FFB定义算法,如果算法执行通过,则将ENO端设置为“1”。如果算法执行没有通过,则将ENO端设置为“0”。所有的FFB都可以“无条件”或“有条件”调用。其条件通过预先连接EN端来实现:    EN端已连接,表示有条件调用,仅当EN端为“1”时,才处理FFB    EN端已显示、隐藏并标记为TRUE,或已显示但没有占用,表示无条件调用,一直执行FFB    对于正式的FFB调用,ENENO只能用在文本语言中,例如:
    ENO分配变量时必须使用操作符“=>”。